Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
I
intranet-forum
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
project-open
intranet-forum
Commits
2ec1a63b
Commit
2ec1a63b
authored
Jul 08, 2005
by
Frank Bergmann
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
- Exported translation catalogs
parent
79d43715
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
24 additions
and
8 deletions
+24
-8
intranet-forum-create.sql
sql/postgresql/intranet-forum-create.sql
+24
-8
No files found.
sql/postgresql/intranet-forum-create.sql
View file @
2ec1a63b
...
@@ -160,7 +160,6 @@ execute procedure im_forum_topics_update_tr ();
...
@@ -160,7 +160,6 @@ execute procedure im_forum_topics_update_tr ();
create
or
replace
function
im_forum_permission
(
integer
,
integer
,
integer
,
integer
,
varchar
,
integer
,
integer
,
integer
,
integer
)
create
or
replace
function
im_forum_permission
(
integer
,
integer
,
integer
,
integer
,
varchar
,
integer
,
integer
,
integer
,
integer
)
returns
integer
as
'
returns
integer
as
'
DECLARE
DECLARE
p_user_id alias for $1;
p_user_id alias for $1;
p_owner_id alias for $2;
p_owner_id alias for $2;
p_asignee_id alias for $3;
p_asignee_id alias for $3;
...
@@ -169,22 +168,39 @@ DECLARE
...
@@ -169,22 +168,39 @@ DECLARE
p_user_is_object_member alias for $6;
p_user_is_object_member alias for $6;
p_user_is_object_admin alias for $7;
p_user_is_object_admin alias for $7;
p_user_is_employee alias for $8;
p_user_is_employee alias for $8;
p_user_is_c
ompany
alias for $9;
p_user_is_c
ustomer
alias for $9;
v_permission_p integer;
v_permission_p integer;
BEGIN
BEGIN
IF p_user_id = p_owner_id THEN RETURN 1; END IF;
-- The owner should always be able to see his or her item
IF p_asignee_id = p_user_id THEN RETURN 1; END IF;
IF p_user_id = p_owner_id THEN RETURN 1; END IF;
IF p_scope =
''
public
''
THEN RETURN 1; END IF;
IF p_scope =
''
group
''
THEN RETURN p_user_is_object_member; END IF;
-- The asignee should always see his tasks.
IF p_scope =
''
pm
''
THEN RETURN p_user_is_object_admin; END IF;
IF p_asignee_id = p_user_id THEN RETURN 1; END IF;
-- If public then Yes.
IF p_scope =
''
public
''
THEN RETURN 1; END IF;
-- All group
IF p_scope =
''
group
''
THEN RETURN p_user_is_object_member; END IF;
-- Only PMs (=object admins)
IF p_scope =
''
pm
''
THEN RETURN p_user_is_object_admin; END IF;
IF p_scope =
''
client
''
AND p_user_is_company = 1 THEN
-- Customers and the PM only
IF p_scope =
''
client
''
AND p_user_is_customer = 1 THEN
RETURN p_user_is_object_member;
RETURN p_user_is_object_member;
END IF;
END IF;
-- Staff only members
IF p_scope =
''
staff
''
AND p_user_is_employee = 1 THEN
IF p_scope =
''
staff
''
AND p_user_is_employee = 1 THEN
RETURN p_user_is_object_member;
RETURN p_user_is_object_member;
END IF;
END IF;
-- Staff and Provider member - no customers
IF p_scope =
''
not_client
''
AND NOT p_user_is_customer = 1 THEN
RETURN p_user_is_object_member;
END IF;
RETURN 0;
RETURN 0;
end;'
language
'plpgsql'
;
end;'
language
'plpgsql'
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment