toArray(); $response['rows'][] = $row; } }); break; //Ajout ou modification d'élément chat case 'rocketchat_chat_save': Action::write(function(&$response){ global $myUser,$_; User::check_access('rocketchat','edit'); require_once(__DIR__.SLASH.'Chat.class.php'); $item = Chat::provide(); $item->save(); }); break; //Suppression d'élement chat case 'rocketchat_chat_delete': Action::write(function(&$response){ global $myUser,$_; User::check_access('rocketchat','delete'); require_once(__DIR__.SLASH.'Chat.class.php'); Chat::deleteById($_['id']); }); break; //Sauvegarde des configurations de rocketchat case 'rocketchat_setting_save': Action::write(function(&$response){ global $myUser,$_,$conf; User::check_access('rocketchat','configure'); //Si input file "multiple", possibilité de normlaiser le //tableau $_FILES récupéré avec la fonction => normalize_php_files(); foreach(Configuration::setting('rocketchat') as $key=>$value){ if(!is_array($value)) continue; $allowed[] = $key; } foreach ($_['fields'] as $key => $value) { if(in_array($key, $allowed)) $conf->put($key,$value); } }); break; case 'rocketchat_widget_load': global $myUser; User::check_access('rocketchat','read'); require_once(__DIR__.SLASH.'..'.SLASH.'dashboard'.SLASH.'DashboardWidget.class.php'); $widget = DashboardWidget::current(); $widget->title = 'Widget Rocketchat'; ob_start(); //Décommenter après avoir créé widget.php require_once(__DIR__.SLASH.'widget.php'); $widget->content = ob_get_clean(); echo json_encode($widget); break; case 'rocketchat_widget_rocketchat_configure': global $myUser; User::check_access('rocketchat','read'); require_once(PLUGIN_PATH.'dashboard'.SLASH.'DashboardWidget.class.php'); $widget = DashboardWidget::current(); ob_start(); require_once(__DIR__.SLASH.'widget.configure.php'); $content = ob_get_clean(); echo $content ; break; case 'rocketchat_widget_rocketchat_configure_save': Action::write(function(&$response){ global $myUser,$_; User::check_access('rocketchat','read'); require_once(PLUGIN_PATH.'dashboard'.SLASH.'DashboardWidget.class.php'); $widget = DashboardWidget::getById($_['id']); $widget->data('chan',$_['widget-rocketchat-chan']); $widget->save(); }); break; } ?>