Example #1
0
 public static function createInfoForCustomProduct($userSid, $productSid, $listingSid, $price, $name, $type)
 {
     $productName = SJB_ProductsManager::getProductNameBySid($productSid);
     $userGroupSid = SJB_UserManager::getUserGroupByUserSid($userSid);
     $productInfo = array('custom_item' => "{$name} ({$productName})", 'custom_info' => array('listing_id' => (int) $listingSid, 'type' => $type, 'extraDescription' => "({$productName})", 'productSid' => (int) $productSid), 'name' => $name, 'number_of_listings' => 1, 'QtyPeriod' => 1, 'price' => $price, 'pricing_type' => 'fixed', 'sid' => -1, 'product_type' => 'post_listings', 'user_group_sid' => $userGroupSid);
     $productInfo['serialized_extra_info'] = serialize($productInfo);
     return $productInfo;
 }
Example #2
0
 /**
  * @param array $menu
  * @param $item
  * @param $menuKey
  * @param $itemKey
  */
 private function removeSimilarHighlight(array &$menu, $item, $menuKey, $itemKey)
 {
     if (in_array(SJB_System::getSystemSettings('SITE_URL') . $this->pageID, $item['highlight'])) {
         $highlight = '';
         $highlightPrefix = '/manage-';
         $userSid = SJB_Request::getVar('user_sid', 0);
         switch ($menuKey) {
             case 'Listing Configuration':
                 $fieldSID = SJB_Request::getVar('field_sid', false);
                 if ($fieldSID) {
                     $fieldInfo = SJB_ListingFieldManager::getFieldInfoBySID($fieldSID);
                     //remove unwanted highlights
                     if ($fieldInfo['listing_type_sid'] == 0 && $item['title'] == 'Listing Types' || $fieldInfo['listing_type_sid'] != 0 && $item['title'] == 'Common Fields') {
                         $highlight = $this->pageID;
                     }
                 }
                 break;
             case 'Listing Management':
                 if (preg_match('/manage-resume|job|[a-zA-Z0-9]+-listings/', $item['reference']) && !preg_match('/import|export|flagged-listings/', $item['reference'])) {
                     if (!($listingTypeId = SJB_Request::getVar('listing_type_id', null))) {
                         $listingId = SJB_Request::getVar('listing_id', null);
                         $listingInfo = SJB_ListingManager::getListingInfoBySID($listingId);
                         $listingTypeId = SJB_ListingTypeManager::getListingTypeIDBySID($listingInfo['listing_type_sid']);
                     }
                     $highlight = strtolower($listingTypeId);
                 }
                 break;
             case 'Users':
                 $highlightPrefix = '/manage-users/';
                 if ($userSid) {
                     $userGroupSid = SJB_UserManager::getUserGroupByUserSid($userSid);
                     $userGroupInfo = SJB_UserGroupManager::getUserGroupInfoBySID($userGroupSid);
                     if (preg_match($highlightPrefix, $item['reference'])) {
                         $highlight = strtolower($userGroupInfo['id']);
                     }
                 } else {
                     if ($role = SJB_Request::getVar('role', null)) {
                         $type = SJB_Request::getVar('type', null);
                         // for user permissions
                         if ($type == 'user') {
                             $role = SJB_UserManager::getUserGroupByUserSid($role);
                             $userGroupInfo = SJB_UserGroupManager::getUserGroupInfoBySID($role);
                             $highlight = strtolower($userGroupInfo['id']);
                         } else {
                             if (in_array($type, array('group', 'guest'))) {
                                 $highlightPrefix = 'user-';
                                 $highlight = 'group';
                             }
                         }
                     } else {
                         //retrieve user group from uri
                         if (preg_match('|./(\\w*)/?|u', urldecode(SJB_Navigator::getURI()), $userGroupHub)) {
                             $highlight = array_pop($userGroupHub);
                         }
                         //remove unwanted highlights
                         if ($this->pageID == '/email-log/') {
                             $highlight = $this->pageID;
                         }
                     }
                 }
                 break;
             case 'System Configuration':
                 //remove unwanted highlights
                 if ($this->pageID == '/email-log/' && $userSid) {
                     $highlight = $this->pageID;
                 }
                 break;
             default:
         }
         if (!$highlight || strpos($item['reference'], $highlightPrefix . $highlight) !== false) {
             if (!isset($this->handledHighlightGroups[$highlightPrefix])) {
                 $this->handledHighlightGroups[$highlightPrefix] = true;
                 $handledHighlightGroups[$highlightPrefix] = true;
                 $menu[$menuKey][$itemKey]['active'] = true;
                 $menu[$menuKey]['active'] = true;
             }
         }
     }
 }