Index: openacs-4/packages/glossar/catalog/glossar.de_DE.ISO-8859-1.xml =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/glossar/catalog/glossar.de_DE.ISO-8859-1.xml,v diff -u -r1.6 -r1.7 --- openacs-4/packages/glossar/catalog/glossar.de_DE.ISO-8859-1.xml 4 Jan 2006 08:09:35 -0000 1.6 +++ openacs-4/packages/glossar/catalog/glossar.de_DE.ISO-8859-1.xml 24 May 2006 06:12:31 -0000 1.7 @@ -20,7 +20,7 @@ <msg key="Glossar_Administration">Glossar Administration</msg> <msg key="glossar_comment">Kommentar</msg> <msg key="glossar_creation_user">Erstellt von</msg> - <msg key="glossar_description">Kommentar</msg> + <msg key="glossar_description">Formalien</msg> <msg key="glossar_dont_text">Nicht verwenden</msg> <msg key="glossar_Edit">Bearbeiten</msg> <msg key="glossar_etat">Etat</msg> @@ -50,13 +50,13 @@ <msg key="glossar_target_text">Zielausdruck</msg> <msg key="glossar_term_add">Ausdruck hinzuf�gen</msg> <msg key="glossar_term_edit">Aendern</msg> - <msg key="glossar_term_history">Alle Aenderungen</msg> + <msg key="glossar_term_history">Alle �nderungen</msg> <msg key="glossar_term_nr">Ausdruck Nr.</msg> <msg key="glossar_title">Titel</msg> <msg key="Glossars">Glossare</msg> <msg key="map_category_tree">Kategorieb�ume verkn�pfen</msg> <msg key="New_Glossar">Neuer Glossar</msg> - <msg key="New_Lecture">Neues Glossar</msg> + <msg key="New_Lecture">Neues Lektorats-Glossar</msg> <msg key="New_Translation">Neues �bersetzungsglossar</msg> <msg key="None">Keine Glossare vorhanden!</msg> <msg key="Rename">Umbenennen</msg> Index: openacs-4/packages/glossar/lib/glossar-file-upload.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/glossar/lib/glossar-file-upload.tcl,v diff -u -r1.4 -r1.5 --- openacs-4/packages/glossar/lib/glossar-file-upload.tcl 4 Jan 2006 08:09:37 -0000 1.4 +++ openacs-4/packages/glossar/lib/glossar-file-upload.tcl 24 May 2006 06:12:31 -0000 1.5 @@ -122,12 +122,12 @@ -elements { file { label "[_ glossar.File]" - display_col title + display_col name link_url_eval $file_url } rename { label "[_ glossar.Rename]" - display_template {<input name="rename.@files.item_id@" value="@files.title@" size="30"> + display_template {<input name="rename.@files.item_id@" value="@files.name@" size="30"> } } type { Index: openacs-4/packages/glossar/lib/glossar-list-postgresql.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/glossar/lib/glossar-list-postgresql.xql,v diff -u -r1.5 -r1.6 --- openacs-4/packages/glossar/lib/glossar-list-postgresql.xql 4 Jan 2006 08:09:37 -0000 1.5 +++ openacs-4/packages/glossar/lib/glossar-list-postgresql.xql 24 May 2006 06:12:31 -0000 1.6 @@ -50,7 +50,8 @@ cr_items ci where ci.parent_id = :glossar_id - and ci.content_type != 'gl_glossar_term' + and ci.content_type != 'gl_glossar_term' + and ci.live_revision is not null </querytext> </fullquery> Index: openacs-4/packages/glossar/lib/glossar-list.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/glossar/lib/glossar-list.tcl,v diff -u -r1.8 -r1.9 --- openacs-4/packages/glossar/lib/glossar-list.tcl 4 Jan 2006 08:09:37 -0000 1.8 +++ openacs-4/packages/glossar/lib/glossar-list.tcl 24 May 2006 06:12:31 -0000 1.9 @@ -32,6 +32,7 @@ } set user_id [ad_conn user_id] +set contact_id $owner_id if {[empty_string_p $user_id]} { ad_redirect_for_registration @@ -78,21 +79,21 @@ } -set row_list [list checkbox {} title {} description {} source_category {} target_category {} glossar_edit {} glossar_files {}] +set row_list [list checkbox {} title {} source_category {} target_category {} glossar_edit {} glossar_files {}] set no_perm_p 0 set return_url [ad_conn url] if [permission::permission_p -object_id $owner_id -privilege admin] { -} elseif {[permission::permission_p -object_id $owner_id -privilege create]} { +} elseif {[permission::permission_p -object_id $owner_id -privilege create] || [group::member_p -group_name Employees]} { set user_perm create } elseif {[permission::permission_p -object_id $owner_id -privilege read]} { set actions "" - set row_list [list title {} description {} source_category {} target_category {}] + set row_list [list title {} source_category {} target_category {}] } else { @@ -138,7 +139,7 @@ } -actions $actions -sub_class narrow \ -bulk_actions [list "[_ glossar.glossar_Move]" $move_url "[_ glossar.glossar_Move2]"] \ - -bulk_action_export_vars {return_url} \ + -bulk_action_export_vars {return_url contact_id} \ -orderby { default_value title glossar_id { @@ -156,6 +157,7 @@ } -orderby_name orderby \ -filters { customer_id {} + contact_id {} edit_link {} } \ -page_size_variable_p 1 \ @@ -187,13 +189,11 @@ set files_count [db_string get_files_count { } -default 0] set source_category "[category::get_name $source_category_id]" set target_category "[category::get_name $target_category_id]" - set title_url "[export_vars -base "${base_url}/glossar-term-list" {glossar_id}]" - set edit_url "[export_vars -base "${base_url}/glossar-edit" {glossar_id}]" + set title_url "[export_vars -base "${base_url}/glossar-term-list" {glossar_id contact_id}]" + set edit_url "[export_vars -base "${base_url}/glossar-edit" {glossar_id contact_id}]" set permission_url "[export_vars -base "/permissions/one" {{object_id $glossar_id} {application_url [ad_return_url]}}]" - set files_url "[export_vars -base "${base_url}/glossar-file-upload" {glossar_id}]" + set files_url "[export_vars -base "${base_url}/glossar-file-upload" {glossar_id contact_id}]" set target_url "/contacts/$organization_id" } if_no_rows { - - } } \ No newline at end of file Index: openacs-4/packages/glossar/lib/glossar-portlet-list.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/glossar/lib/glossar-portlet-list.tcl,v diff -u -r1.3 -r1.4 --- openacs-4/packages/glossar/lib/glossar-portlet-list.tcl 2 Jan 2006 13:22:06 -0000 1.3 +++ openacs-4/packages/glossar/lib/glossar-portlet-list.tcl 24 May 2006 06:12:31 -0000 1.4 @@ -26,6 +26,7 @@ set page_size 100 set base_url "glossar" set user_id [ad_conn user_id] +set contact_id $owner_id if {[empty_string_p $user_id]} { ad_redirect_for_registration @@ -84,7 +85,7 @@ if [permission::permission_p -object_id $owner_id -privilege admin] { -} elseif {[permission::permission_p -object_id $owner_id -privilege create]} { +} elseif {[permission::permission_p -object_id $owner_id -privilege create] || [group::member_p -group_name Employees]} { set user_perm create @@ -188,8 +189,6 @@ set new_glossar "[export_vars -base "${base_url}/index" {owner_id {customer_id $gl_owner_id}}]" } } if_no_rows { - - } } Index: openacs-4/packages/glossar/lib/glossar-term-list-postgresql.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/glossar/lib/glossar-term-list-postgresql.xql,v diff -u -r1.4 -r1.5 --- openacs-4/packages/glossar/lib/glossar-term-list-postgresql.xql 4 Jan 2006 08:09:37 -0000 1.4 +++ openacs-4/packages/glossar/lib/glossar-term-list-postgresql.xql 24 May 2006 06:12:31 -0000 1.5 @@ -15,7 +15,7 @@ WHERE gi.latest_revision = g.glossar_id AND g.owner_id = o.organization_id AND g.source_category_id = :source_category_id - AND g.target_category_id = :target_category_id + $target_where_clause AND r.rel_id = :owner_id AND r.object_id_one = o.organization_id AND r.rel_type = 'contact_rels_etat' @@ -29,7 +29,7 @@ WHERE gi.latest_revision = g.glossar_id AND g.owner_id = r.rel_id AND g.source_category_id = :source_category_id - AND g.target_category_id = :target_category_id + $target_where_clause AND r.object_id_one = :owner_id AND r.object_id_two = o.organization_id AND r.rel_type = 'contact_rels_etat' Index: openacs-4/packages/glossar/lib/glossar-term-list.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/glossar/lib/glossar-term-list.adp,v diff -u -r1.5 -r1.6 --- openacs-4/packages/glossar/lib/glossar-term-list.adp 4 Jan 2006 08:09:37 -0000 1.5 +++ openacs-4/packages/glossar/lib/glossar-term-list.adp 24 May 2006 06:12:31 -0000 1.6 @@ -12,25 +12,29 @@ <td> <table> <tr> - <td><b>#glossar.Title#:</b></td> - <td> @glossar_title@</td> - </tr> - <tr> - <td><b>#glossar.Comment#:</b></td> - <td> @glossar_comment;noquote@ </td> - </tr> - <tr> <td><b>#glossar.glossar_single_category#:</b></td> <td> @glossar_language;noquote@ </td> </tr> + <if @glossar_target_lan@ not nil> <tr> <td><b>#glossar.glossar_target_category#:</b></td> <td> @glossar_target_lan;noquote@ </td> </tr> + </if> <tr> + <td><b>#glossar.Comment#:</b></td> + <td> <b> @glossar_comment;noquote@ </b> </td> + </tr> + <if @files:rowcount@ gt 0> + <tr> <td><b>#glossar.Files#:</b></td> - <td> @files;noquote@ </td> + <td> + <multiple name=files> + <a href="download/@files.name@?file_id=@files.item_id@" title="@files.name@">@files.name@</a><br> + </multiple> + </td> </tr> + </if> </table> </td> </tr> Index: openacs-4/packages/glossar/lib/glossar-term-list.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/glossar/lib/glossar-term-list.tcl,v diff -u -r1.5 -r1.6 --- openacs-4/packages/glossar/lib/glossar-term-list.tcl 4 Jan 2006 08:09:37 -0000 1.5 +++ openacs-4/packages/glossar/lib/glossar-term-list.tcl 24 May 2006 06:12:31 -0000 1.6 @@ -7,7 +7,7 @@ # @arch-tag: beb88796-955e-4cbd-af5e-3919597c7ed1 # @cvs-id $Id$ -foreach required_param {glossar_id searchterm} { +foreach required_param {glossar_id contact_id searchterm} { if {![info exists $required_param]} { return -code error "$required_param is a required parameter." } @@ -32,22 +32,9 @@ set glossar_language "<div align=\"center\"> - - - - - - - - -</div>" } -if {[empty_string_p $glossar_target_lan] } { - set glossar_target_lan "<div align=\"center\"> - - - - - - - - -</div>" -} - # get all the files -set files [list] -db_foreach get_files { } { - lappend files "<a href=\"download/?file_id=$item_id\" title=\"$name\">$title</a>" -} +db_multirow files get_files {} -if {[empty_string_p $files] } { - set files "<div align=\"center\"> - - - - - - - - -</div>" -} else { - set files [join $files ", "] -} - if {![info exists format]} { set format "normal" } @@ -67,7 +54,7 @@ if {$format == "normal"} { set row_list [list source_text {} target_text {} dont_text {} description {} owner {} last_modified {} creation_user {} edit {} history {}] } else { - set row_list [list source_text {} target_text {} dont_text {} description {} owner {} last_modified {} creation_user {}] + set row_list [list source_text {} target_text {} dont_text {} description {} owner {} last_modified {} creator_name {}] } set glossar_ids $glossar_id @@ -87,38 +74,40 @@ set glossar_owner_lable "[_ glossar.glossar_etat]" } -# get glossars with matching languages that belongs to the relationships -db_foreach $glossar_query_name {} { - lappend glossar_ids $item_id - set owners($owner_id) $name -} - if {![empty_string_p $target_category_id]} { - + + set target_where_clause "AND g.target_category_id = :target_category_id" set source_text_lable [_ glossar.glossar_source_text] - set actions [list "[_ glossar.glossar_New_term]" [export_vars -base glossar-term-add {glossar_id}] "[_ glossar.glossar_New_term]" ] + set actions [list "[_ glossar.glossar_New_term]" [export_vars -base glossar-term-add {glossar_id contact_id}] "[_ glossar.glossar_New_term]" ] } else { + set target_where_clause "" set row_list [lreplace $row_list 2 3] set source_text_lable [_ glossar.glossar_singel_text] - set actions [list "[_ glossar.glossar_New_term]" [export_vars -base glossar-term-add {glossar_id}] "[_ glossar.glossar_New_term]"] + set actions [list "[_ glossar.glossar_New_term]" [export_vars -base glossar-term-add {glossar_id contact_id}] "[_ glossar.glossar_New_term]"] } +# get glossars with matching languages that belongs to the relationships +db_foreach $glossar_query_name {} { + lappend glossar_ids $item_id + set owners($owner_id) $name +} + if {[permission::permission_p -object_id $glossar_id -privilege admin]} { if {$format == "normal"} { set where_format " AND " - lappend actions "[_ glossar.glossar_Format_CSV]" [export_vars -base glossar-term-list {glossar_id {format csv}}] "[_ glossar.glossar_New2]" + lappend actions "[_ glossar.glossar_Format_CSV]" [export_vars -base glossar-term-list {glossar_id contact_id {format csv}}] "[_ glossar.glossar_New2]" } else { set where_format " " - lappend actions "[_ glossar.glossar_Format_Normal]" [export_vars -base glossar-term-list {glossar_id {format normal}}] "[_ glossar.glossar_New2]" + lappend actions "[_ glossar.glossar_Format_Normal]" [export_vars -base glossar-term-list {glossar_id contact_id {format normal}}] "[_ glossar.glossar_New2]" } } elseif {[permission::permission_p -object_id $glossar_id -privilege create]} { @@ -183,7 +172,7 @@ label {[_ glossar.glossar_dont_text]} } description { - label {[_ glossar.glossar_description]} + label {[_ glossar.glossar_comment]} } owner { label {$glossar_owner_lable} @@ -195,6 +184,9 @@ label {[_ glossar.glossar_creation_user]} display_template {<a href="@gl_term.creator_url@">@gl_term.last_name@, @gl_term.first_names@</a>} } + creator_name { + label {[_ glossar.glossar_creation_user]} + } edit { label " " display_template {<a href="@gl_term.edit_url@"><img border="0" src="/shared/images/Edit16.gif" alt="#acs-kernel.common_Edit#" /></a>} @@ -225,6 +217,18 @@ orderby_asc {lower(glt.dont_text) asc} default_direction asc } + description { + label {[_ glossar.glossar_comment]} + orderby_desc {lower(crr.description) desc} + orderby_asc {lower(crr.description) asc} + default_direction asc + } + owner { + label {[_ glossar.glossar_owner]} + orderby_desc {g.owner_id desc} + orderby_asc {g.owner_id asc} + default_direction asc + } last_modified { label {[_ glossar.glossar_last_modified]} orderby_desc {aco.last_modified desc} @@ -239,6 +243,7 @@ } } -filters { glossar_id {} + contact_id {} searchterm { label "[_ glossar.glossar_term_search]" where_clause $search_where_clause @@ -263,9 +268,9 @@ -set hidden_vars [export_vars -form {glossar_id gl_translation_p orderby format page owner_id customer_id }] +set hidden_vars [export_vars -form {glossar_id gl_translation_p orderby format page owner_id customer_id contact_id }] -db_multirow -extend {gl_translation_p creator_url edit_url history_url owner} gl_term gl_term {} { +db_multirow -extend {gl_translation_p creator_url creator_name edit_url history_url owner} gl_term gl_term {} { if {![empty_string_p $target_text]} { set gl_translation_p 1 } else { @@ -282,11 +287,12 @@ } else { set owner "" } - + + set creator_name "$first_names $last_name" set last_modified [lc_time_fmt $last_modified $time_format] set creator_url [acs_community_member_url -user_id $creation_user] - set edit_url [export_vars -base glossar-term-add {glossar_id term_id}] - set history_url [export_vars -base glossar-term-rev-list {glossar_id term_id}] + set edit_url [export_vars -base glossar-term-add {glossar_id term_id contact_id}] + set history_url [export_vars -base glossar-term-rev-list {glossar_id term_id contact_id}] } if_no_rows {} -# template::list::write_output -name gl_term +template::list::write_output -name gl_term Index: openacs-4/packages/glossar/lib/glossar-term-rev-list.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/glossar/lib/glossar-term-rev-list.tcl,v diff -u -r1.4 -r1.5 --- openacs-4/packages/glossar/lib/glossar-term-rev-list.tcl 4 Jan 2006 08:09:37 -0000 1.4 +++ openacs-4/packages/glossar/lib/glossar-term-rev-list.tcl 24 May 2006 06:12:31 -0000 1.5 @@ -9,7 +9,7 @@ -foreach required_param {glossar_id term_id searchterm} { +foreach required_param {glossar_id term_id contact_id searchterm} { if {![info exists $required_param]} { return -code error "$required_param is a required parameter." } @@ -143,6 +143,7 @@ } -filters { glossar_id {} term_id {} + contact_id {} searchterm { label "[_ glossar.glossar_term_search]" where_clause $search_where_clause @@ -171,7 +172,8 @@ # May add extra order_by clause -set hidden_vars [export_vars -form {glossar_id gl_translation_p orderby format page term_id}] +set hidden_vars [export_vars -form {glossar_id gl_translation_p orderby format page term_id contact_id}] + db_multirow -extend {gl_translation_p creator_url} gl_term_rev gl_term_rev {} { set creator_url [acs_community_member_url -user_id $creation_user] set last_modified [lc_time_fmt $last_modified $time_format] Index: openacs-4/packages/glossar/www/glossar-add.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/glossar/www/glossar-add.adp,v diff -u -r1.1 -r1.2 --- openacs-4/packages/glossar/www/glossar-add.adp 20 Aug 2005 09:37:51 -0000 1.1 +++ openacs-4/packages/glossar/www/glossar-add.adp 24 May 2006 06:12:31 -0000 1.2 @@ -1,5 +1,6 @@ -<master> - <property name="title">@page_title@</property> - <property name="context">@context@</property> +<master src="/packages/contacts/lib/contact-master" /> + <property name="party_id">@owner_id@</property> + <property name="context">@context;noquote@</property> + <property name="title">@page_title;noquote@</property> -<formtemplate id="glossar-add"></formtemplate> \ No newline at end of file +<formtemplate id="glossar-add"></formtemplate> Index: openacs-4/packages/glossar/www/glossar-add.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/glossar/www/glossar-add.tcl,v diff -u -r1.5 -r1.6 --- openacs-4/packages/glossar/www/glossar-add.tcl 4 Jan 2006 08:09:39 -0000 1.5 +++ openacs-4/packages/glossar/www/glossar-add.tcl 24 May 2006 06:12:31 -0000 1.6 @@ -20,21 +20,19 @@ if {$gl_translation_p == 1} { if {[exists_and_not_null glossar_id]} { - set context "translation-edit" set page_title "[_ glossar.Edit_Translation]" } else { - set context "translation-add" set page_title "[_ glossar.New_Translation]" } } else { if {[exists_and_not_null glossar_id]} { - set context "glossar-edit" set page_title "[_ glossar.Edit_Glossar]" } else { - set context "glossar-add" set page_title "[_ glossar.Add_new_Glossar]" } } + +set context [list [list "/contacts/$owner_id" [contact::name -party_id $owner_id]] $page_title] acs_object::get -object_id $owner_id -array owner set package_id $owner(package_id) @@ -49,7 +47,7 @@ ad_form -name glossar-add -export {owner_id package_id gl_translation_p customer_id} -form { {glossar_id:key} {title:text(text) {label "[_ glossar.Title]"} } - {description:text(textarea),optional {label "[_ glossar.Comment]"} {html{rows 4 cols 30} }} + {description:text(textarea),optional {label "[_ glossar.Comment]"} {html {rows 6 cols 80} }} } Index: openacs-4/packages/glossar/www/glossar-edit.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/glossar/www/glossar-edit.adp,v diff -u -r1.2 -r1.3 --- openacs-4/packages/glossar/www/glossar-edit.adp 23 Aug 2005 19:40:47 -0000 1.2 +++ openacs-4/packages/glossar/www/glossar-edit.adp 24 May 2006 06:12:31 -0000 1.3 @@ -1,5 +1,6 @@ -<master> - <property name="title">#glossar.Change_Glossar#</property> - +<master src="/packages/contacts/lib/contact-master" /> + <property name="party_id">@contact_id@</property> + <property name="context">@context;noquote@</property> + <property name="title">@page_title;noquote@</property> -<formtemplate id="glossar-edit"></formtemplate> \ No newline at end of file +<formtemplate id="glossar-edit"></formtemplate> Index: openacs-4/packages/glossar/www/glossar-edit.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/glossar/www/glossar-edit.tcl,v diff -u -r1.4 -r1.5 --- openacs-4/packages/glossar/www/glossar-edit.tcl 4 Jan 2006 08:09:39 -0000 1.4 +++ openacs-4/packages/glossar/www/glossar-edit.tcl 24 May 2006 06:12:31 -0000 1.5 @@ -10,61 +10,65 @@ @cvs-id $Id$ } { glossar_id:notnull + contact_id:notnull } -properties { - -} -validate { -} -errors { } -db_1row get_glossar {} - set from_object_id [db_string get_from_default_object { }] set to_object_id [db_string get_to_default_object { }] # We get the mapped category tree's to show in the form set source_tree_id [lindex [lindex [category_tree::get_mapped_trees $from_object_id] 0] 0] set target_tree_id [lindex [lindex [category_tree::get_mapped_trees $to_object_id] 0] 0] -ad_form -name glossar-edit -form { +set page_title "[_ glossar.Change_Glossar]" +set context [list [list "/contacts/$contact_id" [contact::name -party_id $contact_id]] $page_title] +db_1row check_translation_p {} + +ad_form -name glossar-edit -export {contact_id} -form { + {glossar_id:key} {title:text(text) {label "[_ glossar.Title]"} } - {description:text(textarea),optional {label "[_ glossar.Comment]"} {html{rows 4 cols 30} }} + {description:text(textarea),optional {label "[_ glossar.Comment]"} {html {rows 6 cols 80} }} } -if {![empty_string_p $target_category_id]} { +if {$translation_p == "t"} { ad_form -extend -name glossar-edit -form { - {source_category_id:integer(category) {label "[_ glossar.glossar_source_category]"} {category_tree_id $source_tree_id} {category_assign_single_p t} {category_require_category_p t}} + {source_category_id:integer(category) {label "[_ glossar.glossar_source_category]"} {category_tree_id $source_tree_id} {category_assign_single_p t} {category_require_category_p t} {category_mapped $source_cat_id}} - {target_category_id:integer(category) {label "[_ glossar.glossar_target_category]"} {category_tree_id $target_tree_id} {category_assign_single_p t} {category_require_category_p t}} + {target_category_id:integer(category) {label "[_ glossar.glossar_target_category]"} {category_tree_id $target_tree_id} {category_assign_single_p t} {category_require_category_p t} {category_mapped $target_cat_id}} } - } else { ad_form -extend -name glossar-edit -form { - - {source_category_id:integer(category) {label "[_ glossar.glossar_single_category]"} {category_tree_id $source_tree_id} {category_assign_single_p t} {category_require_category_p t}} - {target_category_id:text(hidden) {value "[db_null]"}} + {source_category_id:integer(category) {label "[_ glossar.glossar_single_category]"} {category_tree_id $source_tree_id} {category_assign_single_p t} {category_require_category_p t} {category_mapped $source_cat_id}} + {target_category_id:text(hidden) {value "[db_null]"}} } - } - + +db_0or1row check_rel_owner {} + set group_id [group::get_id -group_name "Etat"] -set is_etat_p [db_string check_if_is_etat {} -default 0] +if {[db_string check_if_is_etat {} -default 0]} { + set target_label "[_ glossar.glossar_organization]" +} else { + set target_label "[_ glossar.glossar_etat]" +} set options [db_list_of_lists get_etats {}] set options [concat [list [list "" ""]] $options] if {[llength $options] > 1} { ad_form -extend -name glossar-edit -form { - {target_id:integer(select),optional {label "[_ glossar.glossar_etat]"} {options $options}} + {target_id:integer(select),optional {label $target_label} {options $options}} } } else { ad_form -extend -name glossar-edit -form { @@ -75,16 +79,28 @@ ad_form -extend -name glossar-edit -form { {owner_id:text(hidden)} } -edit_request { + db_1row get_glossar {} + + set organization_p [organization::organization_p -party_id $owner_id] + if {!$organization_p} { + db_1row get_rel_id {} + } + if {[exists_and_not_null rel_target_id]} { + set target_id $rel_target_id + } + } -edit_data { set old_owner_id $owner_id + if {![empty_string_p $target_id]} { - db_1row get_rel_id {} + db_1row get_rel_id2 {} } - gl_glossar::edit -glossar_item_id $glossar_id -title $title -description $comment -source_category_id $source_category_id -target_category_id $target_category_id -owner_id $owner_id -etat_id "" + gl_glossar::edit -glossar_item_id $glossar_id -title $title -description $description -source_category_id $source_category_id -target_category_id $target_category_id -owner_id $owner_id -etat_id "" + } -after_submit { - ad_returnredirect "/contacts/$old_owner_id" + ad_returnredirect "/contacts/$contact_id" ad_script_abort } Index: openacs-4/packages/glossar/www/glossar-edit.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/glossar/www/glossar-edit.xql,v diff -u -r1.2 -r1.3 --- openacs-4/packages/glossar/www/glossar-edit.xql 4 Jan 2006 08:09:39 -0000 1.2 +++ openacs-4/packages/glossar/www/glossar-edit.xql 24 May 2006 06:12:31 -0000 1.3 @@ -1,10 +1,21 @@ <?xml version="1.0"?> <queryset> +<fullquery name="check_translation_p"> + <querytext> + SELECT case when g.target_category_id is null then 'f' else 't' end as translation_p, g.owner_id, + g.source_category_id as source_cat_id, g.target_category_id as target_cat_id + FROM gl_glossars g, + cr_items i + WHERE i.item_id = :glossar_id + AND g.glossar_id = i.latest_revision + </querytext> +</fullquery> + <fullquery name="get_glossar"> <querytext> SELECT r.title, - r.description as comment, + r.description, g.source_category_id, g.target_category_id, g.etat_id, @@ -54,6 +65,16 @@ </querytext> </fullquery> +<fullquery name="check_rel_owner"> + <querytext> + select case when object_id_one = :contact_id then object_id_two else object_id_one end as rel_target_id, + :contact_id as owner_id + from acs_rels + where rel_id = :owner_id + and rel_type = 'contact_rels_etat' + </querytext> +</fullquery> + <fullquery name="check_if_is_etat"> <querytext> select count(*) @@ -65,6 +86,15 @@ <fullquery name="get_rel_id"> <querytext> + SELECT :contact_id as owner_id + FROM acs_rels ar + WHERE ar.rel_id = :owner_id + AND ar.rel_type = 'contact_rels_etat' + </querytext> +</fullquery> + +<fullquery name="get_rel_id2"> + <querytext> SELECT ar.rel_id as owner_id FROM acs_rels ar WHERE ((object_id_one = :owner_id and object_id_two = :target_id) Index: openacs-4/packages/glossar/www/glossar-file-upload.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/glossar/www/glossar-file-upload.adp,v diff -u -r1.2 -r1.3 --- openacs-4/packages/glossar/www/glossar-file-upload.adp 23 Aug 2005 19:40:47 -0000 1.2 +++ openacs-4/packages/glossar/www/glossar-file-upload.adp 24 May 2006 06:12:31 -0000 1.3 @@ -1,7 +1,7 @@ -<master> - <property name="title">#glossar.Glossar_Files#</property> - <property name="context">glossar-file-upload</property> +<master src="/packages/contacts/lib/contact-master" /> + <property name="party_id">@contact_id@</property> + <property name="context">@context;noquote@</property> + <property name="title">@page_title;noquote@</property> - <include src="/packages/glossar/lib/glossar-file-upload" glossar_id=@glossar_id@ upload_count="@upload_count@" order_by=@order_by@> Index: openacs-4/packages/glossar/www/glossar-file-upload.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/glossar/www/glossar-file-upload.tcl,v diff -u -r1.1 -r1.2 --- openacs-4/packages/glossar/www/glossar-file-upload.tcl 20 Aug 2005 09:37:51 -0000 1.1 +++ openacs-4/packages/glossar/www/glossar-file-upload.tcl 24 May 2006 06:12:31 -0000 1.2 @@ -12,11 +12,16 @@ glossar_id:notnull {upload_count "1"} {order_by "file,asc"} + contact_id:notnull } -properties { glossar_id upload_count order_by -} -validate { -} -errors { } +set page_title "[_ glossar.Glossar_Files]" +set context [list [list "/contacts/$contact_id" [contact::name -party_id $contact_id]] $page_title] + +db_1row glossar_title {} + +append page_title ": $glossar_title" Index: openacs-4/packages/glossar/www/glossar-move.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/glossar/www/glossar-move.adp,v diff -u -r1.1 -r1.2 --- openacs-4/packages/glossar/www/glossar-move.adp 13 Nov 2005 13:39:56 -0000 1.1 +++ openacs-4/packages/glossar/www/glossar-move.adp 24 May 2006 06:12:31 -0000 1.2 @@ -1,14 +1,13 @@ -<master> -<property name="title">Move glossar</property> -<property name="context">@context@</property> +<master src="/packages/contacts/lib/contact-master" /> + <property name="party_id">@contact_id@</property> + <property name="context">@context;noquote@</property> + <property name="title">@page_title;noquote@</property> -<h1>Move glossar</h1> - -<p>Search for <b>Customers</b> who's name contains: </p> +<p>#glossar.glossar_move_search#</p> <p> -<formtemplate id="search" style="../../../contacts/resources/forms/inline"></formtemplate> +<formtemplate id="search" style="/packages/contacts/resources/forms/inline"></formtemplate> </p> <if @query@ not nil> <listtemplate name="customers"></listtemplate> -</if> \ No newline at end of file +</if> Index: openacs-4/packages/glossar/www/glossar-move.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/glossar/www/glossar-move.tcl,v diff -u -r1.2 -r1.3 --- openacs-4/packages/glossar/www/glossar-move.tcl 4 Jan 2006 08:09:39 -0000 1.2 +++ openacs-4/packages/glossar/www/glossar-move.tcl 24 May 2006 06:12:31 -0000 1.3 @@ -10,17 +10,21 @@ {return_url "/"} {query ""} {glossar_id:notnull,multiple} + contact_id:notnull } -set context "search" +#move glossar +set page_title "[_ glossar.glossar_move]" +set context [list [list "/contacts/$contact_id" [contact::name -party_id $contact_id]] $page_title] + set search_id "" set glossar_id [string trim $glossar_id "{}"] set customer_group_id [group::get_id -group_name "Customers"] -ad_form -name search -export {glossar_id} -form { +ad_form -name search -export {glossar_id contact_id} -form { {query:text(text) {label ""} {html {size 24}}} - {Search:text(submit) {value "Search"}} + {search:text(submit) {value 1} {label "[_ glossar.search]"}} } template::list::create \ @@ -36,5 +40,5 @@ } } db_multirow -extend {move_url} customers get_customers_from_prefix {} { - set move_url [export_vars -base "move-glossar" {{customer_id $organization_id} glossar_id:multiple return_url}] + set move_url [export_vars -base "move-glossar" {{customer_id $organization_id} glossar_id:multiple return_url contact_id}] } Index: openacs-4/packages/glossar/www/glossar-move.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/glossar/www/glossar-move.xql,v diff -u -r1.2 -r1.3 --- openacs-4/packages/glossar/www/glossar-move.xql 4 Jan 2006 08:09:39 -0000 1.2 +++ openacs-4/packages/glossar/www/glossar-move.xql 24 May 2006 06:12:31 -0000 1.3 @@ -9,10 +9,9 @@ WHERE o.organization_id = p.party_id AND o.organization_id = m.member_id AND m.group_id = :customer_group_id - [contact::search_clause -and -search_id $search_id -query $query -party_id "o.party_id" -revision_id "revision_id"] + [contact::search_clause -and -search_id $search_id -query $query -party_id "p.party_id" -revision_id "revision_id"] </querytext> </fullquery> - </queryset> Index: openacs-4/packages/glossar/www/glossar-term-add.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/glossar/www/glossar-term-add.adp,v diff -u -r1.1 -r1.2 --- openacs-4/packages/glossar/www/glossar-term-add.adp 20 Aug 2005 09:37:51 -0000 1.1 +++ openacs-4/packages/glossar/www/glossar-term-add.adp 24 May 2006 06:12:31 -0000 1.2 @@ -1,6 +1,7 @@ -<master> - <property name="title">@title@</property> - <property name="context">@context@</property> +<master src="/packages/contacts/lib/contact-master" /> + <property name="party_id">@contact_id@</property> + <property name="context">@context;noquote@</property> + <property name="title">@page_title;noquote@</property> <formtemplate id="glossar-term-add"></formtemplate> Index: openacs-4/packages/glossar/www/glossar-term-add.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/glossar/www/glossar-term-add.tcl,v diff -u -r1.3 -r1.4 --- openacs-4/packages/glossar/www/glossar-term-add.tcl 4 Jan 2006 08:09:39 -0000 1.3 +++ openacs-4/packages/glossar/www/glossar-term-add.tcl 24 May 2006 06:12:31 -0000 1.4 @@ -15,43 +15,50 @@ {target_text ""} {dont_text ""} {description ""} + {__new_p 0} + contact_id:notnull } -properties { -} -validate { -} -errors { } -set context "[_ glossar.glossar_term_add]" -set title "[_ glossar.Add_a_Term_to_a_Glossar]" +db_1row glossar_title {} +if {![info exists term_id] || $__new_p} { + set context [list [list "/contacts/$contact_id" [contact::name -party_id $contact_id]] [list [export_vars -base "glossar-term-list" {glossar_id contact_id}] $glossar_title] "[_ glossar.glossar_term_add]"] + set page_title "[_ glossar.Add_a_Term_to_a_Glossar]" +} else { + set context [list [list "/contacts/$contact_id" [contact::name -party_id $contact_id]] [list [export_vars -base "glossar-term-list" {glossar_id contact_id}] $glossar_title] "[_ glossar.Edit_Term]"] + set page_title "[_ glossar.Edit_Term]" +} + db_1row get_glossar_data { select g.target_category_id from gl_glossars g, cr_items gi where g.glossar_id = gi.latest_revision and gi.item_id = :glossar_id } -ad_form -name glossar-term-add -export {glossar_id} -form { +ad_form -name glossar-term-add -export {glossar_id contact_id} -form { {term_id:key} } if {![empty_string_p $target_category_id]} { ad_form -extend -name glossar-term-add -form { - {source_text:text(textarea),optional {label "[_ glossar.glossar_source_text]"} {html {rows 4 cols 60}}} - {target_text:text(textarea),optional {label "[_ glossar.glossar_target_text]"} {html {rows 4 cols 60}}} + {source_text:text(textarea),optional {label "[_ glossar.glossar_source_text]"} {html {rows 4 cols 50}}} + {target_text:text(textarea),optional {label "[_ glossar.glossar_target_text]"} {html {rows 4 cols 50}}} } } else { ad_form -extend -name glossar-term-add -form { - {source_text:text(textarea),optional {label "[_ glossar.glossar_singel_text]"} {html {rows 4 cols 60}}} + {source_text:text(textarea),optional {label "[_ glossar.glossar_singel_text]"} {html {rows 4 cols 50}}} } } ad_form -extend -name glossar-term-add -form { {dont_text:text(textarea),optional {label "[_ glossar.glossar_dont_text]"} {html {rows 4 cols 50}}} - {description:text(textarea),optional {label "[_ glossar.glossar_description]"} {html {rows 4 cols 50}}} + {description:text(textarea),optional {label "[_ glossar.glossar_comment]"} {html {rows 4 cols 50}}} } -new_request { Index: openacs-4/packages/glossar/www/glossar-term-list.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/glossar/www/glossar-term-list.adp,v diff -u -r1.3 -r1.4 --- openacs-4/packages/glossar/www/glossar-term-list.adp 4 Jan 2006 08:09:39 -0000 1.3 +++ openacs-4/packages/glossar/www/glossar-term-list.adp 24 May 2006 06:12:31 -0000 1.4 @@ -1,5 +1,6 @@ -<master> - <property name="title">#glossar.Glossars#</property> - <property name="context">index</property> +<master src="/packages/contacts/lib/contact-master" /> + <property name="party_id">@contact_id@</property> + <property name="context">@context;noquote@</property> + <property name="title">@page_title;noquote@</property> - <include src="/packages/glossar/lib/glossar-term-list" glossar_id=@glossar_id@ page=@page@ orderby=@orderby@ searchterm=@searchterm@ format=@format@></include> \ No newline at end of file + <include src="/packages/glossar/lib/glossar-term-list" glossar_id="@glossar_id@" page="@page@" orderby="@orderby@" searchterm="@searchterm@" format="@format@" contact_id="@contact_id@"> Index: openacs-4/packages/glossar/www/glossar-term-list.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/glossar/www/glossar-term-list.tcl,v diff -u -r1.2 -r1.3 --- openacs-4/packages/glossar/www/glossar-term-list.tcl 4 Jan 2006 08:09:39 -0000 1.2 +++ openacs-4/packages/glossar/www/glossar-term-list.tcl 24 May 2006 06:12:31 -0000 1.3 @@ -14,6 +14,7 @@ {orderby ""} {searchterm ""} {format "normal"} + contact_id:notnull } -properties { glossar_id gl_translation_p @@ -23,7 +24,9 @@ customer_id format owner_id -} -validate { -} -errors { } +db_1row glossar_title {} + +set page_title "[_ glossar.Glossars] \"$glossar_title\"" +set context [list [list "/contacts/$contact_id" [contact::name -party_id $contact_id]] $page_title] Index: openacs-4/packages/glossar/www/glossar-term-rev-list.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/glossar/www/glossar-term-rev-list.adp,v diff -u -r1.3 -r1.4 --- openacs-4/packages/glossar/www/glossar-term-rev-list.adp 4 Jan 2006 08:09:39 -0000 1.3 +++ openacs-4/packages/glossar/www/glossar-term-rev-list.adp 24 May 2006 06:12:31 -0000 1.4 @@ -1,5 +1,6 @@ -<master> - <property name="title">#glossar.Glossars#</property> - <property name="context">index</property> +<master src="/packages/contacts/lib/contact-master" /> + <property name="party_id">@contact_id@</property> + <property name="context">@context;noquote@</property> + <property name="title">@page_title;noquote@</property> - <include src="/packages/glossar/lib/glossar-term-rev-list" glossar_id=@glossar_id@ page=@page@ orderby=@orderby@ searchterm=@searchterm@ term_id=@term_id@></include> \ No newline at end of file + <include src="/packages/glossar/lib/glossar-term-rev-list" glossar_id="@glossar_id@" page="@page@" orderby="@orderby@" searchterm="@searchterm@" term_id="@term_id@" contact_id="@contact_id@"> Index: openacs-4/packages/glossar/www/glossar-term-rev-list.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/glossar/www/glossar-term-rev-list.tcl,v diff -u -r1.2 -r1.3 --- openacs-4/packages/glossar/www/glossar-term-rev-list.tcl 4 Jan 2006 08:09:39 -0000 1.2 +++ openacs-4/packages/glossar/www/glossar-term-rev-list.tcl 24 May 2006 06:12:31 -0000 1.3 @@ -14,12 +14,18 @@ {page ""} {orderby ""} {searchterm ""} + contact_id:notnull } -properties { glossar_id page orderby searchterm term_id -} -validate { -} -errors { + } + +db_1row glossar_title {} +db_1row term_title {} + +set page_title "[_ glossar.Glossar_term_history_of] \"$term_title\"" +set context [list [list "/contacts/$contact_id" [contact::name -party_id $contact_id]] [list [export_vars -base "glossar-term-list" {glossar_id contact_id}] $glossar_title] $page_title] Index: openacs-4/packages/glossar/www/move-glossar.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/glossar/www/move-glossar.tcl,v diff -u -r1.2 -r1.3 --- openacs-4/packages/glossar/www/move-glossar.tcl 4 Jan 2006 08:09:39 -0000 1.2 +++ openacs-4/packages/glossar/www/move-glossar.tcl 24 May 2006 06:12:31 -0000 1.3 @@ -3,25 +3,40 @@ } { customer_id:integer,notnull glossar_id:integer,notnull,multiple + contact_id:notnull {return_url} } -foreach id $glossar_id { - set glossar_revision_id [content::item::get_best_revision -item_id $id] - db_1row get_glossar_info { - SELECT g.source_category_id, g.target_category_id, g.etat_id, r.title, r.description - FROM gl_glossars g, cr_revisions r - WHERE g.glossar_id = :glossar_revision_id - AND g.glossar_id = r.revision_id - } +db_transaction { + foreach id $glossar_id { + set glossar_revision_id [content::item::get_best_revision -item_id $id] + set owner_id $customer_id + + db_1row get_glossar_info { + SELECT g.source_category_id, g.target_category_id, g.etat_id, r.title, r.description, + g.owner_id as old_owner_id + FROM gl_glossars g, cr_revisions r + WHERE g.glossar_id = :glossar_revision_id + AND g.glossar_id = r.revision_id + } + + db_0or1row check_owner_rel { + select rel_id as owner_id + from acs_rels + where rel_type = 'contact_rels_etat' + and object_id_one = :contact_id + and object_id_two = :customer_id + and exists (select 1 from acs_rels where rel_id = :old_owner_id) + } - gl_glossar::edit -glossar_item_id $id \ - -owner_id $customer_id \ - -source_category_id $source_category_id\ - -target_category_id $target_category_id\ - -etat_id "" \ - -title $title \ - -description $description + gl_glossar::edit -glossar_item_id $id \ + -owner_id $owner_id \ + -source_category_id $source_category_id\ + -target_category_id $target_category_id\ + -etat_id "" \ + -title $title \ + -description $description + } } -ad_returnredirect $return_url \ No newline at end of file +ad_returnredirect "/contacts/$customer_id"