Index: openacs-4/packages/contacts/contacts.info
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/contacts/contacts.info,v
diff -u -N -r1.53 -r1.54
--- openacs-4/packages/contacts/contacts.info 23 Nov 2005 17:34:14 -0000 1.53
+++ openacs-4/packages/contacts/contacts.info 25 Nov 2005 18:12:21 -0000 1.54
@@ -7,14 +7,14 @@
f
f
-
+
Matthew Geddert
This application lets you collaboratively view, edit and categorize contacts.
2005-11-23
Contacts is an application for managing all those people and or organization you need to keep track of. It has a complete UI for storing and categorizing contacts. Each contact can have an arbitrary number of custom attributes associated with it, including other contacts (i.e. a certain contact "belongs" to a certain organization). It also functions as a service contract provider for attributes related to users in your system
0
-
+
Index: openacs-4/packages/contacts/lib/contacts-aggregated.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/contacts/lib/contacts-aggregated.tcl,v
diff -u -N -r1.8 -r1.9
--- openacs-4/packages/contacts/lib/contacts-aggregated.tcl 17 Nov 2005 18:22:02 -0000 1.8
+++ openacs-4/packages/contacts/lib/contacts-aggregated.tcl 25 Nov 2005 18:12:21 -0000 1.9
@@ -215,6 +215,7 @@
db_dml insert_extend { }
}
}
+ db_dml update_search { }
} -after_submit {
ad_returnredirect "?search_id=$search_id&aggregate_attribute_id=$aggregate_attribute_id"
}
Index: openacs-4/packages/contacts/lib/contacts-aggregated.xql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/contacts/lib/contacts-aggregated.xql,v
diff -u -N -r1.7 -r1.8
--- openacs-4/packages/contacts/lib/contacts-aggregated.xql 17 Nov 2005 18:22:02 -0000 1.7
+++ openacs-4/packages/contacts/lib/contacts-aggregated.xql 25 Nov 2005 18:12:21 -0000 1.8
@@ -34,6 +34,13 @@
+
+
+ update contact_searches set aggregated_attribute = :aggregate_attribute_id
+ where search_id = :search_id
+
+
+
select
Index: openacs-4/packages/contacts/www/searches.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/contacts/www/searches.tcl,v
diff -u -N -r1.2 -r1.3
--- openacs-4/packages/contacts/www/searches.tcl 19 Jun 2005 07:00:28 -0000 1.2
+++ openacs-4/packages/contacts/www/searches.tcl 25 Nov 2005 18:12:21 -0000 1.3
@@ -27,9 +27,10 @@
-key search_id \
-elements {
title {
- label {#contacts.Title#}
- display_col title
- link_url_eval "search?search_id=$search_id"
+ label {[_ contacts.Title]}
+ display_template {
+ @searches.title@
+ }
}
query {
label {#contacts.Query#}
@@ -83,7 +84,13 @@
set search_ids [list]
set admin_p [permission::permission_p -object_id $package_id -privilege "admin"]
-db_multirow -extend {query search_url make_public_url delete_url copy_url results} -unclobber searches select_searches {} {
+db_multirow -extend {query search_url make_public_url delete_url copy_url results search_link} -unclobber searches select_searches {} {
+ set aggregated_attribute [db_string get_saved_p { } -default ""]
+ if { [exists_and_not_null aggregated_attribute] } {
+ set search_link ".?search_id=$search_id&aggregate_attribute_id=$aggregated_attribute"
+ } else {
+ set search_link "search?search_id=$search_id"
+ }
if { $owner_id != $package_id && $admin_p } {
set make_public_url [export_vars -base search-action -url {search_id {owner_id $package_id} {action move} return_url}]
}
Index: openacs-4/packages/contacts/www/searches.xql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/contacts/www/searches.xql,v
diff -u -N -r1.2 -r1.3
--- openacs-4/packages/contacts/www/searches.xql 14 Jun 2005 06:58:42 -0000 1.2
+++ openacs-4/packages/contacts/www/searches.xql 25 Nov 2005 18:12:21 -0000 1.3
@@ -35,4 +35,16 @@
+
+
+ select
+ aggregated_attribute
+ from
+ contact_searches
+ where
+ search_id = :search_id
+ and aggregated_attribute is not null
+
+
+
Index: openacs-4/packages/contacts/www/admin/search-list.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/contacts/www/admin/search-list.tcl,v
diff -u -N -r1.4 -r1.5
--- openacs-4/packages/contacts/www/admin/search-list.tcl 18 Nov 2005 17:48:27 -0000 1.4
+++ openacs-4/packages/contacts/www/admin/search-list.tcl 25 Nov 2005 18:12:21 -0000 1.5
@@ -35,8 +35,9 @@
-elements {
title {
label {[_ contacts.Title]}
- display_col title
- link_url_eval "../search?search_id=$search_id"
+ display_template {
+ @searches.title@
+ }
}
owner {
label {[_ contacts.Owner]}
@@ -94,7 +95,15 @@
set search_ids [list]
set admin_p [permission::permission_p -object_id $package_id -privilege "admin"]
-db_multirow -extend {query search_url make_public_url delete_url copy_url results owner} -unclobber searches select_searches {} {
+db_multirow -extend {query search_url make_public_url delete_url copy_url results owner search_link} -unclobber searches select_searches {} {
+
+ set aggregated_attribute [db_string get_saved_p { } -default ""]
+ if { [exists_and_not_null aggregated_attribute] } {
+ set search_link ".?search_id=$search_id&aggregate_attribute_id=$aggregated_attribute"
+ } else {
+ set search_link "search?search_id=$search_id"
+ }
+
set search_url [export_vars -base ../ -url {search_id}]
set owner [contact::name -party_id $search_owner_id]
if { [empty_string_p $owner] } {
Index: openacs-4/packages/contacts/www/admin/search-list.xql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/contacts/www/admin/search-list.xql,v
diff -u -N -r1.3 -r1.4
--- openacs-4/packages/contacts/www/admin/search-list.xql 18 Nov 2005 16:13:10 -0000 1.3
+++ openacs-4/packages/contacts/www/admin/search-list.xql 25 Nov 2005 18:12:21 -0000 1.4
@@ -50,4 +50,16 @@
+
+
+ select
+ aggregated_attribute
+ from
+ contact_searches
+ where
+ search_id = :search_id
+ and aggreagated_attribute is not null
+
+
+