Overview
Context
Changes
Added src/include/data/0.9.0.sql version [26770602fe].
|
|
>
>
>
>
>
>
>
>
>
>
>
>
>
>
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
-- Suppression de la colonne description des catégories
ALTER TABLE membres_categories RENAME TO membres_categories_old;
-- Re-créer la table
.read schema.sql
-- Copie des données, sauf la colonne description
INSERT INTO membres_categories SELECT id, nom, droit_wiki,
droit_membres, droit_compta, droit_inscription,
droit_connexion, droit_config, cacher,
id_cotisation_obligatoire FROM membres_categories_old;
-- Suppression des anciennes tables
DROP TABLE membres_categories_old;
|
Modified src/include/data/schema.sql
from [80be656e5d]
to [fb82ccd388].
︙ | | | ︙ | |
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
-- compta_categorie_dons => id_categorie
CREATE TABLE IF NOT EXISTS membres_categories
-- Catégories de membres
(
id INTEGER PRIMARY KEY NOT NULL,
nom TEXT NOT NULL,
description TEXT NULL,
droit_wiki INTEGER NOT NULL DEFAULT 1,
droit_membres INTEGER NOT NULL DEFAULT 1,
droit_compta INTEGER NOT NULL DEFAULT 1,
droit_inscription INTEGER NOT NULL DEFAULT 0,
droit_connexion INTEGER NOT NULL DEFAULT 1,
droit_config INTEGER NOT NULL DEFAULT 0,
|
<
|
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
-- compta_categorie_dons => id_categorie
CREATE TABLE IF NOT EXISTS membres_categories
-- Catégories de membres
(
id INTEGER PRIMARY KEY NOT NULL,
nom TEXT NOT NULL,
droit_wiki INTEGER NOT NULL DEFAULT 1,
droit_membres INTEGER NOT NULL DEFAULT 1,
droit_compta INTEGER NOT NULL DEFAULT 1,
droit_inscription INTEGER NOT NULL DEFAULT 0,
droit_connexion INTEGER NOT NULL DEFAULT 1,
droit_config INTEGER NOT NULL DEFAULT 0,
|
︙ | | | ︙ | |
Modified src/include/lib/Garradin/Membres/Categories.php
from [af4fccf952]
to [5b61a5fe1b].
︙ | | | ︙ | |
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
|
}
}
public function add($data)
{
$this->_checkData($data);
if (!isset($data['description']))
{
$data['description'] = '';
}
foreach ($this->droits as $key=>$value)
{
if (!isset($data['droit_'.$key]))
$data['droit_'.$key] = $value;
else
$data['droit_'.$key] = (int)$data['droit_'.$key];
}
|
<
<
<
<
<
|
45
46
47
48
49
50
51
52
53
54
55
56
57
58
|
}
}
public function add($data)
{
$this->_checkData($data);
foreach ($this->droits as $key=>$value)
{
if (!isset($data['droit_'.$key]))
$data['droit_'.$key] = $value;
else
$data['droit_'.$key] = (int)$data['droit_'.$key];
}
|
︙ | | | ︙ | |
Modified src/templates/admin/_head.tpl
from [aa97d73757]
to [5bdcfb933c].
︙ | | | ︙ | |
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
|
{if $session->canAccess('membres', Garradin\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', Garradin\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>
{if $session->canAccess('membres', Garradin\Membres::DROIT_ADMIN)}
<li class="member admin config{if $current == 'membres/categories'} current{/if}"><a href="{$admin_url}membres/categories/">Catégories</a></li>
<li class="members admin mail{if $current == 'membres/message_collectif'} current{/if}"><a href="{$admin_url}membres/message_collectif.php">Message collectif</a></li>
{/if}
</ul>
{/if}
</li>
{/if}
{if $session->canAccess('compta', Garradin\Membres::DROIT_ACCES)}
|
<
|
66
67
68
69
70
71
72
73
74
75
76
77
78
79
|
{if $session->canAccess('membres', Garradin\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', Garradin\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>
{if $session->canAccess('membres', Garradin\Membres::DROIT_ADMIN)}
<li class="members admin mail{if $current == 'membres/message_collectif'} current{/if}"><a href="{$admin_url}membres/message_collectif.php">Message collectif</a></li>
{/if}
</ul>
{/if}
</li>
{/if}
{if $session->canAccess('compta', Garradin\Membres::DROIT_ACCES)}
|
︙ | | | ︙ | |
Modified src/templates/admin/config/_menu.tpl
from [b62a4fdea8]
to [81c92b4a67].
1
2
3
4
5
6
7
8
|
<ul class="actions">
<li{if $current == 'index'} class="current"{/if}><a href="{$admin_url}config/">Général</a></li>
<li{if $current == 'membres'} class="current"{/if}><a href="{$admin_url}config/membres.php">Fiche des membres</a></li>
<li{if $current == 'site'} class="current"{/if}><a href="{$admin_url}config/site.php">Site public</a></li>
<li{if $current == 'donnees'} class="current"{/if}><a href="{$admin_url}config/donnees.php">Données : sauvegarde et restauration</a></li>
<li{if $current == 'import'} class="current"{/if}><a href="{$admin_url}config/import.php">Import & export</a></li>
<li{if $current == 'plugins'} class="current"{/if}><a href="{$admin_url}config/plugins.php">Extensions</a></li>
</ul>
|
>
|
1
2
3
4
5
6
7
8
9
|
<ul class="actions">
<li{if $current == 'index'} class="current"{/if}><a href="{$admin_url}config/">Général</a></li>
<li{if $current == 'membres'} class="current"{/if}><a href="{$admin_url}config/categories/">Catégories de membres</a></li>
<li{if $current == 'membres'} class="current"{/if}><a href="{$admin_url}config/membres.php">Fiche des membres</a></li>
<li{if $current == 'site'} class="current"{/if}><a href="{$admin_url}config/site.php">Site public</a></li>
<li{if $current == 'donnees'} class="current"{/if}><a href="{$admin_url}config/donnees.php">Données : sauvegarde et restauration</a></li>
<li{if $current == 'import'} class="current"{/if}><a href="{$admin_url}config/import.php">Import & export</a></li>
<li{if $current == 'plugins'} class="current"{/if}><a href="{$admin_url}config/plugins.php">Extensions</a></li>
</ul>
|
Modified src/templates/admin/config/categories/index.tpl
from [9c762d5e02]
to [c22d35a7c5].
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
{include file="admin/_head.tpl" title="Catégories de membres" current="membres/categories"}
<table class="list">
<thead>
<th>Nom</th>
<td>Membres</td>
<td>Droits</td>
<td></td>
</thead>
<tbody>
{foreach from=$liste item="cat"}
<tr>
<th>{$cat.nom}</th>
<td class="num">{$cat.nombre}</td>
<td class="droits">
{format_droits droits=$cat}
</td>
<td class="actions">
<a class="icn" href="{$admin_url}membres/categories/modifier.php?id={$cat.id}" title="Modifier">✎</a>
{if $cat.id != $user.id_categorie}
<a class="icn" href="{$admin_url}membres/categories/supprimer.php?id={$cat.id}" title="Supprimer">✘</a>
{/if}
</td>
</tr>
{/foreach}
</tbody>
</table>
|
|
|
>
|
|
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
{include file="admin/_head.tpl" title="Catégories de membres" current="config"}
<table class="list">
<thead>
<th>Nom</th>
<td class="num">Membres</td>
<td>Droits</td>
<td></td>
</thead>
<tbody>
{foreach from=$liste item="cat"}
<tr>
<th>{$cat.nom}</th>
<td class="num">{$cat.nombre}</td>
<td class="droits">
{format_droits droits=$cat}
</td>
<td class="actions">
<a class="icn" href="{$admin_url}membres/?cat={$cat.id}" title="Liste des membres">👪</a>
<a class="icn" href="{$admin_url}config/categories/modifier.php?id={$cat.id}" title="Modifier">✎</a>
{if $cat.id != $user.id_categorie}
<a class="icn" href="{$admin_url}config/categories/supprimer.php?id={$cat.id}" title="Supprimer">✘</a>
{/if}
</td>
</tr>
{/foreach}
</tbody>
</table>
|
︙ | | | ︙ | |
Modified src/templates/admin/config/categories/modifier.tpl
from [206fa39a37]
to [72ec7cdede].
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
{include file="admin/_head.tpl" title="Modifier une catégorie" current="membres/categories"}
{form_errors}
<form method="post" action="{$self_url}">
<fieldset>
<legend>Informations générales</legend>
<dl>
<dt><label for="f_nom">Nom</label> <b title="(Champ obligatoire)">obligatoire</b></dt>
<dd><input type="text" name="nom" id="f_nom" value="{form_field data=$cat name=nom}" required="required" /></dd>
<dt><label for="f_description">Description</label></dt>
<dd><textarea name="description" id="f_description" rows="5" cols="50">{form_field data=$cat name=description}</textarea></dd>
<dt>
<input type="checkbox" name="cacher" value="1" id="f_cacher" {if $cat.cacher}checked="checked"{/if} />
<label for="f_cacher">Catégorie cachée</label>
</dt>
<dd class="help">
Si coché cette catégorie ne sera visible qu'aux administrateurs et ne recevra pas
de messages collectifs ou de rappels.
|
|
<
<
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
{include file="admin/_head.tpl" title="Modifier une catégorie de membre" current="config"}
{form_errors}
<form method="post" action="{$self_url}">
<fieldset>
<legend>Informations générales</legend>
<dl>
<dt><label for="f_nom">Nom</label> <b title="(Champ obligatoire)">obligatoire</b></dt>
<dd><input type="text" name="nom" id="f_nom" value="{form_field data=$cat name=nom}" required="required" /></dd>
<dt>
<input type="checkbox" name="cacher" value="1" id="f_cacher" {if $cat.cacher}checked="checked"{/if} />
<label for="f_cacher">Catégorie cachée</label>
</dt>
<dd class="help">
Si coché cette catégorie ne sera visible qu'aux administrateurs et ne recevra pas
de messages collectifs ou de rappels.
|
︙ | | | ︙ | |
Modified src/templates/admin/config/categories/supprimer.tpl
from [145753eeb5]
to [bbb40c7bf9].
1
2
3
4
5
6
7
8
|
{include file="admin/_head.tpl" title="Supprimer une catégorie" current="membres/categories"}
{form_errors}
<form method="post" action="{$self_url}">
<fieldset>
<legend>Supprimer la catégorie de membres ?</legend>
|
|
|
1
2
3
4
5
6
7
8
|
{include file="admin/_head.tpl" title="Supprimer une catégorie de membre" current="config"}
{form_errors}
<form method="post" action="{$self_url}">
<fieldset>
<legend>Supprimer la catégorie de membres ?</legend>
|
︙ | | | ︙ | |
Modified src/www/admin/config/categories/index.php
from [a435abf714]
to [fefaa44c81].
︙ | | | ︙ | |
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
if (!$form->hasErrors())
{
$cats->add([
'nom' => f('nom'),
]);
Utils::redirect(ADMIN_URL . 'membres/categories/');
}
}
$tpl->assign('liste', $cats->listCompleteWithStats());
$tpl->display('admin/membres/categories/index.tpl');
|
|
|
|
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
if (!$form->hasErrors())
{
$cats->add([
'nom' => f('nom'),
]);
Utils::redirect(ADMIN_URL . 'config/categories/');
}
}
$tpl->assign('liste', $cats->listCompleteWithStats());
$tpl->display('admin/config/categories/index.tpl');
|
Modified src/www/admin/config/categories/modifier.php
from [624c7118d6]
to [6a74b1fe7d].
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
<?php
namespace Garradin;
require_once __DIR__ . '/../_inc.php';
$session->requireAccess('membres', Membres::DROIT_ADMIN);
$cats = new Membres\Categories;
qv(['id' => 'required|numeric']);
$id = (int) qg('id');
$cat = $cats->get($id);
|
<
<
|
1
2
3
4
5
6
7
8
9
10
11
12
|
<?php
namespace Garradin;
require_once __DIR__ . '/../_inc.php';
$cats = new Membres\Categories;
qv(['id' => 'required|numeric']);
$id = (int) qg('id');
$cat = $cats->get($id);
|
︙ | | | ︙ | |
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
'id_cotisation_obligatoire' => 'numeric',
]);
if (!$form->hasErrors())
{
$data = [
'nom' => f('nom'),
'description' => f('description'),
'droit_wiki' => (int) f('droit_wiki'),
'droit_compta' => (int) f('droit_compta'),
'droit_config' => (int) f('droit_config'),
'droit_membres' => (int) f('droit_membres'),
'droit_connexion' => (int) f('droit_connexion'),
'droit_inscription' => (int) f('droit_inscription'),
'cacher' => (int) f('cacher'),
|
<
|
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
'id_cotisation_obligatoire' => 'numeric',
]);
if (!$form->hasErrors())
{
$data = [
'nom' => f('nom'),
'droit_wiki' => (int) f('droit_wiki'),
'droit_compta' => (int) f('droit_compta'),
'droit_config' => (int) f('droit_config'),
'droit_membres' => (int) f('droit_membres'),
'droit_connexion' => (int) f('droit_connexion'),
'droit_inscription' => (int) f('droit_inscription'),
'cacher' => (int) f('cacher'),
|
︙ | | | ︙ | |
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
|
if ($id == $user->id_categorie)
{
// Mise à jour de la session courante
$session->refresh();
}
Utils::redirect(ADMIN_URL . 'membres/categories/');
}
catch (UserException $e)
{
$form->addError($e->getMessage());
}
}
}
$tpl->assign('cat', $cat);
$tpl->assign('readonly', $cat->id == $user->id_categorie ? 'disabled="disabled"' : '');
$cotisations = new Cotisations;
$tpl->assign('cotisations', $cotisations->listCurrent());
$tpl->assign('membres', $membres);
$tpl->display('admin/membres/categories/modifier.tpl');
|
|
|
|
|
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
|
if ($id == $user->id_categorie)
{
// Mise à jour de la session courante
$session->refresh();
}
Utils::redirect(ADMIN_URL . 'config/categories/');
}
catch (UserException $e)
{
$form->addError($e->getMessage());
}
}
}
$tpl->assign('cat', $cat);
$tpl->assign('readonly', $cat->id == $user->id_categorie ? 'disabled="disabled"' : '');
$cotisations = new Cotisations;
$tpl->assign('cotisations', $cotisations->listCurrent());
$tpl->assign('membres', new Membres);
$tpl->display('admin/config/categories/modifier.tpl');
|
Modified src/www/admin/config/categories/supprimer.php
from [43f9a12d7b]
to [93c453e7a7].
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
<?php
namespace Garradin;
require_once __DIR__ . '/../_inc.php';
$session->requireAccess('membres', Membres::DROIT_ADMIN);
$cats = new Membres\Categories;
qv(['id' => 'required|numeric']);
$id = (int) qg('id');
$cat = $cats->get($id);
|
<
<
|
1
2
3
4
5
6
7
8
9
10
11
12
|
<?php
namespace Garradin;
require_once __DIR__ . '/../_inc.php';
$cats = new Membres\Categories;
qv(['id' => 'required|numeric']);
$id = (int) qg('id');
$cat = $cats->get($id);
|
︙ | | | ︙ | |
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
{
$form->check('delete_cat_' . $id);
if (!$form->hasErrors())
{
try {
$cats->remove($id);
Utils::redirect(ADMIN_URL . 'membres/categories/');
}
catch (UserException $e)
{
$form->addError($e->getMessage());
}
}
}
$tpl->assign('cat', $cat);
$tpl->display('admin/membres/categories/supprimer.tpl');
|
|
|
|
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
{
$form->check('delete_cat_' . $id);
if (!$form->hasErrors())
{
try {
$cats->remove($id);
Utils::redirect(ADMIN_URL . 'config/categories/');
}
catch (UserException $e)
{
$form->addError($e->getMessage());
}
}
}
$tpl->assign('cat', $cat);
$tpl->display('admin/config/categories/supprimer.tpl');
|