示例#1
0
文件: Author.php 项目: noikiy/PD
 public static function authorHeader($user)
 {
     $view = JO_View::getInstance();
     $model_images = new Helper_Images();
     $request = JO_Request::getInstance();
     $view->my_profile = JO_Session::get('username') == $user['username'] ? true : false;
     $cnts = Model_Items::getPortfolioCounts($user['user_id']);
     $view->portfolio_link = WM_Router::create($request->getBaseUrl() . '?controller=users&username='******'username']));
     $action = $request->getAction();
     $controller = $request->getController();
     $list_type = $request->getParam('list_type');
     if (JO_Session::get('user_id')) {
         if ($view->my_profile) {
             if (in_array($action, array('dashboard', 'edit', 'earnings', 'statement', 'withdrawal', 'deposit', 'membership'))) {
                 $view->stats = array(array('name' => $view->translate('Dashboard'), 'href' => WM_Router::create($request->getBaseUrl() . '?controller=users&action=dashboard'), 'is_selected' => $action == 'dashboard' ? true : false), array('name' => $view->translate('Settings'), 'href' => WM_Router::create($request->getBaseUrl() . '?controller=users&action=edit'), 'is_selected' => $action == 'edit' ? true : false), array('name' => $view->translate('Earnings'), 'href' => WM_Router::create($request->getBaseUrl() . '?controller=users&action=earnings'), 'is_selected' => $action == 'earnings' ? true : false), array('name' => $view->translate('Statement'), 'href' => WM_Router::create($request->getBaseUrl() . '?controller=users&action=statement'), 'is_selected' => $action == 'statement' ? true : false), array('name' => $view->translate('Withdrawal'), 'href' => WM_Router::create($request->getBaseUrl() . '?controller=users&action=withdrawal'), 'is_selected' => $action == 'withdrawal' ? true : false), array('name' => $view->translate('Deposit'), 'href' => WM_Router::create($request->getBaseUrl() . '?controller=users&action=deposit'), 'is_selected' => $action == 'deposit' ? true : false));
                 $membership = Model_Membership::getAll();
                 if ($membership) {
                     $view->stats[] = array('name' => $view->translate('Membership'), 'href' => WM_Router::create($request->getBaseUrl() . '?controller=users&action=membership'), 'is_selected' => $action == 'membership' ? true : false);
                 }
                 $user['edit_link'] = array('name' => $view->translate('Portfolio'), 'href' => $view->portfolio_link);
             } else {
                 $view->portfolio = true;
                 $view->stats = array(array('name' => $cnts[4]['total'] . ' ' . $view->translate('Items'), 'href' => WM_Router::create($request->getBaseUrl() . '?controller=users&username='******'&', '-', $user['username'])), 'is_selected' => $action == 'index' && $controller == 'users' ? true : false), array('name' => $cnts[0]['total'] . ' ' . $view->translate('Collections'), 'href' => WM_Router::create($request->getBaseUrl() . '?controller=users&action=collections&username='******'&', '-', $user['username'])), 'is_selected' => in_array($action, array('collections', 'view_collection')) ? true : false), array('name' => $cnts[1]['total'] . ' ' . $view->translate('Downloads'), 'href' => WM_Router::create($request->getBaseUrl() . '?controller=users&action=downloads&username='******'&', '-', $user['username'])), 'is_selected' => $action == 'downloads' ? true : false), array('name' => $cnts[2]['total'] . ' ' . $view->translate('Following'), 'href' => WM_Router::create($request->getBaseUrl() . '?controller=users&action=following&username='******'&', '-', $user['username'])), 'is_selected' => $action == 'following' && $list_type != 'followers' ? true : false), array('name' => $cnts[3]['total'] . ' ' . $view->translate('Followers'), 'href' => WM_Router::create($request->getBaseUrl() . '?controller=users&action=followers&username='******'&', '-', $user['username'])), 'is_selected' => $list_type == 'followers' ? true : false));
                 $user['edit_link'] = array('name' => $view->translate('My account'), 'href' => WM_Router::create($request->getBaseUrl() . '?controller=users&action=dashboard'));
             }
         } else {
             $following = JO_Session::get('following');
             if ($following) {
                 $is_followed = JO_Array::multi_array_search($following, 'username', $user['username']);
             }
             if (!empty($is_followed)) {
                 $user['edit_link'] = array('name' => $view->translate('Unfollow'), 'href' => WM_Router::create($request->getBaseUrl() . '?controller=users&action=unfollow&username='******'&', '-', $user['username'])));
             } else {
                 $user['edit_link'] = array('name' => $view->translate('Follow'), 'href' => WM_Router::create($request->getBaseUrl() . '?controller=users&action=follow&username='******'&', '-', $user['username'])));
             }
         }
     }
     if (!isset($view->stats)) {
         $view->portfolio = true;
         $view->stats = array(array('name' => $cnts[4]['total'] . ' ' . $view->translate('Items'), 'href' => WM_Router::create($request->getBaseUrl() . '?controller=users&username='******'&', '-', $user['username'])), 'is_selected' => $action == 'index' && $controller == 'users' ? true : false), array('name' => $cnts[0]['total'] . ' ' . $view->translate('Collections'), 'href' => WM_Router::create($request->getBaseUrl() . '?controller=users&action=collections&username='******'&', '-', $user['username'])), 'is_selected' => in_array($action, array('collections', 'view_collection')) ? true : false), array('name' => $cnts[2]['total'] . ' ' . $view->translate('Following'), 'href' => WM_Router::create($request->getBaseUrl() . '?controller=users&action=following&username='******'&', '-', $user['username'])), 'is_selected' => $action == 'following' && $list_type != 'followers' ? true : false), array('name' => $cnts[3]['total'] . ' ' . $view->translate('Followers'), 'href' => WM_Router::create($request->getBaseUrl() . '?controller=users&action=followers&username='******'&', '-', $user['username'])), 'is_selected' => $list_type == 'followers' ? true : false));
     }
     if ($user['country_id']) {
         $country = Model_Countries::get($user['country_id']);
         $user['country_name'] = (!empty($user['live_city']) ? $user['live_city'] . ', ' : '') . $country['name'];
     }
     $user['register_datetime'] = JO_Date::getInstance($user['register_datetime'], 'MM yy')->getDate();
     $time_parts = explode(' ', $user['register_datetime']);
     if (mb_strlen($time_parts[0], 'UTF-8') > 5) {
         $user['register_datetime'] = mb_substr($time_parts[0], 0, 3, 'UTF-8') . '. ' . $time_parts[1];
     }
     if ($user['user_site']) {
         $pos = mb_stripos($user['user_site'], 'http://', 'UTF-8');
         if ($pos === 0) {
             $user['user_site'] = str_replace('http://', '', mb_strtolower($user['user_site'], 'UTF-8'));
         }
         if (strlen($user['user_site']) > 22) {
             $pos = mb_stripos($user['user_site'], '/', 15, 'UTF-8');
             if ($pos !== false) {
                 $user['user_site'] = str_replace('/', '/​', $user['user_site']);
             }
         }
     }
     $view->badges = self::userBadges($user);
     if ($user['social']) {
         $user['social'] = unserialize($user['social']);
     }
     if ($user['avatar']) {
         $user['avatar'] = $model_images->resize($user['avatar'], JO_Registry::forceGet('user_avatar_width'), JO_Registry::forceGet('user_avatar_height'), true);
     } else {
         $user['avatar'] = 'data/themes/images/noavatar.png';
     }
     $view->user = $user;
     return $view->renderByModule('single_user/author_header', 'users', 'themes');
 }