Index: openacs-4/packages/curriculum-central/catalog/curriculum-central.en_US.ISO-8859-1.xml
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/curriculum-central/catalog/curriculum-central.en_US.ISO-8859-1.xml,v
diff -u -r1.40 -r1.41
--- openacs-4/packages/curriculum-central/catalog/curriculum-central.en_US.ISO-8859-1.xml	15 Feb 2006 11:42:59 -0000	1.40
+++ openacs-4/packages/curriculum-central/catalog/curriculum-central.en_US.ISO-8859-1.xml	16 Feb 2006 10:44:17 -0000	1.41
@@ -2,6 +2,16 @@
 <message_catalog package_key="curriculum-central" package_version="0.1d" locale="en_US" charset="ISO-8859-1">
 
   <msg key="uos">UoS</msg>
+  <msg key="edit_stream_uos_rel">Edit Stream to UoS Relation</msg>
+  <msg key="add_stream_uos_rel">Add Stream to UoS Relation</msg>
+  <msg key="help_enter_stream_rel_name">Enter a name for a degree stream to UoS relation.  Examples include: core; recommended; elective.</msg>
+  <msg key="view_degree_stream_rels">View Degree Stream Relations</msg>
+  <msg key="add_a_degree_stream_rel">Add a Degree Stream Relation</msg>
+  <msg key="add_rel">Add Relation</msg>
+  <msg key="no_rels_created">No Stream to UoS Relations have been created.</msg>
+  <msg key="add_rel_to_list">Add Relation to List.</msg>
+  <msg key="edit_stream_rel_info">Edit stream relation information.</msg>
+  <msg key="stream_to_uos_relations">Stream to UoS Relations</msg>
   <msg key="all_uos">All Units of Study</msg>
   <msg key="overview">Overview</msg>
   <msg key="edit_uos_name">Edit UoS Name</msg>
Index: openacs-4/packages/curriculum-central/sql/postgresql/curriculum-central-create.sql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/curriculum-central/sql/postgresql/curriculum-central-create.sql,v
diff -u -r1.3 -r1.4
--- openacs-4/packages/curriculum-central/sql/postgresql/curriculum-central-create.sql	2 Feb 2006 11:45:49 -0000	1.3
+++ openacs-4/packages/curriculum-central/sql/postgresql/curriculum-central-create.sql	16 Feb 2006 10:44:17 -0000	1.4
@@ -14,3 +14,4 @@
 \i uos-names-create.sql
 \i uos-create.sql
 \i staff-create.sql
