Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature]Admin/Brugere: Export af liste af Admins der ikke skal være admins mere #853

Open
mhewel opened this issue Feb 27, 2023 · 2 comments
Assignees
Labels
B Priority B feature ny oplevelse eller adfærd

Comments

@mhewel
Copy link
Contributor

mhewel commented Feb 27, 2023

Overordnet beskrivelse af funktionen

I forbindelse med oprydning af lukkede afdelinger/foreninger, er der nu lavet et manuelt SQL udtræk for at vise brugere der er

  • admin for (mindst) en afdeling der er lukket
  • admin for (mindst) en forening der er lukket
  • admin men ikke for en afdeling eller forening

Flg SQL virker:

SELECT au.username, TO_CHAR(au.last_login, 'YYYY-MM-DD') AS user_lastlogin, 'Forening' AS type, 
  mu.name, TO_CHAR(mu.closed_at, 'YYYY-MM-DD') AS closedate, 'Brugeren er Admin og har adgang til en lukket forening' AS info
FROM auth_user AS au,
  members_adminuserinformation AS ma, 
  members_adminuserinformation_unions AS mau,
  members_union mu
WHERE au.id = ma.user_id
  AND au.is_staff = true
  AND au.is_superuser = false
  AND mau.adminuserinformation_id = ma.id
  AND mu.id = mau.union_id
  AND mu.closed_at is NOT NULL AND mu.closed_at < NOW()
UNION
SELECT au.username, TO_CHAR(au.last_login, 'YYYY-MM-DD') AS user_lastlogin, 'Afdeling' AS type, 
  md.name, TO_CHAR(md.closed_dtm, 'YYYY-MM-DD') AS closedate, 'Brugeren er Admin og har adgang til en lukket afdeling' AS info
FROM auth_user AS au,  
  members_adminuserinformation AS ma, 
  members_adminuserinformation_departments AS mad,
  members_department md
WHERE au.id = ma.user_id
  AND au.is_staff = true
  AND au.is_superuser = false
  AND mad.adminuserinformation_id = ma.id
  AND md.id = mad.department_id
  AND md.closed_dtm is NOT NULL AND md.closed_dtm < NOW()
UNION
SELECT au.username, TO_CHAR(au.last_login, 'YYYY-MM-DD') AS user_lastlogin, ' ' AS type, 
  ' ' AS name,  ' ' AS closedate, 'Brugeren er Admin og har hverken adgang til foreninger eller afdelinger' AS info 
FROM auth_user AS au,
  members_adminuserinformation AS ma
WHERE au.is_staff = true
  AND au.is_superuser = false
  AND ma.user_id = au.id
  AND ma.id NOT IN
  ( SELECT DISTINCT x.adminuserinformation_id
    FROM
    ( SELECT adminuserinformation_id
      FROM members_adminuserinformation_unions
      UNION
      SELECT adminuserinformation_id
      FROM members_adminuserinformation_departments
    ) AS x 
  )
order by username 

Ideen er at lave en action der kan bruge ovenstående SQL og lave Export af CSV (husk UTF8 som i den andre CSV exports).

@mhewel mhewel added the feature ny oplevelse eller adfærd label Feb 27, 2023
@mhewel mhewel self-assigned this Feb 27, 2023
@lakridserne
Copy link
Contributor

Hvis vi vælger at lave så specifikke udtræk, bør vi automatisere hele processen.

@rasmusselsmark
Copy link
Contributor

Køres som cronjob (når vi er sikre på det virker 🙂 )

@rasmusselsmark rasmusselsmark added the B Priority B label Jun 12, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
B Priority B feature ny oplevelse eller adfærd
Projects
None yet
Development

No branches or pull requests

3 participants