Index: openacs-4/packages/dotlrn-catalog/www/doc/ch01.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn-catalog/www/doc/ch01.html,v diff -u -r1.2 -r1.3 --- openacs-4/packages/dotlrn-catalog/www/doc/ch01.html 10 Jul 2006 21:40:19 -0000 1.2 +++ openacs-4/packages/dotlrn-catalog/www/doc/ch01.html 11 Jul 2006 09:03:14 -0000 1.3 @@ -1,3 +1,47 @@ - - - Chapter 1. DESIGN

Chapter 1. DESIGN

Table of Contents

1. Data Model:
2. Content Folder
3. Roles
4. Relations
5. Privileges
6. Category Tree

The dotLRN-Catalog package make use of various packages like acs-content-repository, categories, assessment dotLRN. It makes use of acs-content-repository API to create the data-table and store the data in the database. It is designed to provide professors a way to create courses that can have different versions (revisions) and than can be associated to dotLRN classes and communities, categorized in different categories, and also associate one assessment that will provide a way to the users to register to the system, enroll to different dotlrn classes, make member of communities, etc.

\ No newline at end of file +Chapter�1.�DESIGN

Chapter�1.�DESIGN

Table of Contents

Data Model:
Content Folder
Roles
Relations
Privileges
Category Tree

The dotLRN-Catalog package make use of various packages like + acs-content-repository, categories, assessment dotLRN. It makes use of + acs-content-repository API to create the data-table and store the data in + the database. It is designed to provide professors a way to create courses + that can have different versions (revisions) and than can be associated to + dotLRN classes and communities, categorized in different categories, and + also associate one assessment that will provide a way to the users to + register to the system, enroll to different dotlrn classes, make member of + communities, etc.

Data Model:

The basic table that has all the information about dotlrn-catalog + courses is:

image showing dotlrn_catalog table

I

Indexes: "dotlrn_catalog_pkey" primary key, + btree (course_id) Foreign-key constraints: "$1" FOREIGN KEY (course_id) + REFERENCES cr_revisions(revision_id)

The new content_type and attribute table are created with the + after-install apm-callback-proc as follows:

+        content::type::new -content_type "dotlrn_catalog" \
+                           -pretty_name "DotLRN Catalog" \ 
+                           -pretty_plural "DotLRN Catalog" \
+                           -table_name "dotlrn_catalog" \
+                           -id_column "course_id"
+      
+      # now set up the attributes that by default we need for the course
+      
+      content::type::attribute::new -content_type "dotlrn_catalog" \
+                                    -attribute_name "course_key" \
+                                    -datatype "string" \
+                                    -pretty_name "Course Key" \
+                                    -pretty_plural "Course Key" \
+                                    -sort_order 1 \ 
+                                    -column_spec "varchar(50)"
+      content::type::attribute::new -content_type "dotlrn_catalog" \
+                                    -attribute_name "course_name" \
+                                    -datatype "string" \
+                                    -pretty_name "Course Name" \
+                                    -sort_order 2 \
+                                    -column_spec "varchar(200)"
+      content::type::attribute::new -content_type "dotlrn_catalog" \
+                                    -attribute_name "course_info" \
+                                    -datatype "text" \
+                                    -pretty_name "Course Information" \
+                                    -sort_order 3 \
+                                    -column_spec "text"
+      content::type::attribute::new -content_type "dotlrn_catalog" \
+                                    -attribute_name "assessment_id" \
+                                    -datatype "integer" \
+                                    -pretty_name "Assessment ID" \
+                                    -sort_order 4 \
+                                    -column_spec "integer"
+      
Index: openacs-4/packages/dotlrn-catalog/www/doc/ch01s02.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn-catalog/www/doc/ch01s02.html,v diff -u -r1.1 -r1.2 --- openacs-4/packages/dotlrn-catalog/www/doc/ch01s02.html 5 Mar 2005 23:02:43 -0000 1.1 +++ openacs-4/packages/dotlrn-catalog/www/doc/ch01s02.html 11 Jul 2006 09:03:14 -0000 1.2 @@ -1,3 +1,7 @@ - - - 2. Content Folder

2. Content Folder

To store the the courses in the Conten Repository, a content-folder with name and label "DotLRN Catalog" was created. Also the previously created content_type is registered to the folder, by calling to the same after-install apm-callback-proc as follows:

set folder_id [content::folder::new -name "DotLRN Catalog" -label "DotLRN Catalog"] content::folder::register_content_type -folder_id $folder_id -content_type "dotlrn_catalog"

\ No newline at end of file +Content Folder

Content Folder

To store the the courses in the Content Repository, a + content-folder with name and label "DotLRN Catalog" was created. Also + the previously created content_type is registered to the folder, by + calling to the same after-install apm-callback-proc as follows:

+      set folder_id [content::folder::new -name "DotLRN Catalog" -label "DotLRN Catalog"]
+      content::folder::register_content_type -folder_id $folder_id -content_type "dotlrn_catalog"
+      
Index: openacs-4/packages/dotlrn-catalog/www/doc/ch01s03.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn-catalog/www/doc/ch01s03.html,v diff -u -r1.1 -r1.2 --- openacs-4/packages/dotlrn-catalog/www/doc/ch01s03.html 5 Mar 2005 23:02:43 -0000 1.1 +++ openacs-4/packages/dotlrn-catalog/www/doc/ch01s03.html 11 Jul 2006 09:03:14 -0000 1.2 @@ -1,3 +1,33 @@ - - - 3. Roles

3. Roles