+\i stream-uos-rel-create.sql
Index: openacs-4/packages/curriculum-central/sql/postgresql/stream-uos-rel-create.sql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/curriculum-central/sql/postgresql/stream-uos-rel-create.sql,v
diff -u
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/curriculum-central/sql/postgresql/stream-uos-rel-create.sql	16 Feb 2006 10:44:17 -0000	1.1
@@ -0,0 +1,159 @@
+--
+-- packages/curriculum-central/sql/postgresql/stream-uos-rel-create.sql
+--
+-- @author Nick Carroll (nick.c@rroll.net)
+-- @creation-date 2005-11-08
+-- @cvs-id $Id: stream-uos-rel-create.sql,v 1.1 2006/02/16 10:44:17 ncarroll Exp $
+--
+--
+
+
+create function inline_0 ()
+returns integer as'
+begin 
+    PERFORM acs_object_type__create_type (
+	''cc_stream_uos_rel'',			-- object_type
+	''#curriculum-central.stream_uos_rel#'',	-- pretty_name
+	''#curriculum-central.stream_uos_rels#'',	-- pretty_plural
+	''acs_object'',				-- supertype
+	''cc_stream_uos_rel'',			-- table_name
+	''stream_uos_rel_id'',			-- id_column
+	null,				-- package_name
+	''f'',				-- abstract_p
+	null,				-- type_extension_table
+	''cc_stream_uos_rel__name''		-- name_method
+	);
+
+    return 0;
+end;' language 'plpgsql';
+
+select inline_0 ();
+drop function inline_0 ();
+
+
+create table cc_stream_uos_rel (
+	stream_uos_rel_id	integer
+                        constraint cc_stream_uos_rel_stream_uos_rel_id_fk
+                        references acs_objects(object_id)
+			constraint cc_stream_uos_rel_stream_uos_rel_id_pk
+			primary key,
+	name 		varchar(256)
+			constraint cc_stream_uos_rel_name_nn not null
+			constraint cc_stream_uos_rel_name_un unique,
+	package_id	integer
+			constraint cc_stream_uos_rel_package_id_fk
+			references apm_packages(package_id) on delete cascade
+);
+
+
+--
+-- Attributes for the Stream_Uos_Rel Object
+--
+create function inline_1 ()
+returns integer as '
+begin
+    PERFORM acs_attribute__create_attribute (
+	  ''cc_stream_uos_rel'',		-- object_type
+	  ''name'',			-- attribute_name
+	  ''string'',			-- datatype
+	  ''curriculum-central.name'',	-- pretty_name
+	  ''curriculum-central.names'',	-- pretty_plural
+	  null,				-- table_name
+	  null,				-- column_name
+	  null,				-- default_value
+	  1,				-- min_n_values
+	  1,				-- max_n_values
+	  null,				-- sort_order
+	  ''type_specific'',		-- storage
+	  ''f''				-- static_p
+	);
+
+    return 0;
+end;' 
+language 'plpgsql';
+select inline_1 ();
+drop function inline_1 ();
+
+
+select define_function_args('cc_stream_uos_rel__new', 'stream_uos_rel_id,name,creation_user,creation_ip,package_id');
+
+create function cc_stream_uos_rel__new(integer, varchar, integer, varchar, integer)
+returns integer as'
+
+declare
+
+	p_stream_uos_rel_id	alias for $1;
+	p_name			alias for $2;
+	p_creation_user		alias for $3;
+	p_creation_ip		alias for $4;
+	p_package_id		alias for $5;
+
+	v_stream_uos_rel_id	cc_stream_uos_rel.stream_uos_rel_id%TYPE;
+begin
+
+	v_stream_uos_rel_id := acs_object__new (
+			p_stream_uos_rel_id,
+			''cc_stream_uos_rel'',
+			now(),
+			p_creation_user,
+			p_creation_ip,
+			p_package_id
+		);
+
+	insert into cc_stream_uos_rel values(v_stream_uos_rel_id, p_name, p_package_id);
+	
+	PERFORM acs_permission__grant_permission(
+          v_stream_uos_rel_id,
+          p_creation_user,
+          ''read''
+    	);
+
+	PERFORM acs_permission__grant_permission(
+          v_stream_uos_rel_id,
+          p_creation_user,
+          ''write''
+    	);
+
+	return v_stream_uos_rel_id;
+
+end;
+' language plpgsql;
+
+
+select define_function_args('cc_stream_uos_rel__delete', 'stream_uos_rel_id');
+
+create function cc_stream_uos_rel__delete (integer)
+returns integer as '
+declare
+  p_stream_uos_rel_id				alias for $1;
+begin
+    delete from acs_permissions
+		   where object_id = p_stream_uos_rel_id;
+
+	delete from cc_stream_uos_rel
+		   where stream_uos_rel_id = p_stream_uos_rel_id;
+
+	raise NOTICE ''Deleting Stream_Uos_Rel...'';
+	PERFORM acs_object__delete(p_stream_uos_rel_id);
+
+	return 0;
+
+end;' 
+language plpgsql;
+
+
+select define_function_args('cc_stream_uos_rel__name', 'stream_uos_rel_id');
+
+create function cc_stream_uos_rel__name (integer)
+returns varchar as '
+declare
+    p_stream_uos_rel_id      alias for $1;
+    v_stream_uos_rel_name    cc_stream_uos_rel.name%TYPE;
+begin
+	select name into v_stream_uos_rel_name
+		from cc_stream_uos_rel
+		where stream_uos_rel_id = p_stream_uos_rel_id;
+
+    return v_stream_uos_rel_name;
+end;
+' language plpgsql;
Index: openacs-4/packages/curriculum-central/tcl/stream-procs-postgresql.xql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/curriculum-central/tcl/stream-procs-postgresql.xql,v
diff -u -r1.5 -r1.6
--- openacs-4/packages/curriculum-central/tcl/stream-procs-postgresql.xql	2 Feb 2006 11:45:49 -0000	1.5
+++ openacs-4/packages/curriculum-central/tcl/stream-procs-postgresql.xql	16 Feb 2006 10:44:17 -0000	1.6
@@ -71,4 +71,21 @@
      </querytext>
    </fullquery>
 
+   <fullquery name="curriculum_central::stream::stream_uos_relation_get_options.stream_uos_rels">
+     <querytext>
+       SELECT r.name, r.stream_uos_rel_id
+           FROM cc_stream_uos_rel r
+	   WHERE r.package_id = :package_id
+     </querytext>
+   </fullquery>
+
+   <fullquery name="curriculum_central::stream::stream_uos_relation_name.get_name">
+     <querytext>
+       SELECT r.name
+           FROM cc_stream_uos_rel r
+	   WHERE r.package_id = :package_id
+	   AND r.stream_uos_rel_id = :id
+     </querytext>
+   </fullquery>
+
 </queryset>
Index: openacs-4/packages/curriculum-central/tcl/stream-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/curriculum-central/tcl/stream-procs.tcl,v
diff -u -r1.6 -r1.7
--- openacs-4/packages/curriculum-central/tcl/stream-procs.tcl	2 Feb 2006 11:45:49 -0000	1.6
+++ openacs-4/packages/curriculum-central/tcl/stream-procs.tcl	16 Feb 2006 10:44:17 -0000	1.7
@@ -205,18 +205,13 @@
 
 
 ad_proc curriculum_central::stream::stream_uos_relation_get_options {} {
-    Returns a two-column list of UoS to Stream relations.  The list
-    contains hard coded values for Core, Recommended and Elective, with
-    values of 0, 1, and 2 respectively.
+    Returns a two-column list of UoS to Stream relations.
 
     @return Returns a two-column list of UoS to Stream relations.
 } {
-    set relations [list]
-    lappend relations "[_ curriculum-central.core] 0"
-    lappend relations "[_ curriculum-central.recommended] 1"
-    lappend relations "[_ curriculum-central.elective] 2"
+    set package_id [ad_conn package_id]
 
-    return $relations
+    return [db_list_of_lists stream_uos_rels {}]
 }
 
 
@@ -225,16 +220,12 @@
 } {
     Returns the pretty name for the given relation_id.
 
-    @param id The ID that corresponds to either "Core", "Recommended",
-    or "Elective".
+    @param id The ID that corresponds to a defined stream to UoS relation
+    name.
 
     @see curriculum_central::stream::stream_uos_relation_get_options
 } {
-    if { $id eq 0 } {
-	return [_ curriculum-central.core]
-    } elseif { $id eq 1} {
-	return [_ curriculum-central.recommended]
-    } else {
-	return [_ curriculum-central.elective]
-    }
-}
\ No newline at end of file
+    set package_id [ad_conn package_id]
+
+    return [db_string get_name {} -default ""]
+}
Index: openacs-4/packages/curriculum-central/www/all-uos-view.adp
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/curriculum-central/www/all-uos-view.adp,v
diff -u -r1.1 -r1.2
--- openacs-4/packages/curriculum-central/www/all-uos-view.adp	15 Feb 2006 11:07:35 -0000	1.1
+++ openacs-4/packages/curriculum-central/www/all-uos-view.adp	16 Feb 2006 10:44:17 -0000	1.2
@@ -15,7 +15,7 @@
       <li>@stream.session_name@</li>
       <ul id="uos">
         <group column="year_session_group">
-        <li><span class="label">@stream.uos_code@ @stream.uos_name@ (@stream.core_or_not@)</span><span class="options"><a href="@stream.uos_details_url@" class="button">#curriculum-central.view_details#</a></span><div class="spacer"></div></li>
+        <li><span class="label">@stream.uos_code@ @stream.uos_name@ (@stream.rel_name@)</span><span class="options"><a href="@stream.uos_details_url@" class="button">#curriculum-central.view_details#</a></span><div class="spacer"></div></li>
         </group>
       </ul>
       </group>
Index: openacs-4/packages/curriculum-central/www/all-uos-view.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/curriculum-central/www/all-uos-view.tcl,v
diff -u -r1.2 -r1.3
--- openacs-4/packages/curriculum-central/www/all-uos-view.tcl	15 Feb 2006 11:42:59 -0000	1.2
+++ openacs-4/packages/curriculum-central/www/all-uos-view.tcl	16 Feb 2006 10:44:17 -0000	1.3
@@ -26,7 +26,7 @@
 set units_of_study [db_list_of_lists units_of_study {}]
 
 template::multirow create stream map_id year_id year_name \
