PaferaPy Async 0.1
ASGI framework focused on simplicity and efficiency
Loading...
Searching...
No Matches
initapp.py
Go to the documentation of this file.
1#!/usr/bin/python
2# -*- coding: utf-8 -*-
3#
4# Standard Pafera app functions called when the app is added or
5# removed to the system.
6
7from pafera.db import *
8from apps.system.group import *
9
10# *********************************************************************
12 db = g.db
13
14 needcommit = 0
15
16 if not db.Find(system_group, 'WHERE groupname = ?', 'students'):
17 newgroup = system_group()
18 newgroup.Set(
19 displayname = {'en': 'Students'},
20 groupname = 'students',
21 )
22 db.Save(newgroup)
23 needcommit = 1
24
25 if not db.Find(system_group, 'WHERE groupname = ?', 'teachers'):
26 newgroup = system_group()
27 newgroup.Set(
28 displayname = {'en': 'Teachers'},
29 groupname = 'teachers',
30 )
31 db.Save(newgroup)
32 needcommit = 1
33
34 if not db.Find(system_group, 'WHERE groupname = ?', 'school.administrators'):
35 newgroup = system_group()
36 newgroup.Set(
37 displayname = {'en': 'School Administrators'},
38 groupname = 'school.administrators',
39 )
40 db.Save(newgroup)
41 needcommit = 1
42
43 if not db.Find(system_group, 'WHERE groupname = ?', 'school.system.administrators'):
44 newgroup = system_group()
45 newgroup.Set(
46 displayname = {'en': 'School System Administrators'},
47 groupname = 'school.system.administrators',
48 )
49 db.Save(newgroup)
50 needcommit = 1
51
52 if needcommit:
53 db.Commit()
54
55# *********************************************************************
57 db = g.db
58
59 needcommit = 0
60
61 for r in [
62 'students',
63 'teachers',
64 'school.administrators',
65 'school.system.administrators',
66 ]:
67
68 group = db.Find(system_group, 'WHERE groupname = ?', r)
69
70 if group:
71 db.Delete(group[0])
72 needcommit = 1
73
74 if needcommit:
75 db.Commit()
76
77
def OnAppDelete(g)
Definition: initapp.py:56
def OnAppInstall(g)
Definition: initapp.py:11
Definition: db.py:1