Користувачі, що брали участь в експериментах¶
Попередження
Користуйтеся тільки слідуючи вказівкам, якщо ви знаєте, що робите … «Керівництво не несе відповідальності за будь-який випадок […]»: D
Пристосування до вашого графіку¶
Якщо ви вмієте працювати з таблицями стилів CSS, ви можете пристосувати Galette CSS під свої власні кольори. Для цього настійно не пораджено редагувати файли Galette CSS, а краще використовувати спеціальний механізм, призначений для цього. Створіть файл galette_local.css
у вашому каталозі webroot/themes/default
зі своїми стилями, їх буде автоматично увімкнено.
Постарайтеся зробити все якомога простіше. Наприклад, якщо ви хочете змінити колір назви товариства (відображається під заголовками сторінок), ви знайдете в Galette CSS-правило #asso_name, яке визначає кілька параметрів, включаючи колір. Потім, у вашій таблиці стилів, вам знадобиться тільки наступне:
#asso_name {
color: red;
}
Цього буде достатньо для показу назви вашого товариства червоним кольором. Зверніть увагу, що локальний CSS файл і всі проблеми, які він може викликати, не будуть прийняті до уваги командою Galette, підтримка не буде надана.
Ви також можете перевизначити таблицю стилів друку, просто створіть файл galette_local_print.css
.
Додавання та змінення рядків¶
За необхідності можна налаштувати перекладені рядки в Galette - без змінення будь-якого вихідного файлу Galette. Просто створіть файл galette_ {mylang} _local_lang.php
(де {mylang} повинен бути замінений на мову, наприклад fr_FR.utf8 або` en_US`) в каталозі `` lang``. Цей файл повинен містити простий PHP-масив з вихідним рядком (тим, що у вихідному коді Galette) в якості індексу.
Наприклад, ми хочемо змінити рядок «Password» на сторінці входу в систему українською мовою, перекладену як Пароль:. Оригінальний рядок - Password: (див. Galette / templates / default / index.tpl
), його український переклад - Пароль: і ми хочемо замінити його на Гасло: `; тому ми створимо `` galette_fr_FR.utf8_local_lang.php`` з наступним змістом:
<?php
$lang['Password:'] = 'Secret :';
return $lang;
Оскільки Galette використовує систему кешування для перекладів, зміни можуть бути видні не відразу; можливо, вам доведеться перезапустити PHP (або очистити кеш). Важливо сприймати вихідний рядок дослівно, включаючи пунктуацію, і стежити за тим, щоб у всіх рядках були одинарні лапки (зі зворотною скісною рискою).
Ви також можете перевизначити мови для розширень, використовуючи метод sam, просто помістіть файл в каталог plugins lang і назвіть його {plugin}_{mylang}_local_lang.php
де {plugin} - назва маршруту, яку ви можете знайти в файлі _define.php
.
Примітка
Це буде працювати тільки за використання функцій перекладу Galette, але не за використання рідного gettext.
Зміна тривалості сеансу¶
Galette типово створюватиме сесію з типовою тривалістю життя (і, схоже, браузери поводяться інакше в цьому випадку). У будь-якому випадку, ви можете визначити сталу з назвою GALETTE_TIMEOUT
для зміни часу життя сеансу за допомогою зміни поведінки:
<?php
//see https://www.php.net/manual/en/session.configuration.php#ini.session.cookie-lifetime
define('GALETTE_TIMEOUT', 0);
Запис IP-адрес за проксі-сервером¶
Якщо ваш зразок Galette знаходиться за проксі-сервером, IP-адреса, збережена в історії, буде проксі-адресою, а не призначеною для користувача :(
Щоб це виправити використовуйте конфігурацію поведінки для створення сталої, названої GALETTE_X_FORWARDED_FOR_INDEX
на зразок:
<?php
define('GALETTE_X_FORWARDED_FOR_INDEX', 1);
Кожен проксі-сервер додаватиме свою власну адресу в список, приклад вище працюватиме тільки якщо є тільки один проксі-сервер.
Попередження
З метою безпеки не використовуйте це, якщо ваш зразок не знаходиться за проксі-сервером!
Зовнішня статистика¶
Нове в версії 0.9.
Багато статистичних платформ покладаються на додатковий блок JavaScript для роботи. Ви можете створити файл tracking.js
у каталозі webroot/themes/default
, його буде автоматично включено.
Попередження
Для роботи Galette використовує Javascript. Якщо код, який ви додасте в файл tracking.js
, буде неправильним, це може привести до зламання Galette!
Розмір і кількість карток¶
Нове в версії 0.9.
Налаштування Galette дозволяють задавати проміжки між картками, але не їх кількість, не кількість рядків і стовпців. Ви можете використовувати конфігурацію поведінки для налаштування карток, для цього передбачені наступні сталі:
Примітка
Зміна цих значень може викликати розриви; змінюйте їх з обережністю, і не забудьте перевірити результат ;)
GALETTE_CARD_WIDTH
визначає ширину карток,GALETTE_CARD_HEIGHT
визначає висоту карток,GALETTE_CARD_COLS
визначає кількість стовпців,GALETTE_CARD_ROWS
визначає кількість рядків.
Експорти CSV¶
Galette надає систему експорту CSV з параметрами. Надається тільки один параметричний експорт, але ви можете додати свій власний в файл config / exports.xml
. Його конфігурація складається з декількох частин:
- запит SQL для використання,
- стовпці для експорту,
- роздільник CSV,
- символ розділення рядків.
Попередження
Конфігурація експорту CSV виконується у файлі XML, який повинен бути надійним!
Якщо це не так, експорт не буде запропоновано з призначеного для користувача інтерфейсу. У linux для перевірки коректності файлу можна використовувати такі засоби, як xmlwf
або xmllint
.
Розгляньмо внески параметрованого експорту:
<export id="cotisations" name="Cotisations" description="Export de l'état des cotisations pour l'ensemble des adhérents" filename="galette_cotisations.csv">
<!-- The Query to execute - mandatory -->
<query>SELECT nom_adh, prenom_adh, ville_adh, montant_cotis, date_debut_cotis, date_fin_cotis FROM galette_cotisations INNER JOIN galette_adherents ON (galette_cotisations.id_adh=galette_adherents.id_adh)</query>
<!-- CSV Headers - optionnal.
If not set, fields name will be exported.
If set to none (eg. <headers><none/></headers>, no headers will be outpoutted.
You can alternatively use named columns in you query instead of header tags.
-->
<headers>
<!--<none/>-->
<header>Name</header>
<header>Surname</header>
<header>Town</header>
<header>Amount</header>
<header>Begin date</header>
<header>End date</header>
</headers>
<!-- CSV separator to use - optionnal.
If this tag is not present, it will defaults to ',' (see Csv::DEFAULT_SEPARATOR from classes/csv.class.php)
Accepted values are also defined in Csv class.
-->
<separator>;</separator>
<!-- How to quote values - optionnal.
If this tag is not present, it will defaults to '"' (see Csv::DEFAULT_QUOTE from classes/csv.class.php)
Accepted values are also defined in Csv class.
-->
<quote><![CDATA["]]></quote>
</export>
Кожен параметрований експорт визначається всередині теґа export
, який містить неповторюваний ідентифікатор (`` id``), опис, що відображається в інтерфейсі ( `` name``) і назву вихідного файлу (filename
). Теґ query
містить SQL-запит для виконання, немає ніяких інших обмежень, крім обмежень SQL-рушія.
Частина headers
визначає колонки, які будуть експортовані, теґ separator
- роздільник CSV, а теґ quote
- роздільник рядків.
Засоби адміністрування¶
Попередження
Всі засоби адміністратора є небезпечними, використовуйте їх з обережністю, і ** переконайтеся, що ви зробили резервну копію бази даних** перед використанням!
Для адміністратора Galette передбачено кілька засобів, що дозволяють:
- повторна ініціалізація вмістів розсилань поверне вміст всіх листів до типових значень,
- повторна ініціалізація конфігурацій полів скине всі поля ядра членів в типові значення. Це не включаєі динамічні поля,
- повторна ініціалізація моделей PDF скине моделі PDF до типових значень,
- утворити порожні логіни і паролі ці дані необхідні для підвищення безпеки, але іноді відсутні (наприклад, при імпорті CSV). Ця функція встановить випадкові значення в поля логіна і пароля, які будуть порожніми в базі даних.