3 /* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
10 * Copyright © 2014-2020 The Galette Team
12 * This file is part of Galette (http://galette.tuxfamily.org).
14 * Galette is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU General Public License as published by
16 * the Free Software Foundation, either version 3 of the License, or
17 * (at your option) any later version.
19 * Galette is distributed in the hope that it will be useful,
20 * but WITHOUT ANY WARRANTY; without even the implied warranty of
21 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22 * GNU General Public License for more details.
24 * You should have received a copy of the GNU General Public License
25 * along with Galette. If not, see <http://www.gnu.org/licenses/>.
30 * @author Johan Cwiklinski <johan@x-tnd.be>
31 * @copyright 2014-2020 The Galette Team
32 * @license http://www.gnu.org/licenses/gpl-3.0.html GPL License 3.0 or (at your option) any later version
33 * @link http://galette.tuxfamily.org
34 * @since 0.8.2dev 2014-11-11
37 use Galette\Controllers\GaletteController
;
38 use Galette\Controllers\PluginsController
;
39 use Galette\Controllers\HistoryController
;
40 use Galette\Controllers\DynamicTranslationsController
;
41 use Galette\Controllers\Crud
;
42 use Galette\Controllers\PdfController
;
43 use Galette\Controllers\CsvController
;
44 use Galette\Controllers\AdminToolsController
;
45 use Galette\Controllers\TextController
;
46 use Galette\DynamicFields\DynamicField
;
51 [GaletteController
::class, 'dashboard']
52 )->setName('dashboard')->add($authenticate);
57 [GaletteController
::class, 'preferences']
58 )->setName('preferences')->add($authenticate);
60 //preferences procedure
63 [GaletteController
::class, 'storePreferences']
64 )->setName('store-preferences')->add($authenticate);
68 [GaletteController
::class, 'testEmail']
69 )->setName('testEmail')->add($authenticate);
74 [GaletteController
::class, 'charts']
75 )->setName('charts')->add($authenticate);
80 [PluginsController
::class, 'showPlugins']
81 )->setName('plugins')->add($authenticate);
83 //plugins (de)activation
85 '/plugins/{action:activate|deactivate}/{module_id}',
86 [PluginsController
::class, 'togglePlugin']
87 )->setName('pluginsActivation')->add($authenticate);
91 '/plugins/initialize-database/{id}',
92 [PluginsController
::class, 'initPluginDb']
93 )->setName('pluginInitDb')->add($authenticate);
97 '/logs[/{option:page|order}/{value}]',
98 function ($request, $response, $args) use ($routeparser) {
103 $routeparser->urlFor('history', $args)
108 '/history[/{option:page|order}/{value}]',
109 [HistoryController
::class, 'list']
110 )->setName('history')->add($authenticate);
114 [HistoryController
::class, 'historyFilter']
115 )->setName('history_filter')->add($authenticate);
119 function ($request, $response) use ($routeparser) {
124 $routeparser->urlFor('flushHistory')
130 [HistoryController
::class, 'confirmHistoryFlush']
131 )->setName('flushHistory')->add($authenticate);
135 [HistoryController
::class, 'flushHistory']
136 )->setName('doFlushHistory')->add($authenticate);
138 //mailings management
140 '/mailings[/{option:page|order|reset}/{value}]',
141 [Crud\MailingsController
::class, 'list']
142 )->setName('mailings')->add($authenticate);
146 [Crud\MailingsController
::class, 'filter']
147 )->setName('mailings_filter')->add($authenticate);
150 '/mailings/remove' . '/{id:\d+}',
151 [Crud\MailingsController
::class, 'confirmDelete']
152 )->setName('removeMailing')->add($authenticate);
155 '/mailings/remove/{id:\d+}',
156 [Crud\MailingsController
::class, 'delete']
157 )->setName('doRemoveMailing')->add($authenticate);
162 [CsvController
::class, 'export']
163 )->setName('export')->add($authenticate);
166 '/{type:export|import}/remove/{file}',
167 [CsvController
::class, 'confirmRemoveFile']
168 )->setName('removeCsv')->add($authenticate);
171 '/{type:export|import}/remove/{file}',
172 [CsvController
::class, 'removeFile']
173 )->setName('doRemoveCsv')->add($authenticate);
177 [CsvController
::class, 'doExport']
178 )->setName('doExport')->add($authenticate);
181 '/{type:export|import}/get/{file}',
182 [CsvController
::class, 'getFile']
183 )->setName('getCsv')->add($authenticate);
187 [CsvController
::class, 'import']
188 )->setName('import')->add($authenticate);
192 [CsvController
::class, 'doImports']
193 )->setName('doImport')->add($authenticate);
197 [CsvController
::class, 'uploadImportFile']
198 )->setname('uploadImportFile')->add($authenticate);
202 [CsvController
::class, 'importModel']
203 )->setName('importModel')->add($authenticate);
207 [CsvController
::class, 'getImportModel']
208 )->setName('getImportModel')->add($authenticate);
211 '/import/model/store',
212 [CsvController
::class, 'storeModel']
213 )->setName('storeImportModel')->add($authenticate);
216 '/models/pdf[/{id:\d+}]',
217 [PdfController
::class, 'models']
218 )->setName('pdfModels')->add($authenticate);
222 [PdfController
::class, 'storeModels']
223 )->setName('pdfModels')->add($authenticate);
227 [Crud\TitlesController
::class, 'list']
228 )->setName('titles')->add($authenticate);
232 [Crud\TitlesController
::class, 'doAdd']
233 )->setName('titles')->add($authenticate);
236 '/titles/remove/{id:\d+}',
237 [Crud\TitlesController
::class, 'confirmDelete']
238 )->setName('removeTitle')->add($authenticate);
241 '/titles/remove/{id:\d+}',
242 [Crud\TitlesController
::class, 'delete']
243 )->setName('doRemoveTitle')->add($authenticate);
246 '/titles/edit/{id:\d+}',
247 [Crud\TitlesController
::class, 'edit']
248 )->setname('editTitle')->add($authenticate);
251 '/titles/edit/{id:\d+}',
252 [Crud\TitlesController
::class, 'doEdit']
253 )->setname('editTitle')->add($authenticate);
256 '/texts[/{lang}/{ref}]',
257 [TextController
::class, 'list']
258 )->setName('texts')->add($authenticate);
262 [TextController
::class, 'change']
263 )->setName('changeText')->add($authenticate);
267 [TextController
::class, 'edit']
268 )->setName('texts')->add($authenticate);
271 '/{class:contributions-types|status}',
272 [Crud\EntitledsController
::class, 'list']
273 )->setName('entitleds')->add($authenticate);
276 '/{class:contributions-types|status}/edit/{id:\d+}',
277 [Crud\EntitledsController
::class, 'edit']
278 )->setName('editEntitled')->add($authenticate);
281 '/{class:contributions-types|status}/add',
282 [Crud\EntitledsController
::class, 'add']
283 )->setName('addEntitled')->add($authenticate);
286 '/{class:contributions-types|status}/edit/{id:\d+}',
287 [Crud\EntitledsController
::class, 'doEdit']
288 )->setName('doEditEntitled')->add($authenticate);
291 '/{class:contributions-types|status}/add',
292 [Crud\EntitledsController
::class, 'doAdd']
293 )->setName('doAddEntitled')->add($authenticate);
296 '/{class:contributions-types|status}/remove/{id:\d+}',
297 [Crud\EntitledsController
::class, 'confirmDelete']
298 )->setName('removeEntitled')->add($authenticate);
301 '/{class:contributions-types|status}/remove/{id:\d+}',
302 [Crud\EntitledsController
::class, 'delete']
303 )->setName('doRemoveEntitled')->add($authenticate);
306 '/dynamic-translations[/{text_orig}]',
307 [DynamicTranslationsController
::class, 'dynamicTranslations']
308 )->setName('dynamicTranslations')->add($authenticate);
311 '/dynamic-translations',
312 [DynamicTranslationsController
::class, 'doDynamicTranslations']
313 )->setName('editDynamicTranslation')->add($authenticate);
316 '/lists/{table}/configure',
317 [GaletteController
::class, 'configureListFields']
318 )->setName('configureListFields')->add($authenticate);
321 '/lists/{table}/configure',
322 [GaletteController
::class, 'storeListFields']
323 )->setName('storeListFields')->add($authenticate);
326 '/fields/core/configure',
327 [GaletteController
::class, 'configureCoreFields']
328 )->setName('configureCoreFields')->add($authenticate);
331 '/fields/core/configure',
332 [GaletteController
::class, 'storeCoreFieldsConfig']
333 )->setName('storeCoreFieldsConfig')->add($authenticate);
336 '/fields/dynamic/configure[/{form_name:adh|contrib|trans}]',
337 [Crud\DynamicFieldsController
::class, 'list']
338 )->setName('configureDynamicFields')->add($authenticate);
341 '/fields/dynamic/move/{form_name:adh|contrib|trans}' .
342 '/{direction:' . DynamicField
::MOVE_UP
. '|' . DynamicField
::MOVE_DOWN
. '}/{id:\d+}',
343 [Crud\DynamicFieldsController
::class, 'move']
344 )->setName('moveDynamicField')->add($authenticate);
347 '/fields/dynamic/remove/{form_name:adh|contrib|trans}/{id:\d+}',
348 [Crud\DynamicFieldsController
::class, 'confirmDelete']
349 )->setName('removeDynamicField')->add($authenticate);
352 '/fields/dynamic/remove/{form_name:adh|contrib|trans}/{id:\d+}',
353 [Crud\DynamicFieldsController
::class, 'delete']
354 )->setName('doRemoveDynamicField')->add($authenticate);
357 '/fields/dynamic/add/{form_name:adh|contrib|trans}',
358 [Crud\DynamicFieldsController
::class, 'add']
359 )->setName('addDynamicField')->add($authenticate);
362 '/fields/dynamic/edit/{form_name:adh|contrib|trans}/{id:\d+}',
363 [Crud\DynamicFieldsController
::class, 'edit']
364 )->setName('editDynamicField')->add($authenticate);
367 '/fields/dynamic/add/{form_name:adh|contrib|trans}',
368 [Crud\DynamicFieldsController
::class, 'doAdd']
369 )->setName('doAddDynamicField')->add($authenticate);
372 '/fields/dynamic/edit/{form_name:adh|contrib|trans}/{id:\d+}',
373 [Crud\DynamicFieldsController
::class, 'doEdit']
374 )->setName('doEditDynamicField')->add($authenticate);
378 [AdminToolsController
::class, 'adminTools']
379 )->setName('adminTools')->add($authenticate);
383 [AdminToolsController
::class, 'process']
384 )->setName('doAdminTools')->add($authenticate);
388 [Crud\PaymentTypeController
::class, 'list']
389 )->setName('paymentTypes')->add($authenticate);
393 [Crud\PaymentTypeController
::class, 'doAdd']
394 )->setName('paymentTypes')->add($authenticate);
397 '/payment-type/remove/{id:\d+}',
398 [Crud\PaymentTypeController
::class, 'confirmDelete']
399 )->setName('removePaymentType')->add($authenticate);
402 '/payment-type/remove/{id:\d+}',
403 [Crud\PaymentTypeController
::class, 'delete']
404 )->setName('doRemovePaymentType')->add($authenticate);
407 '/payment-type/edit/{id:\d+}',
408 [Crud\PaymentTypeController
::class, 'edit']
409 )->setname('editPaymentType')->add($authenticate);
412 '/payment-type/edit/{id:\d+}',
413 [Crud\PaymentTypeController
::class, 'doEdit']
414 )->setname('editPaymentType')->add($authenticate);
417 '/{form_name:adh|contrib|trans}/{id:\d+}/file/{fid:\d+}/{pos:\d+}/{name}',
418 [Crud\DynamicFieldsController
::class, 'getDynamicFile']
419 )->setName('getDynamicFile')->add($authenticate);