-    session_id session_name core_or_not uos_id uos_code uos_name \
+    session_id session_name rel_name uos_id uos_code uos_name \
     year_session_group uos_details_url
 
 foreach uos $units_of_study {
@@ -36,7 +36,7 @@
     set uos_id [lindex $uos 3]
     set year_id [lindex $uos 4]
     set year_name [lindex $uos 5]
-    set core_id [lindex $uos 6]
+    set rel_id [lindex $uos 6]
     set live_revision_id [lindex $uos 7]
     set session_ids [lindex $uos 8]
 
@@ -50,17 +50,17 @@
 	set base_return_url "all-uos-view"
 	set uos_details_url [export_vars -url -base uos-details {uos_id stream_id base_return_url department_id}]
 
-	set core_id [curriculum_central::stream::stream_uos_relation_name \
-			 -id $core_id]
+	set rel_name [curriculum_central::stream::stream_uos_relation_name \
+			 -id $rel_id]
 
 	template::multirow append stream $map_id $year_id $year_name \
-	    $session_id $session_name $core_id $uos_id $uos_code \
+	    $session_id $session_name $rel_name $uos_id $uos_code \
 	    $uos_name $year_session_group $uos_details_url
     
     }
 }
 
 # Sort stream info by increasing year and session.
-template::multirow sort stream -increasing year_id session_id
+template::multirow sort stream -increasing year_id session_id uos_code
 
 ad_return_template
Index: openacs-4/packages/curriculum-central/www/stream-view.adp
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/curriculum-central/www/stream-view.adp,v
diff -u -r1.1 -r1.2
--- openacs-4/packages/curriculum-central/www/stream-view.adp	13 Feb 2006 01:30:07 -0000	1.1
+++ openacs-4/packages/curriculum-central/www/stream-view.adp	16 Feb 2006 10:44:17 -0000	1.2
@@ -15,7 +15,7 @@
       <li>@stream.session_name@</li>
       <ul id="uos">
         <group column="year_session_group">
-        <li><span class="label">@stream.uos_code@ @stream.uos_name@ (@stream.core_or_not@)</span><span class="options"><a href="@stream.uos_details_url@" class="button">#curriculum-central.view_details#</a></span><div class="spacer"></div></li>
+        <li><span class="label">@stream.uos_code@ @stream.uos_name@ (@stream.rel_name@)</span><span class="options"><a href="@stream.uos_details_url@" class="button">#curriculum-central.view_details#</a></span><div class="spacer"></div></li>
         </group>
       </ul>
       </group>
Index: openacs-4/packages/curriculum-central/www/stream-view.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/curriculum-central/www/stream-view.tcl,v
diff -u -r1.3 -r1.4
--- openacs-4/packages/curriculum-central/www/stream-view.tcl	15 Feb 2006 11:42:59 -0000	1.3
+++ openacs-4/packages/curriculum-central/www/stream-view.tcl	16 Feb 2006 10:44:17 -0000	1.4
@@ -26,7 +26,7 @@
 set units_of_study [db_list_of_lists units_of_study {}]
 
 template::multirow create stream map_id year_id year_name \
-    session_id session_name core_or_not uos_id uos_code uos_name \
+    session_id session_name rel_name uos_id uos_code uos_name \
     year_session_group uos_details_url
 
 foreach uos $units_of_study {
@@ -36,7 +36,7 @@
     set uos_id [lindex $uos 3]
     set year_id [lindex $uos 4]
     set year_name [lindex $uos 5]
-    set core_id [lindex $uos 6]
+    set rel_id [lindex $uos 6]
     set live_revision_id [lindex $uos 7]
     set session_ids [lindex $uos 8]
 
@@ -50,17 +50,17 @@
 	set base_return_url "stream-view"
 	set uos_details_url [export_vars -url -base uos-details {uos_id stream_id base_return_url department_id}]
 
-	set core_id [curriculum_central::stream::stream_uos_relation_name \
-			 -id $core_id]
+	set rel_name [curriculum_central::stream::stream_uos_relation_name \
+			 -id $rel_id]
 
 	template::multirow append stream $map_id $year_id $year_name \
-	    $session_id $session_name $core_id $uos_id $uos_code \
+	    $session_id $session_name $rel_name $uos_id $uos_code \
 	    $uos_name $year_session_group $uos_details_url
     
     }
 }
 
 # Sort stream info by increasing year and session.
-template::multirow sort stream -increasing year_id session_id
+template::multirow sort stream -increasing year_id session_id uos_code
 
 ad_return_template
Index: openacs-4/packages/curriculum-central/www/admin/index.adp
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/curriculum-central/www/admin/index.adp,v
diff -u -r1.8 -r1.9
--- openacs-4/packages/curriculum-central/www/admin/index.adp	2 Feb 2006 11:45:49 -0000	1.8
+++ openacs-4/packages/curriculum-central/www/admin/index.adp	16 Feb 2006 10:44:17 -0000	1.9
@@ -32,6 +32,12 @@
   <li><a href="session-ae">#curriculum-central.add_a_session#</a></li>
   </ul>
 </li>
