Skip to content

Commit

Permalink
Merge pull request #39 from PnX-SI/develop
Browse files Browse the repository at this point in the history
Develop > Master / 1.2.0
  • Loading branch information
camillemonchicourt authored Oct 18, 2023
2 parents 479decc + fa252d8 commit 6baf6d5
Show file tree
Hide file tree
Showing 11 changed files with 230 additions and 137 deletions.
7 changes: 3 additions & 4 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,7 @@ jobs:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- uses: actions/setup-node@v3
- name: Frontend code formatting check (Prettier)
uses: creyD/[email protected]
with:
dry: True
prettier_options: --config frontend/.prettierrc --ignore-path frontend/.prettierignore --check frontend/**/*.ts
run: npm install prettier && npm run format:check
working-directory: ./frontend
16 changes: 16 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,23 @@
# Changelog

## 1.2.0 - La Brenne (2023-10-17)

Nécessite la version 2.13.3 (ou plus) de GeoNature.

**🚀 Nouveautés**

- Compatibilité avec GeoNature 2.13 et la refonte des permissions, en définissant les permissions disponibles du module (#22)

**🐛 Corrections**

- Correction de l'intersection des géométries (#30, by @cen-cgeier)
- Correction de la Github action de contrôle de formatage du code frontend (#33)
- Suppression des derniers restes de l'ancienne méthode d'accès à la configuration de GeoNature (`appConfig`)

## 1.1.1 (2023-06-06)

**🐛 Corrections**

- Remplacement de la vue matérialisée `pr_zh.atlas_app` par une vue (utilisée par la route `/api/zones_humides/pbf/complete`) pour corriger et simplifier la mise à jour des données de l'[atlas des zones humides](https://github.com/PnX-SI/GeoNature-ZH-atlas) (#24)

## 1.1.0 - Taillefer (2023-06-02)
Expand Down
4 changes: 3 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ Pour que la fonctionnalité d'export de PDF, fonctionne il est nécessaire d'ins

Cela est dû à la version de la lirairie Python `weasyprint` qui requiert ce paquet. Cela sera résolu quand cette librairie sera mise à jour car, dans les dernières versions, cette dépendance n'est plus requise.

Ne pas oublier de redémarrer GeoNature :
Ne pas oublier de redémarrer GeoNature après cette installation :
`sudo systemctl restart geonature`

## **Installation**
Expand Down Expand Up @@ -44,6 +44,8 @@ du fichier `zones_humides_config.toml.example` et en surcouchant uniquement les

Voir [ici](/doc/admin.md) la documentation des paramètres de configuration du module pour les administrateurs.

Il vous faut désormais attribuer des permissions aux groupes ou utilisateurs que vous souhaitez, pour qu'ils puissent accéder et utiliser le module (voir https://docs.geonature.fr/admin-manual.html#gestion-des-droits). Si besoin une commande permet d'attribuer automatiquement toutes les permissions dans tous les modules à un groupe ou utilisateur administrateur.

## **Mise à jour**

- Téléchargez la nouvelle version du module
Expand Down
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
1.1.1
1.2.0
3 changes: 1 addition & 2 deletions backend/gn_module_zh/geometry.py
Original file line number Diff line number Diff line change
Expand Up @@ -40,8 +40,7 @@ def set_geom(geometry, id_zh=None):
)
).scalar():
raise BadRequest("La ZH est entièrement dans une ZH existante")
intersect = DB.session.query(func.ST_Difference(polygon_geom, zh_geom))
polygon = DB.session.query(func.ST_GeomFromText(to_shape(intersect.scalar()))).one()[0]
polygon = DB.session.query(func.ST_Difference(polygon_geom, zh_geom)).scalar()
return {"polygon": polygon, "is_intersected": is_intersected}


Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
"""declare permisision
Revision ID: 510677623a13
Revises: 22b14fc3abe0
Create Date: 2023-05-25 15:33:36.262722
"""
from alembic import op
import sqlalchemy as sa


# revision identifiers, used by Alembic.
revision = "510677623a13"
down_revision = "643743e807f6"
branch_labels = None
depends_on = None


def upgrade():
op.execute(
"""
INSERT INTO
gn_permissions.t_permissions_available (
id_module,
id_object,
id_action,
label,
scope_filter
)
SELECT
m.id_module,
o.id_object,
a.id_action,
v.label,
v.scope_filter
FROM
(
VALUES
('ZONES_HUMIDES', 'ALL', 'C', True, 'Créer des ZH')
,('ZONES_HUMIDES', 'ALL', 'R', True, 'Voir les ZH')
,('ZONES_HUMIDES', 'ALL', 'U', True, 'Modifier les ZH')
,('ZONES_HUMIDES', 'ALL', 'D', True, 'Supprimer des ZH')
) AS v (module_code, object_code, action_code, scope_filter, label)
JOIN
gn_commons.t_modules m ON m.module_code = v.module_code
JOIN
gn_permissions.t_objects o ON o.code_object = v.object_code
JOIN
gn_permissions.bib_actions a ON a.code_action = v.action_code
"""
)
op.execute(
"""
WITH bad_permissions AS (
SELECT
p.id_permission
FROM
gn_permissions.t_permissions p
JOIN gn_commons.t_modules m
USING (id_module)
WHERE
m.module_code = 'ZONES_HUMIDES'
EXCEPT
SELECT
p.id_permission
FROM
gn_permissions.t_permissions p
JOIN gn_permissions.t_permissions_available pa ON
(p.id_module = pa.id_module
AND p.id_object = pa.id_object
AND p.id_action = pa.id_action)
)
DELETE
FROM
gn_permissions.t_permissions p
USING bad_permissions bp
WHERE
bp.id_permission = p.id_permission;
"""
)


def downgrade():
op.execute(
"""
DELETE FROM
gn_permissions.t_permissions_available pa
USING
gn_commons.t_modules m
WHERE
pa.id_module = m.id_module
AND
module_code = 'ZONES_HUMIDES'
"""
)
Loading

0 comments on commit 6baf6d5

Please sign in to comment.