Exemplo n.º 1
0
     $aParams = array();
     $aParams['layout_class'] = utils::ReadParam('layout_class', '');
     $aParams['title'] = utils::ReadParam('title', '', false, 'raw_data');
     $aParams['cells'] = utils::ReadParam('cells', array(), false, 'raw_data');
     $aParams['auto_reload'] = utils::ReadParam('auto_reload', false);
     $aParams['auto_reload_sec'] = utils::ReadParam('auto_reload_sec', 300);
     $oDashboard = new RuntimeDashboard($sDashboardId);
     $oDashboard->FromParams($aParams);
     $oDashboard->Render($oPage, true);
     break;
 case 'dashlet_creation_dlg':
     $sOQL = utils::ReadParam('oql', '', false, 'raw_data');
     RuntimeDashboard::GetDashletCreationDlgFromOQL($oPage, $sOQL);
     break;
 case 'add_dashlet':
     $oForm = RuntimeDashboard::GetDashletCreationForm();
     $aValues = $oForm->ReadParams();
     $sDashletClass = $aValues['dashlet_class'];
     $sMenuId = $aValues['menu_id'];
     if (is_subclass_of($sDashletClass, 'Dashlet')) {
         $oDashlet = new $sDashletClass(new ModelReflectionRuntime(), 0);
         $oDashlet->FromParams($aValues);
         ApplicationMenu::LoadAdditionalMenus();
         $index = ApplicationMenu::GetMenuIndexById($sMenuId);
         $oMenu = ApplicationMenu::GetMenuNode($index);
         $oMenu->AddDashlet($oDashlet);
         // navigate to the dashboard page
         if ($aValues['open_editor']) {
             $oPage->add_ready_script("window.location.href='" . addslashes(utils::GetAbsoluteUrlAppRoot() . 'pages/UI.php?c[menu]=' . urlencode($sMenuId)) . "&edit=1';");
             // reloads the page, doing a GET even if we arrived via a POST
         }