/** * Prépare la création d'une aide simple * */ public function processCreate() { // Initialisation d'un simplehelp $aide = _record('simplehelp'); $this->_setSessionSimpleHelp($aide); return _arRedirect(_url('simplehelp|admin|edit')); }
public function processDefault() { _classInclude('sysutils|admin'); if (!Admin::canAdmin()) { return CopixActionGroup::process('genericTools|Messages::getError', array('message' => CopixI18N::get('kernel|kernel.error.noRights'), 'back' => CopixUrl::get())); } echo "Récupération des classeurs de classe sans casier\n"; echo "----------------------------------------------------------------------\n\n"; // Récupération des classeurs de classe sans casier $sql = 'SELECT DISTINCT module_classeur.id' . ' FROM kernel_mod_enabled, module_classeur' . ' LEFT JOIN module_classeur_dossier ON (module_classeur_dossier.module_classeur_id = module_classeur.id)' . ' WHERE module_classeur.id = kernel_mod_enabled.module_id' . ' AND kernel_mod_enabled.module_type = "MOD_CLASSEUR"' . ' AND kernel_mod_enabled.node_type = "BU_CLASSE"' . ' AND (module_classeur_dossier.id IS NULL' . ' OR module_classeur_dossier.id NOT IN (SELECT id FROM module_classeur_dossier WHERE casier = 1 AND module_classeur_id = module_classeur.id))'; $results = _doQuery($sql); $dossierDAO = _ioDAO('classeur|classeurdossier'); _classInclude('classeur|classeurService'); echo count($results) . " casiers à créer.\n"; foreach ($results as $result) { $casier = _record('classeur|classeurdossier'); $casier->classeur_id = $result->id; $casier->parent_id = 0; $casier->nom = CopixI18N::get('classeur|classeur.casierNom'); $casier->nb_dossiers = 0; $casier->nb_fichiers = 0; $casier->taille = 0; $casier->cle = classeurService::createKey(); $casier->casier = 1; $casier->date_creation = date('Y-m-d H:i:s'); $dossierDAO->insert($casier); echo "Casier du classeur {$result->id} créé avec succès !\n"; } echo "\n\nFin de la tâche"; return _arNone(); }
/** * Sauvegarde les logs dans le fichier * * @param String $pMessage log à sauvegarder * @param String $tab tableau d'option */ public function log($pProfil, $pType, $pLevel, $pDate, $pMessage, $pArExtra) { $dao = _ioDAO('copixlog'); $newLogs = _record('copixlog'); $newLogs->type = $pType; $newLogs->date = $pDate; $newLogs->profile = $pProfil; $newLogs->level = $pLevel; $newLogs->message = $pMessage; if (isset($pArExtra['classname'])) { $newLogs->classname = $pArExtra['classname']; } if (isset($pArExtra['line'])) { $newLogs->line = $pArExtra['line']; } if (isset($pArExtra['file'])) { $newLogs->file = $pArExtra['file']; } if (isset($pArExtra['functionname'])) { $newLogs->functionname = $pArExtra['functionname']; } if (isset($pArExtra['user'])) { $newLogs->user = $pArExtra['user']; } $dao->insert($newLogs); }
public function _createContent(&$toReturn) { $tpl = new CopixTpl(); $blog = $this->getParam('blog', ''); $cat = $this->getParam('cat', null); $critere = $this->getParam('critere', null); //on récupère l'ensemble des articles du blog $dao = _dao('blog|blogarticle'); if ($cat == null) { $date = $this->getParam('date', null); $arData = $dao->getAllArticlesFromBlog($blog->id_blog, $date); } else { $arData = $dao->getAllArticlesFromBlogByCat($blog->id_blog, $cat->id_bacg); $tpl->assign('cat', $cat); } //on filtre si on a fait une recherche sur les articles if ($critere != null) { $arData = $dao->getAllArticlesFromBlogByCritere($blog->id_blog, $critere); } //var_dump($arData); //on construit un tableau associatif entre l'identifiant de l'article et le nombre de commentaires foreach ($arData as $article) { //var_dump($article); $daoArticleComment =& CopixDAOFactory::getInstanceOf('blog|blogarticlecomment'); $record = _record('blog|blogarticlecomment'); $criteres = _daoSp(); $criteres->addCondition('id_bact', '=', $article->id_bact); $criteres->addCondition('is_online', '=', 1); $resultat = $daoArticleComment->findBy($criteres); $arNbCommentByArticle[$article->id_bact] = count($resultat); } if (count($arData) > 0) { //encodage des URL des catégories pour caractères spéciaux foreach ($arData as $key => $data) { //Modification suite à apparition d'un warning due à l'absence de catégories , vboniface 06.11.2006 $arData[$key]->key = $key; if (isset($arData[$key]->categories)) { foreach ($arData[$key]->categories as $keyCat => $categorie) { $arData[$key]->categories[$keyCat]->url_bacg = urlencode($categorie->url_bacg); } } } if (count($arData) <= intval(CopixConfig::get('blog|nbMaxArticles'))) { $tpl->assign('pager', ""); $tpl->assign('listArticle', $arData); $tpl->assign('arNbCommentByArticle', $arNbCommentByArticle); } else { $params = array('perPage' => intval(CopixConfig::get('blog|nbMaxArticles')), 'delta' => 5, 'recordSet' => $arData, 'template' => '|pager.tpl'); $Pager = CopixPager::Load($params); $tpl->assign('pager', $Pager->GetMultipage()); $tpl->assign('listArticle', $Pager->data); $tpl->assign('arNbCommentByArticle', $arNbCommentByArticle); } //rajout suite à bug mantis 54 vboniface 06.11.2006 $tpl->assign('blog', $blog); } // retour de la fonction : $toReturn = $tpl->fetch('listarticle.tpl'); return true; }
/** * Création d'un module de contacts * * @author Christophe Beyer <*****@*****.**> * @since 2010/08/25 * @param array $infos (option) Infos sur le module. [title], [subtitle], [node_type], [node_id] * @return integer l'Id du module cree ou NULL si erreur */ public function create($infos = array()) { $record = _record('contact|contacts'); $newForum->titre = isset($infos['title']) && $infos['title'] ? $infos['title'] : ''; $newForum->date_creation = date("Y-m-d H:i:s"); _dao('contact|contacts')->insert($record); return $record->id !== NULL ? $record->id : NULL; }
/** * Validation des éléments en base de données */ public function doValid() { try { $record = _record('copixtestautodao'); } catch (Exception $e) { return CopixActionGroup::process(); } }
/** * Création d'une malle * * @author Christophe Beyer <*****@*****.**> * @since 2005/12/06 * @param array $infos (option) informations permettant d'initialiser la malle. Index: title, node_type, node_id * @return integer l'Id de la malle créée ou NULL si erreur */ public function create($infos = array()) { $return = NULL; $dao = _dao("module_visioscopia"); $new = _record("module_visioscopia"); $new->date_creation = date("Y-m-d H:i:s"); $dao->insert($new); return $new->id; }
/** * Creation du module * * @author Christophe Beyer <*****@*****.**> * @since 2009/01/23 * @param array $infos (option) Infos sur le module. [title], [subtitle], [node_type], [node_id] * @return integer Id cree ou NULL si erreur */ public function create($infos = array()) { $dao = _dao("teleprocedures|teleprocedure"); $new = _record("teleprocedures|teleprocedure"); $new->titre = isset($infos['title']) && $infos['title'] ? $infos['title'] : ''; $new->date_creation = date("Y-m-d H:i:s"); $dao->insert($new); return $new->id !== NULL ? $new->id : NULL; }
/** * Création d'un forum * * @author Christophe Beyer <*****@*****.**> * @since 2005/11/08 * @param array $infos (option) Infos sur le module. [title], [subtitle], [node_type], [node_id] * @return integer l'Id du forum créé ou NULL si erreur */ public function create($infos = array()) { $daoForum = _dao("forum|forum_forums"); $newForum = _record("forum|forum_forums"); $newForum->titre = isset($infos['title']) && $infos['title'] ? $infos['title'] : ''; $newForum->date_creation = date("Y-m-d H:i:s"); $daoForum->insert($newForum); return $newForum->id !== NULL ? $newForum->id : NULL; }
/** * @param * updateBlogFunctions * @return */ public function updateBlogFunctions($id_blog, $tabBlogFunctions) { $blogFunctions = _record('blogfunctions'); foreach ($tabBlogFunctions as $fct) { eval('$blogFunctions->' . $fct->value . '=' . $fct->selected . ';'); } $blogFunctions->id_blog = $id_blog; $this->update($blogFunctions); }
public function create() { $dao = _dao("magicmail|magicmail"); $new = _record("magicmail|magicmail"); $new->magicmail_login = ''; $new->magicmail_domain = ''; $dao->insert($new); return $new->magicmail_id; }
public function create() { $return = null; $dao = _dao("cahierdetextes|cahierdetextes"); $new = _record("cahierdetextes|cahierdetextes"); $dao->insert($new); if ($new->id !== null) { $return = $new->id; } return $return; }
/** * Envoie un minimail * * @author Christophe Beyer <*****@*****.**> * @since 2005/10/18 * @param string title Titre du minimail * @param string message Corps du minimail * @param integer from_id Id utilisateur de l'exp�diteur * @param array destin Id tableau avec les destinataires (cl� = id user) * @return mixed Id du message cr�� ou NULL si erreur */ public function sendMinimail($title, $message, $from_id, $destin, $format) { $res = NULL; $DAOminimail_from = _dao("minimail|minimail_from"); $DAOminimail_to = _dao("minimail|minimail_to"); $newMp = _record("minimail|minimail_from"); $newMp->title = $title; $newMp->message = $message; $newMp->format = $format; $newMp->date_send = date("Y-m-d H:i:s"); $newMp->from_id = $from_id; $newMp->is_deleted = 0; $DAOminimail_from->insert($newMp); if ($newMp->id !== NULL) { //print_r($newMp); // On parcourt chaque destinataire while (list($to_id, ) = each($destin)) { // print_r("to_id=$to_id / to_login=$to_login"); $newDest = _record("minimail|minimail_to"); $newDest->id_message = $newMp->id; $newDest->to_id = $to_id; $newDest->date_read = 0; $newDest->is_read = 0; $newDest->is_replied = 0; $newDest->is_deleted = 0; $DAOminimail_to->insert($newDest); // ======= Alerte mail =============== // On vérifie que l'envoi de mails est activé, qu'un serveur SMTP est configuré, que le destinataire a coché l'option "etre prêvenu par mail" et qu'il a renseigné un mail if ($newDest->id2 && CopixConfig::get('|mailEnabled') == 1 && CopixConfig::get('|mailSmtpHost')) { $prefs = Prefs::getPrefs($to_id); if (isset($prefs['prefs']['alerte_mail_email']) && isset($prefs['minimail']['alerte_minimail']) && $prefs['prefs']['alerte_mail_email'] && $prefs['minimail']['alerte_minimail'] == 1) { $userInfoFrom = Kernel::getUserInfo("ID", $from_id); //print_r($userInfoFrom); $to = $prefs['prefs']['alerte_mail_email']; $auteur = utf8_decode($userInfoFrom['prenom'] . ' ' . $userInfoFrom['nom'] . ' (' . $userInfoFrom['login'] . ')'); $subject = CopixI18N::get('minimail|minimail.mail.alert.subject', array($auteur)); $message = str_replace('<br />', "\n", CopixI18N::get('minimail|minimail.mail.alert.body', array($auteur, CopixUrl::get('minimail||getMessage', array('id' => $newMp->id)), CopixUrl::get()))); $from = CopixConfig::get('default|mailFrom'); $fromName = CopixConfig::get('default|mailFromName'); $cc = $cci = ''; $monMail = new CopixTextEMail($to, $cc, $cci, $subject, $message); $send = $monMail->send($from, $fromName); } } // ======= Fin alerte mail =============== } $res = $newMp->id; if ($res) { $plugStats = CopixPluginRegistry::get("stats|stats"); $plugStats->setParams(array('module' => 'minimail', 'action' => 'sendMinimail', 'objet_a' => $res)); } } return $res; }
public function create() { $return = NULL; $dao = _dao("sso|sso"); $new = _record("sso|sso"); $new->sso_date_crea = date("Y-m-d H:i:s"); $dao->insert($new); if ($new->sso_id !== NULL) { $return = $new->sso_id; } return $return; }
public function _createContent(&$toReturn) { $tpl = new CopixTpl(); $blog = $this->getParam('blog', ''); $comment = $this->getParam('comment', NULL); //on récupère l'ensemble des articles du blog $dao = _dao('blog|blogarticle'); //$article = $dao->getArticleByUrl($blog->id_blog, $this->getParam('article', '')); list($id_bact, ) = explode("-", $this->getParam('article', '')); $article = $dao->getArticleById($blog->id_blog, $id_bact); if (!$article) { $toReturn = '{/}' . $tpl->fetch('showarticle.tpl'); return true; } //encodage des URL des catégories pour caractères spéciaux if (is_array($article->categories)) { foreach ($article->categories as $key => $categorie) { $article->categories[$key]->url_bacg = urlencode($categorie->url_bacg); } } $tpl->assign('article', $article); // Recherche de tous les commentaires associés à cet article $commentDAO = _dao('blog|blogarticlecomment'); $res = $commentDAO->findCommentOrderBy($article->id_bact, 1); $listComment = array(); foreach ($res as $r) { $r->time_bacc = BDToTime($r->time_bacc); array_push($listComment, $r); } if ($comment) { $toEdit = $comment; } else { // On récupère l'utilisateur connecté $user = BlogAuth::getUserInfos(); $toEdit = _record('blogarticlecomment'); $toEdit->authorid_bacc = $user->userId; $toEdit->authorname_bacc = $user->name; $toEdit->authoremail_bacc = $user->email; $toEdit->authorweb_bacc = $user->web; } $tpl->assign('blog', $blog); $tpl->assign('toEdit', $toEdit); $tpl->assign('listComment', $listComment); $tpl->assign('errors', $this->getParam('errors', null)); $tpl->assign('showErrors', $this->getParam('showErrors', false)); $tpl->assign('canComment', BlogAuth::canComment($blog->id_blog)); $plugStats = CopixPluginRegistry::get("stats|stats"); $plugStats->setParams(array('objet_a' => $article->id_bact)); // retour de la fonction : $toReturn = $article->name_bact . '{/}' . $tpl->fetch('showarticle.tpl'); return true; }
/** * Création d'un agenda * * @author Christophe Beyer <*****@*****.**> * @since 2006/08/24 * @param array $infos (option) informations permettant d'initialiser le blog. Index: title, node_type, node_id * @return integer l'Id de l'agenda créé ou NULL si erreur */ public function create($infos = array()) { $daoAgenda =& CopixDAOFactory::getInstanceOf('agenda|agenda'); $res = null; $agenda = _record('agenda|agenda'); if ($infos['title']) { $agenda->title_agenda = $infos['title']; } else { //$agenda->title_agenda = CopixI18N::get ('agenda|agenda.default.title'); $agenda->title_agenda = "Agenda"; } $agenda->desc_agenda = $agenda->title_agenda; $agenda->type_agenda = AgendaType::getAgendaTypeForNode($infos['node_type'], $infos['node_id']); $daoAgenda->insert($agenda); return $agenda->id_agenda !== NULL ? $agenda->id_agenda : NULL; }
/** * Ajoute un message à une liste, et s'occupe de l'envoyer à tous ses membres en minimail * * @author Christophe Beyer <*****@*****.**> * @since 2005/11/23 * @param integer $liste Id de la liste * @param integer $auteur Id de l'utilisateur auteur du message * @param string $titre Titre du message * @param string $message Corps du message * @return integer l'Id du message inséré ou NULL si erreur */ public function addListeMessage($liste, $auteur, $titre, $message) { $daoListes = _dao("liste|liste_listes"); $daoMessages = _dao("liste|liste_messages"); $kernelService =& CopixClassesFactory::Create('kernel|kernel'); $minimailService =& CopixClassesFactory::Create('minimail|minimailService'); $res = NULL; $rListe = $daoListes->get($liste); if ($rListe) { $parent = $kernelService->getModParentInfo("MOD_LISTE", $liste); //print_r($parent); $rListe->parent = $parent; //die(); $newMessage = _record("liste|liste_messages"); $newMessage->liste = $liste; $newMessage->auteur = $auteur; $newMessage->titre = $titre; $newMessage->message = $message; $newMessage->date = date("Y-m-d H:i:s"); $daoMessages->insert($newMessage); if ($newMessage->id !== NULL) { $dest = array(); // On cherche le parent $parent = $kernelService->getModParentInfo("MOD_LISTE", $liste); // Puis les membres du parent $childs = $kernelService->getNodeChilds($parent["type"], $parent["id"]); // On parcourt les membres foreach ($childs as $child) { $userInfo = $kernelService->getUserInfo($child["type"], $child["id"]); if ($userInfo && $userInfo["user_id"] && $userInfo["user_id"] != $auteur) { $dest[$userInfo["user_id"]] = 1; } } if ($dest) { $format = CopixConfig::get('minimail|default_format'); if ($format == 'dokuwiki' || $format == 'wiki') { $message .= "\n\n----\n" . CopixI18N::get('liste|liste.message.footer', array(1 => $rListe->parent["nom"], 2 => CopixUrl::get($rListe->parent["module"] . '||getHomeAdmin', array("id" => $rListe->parent["id"])))); } else { $message .= "<p>-- </p><p>" . CopixI18N::get('liste|liste.message.footerHtml', array(1 => $rListe->parent["nom"], 2 => CopixUrl::get($rListe->parent["module"] . '||getHomeAdmin', array("id" => $rListe->parent["id"])))) . "</p>"; } $send = $minimailService->sendMinimail($titre, $message, $auteur, $dest, CopixConfig::get('minimail|default_format')); } $res = $newMessage->id; } } return $res; }
/** * Crée un groupe * * Crée le groupe, donne les droits de propriétaire à son créateur, et initialise les premiers modules. * * @author Christophe Beyer <*****@*****.**> * @since 2005/11/08 * @param string $titre Titre * @param string $description Description * @param integer $is_open 1 si le groupe est public, 0 s'il est privé * @param integer $createur Id utilisateur du créateur * @param array $tab_membres Tableau avec les membres à inscrire de suite (clé = id user) * @param array $his_modules Tableau avec les modules à installer et à relier à ce club * @param string $parentClass Type du parent (BU_ECOLE...) * @param integer $parentRef Référence du parent * @return integer l'Id du groupe créé ou NULL si erreur */ public function createGroupe($titre, $description, $is_open, $createur, $tab_membres, $his_modules, $parentClass, $parentRef) { $res = NULL; if (1) { $daoGroupe = _dao("groupe"); $newGroupe = _record("groupe"); $newGroupe->titre = $titre; $newGroupe->description = $description; $newGroupe->is_open = $is_open; $newGroupe->date_creation = date("Y-m-d H:i:s"); $newGroupe->createur = $createur; $daoGroupe->insert($newGroupe); if ($newGroupe->id !== NULL) { //print_r($his_modules); $kernelClasse = CopixClassesFactory::create("kernel|Kernel"); // On ajoute les modules while (list($moduleType, ) = each($his_modules)) { list(, $module) = explode("_", strtolower($moduleType)); //print_r($module); $classeNew = CopixClassesFactory::create("{$module}|Kernel{$module}"); $new = $classeNew->create(array('title' => $titre, 'node_type' => 'CLUB', 'node_id' => $newGroupe->id)); //print_r("new=$new"); if ($new) { // Module bien crée, on le rattache $register = $kernelClasse->registerModule($moduleType, $new, "CLUB", $newGroupe->id); } } // On insère le créateur $userInfo = $kernelClasse->getUserInfo("ID", $createur); $kernelClasse->setLevel("CLUB", $newGroupe->id, $userInfo["type"], $userInfo["id"], PROFILE_CCV_ADMIN); // On insère les éventuels membres while (list($userId, ) = each($tab_membres)) { $userInfo = $kernelClasse->getUserInfo("ID", $userId); $kernelClasse->setLevel("CLUB", $newGroupe->id, $userInfo["type"], $userInfo["id"], PROFILE_CCV_MEMBER); } // On rattache le groupe à son parent $kernelClasse->setClubParent($newGroupe->id, $parentClass, $parentRef); $res = $newGroupe->id; //die(); } } return $res; }
/** * Ajout d'un commentaire dans la base après vérification des droits d'écriture * et que l'on a bien la bonne session */ public function processAddComment() { //Vérifie que l'on a bien un paramètre id CopixRequest::assert('id'); if (($informations = _ioClass('commentsservices')->getEnabled(_request('id'))) === false) { throw new Exception(_i18n('comments.error.badidsession')); } //_log ('FROMPAGE: '.$informations['fromPage']); //_log ('POUR ID: '._request ('id')); //vérifie les droits d'écriture if ($informations['writeCredential'] != "") { CopixAuth::getCurrentUser()->assertCredential($informations['writeCredential']); } //Ajout du commentaire $objComment = _record('comments'); $objComment->content_comment = _request('content'); $objComment->format_comment = 'TEXT'; //aujourd'hui on ne supporte que le format text pour les commentaires $objComment->authorlogin_comment = _request('author'); $objComment->authoremail_comment = _request('mail'); $objComment->authorsite_comment = _request('site'); $objComment->page_comment = $informations['id']; $objComment->date_comment = date('YmdHis'); if (CopixConfig::get('comments|captcha') != 0) { $objComment->captcha_id = _request('captcha_id'); $objComment->captcha_answer = _request('captcha_answer'); } try { if (_request('preview') === null) { _ioDAO('comments')->insert($objComment); _ioClass('commentsservices')->removeEnabled($informations['id']); _notify('Content', array('id' => $informations['id'], 'kind' => 'comment', 'keywords' => null, 'title' => $informations['id'], 'summary' => null, 'content' => $objComment->content_comment, 'url' => $informations['fromPage'])); return _arRedirect($informations['fromPage']); } else { _ioClass('commentsservices')->updateEnabled($objComment); return _arRedirect(_url($informations['fromPage'], array('preview' => 1, 'comments' => 'list'))); } } catch (CopixDAOCheckException $e) { _ioClass('commentsservices')->updateEnabled($objComment); return _arRedirect(_url($informations['fromPage'], array('errors' => 1, 'comments' => 'list'))); } }
/** * Enregistre les droits séléctionné */ public function processRecord() { CopixRequest::assert('id_group', 'handler_group'); $bool = _request('bool', array()); foreach (_request('value', array()) as $value) { $arValue = explode('|', $value); $result = _dao('dynamiccredentialsgroups')->findBy(_daoSP()->addCondition('id_dc', '=', $arValue[0])->addCondition('id_dcv', '=', isset($arValue[1]) ? $arValue[1] : null)->addCondition('id_group', '=', _request('id_group'))->addCondition('handler_group', '=', _request('handler_group'))); if (!isset($bool[$value]) && isset($result[0])) { _dao('dynamiccredentialsgroups')->delete($result[0]->id_dcg); } elseif (isset($bool[$value]) && !isset($result[0])) { $record = _record('dynamiccredentialsgroups'); $record->id_group = _request('id_group'); $record->handler_group = _request('handler_group'); $record->id_dc = $arValue[0]; $record->id_dcv = isset($arValue[1]) ? $arValue[1] : null; _dao('dynamiccredentialsgroups')->insert($record); } } return _arRedirect(_url('auth|dynamic|list', array('id_group' => _request('id_group'), 'handler_group' => _request('handler_group'), 'url_return' => _request('url_return')))); }
public function set($data = null) { $dao = _dao("logs|logs"); $nouveau = _record("logs|logs"); $types = array('ERROR', 'DEBUG', 'INFO', 'ALERT', 'LOG', 'AUTO', 'GO'); if (isset($data['type']) && in_array($data['type'], $types)) { $nouveau->logs_type = $data['type']; } else { $nouveau->logs_type = 'UNKNOWN'; } if (isset($data['message'])) { $nouveau->logs_message = $data['message']; } $module = CopixRequest::get('module', 'kernel'); $action = CopixRequest::get('action', 'default'); $nouveau->logs_mod_name = $module; $nouveau->logs_mod_action = $action; $user = Kernel::getSessionBU(); if (sizeof($user) && isset($user['id'])) { $nouveau->logs_user_id = $user['id']; $nouveau->logs_user_login = $user['login']; } // Node $nouveau->logs_date = date("Y-m-j H:i:s", time()); $nouveau->logs_user_ip = $_SERVER['REMOTE_ADDR']; $nouveau->logs_url = $_SERVER['QUERY_STRING']; // Kernel::MyDebug( $nouveau ); if (isset($data['node_type'])) { $nouveau->logs_node_type = $data['node_type']; } if (isset($data['node_id'])) { $nouveau->logs_node_id = $data['node_id']; } if (isset($data['module_type'])) { $nouveau->logs_module_type = $data['module_type']; } if (isset($data['module_id'])) { $nouveau->logs_module_id = $data['module_id']; } $dao->insert($nouveau); }
public function setUp() { $copixConfig = CopixConfig::instance(); $this->_userHandlers = $copixConfig->copixauth_getRegisteredUserHandlers(); $copixConfig->copixauth_clearUserHandlers(); $copixConfig->copixauth_registerUserHandler(array('name' => 'auth|dbuserhandler', 'priority' => 10, 'required' => false)); $this->_groupHandlers = $copixConfig->copixauth_getRegisteredGroupHandlers(); $copixConfig->copixauth_clearGroupHandlers(); $this->_credentialHandlers = $copixConfig->copixauth_getRegisteredCredentialHandlers(); $copixConfig->copixauth_clearCredentialHandlers(); $sp = _daoSP(); $sp->addCondition('login_dbuser', '=', 'CopixTest'); _dao('dbuser')->deleteBy($sp); $record = _record('dbuser'); $record->login_dbuser = '******'; $record->password_dbuser = md5('CopixTestPassword'); $record->enabled_dbuser = 1; $record->email_dbuser = '******'; _dao('dbuser')->insert($record); $this->_userId = $record->id_dbuser; }
/** * Affiche la liste des groupes de l'utilisateur courant * * @author Christophe Beyer <*****@*****.**> * @since 2006/03/23 * @param string $kw Mot-clé pour la recherche (option) */ public function _createContent(&$toReturn) { $toReturn = ''; $tpl = new CopixTpl(); if (CopixConfig::exists('|conf_ModConcerto') && CopixConfig::get('|conf_ModConcerto') && _currentUser()->getExtra('type') == 'USER_RES') { $new_module = null; $sql = 'SELECT id,login,password FROM kernel_bu_auth WHERE node_type=\'responsable\' AND node_id=' . _currentUser()->getExtra('id') . ' AND service=\'concerto\''; $concerto = _doQuery($sql); if ($concerto) { $new_module = _record("kernel|kernel_mod_enabled"); $new_module->node_type = _currentUser()->getExtra('type'); $new_module->node_id = _currentUser()->getExtra('id'); $new_module->module_type = "MOD_CONCERTO"; $new_module->module_id = 0; $modules[] = $new_module; $tpl->assign('concerto', $new_module); $tpl->assign('concerto_data', $concerto); $toReturn = $tpl->fetch('concerto|concerto-home.tpl'); } } return true; }
public function registerCredential($pName, $pValues = array()) { $result = _dao('dynamiccredentials')->findBy(_daoSP()->addCondition('name_dc', '=', $pName)); if (!isset($result[0])) { $record = _record('dynamiccredentials'); $record->name_dc = $pName; _dao('dynamiccredentials')->insert($record); } else { $record = $result[0]; } foreach ($pValues as $key => $value) { $resultValue = _dao('dynamiccredentialsvalues')->findBy(_daoSP()->addCondition('value_dcv', '=', $key)->addCondition('id_dc', '=', $record->id_dc)); if (!isset($resultValue[0])) { $recordValue = _record('dynamiccredentialsvalues'); $recordValue->id_dc = $record->id_dc; $recordValue->value_dcv = $key; $recordValue->level_dcv = $value; _dao('dynamiccredentialsvalues')->insert($recordValue); } else { } } }
/** * Cr�ation d'une malle * * @author Christophe Beyer <*****@*****.**> * @since 2005/12/06 * @param array $infos (option) informations permettant d'initialiser la malle. Index: title, node_type, node_id * @return integer l'Id de la malle cr��e ou NULL si erreur */ public function create($infos = array()) { $return = NULL; $dao = _dao("malle|malle_malles"); $new = _record("malle|malle_malles"); $new->titre = $infos['title'] ? $infos['title'] : CopixI18N::get('malle|malle.moduleDescription'); $new->date_creation = date("Y-m-d H:i:s"); $new->cle = MalleService::createKey(); $dao->insert($new); if ($new->id !== NULL) { $path2data = realpath('./static/malle'); $folder = $path2data . '/' . $new->id . '_' . $new->cle; if ($mkdir = @mkdir($folder, 0777)) { chmod($folder, 0777); $return = $new->id; } if (!$return) { MalleService::deleteDir($folder); $dao->delete($new->id); } } return $return; }
/** * Ajout d'une info supplementaire dans une intervention. Le message est ajoute avec l'utilisateur courante, a la date du moment * * @author Christophe Beyer <*****@*****.**> * @since 2009/03/04 * @param string $info_message Champ message * @param string $info_message Champ commentaire * @return integer Id de l'info ajoutee */ public function insertInfoSupp($info_message, $info_commentaire) { $daoInfoSupp = _dao("teleprocedures|infosupp"); $daoIntervention = _dao("teleprocedures|intervention"); $rForm = _record('teleprocedures|infosupp'); //var_dump($this); $session = Kernel::getSessionBU(); $rForm->idinter = $this->idinter; $rForm->iduser = $session['user_id']; $rForm->dateinfo = date('Y-m-d H:i:s'); if ($info_message && trim($info_message) != '<br />') { $rForm->info_message = $info_message; } if ($info_commentaire && trim($info_commentaire) != '<br />') { $rForm->info_commentaire = $info_commentaire; } $daoInfoSupp->insert($rForm); if ($rForm->idinfo > 0 && $rForm->info_message) { // MAJ uniquement si echange $this->datederniere = $rForm->dateinfo; $daoIntervention->update($this); } return $rForm->idinfo; }
public function set($module, $code, $value, $user = -1) { $dao = _dao('prefs|prefs'); if ($user == -1) { $bu = Kernel::getSessionBU(); if (isset($bu['user_id'])) { $user = $bu['user_id']; } } if ($pref = $dao->get($user, $module, $code)) { $dao->delete($user, $module, $code); } $pref = _record('prefs|prefs'); $pref->prefs_user = $user; $pref->prefs_module = $module; $pref->prefs_code = $code; $pref->prefs_value = $value; $dao->insert($pref); }
public function getGroup() { if (!Kernel::isAdmin()) { return new CopixActionReturn(COPIX_AR_REDIRECT, CopixUrl::get('||')); } $tpl = new CopixTpl(); $tplGrVilles = new CopixTpl(); CopixHTMLHeader::addCSSLink(_resource("styles/module_regroupements.css")); $regroupements_service =& CopixClassesFactory::Create('regroupements|regroupements'); $tpl->assign('TITLE_PAGE', CopixI18N::get('regroupements|regroupements.villes.titre')); $tpl->assign('MENU', $regroupements_service->getMenu()); $dao_grvilles_gr2ville = CopixDAOFactory::create("regroupements|grvilles_gr2ville"); $dao_grvilles = CopixDAOFactory::create("regroupements|grvilles"); $dao_villes = CopixDAOFactory::create("kernel|kernel_tree_vil"); $villes = $dao_villes->findAll(); $tplGrVilles->assign('villes', $villes); if (_request("delete")) { $dao_grvilles->delete(_request("delete")); $dao_grvilles_gr2ville->deleteByGroupe(_request("delete")); return new CopixActionReturn(COPIX_AR_REDIRECT, CopixUrl::get('regroupements|villes|')); } if (_request("save") && _request("save") == 1) { $date = date("Y-m-d H:i:s"); $user = Kernel::getUserInfo(); if (_request("form_id") > 0) { $grvilles_infos = $dao_grvilles->get(_request("form_id")); $grvilles_infos->nom = _request("form_nom"); $grvilles_infos->updated_at = $date; $grvilles_infos->updated_by = $user['login']; $dao_grvilles->update($grvilles_infos); $dao_grvilles_gr2ville->deleteByGroupe(_request("form_id")); } else { $grvilles_infos = CopixDAOFactory::createRecord("regroupements|grvilles"); $grvilles_infos->nom = _request("form_nom"); if ($grvilles_infos->nom == '') { $grvilles_infos->nom = 'Sans nom'; } $grvilles_infos->updated_at = date("Y-m-d H:i:s"); $grvilles_infos->updated_by = $user['login']; $dao_grvilles->insert($grvilles_infos); } $grvilles_gr2ville = _record("regroupements|grvilles_gr2ville"); $grvilles_gr2ville->id_groupe = $grvilles_infos->id; $grvilles_gr2ville->updated_at = $date; $grvilles_gr2ville->updated_by = $user['login']; foreach ($villes as $ville) { if (_request("ville_" . $ville->vil_id_vi) == 1) { $grvilles_gr2ville->id_ville = $ville->vil_id_vi; _dao("regroupements|grvilles_gr2ville")->insert($grvilles_gr2ville); } } if (_request("form_id") == 0) { return new CopixActionReturn(COPIX_AR_REDIRECT, CopixUrl::get('regroupements|villes|', array('groupe' => $grvilles_infos->id))); } } if (_request("groupe")) { $tplGrVilles->assign('grvilles_id', _request("groupe")); $tplGrVilles->assign('grvilles_form', true); if (_request("groupe") > 0) { // Edition d'un groupe $grvilles_infos = $dao_grvilles->get(_request("groupe")); $grvilles_villes_raw = $dao_grvilles_gr2ville->findByGroupe(_request("groupe")); // Tableau indexé par id de ville $grvilles_villes = array(); foreach ($grvilles_villes_raw as $grvilles_villes_item) { $grvilles_villes[$grvilles_villes_item->id_ville] = $grvilles_villes_item; } $tplGrVilles->assign('grvilles_infos', $grvilles_infos); $tplGrVilles->assign('grvilles_villes', $grvilles_villes); } else { // Création d'un nouveau groupe } } $grvilles_list = $dao_grvilles->findAll(); // print_r($grvilles_list); $tplGrVilles->assign('grvilles_list', $grvilles_list); $main = $tplGrVilles->fetch('getgrvilles.tpl'); $tpl->assign('MAIN', $main); return new CopixActionReturn(COPIX_AR_DISPLAY, $tpl); }
/** * Saves the value for id, will compile if different from the actual value. * @param string $id l'identifiant de l'élément * @param string $value la valeur du paramètre de configuration * @return void */ public function set($id, $value) { //if the config var exists only.... if (array_key_exists($id, $this->_values)) { //Update the value in the file. $this->_configVars[$id]['Value'] = $value; $this->_values[$id] = $value; //Saves changes in the database if ($this->_checkDBConnection()) { $dao = _ioDAO('copix:CopixConfig'); $toInsert = _record('copix:CopixConfig'); $toInsert->id_ccfg = $id; $toInsert->module_ccfg = $this->module; $toInsert->value_ccfg = $value; if ($dao->get($toInsert->id_ccfg) === false) { $dao->insert($toInsert); //did not exists before } else { $dao->update($toInsert); //updates the DB values } } //Saves changes in the PHP File $this->_writeInPHPCache(); } else { throw new CopixException(_i18n('copix.error.module.unknowParameter', array($id, $this->module))); } }
public static function getModNotifications(&$module) { if (!_currentUser()->getExtra("user_id")) { return $module; } // echo('-'); $module_name = preg_replace('/^MOD_/', '', $module->module_type); $lastvisit = _dao('kernel|kernel_notifications_lastvisit')->findBy(_daoSp()->addCondition('user_id', '=', _currentUser()->getExtra("user_id"))->addCondition('node_type', '=', $module->node_type)->addCondition('node_id', '=', $module->node_id)->addCondition('module_type', '=', $module_name)->addCondition('module_id', '=', $module->module_id)); if (count($lastvisit)) { // Déjà une visite -> On vérifie le cache // echo "XXX"; if ($lastvisit[0]->last_check && $lastvisit[0]->last_check >= date('YmdHis', strtotime("-10 sec"))) { // Si le cache est encore valide -> On retourne les infos du cache // echo "cached($module_name/$module->module_id) "; $module->notification_number = $lastvisit[0]->last_number; $module->notification_message = $lastvisit[0]->last_message; } else { // S'il n'y a pas de cache ou qu'il est invalide -> On demande les infos au module // echo "not-cached($module_name/$module->module_id) "; $arModulesPath = CopixConfig::instance()->arModulesPath; foreach ($arModulesPath as $modulePath) { $class_file = $modulePath . strtolower($module_name) . '/' . COPIX_CLASSES_DIR . 'kernel' . strtolower($module_name) . '.class.php'; if (!file_exists($class_file)) { continue; } $module_class =& CopixClassesFactory::Create($module_name . '|Kernel' . $module_name); if (is_callable(array($module_class, 'getNotifications'))) { $module_class->getNotifications($module, $lastvisit[0]); $lastvisit[0]->last_check = date('Y-m-d H:i:s'); $lastvisit[0]->last_number = $module->notification_number; $lastvisit[0]->last_message = $module->notification_message; _dao('kernel|kernel_notifications_lastvisit')->update($lastvisit[0]); /* echo "<pre>"; print_r($module); print_r($lastvisit[0]); die(); */ } } } } else { // Pas encore de visite -> Pas de notif pour l'instant // echo "NOT_visited "; $module->notification_number = 0; $module->notification_message = ''; // Initialisation, même sans entrer dans le module $lastvisit = _record("kernel|kernel_notifications_lastvisit"); $lastvisit->user_id = _currentUser()->getExtra("user_id"); // id Copix $lastvisit->date = date('Y-m-d H:i:s'); $lastvisit->node_type = $module->node_type; $lastvisit->node_id = $module->node_id; $lastvisit->module_type = $module_name; $lastvisit->module_id = $module->module_id; _dao("kernel|kernel_notifications_lastvisit")->insert($lastvisit); } // [module_nom] => Agenda // echo "<pre>"; print_r($module); die(); return $module; }