Index: openacs-4/packages/dotlrn/sql/oracle/dotlrn-create.sql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn/sql/oracle/dotlrn-create.sql,v
diff -u -r1.19.2.1 -r1.19.2.2
--- openacs-4/packages/dotlrn/sql/oracle/dotlrn-create.sql 21 Feb 2004 02:36:51 -0000 1.19.2.1
+++ openacs-4/packages/dotlrn/sql/oracle/dotlrn-create.sql 24 Feb 2004 19:56:29 -0000 1.19.2.2
@@ -38,4 +38,5 @@
@@ security-create.sql
@@ user-extension-create.sql
@@ custom-permissions.sql
-@@ privacy-init.sql
\ No newline at end of file
+@@ privacy-init.sql
+@@ privacy-package-create.sql
Index: openacs-4/packages/dotlrn/sql/oracle/privacy-init.sql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn/sql/oracle/privacy-init.sql,v
diff -u -r1.1.2.1 -r1.1.2.2
--- openacs-4/packages/dotlrn/sql/oracle/privacy-init.sql 21 Feb 2004 02:34:38 -0000 1.1.2.1
+++ openacs-4/packages/dotlrn/sql/oracle/privacy-init.sql 24 Feb 2004 19:56:29 -0000 1.1.2.2
@@ -92,33 +92,3 @@
and (r.rel_type = 'dotlrn_guest_rel'
or r.rel_type = 'dotlrn_non_guest_rel')
and r.object_id_one = acs.magic_object_id('registered_users');
-
---
--- Provides extra checking to a simple view query, since Guest status is not
--- yet used uniformly across OACS.
---
-create or replace function dotlrn_guest_p (
- v_user_id in integer
-) return char
-as
- v_count integer;
- v_guest_p char(1);
-begin
- select count(*) into v_count from dotlrn_guest_status where user_id = v_user_id;
- if v_count > 1 then
- raise_application_error (
- -20000,
- 'Guest status is multiply defined for user ' || v_user_id
- );
- end if;
- if v_count = 0 then
- raise_application_error (
- -20000,
- 'Guest status is not defined for user ' || v_user_id
- );
- end if;
- select guest_p into v_guest_p from dotlrn_guest_status where user_id = v_user_id;
- return v_guest_p;
-end;
-/
-show errors
Fisheye: Tag 1.1 refers to a dead (removed) revision in file `openacs-4/packages/dotlrn/sql/oracle/privacy-package-create.sql'.
Fisheye: No comparison available. Pass `N' to diff?
Index: openacs-4/packages/dotlrn/sql/postgresql/dotlrn-create.sql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn/sql/postgresql/dotlrn-create.sql,v
diff -u -r1.10.2.1 -r1.10.2.2
--- openacs-4/packages/dotlrn/sql/postgresql/dotlrn-create.sql 21 Feb 2004 02:36:51 -0000 1.10.2.1
+++ openacs-4/packages/dotlrn/sql/postgresql/dotlrn-create.sql 24 Feb 2004 19:56:29 -0000 1.10.2.2
@@ -38,3 +38,4 @@
\i user-extension-create.sql
\i custom-permissions.sql
\i privacy-init.sql
+\i privacy-package-create.sql
Index: openacs-4/packages/dotlrn/sql/postgresql/privacy-init.sql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn/sql/postgresql/privacy-init.sql,v
diff -u -r1.1.2.2 -r1.1.2.3
--- openacs-4/packages/dotlrn/sql/postgresql/privacy-init.sql 21 Feb 2004 05:20:56 -0000 1.1.2.2
+++ openacs-4/packages/dotlrn/sql/postgresql/privacy-init.sql 24 Feb 2004 19:56:29 -0000 1.1.2.3
@@ -97,120 +97,3 @@
and (r.rel_type = 'dotlrn_guest_rel'
or r.rel_type = 'dotlrn_non_guest_rel')
and r.object_id_one = acs__magic_object_id('registered_users');
-
---
--- Provides extra checking to a simple view query, since Guest status is not
--- yet used uniformly across OACS.
---
-create or replace function dotlrn_guest_p (integer)
-returns char as '
-declare
- v_user_id alias for $1;
- v_count integer;
- v_guest_p char(1);
-begin
- select count(*) into v_count from dotlrn_guest_status where user_id = v_user_id;
- if v_count > 1 then
- raise EXCEPTION ''-20000: Guest status is multiply defined for user %'', v_user_id;
- end if;
- if v_count = 0 then
- raise EXCEPTION ''-20000: Guest status is not defined for user %'', v_user_id;
- end if;
- select guest_p into v_guest_p from dotlrn_guest_status where user_id = v_user_id;
- return v_guest_p;
-end;' language 'plpgsql';
-
-create or replace function dotlrn_privacy__set_user_non_guest (integer)
-returns integer as '
-declare
- v_user_id alias for $1;
- v_rel_id integer;
- cur record;
-begin
- for cur in
- select r.rel_id
- from acs_rels r,
- membership_rels m
- where m.rel_id = r.rel_id
- and (r.rel_type = ''dotlrn_guest_rel''
- or r.rel_type = ''dotlrn_non_guest_rel'')
- and r.object_id_one = acs__magic_object_id(''registered_users'')
- and r.object_id_two = v_user_id
- loop
- perform membership_rel__delete(cur.rel_id);
- end loop;
- v_rel_id := membership_rel__new(
- null,
- ''dotlrn_non_guest_rel'',
- acs__magic_object_id(''registered_users''),
- v_user_id,
- ''approved'',
- null,
- null
- );
-
- return 0;
-end;' language 'plpgsql';
-
-create or replace function dotlrn_privacy__set_user_guest (integer)
-returns integer as '
-declare
- v_user_id alias for $1;
- v_rel_id integer;
- cur record;
-begin
- for cur in
- select r.rel_id
- from acs_rels r,
- membership_rels m
- where m.rel_id = r.rel_id
- and (r.rel_type = ''dotlrn_guest_rel''
- or r.rel_type = ''dotlrn_non_guest_rel'')
- and r.object_id_one = acs__magic_object_id(''registered_users'')
- and r.object_id_two = v_user_id
- loop
- perform membership_rel__delete(cur.rel_id);
- end loop;
- v_rel_id := membership_rel__new(
- null,
- ''dotlrn_guest_rel'',
- acs__magic_object_id(''registered_users''),
- v_user_id,
- ''approved'',
- null,
- null
- );
-
- return 0;
-end;' language 'plpgsql';
-
-create or replace function dotlrn_privacy__grant_rd_prv_dt_for_rel (integer,varchar)
-returns integer as '
-declare
- v_object_id alias for $1;
- v_rel_type alias for $2;
- v_segment_id integer;
-begin
- select segment_id into v_segment_id
- from rel_segments
- where group_id = acs__magic_object_id(''registered_users'')
- and rel_type = v_rel_type;
- perform acs_permission__grant_permission(v_object_id,v_segment_id,''read_private_data'');
- return 0;
-end;' language 'plpgsql';
-
-create or replace function dotlrn_privacy__revoke_rd_prv_dt_for_rel (integer,varchar)
-returns integer as '
-declare
- v_object_id alias for $1;
- v_rel_type alias for $2;
- v_segment_id integer;
-begin
- select segment_id into v_segment_id
- from rel_segments
- where group_id = acs__magic_object_id(''registered_users'')
- and rel_type = v_rel_type;
- perform acs_permission__revoke_permission(v_object_id,v_segment_id,''read_private_data'');
- return 0;
-end;' language 'plpgsql';
-
Fisheye: Tag 1.1 refers to a dead (removed) revision in file `openacs-4/packages/dotlrn/sql/postgresql/privacy-package-create.sql'.
Fisheye: No comparison available. Pass `N' to diff?
Index: openacs-4/packages/dotlrn/tcl/privacy-procs-oracle.xql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn/tcl/privacy-procs-oracle.xql,v
diff -u -r1.1.2.1 -r1.1.2.2
--- openacs-4/packages/dotlrn/tcl/privacy-procs-oracle.xql 21 Feb 2004 02:34:38 -0000 1.1.2.1
+++ openacs-4/packages/dotlrn/tcl/privacy-procs-oracle.xql 24 Feb 2004 19:56:30 -0000 1.1.2.2
@@ -5,64 +5,24 @@
- declare
- v_rel_id integer;
begin
- for cur in (select r.rel_id from acs_rels r,
- membership_rels m
- where m.rel_id = r.rel_id
- and (r.rel_type = 'dotlrn_guest_rel'
- or r.rel_type = 'dotlrn_non_guest_rel')
- and r.object_id_one = acs.magic_object_id('registered_users')
- and r.object_id_two = :user_id)
- loop
- membership_rel.del(cur.rel_id);
- end loop;
- v_rel_id := membership_rel.new(
- rel_type => 'dotlrn_non_guest_rel',
- object_id_one => acs.magic_object_id('registered_users'),
- object_id_two => :user_id,
- member_state => 'approved'
- );
+ dotlrn_privacy.set_user_non_guest(:user_id);
end;
- declare
- v_rel_id integer;
begin
- for cur in (select r.rel_id from acs_rels r,
- membership_rels m
- where m.rel_id = r.rel_id
- and (r.rel_type = 'dotlrn_guest_rel'
- or r.rel_type = 'dotlrn_non_guest_rel')
- and r.object_id_one = acs.magic_object_id('registered_users')
- and r.object_id_two = :user_id)
- loop
- membership_rel.del(cur.rel_id);
- end loop;
- v_rel_id := membership_rel.new(
- rel_type => 'dotlrn_guest_rel',
- object_id_one => acs.magic_object_id('registered_users'),
- object_id_two => :user_id,
- member_state => 'approved'
- );
+ dotlrn_privacy.set_user_guest(:user_id);
end;
- declare
- v_segment_id integer;
begin
- select segment_id into v_segment_id
- from rel_segments
- where group_id = acs.magic_object_id('registered_users')
- and rel_type = :rel_type;
- acs_permission.${action}_permission(:object_id,v_segment_id,'read_private_data');
+ dotlrn_privacy.${db_proc}(:object_id,:rel_type);
end;
Index: openacs-4/packages/dotlrn/tcl/privacy-procs-postgresql.xql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn/tcl/privacy-procs-postgresql.xql,v
diff -u -r1.1.2.3 -r1.1.2.4
--- openacs-4/packages/dotlrn/tcl/privacy-procs-postgresql.xql 21 Feb 2004 05:20:56 -0000 1.1.2.3
+++ openacs-4/packages/dotlrn/tcl/privacy-procs-postgresql.xql 24 Feb 2004 19:56:30 -0000 1.1.2.4
@@ -17,7 +17,7 @@
- select dotlrn_privacy__${action}_rd_prv_dt_for_rel(:object_id,:rel_type)
+ select dotlrn_privacy__${db_proc}(:object_id,:rel_type)
Index: openacs-4/packages/dotlrn/tcl/privacy-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn/tcl/privacy-procs.tcl,v
diff -u -r1.1.2.1 -r1.1.2.2
--- openacs-4/packages/dotlrn/tcl/privacy-procs.tcl 21 Feb 2004 02:34:38 -0000 1.1.2.1
+++ openacs-4/packages/dotlrn/tcl/privacy-procs.tcl 24 Feb 2004 19:56:30 -0000 1.1.2.2
@@ -44,6 +44,11 @@
action should be "grant" or "revoke"
rel_type should be "dotlrn_guest_rel" or "dotlrn_non_guest_rel"
} {
+ if { [string equal $action "grant"] } {
+ set db_proc "grant_rd_prv_dt_to_rel"
+ } else {
+ set db_proc "revoke_rd_prv_dt_from_rel"
+ }
db_exec_plsql set_read_private_data_for_rel {}
}
Index: openacs-4/packages/dotlrn/www/admin/user-edit-oracle.xql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn/www/admin/user-edit-oracle.xql,v
diff -u -r1.8.6.1 -r1.8.6.2
--- openacs-4/packages/dotlrn/www/admin/user-edit-oracle.xql 21 Feb 2004 02:36:51 -0000 1.8.6.1
+++ openacs-4/packages/dotlrn/www/admin/user-edit-oracle.xql 24 Feb 2004 19:56:30 -0000 1.8.6.2
@@ -10,7 +10,7 @@
dotlrn_users.last_name,
dotlrn_users.email,
dotlrn_users.type,
- dotlrn_guest_p(:user_id) as guest_p
+ dotlrn_privacy.guest_p(:user_id) as guest_p
from dotlrn_users
where dotlrn_users.user_id = :user_id
Index: openacs-4/packages/dotlrn/www/admin/user-edit-postgresql.xql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn/www/admin/user-edit-postgresql.xql,v
diff -u -r1.1.6.1 -r1.1.6.2
--- openacs-4/packages/dotlrn/www/admin/user-edit-postgresql.xql 21 Feb 2004 02:36:51 -0000 1.1.6.1
+++ openacs-4/packages/dotlrn/www/admin/user-edit-postgresql.xql 24 Feb 2004 19:56:30 -0000 1.1.6.2
@@ -10,7 +10,7 @@
dotlrn_users.last_name,
dotlrn_users.email,
dotlrn_users.type,
- dotlrn_guest_p(:user_id) as guest_p
+ dotlrn_privacy__guest_p(:user_id) as guest_p
from dotlrn_users
where dotlrn_users.user_id = :user_id
Index: openacs-4/packages/dotlrn/www/admin/users-chunk-large-oracle.xql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn/www/admin/users-chunk-large-oracle.xql,v
diff -u -r1.14.2.1 -r1.14.2.2
--- openacs-4/packages/dotlrn/www/admin/users-chunk-large-oracle.xql 21 Feb 2004 02:36:51 -0000 1.14.2.1
+++ openacs-4/packages/dotlrn/www/admin/users-chunk-large-oracle.xql 24 Feb 2004 19:56:30 -0000 1.14.2.2
@@ -9,7 +9,7 @@
dotlrn_users.first_names,
dotlrn_users.last_name,
dotlrn_users.email,
- dotlrn_guest_p(dotlrn_users.user_id) as guest_p,
+ dotlrn_privacy.guest_p(dotlrn_users.user_id) as guest_p,
acs_permission.permission_p(:root_object_id, dotlrn_users.user_id, 'admin') as site_wide_admin_p
from dotlrn_users
where dotlrn_users.type = :type
Index: openacs-4/packages/dotlrn/www/admin/users-chunk-large-postgresql.xql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn/www/admin/users-chunk-large-postgresql.xql,v
diff -u -r1.3.2.1 -r1.3.2.2
--- openacs-4/packages/dotlrn/www/admin/users-chunk-large-postgresql.xql 21 Feb 2004 02:36:51 -0000 1.3.2.1
+++ openacs-4/packages/dotlrn/www/admin/users-chunk-large-postgresql.xql 24 Feb 2004 19:56:30 -0000 1.3.2.2
@@ -9,7 +9,7 @@
dotlrn_users.first_names,
dotlrn_users.last_name,
dotlrn_users.email,
- dotlrn_guest_p(dotlrn_users.user_id) as guest_p,
+ dotlrn_privacy__guest_p(dotlrn_users.user_id) as guest_p,
acs_permission__permission_p(:root_object_id, dotlrn_users.user_id, 'admin') as site_wide_admin_p
from dotlrn_users
where dotlrn_users.type = :type
Index: openacs-4/packages/dotlrn/www/admin/users-chunk-medium-oracle.xql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn/www/admin/users-chunk-medium-oracle.xql,v
diff -u -r1.15.2.1 -r1.15.2.2
--- openacs-4/packages/dotlrn/www/admin/users-chunk-medium-oracle.xql 21 Feb 2004 02:36:51 -0000 1.15.2.1
+++ openacs-4/packages/dotlrn/www/admin/users-chunk-medium-oracle.xql 24 Feb 2004 19:56:30 -0000 1.15.2.2
@@ -9,7 +9,7 @@
dotlrn_users.first_names,
dotlrn_users.last_name,
dotlrn_users.email,
- dotlrn_guest_p(dotlrn_users.user_id) as guest_p,
+ dotlrn_privacy.guest_p(dotlrn_users.user_id) as guest_p,
acs_permission.permission_p(:root_object_id, dotlrn_users.user_id, 'admin') as site_wide_admin_p
from dotlrn_users
where dotlrn_users.type = :type
@@ -24,7 +24,7 @@
dotlrn_users.first_names,
dotlrn_users.last_name,
dotlrn_users.email,
- dotlrn_guest_p(dotlrn_users.user_id) as guest_p,
+ dotlrn_privacy.guest_p(dotlrn_users.user_id) as guest_p,
acs_permission.permission_p(:root_object_id, dotlrn_users.user_id, 'admin') as site_wide_admin_p
from dotlrn_users
where dotlrn_users.type = :type
Index: openacs-4/packages/dotlrn/www/admin/users-chunk-medium-postgresql.xql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn/www/admin/users-chunk-medium-postgresql.xql,v
diff -u -r1.3.2.1 -r1.3.2.2
--- openacs-4/packages/dotlrn/www/admin/users-chunk-medium-postgresql.xql 21 Feb 2004 02:36:51 -0000 1.3.2.1
+++ openacs-4/packages/dotlrn/www/admin/users-chunk-medium-postgresql.xql 24 Feb 2004 19:56:30 -0000 1.3.2.2
@@ -9,7 +9,7 @@
dotlrn_users.first_names,
dotlrn_users.last_name,
dotlrn_users.email,
- dotlrn_guest_p(dotlrn_users.user_id) as guest_p,
+ dotlrn_privacy__guest_p(dotlrn_users.user_id) as guest_p,
acs_permission__permission_p(:root_object_id, dotlrn_users.user_id, 'admin') as site_wide_admin_p
from dotlrn_users
where dotlrn_users.type = :type
@@ -24,7 +24,7 @@
dotlrn_users.first_names,
dotlrn_users.last_name,
dotlrn_users.email,
- dotlrn_guest_p(dotlrn_users.user_id) as guest_p,
+ dotlrn_privacy__guest_p(dotlrn_users.user_id) as guest_p,
acs_permission__permission_p(:root_object_id, dotlrn_users.user_id, 'admin') as site_wide_admin_p
from dotlrn_users
where dotlrn_users.type = :type
Index: openacs-4/packages/dotlrn/www/admin/users-chunk-small-oracle.xql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn/www/admin/users-chunk-small-oracle.xql,v
diff -u -r1.15.2.1 -r1.15.2.2
--- openacs-4/packages/dotlrn/www/admin/users-chunk-small-oracle.xql 21 Feb 2004 02:36:51 -0000 1.15.2.1
+++ openacs-4/packages/dotlrn/www/admin/users-chunk-small-oracle.xql 24 Feb 2004 19:56:30 -0000 1.15.2.2
@@ -9,7 +9,7 @@
dotlrn_users.first_names,
dotlrn_users.last_name,
dotlrn_users.email,
- dotlrn_guest_p(dotlrn_users.user_id) as guest_p,
+ dotlrn_privacy.guest_p(dotlrn_users.user_id) as guest_p,
acs_permission.permission_p(:root_object_id, dotlrn_users.user_id, 'admin') as site_wide_admin_p
from dotlrn_users
where dotlrn_users.type = :type
Index: openacs-4/packages/dotlrn/www/admin/users-chunk-small-postgresql.xql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn/www/admin/users-chunk-small-postgresql.xql,v
diff -u -r1.3.2.1 -r1.3.2.2
--- openacs-4/packages/dotlrn/www/admin/users-chunk-small-postgresql.xql 21 Feb 2004 02:36:51 -0000 1.3.2.1
+++ openacs-4/packages/dotlrn/www/admin/users-chunk-small-postgresql.xql 24 Feb 2004 19:56:30 -0000 1.3.2.2
@@ -9,7 +9,7 @@
dotlrn_users.first_names,
dotlrn_users.last_name,
dotlrn_users.email,
- dotlrn_guest_p(dotlrn_users.user_id) as guest_p,
+ dotlrn_privacy__guest_p(dotlrn_users.user_id) as guest_p,
acs_permission__permission_p(:root_object_id,dotlrn_users.user_id, 'admin') as site_wide_admin_p
from dotlrn_users
where dotlrn_users.type = :type