Three new roles were created to use them when createing the relations. The first one is for the dotlrn-catalog course and it's called d_catalog_role, the second one is for the dotlrn class and it's called dotlrn-class_role and the last one is for the dotlrn communities and it's called dotlrn_com_role. This roles are the first thing that the package create on installation and their creation code is:

\ No newline at end of file +Roles

Roles

Three new roles were created to use them when creating the + relations. The first one is for the dotlrn-catalog course and it's + called d_catalog_role, the second one is for the dotlrn class and it's + called dotlrn-class_role and the last one is for the dotlrn communities + and it's called dotlrn_com_role. This roles are the first thing that the + package create on installation and their creation code is:

Oracle:

+          begin 
+          acs_rel_type.create_role('d_catalog_role', 
+                                   'DotLRN Course Catalog Role', 
+                                   'DotLRN Course Catalog Role');
+          acs_rel_type.create_role('dotlrn_class_role', 
+                                   'dotLRN Class Role',
+                                   'dotLRN Class Role'); 
+          acs_rel_type.create_role('dotlrn_com_role',
+                                   'dotLRN Community Role', 
+                                   'dotLRN Community Role'); 
+          commit; end; /
+          show errors
+          

Postgres:

+          create function inline_0 ( ) returns integer as ' 
+          begin
+          PERFORM acs_rel_type__create_role(''d_catalog_role'', 
+                                            ''DotLRN Catalog Role'', 
+                                            ''DotLRN Catalog Role''); 
+          PERFORM acs_rel_type__create_role(''dotlrn_class_role'', 
+                                            ''dotLRN Class Role'', 
+                                            ''dotLRN Class Role''); 
+          PERFORM acs_rel_type__create_role(''dotlrn_com_role'', 
+                                            ''dotLRN Community Role'', 
+                                            ''dotLRN Community Role''); 
+          return 0; end;' language 'plpgsql'; 
+          select inline_0 ( ); drop function inline_0 ( );
+          
Index: openacs-4/packages/dotlrn-catalog/www/doc/ch01s04.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn-catalog/www/doc/ch01s04.html,v diff -u -r1.2 -r1.3 --- openacs-4/packages/dotlrn-catalog/www/doc/ch01s04.html 10 Jul 2006 21:40:19 -0000 1.2 +++ openacs-4/packages/dotlrn-catalog/www/doc/ch01s04.html 11 Jul 2006 09:03:14 -0000 1.3 @@ -1,9 +1,14 @@ - - - 4. Relations

4. Relations

Two new relations were created to associate dotlrn classes and communities to dotlrn-catalog courses. On associates the dotlrn_catalog type with dotlrn_class_instance type for dotlrn classes, and the other one associates the dotlrn_catalog type with dotlrn_club for the communities. Here is were the previous created roles take place:

-

To associate one course to dotlrn class

-
 rel_types::new -role_one d_catalog_role -role_two dotlrn_class_role dotlrn_catalog_class_rel \
- "DotLRN Catalog Class" "DotLRN Catalog Class" dotlrn_catalog 0 1 dotlrn_class_instance 0 1
-

To associate one course to dotrln community

 rel_types::new -role_one d_catalog_role -role_two dotlrn_com_role dotlrn_catalog_dotcom_rel \
- "DotLRN Catalog Community" "DotLRN Catalog Community" dotlrn_catalog 0 1 dotlrn_club 0 1

+Relations

Relations

Two new relations were created to associate dotlrn classes and + communities to dotlrn-catalog courses. On associates the dotlrn_catalog + type with dotlrn_class_instance type for dotlrn classes, and the other + one associates the dotlrn_catalog type with dotlrn_club for the + communities. Here is were the previous created roles take place:

# To associate one course to dotlrn 
+      class rel_types::new -role_one d_catalog_role \
+                           -role_two dotlrn_class_role dotlrn_catalog_class_rel \
+                           "DotLRN Catalog Class" "DotLRN Catalog Class" \
+                           dotlrn_catalog 0 1 dotlrn_class_instance 0 1
+      
# To associate one course to dotlrn community 
+        rel_types::new -role_one d_catalog_role -role_two dotlrn_com_role \
+                        dotlrn_catalog_dotcom_rel "DotLRN Catalog Community" \
+                        "DotLRN Catalog Community" dotlrn_catalog 0 1 dotlrn_club 0 1
+      
Index: openacs-4/packages/dotlrn-catalog/www/doc/ch01s05.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn-catalog/www/doc/ch01s05.html,v diff -u -r1.1 -r1.2 --- openacs-4/packages/dotlrn-catalog/www/doc/ch01s05.html 5 Mar 2005 23:02:43 -0000 1.1 +++ openacs-4/packages/dotlrn-catalog/www/doc/ch01s05.html 11 Jul 2006 09:03:14 -0000 1.2 @@ -1,3 +1,16 @@ - - - 5. Privileges

5. Privileges

Two privileges are managed in this package at differents levels, one is the privilige that a user has over dotlr-catalog package (admin, create, none), and the other one the privilege that the user has over one dotlrn-catalog course (admin,none). Depending of what privilege the users has, acces to some pages and the display of information will be different. For example if you you have admin or create privilege over dotlrn-catalog package then you can acces to every page under the "dotlrn-catalog/dt-catalog/" url, if you are admin all courses will be shown there but if you only have create privilege the only your courses will be show. When you create one course then the admin privilege will be granted to you over that course (item_id). There are two ways to grant permission to other users at the same two levels described before. The admin of dotlrn-catalog package can grant/revoke other users the create privilege over the package, and, any user can grant admin privilege over one of his courses to any other user in the system.

