;
var filter_bullets = [[],[]];
<?php 
if (sizeof($_SESSION['ph_categories'])) {
    for ($ci = 0; $ci < 2; $ci++) {
        $ph_categories[$ci] = array();
        if (sizeof($_SESSION['ph_categories'][$ci])) {
            foreach ($_SESSION['ph_categories'][$ci] as $fkey => $fvalue) {
                if ($fkey) {
                    if (!freelancers_filters::mirrorExistsInArray($fkey, $ph_categories[$ci], $mirrored_specs)) {
                        if (!$fvalue) {
                            $proftitle = professions::GetGroup($fkey, $error);
                            $proftitle = $proftitle['name'];
                        } else {
                            $proftitle = professions::GetProfName($fkey);
                            $prof_group = professions::GetProfField($fkey, 'prof_group');
                        }
                        ?>
filter_bullets[<?php 
                        echo $fvalue;
                        ?>
][<?php 
                        echo $fkey;
                        ?>
] = new Array();
filter_bullets[<?php 
                        echo $fvalue;
                        ?>
][<?php 
                        echo $fkey;
                        ?>
Exemple #2
0
    exit;
}
//------------------------------------------------------------------------------
$freelancer = new freelancer();
if (!$prof_id && !$prof_group_id) {
    $prof_type = false;
    $anchor = 0;
    $cat_menu_freelancers = true;
} elseif ($prof_group_id) {
    $prof_name = professions::GetProfGroupTitle($prof_group_id);
    $prof_type = false;
    $anchor = 0;
    $cat_menu_freelancers = true;
} else {
    if (!$prof_link) {
        $prof_link = professions::GetProfField($prof_id, 'link');
    }
    $prof_name_arr = professions::GetProfTitle($prof_id);
    $prof_name = $prof_name_arr['name'];
    $prof_title = $prof_name_arr['title'] ? $prof_name_arr['title'] : $prof_name;
    $prof_type = professions::GetProfType($prof_id);
    $anchor = professions::GetProfessionOrigin($prof_id);
    $g_page_id = "1|" . $prof_id;
}
//Мета-теги
if ($prof_group_id) {
    SeoTags::getInstance()->initFreelancers($prof_group_id, $page, false);
} else {
    SeoTags::getInstance()->initFreelancers($prof_id, $page);
}
$page_title = SeoTags::getInstance()->getTitle();
Exemple #3
0
    //$avg_price_hour = $avg_price_project = $avg_price_month = null;
    $anchor = 0;
    $cat_menu_freelancers = true;
} else {
    // Подсчитываем количество избранных. Переписать в отдельный метод.
    //  $fav_count = 0;
    if (!$prof_link) {
        $prof_link = professions::GetProfField($prof_id, 'link');
    }
    $prof_name_arr = professions::GetProfTitle($prof_id);
    $prof_name = $prof_name_arr['name'];
    $prof_title = $prof_name_arr['title'] ? $prof_name_arr['title'] : $prof_name;
    $prof_type = professions::GetProfType($prof_id);
    //$prof_group_name = professions::GetProfGroupName($prof_id);
    $prof_descr = professions::GetProfField($prof_id, 'descr');
    $prof_descr_text = professions::GetProfField($prof_id, 'descr_text');
    $anchor = professions::GetProfessionOrigin($prof_id);
    $g_page_id = "1|" . $prof_id;
    if ($page == 1) {
        if (empty($prof_name_arr['title'])) {
            $page_title = $prof_title . " - фриланс, удаленная работа на FL.ru";
            $page_keyw = $prof_title . ", Поиск работы, Предложение работы, Портфолио фри-лансеров, FL.ru";
        } else {
            $page_title = $page_keyw = $prof_name_arr['title'] . " - фриланс, удаленная работа%prepositional_cityname% на FL.ru";
            $page_keyw = $prof_name_arr['title'] . ", Поиск работы, Предложение работы, Портфолио фри-лансеров, FL.ru";
        }
    } else {
        $page_title = $prof_name . ' - Страница ' . $page . ' - фриланс, удаленная работа%prepositional_cityname% на FL.ru';
        $page_keyw = $prof_name . ', Страница ' . $page . ', FL.ru';
    }
    if ($page == 1) {
 /**
  * Проверяет по специализациям, может ли текущий пользователь ответить на проект.
  * 
  * @param int $projec_id ид проекта
  *
  * @return boolean
  */
 public static function offerSpecIsAllowed($projec_id)
 {
     require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/professions.php';
     require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/projects.php';
     // ПРО отвечают без ограничений
     if (is_pro()) {
         return true;
     }
     if (!get_uid(false)) {
         return false;
     }
     $is_send_offers = false;
     $spec_project = new_projects::getSpecs($projec_id);
     $user_spec = professions::GetProfsAddSpec($_SESSION['uid']);
     if (is_array($user_spec)) {
         $user_spec = array_merge($user_spec, $_SESSION['specs']);
     } else {
         $user_spec = $_SESSION['specs'];
     }
     if ($user_spec) {
         $user_spec = array_merge($user_spec, professions::GetMirroredProfs(professions::GetProfessionOrigin(implode(',', $user_spec))));
         $user_spec = array_unique($user_spec);
         //@todo запехать в один запрос
         foreach ($user_spec as $spec) {
             $prof_group[$spec] = professions::GetProfField($spec, 'prof_group');
         }
     }
     foreach ($spec_project as $specs) {
         if (is_array($prof_group) && in_array($specs['category_id'], $prof_group)) {
             $is_send_offers = true;
             // Разрашаем оставлять отзыв
             break;
         }
     }
     return $is_send_offers;
 }
Exemple #5
0
$dc = 0;
if (!empty($_GET['g'])) {
    if (preg_match("/^([0-9]+)\\:([0-9]+)\$/", $_GET['g'], $o)) {
        $dc = $_GET['g'];
        $dcg = $o[1];
        $dcp = $o[2];
    } else {
        if (preg_match("/^[0-9]+\$/", $_GET['g'])) {
            $dc = "{$_GET['g']}:0";
            $dcg = $_GET['g'];
            $dcp = 0;
        }
    }
}
if (!empty($_GET['p'])) {
    if ($dcg = professions::GetProfField(intval($_GET['p']), 'prof_group')) {
        $dcp = intval($_GET['p']);
        $dc = "{$dcg}:{$dcp}";
    }
}
//echo '<pre>'; var_dump($_SESSION['r_masssending']); echo '</pre>';
$page_title = "Рассылка по каталогу - фриланс, удаленная работа на FL.ru";
if (isset($_GET['done'])) {
    $content = 'done.php';
} else {
    if (!empty($_POST)) {
        if (!$uid) {
            header('Location: /registration/?user_action=masssending');
            exit;
        }
        $params = $_POST;
Exemple #6
0
 /**
  * Возвращает часть ответа с информацией о пользователе
  * 
  * @param  array $aData информация о пользователе из базы
  * @param  bool $bShowEmail включить пользователя Email в ответ
  * @param  bool $bExtended получить расширенную информацию (аналог профиля на сайте)
  * @return array
  */
 private function _getUserData($aData = array(), $bShowEmail = false, $bExtended = false)
 {
     $this->_oSession->view_online_status($aData['login'], false);
     $u = new users();
     if (!is_emp($aData['role'])) {
         require_once ABS_PATH . '/classes/professions.php';
         $prof_id = $aData['spec'] ? $aData['spec'] : 0;
         $prof_group_id = $aData['spec'] ? professions::GetProfField($aData['spec'], 'prof_group') : 0;
     } else {
         $prof_id = 0;
         $prof_group_id = 0;
     }
     $aReturn = array('id' => $aData['uid'], 'status' => $aData['self_deleted'] == 't' ? 2 : 1, 'username' => $aData['login'] ? iconv('cp1251', 'utf-8', $aData['login']) : '', 'firstname' => $aData['uname'] ? iconv('cp1251', 'utf-8', $aData['uname']) : '', 'lastname' => $aData['usurname'] ? iconv('cp1251', 'utf-8', $aData['usurname']) : '', 'role' => is_emp($aData['role']) ? 2 : 1, 'pro' => $aData['is_pro'] == 't' ? 1 : 0, 'verified' => $aData['is_verify'] == 't' ? 1 : 0, 'online' => $this->_oSession->is_active ? 1 : 0, 'spec' => $aData['spec'] ? $aData['spec'] : 0, 'avatar' => array('url' => $aData['photo'] ? WDCPREFIX . '/users/' . $aData['login'] . '/foto/' : '', 'file' => $aData['photo'] ? substr($aData['photo'], 2) . '?' . strtotime($aData['photo_modified_time']) : ''), 'gender' => $aData['sex'] == 't' ? 1 : ($aData['sex'] == 'f' ? 2 : 0), 'country_id' => intval($aData['country']), 'city_id' => intval($aData['city']), 'age' => ElapsedYears(strtotime($u->GetField($aData['uid'], $e, 'birthday'))), 'birthday' => $u->GetField($aData['uid'], $e, 'birthday'), 'prof_id' => $prof_id, 'prof_group_id' => $prof_group_id, 'create_time' => strtotime($aData['reg_date']), 'update_time' => $aData['modified_time'] ? strtotime($aData['modified_time']) : 0);
     if ($bShowEmail) {
         $aReturn['email'] = $aData['email'] ? iconv('cp1251', 'utf-8', $aData['email']) : '';
     }
     if ($bExtended) {
         require_once ABS_PATH . '/classes/rating.php';
         require_once ABS_PATH . '/classes/teams.php';
         $rating = new rating($aData['uid'], $aData['is_pro'], $aData['is_verify'], @$aData['is_profi'], 1);
         $team = new teams();
         $aReturn['rating'] = rating::round($rating->data['total']);
         $aReturn['favorite'] = $team->teamsIsInFavorites($_SESSION['uid'], $aData['uid']);
         $aReturn['contacts'] = is_view_contacts(get_uid(false)) ? $this->_getUserContactsData($aData) : array();
         $aReturn['reviews'] = $this->_getUserOpinionsData($aData);
     }
     return $aReturn;
 }