+<li><span>#curriculum-central.stream_to_uos_relations#</span>
+  <ul>
+  <li><a href="stream-rels">#curriculum-central.view_degree_stream_rels#</a></li>
+  <li><a href="stream-rel-ae">#curriculum-central.add_a_degree_stream_rel#</a></li>
+  </ul>
+</li>
 <li><span>#curriculum-central.streams#</span>
   <ul>
   <li><a href="streams">#curriculum-central.view_streams#</a></li>
Index: openacs-4/packages/curriculum-central/www/admin/stream-rel-ae-postgresql.xql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/curriculum-central/www/admin/stream-rel-ae-postgresql.xql,v
diff -u
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/curriculum-central/www/admin/stream-rel-ae-postgresql.xql	16 Feb 2006 10:44:17 -0000	1.1
@@ -0,0 +1,23 @@
+<?xml version="1.0"?>
+
+<queryset>
+   <rdbms><type>postgresql</type><version>7.4</version></rdbms>
+
+   <fullquery name="rel_update">
+     <querytext>
+       UPDATE cc_stream_uos_rel
+	   SET name = :name
+	   WHERE stream_uos_rel_id = :stream_uos_rel_id
+     </querytext>
+   </fullquery>
+
+   <fullquery name="object_update">
+     <querytext>
+       UPDATE acs_objects
+           SET modifying_user = :modifying_user,
+	   modifying_ip = :modifying_ip
+	   WHERE object_id = :stream_uos_rel_id
+     </querytext>
+   </fullquery>
+
+</queryset>
Index: openacs-4/packages/curriculum-central/www/admin/stream-rel-ae.adp
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/curriculum-central/www/admin/stream-rel-ae.adp,v
diff -u
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/curriculum-central/www/admin/stream-rel-ae.adp	16 Feb 2006 10:44:17 -0000	1.1
@@ -0,0 +1,6 @@
+<master src="../resources/main-portal">
+<property name="title">@page_title;noquote@</property>
+<property name="context">@context;noquote@</property>
+<property name="focus">year.name</property>
+
+<formtemplate id="stream_rel"></formtemplate>
\ No newline at end of file
Index: openacs-4/packages/curriculum-central/www/admin/stream-rel-ae.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/curriculum-central/www/admin/stream-rel-ae.tcl,v
diff -u
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/curriculum-central/www/admin/stream-rel-ae.tcl	16 Feb 2006 10:44:17 -0000	1.1
@@ -0,0 +1,50 @@
+ad_page_contract {
+    Add/Edit a stream to UoS relation.
+
+    @author Nick Carroll (nick.c@rroll.net)
+    @creation-date 2005-11-20
+    @cvs-id $Id: stream-rel-ae.tcl,v 1.1 2006/02/16 10:44:17 ncarroll Exp $
+} {
+    stream_uos_rel_id:integer,optional
+    {return_url "stream-rels"}
+}
+
+if { [info exists stream_uos_rel_id] } {
+    set page_title [_ curriculum-central.edit_stream_uos_rel]
+} else {
+    set page_title [_ curriculum-central.add_stream_uos_rel]
+}
+
+set context [list $page_title]
+set package_id [ad_conn package_id]
+set user_id [ad_conn user_id]
+set peeraddr [ad_conn peeraddr]
+
+ad_form -name stream_rel -cancel_url $return_url -form {
+    {stream_uos_rel_id:key(acs_object_id_seq)}
+    {return_url:text(hidden) {value $return_url}}
+    {name:text
+	{html {size 50}}
+	{label "#curriculum-central.name#" }
+	{help_text "[_ curriculum-central.help_enter_stream_rel_name]"}
+    }
+} -select_query {
+    SELECT name FROM cc_stream_uos_rel
+        WHERE stream_uos_rel_id = :stream_uos_rel_id
+} -new_data {
+
+    package_instantiate_object \
+	-var_list [list [list package_id $package_id] \
+		        [list name $name]] \
+	-form_id stream_rel cc_stream_uos_rel
+
+} -edit_data {
+    set modifying_user [ad_conn user_id]
+    set modifying_ip [ad_conn peeraddr]
+
+    db_dml rel_update {}
+    db_dml object_update {}
+} -after_submit {
+    ad_returnredirect $return_url
+    ad_script_abort
+}
Index: openacs-4/packages/curriculum-central/www/admin/stream-rels-postgresql.xql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/curriculum-central/www/admin/stream-rels-postgresql.xql,v
diff -u
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/curriculum-central/www/admin/stream-rels-postgresql.xql	16 Feb 2006 10:44:17 -0000	1.1
@@ -0,0 +1,15 @@
+<?xml version="1.0"?>
+
+<queryset>
+   <rdbms><type>postgresql</type><version>7.4</version></rdbms>
+
+   <fullquery name="get_rels">
+     <querytext>
+       SELECT stream_uos_rel_id, name
+	   FROM cc_stream_uos_rel
+	   WHERE package_id = :package_id
+	   [template::list::orderby_clause -orderby -name "stream_rels"]
+     </querytext>
+   </fullquery>
+
+</queryset>
Index: openacs-4/packages/curriculum-central/www/admin/stream-rels.adp
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/curriculum-central/www/admin/stream-rels.adp,v
diff -u
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/curriculum-central/www/admin/stream-rels.adp	16 Feb 2006 10:44:17 -0000	1.1
@@ -0,0 +1,5 @@
+<master src="../resources/main-portal">
+<property name="title">@page_title;noquote@</property>
+<property name="context">@context;noquote@</property>
+
+<listtemplate name="stream_rels"></listtemplate>
\ No newline at end of file
Index: openacs-4/packages/curriculum-central/www/admin/stream-rels.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/curriculum-central/www/admin/stream-rels.tcl,v
diff -u
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/curriculum-central/www/admin/stream-rels.tcl	16 Feb 2006 10:44:17 -0000	1.1
@@ -0,0 +1,47 @@
+ad_page_contract {
+    Page for creating degree stream relations.
+
+    @author Nick Carroll (nick.c@rroll.net)
+    @creation-date 2005-11-15
+    @cvs-id $Id: stream-rels.tcl,v 1.1 2006/02/16 10:44:17 ncarroll Exp $
+} {
+    {orderby "name,asc"}
+}
+
+set page_title "[_ curriculum-central.stream_to_uos_relations]"
+set context [list $page_title]
+set package_id [ad_conn package_id]
+
+set elements {
+    edit {
+	sub_class narrow
+	display_template {
+	    <img src="/shared/images/Edit16.gif" height="16" width="16" border="0">
+	}
+	link_url_eval {[export_vars -base stream-rel-ae { stream_uos_rel_id }]}
+	link_html {title "#curriculum-central.edit_stream_rel_info#"}
+    }
+    name {
+	label "#curriculum-central.name#"
+    }
+    delete {
+	sub_class narrow
+	display_template {
+	    <img src="/shared/images/Delete16.gif" height="16" width="16" border="0">
+	}
+    }
+}
+
+template::list::create \
+    -name stream_rels \
+    -actions [list "#curriculum-central.add_rel#" [export_vars -base stream-rel-ae {}] "#curriculum-central.add_rel_to_list#"] \
+    -multirow stream_rels \
+    -no_data "#curriculum-central.no_rels_created#" \
+    -elements $elements \
+    -orderby {
+        name {orderby {lower(name)}}
+    }
+
+db_multirow stream_rels get_rels {}
+
+ad_return_template
\ No newline at end of file
Index: openacs-4/packages/curriculum-central/www/coordinate/stream-view.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/curriculum-central/www/coordinate/stream-view.tcl,v
diff -u -r1.7 -r1.8
--- openacs-4/packages/curriculum-central/www/coordinate/stream-view.tcl	2 Feb 2006 11:45:49 -0000	1.7
+++ openacs-4/packages/curriculum-central/www/coordinate/stream-view.tcl	16 Feb 2006 10:44:18 -0000	1.8
@@ -83,14 +83,14 @@
 set add_url [export_vars -base stream-map-ae {stream_id return_url}]
 set publish_url [export_vars -base stream-publish {stream_id modified_list}]
 
-# Sort stream info by increasing year and session.
-template::multirow sort stream -increasing year_id session_id
-
 # Get all UoS that are no longer offered.  These are UoS that were
 # previously mapped, but now have a year_id that is set to 0.
 db_multirow -extend {edit_url delete_url} not_offered not_offered {} {
     set edit_url [export_vars -base stream-map-ae {stream_id uos_id map_id return_url}]
     set delete_url [export_vars -base stream-map-del {stream_id map_id return_url}]
 }
 
+# Sort stream info by increasing year and session.
+template::multirow sort stream -increasing year_id session_id uos_code
+
 ad_return_template