\ No newline at end of file +Privileges

Privileges

Two privileges are managed in this package at different levels, + one is the privilege that a user has over dotlrn-catalog package (admin, + create, none), and the other one the privilege that the user has over + one dotlrn-catalog course (admin,none). Depending of what privilege the + users has, access to some pages and the display of information will be + different. For example if you you have admin or create privilege over + dotlrn-catalog package then you can access to every page under the + "dotlrn-catalog/dt-catalog/" url, if you are admin all courses will be + shown there but if you only have create privilege the only your courses + will be show. When you create one course then the admin privilege will + be granted to you over that course (item_id). There are two ways to + grant permission to other users at the same two levels described before. + The admin of dotlrn-catalog package can grant/revoke other users the + create privilege over the package, and, any user can grant admin + privilege over one of his courses to any other user in the + system.

Index: openacs-4/packages/dotlrn-catalog/www/doc/ch01s06.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn-catalog/www/doc/ch01s06.html,v diff -u -r1.2 -r1.3 --- openacs-4/packages/dotlrn-catalog/www/doc/ch01s06.html 10 Jul 2006 21:40:19 -0000 1.2 +++ openacs-4/packages/dotlrn-catalog/www/doc/ch01s06.html 11 Jul 2006 09:03:14 -0000 1.3 @@ -1,3 +1,8 @@ - - - 6. Category Tree

6. Category Tree

The package installation also mounts an instance of itself under the dotlrn-catalog url, here another amp-callback-proc is called (after-mount) to create the category tree that will allow to categorize each course in different ways. The category tree is created as follows:

To categorize courses:

 set tree_id [category_tree::add -name "dotlrn-course-catalog"] category_tree::map -tree_id $tree_id -object_id $package_id -assign_single_p "t"
+Category Tree

Category Tree

The package installation also mounts an instance of itself under + the dotlrn-catalog url, here another amp-callback-proc is called + (after-mount) to create the category tree that will allow to categorize + each course in different ways. The category tree is created as + follows:

# To categorize courses 
+      set tree_id [category_tree::add -name "dotlrn-course-catalog"] 
+      category_tree::map -tree_id $tree_id -object_id $package_id -assign_single_p "t"
+      
Index: openacs-4/packages/dotlrn-catalog/www/doc/ch02.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn-catalog/www/doc/ch02.html,v diff -u -r1.1 -r1.2 --- openacs-4/packages/dotlrn-catalog/www/doc/ch02.html 5 Mar 2005 23:02:43 -0000 1.1 +++ openacs-4/packages/dotlrn-catalog/www/doc/ch02.html 11 Jul 2006 09:03:14 -0000 1.2 @@ -1,3 +1,10 @@ - - - Chapter 2. USERS MANUAL

Chapter 2. USERS MANUAL

Table of Contents

1. Manage Category Tree
2. Create New Course or New Course Version
3. Associate to dotLRN class or community
4. Delete one course
5. Changing between Course Versions
6. Grant/Revoke Permissions
7. Watch Course Details (Information)
8. Simple Users

Here are some simple statments to interact with the dotlrn-catalog package. For sections 2.1 to 2.6 the user requires to have create or admin privileges under the dotlrn-catalog, package. If you can see the Admin link in the top right corner of the page then you have privileges on the dotlrn-package. If you can't see it then you may be interested in Simple Users Section

\ No newline at end of file +Chapter�2.�USERS MANUAL

Chapter�2.�USERS MANUAL

Table of Contents

Manage Category Tree
Create New Course or New Course Version
Associate to dotLRN class or community
Delete one course
Changing between Course Versions
Grant/Revoke Permissions
Watch Course Details (Information)
Simple Users

Here are some simple statements to interact with the dotlrn-catalog + package. For sections 2.1 to 2.6 the user requires to have create or admin + privileges under the dotlrn-catalog, package. If you can see the Admin + link in the top right corner of the page then you have privileges on the + dotlrn-package. If you can't see it then you may be interested in Simple + Users Section

Manage Category Tree

Once you click to admin link then you will be redirected to your + course list page, where if you are dotlrn-catalog admin or + site-wide-admin then the link Manage Category Tree will appear:

image showing dotlrn_catalog table

Once you click on the link you will redirect to a page + were you can add/remove categories and subcategories to the already + created tree (dotlrn_catalog_tree).

image shows link in context of page
image shows example of a category edit button for a specific category
image showing ordering interface in context of two categories, 1 nested in the other
Index: openacs-4/packages/dotlrn-catalog/www/doc/ch02s02.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn-catalog/www/doc/ch02s02.html,v diff -u -r1.2 -r1.3 --- openacs-4/packages/dotlrn-catalog/www/doc/ch02s02.html 10 Jul 2006 21:40:19 -0000 1.2 +++ openacs-4/packages/dotlrn-catalog/www/doc/ch02s02.html 11 Jul 2006 09:03:14 -0000 1.3 @@ -1,3 +1,18 @@ - - - 2. Create New Course or New Course Version

2. Create New Course or New Course Version

To create a new course click on the New Course link and you will be redirect to a page were a form to create a new course is presented:

image shows an example of a 'new course' page.

To create a new course version click on the icon on the left of Course Key information and change the fields you want.

image showing a course in context with 'course key'

When creating a new course version the new information will be shown in all the site, you can change between all version.

image shows 'versions' link in context of a course

Also you can categorize your course latter if you didn't categorize it in the first place by making click in the course name ( redierects you to Course description) and then by making click on the Categorize button.

image showing the 'categorize' button as it would appear in line with a course
\ No newline at end of file +Create New Course or New Course Version

