public function _createContent(&$toReturn) { $arModuleToInstall = CopixSession::get('arModuleToInstall', 'copix'); $arInstalledModule = CopixSession::get('arInstalledModule', 'copix'); $moduleName = array_pop($arModuleToInstall); $url = $this->getParam('url'); if (($message = CopixModule::installModule($moduleName)) === true) { $toReturn = _i18n('install.module.install') . ' ' . $moduleName . ' <img src="' . _resource('img/tools/valid.png') . '" />'; if (count($arModuleToInstall) > 0) { $toReturn .= _tag('copixzone', array('id' => uniqid(), 'process' => 'admin|installmodule', 'url' => $url, 'auto' => true, 'ajax' => true)); } elseif ($url) { $toReturn .= sprintf('<form action="%s" method="post"><input type="submit" value="%s"/></form>', htmlspecialchars($url), _i18n('copix:common.buttons.next')); } else { $toReturn .= "<script>\$('back').setStyle('display','');</script>"; } array_push($arInstalledModule, $moduleName); } else { array_push($arInstalledModule, $moduleName); $toReturn = _i18n('install.module.install') . ' ' . $moduleName . ' ' . _tag('popupinformation', array('img' => _resource('img/tools/delete.png')), $message); $toReturn .= '<div class="errorMessage">' . $message . '</div>'; if (count($arInstalledModule) > 0) { CopixSession::set('arModuleToDelete', $arInstalledModule, 'copix'); CopixSession::set('arInstalledModule', null, 'copix'); CopixSession::set('arModuleToInstall', null, 'copix'); $toReturn .= _tag('copixzone', array('id' => uniqid(), 'process' => 'admin|deletemodule', 'auto' => true, 'ajax' => true)); } } CopixSession::set('arModuleToInstall', $arModuleToInstall, 'copix'); CopixSession::set('arInstalledModule', $arInstalledModule, 'copix'); return true; }
/** * Retourne les données du chart * */ public function processGetChartsDatas() { $cle = CopixRequest::get('cle'); echo CopixSession::get("charts|datas|{$cle}"); CopixSession::set("charts|datas|{$cle}", null); return _arNone(); }
/** * Retourne les logs sous forme d'idérateur * * @param string $pProfil Nom du profil dont on souhaite afficher le contenu * @param int $pNbItems Nombres d'items à afficher * @return Iterator */ public function getLog($pProfil, $pNbItems = 20) { // Mise en place des limites $page = CopixSession::get('log|numpage') - 1; $start = $page * $pNbItems; // Création du Search Params $sp = _daoSP()->addCondition('profile', '=', $pProfil)->orderBy(array('date', 'DESC')); $dbNbLines = _ioDAO('copixlog')->countBy($sp); CopixSession::set('log|nbpage', ceil($dbNbLines / $pNbItems)); $sp = $sp->setLimit($start, $pNbItems); return _ioDAO('copixlog')->findBy($sp); }
public function _createContent(&$toReturn) { $moduleName = CopixZone::getParam('moduleName'); $arDependency = CopixModule::getDependenciesForDelete($moduleName); $tpl = new CopixTpl(); $tpl->assign('arDependency', $arDependency); $tpl->assign('arModuleToDelete', $arDependency); CopixSession::set('arModuleToDelete', $arDependency, 'copix'); $tpl->assign('id', uniqid()); $tpl->assign('arModuleToDelete', $arDependency); $toReturn = $tpl->fetch('delete.script.tpl'); return true; }
/** * Envoie du mail */ public function processSend() { $ppo->mail = CopixSession::get('admin|email|donnees'); $ppo->mail['send'] = true; $ppo->mail['dest'] = _request("maildest"); $ppo->mail['cc'] = _request("mailcc"); $ppo->mail['cci'] = _request("mailcci"); $ppo->mail['from'] = _request("mailfrom"); $ppo->mail['fromname'] = _request("mailfromname"); $ppo->mail['subject'] = _request("mailtitle"); $ppo->mail['msg'] = _request("mailmsg"); CopixSession::set('admin|email|donnees', $ppo->mail); $arrErrors = _class("emailservices")->sendMail($ppo->mail); return CopixActionGroup::process('admin|Email::create', array('error' => $arrErrors, 'sending' => 'true')); }
public function _createContent(&$toReturn) { if (CopixZone::getParam('arModule') !== null && is_array(CopixZone::getParam('arModule'))) { $arModule = CopixZone::getParam('arModule'); } else { $arModule = array(CopixZone::getParam('moduleName')); } $arModuleToInstall = array(); $arOrder = array(); foreach ($arModule as $moduleName) { $arDependency = CopixModule::getDependenciesForInstall($moduleName); foreach ($arDependency as $key => $dependency) { if ($dependency->kind === 'module') { //Gestion des modules en double avec les dependences if (!in_array($dependency->name, $arModuleToInstall)) { $arModuleToInstall[] = $dependency->name; $arOrder[] = $dependency->level; } else { //Gestion du niveau d'install des dependences $key = array_search($dependency->name, $arModuleToInstall); if ($arOrder[$key] < $dependency->level) { $arOrder[$key] = $dependency->level; } } } } } array_multisort($arOrder, SORT_ASC, $arModuleToInstall, SORT_DESC); $arModuleInfos = array(); $tpl = new CopixTpl(); $tpl->assign('arModuleToInstall', $arModuleToInstall); $tpl->assign('arModuleInfos', $arModuleInfos); CopixSession::set('arModuleToInstall', $arModuleToInstall, 'copix'); CopixSession::set('arInstalledModule', array(), 'copix'); $tpl->assign('id', uniqid()); $tpl->assign('url', CopixZone::getParam('url_return', _url('admin|install|manageModules'))); $tpl->assign('messageConfirm', CopixZone::getParam('messageConfirm', true)); $toReturn = $tpl->fetch('admin|install.script.tpl'); return true; }
public function _createContent(&$toReturn) { $arModuleToDelete = CopixSession::get('arModuleToDelete', 'copix'); $moduleName = array_pop($arModuleToDelete); if (($message = CopixModule::deleteModule($moduleName)) === true) { $toReturn = _i18n('install.module.delete') . ' ' . $moduleName . ' <img src="' . _resource('img/tools/valid.png') . '" />'; if (count($arModuleToDelete) > 0) { $toReturn .= _tag('copixzone', array('id' => uniqid(), 'process' => 'admin|deletemodule', 'auto' => true, 'ajax' => true)); } else { $toReturn .= "<script>\$('back').setStyle('display','');</script>"; } } else { $toReturn = _i18n('install.module.delete') . ' ' . $moduleName . ' ' . _tag('popupinformation', array('img' => _resource('img/tools/delete.png')), $message); $toReturn .= '<div class="errorMessage">' . $message . '</div>'; if (count($arModuleToDelete) > 0) { $toReturn .= _tag('copixzone', array('id' => uniqid(), 'process' => 'admin|deletemodule', 'auto' => true, 'ajax' => true)); } else { $toReturn .= "<script>\$('back').setStyle('display','');</script>"; } } CopixSession::set('arModuleToDelete', $arModuleToDelete, 'copix'); return true; }
/** * Destruction de l'utilisateur courant */ public static function destroyCurrentUser() { CopixSession::set('copix|auth|user', null); }
/** * Mise en session de l'aide simpe édité * @access: private. */ private function _setSessionSimpleHelp($toSet) { CopixSession::set('edithelp_object', serialize($toSet), 'simplehelp'); }
/** * Supprime tout les log de ce profil * @param string $pProfil le nom du profil à vider */ public function deleteProfile($pProfil) { CopixSession::set('copix|log|firebug|' . $pProfil, null); }
/** * Destruction de l'objet, on met à jour la session avec les langues retenues */ public function __destruct() { CopixSession::set('plugin|i18n|lang', $this->_lang); CopixSession::set('plugin|i18n|country', $this->_country); }
public function sendmail($mail) { $arrErrors = array(); if ($mail['dest'] == null || $mail['dest'] == "") { $arrErrors[] = _i18n('email.error.nodest'); } else { $arrTmp = explode(",", $mail['dest']); try { foreach ($arrTmp as $key => $tmpMail) { if ($tmpMail != "") { CopixFormatter::getMail($tmpMail); } } } catch (CopixException $e) { $arrErrors[] = _i18n('email.error.baddest'); } } if ($mail['cc'] != "") { $arrTmp = explode(",", $mail['cc']); try { foreach ($arrTmp as $key => $tmpMail) { if ($tmpMail != "") { CopixFormatter::getMail($tmpMail); } } } catch (CopixException $e) { $arrErrors[] = _i18n('email.error.badcc'); } } else { $mail['cc'] = ""; } if ($mail['cci'] != "") { $arrTmp = explode(",", $mail['cci']); try { foreach ($arrTmp as $key => $tmpMail) { if ($tmpMail != "") { CopixFormatter::getMail($tmpMail); } } } catch (CopixException $e) { $arrErrors[] = _i18n('email.error.badcci'); } } else { $mail['cci'] = ""; } if ($mail['subject'] == null || $mail['subject'] == "") { $arrErrors[] = _i18n('email.error.nosubject'); } if ($mail['msg'] == null || $mail['msg'] == "") { $arrErrors[] = _i18n('email.error.nomsg'); } if ($mail['from'] == null || $mail['from'] == "") { $arrErrors[] = _i18n('email.error.nofrom'); } else { $arrTmp = explode(",", $mail['from']); try { foreach ($arrTmp as $tmpMail) { if ($tmpMail != "") { CopixFormatter::getMail($tmpMail); } } } catch (CopixException $e) { $arrErrors[] = _i18n('email.error.badfrom'); } } if ($mail['fromname'] == null || $mail['fromname'] == "") { $arrErrors[] = _i18n('email.error.nofromname'); } if (count($arrErrors) == 0) { $monMail = new CopixTextEMail($mail['dest'], $mail['cc'], $mail['cci'], utf8_decode($mail['subject']), utf8_decode($mail['msg'])); $monMail->send($mail['from'], $mail['fromname']); CopixSession::set('admin|email|donnees', $this->newMail()); } return $arrErrors; }
public static function delete($pId) { CopixSession::set($pId, null, 'COPIXLIST'); }
public function processPreDelete() { CopixSession::set('admin|database|loginInformations', null); }
/** * retourne le code html qui sera attaché au tpl * @return code html a passer au template */ protected function getChart($width = 400, $height = 250) { _classInclude('chart_swf|CopixSwfChart'); CopixSession::set("charts|datas|{$this->_cle}", CopixSwfChart::getChartData($this->_data)); $swf = _class('chart_swf|CopixSwfChart'); return $swf->getChart(_url("chart_swf||getChartsDatas", array("cle" => $this->_cle)), $width, $height); }
/** * Marque les tests de connection pour les connections configurées en session * * @return boolean Vrai si les connections sont toutes accessibles */ private function _testConnections() { $toReturn = true; $arConnections = $this->_getConnections(); foreach ($arConnections as $position => $connection) { try { $profile = new CopixDBProfile('test_' . $position, $connection['driver'] . ':' . $connection['connectionString'], $connection['user'], $connection['password'], $connection['extra']); if (($result = CopixDB::testConnection($profile)) !== true) { $toReturn = false; } $arConnections[$position]['available'] = $result === true; $arConnections[$position]['errorNotAvailable'] = $result === true ? '' : $result; } catch (CopixDBException $e) { $toReturn = false; $arConnections[$position]['available'] = false; $arConnections[$position]['errorNotAvailable'] = $e->getMessage(); } } // var_dump($arConnections); CopixSession::set('admin|database|configure', $arConnections); return $toReturn; }
/** * Validation des modifications apportées sur un utilisateur */ public function processValid() { //$user = new stdClass (); $user = _record('dbuser'); $user->login_dbuser = _request('login_dbuser', ''); $user->email_dbuser = _request('email_dbuser'); $errors = array(); //on vérifie si le login n'est pas déja pris $sp = _daoSp(); $sp->addCondition('login_dbuser', '=', $user->login_dbuser); if ($user->login_dbuser === '') { $errors['loginEmpty'] = 1; } if (count(_ioDAO('dbuser')->findBy($sp))) { $errors['loginNotAvailable'] = 1; } //on vérifie si un mot de passe est donné qu'ils soient bien identiques if (CopixRequest::get('password_dbuser')) { if (CopixRequest::get('password_dbuser') != CopixRequest::get('password_confirmation_dbuser')) { $errors['passwordDoNotMatch'] = 1; } else { $user->password_dbuser = md5(CopixRequest::get('password_dbuser')); } } else { //Comme c'est automatiquement un nouvel utilisateur, il est obligatoire de saisir un nouveau mot de passe. $errors['passwordEmpty'] = 1; } if (Copixconfig::get('auth|typeConfirm') == "email") { if (!$user->email_dbuser) { $errors['emailEmpty'] = 1; } else { try { CopixFormatter::getMail($user->email_dbuser); } catch (CopixException $e) { $errors['emailIsBad'] = 1; } } } if (Copixconfig::get('auth|typeConfirm') == "email") { $user->enabled_dbuser = 0; } else { $user->enabled_dbuser = 1; } //Si le module imageprotect est activé test la protection anti-spam if (CopixModule::isEnabled('antispam')) { CopixRequest::assert('confirmcode_dbuser'); CopixRequest::assert('idcode_dbuser'); $code = _request('confirmcode_dbuser'); $idCode = _request('idcode_dbuser'); // Test si le code de ssession est valide _classInclude('antispam|imageprotect'); if (!ImageProtect::getCode($idCode, $code)) { $errors['confirmCodeBad'] = 1; } } //redirige vers l'éditeur si il y a des erreurs if (count($errors) != 0) { $errors['idForm'] = uniqid(); CopixSession::set('auth|createForm', $user, $errors['idForm']); return _arRedirect(_url('auth|usersregister|edit', $errors)); } //sauvegarde de l'utilisateur _ioDAO('dbuser')->insert($user); return _arRedirect(_url('')); }
function qSession($key, $value = '__get') { if ($value != '__get') { return CopixSession::set($key, $value, 'quiz'); } if ($key == 'delete') { CopixSession::destroyNamespace('quiz'); } return CopixSession::get($key, 'quiz'); }
/** * Supression d'un utilisateur du groupe */ public function processRemoveUser() { $this->_validFromRequest(); $users = CopixSession::get('auth|usersgroup'); unset($users[CopixRequest::get('handlerUser')][CopixRequest::get('idUser')]); CopixSession::set('auth|usersgroup', $users); return _arRedirect(_url('auth|groups|edit')); }
public function beforeDisplay(&$display) { $jscode = array(); $logs = array(); foreach (CopixConfig::instance()->copixlog_getRegistered() as $profil) { $name = CopixConfig::instance()->copixlog_getProfile($profil); $name = $name['strategy']; if (strtoupper($name) == "FIREBUG") { $logs[] = CopixLog::getLog($profil); } } //merge last logs to new logs if (CopixSession::get('plugin|firebug|log') !== null) { $logs = array_merge(CopixSession::get('plugin|firebug|log'), $logs); CopixSession::set('plugin|firebug|log', null); } $logs = array_reverse($logs); foreach ($logs as $arlog) { foreach ($arlog as $log) { foreach (array('message', 'file', 'line', 'level', 'classname', 'functionname', 'type') as $var) { if (isset($log->{$var})) { ${$var} = $log->{$var}; unset($log->{$var}); } else { ${$var} = null; } } $log->date = CopixDateTime::yyyymmddhhiissToDateTime($log->date); $log->location = "{$file}:{$line}"; $log->function = ($classname ? "{$classname}::" : "") . $functionname; switch ($level) { case CopixLog::INFORMATION: $type = "info"; break; case CopixLog::WARNING: case CopixLog::NOTICE: $type = "warn"; break; case CopixLog::EXCEPTION: case CopixLog::ERROR: case CopixLog::FATAL_ERROR: $type = "error"; break; default: $type = "log"; } unset($log->level); $jscode[] = sprintf('_l(%s,%s,%s,%s);', CopixJSON::encode($type), CopixJSON::encode($message), CopixJSON::encode($log->location), CopixJSON::encode($log)); } } foreach (CopixConfig::instance()->copixlog_getRegistered() as $profil) { $name = CopixConfig::instance()->copixlog_getProfile($profil); $name = $name['strategy']; if (strtoupper($name) == "FIREBUG") { CopixLog::deleteProfile($profil); } } if (count($jscode) > 0) { $jscode[] = "if(window.console && console.firebug){var _l=function(t,m,l,e){console.group('[COPIX] - '+t+' - '+l);console[t](m);console.dir(e);console.groupEnd();}"; $jscode = array_reverse($jscode); $jscode[] = "}"; CopixHTMLHeader::addJSCode(implode("\n", $jscode)); } }
/** * Acces direct a un module * * Fonction generique d'acces a un module depuis un noeud. * * @author Stephane Holtz <*****@*****.**> */ public function go() { // NOTIFICATIONS : Préparation de l'enregistrement de la visite. Le module_id est à completer avant enregistrement. $lastvisit = _record("kernel|kernel_notifications_lastvisit"); $lastvisit->user_id = $this->user->id; // id Copix $lastvisit->date = date('Y-m-d H:i:s'); $lastvisit->node_type = _request("ntype"); $lastvisit->node_id = _request("nid"); $lastvisit->module_type = _request("mtype"); $lastvisit->module_id = null; $mid = _request("mid", 0); if (!is_null(_request("ntype")) && !is_null(_request("nid")) && !is_null(_request("mtype"))) { CopixSession::set('myNode', array('type' => _request("ntype"), 'id' => _request("nid"))); if (_request("ntype") == 'CLUB' && _request("mtype") == 'comptes' && !_request("mid")) { $loadModule = new CopixActionReturn(COPIX_AR_REDIRECT, CopixUrl::get('groupe||getHomeMembers', array('id' => _request("nid")))); } elseif (_request("ntype") == 'CLUB' && _request("mtype") == 'admin' && !_request("mid")) { $loadModule = new CopixActionReturn(COPIX_AR_REDIRECT, CopixUrl::get('groupe||getHomeAdmin', array('id' => _request("nid")))); } elseif (strpos(_request("ntype"), 'USER_') === false) { // Si on ne connait pas l'ID du module, on tente de le detecter automatiquement if (!$mid) { $modules = Kernel::getModEnabled(_request("ntype"), _request("nid"), '', 0, 0, true); foreach ($modules as $module) { if ($module->module_type == 'MOD_' . strtoupper(_request("mtype"))) { if (isset($module->module_id)) { $mid = $module->module_id; } else { $mid = 0; } break; } } } // die('CopixUrl::get('._request("mtype").'|default|go id='.$mid); $loadModule = new CopixActionReturn(COPIX_AR_REDIRECT, CopixUrl::get(_request("mtype") . '|default|go', array('id' => $mid))); } else { if ($mid) { $loadModule = new CopixActionReturn(COPIX_AR_REDIRECT, CopixUrl::get(_request("mtype") . '|default|go', array('id' => $mid))); } else { $loadModule = new CopixActionReturn(COPIX_AR_REDIRECT, CopixUrl::get(_request("mtype") . '||')); } } // NOTIFICATIONS : Enregistrement de la visite de l'utilisateur (avec suppression de doublons) if ($mid) { $lastvisit->module_id = $mid; } if ($lastvisit->user_id) { _dao('kernel|kernel_notifications_lastvisit')->deleteBy(_daoSp()->addCondition('user_id', '=', $lastvisit->user_id)->addCondition('node_type', '=', $lastvisit->node_type)->addCondition('node_id', '=', $lastvisit->node_id)->addCondition('module_type', '=', $lastvisit->module_type)->addCondition('module_id', '=', $lastvisit->module_id)); _dao("kernel|kernel_notifications_lastvisit")->insert($lastvisit); } // LOGS : Logs d'usage Logs::set(array('type' => 'GO', 'node_type' => _request("ntype"), 'node_id' => _request("nid"), 'module_type' => _request("mtype"), 'module_id' => $mid ? $mid : null)); return $loadModule; } $loadModule = new CopixActionReturn(COPIX_AR_REDIRECT, CopixUrl::get('||')); return $loadModule; }
/** * Supression d'un handleExcept pour le profil en cours de modification */ public function processRemoveHandleExcept() { if ($handleExceptToRemove = _request('handleExcept')) { if ($profile = CopixSession::get('admin|log|edit')) { unset($profile['handleExcept'][array_search($handleExceptToRemove, $profile['handleExcept'])]); CopixSession::set('admin|log|edit', $profile); } } return _arRedirect(_url('log|edit')); }
/** * Alias à CopixSession::set () * @param string $pPath le chemin de l'élément en session que l'on souhaite récupérer * @param mixed $pValue la valeur de l'élément à définir * @param string $pNamespace le nom du namespace de session dans lequel on souhaite récupérer l'élément * @return void */ function _sessionSet($pPath, $pValue, $pNamespace = 'default') { CopixSession::set($pPath, $pValue, $pNamespace); }
/** * Définition du thème à utiliser */ public function processDoSelectTheme() { CopixSession::set('themechooser|theme', CopixRequest::getInArray('id_ctpt', CopixPluginRegistry::getConfig('themechooser|themechooser', true)->getThemeList(), true)); return _arRedirect(_url()); }
/** * Création d'un nouvel utilisateur */ public function processCreate() { CopixSession::set('auth|user', _record('dbuser')); return _arRedirect(_url('auth|users|edit')); }
/** * Validation des modification sur le profil de cache */ public function processValid() { $type = CopixSession::get('admin|cache|edit'); if (_request('enabled')) { $type['enabled'] = true; } $type['strategy'] = _request('strategy'); if (_request('strategy_class', null, true)) { $type['strategy'] = _request('strategy_class'); } if ($dir = _request('dir')) { $type['dir'] = $dir; } $type['duration'] = _request('duration'); if ($link = _request('link')) { $type['link'] .= $type['link'] == "" ? $link : "|" . $link; } CopixSession::set('admin|cache|edit', $type); if (_request('save')) { $types = CopixConfig::instance()->copixcache_getRegisteredProfiles(); $types[$type['name']] = $type; _class('cacheConfigurationFile')->write($types); CopixSession::set('admin|cache|edit', null); return _arRedirect(_url('cache|admin')); } else { return _arRedirect(_url('cache|edit')); } }
public function process($pParams) { if (!isset($pParams['zone'])) { new CopixTemplateTagException('zone'); } $sessionVar = uniqid(); $sessionZone = uniqid(); CopixSession::set($sessionZone, $pParams['zone']); unset($pParams['zone']); CopixSession::set($sessionVar, $pParams); if (!isset($pParams['alt'])) { $pParams['alt'] = ''; } if (!isset($pParams['imgtitle'])) { $pParams['imgtitle'] = ''; } if (!isset($pParams['text'])) { $pParams['text'] = ''; } if (!isset($pParams['displayimg'])) { $pParams['displayimg'] = true; } if (!isset($pParams['img'])) { $pParams['img'] = _resource('img/tools/information.png'); } if (!isset($pParams['divclass'])) { $pParams['divclass'] = 'popupInformation'; } if (!isset($pParams['handler'])) { $pParams['handler'] = 'onmouseover'; } $id = uniqid('popupInformation'); switch ($pParams['handler']) { case 'click': $toReturn = '<a rel="' . $id . '" id="div' . $id . '" href="javascript:void(null);">'; $close = '</a>'; break; default: //prend également en charge onmouseover qui est le handler par défaut. $toReturn = '<div rel="' . $id . '" id="div' . $id . '" class="divpopup" style="display:inline;">'; $close = '</div>'; break; } $toReturn .= $pParams['displayimg'] === true ? '<img src="' . $pParams['img'] . '" title="' . $pParams['imgtitle'] . '" alt="' . $pParams['alt'] . '" />' : ''; $toReturn .= strlen($pParams['text']) ? $pParams['text'] : ''; $toReturn .= isset($pParams['imgnext']) ? '<img src="' . $pParams['imgnext'] . '" />' : ''; $toReturn .= $close; $width = 'auto'; if (isset($pParams['width'])) { $width = $pParams['width']; } $toReturn .= '<div class="' . $pParams['divclass'] . '" id="' . $id . '" style="width:' . $width . ';display:none;" >'; //$toReturn .= $pContent; $toReturn .= '</div>'; $jsCode = "\nvar ajax_zone = {\n getZone : function (pZone,pSession,pDiv) {\n new Ajax('" . _url('generictools|ajax|getZone') . "', {\n method: 'post',\n update: pDiv,\n evalScripts : true,\n data: {'zone':pZone,'sessionvar':pSession}\n }).request();\n }\n};\n"; CopixHTMLHeader::addJSCode($jsCode, 'ajaxpopup'); switch ($pParams['handler']) { case 'click': $jsCode = "\n window.addEvent('domready',function () {\n var el = \$('div{$id}');\n var rel = \$(el.getProperty('rel'));\n var save{$id} = {\n click : false,\n flag : false,\n hide : function () {\n if (!save{$id}.flag) {\n rel.fireEvent('hide');\n }\n }\n };\n el.addEvent ('click', function (e) {\n save{$id}.click = true;\n rel.fireEvent('display');\n });\n el.addEvent('mouseleave', function () {\n if (save{$id}.click) {\n save{$id}.hide.delay(1000);\n }\n });\n rel.addEvent ('mouseleave', function () {\n rel.fireEvent('hide');\n });\n rel.addEvent ('mouseenter', function () {\n save{$id}.flag = true;\n });\n rel.addEvent ('display', function (e) {\n if (rel.getStyle('display') == 'none') {\n if (rel.innerHTML=='') {\n rel.setHTML('<img src=\"" . CopixUrl::getResource('img/tools/load.gif') . "\" />');\n ajax_zone.getZone('{$sessionZone}','{$sessionVar}',rel);\n }\n rel.setStyles({'left':(el.getLeft()+el.getSize().size.x)+'px','zIndex':'10'});\n\n rel.setStyle('display','');\n rel.fixdivShow.delay(200,rel);\n } else {\n rel.fixdivHide();\n rel.setStyle('display','none');\n }\n });\n rel.addEvent ('hide', function () {\n save{$id}.flag = false;\n save{$id}.click = false;\n rel.fixdivHide();\n rel.setStyle('display','none');\n });\n });\n "; break; default: $jsCode = "\n window.addEvent('domready',function () {\n el = \$('div{$id}');\n var rel = \$(el.getProperty('rel'));\n /*\n el.addEvent('trash',function () {\n rel.remove();\n });\n */\n\n rel.injectInside(document.body);\n el.addEvent('mouseenter', function (e) {\n if (rel.innerHTML=='') {\n rel.setHTML('<img src=\"" . CopixUrl::getResource('img/tools/load.gif') . "\" />');\n ajax_zone.getZone('{$sessionZone}','{$sessionVar}',rel)\n }\n var e = new Event(e);\n rel.fixdivShow();\n rel.setStyle('visibility','visible');\n });\n\n el.addEvent('mousemove', function (e) {\n var e = new Event(e);\n rel.setStyles({\n 'position':'absolute',\n 'top' : (e.page.y+5)+'px',\n 'left' : (e.page.x+5)+'px'\n });\n });\n\n el.addEvent('mouseleave', function (e) {\n var e = new Event(e);\n rel.fixdivHide();\n rel.setStyle('visibility','hidden');\n });\n\n\n });\n "; } CopixHTMLHeader::addJSCode($jsCode); _tag('mootools', array('plugin' => array('overlayfix'))); return $toReturn; }
/** * Remplissage d'un flash message * * @author Christophe Beyer <*****@*****.**> * @since 2012/06/21 * @param string $type : warning, success, error * @param string $message Contenu du message */ public function setFlashMessage($type, $message) { CopixSession::set('flash|' . $type, $message); }
/** * Retourne les logs sous forme d'itérateur */ public function getLog($pProfil, $pNbItems = 20) { $page = CopixSession::get('log|numpage') - 1; if (file_exists($this->_getFileName($pProfil))) { // Création d'un objet CopixCSV pour contenir le contenu du fichier $csvLog = new CopixCsv($this->_getFileName($pProfil)); // Récupération de l'itérateur et compte du nombre de ligne $csvLines = $csvLog->getIterator(); $csvNbLines = $csvLines->count(); // Calcul de la position et des offset $pPosition = $csvNbLines - $page * $pNbItems - $pNbItems; // Calcul de la position de départ pour parcourir la portion du fichier à afficher if ($pPosition < 0) { $pOffset = $pNbItems + $pPosition; $pPosition = 0; } else { $pOffset = $pNbItems; $pPosition -= 1; } $csvLines->seek($pPosition); $content = array(); for ($i = 0; $i < $pOffset; $i++) { $content[] = $csvLines->current(); $csvLines->next(); } $content = array_reverse($content); CopixSession::set('log|nbpage', ceil($csvNbLines / $pNbItems)); $arrayObject = new ArrayObject(array_map(array($this, 'toObject'), $content)); return $arrayObject->getIterator(); } return new ArrayObject(); }