$ulf = new UserListFactory(); $action = Misc::findSubmitButton(); switch ($action) { case 'add': Redirect::Page(URLBuilder::getURL(array('user_id' => $user_id, 'saved_search_id' => $saved_search_id), 'EditUserDeduction.php', FALSE)); break; case 'delete' or 'undelete': if (strtolower($action) == 'delete') { $delete = TRUE; } else { $delete = FALSE; } $udlf = new UserDeductionListFactory(); if (isset($ids) and is_array($ids)) { foreach ($ids as $id) { $udlf->getByCompanyIdAndId($current_company->getId(), $id, $current_company->getId()); foreach ($udlf as $ud_obj) { $ud_obj->setDeleted($delete); if ($ud_obj->isValid()) { $ud_obj->Save(); } } } } Redirect::Page(URLBuilder::getURL(array('user_id' => $user_id), 'UserDeductionList.php')); break; default: BreadCrumb::setCrumb($title); //Get Permission Hierarchy Children first, as this can be used for viewing, or editing. $hlf = new HierarchyListFactory(); $permission_children_ids = $hlf->getHierarchyChildrenByCompanyIdAndUserIdAndObjectTypeID($current_company->getId(), $current_user->getId());
} } } } } } //print_r($data); } else { if (isset($id) and $action != 'submit') { Debug::Text('ID Passed', __FILE__, __LINE__, __METHOD__, 10); BreadCrumb::setCrumb($title); //Get Permission Hierarchy Children first, as this can be used for viewing, or editing. $hlf = new HierarchyListFactory(); $permission_children_ids = $hlf->getHierarchyChildrenByCompanyIdAndUserIdAndObjectTypeID($current_company->getId(), $current_user->getId()); $udlf = new UserDeductionListFactory(); $udlf->getByCompanyIdAndId($current_company->getID(), $id); foreach ($udlf as $ud_obj) { $user_obj = $ulf->getByIdAndCompanyId($ud_obj->getUser(), $current_company->getId())->getCurrent(); if (is_object($user_obj)) { $is_owner = $permission->isOwner($user_obj->getCreatedBy(), $user_obj->getID()); $is_child = $permission->isChild($user_obj->getId(), $permission_children_ids); if ($permission->Check('user_tax_deduction', 'edit') or $permission->Check('user_tax_deduction', 'edit_own') and $is_owner === TRUE or $permission->Check('user_tax_deduction', 'edit_child') and $is_child === TRUE) { //Get Company Deduction info $cd_obj = $ud_obj->getCompanyDeductionObject(); $province_options = $cf->getOptions('province', $cd_obj->getCountry()); $tmp_district_options = $cf->getOptions('district', $cd_obj->getCountry()); $district_options = array(); if (isset($tmp_district_options[$cd_obj->getProvince()])) { $district_options = $tmp_district_options[$cd_obj->getProvince()]; } unset($tmp_district_options);