Create New Course or New Course Version

To create a new course click on the New Course link and you will + be redirect to a page were a form to create a new course is + presented:

image shows an example of a 'new course' page.

To create a new course version click on the icon on the + left of Course Key information and change the fields you want.

image showing a course in context with 'course key'

When creating a new course version the new information will be + shown in all the site, you can change between all version.

image shows 'versions' link in context of a course

Also you can categorize your course latter if you didn't + categorize it in the first place by making click in the course name ( + redirects you to Course description) and then by making click on the + Categorize button.

image showing the 'categorize' button as it would appear in-line with a course
Index: openacs-4/packages/dotlrn-catalog/www/doc/ch02s03.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn-catalog/www/doc/ch02s03.html,v diff -u -r1.2 -r1.3 --- openacs-4/packages/dotlrn-catalog/www/doc/ch02s03.html 10 Jul 2006 21:40:19 -0000 1.2 +++ openacs-4/packages/dotlrn-catalog/www/doc/ch02s03.html 11 Jul 2006 09:03:14 -0000 1.3 @@ -1,3 +1,9 @@ - - - 3. Associate to dotLRN class or community

3. Associate to dotLRN class or community

Each course can be associted to one or various dotlrn classes or communities. These associations will be displayed in the course description page to give the information to the user about the classess or communities that he/she will become a member of. You can associte one course by making click in the associte link in Your Course List or in the course description page.

image shows a course list showing one course.
image shows a message 'no associations' with a link to associate.

To associate classes or communities to the course select check boxes to associate one or various at the same time. Associate classes and communities individually.

image shows an example list of associated classes and communities, and links to associate more.

If you already have associations to dotLRN then a watch link will appear.

image shows example course.
image shows First Course with new example associations.
\ No newline at end of file +Associate to dotLRN class or community

Associate to dotLRN class or community

Each course can be associated to one or various dotlrn classes or + communities. These associations will be displayed in the course + description page to give the information to the user about the classes + or communities that he/she will become a member of. You can associate one + course by making click in the associate link in Your Course List or in + the course description page.

image shows a course list with one course
image shows a message 'no associations' with a link to associate

To associate classes or communities to the course select + check boxes to associate one or various at the same time. Associate + classes and communities individually.

image shows an example list of associated classes and communities, and links to associate more

If you already have associations to dotLRN then a watch + link will appear.

image shows example course
image shows First Course with new associations
Index: openacs-4/packages/dotlrn-catalog/www/doc/ch02s04.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn-catalog/www/doc/ch02s04.html,v diff -u -r1.2 -r1.3 --- openacs-4/packages/dotlrn-catalog/www/doc/ch02s04.html 10 Jul 2006 21:40:19 -0000 1.2 +++ openacs-4/packages/dotlrn-catalog/www/doc/ch02s04.html 11 Jul 2006 09:03:14 -0000 1.3 @@ -1,3 +1,6 @@ - - - 4. Delete one course

4. Delete one course

To delete one course you can click in trash icon on the right if you are in your course list or the delete button if you are in the Course Description page:

image shows one course from a list, with the trash can on the right

You will be redirected to a Delete Confirmation page were some information of the course (number of versions and associations) will be displayed and two buttons (OK, Cancel). If you OK then the course will be deleted including all associations and versions.

image shows an example confirmation message window.
\ No newline at end of file +Delete one course

Delete one course

To delete one course you can click in trash icon on the right if + you are in your course list or the delete button if you are in the + Course Description page:

image show one course from a list, with trash can on the right

You will be redirected to a Delete Confirmation page were + some information of the course (number of versions and associations) + will be displayed and two buttons (OK, Cancel). If you OK then the + course will be deleted including all associations and versions.

image shows an example confirmation message window
Index: openacs-4/packages/dotlrn-catalog/www/doc/ch02s05.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn-catalog/www/doc/ch02s05.html,v diff -u -r1.2 -r1.3 --- openacs-4/packages/dotlrn-catalog/www/doc/ch02s05.html 10 Jul 2006 21:40:19 -0000 1.2 +++ openacs-4/packages/dotlrn-catalog/www/doc/ch02s05.html 11 Jul 2006 09:03:14 -0000 1.3 @@ -1,3 +1,6 @@ - - - 5. Changing between Course Versions

5. Changing between Course Versions

To change between course versions you can click on the Course Key link on each course. You will be redirected to a page were all the versions of one course are listed with some information. The "Live" image indicates that this is the version that is shown in all the pages of dotlrn-catalog. The "Go live" button makes another revision of the list "live".

image shows course revisions with indication to which is live.
\ No newline at end of file +Changing between Course Versions

Changing between Course Versions

To change between course versions you can click on the Course Key + link on each course. You will be redirected to a page were all the + versions of one course are listed with some information. The "Live" + image indicates that this is the version that is shown in all the pages + of dotlrn-catalog. The "Go live" button makes another revision of the + list "live".

image shows course revisions with indication to which one is live
Index: openacs-4/packages/dotlrn-catalog/www/doc/ch02s06.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn-catalog/www/doc/ch02s06.html,v diff -u -r1.2 -r1.3 --- openacs-4/packages/dotlrn-catalog/www/doc/ch02s06.html 10 Jul 2006 21:40:19 -0000 1.2 +++ openacs-4/packages/dotlrn-catalog/www/doc/ch02s06.html 11 Jul 2006 09:03:14 -0000 1.3 @@ -1,3 +1,21 @@ - - - 6. Grant/Revoke Permissions

6. Grant/Revoke Permissions

