本文整理汇总了PHP中TTDate::getTimeZone方法的典型用法代码示例。如果您正苦于以下问题:PHP TTDate::getTimeZone方法的具体用法?PHP TTDate::getTimeZone怎么用?PHP TTDate::getTimeZone使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类TTDate
的用法示例。
在下文中一共展示了TTDate::getTimeZone方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: _outputPDFForm
function _outputPDFForm($format = NULL)
{
$show_background = TRUE;
if ($format == 'pdf_form_print' or $format == 'pdf_form_print_government' or $format == 'efile') {
$show_background = FALSE;
}
Debug::Text('Generating Form... Format: ' . $format, __FILE__, __LINE__, __METHOD__, 10);
$setup_data = $this->getFormConfig();
$filter_data = $this->getFilterConfig();
//Debug::Arr($filter_data, 'Filter Data: ', __FILE__, __LINE__, __METHOD__,10);
$current_company = $this->getUserObject()->getCompanyObject();
if (!is_object($current_company)) {
Debug::Text('Invalid company object...', __FILE__, __LINE__, __METHOD__, 10);
return FALSE;
}
$current_user = $this->getUserObject();
if (!is_object($current_user)) {
Debug::Text('Invalid user object...', __FILE__, __LINE__, __METHOD__, 10);
return FALSE;
}
if ($format == 'efile_xml') {
$return1040 = $this->getRETURN1040Object();
// Ceate the all needed data for Return1040.xsd at here.
$return1040->return_created_timestamp = TTDate::getDBTimeStamp(TTDate::getTime(), FALSE);
$return1040->year = TTDate::getYear($filter_data['end_date']);
$return1040->tax_period_begin_date = TTDate::getDate('Y-m-d', TTDate::getBeginDayEpoch($filter_data['start_date']));
$return1040->tax_period_end__date = TTDate::getDate('Y-m-d', TTDate::getEndDayEpoch($filter_data['end_date']));
$return1040->software_id = '';
$return1040->originator_efin = '';
$return1040->originator_type_code = '';
$return1040->pin_type_code = '';
$return1040->jurat_disclosure_code = '';
$return1040->pin_entered_by = '';
$return1040->signature_date = TTDate::getDate('Y-m-d', TTDate::getTime());
$return1040->return_type = '';
$return1040->ssn = '';
$return1040->name = (isset($setup_data['company_name']) and $setup_data['company_name'] != '') ? $setup_data['company_name'] : $current_company->getName();
$return1040->name_control = '';
$return1040->address1 = (isset($setup_data['address1']) and $setup_data['address1'] != '') ? $setup_data['address1'] : $current_company->getAddress1() . ' ' . $current_company->getAddress2();
$return1040->city = (isset($setup_data['city']) and $setup_data['city'] != '') ? $setup_data['city'] : $current_company->getCity();
$return1040->state = (isset($setup_data['province']) and ($setup_data['province'] != '' and $setup_data['province'] != 0)) ? $setup_data['province'] : $current_company->getProvince();
$return1040->zip_code = (isset($setup_data['postal_code']) and $setup_data['postal_code'] != '') ? $setup_data['postal_code'] : $current_company->getPostalCode();
$return1040->ip_address = '';
$return1040->ip_date = TTDate::getDate('Y-m-d', TTDate::getTime());
$return1040->ip_time = TTDate::getDate('H:i:s', TTDate::getTime());
$return1040->timezone = TTDate::getTimeZone();
$this->getFormObject()->addForm($return1040);
}
$this->sortFormData();
//Make sure forms are sorted.
$fw2 = $this->getFW2Object();
$fw2->setDebug(FALSE);
//if ( $format == 'efile' ) {
// $fw2->setDebug(TRUE);
//}
$fw2->setShowBackground($show_background);
if (stristr($format, 'government')) {
$form_type = 'government';
} else {
$form_type = 'employee';
}
Debug::Text('Form Type: ' . $form_type, __FILE__, __LINE__, __METHOD__, 10);
$fw2->setType($form_type);
$fw2->year = TTDate::getYear($filter_data['end_date']);
//Add support for the user to manually set this data in the setup_data. That way they can use multiple tax IDs for different employees, all beit manually.
$fw2->ein = (isset($setup_data['ein']) and $setup_data['ein'] != '') ? $setup_data['ein'] : $current_company->getBusinessNumber();
$fw2->name = (isset($setup_data['name']) and $setup_data['name'] != '') ? $setup_data['name'] : $this->getUserObject()->getFullName();
$fw2->trade_name = (isset($setup_data['company_name']) and $setup_data['company_name'] != '') ? $setup_data['company_name'] : $current_company->getName();
$fw2->company_address1 = (isset($setup_data['address1']) and $setup_data['address1'] != '') ? $setup_data['address1'] : $current_company->getAddress1() . ' ' . $current_company->getAddress2();
$fw2->company_city = (isset($setup_data['city']) and $setup_data['city'] != '') ? $setup_data['city'] : $current_company->getCity();
$fw2->company_state = (isset($setup_data['province']) and ($setup_data['province'] != '' and $setup_data['province'] != 0)) ? $setup_data['province'] : $current_company->getProvince();
$fw2->company_zip_code = (isset($setup_data['postal_code']) and $setup_data['postal_code'] != '') ? $setup_data['postal_code'] : $current_company->getPostalCode();
$fw2->efile_user_id = (isset($setup_data['efile_user_id']) and $setup_data['efile_user_id'] != '') ? $setup_data['efile_user_id'] : NULL;
$fw2->efile_state = (isset($setup_data['efile_state']) and $setup_data['efile_state'] != '') ? $setup_data['efile_state'] : 0;
$fw2->contact_name = $current_user->getFullName();
$fw2->contact_phone = $current_user->getWorkPhone();
$fw2->contact_phone_ext = $current_user->getWorkPhoneExt();
$fw2->contact_email = $current_user->getWorkEmail();
if (isset($this->form_data) and count($this->form_data) > 0) {
$i = 0;
$n = 1;
foreach ((array) $this->form_data as $row) {
if (!isset($row['user_id'])) {
Debug::Text('User ID not set!', __FILE__, __LINE__, __METHOD__, 10);
continue;
}
$ulf = TTnew('UserListFactory');
$ulf->getById((int) $row['user_id']);
if ($ulf->getRecordCount() == 1) {
$user_obj = $ulf->getCurrent();
$ee_data = array('control_number' => $n, 'first_name' => $user_obj->getFirstName(), 'middle_name' => $user_obj->getMiddleName(), 'last_name' => $user_obj->getLastName(), 'address1' => $user_obj->getAddress1(), 'address2' => $user_obj->getAddress2(), 'city' => $user_obj->getCity(), 'state' => $user_obj->getProvince(), 'employment_province' => $user_obj->getProvince(), 'zip_code' => $user_obj->getPostalCode(), 'ssn' => $user_obj->getSIN(), 'employee_number' => $user_obj->getEmployeeNumber(), 'l1' => $row['l1'], 'l2' => $row['l2'], 'l3' => $row['l3'], 'l4' => $row['l4'], 'l5' => $row['l5'], 'l6' => $row['l6'], 'l7' => $row['l7'], 'l8' => $row['l8'], 'l10' => $row['l10'], 'l11' => $row['l11'], 'l12a_code' => NULL, 'l12a' => NULL, 'l12b_code' => NULL, 'l12b' => NULL, 'l12c_code' => NULL, 'l12c' => NULL, 'l12d_code' => NULL, 'l12d' => NULL, 'l14a_name' => NULL, 'l14a' => NULL, 'l14b_name' => NULL, 'l14b' => NULL, 'l14c_name' => NULL, 'l14c' => NULL, 'l14d_name' => NULL, 'l14d' => NULL);
if ($row['l12a'] > 0 and isset($setup_data['l12a_code']) and $setup_data['l12a_code'] != '') {
$ee_data['l12a_code'] = $setup_data['l12a_code'];
$ee_data['l12a'] = $row['l12a'];
}
if ($row['l12b'] > 0 and isset($setup_data['l12b_code']) and $setup_data['l12b_code'] != '') {
$ee_data['l12b_code'] = $setup_data['l12b_code'];
$ee_data['l12b'] = $row['l12b'];
}
if ($row['l12c'] > 0 and isset($setup_data['l12c_code']) and $setup_data['l12c_code'] != '') {
//.........这里部分代码省略.........
示例2: createNextPayPeriod
function createNextPayPeriod($end_date = NULL, $offset = NULL)
{
if ($end_date == NULL or $end_date == '') {
$end_date = NULL;
}
if ($offset == NULL or $offset == '') {
$offset = 86400;
//24hrs
}
if ($this->getType() == 5) {
return FALSE;
}
Debug::text('Current TimeZone: ' . TTDate::getTimeZone(), __FILE__, __LINE__, __METHOD__, 10);
//Handle timezones in this function rather then getNextPayPeriod()
//Because if we set the timezone back to the original in that function, it
//gets written to the database in the "original" timezone, not the proper timezone.
$this->setPayPeriodTimeZone();
Debug::text('Pay Period TimeZone: ' . TTDate::getTimeZone(), __FILE__, __LINE__, __METHOD__, 10);
Debug::text('End Date (' . $end_date . '): ' . TTDate::getDate('DATE+TIME', $end_date), __FILE__, __LINE__, __METHOD__, 10);
$this->getNextPayPeriod($end_date);
Debug::text('Next pay period starts: ' . TTDate::getDate('DATE+TIME', $this->getNextStartDate()), __FILE__, __LINE__, __METHOD__, 10);
//If the start date is within 24hrs of now, insert the next pay period.
if ($this->getNextStartDate() <= TTDate::getTime() + $offset) {
Debug::text('Insert new pay period. Start Date: ' . $this->getNextStartDate() . ' End Date: ' . $this->getNextEndDate(), __FILE__, __LINE__, __METHOD__, 10);
$ppf = new PayPeriodFactory();
$ppf->setCompany($this->getCompany());
$ppf->setPayPeriodSchedule($this->getId());
$ppf->setStatus(10);
$ppf->setStartDate($this->getNextStartDate());
$ppf->setEndDate($this->getNextEndDate());
$ppf->setTransactionDate($this->getNextTransactionDate());
$ppf->setPrimary($this->getNextPrimary());
$ppf->setEnableImportData(TRUE);
//Import punches when creating new pay periods.
if ($ppf->isValid()) {
$new_pay_period_id = $ppf->Save();
Debug::text('New Pay Period ID: ' . $new_pay_period_id, __FILE__, __LINE__, __METHOD__, 10);
if ($new_pay_period_id != '') {
$this->setOriginalTimeZone();
return TRUE;
} else {
Debug::text('aSaving Pay Period Failed!', __FILE__, __LINE__, __METHOD__, 10);
}
} else {
Debug::text('bSaving Pay Period Failed!', __FILE__, __LINE__, __METHOD__, 10);
}
} else {
Debug::text('***NOT inserting or changing status of new pay period yet, not within offset.', __FILE__, __LINE__, __METHOD__, 10);
}
$this->setOriginalTimeZone();
return FALSE;
}
示例3: calcSystemTotalTime
function calcSystemTotalTime()
{
global $profiler;
$profiler->startTimer('UserDateTotal::calcSystemTotalTime() - Part 1');
if (!is_object($this->getUserDateObject())) {
Debug::text(' UserDateObject not found!', __FILE__, __LINE__, __METHOD__, 10);
return FALSE;
}
if (is_object($this->getUserDateObject()) and is_object($this->getUserDateObject()->getPayPeriodObject()) and $this->getUserDateObject()->getPayPeriodObject()->getStatus() == 20) {
Debug::text(' Pay Period is closed!', __FILE__, __LINE__, __METHOD__, 10);
return FALSE;
}
//IMPORTANT: Make sure the timezone is set to the users timezone, prior to calculating policies,
//as that will affect when date/time premium policies apply
//Its also important that the timezone gets set back after calculating multiple punches in a batch as this can prevent other employees
//from using the wrong timezone.
//FIXME: How do we handle the employee moving between stations that themselves are in different timezones from the users default timezone?
//How do we apply time based premium policies in that case?
if (is_object($this->getUserDateObject()) and is_object($this->getUserDateObject()->getUserObject()) and is_object($this->getUserDateObject()->getUserObject()->getUserPreferenceObject())) {
$original_time_zone = TTDate::getTimeZone();
TTDate::setTimeZone($this->getUserDateObject()->getUserObject()->getUserPreferenceObject()->getTimeZone());
}
//Take the worked hours, and calculate Total,Regular,Overtime,Premium hours from that.
//This is where many of the policies will be applied
//Such as any meal/overtime/premium policies.
$return_value = FALSE;
$udtlf = TTnew('UserDateTotalListFactory');
$this->deleteSystemTotalTime();
//We can't assign a dock absence to a given branch/dept automatically,
//Because several punches with different branches could fall within a schedule punch pair.
//Just total up entire day, and entire scheduled time to see if we're over/under
//FIXME: Handle multiple schedules on a single day better.
$schedule_total_time = 0;
$meal_policy_ids = NULL;
$break_policy_ids = NULL;
$slf = TTnew('ScheduleListFactory');
$profiler->startTimer('UserDateTotal::calcSystemTotalTime() - Holiday');
//Check for Holidays
$holiday_time = 0;
$hlf = TTnew('HolidayListFactory');
$hlf->getByPolicyGroupUserIdAndDate($this->getUserDateObject()->getUser(), $this->getUserDateObject()->getDateStamp());
if ($hlf->getRecordCount() > 0) {
$holiday_obj = $hlf->getCurrent();
Debug::text(' Found Holiday: ' . $holiday_obj->getName(), __FILE__, __LINE__, __METHOD__, 10);
if ($holiday_obj->isEligible($this->getUserDateObject()->getUser())) {
Debug::text(' User is Eligible for Holiday: ' . $holiday_obj->getName(), __FILE__, __LINE__, __METHOD__, 10);
$holiday_time = $holiday_obj->getHolidayTime($this->getUserDateObject()->getUser());
Debug::text(' User average time for Holiday: ' . TTDate::getHours($holiday_time), __FILE__, __LINE__, __METHOD__, 10);
if ($holiday_time > 0 and $holiday_obj->getHolidayPolicyObject()->getAbsencePolicyID() != FALSE) {
Debug::text(' Adding Holiday hours: ' . TTDate::getHours($holiday_time), __FILE__, __LINE__, __METHOD__, 10);
$udtf = TTnew('UserDateTotalFactory');
$udtf->setUserDateID($this->getUserDateID());
$udtf->setStatus(30);
//Absence
$udtf->setType(10);
//Total
$udtf->setBranch($this->getUserDateObject()->getUserObject()->getDefaultBranch());
$udtf->setDepartment($this->getUserDateObject()->getUserObject()->getDefaultDepartment());
$udtf->setAbsencePolicyID($holiday_obj->getHolidayPolicyObject()->getAbsencePolicyID());
$udtf->setTotalTime($holiday_time);
$udtf->setEnableCalcSystemTotalTime(FALSE);
if ($udtf->isValid()) {
$udtf->Save();
}
}
}
$slf->getByUserDateIdAndStatusId($this->getUserDateID(), 20);
$schedule_absence_total_time = 0;
if ($slf->getRecordCount() > 0) {
//Check for schedule policy
foreach ($slf as $s_obj) {
Debug::text(' Schedule Absence Total Time: ' . $s_obj->getTotalTime(), __FILE__, __LINE__, __METHOD__, 10);
$schedule_absence_total_time += $s_obj->getTotalTime();
if (is_object($s_obj->getSchedulePolicyObject()) and $s_obj->getSchedulePolicyObject()->getAbsencePolicyID() > 0) {
$holiday_absence_policy_id = $s_obj->getSchedulePolicyObject()->getAbsencePolicyID();
Debug::text(' Found Absence Policy for docking: ' . $holiday_absence_policy_id, __FILE__, __LINE__, __METHOD__, 10);
} else {
Debug::text(' NO Absence Policy : ', __FILE__, __LINE__, __METHOD__, 10);
}
}
}
$holiday_total_under_time = $schedule_absence_total_time - $holiday_time;
if (isset($holiday_absence_policy_id) and $holiday_total_under_time > 0) {
Debug::text(' Schedule Under Time Case: ' . $holiday_total_under_time, __FILE__, __LINE__, __METHOD__, 10);
$udtf = TTnew('UserDateTotalFactory');
$udtf->setUserDateID($this->getUserDateID());
$udtf->setStatus(30);
//Absence
$udtf->setType(10);
//Total
$udtf->setBranch($this->getUserDateObject()->getUserObject()->getDefaultBranch());
$udtf->setDepartment($this->getUserDateObject()->getUserObject()->getDefaultDepartment());
$udtf->setAbsencePolicyID($holiday_absence_policy_id);
$udtf->setTotalTime($holiday_total_under_time);
$udtf->setEnableCalcSystemTotalTime(FALSE);
if ($udtf->isValid()) {
$udtf->Save();
}
}
unset($holiday_total_under_time, $holiday_absence_policy_id, $schedule_absence_total_time);
//.........这里部分代码省略.........