/**
  * Execute hook
  *
  * @param array $params
  */
 public static function execute($params)
 {
     $router = Di::getDefault()->get('router');
     if (!preg_match("/^\\/centreon-customview/", $router->getCurrentUri())) {
         return;
     }
     $user = $_SESSION['user'];
     $bookmarkedViews = CustomviewRepository::getCustomViewsOfUser($user->getId());
     $publicViews = CustomviewRepository::getPublicViews();
     foreach ($publicViews as $viewId => $view) {
         if (isset($bookmarkedViews[$viewId])) {
             unset($publicViews[$viewId]);
         }
     }
     return array('template' => 'displayLeftMenu.tpl', 'variables' => array('bookmarkedViews' => $bookmarkedViews, 'publicViews' => $publicViews));
 }
Example #2
0
 /**
  * Get widget Preferences
  *
  * @param int $widgetId
  * @return array
  */
 public static function getWidgetPreferences($widgetId)
 {
     $db = Di::getDefault()->get('db_centreon');
     $stmt = $db->prepare("SELECT default_value, parameter_code_name\n            FROM cfg_widgets_parameters param, cfg_widgets w\n        \tWHERE w.widget_model_id = param.widget_model_id\n            AND w.widget_id = ?");
     $stmt->execute(array($widgetId));
     $tab = array();
     while ($row = $stmt->fetch(\PDO::FETCH_ASSOC)) {
         $tab[$row['parameter_code_name']] = $row['default_value'];
     }
     $stmt = $db->prepare("SELECT pref.preference_value, param.parameter_code_name, pref.comparator\n            FROM cfg_widgets_preferences pref, cfg_widgets_parameters param\n           \tWHERE param.parameter_id = pref.parameter_id\n           \tAND pref.widget_id = ?");
     $stmt->execute(array($widgetId));
     while ($row = $stmt->fetch(\PDO::FETCH_ASSOC)) {
         if (!$row['comparator']) {
             $tab[$row['parameter_code_name']] = $row['preference_value'];
         } else {
             $tab[$row['parameter_code_name']] = CustomviewRepository::getCmpString($row['comparator'], $row['preference_value']);
         }
     }
     if (isset($_SESSION['customview_filters'])) {
         foreach ($_SESSION['customview_filters'] as $key => $value) {
             if ($value != "" && isset($_SESSION['customview_filters'])) {
                 $tab[$key] = $value;
             }
         }
     }
     return $tab;
 }
 /**
  * Apply global filters
  *
  * @method POST
  * @route /applyfilters
  */
 public function applyFiltersAction()
 {
     $_SESSION['customview_filters'] = array();
     $params = $this->getParams('post');
     if (isset($params['filterNames']) && isset($params['filterValues'])) {
         $filterNames = json_decode($params['filterNames']);
         $filterValues = json_decode($params['filterValues']);
         $filterCmp = json_decode($params['filterCmp']);
         foreach ($filterNames as $index => $name) {
             if ($name != "" && isset($filterValues[$index])) {
                 $_SESSION['customview_filters'][$name] = CustomviewRepository::getCmpString($filterCmp[$index], $filterValues[$index]);
             }
         }
     }
     Di::getDefault()->get('router')->response()->json(array('success' => true));
 }