One user can have two privileges on dotlrn-catalog package one at package level (Admin, Create, None) and the other one at course level (Admin, None). The users that holds the "Create" privilege on dotlrn-catalog package can create courses, revisions, delete, associate on his own courses or the courses that he has recieved "admin" privilege. The user that creates once course has admin privilege on that course and can grant the same privilege over that course to other users. The users that does not hold any privilege at all, then can only see what courses are available and can try to enroll to them.

  1. Grant/Revoke Permissions over dotlrn-catalog package

    Only the users that have admin privilege on dotlrn-catalog package can will see the "Grant Permission link" and can grant Create privilege to other users on the system. Giving Create privilege to other users allows him to create, edit, delete courses in dotlrn-catalog package. You will be redirected to a page were all the users that have create privile over dotrln-catalo package will appear. And a search form to search for users to grant/revoke privileges.

    image shows links: New course, Manage Category tree, and points to Grant permissions
    image shows a search/select window.
  2. Grant/Revoke Permissions over one course

    You can grant your admin privilege on one course by making click on the Manage permission link on the permission column on your course list or by making click on the Manage Permission button on one course details page. Giving the admin privilege to a users allows he/she make all the things you can do with your course, you can also revoke his/her permission in the same way.

    image shows First Course in the course list.
    image shows search/edit permissions window with test user's permission status 'not allowed'
\ No newline at end of file +Grant/Revoke Permissions

Grant/Revoke Permissions

One user can have two privileges on dotlrn-catalog package one at + package level (Admin, Create, None) and the other one at course level + (Admin, None). The users that holds the "Create" privilege on + dotlrn-catalog package can create courses, revisions, delete, associate + on his own courses or the courses that he has received "admin" + privilege. The user that creates once course has admin privilege on that + course and can grant the same privilege over that course to other users. + The users that does not hold any privilege at all, then can only see + what courses are available and can try to enroll to them.

  1. Grant/Revoke Permissions over dotlrn-catalog package

    Only the users that have admin privilege on dotlrn-catalog + package can will see the "Grant Permission link" and can grant + Create privilege to other users on the system. Giving Create + privilege to other users allows him to create, edit, delete courses + in dotlrn-catalog package. You will be redirected to a page were all + the users that have create privilege over dotrln-catalo package will + appear. And a search form to search for users to grant/revoke + privileges.

    image shows links: New course, Manage category tree, and arrow points to Grant permissions
    image shows a search/select window
  2. Grant/Revoke Permissions over one course

    You can grant your admin privilege on one course by making + click on the Manage permission link on the permission column on your + course list or by making click on the Manage Permission button on + one course details page. Giving the admin privilege to a users + allows he/she make all the things you can do with your course, you + can also revoke his/her permission in the same way.

    image shows First Course in the course list
    image shows search/edit permissions window with test user's permission status 'not allowed'
Index: openacs-4/packages/dotlrn-catalog/www/doc/ch02s07.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn-catalog/www/doc/ch02s07.html,v diff -u -r1.2 -r1.3 --- openacs-4/packages/dotlrn-catalog/www/doc/ch02s07.html 10 Jul 2006 21:40:19 -0000 1.2 +++ openacs-4/packages/dotlrn-catalog/www/doc/ch02s07.html 11 Jul 2006 09:03:14 -0000 1.3 @@ -1,3 +1,4 @@ - - - 7. Watch Course Details (Information)

7. Watch Course Details (Information)

You can watch all the course information at the Course Description page by making click on the course name:

image shows First Course in course list format with Course name as a link.
image shows Course information window with example details, including links to Manage permissions, Delete, Categorize.

The buttons bar will only appear if you are inside dt-admin, if you come form index page then the enroll button will appear if one assessment is associated to the course:

image shows previous First Course details window without links to manage permissions, delete, or categorize.
\ No newline at end of file +Watch Course Details (Information)

Watch Course Details (Information)

You can watch all the course information at the Course Description + page by making click on the course name:

image shows First Course in course list format with Course Name as link
image shows course information window with example details, including links to Manage permissions, Delete, Categorize

The buttons bar will only appear if you are inside + dt-admin, if you come form index page then the enroll button will appear + if one assessment is associated to the course:

image shows previous First Course details window without links to manage permissions, delete, or categorize
Index: openacs-4/packages/dotlrn-catalog/www/doc/ch02s08.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn-catalog/www/doc/ch02s08.html,v diff -u -r1.3 -r1.4 --- openacs-4/packages/dotlrn-catalog/www/doc/ch02s08.html 10 Jul 2006 21:40:19 -0000 1.3 +++ openacs-4/packages/dotlrn-catalog/www/doc/ch02s08.html 11 Jul 2006 09:03:14 -0000 1.4 @@ -1,3 +1,5 @@ - - - 8. Simple Users

8. Simple Users

Will only see the available courses and can watch information about each course by making click on the course name at index page. If one assessment is associated to the course then they will be able to answer it and be part of one of the courses and communities also related to dotlrn-catalog Course:

image shows DotLRN Catalog Index with First Course listed.
image shows example Course information and dotLRN Associations for First Course.
\ No newline at end of file +Simple Users

Simple Users

Will only see the available courses and can watch information + about each course by making click on the course name at index page. If + one assessment is associated to the course then they will be able to + answer it and be part of one of the courses and communities also related + to dotlrn-catalog Course:

