示例#1
0
 public function usersactivityAction()
 {
     $clearArray = array('r_user_id', 'actions');
     $this->filter($clearArray);
     if (!isset($this->params['ur_dates'])) {
         $today = date("d.m.Y");
         $this->params['ur_dates'] = $today . '-' . $today;
     }
     if (!isset($this->params['show_by']) || !in_array($this->params['show_by'], OrderLog::sortBy())) {
         $this->params['show_by'] = OrderLog::BY_USERS;
     }
     $pagination = new Pagination(array('action' => $this->action, 'controller' => $this->controller, 'params' => $this->params, 'ajax' => true));
     $showOrders = AF::get($this->params, 'show_orders') ? true : false;
     $models = AFActiveDataProvider::models('OrderLog', $this->params, $pagination);
     $filterFields = OrderLog::$FilterFields = $models->getoutFilterFields($clearArray, array('ur_dates'));
     if ($showOrders) {
         $fields = array('order_link', 'user_formatted_link', 'action_formatted', 'notes_info', 'created_formatted');
     } else {
         if ($filterFields['show_by'] == 'users') {
             $fields = array('user_formatted_link', 'count_actions_formatted');
         } else {
             $fields = array('action_formatted', 'count_actions_formatted');
         }
     }
     $dataProvider = $models->getUserActionReport();
     $filterUsers = $models->getReportUsers();
     $filterActions = $models->getReportActions();
     // set ajax table
     if (AF::isAjaxRequestModels()) {
         $this->view->includeFile('_users_activity_table', array('application', 'views', 'reports'), array('access' => $this->access, 'controller' => $this->controller, 'dataProvider' => $dataProvider, 'pagination' => $pagination, 'filterFields' => $filterFields, 'fields' => $fields, 'ajax' => true, 'users' => $filterUsers, 'actions' => $filterActions));
         die;
     }
     if (isset($this->params['download_csv'])) {
         $csvField = $fields;
         $changeArray = array('order_link' => 'order_id', 'count_actions_formatted' => 'count_actions', 'user_formatted_link' => 'user_formatted');
         foreach ($changeArray as $k => $v) {
             $key = array_search($k, $csvField);
             if ($key || $key === 0) {
                 $csvField[$key] = $v;
             }
         }
         Csv::printDataProviderCsv($dataProvider, $csvField, 'user_activity_report');
     }
     Assets::css('jquery-ui');
     Assets::js('//code.jquery.com/ui/1.10.3/jquery-ui.js');
     Assets::js('dateRange/jquery.daterange');
     Assets::js('ajax_table');
     $this->render('users_activity', array('dataProvider' => $dataProvider, 'pagination' => $pagination, 'filterFields' => $filterFields, 'fields' => $fields, 'users' => $filterUsers, 'actions' => $filterActions));
 }
示例#2
0
            <?foreach($actions as $value){?>
                <option value="<?php 
echo $value['action'];
?>
" <?if(in_array($value['action'], $filterFields['actions'])){?>selected=""<?}?>><?php 
echo $value['name'];
?>
 (<?php 
echo $item['count'];
?>
)</option>
            <?}?>
        </select>

        <select name="show_by" class="chosen-select select-medium af_select_ajax">
            <?foreach(OrderLog::sortBy() as $value){?>
                <option value="<?php 
echo $value;
?>
" <?if($filterFields['show_by'] == $value){?>selected="selected"<?}?>><?php 
echo __('by_' . $value);
?>
</option>
            <?}?>
        </select>

        <button type="button" class="btn btn-small btn-set ajax_submit_form hide" ><i class="icon-search"></i> <?php 
echo __('search');
?>
</button>
        <button type="button" class="btn btn-small btn-set ajax_clear_form"><i class="icon-remove"></i> <?php