diff --git a/README.rst b/README.rst index 734f362a..17b58d9d 100644 --- a/README.rst +++ b/README.rst @@ -8,7 +8,7 @@ .. image:: https://img.shields.io/badge/code%20style-black-000000.svg :target: https://github.com/ambv/black - :alt: Code style: black + :alt: code style: black .. image:: https://img.shields.io/badge/zulip-join_chat-brightgreen.svg :target: https://ae-dev.zulipchat.com @@ -16,13 +16,24 @@ .. image:: https://readthedocs.org/projects/sith-ae/badge/?version=latest :target: https://sith-ae.readthedocs.io/?badge=latest - :alt: Documentation Status + :alt: documentation Status .. body +.. role:: bash(code) + :language: bash + Sith AE ======= +| **Website** is available here https://ae.utbm.fr/. +| **Documentation** is available here https://sith-ae.readthedocs.io/. + +| Please contact us at mailto:ae.info@utbm.fr if you have issues while using our website. +| If you want to join us, you can join our Zulip chat at https://ae-dev.zulipchat.com. + +This project is licenced under GNU GPL, see the LICENSE file at the top of the repository for more details. + Logging errors with sentry -------------------------- @@ -31,7 +42,7 @@ To connect the app to sentry.io, you must set the variable SENTRY_DSN in your se Collecting statics for production: ---------------------------------- -We use scss in the project. In development environment (DEBUG=True), scss is compiled every time the file is needed. For production, it assumes you have already compiled every files and to do so, you need to use the following commands : +We use scss in the project. In development environment (DEBUG=True), scss is compiled every time the file is needed. For production, it assumes you have already compiled every files and to do so, you need to use the following commands : .. sourcecode:: bash @@ -44,7 +55,6 @@ Misc about development Controlling the rights ~~~~~~~~~~~~~~~~~~~~~~ - When you need to protect an object, there are three levels: * Editing the object properties @@ -53,12 +63,15 @@ When you need to protect an object, there are three levels: Now you have many solutions in your model: - * You can define a `is_owned_by(self, user)`, a `can_be_edited_by(self, user)`, and/or a `can_be_viewed_by(self, user)` method, each returning True is the user passed can edit/view the object, False otherwise. + * You can define a :bash:`is_owned_by(self, user)`, a :bash:`can_be_edited_by(self, user)`, and/or a :bash:`can_be_viewed_by(self, user)` method, each returning True is the user passed can edit/view the object, False otherwise. * This allows you to make complex request when the group solution is not powerful enough. * It's useful too when you want to define class-wide permissions, e.g. the club members, that are viewable only for Subscribers. - * You can add an `owner_group` field, as a ForeignKey to Group. Second is an `edit_groups` field, as a ManyToMany to Group, and third is a `view_groups`, same as for edit. + * You can add an :bash:`owner_group` field, as a ForeignKey to Group. Second is an :bash:`edit_groups` field, as a ManyToMany to Group, and third is a :bash:`view_groups`, same as for edit. + + + Finally, when building a class based view, which is highly advised, you just have to inherit it from CanEditPropMixin, CanEditMixin, or CanViewMixin, which are located in core.views. Your view will then be protected using either the @@ -75,8 +88,6 @@ Counting the number of line of code Updating doc/SYNTAX.md ~~~~~~~~~~~~~~~~~~~~~~ -| If you make an update in the Markdown syntax parser, it's good to document update the syntax reference page in `doc/SYNTAX.md`. But updating this file will break the tests if you don't update the corresponding `doc/SYNTAX.html` file at the same time. -| To do that, simply run `./manage.py markdown > doc/SYNTAX.html`, +| If you make an update in the Markdown syntax parser, it's good to document update the syntax reference page in :bash:`doc/SYNTAX.md`. But updating this file will break the tests if you don't update the corresponding :bash:`doc/SYNTAX.html` file at the same time. +| To do that, simply run :bash:`./manage.py markdown > doc/SYNTAX.html`, and the tests should pass again. - - diff --git a/doc/TO_Skia_LoJ/.gitignore b/doc/TO_Skia_LoJ/.gitignore index cbe4c5a9..aaecb433 100644 --- a/doc/TO_Skia_LoJ/.gitignore +++ b/doc/TO_Skia_LoJ/.gitignore @@ -1,2 +1 @@ -Rapport.pdf _minted-Rapport/ diff --git a/doc/TW_Skia/.gitignore b/doc/TW_Skia/.gitignore index 63d167e9..7085355a 100644 --- a/doc/TW_Skia/.gitignore +++ b/doc/TW_Skia/.gitignore @@ -1 +1 @@ -Rapport.pdf +_minted-Rapport \ No newline at end of file diff --git a/doc/TW_Skia/Rapport.pdf b/doc/TW_Skia/Rapport.pdf new file mode 100644 index 00000000..3c149b64 Binary files /dev/null and b/doc/TW_Skia/Rapport.pdf differ diff --git a/doc/about/introduction.rst b/doc/about/introduction.rst index 2fef958c..66f0ed62 100644 --- a/doc/about/introduction.rst +++ b/doc/about/introduction.rst @@ -1,7 +1,7 @@ Introduction ============ -Le but de ce projet est de fournir à l'Association des Étudiants de l'UTBM une plate-forme pratique et centralisée de ses services. Le Sith de l'AE tiens à jour le registre des cotisations à l'association, prend en charge la trésorerie, les ventes de produits et services, la diffusion d’événements, la gestion de la laverie et bien plus encore. +Le but de ce projet est de fournir à l'Association des Étudiants de l'UTBM une plate-forme pratique et centralisée de ses services. Le Sith de l'AE tiens à jour le registre des cotisations à l'association, prend en charge la trésorerie, les ventes de produits et services, la diffusion d’événements, la gestion de la laverie et bien plus encore. Il est conçu de manière suffisamment générique pour être facilement adaptable à une autre association. C'est un projet bénévole qui tire ses origines des années 2000. Il s'agit de la troisième version du site de l'association initiée en 2015. C'est une réécriture complète en rupture totale des deux versions qui l'ont précédé. diff --git a/doc/about/tech.rst b/doc/about/tech.rst index 96677351..76ea16e9 100644 --- a/doc/about/tech.rst +++ b/doc/about/tech.rst @@ -137,7 +137,7 @@ Sentry ~~~~~~ | `Site officiel `__ -| `Instance de l'AE `__ Sentry est une plate-forme libre qui permet de se tenir informer des bugs qui ont lieu sur le site. À chaque crash du logiciel (erreur 500), une erreur est envoyée sur la plate-forme et est indiqué précisément à quelle ligne de code celle-ci a eu lieu, à quelle heure, combien de fois, avec quel navigateur la page a été visitée et même éventuellement un commentaire de l'utilisateur qui a rencontré le bug. diff --git a/doc/index.rst b/doc/index.rst index ebbafc91..10fd9d74 100644 --- a/doc/index.rst +++ b/doc/index.rst @@ -28,5 +28,13 @@ Bienvenue sur la documentation du Sith de l'AE apps/core +Documents téléchargeables +------------------------- + +* :download:`Rapport de la TW de Skia sur la création du site ` +* :download:`Rapport sur la TO de Skia et LoJ ` +* :download:`Manuel du service E-transactions ` +* :download:`Guide de trésorerie ` + .. include:: ../README.rst :start-after: body diff --git a/doc/start/install.rst b/doc/start/install.rst index b4b5d9a2..7ea55c07 100644 --- a/doc/start/install.rst +++ b/doc/start/install.rst @@ -26,7 +26,7 @@ Sur Ubuntu Sur MacOS ~~~~~~~~~ -Pour installer les dépendances, il est fortement recommandé d'installer le gestionnaire de paquets `homebrew `__. +Pour installer les dépendances, il est fortement recommandé d'installer le gestionnaire de paquets `homebrew `_. .. sourcecode:: bash @@ -70,15 +70,17 @@ Il faut toujours avoir préalablement activé l'environnement virtuel comme fait ./manage.py runserver -Le serveur est alors accessible à l'adresse `http://localhost:8000 `__. +Pour l'utiliser en local ou globalement pour la modifier, il existe une commande du site qui génère la documentation et lance un serveur la rendant accessible à l'adresse http://localhost:8080. .. sourcecode:: bash - ./manage.py documentation \ No newline at end of file + ./manage.py documentation