image shows DotLRN Catalog Index with First Course listed
image shows example Course information and dotLRN Associations for First Course
Index: openacs-4/packages/dotlrn-catalog/www/doc/ch03.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn-catalog/www/doc/ch03.html,v diff -u -r1.1 -r1.2 --- openacs-4/packages/dotlrn-catalog/www/doc/ch03.html 14 Mar 2005 16:39:55 -0000 1.1 +++ openacs-4/packages/dotlrn-catalog/www/doc/ch03.html 11 Jul 2006 09:03:14 -0000 1.2 @@ -1,3 +1 @@ - - - Chapter 3. AUTHORS

Chapter 3. AUTHORS

Viaro Networks (www.viaro.net)

  1. Rocael Hernandez -- roc@viaro.net

    Design

  2. Vivian Aguilar -- vivian@viaro.net

    Design

  3. Miguel Marin -- miguelmarin@viaro.net

    Development and Documentation

\ No newline at end of file +Chapter�3.�AUTHORS

Chapter�3.�AUTHORS

Viaro Networks (www.viaro.net)

  1. Rocael Hernandez -- roc@viaro.net

    Design

  2. Vivian Aguilar -- vivian@viaro.net

    Design

  3. Miguel Marin -- miguelmarin@viaro.net

    Development and Documentation

Index: openacs-4/packages/dotlrn-catalog/www/doc/index.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn-catalog/www/doc/index.html,v diff -u -r1.4 -r1.5 --- openacs-4/packages/dotlrn-catalog/www/doc/index.html 14 Mar 2005 16:41:28 -0000 1.4 +++ openacs-4/packages/dotlrn-catalog/www/doc/index.html 11 Jul 2006 09:03:14 -0000 1.5 @@ -1,3 +1 @@ - - - dotlrn-Catalog Documentation

dotlrn-Catalog Documentation


Table of Contents

1. DESIGN
1. Data Model:
2. Content Folder
3. Roles
4. Relations
5. Privileges
6. Category Tree
2. USERS MANUAL
1. Manage Category Tree
2. Create New Course or New Course Version
3. Associate to dotLRN class or community
4. Delete one course
5. Changing between Course Versions
6. Grant/Revoke Permissions
7. Watch Course Details (Information)
8. Simple Users
3. AUTHORS
\ No newline at end of file +dotlrn-Catalog Documentation

dotlrn-Catalog Documentation


Table of Contents

