Overview
Comment: | Forcer le select de l'ID et de l'email pour l'envoi de message |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | dev |
Files: | files | file ages | folders |
SHA1: |
6a673f4813908902058cf6fc5720ee32 |
User & Date: | bohwaz on 2018-10-05 17:17:16 |
Other Links: | branch diff | manifest | tags |
Context
2018-10-05
| ||
17:26 | Décommenter envoi de mail (faute de commit) check-in: e3fc01b49c user: bohwaz tags: dev | |
17:17 | Forcer le select de l'ID et de l'email pour l'envoi de message check-in: 6a673f4813 user: bohwaz tags: dev | |
2018-10-03
| ||
14:14 | Ajout mention check-in: 0d9473fc18 user: bohwaz tags: dev | |
Changes
Modified src/include/lib/Garradin/Membres.php from [e8bc40a4a8] to [4171e6afde].
︙ | ︙ | |||
310 311 312 313 314 315 316 317 318 319 320 321 322 323 | { $fields[$field] = $config; } } return $fields; } public function listByCategory($cat, $fields, $page = 1, $order = null, $desc = false) { $begin = ($page - 1) * self::ITEMS_PER_PAGE; $db = DB::getInstance(); $config = Config::getInstance(); | > > > > > > > > > > > > > > > > > > > > > > | 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 | { $fields[$field] = $config; } } return $fields; } public function sendMessage(array $recipients, $subject, $message, $send_copy) { $config = Config::getInstance(); foreach ($recipients as $recipient) { //Utils::sendEmail(Utils::EMAIL_CONTEXT_BULK, $recipient->email, $subject, $message, $recipient->id); } if ($send_copy) { //Utils::sendEmail(Utils::EMAIL_CONTEXT_BULK, $config->get('email_asso'), $subject, $message); } return true; } public function listAllByCategory($id_categorie) { return DB::getInstance()->get('SELECT id, email FROM membres WHERE id_categorie = ?;', (int)$id_categorie); } public function listByCategory($cat, $fields, $page = 1, $order = null, $desc = false) { $begin = ($page - 1) * self::ITEMS_PER_PAGE; $db = DB::getInstance(); $config = Config::getInstance(); |
︙ | ︙ |
Modified src/include/lib/Garradin/Recherche.php from [aac01b2fe7] to [731bbdf536].
︙ | ︙ | |||
108 109 110 111 112 113 114 | public function remove($id) { return DB::getInstance()->delete('recherches', 'id = ?', (int) $id); } public function get($id) { | | > > > > > > > > > > > > > > | | | | 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 | public function remove($id) { return DB::getInstance()->delete('recherches', 'id = ?', (int) $id); } public function get($id) { $r = DB::getInstance()->first('SELECT * FROM recherches WHERE id = ?;', (int) $id); if ($r && $r->type == self::TYPE_JSON) { $q = json_decode($r->contenu, true); $r->query = $q['query']; $r->order = $q['order']; $r->desc = $q['desc']; $r->limit = $q['limit']; unset($q); } return $r; } public function getList($id_membre, $cible) { return DB::getInstance()->get('SELECT id, type, intitule, type, id_membre FROM recherches WHERE (id_membre IS NULL OR id_membre = ?) AND cible = ? ORDER BY intitule;', (int)$id_membre, $cible); } /** * Lancer une recherche enregistrée */ public function search($id, $force_select = null) { $search = $this->get($id); if (!$search) { return false; } if ($search->type == self::TYPE_JSON) { $search->contenu = $this->buildQuery($search->cible, $search->query, $search->order, $search->desc, $search->limit); } return $this->searchSQL($search->cible, $search->contenu, $force_select); } /** * Renvoie la liste des colonnes d'une cible */ public function getColumns($target) { |
︙ | ︙ | |||
363 364 365 366 367 368 369 | return $sql_query; } /** * Lancer une recherche SQL */ | | > > > > > | 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 | return $sql_query; } /** * Lancer une recherche SQL */ public function searchSQL($target, $query, $force_select = null) { if (!in_array($target, self::TARGETS, true)) { throw new \InvalidArgumentException('Cible inconnue : ' . $target); } $db = DB::getInstance(); if ($force_select) { $query = preg_replace('/^\s*SELECT.*FROM\s+/Ui', 'SELECT ' . $force_select . ' FROM ', $query); } if (!preg_match('/LIMIT\s+/i', $query)) { $query = preg_replace('/;?\s*$/', '', $query); $query .= ' LIMIT 100'; } |
︙ | ︙ |
Modified src/templates/admin/_head.tpl from [d52ff56450] to [d5fc274287].
︙ | ︙ | |||
65 66 67 68 69 70 71 72 73 74 75 76 77 78 | </li> {if $session->canAccess('membres', Membres::DROIT_ACCES)} <li class="member list{if $current == 'membres'} current{elseif $current_parent == 'membres'} current_parent{/if}"><a href="{$admin_url}membres/"><b class="icn">👪</b><i> Membres</i></a> {if $session->canAccess('membres', Membres::DROIT_ECRITURE)} <ul> <li class="member new{if $current == 'membres/ajouter'} current{/if}"><a href="{$admin_url}membres/ajouter.php">Ajouter</a></li> <li class="member cotisations{if $current == 'membres/cotisations'} current{/if}"><a href="{$admin_url}membres/cotisations/">Cotisations</a></li> </ul> {/if} </li> {/if} {if $session->canAccess('compta', Membres::DROIT_ACCES)} <li class="compta{if $current == 'compta'} current{elseif $current_parent == 'compta'} current_parent{/if}"><a href="{$admin_url}compta/"><b>€</b><i> Comptabilité</i></a> <ul> | > | 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 | </li> {if $session->canAccess('membres', Membres::DROIT_ACCES)} <li class="member list{if $current == 'membres'} current{elseif $current_parent == 'membres'} current_parent{/if}"><a href="{$admin_url}membres/"><b class="icn">👪</b><i> Membres</i></a> {if $session->canAccess('membres', Membres::DROIT_ECRITURE)} <ul> <li class="member new{if $current == 'membres/ajouter'} current{/if}"><a href="{$admin_url}membres/ajouter.php">Ajouter</a></li> <li class="member cotisations{if $current == 'membres/cotisations'} current{/if}"><a href="{$admin_url}membres/cotisations/">Cotisations</a></li> <li class="member message{if $current == 'membres/message'} current{/if}"><a href="{$admin_url}membres/message_collectif.php">Message collectif</a></li> </ul> {/if} </li> {/if} {if $session->canAccess('compta', Membres::DROIT_ACCES)} <li class="compta{if $current == 'compta'} current{elseif $current_parent == 'compta'} current_parent{/if}"><a href="{$admin_url}compta/"><b>€</b><i> Comptabilité</i></a> <ul> |
︙ | ︙ |
Modified src/www/admin/membres/recherche.php from [3aa7457440] to [851695862d].
︙ | ︙ | |||
49 50 51 52 53 54 55 | $r = $recherche->get($id); if (!$r || $r->type != Recherche::TYPE_JSON) { throw new UserException('Recherche inconnue ou invalide'); } | < | | | | | 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 | $r = $recherche->get($id); if (!$r || $r->type != Recherche::TYPE_JSON) { throw new UserException('Recherche inconnue ou invalide'); } $query = $r->query; $order = $r->order; $desc = $r->desc; $limit = $r->limit; $tpl->assign('recherche', $r); } if (f('q') !== null) { $query = json_decode(f('q'), true); |
︙ | ︙ |