/** * Карточка заказа. */ public function actionIndex() { $order_id = __paramInit('int', 'order_id', 'order_id', 0); $this->order_model->attributes(array('is_adm' => $this->is_adm)); $order = $this->order_model->getCard($order_id, $this->uid); if (!$order) { $this->missingAction(null); } $this->getClips()->add('sidebar', $this->widget('OrderStatusIndicator', array('order' => $order), true)); $prefix = $this->is_emp ? 'emp' : 'frl'; $is_owner = $order["{$prefix}_id"] == $this->uid; $allowChangePriceTime = $is_owner && $this->is_emp && $order['status'] == TServiceOrderModel::STATUS_NEW && !isset($order['reserve_data']); //Виджет окошка редактирования бюджета и сроков if ($allowChangePriceTime) { $this->getClips()->add('order-change-cost-popup', $this->widget('TServiceOrderChangeCostPopup', array('order' => $order), true)); } if ($is_owner) { $this->getClips()->add('user-profile', $this->widget('TServiceOrderUserProfile', array('order' => $order, 'is_emp' => $this->is_emp), true)); } else { $this->getClips()->add('employer-profile', $this->widget('TServiceOrderUserProfile', array('order' => $order, 'is_emp' => false), true)); $this->getClips()->add('freelancer-profile', $this->widget('TServiceOrderUserProfile', array('order' => $order, 'is_emp' => true), true)); } $allowMessagesForm = $is_owner || $this->is_adm && $this->order_model->isArbitrage(); if ($allowMessagesForm) { $this->getClips()->add('order-messages-form', $this->widget('TServiceOrderMessagesForm', array('order_id' => $order_id, 'uid' => $this->uid), true)); } $this->getClips()->add('order-messages', $this->widget('TServiceOrderMessages', array('order_id' => $order_id, 'is_owner' => $is_owner, 'uid' => $this->uid, 'frl_id' => $order['frl_id']), true)); $this->getClips()->add('order-status', $this->widget('TServiceOrderStatus', array('order' => $order, 'is_emp' => $this->is_emp, 'is_owner' => $is_owner), true)); $this->getClips()->add('order-history', $this->widget('TServiceOrderHistory', array('order_id' => $order_id), true)); $this->getClips()->add('order-files', $this->widget('TServiceOrderFiles', array('order_files' => $order['files']), true)); $this->getClips()->add('order-breadcrumbs', $this->widget('TServiceOrderBreadcrumbs', array('order' => $order, 'is_emp' => $this->is_emp || !$is_owner), true)); if ($is_owner) { /* $this->getClips()->add('order-feedback-popup', $this->widget('TServiceOrderFeedback', array( ), TRUE)); */ //Помечаем заказ как прочтенный if ($order["{$prefix}_read"] == 'f') { $this->order_model->markAsReadOrderEvents($this->uid, $order_id, $this->is_emp); } } //Показать уведомление в серой плашке под меню if ($this->is_emp && $allowChangePriceTime && $this->order_model->isPayTypeDefault()) { require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/Helpers/SubBarNotificationHelper.php'; SubBarNotificationHelper::getInstance()->setNowMessage(SubBarNotificationHelper::TYPE_RESERVE_PROMO, array('url' => tservices_helper::getOrderCardUrl($order['id']) . '?tu_edit_budjet=1&paytype=1')); } $this->render('index', array('order' => $order, 'is_emp' => $this->is_emp, 'is_owner' => $is_owner, 'allow_change' => $allowChangePriceTime)); global $page_title; $page_title = "Заказ №{$order_id} – FL.ru"; }
if (!$accountCredited) { $accountCredited = account::GetNewMoneyBack($_SESSION['uid'], $lastId, $currentId); if ($accountCredited) { $accountToolTip = "Возврат средств за рассылку"; } } } if (!$no_personal) { include ABS_PATH . "/templates/personal.php"; } // флаг, указывает что сплэш уже определен, чтобы не показывать больше одного сплэша за раз $splashDefined = false; $no_phone_block = !(user_phone::getInstance()->checkAllow() && user_phone::getInstance()->_use_header == true); $no_tu_block = !(get_uid(false) && @$_SESSION['has_new_tservices_orders']); unset($_SESSION['has_new_tservices_orders']); $is_not_show_notification = !SubBarNotificationHelper::getInstance()->isShow(); $padTop = $no_phone_block && $no_tu_block && $is_not_show_notification ? 60 : 105; //80 : 125; if (isset($landing_page) && $landing_page) { $padTop = 80; if (isset($content_landing_image) && !empty($content_landing_image)) { $padTop = 35; include $content_landing_image; } } //Контентая область на всю ширину страницы if (isset($full_content)) { ?> <div class="b-page__page b-page__page_padtop_0_r600 b-page__page_padtop_50_r1000 b-page__page_padtop_<?php echo $padTop - 10; ?>
public function actionActivate() { define('IS_USER_ACTION', 1); $redirect = '/'; $subscr_news = isset($_SESSION['subscr_news']) ? (int) $_SESSION['subscr_news'] : 1; logout(); require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/activate_code.php"; require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/users.php"; require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/smail.php"; require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/Helpers/SubBarNotificationHelper.php"; $act = new activate_code(); $activated = $act->Activate($this->code, $login, $pass); if ($activated === 1) { $uid = login($login, $pass, 0, true); if (!is_emp()) { require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/freelancer.php"; $freelancer = new freelancer(); $freelancer->UpdateSubscr($uid, 1, array(), 1, 1, 1, 1, 1, $subscr_news, 1, 1, 1, 1, 1, 1, 1, true, 1); if ($redirect == '/') { $redirect = '/projects/'; } } $_SESSION['link_back'] = "/registration/wellcome/" . (is_emp() ? "employer.php" : "freelancer.php"); // факт того, что пользователь только что зарегестрировался (сбрасывается на страницах wellcome) $_SESSION['is_new_user'] = 1; unset($_SESSION['activate_resend_attempts']); SubBarNotificationHelper::getInstance()->setMessage(SubBarNotificationHelper::TYPE_USER_ACTIVATED, array(), $uid); header("Location: " . $redirect); exit; } else { $this->error['rndnum'] = 'Ошибка активации. Попробуйте еще раз'; } }
<li class="b-dropdown-concealment-options-clause b-dropdown-concealment-options-switch-clause"> <a class="b-dropdown-concealment-options-clause-link" href="/norisk2/?site=admin">Админка БС</a> </li> <li class="b-dropdown-concealment-options-clause b-dropdown-concealment-options-switch-clause"> <a class="b-dropdown-concealment-options-clause-link" href="/siteadmin/reserves/">Админка заказов по БС</a> </li> <?php } //if ?> <li class="b-dropdown-concealment-options-clause b-dropdown-concealment-options-switch-clause"> <a data-toggle-action="antiuser" href="javascript:void(0);" class="b-dropdown-concealment-options-clause-link" title="Перейти в аккаунт фрилансера">Войти фрилансером</a> </li> <li class="b-dropdown-concealment-options-clause b-dropdown-concealment-options-exit-clause"> <a href="javascript:void(0);" class="b-dropdown-concealment-options-clause-link" title="Выйти из аккаунта работодателя" onclick="Bar_Ext.logout();">Выйти</a> </li> </ul> </div> </div> </li> </ul> </section> </div> </header> </div> </div> <?php echo SubBarNotificationHelper::getInstance()->showMessage();
public function doActivation($code) { $activation_data = $this->getActivation($code); if (!$activation_data) { return false; } $this->deleteActivation($code); $current_uid = get_uid(false); if ($current_uid) { require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/employer.php'; $user = new employer(); $user->GetUserByUID($current_uid); $status = 1; } else { require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/registration.php'; $registration = new registration(); $user_data = $registration->autoRegistationAndLogin(array('uid' => $activation_data['user_id'], 'role' => 1, 'email' => $activation_data['email'], 'uname' => $activation_data['uname'], 'usurname' => $activation_data['usurname'])); if (!$user_data || !$user_data['ret']) { return self::REDIRECT_AUTH_FAIL; } $status = $user_data['ret']; $user = $user_data['user']; } $uid = $user->uid; $redirect = false; $data = $activation_data['data']; switch ($activation_data['type']) { case GuestConst::TYPE_PERSONAL_ORDER: $data['emp_id'] = $uid; require_once $_SERVER['DOCUMENT_ROOT'] . '/tu/models/TServiceOrderModel.php'; $orderModel = TServiceOrderModel::model(); if ($order = $orderModel->createPersonal($data)) { $tservices_smail = new tservices_smail(); $tservices_smail->newOrder($order); $redirect = sprintf(tservices_helper::url('order_card_url'), $order['id']); } break; case GuestConst::TYPE_VACANCY: require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/projects.php'; $data['state'] = projects::STATE_MOVED_TO_VACANCY; $date_public = null; $redirect_layout = '/public/?step=1&kind=4&public=%s&popup=1'; case GuestConst::TYPE_PROJECT: require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/projects.php'; $key = md5(uniqid($uid)); $tmpPrj = new tmp_project($key); $tmpPrj->initForUser($user); if (isset($data['IDResource']) && !empty($data['IDResource'])) { require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/uploader/uploader.php'; $uploader = new uploader($data['IDResource']); $attachedfiles_files = $uploader->getFiles(); $tmpPrj->clearAttaches(); $tmpPrj->addAttachedFiles($attachedfiles_files, false); $uploader->clear(); } if ($prj = $tmpPrj->addSimpleProject($data)) { $_SESSION['new_public'] = 1; $redirect = getFriendlyURL('project', $prj); if (isset($redirect_layout)) { $redirect = sprintf($redirect_layout, $prj['id']); } $src_id = $prj['id']; //Если проект был создан при переходе с лендинга //то привязываем его для статистики if (isset($data['landingProjectId'])) { require_once ABS_PATH . '/classes/LandingProjects.php'; LandingProjects::model()->linkWithProject($data['landingProjectId'], $src_id, !$activation_data['user_id']); } } break; } //Обновляем приглашение if (isset($activation_data['invite_id']) && $activation_data['invite_id'] > 0) { $guestInviteModel = new GuestInviteModel(); $guestInviteModel->updateDateComeInvite($activation_data['invite_id'], array('src_id' => isset($src_id) ? $src_id : null, 'date_public' => isset($date_public) ? $date_public : null)); } //Мессага с паролями для новеньких if (!$activation_data['user_id'] && !$current_uid) { require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/Helpers/SubBarNotificationHelper.php'; SubBarNotificationHelper::getInstance()->setMessage($activation_data['type'], array('login' => $user->login, 'password' => $user->passwd), $user->uid); } elseif ($status == users::AUTH_STATUS_2FA) { $_SESSION['ref_uri'] = $redirect; $redirect = '/auth/second/'; } return $redirect; }
//Если это перемещенная вакансия то редиректим владельца на редактивание //А посетителю 404 /* if ($projectObject->isNotPayedVacancy()) { if($is_owner) { $popup_param = $is_pro ? '' : '&popup=1'; header("Location: /public/?step=1&kind=4&public={$project['id']}{$popup_param}"); }elseif(!$is_adm) { include("../404.php"); exit; } } */ if ($is_owner && $projectObject->isProject() && !$projectObject->isPreferSbr()) { require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/Helpers/SubBarNotificationHelper.php'; SubBarNotificationHelper::getInstance()->setNowMessage(SubBarNotificationHelper::TYPE_RESERVE_PROMO, array('url' => "/public/?step=1&public={$project['id']}&choose_bs=1")); } // Проект только что опубликован, записываем в событие для дальнейшей обработки if (isset($project['user_id']) && $project['user_id'] == $uid && strpos($_SERVER['HTTP_REFERER'], '/public/') !== FALSE) { Zend_Registry::set('project', $project); Zend_Registry::set('action.render_project_page_after_publishing', true); } SeoTags::getInstance()->initProject($project); $page_title = SeoTags::getInstance()->getTitle(); $page_descr = SeoTags::getInstance()->getDescription(); $page_keyw = SeoTags::getInstance()->getKeywords(); if (!get_uid(false) && $project['hide'] == 't') { $_SESSION['ref_uri2'] = $project['id']; header('Location: /registration'); exit; }
</header> </div> </div> <?php if ($isNewTserviceOrders) { ?> <div class="b-page__desktop"> <div class="l-outer w-outer"> <header class="l-header"> <div class="l-header-inside"> <section class="l-header-section l-header-second-section"> <div class="b-general-notification"> У вас есть неподтвержденные заказы <a class="b-general-notification-link b-general-notification-employee-link" href="/tu-orders/?s=new">Посмотреть заказы</a> </div> </section> </div> </header> </div> </div> <?php } elseif ($mes = SubBarNotificationHelper::getInstance()->showMessage()) { ?> <?php echo $mes; } else { ?> <?php echo isset($user_phone_block) ? $user_phone_block : ''; }