Exemple #1
0
    public function execute()
    {
        if (!class_exists('SJB_SocialPlugin') || !in_array('facebook', SJB_SocialPlugin::getAvailablePlugins()) || !SJB_Settings::getSettingByName('facebook_resumeAutoFillSync')) {
            echo 'facebook synchronization function is turned off';
            return null;
        }
        /**
         * get all listings where synchronization is set
         */
        $listingsSIDs = SJB_DB::query('SELECT `reference_uid`, `listings`.`sid` as `listingSID`, `listings`.`user_sid` FROM `listings`
				INNER JOIN `users` ON `listings`.`user_sid` = `users`.`sid`
				WHERE `facebook_sync` = 1 AND `users`.`reference_uid` IS NOT NULL ORDER BY `user_sid`');
        if (!empty($listingsSIDs)) {
            $oFacebookSync = new FacebookSync();
            foreach ($listingsSIDs as $rUid) {
                try {
                    if ($oFacebookSync->init($rUid['reference_uid'], $rUid['listingSID'])) {
                        $oFacebookSync->sync();
                    } else {
                        throw new Exception('cant connect to facebook  :: ' . $oFacebookSync->getSocialID());
                    }
                } catch (Exception $e) {
                    echo $e->getMessage();
                }
            }
        }
    }
 public function execute()
 {
     if (class_exists('SJB_SocialPlugin') && in_array('linkedin', SJB_SocialPlugin::getAvailablePlugins()) && SJB_Settings::getSettingByName('li_allowPeopleSearch')) {
         $liSearch = SJB_Request::getVar('li_search', false);
         $oLinkedin = SJB_SocialPlugin::getActiveSocialPlugin();
         if ('Resume' == $_REQUEST['listing_type']['equal'] && $liSearch && $oLinkedin instanceof LinkedinSocialPlugin) {
             SJB_Session::setValue('linkedinPeopleSearch', true);
             $request =& $_REQUEST;
             /*
              * keywords=[space delimited keywords]
              * sort=[connections|recommenders|distance|relevance]
              * postal-code=[postal code]
              * start=[number]& count=[1-25]&  facet=[facet code, values]& facets=[facet
              *
              * info:
              * http://developer.linkedin.com/docs/DOC-1191
              */
             $sKeywords = '';
             $sZip = !empty($request['ZipCode']['geo']['location']) ? $request['ZipCode']['geo']['location'] : '';
             $aIndustry = !empty($request['JobCategory']['multi_like']) ? $request['JobCategory']['multi_like'] : array();
             $sIndustry = '';
             $sCount = !empty($request['count']) ? (int) $request['count'] : 10;
             if (!empty($request['keywords']) && is_array($request['keywords'])) {
                 foreach ($request['keywords'] as $keywords) {
                     $sKeywords = $keywords;
                 }
             }
             $aFields = array('keywords' => $sKeywords, 'postal-code' => $sZip, 'count' => $sCount);
             foreach ($aIndustry as $industryName) {
                 if ($industryKey = SJB_LinkedinFields::getIndustryCodeByIndustryName($industryName)) {
                     $sIndustry .= ',' . $industryKey;
                 }
             }
             if (!empty($sIndustry)) {
                 $aFields['facets'] = 'industry';
                 $aFields['facet'] = 'industry' . $sIndustry;
             }
             $liResults = $oLinkedin->peopleSearch($aFields);
             if (isset($liResults->{'num-results'}) && (int) $liResults->{'num-results'} >= 0) {
                 $tp = SJB_System::getTemplateProcessor();
                 if (empty($sKeywords)) {
                     $tp->assign('liKeywordEmpty', true);
                 }
                 $tp->assign('liResults', $oLinkedin->preparePeopleStructure($liResults));
                 $tp->assign('liNumResults', (int) $liResults->{'num-results'});
                 $tp->assign('linkedinSearchIsAllowed', true);
                 $linkedinPeopleSearch = SJB_Session::getValue('linkedinPeopleSearch');
                 $tp->assign('linkedinSearch', !empty($linkedinPeopleSearch) && 'no' === $linkedinPeopleSearch && !empty($_GET['searchId']) ? 'notChecked' : 'no');
                 $tp->display('linkedin_people_search_results.tpl');
             }
         } else {
             SJB_Session::setValue('linkedinPeopleSearch', 'no');
         }
     }
 }
 public function execute()
 {
     if (class_exists('SJB_SocialPlugin') && in_array('linkedin', SJB_SocialPlugin::getAvailablePlugins()) && SJB_Settings::getSettingByName('li_memberProfileWidget')) {
         $userSID = SJB_Request::getInt('profileSID', '');
         if ($userSID && ($profilePublicUrl = SJB_SocialPlugin::getProfilePublicUrlByProfileID($userSID))) {
             $tp = SJB_System::getTemplateProcessor();
             $tp->assign('inPublicUrl', $profilePublicUrl);
             $tp->display('linkedin_member_profile_widget.tpl');
         }
     }
 }
 public function execute()
 {
     if (class_exists('SJB_SocialPlugin') && in_array('linkedin', SJB_SocialPlugin::getAvailablePlugins()) && SJB_Settings::getSettingByName('li_companyInsiderWidget')) {
         $companyName = str_replace(" ", "-", SJB_Request::getVar('companyName', ''));
         if (!empty($companyName)) {
             $tp = SJB_System::getTemplateProcessor();
             $tp->assign('companyName', $companyName);
             $tp->display('company_insider_widget.tpl');
         }
     }
 }
 public function execute()
 {
     if (class_exists('SJB_SocialPlugin') && in_array('linkedin', SJB_SocialPlugin::getAvailablePlugins()) && SJB_Settings::getSettingByName('li_companyProfileWidget')) {
         $companyName = SJB_Request::getVar('companyName');
         if ($companyName) {
             $tp = SJB_System::getTemplateProcessor();
             $tp->assign('companyName', $companyName);
             $tp->display('linkedin_profile_widget.tpl');
         }
     }
 }
 public function execute()
 {
     if (class_exists('SJB_SocialPlugin') && in_array('linkedin', SJB_SocialPlugin::getAvailablePlugins()) && SJB_Settings::getSettingByName('li_allowPeopleSearch')) {
         if ('Resume' == $_REQUEST['listing_type_id'] && SJB_SocialPlugin::getNetwork() == 'linkedin') {
             $tp = SJB_System::getTemplateProcessor();
             $tp->assign('linkedinSearchIsAllowed', true);
             $tp->assign('linkedinSearch', !empty($_SESSION['linkedinPeopleSearch']) && 'no' === $_SESSION['linkedinPeopleSearch'] && !empty($_GET['searchId']) ? 'notChecked' : 'no');
             $tp->display('linkedin_people_search_form.tpl');
         }
     }
 }
 public function execute()
 {
     if (class_exists('SJB_SocialPlugin') && in_array('linkedin', SJB_SocialPlugin::getAvailablePlugins()) && SJB_Settings::getSettingByName('li_allowShareJobs')) {
         if (SJB_SocialPlugin::getProfileObject()) {
             $listing = SJB_Request::getVar('listing');
             $tp = SJB_System::getTemplateProcessor();
             $tp->assign('articleUrl', urlencode(SJB_System::getSystemSettings('SITE_URL') . '/display-job/' . $listing['id'] . '/'));
             $tp->assign('articleTitle', urlencode($listing['Title']));
             $tp->assign('articleSummary', urlencode($listing['JobDescription']));
             $tp->assign('articleSource', urlencode(SJB_System::getSettingByName('site_title')));
             $tp->display('linkedin_share_button.tpl');
         }
     }
 }
Exemple #8
0
 public function execute()
 {
     if (!SJB_Authorization::isUserLoggedIn() && class_exists('SJB_SocialPlugin') && ($socPlugins = SJB_SocialPlugin::getAvailablePlugins())) {
         SJB_SocialPlugin::preparePluginsThatAreAvailableForRegistration($socPlugins);
         if (empty($socPlugins)) {
             return null;
         }
         $socNetworks = SJB_SocialPlugin::getSocialNetworks($socPlugins);
         $tp = SJB_System::getTemplateProcessor();
         $tp->assign('aSocPlugins', $socNetworks);
         $tp->display('login_buttons.tpl');
     } else {
         if (SJB_Authorization::isUserLoggedIn()) {
             SJB_HelperFunctions::redirect(SJB_System::getSystemSettings('SITE_URL') . '/my-account/');
         }
     }
 }
 public function execute()
 {
     if (SJB_Authorization::isUserLoggedIn() && class_exists('SJB_SocialPlugin') && !SJB_SocialPlugin::getProfileObject() && ($socPlugins = SJB_SocialPlugin::getAvailablePlugins())) {
         $tp = SJB_System::getTemplateProcessor();
         $userGroupInfo = SJB_UserGroupManager::getUserGroupInfoBySID(SJB_UserManager::getCurrentUser()->user_group_sid);
         /**
          * delete from plugins array plugins that are not allowed
          * for this userGroup registration
          */
         SJB_SocialPlugin::preparePluginsThatAreAvailableForRegistration($socPlugins, $userGroupInfo['id']);
         if (empty($socPlugins)) {
             return null;
         }
         $socialNetworks = SJB_SocialPlugin::getSocialNetworks($socPlugins);
         $tp->assign('label', 'link');
         $tp->assign('social_plugins', $socialNetworks);
         $tp->display('social_plugins.tpl');
     }
 }
 public function execute()
 {
     $listingTypeID = SJB_Request::getVar('type');
     if (class_exists('SJB_SocialPlugin') && in_array('facebook', SJB_SocialPlugin::getAvailablePlugins()) && SJB_Settings::getSettingByName('fb_like' . $listingTypeID)) {
         $listing = SJB_Request::getVar('listing', array());
         $listingID = isset($listing['id']) ? $listing['id'] : 0;
         $tp = SJB_System::getTemplateProcessor();
         switch ($listingTypeID) {
             case 'Job':
                 $tp->assign('url', SJB_System::getSystemSettings('SITE_URL') . '/display-job/' . $listingID . '/');
                 break;
             case 'Resume':
                 $tp->assign('url', SJB_System::getSystemSettings('SITE_URL') . '/display-resume/' . $listingID . '/');
                 break;
             default:
                 $tp->assign('url', SJB_System::getSystemSettings('SITE_URL') . '/display-listing/' . $listingID . '/');
                 break;
         }
         $tp->display('facebook_like_button.tpl');
     }
 }
Exemple #11
0
 public function execute()
 {
     $this->tp = SJB_System::getTemplateProcessor();
     if (!SJB_Authorization::isUserLoggedIn() && class_exists('SJB_SocialPlugin') && '/registration-social/' != SJB_Navigator::getUri() && ($socPlugins = SJB_SocialPlugin::getAvailablePlugins())) {
         $this->showErrorsIfExist();
         $userGroupID = SJB_Request::getVar('user_group_id', null);
         SJB_SocialPlugin::preparePluginsThatAreAvailableForRegistration($socPlugins, $userGroupID);
         if (empty($socPlugins)) {
             return null;
         }
         if ($userGroupID) {
             $this->tp->assign('user_group_id', $userGroupID);
         }
         $socNetworks = SJB_SocialPlugin::getSocialNetworks($socPlugins);
         $this->tp->assign('label', SJB_Request::getVar('label', null));
         $this->tp->assign('social_plugins', $socNetworks);
         $this->tp->assign('shoppingCart', SJB_Request::getVar('shoppingCart', null));
         $this->tp->display('social_plugins.tpl');
     } else {
         $this->showErrorsIfExist();
     }
 }
Exemple #12
0
 public static function generateGeneralGraph($dateStatistics, $filter = array())
 {
     $listingTypes = SJB_ListingTypeManager::getListingAllTypesForListType();
     $userGroups = SJB_UserGroupManager::getAllUserGroupsIDsAndCaptions();
     $nameEvents = array();
     $filterValues = is_array($filter) ? array_keys($filter) : array();
     foreach ($filter as $blockName => $val) {
         switch ($blockName) {
             case 'popularity':
                 $popularityEvents = array('siteView' => 'Number of Website Views', 'viewListing' => 'Number of #listingTypeName# Views');
                 $nameEvents = array_merge($nameEvents, $popularityEvents);
                 break;
             case 'users':
                 $usersEvents = array('addUser' => 'Number of #userGroupName# Registered', 'addSubAccount' => 'Number of Sub-Employers Registered', 'deleteUser' => 'Number of Profiles Deleted');
                 $nameEvents = array_merge($nameEvents, $usersEvents);
                 break;
             case 'listings':
                 $listingsEvents = array('addListing' => 'Number of #listingTypeName# Posted', 'deleteListing' => 'Number of #listingTypeName# Deleted');
                 $nameEvents = array_merge($nameEvents, $listingsEvents);
                 break;
             case 'applications':
                 $applyEvents = array('apply' => 'Number of Applications Made');
                 $nameEvents = array_merge($nameEvents, $applyEvents);
                 break;
             case 'alerts':
                 $alertsEvents = array('addAlert' => 'Number of Job Alerts #listingTypeName# for', 'sentAlert' => 'Number of #listingTypeName# Alerts Sent', SJB_GuestAlertStatistics::EVENT_SUBSCRIBED => 'Number of Guest #listingTypeName# Alerts subscribed for', SJB_GuestAlertStatistics::EVENT_SENT => 'Number of Guest #listingTypeName# Alerts Sent');
                 $nameEvents = array_merge($nameEvents, $alertsEvents);
                 break;
             case 'sales':
                 $salesEvents = array('payment' => 'Earnings from #userGroupName#', SJB_PromotionsManager::STATISTIC_EVENT => 'Promotion Discount');
                 $nameEvents = array_merge($nameEvents, $salesEvents);
                 break;
             case 'plugins':
                 $popularityEvents = array('viewMobileVersion' => 'Number of Mobile Version Views', 'partneringSites' => 'Number of Redirects to Partnering Sites');
                 $socialPlugins = SJB_SocialPlugin::getAvailablePlugins();
                 foreach ($socialPlugins as $socialPluginName) {
                     $socialRegistrationEventName = 'addUser' . $socialPluginName;
                     $popularityEvents[$socialRegistrationEventName] = 'Number of #userGroupName# Registered through ' . $socialPluginName;
                 }
                 $nameEvents = array_merge($nameEvents, $popularityEvents);
                 break;
         }
     }
     $nameEvents = array_unique($nameEvents);
     $graph = array();
     foreach ($nameEvents as $nameEvent => $title) {
         switch ($nameEvent) {
             case 'addAlert':
             case 'sentAlert':
             case SJB_GuestAlertStatistics::EVENT_SUBSCRIBED:
             case SJB_GuestAlertStatistics::EVENT_SENT:
             case 'deleteListing':
             case 'addListing':
             case 'viewListing':
                 foreach ($listingTypes as $listingTypeInfo) {
                     $listingType = $listingTypeInfo['caption'];
                     $listingTypeID = $listingTypeInfo['id'];
                     if ($nameEvent == 'addListing' || $nameEvent == 'deleteListing') {
                         if ($listingTypeInfo['key'] == 'Job' || $listingTypeInfo['key'] == 'Resume') {
                             $listingType = $listingTypeInfo['key'] . 's';
                         } else {
                             $listingType = '"' . $listingType . '" listings ';
                         }
                     }
                     $graph[$nameEvent . $listingTypeID]['title'] = str_replace('#listingTypeName#', $listingType, $title);
                     if (!empty($dateStatistics[$nameEvent . $listingTypeID]['type']) && $dateStatistics[$nameEvent . $listingTypeID]['type'] == $listingTypeID) {
                         $graph[$nameEvent . $listingTypeID]['statistic'] = $dateStatistics[$nameEvent . $listingTypeID]['count'];
                     } else {
                         $graph[$nameEvent . $listingTypeID]['statistic'] = 0;
                     }
                     if ($nameEvent == 'addListing') {
                         $graph[$nameEvent . 'Featured' . $listingTypeID]['title'] = "Number of Featured {$listingType} Posted";
                         $graph[$nameEvent . 'Priority' . $listingTypeID]['title'] = "Number of Priority {$listingType} Posted";
                         $graph[$nameEvent . 'Featured' . $listingTypeID]['statistic'] = 0;
                         $graph[$nameEvent . 'Priority' . $listingTypeID]['statistic'] = 0;
                         if (!empty($dateStatistics[$nameEvent . $listingTypeID]['featured']) && $dateStatistics[$nameEvent . $listingTypeID]['featured'] == 1) {
                             $graph[$nameEvent . 'Featured' . $listingTypeID]['statistic'] = $dateStatistics[$nameEvent . $listingTypeID]['count'];
                         }
                         if (!empty($dateStatistics[$nameEvent . $listingTypeID]['priority']) && $dateStatistics[$nameEvent . $listingTypeID]['priority'] == 1) {
                             $graph[$nameEvent . 'Priority' . $listingTypeID]['statistic'] = $dateStatistics[$nameEvent . $listingTypeID]['count'];
                         }
                     }
                 }
                 break;
             case 'addUser':
             case 'addUserlinkedin':
             case 'addUserfacebook':
             case 'addUsergoogle':
                 foreach ($userGroups as $userGroupInfo) {
                     $userGroupID = $userGroupInfo['id'];
                     $userGroup = $userGroupInfo['caption'];
                     if ($userGroupInfo['key'] == 'JobSeeker' || $userGroupInfo['key'] == 'Employer') {
                         $userGroup = $userGroupInfo['key'] . 's';
                     } else {
                         $userGroup = '"' . $userGroup . '" Users';
                     }
                     $graph[$nameEvent . $userGroupID]['title'] = str_replace('#userGroupName#', $userGroup, $title);
                     if (!empty($dateStatistics[$nameEvent . $userGroupID]['type']) && $dateStatistics[$nameEvent . $userGroupID]['type'] == $userGroupID) {
                         $graph[$nameEvent . $userGroupID]['statistic'] = $dateStatistics[$nameEvent . $userGroupID]['count'];
                     } else {
                         $graph[$nameEvent . $userGroupID]['statistic'] = 0;
                     }
                 }
                 break;
             case 'deleteUser':
                 $countUsers = 0;
                 foreach ($userGroups as $userGroupInfo) {
                     $userGroupID = $userGroupInfo['id'];
                     if (!empty($dateStatistics[$nameEvent . $userGroupID]['type']) && $dateStatistics[$nameEvent . $userGroupID]['type'] == $userGroupID) {
                         $countUsers += $dateStatistics[$nameEvent . $userGroupID]['count'];
                     }
                 }
                 $graph['deleteUser']['title'] = $title;
                 $graph['deleteUser']['statistic'] = $countUsers;
                 break;
             case 'payment':
                 $graph['totalAmount']['title'] = 'Total Sales';
                 $graph['totalAmount']['statistic'] = !empty($dateStatistics['totalAmount']['count']) ? $dateStatistics['totalAmount']['count'] : 0;
                 foreach ($userGroups as $userGroupInfo) {
                     $userGroupID = $userGroupInfo['id'];
                     $userGroup = $userGroupInfo['caption'];
                     if ($userGroupInfo['key'] == 'JobSeeker' || $userGroupInfo['key'] == 'Employer') {
                         $userGroup = $userGroupInfo['key'] . 's';
                     } else {
                         $userGroup = '"' . $userGroup . '" Users';
                     }
                     $graph['amount_' . $userGroupID]['title'] = str_replace('#userGroupName#', $userGroup, $title);
                     $graph['amount_' . $userGroupID]['statistic'] = !empty($dateStatistics['amount_' . $userGroupID]['count']) ? $dateStatistics['amount_' . $userGroupID]['count'] : 0;
                 }
                 break;
             case 'apply':
                 $graph[$nameEvent]['title'] = $title;
                 $graph[$nameEvent]['statistic'] = !empty($dateStatistics[$nameEvent]['count']) ? $dateStatistics[$nameEvent]['count'] : 0;
                 $graph[$nameEvent . 'Approved']['title'] = "Number of Applications Approved";
                 $graph[$nameEvent . 'Rejected']['title'] = "Number of Applications Rejected";
                 $graph[$nameEvent . 'Approved']['statistic'] = 0;
                 $graph[$nameEvent . 'Rejected']['statistic'] = 0;
                 if (!empty($dateStatistics[$nameEvent]['approve']) && $dateStatistics[$nameEvent]['approve'] == 1) {
                     $graph[$nameEvent . 'Approved']['statistic'] = $dateStatistics[$nameEvent]['count'];
                 }
                 if (!empty($dateStatistics[$nameEvent]['reject']) && $dateStatistics[$nameEvent]['reject'] == 1) {
                     $graph[$nameEvent . 'Rejected']['statistic'] = $dateStatistics[$nameEvent]['count'];
                 }
                 break;
             default:
                 $graph[$nameEvent]['title'] = $title;
                 $graph[$nameEvent]['statistic'] = !empty($dateStatistics[$nameEvent]['count']) ? $dateStatistics[$nameEvent]['count'] : 0;
                 break;
         }
     }
     return $graph;
 }