1. DESIGN
Data Model:
Content Folder
Roles
Relations
Privileges
Category Tree
2. USERS MANUAL
Manage Category Tree
Create New Course or New Course Version
Associate to dotLRN class or community
Delete one course
Changing between Course Versions
Grant/Revoke Permissions
Watch Course Details (Information)
Simple Users
3. AUTHORS
Index: openacs-4/packages/dotlrn-catalog/www/doc/doc-source/catalog.xml =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn-catalog/www/doc/doc-source/catalog.xml,v diff -u -r1.1 -r1.2 --- openacs-4/packages/dotlrn-catalog/www/doc/doc-source/catalog.xml 14 Mar 2005 16:23:55 -0000 1.1 +++ openacs-4/packages/dotlrn-catalog/www/doc/doc-source/catalog.xml 11 Jul 2006 09:03:14 -0000 1.2 @@ -9,8 +9,8 @@ The dotLRN-Catalog package make use of various packages like acs-content-repository, categories, assessment dotLRN. It makes use of - acs-content-repositoy API to create the data-table and store the data in - the database. It is designed to provide proffesors a way to create courses + acs-content-repository API to create the data-table and store the data in + the database. It is designed to provide professors a way to create courses that can have different versions (revisions) and than can be associated to dotLRN classes and communities, categorized in different categories, and also associate one assessment that will provide a way to the users to @@ -26,93 +26,120 @@ - + + + image showing dotlrn_catalog table + I - Indexes: "dotlrn_catalog_pkey" primary key, btree (course_id) - Foreign-key constraints: "$1" FOREIGN KEY (course_id) REFERENCES - cr_revisions(revision_id) + Indexes: "dotlrn_catalog_pkey" primary key, + btree (course_id) Foreign-key constraints: "$1" FOREIGN KEY (course_id) + REFERENCES cr_revisions(revision_id) The new content_type and attribute table are created with the after-install apm-callback-proc as follows: - + + content::type::new -content_type "dotlrn_catalog" \ + -pretty_name "DotLRN Catalog" \ + -pretty_plural "DotLRN Catalog" \ + -table_name "dotlrn_catalog" \ + -id_column "course_id" + - content::type::new -content_type "dotlrn_catalog" \ -pretty_name - "DotLRN Catalog" \ -pretty_plural "DotLRN Catalog" \ -table_name - "dotlrn_catalog" \ -id_column "course_id" - - # now set up the attributes that by default we need for the course - content::type::attribute::new \ -content_type "dotlrn_catalog" \ - -attribute_name "course_key" \ -datatype "string" \ -pretty_name "Course - Key" \ -pretty_plural "Course Key" \ -sort_order 1 \ -column_spec - "varchar(50)" - - content::type::attribute::new \ -content_type "dotlrn_catalog" \ - -attribute_name "course_name" \ -datatype "string" \ -pretty_name - "Course Name" \ -sort_order 2 \ -column_spec "varchar(200)" - - content::type::attribute::new \ -content_type "dotlrn_catalog" \ - -attribute_name "course_info" \ -datatype "text" \ -pretty_name "Course - Information" \ -sort_order 3 \ -column_spec "text" - - content::type::attribute::new \ -content_type "dotlrn_catalog" \ - -attribute_name "assessment_id" \ -datatype "integer" \ -pretty_name - "Assessment ID" \ -sort_order 4 \ -column_spec "integer" + + # now set up the attributes that by default we need for the course + + content::type::attribute::new -content_type "dotlrn_catalog" \ + -attribute_name "course_key" \ + -datatype "string" \ + -pretty_name "Course Key" \ + -pretty_plural "Course Key" \ + -sort_order 1 \ + -column_spec "varchar(50)" + content::type::attribute::new -content_type "dotlrn_catalog" \ + -attribute_name "course_name" \ + -datatype "string" \ + -pretty_name "Course Name" \ + -sort_order 2 \ + -column_spec "varchar(200)" + content::type::attribute::new -content_type "dotlrn_catalog" \ + -attribute_name "course_info" \ + -datatype "text" \ + -pretty_name "Course Information" \ + -sort_order 3 \ + -column_spec "text" + content::type::attribute::new -content_type "dotlrn_catalog" \ + -attribute_name "assessment_id" \ + -datatype "integer" \ + -pretty_name "Assessment ID" \ + -sort_order 4 \ + -column_spec "integer" +
Content Folder - To store the the courses in the Conten Repository, a + To store the the courses in the Content Repository, a content-folder with name and label "DotLRN Catalog" was created. Also the previously created content_type is registered to the folder, by calling to the same after-install apm-callback-proc as follows: - set folder_id [content::folder::new -name "DotLRN Catalog" -label - "DotLRN Catalog"] content::folder::register_content_type -folder_id - $folder_id -content_type "dotlrn_catalog" + + set folder_id [content::folder::new -name "DotLRN Catalog" -label "DotLRN Catalog"] + content::folder::register_content_type -folder_id $folder_id -content_type "dotlrn_catalog" +
Roles - Three new roles were created to use them when createing the + Three new roles were created to use them when creating the relations. The first one is for the dotlrn-catalog course and it's called d_catalog_role, the second one is for the dotlrn class and it's called dotlrn-class_role and the last one is for the dotlrn communities and it's called dotlrn_com_role. This roles are the first thing that the package create on installation and their creation code is: - - Oracle: - begin acs_rel_type.create_role('d_catalog_role', 'DotLRN - Course Catalog Role', 'DotLRN Course Catalog Role'); - acs_rel_type.create_role('dotlrn_class_role', 'dotLRN Class Role', - 'dotLRN Class Role'); acs_rel_type.create_role('dotlrn_com_role', - 'dotLRN Community Role', 'dotLRN Community Role'); commit; end; / - show errors - + + begin + acs_rel_type.create_role('d_catalog_role', + 'DotLRN Course Catalog Role', + 'DotLRN Course Catalog Role'); + acs_rel_type.create_role('dotlrn_class_role', + 'dotLRN Class Role', + 'dotLRN Class Role'); + acs_rel_type.create_role('dotlrn_com_role', + 'dotLRN Community Role', + 'dotLRN Community Role'); + commit; end; / + show errors + - Postgres: - create function inline_0 ( ) returns integer as ' begin - PERFORM acs_rel_type__create_role(''d_catalog_role'', ''DotLRN - Catalog Role'', ''DotLRN Catalog Role''); PERFORM - acs_rel_type__create_role(''dotlrn_class_role'', ''dotLRN Class - Role'', ''dotLRN Class Role''); PERFORM - acs_rel_type__create_role(''dotlrn_com_role'', ''dotLRN Community - Role'', ''dotLRN Community Role''); return 0; end;' language - 'plpgsql'; select inline_0 ( ); drop function inline_0 ( ); - - + + create function inline_0 ( ) returns integer as ' + begin + PERFORM acs_rel_type__create_role(''d_catalog_role'', + ''DotLRN Catalog Role'', + ''DotLRN Catalog Role''); + PERFORM acs_rel_type__create_role(''dotlrn_class_role'', + ''dotLRN Class Role'', + ''dotLRN Class Role''); + PERFORM acs_rel_type__create_role(''dotlrn_com_role'', + ''dotLRN Community Role'', + ''dotLRN Community Role''); + return 0; end;' language 'plpgsql'; + select inline_0 ( ); drop function inline_0 ( ); +
@@ -124,27 +151,30 @@ one associates the dotlrn_catalog type with dotlrn_club for the communities. Here is were the previous created roles take place: - # To associate one course to dotlrn class rel_types::new -role_one - d_catalog_role -role_two dotlrn_class_role dotlrn_catalog_class_rel \ - "DotLRN Catalog Class" "DotLRN Catalog Class" dotlrn_catalog 0 1 - dotlrn_class_instance 0 1 + # To associate one course to dotlrn + class rel_types::new -role_one d_catalog_role \ + -role_two dotlrn_class_role dotlrn_catalog_class_rel \ + "DotLRN Catalog Class" "DotLRN Catalog Class" \ + dotlrn_catalog 0 1 dotlrn_class_instance 0 1 + - # To associate one course to dotrln community rel_types::new - -role_one d_catalog_role -role_two dotlrn_com_role - dotlrn_catalog_dotcom_rel \ "DotLRN Catalog Community" "DotLRN Catalog - Community" dotlrn_catalog 0 1 dotlrn_club 0 1 + # To associate one course to dotlrn community + rel_types::new -role_one d_catalog_role -role_two dotlrn_com_role \ + dotlrn_catalog_dotcom_rel "DotLRN Catalog Community" \ + "DotLRN Catalog Community" dotlrn_catalog 0 1 dotlrn_club 0 1 +
Privileges - Two privileges are managed in this package at differents levels, - one is the privilige that a user has over dotlr-catalog package (admin, + Two privileges are managed in this package at different levels, + one is the privilege that a user has over dotlrn-catalog package (admin, create, none), and the other one the privilege that the user has over one dotlrn-catalog course (admin,none). Depending of what privilege the - users has, acces to some pages and the display of information will be + users has, access to some pages and the display of information will be different. For example if you you have admin or create privilege over - dotlrn-catalog package then you can acces to every page under the + dotlrn-catalog package then you can access to every page under the "dotlrn-catalog/dt-catalog/" url, if you are admin all courses will be shown there but if you only have create privilege the only your courses will be show. When you create one course then the admin privilege will @@ -165,16 +195,17 @@ each course in different ways. The category tree is created as follows: - # To categorize courses set tree_id [category_tree::add -name - "dotlrn-course-catalog"] category_tree::map -tree_id $tree_id -object_id - $package_id -assign_single_p "t" + # To categorize courses + set tree_id [category_tree::add -name "dotlrn-course-catalog"] + category_tree::map -tree_id $tree_id -object_id $package_id -assign_single_p "t" +
USERS MANUAL - Here are some simple statments to interact with the dotlrn-catalog + Here are some simple statements to interact with the dotlrn-catalog package. For sections 2.1 to 2.6 the user requires to have create or admin privileges under the dotlrn-catalog, package. If you can see the Admin link in the top right corner of the page then you have privileges on the @@ -191,30 +222,44 @@ - + + + image showing dotlrn_catalog table + - Once you click un the link you will redirect to a page + Once you click on the link you will redirect to a page were you can add/remove categories and subcategories to the already created tree (dotlrn_catalog_tree). - + + + image shows link in context of page + - + + + image shows example of a category edit button + for a specific category + - + + + image showing ordering interface in context of + two categories, 1 nested in the other + @@ -248,12 +293,12 @@ The Assessment ID select box is to associate the assessment that the users will have to answer (Enroll button) to perform an specific action. Here only the assessment that the user has created - or has received permissions on will be shown. If no assesment is + or has received permissions on will be shown. If no assessment is associated then no user can enroll to one course. - The Categories select box is to select to wich category the + The Categories select box is to select to which category the course will be shown in the index page. To create a new course version click on the icon on the left of Course Key information and change the fields you want. @@ -263,17 +308,23 @@ - + + + image shows an example of a 'new course' page. + To create a new course version click on the icon on the left of Course Key information and change the fields you want. - + + + image showing a course in context with 'course key' + @@ -283,44 +334,58 @@ - + + + image shows 'versions' link in context of a course + Also you can categorize your course latter if you didn't categorize it in the first place by making click in the course name ( - redierects you to Course description) and then by making click on the + redirects you to Course description) and then by making click on the Categorize button. - + + + image showing the 'categorize' button as it + would appear in-line with a course +
Associate to dotLRN class or community - Each course can be associted to one or various dotlrn classes or + Each course can be associated to one or various dotlrn classes or communities. These associations will be displayed in the course - description page to give the information to the user about the classess - or communities that he/she will become a member of. You can associte one - course by making click in the associte link in Your Course List or in + description page to give the information to the user about the classes + or communities that he/she will become a member of. You can associate one + course by making click in the associate link in Your Course List or in the course description page. - + + + image shows a course list with one course + - + + + image shows a message 'no associations' with a + link to associate + To associate classes or communities to the course select check boxes to associate one or various at the same time. Associate @@ -329,23 +394,33 @@ - + + + image shows an example list of associated + classes and communities, and links to associate more + If you already have associations to dotLRN then a watch link will appear. - + + + image shows example course + - + + + image shows First Course with new associations +
@@ -360,8 +435,12 @@ - + + + image show one course from a list, with trash + can on the right + You will be redirected to a Delete Confirmation page were some information of the course (number of versions and associations) @@ -371,8 +450,11 @@ - + + + image shows an example confirmation message window + @@ -390,8 +472,12 @@ - + + + image shows course revisions with indication to + which one is live + @@ -403,7 +489,7 @@ package level (Admin, Create, None) and the other one at course level (Admin, None). The users that holds the "Create" privilege on dotlrn-catalog package can create courses, revisions, delete, associate - on his own courses or the courses that he has recieved "admin" + on his own courses or the courses that he has received "admin" privilege. The user that creates once course has admin privilege on that course and can grant the same privilege over that course to other users. The users that does not hold any privilege at all, then can only see @@ -418,23 +504,30 @@ Create privilege to other users on the system. Giving Create privilege to other users allows him to create, edit, delete courses in dotlrn-catalog package. You will be redirected to a page were all - the users that have create privile over dotrln-catalo package will + the users that have create privilege over dotrln-catalo package will appear. And a search form to search for users to grant/revoke privileges. - + + + image shows links: New course, Manage category + tree, and arrow points to Grant permissions + - + + + image shows a search/select window +
@@ -452,16 +545,23 @@ - + + + image shows First Course in the course list + - + + + image shows search/edit permissions window with + test user's permission status 'not allowed' + @@ -477,16 +577,25 @@ - + + + image shows First Course in course list format + with Course Name as link + - + + + image shows course information window with + example details, including links to Manage permissions, + Delete, Categorize + The buttons bar will only appear if you are inside dt-admin, if you come form index page then the enroll button will appear @@ -495,8 +604,12 @@ - + + + image shows previous First Course details window + without links to manage permissions, delete, or categorize + @@ -513,14 +626,22 @@ - + + + image shows DotLRN Catalog Index with First + Course listed + - + + + image shows example Course information and + dotLRN Associations for First Course + @@ -553,4 +674,4 @@
- \ No newline at end of file +