Index: openacs-4/packages/contacts-portlet/contacts-portlet.info =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/contacts-portlet/contacts-portlet.info,v diff -u -r1.1 -r1.2 --- openacs-4/packages/contacts-portlet/contacts-portlet.info 14 Jun 2005 06:49:05 -0000 1.1 +++ openacs-4/packages/contacts-portlet/contacts-portlet.info 21 Jun 2005 19:24:18 -0000 1.2 @@ -7,15 +7,15 @@ f f - + Bjoern Kiesbye Malte Sussdorff Portlet for the Contacts Package. Cognovis Portlet for the Contacts Package. 0 - + Index: openacs-4/packages/contacts-portlet/catalog/contacts-portlet.en_US.ISO-8859-1.xml =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/contacts-portlet/catalog/contacts-portlet.en_US.ISO-8859-1.xml,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/contacts-portlet/catalog/contacts-portlet.en_US.ISO-8859-1.xml 21 Jun 2005 19:24:18 -0000 1.1 @@ -0,0 +1,5 @@ + + + + Contact Attributes Portlet + Index: openacs-4/packages/contacts-portlet/sql/postgresql/contact-attributes-portlet-create.sql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/contacts-portlet/sql/postgresql/contact-attributes-portlet-create.sql,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/contacts-portlet/sql/postgresql/contact-attributes-portlet-create.sql 21 Jun 2005 19:24:19 -0000 1.1 @@ -0,0 +1,221 @@ +-- +-- Copyright (C) 2005 Cognovis +-- +-- This file is part of dotLRN. +-- +-- dotLRN is free software; you can redistribute it and/or modify it under the +-- terms of the GNU General Public License as published by the Free Software +-- Foundation; either version 2 of the License, or (at your option) any later +-- version. +-- +-- dotLRN is distributed in the hope that it will be useful, but WITHOUT ANY +-- WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS +-- FOR A PARTICULAR PURPOSE. See the GNU General Public License for more +-- details. +-- + +-- +-- /project-manager-portlet/sql/oracle/project-manager-portlet-create.sql +-- + +-- Creates Project Manager portlet + +-- Copyright (C) 2005 Cognovis +-- @author Bjoern Kiesbye (kiesbye@theservice.de) +-- @creation-date 2005-08-06 + + +-- This is free software distributed under the terms of the GNU Public +-- License version 2 or higher. Full text of the license is available +-- from the GNU Project: http://www.fsf.org/copyleft/gpl.html + + +create function inline_0() +returns integer as ' +declare + ds_id portal_datasources.datasource_id%TYPE; +begin + ds_id := portal_datasource__new( + ''contact_attributes_portlet'', + ''Displays Contact Attributes'' + ); + + + -- the standard 4 params + + -- shadeable_p + perform portal_datasource__set_def_param ( + ds_id, + ''t'', + ''t'', + ''shadeable_p'', + ''t'' +); + + + -- hideable_p + perform portal_datasource__set_def_param ( + ds_id, + ''t'', + ''t'', + ''hideable_p'', + ''t'' +); + + -- user_editable_p + perform portal_datasource__set_def_param ( + ds_id, + ''t'', + ''t'', + ''user_editable_p'', + ''t'' +); + + -- shaded_p + perform portal_datasource__set_def_param ( + ds_id, + ''t'', + ''t'', + ''shaded_p'', + ''f'' +); + + -- link_hideable_p + perform portal_datasource__set_def_param ( + ds_id, + ''t'', + ''t'', + ''link_hideable_p'', + ''t'' +); + + + perform portal_datasource__set_def_param( + ds_id, + ''t'', + ''f'', + ''scoped_p'', + ''t'' + ); + + + + return 0; + +end;' language 'plpgsql'; +select inline_0(); +drop function inline_0(); + + +create function inline_0() +returns integer as ' +declare + foo integer; +begin + -- create the implementation + foo := acs_sc_impl__new ( + ''portal_datasource'', + ''contact_attributes_portlet'', + ''contact_attributes_portlet'' + ); + + return 0; + +end;' language 'plpgsql'; +select inline_0(); +drop function inline_0(); + + + +create function inline_0() +returns integer as ' +declare + foo integer; +begin + + -- add all the hooks + foo := acs_sc_impl_alias__new ( + ''portal_datasource'', + ''contact_attributes_portlet'', + ''GetMyName'', + ''contact_attributes_portlet::get_my_name'', + ''TCL'' + ); + + foo := acs_sc_impl_alias__new ( + ''portal_datasource'', + ''contact_attributes_portlet'', + ''GetPrettyName'', + ''contact_attributes_portlet::get_pretty_name'', + ''TCL'' + ); + + foo := acs_sc_impl_alias__new ( + ''portal_datasource'', + ''contact_attributes_portlet'', + ''Link'', + ''contact_attributes_portlet::link'', + ''TCL'' + ); + + foo := acs_sc_impl_alias__new ( + ''portal_datasource'', + ''contact_attributes_portlet'', + ''AddSelfToPage'', + ''contact_attributes_portlet::add_self_to_page'', + ''TCL'' + ); + + foo := acs_sc_impl_alias__new ( + ''portal_datasource'', + ''contact_attributes_portlet'', + ''Show'', + ''contact_attributes_portlet::show'', + ''TCL'' + ); + + foo := acs_sc_impl_alias__new ( + ''portal_datasource'', + ''contact_attributes_portlet'', + ''Edit'', + ''contact_attributes_portlet::edit'', + ''TCL'' + ); + + foo := acs_sc_impl_alias__new ( + ''portal_datasource'', + ''contact_attributes_portlet'', + ''RemoveSelfFromPage'', + ''contact_attributes_portlet::remove_self_from_page'', + ''TCL'' + ); + + return 0; + +end;' language 'plpgsql'; +select inline_0(); +drop function inline_0(); + + + +create function inline_0() +returns integer as ' +declare + foo integer; +begin + + -- Add the binding + perform acs_sc_binding__new ( + ''portal_datasource'', + ''contact_attributes_portlet'' + ); + + return 0; + +end;' language 'plpgsql'; +select inline_0(); +drop function inline_0(); + + + + Index: openacs-4/packages/contacts-portlet/sql/postgresql/contacts-portlet-create.sql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/contacts-portlet/sql/postgresql/contacts-portlet-create.sql,v diff -u -r1.1 -r1.2 --- openacs-4/packages/contacts-portlet/sql/postgresql/contacts-portlet-create.sql 14 Jun 2005 06:49:05 -0000 1.1 +++ openacs-4/packages/contacts-portlet/sql/postgresql/contacts-portlet-create.sql 21 Jun 2005 19:24:19 -0000 1.2 @@ -216,6 +216,7 @@ select inline_0(); drop function inline_0(); +\i contact-attributes-portlet-create.sql Index: openacs-4/packages/contacts-portlet/tcl/contact-attributes-portlet-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/contacts-portlet/tcl/contact-attributes-portlet-procs.tcl,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/contacts-portlet/tcl/contact-attributes-portlet-procs.tcl 21 Jun 2005 19:24:19 -0000 1.1 @@ -0,0 +1,123 @@ +# +# Copyright (C) 2005 Cognovis +# Author: Bjoern Kiesbye (kiesbye@theservice.de) + +# This file is part of dotLRN. +# +# dotLRN is free software; you can redistribute it and/or modify it under the +# terms of the GNU General Public License as published by the Free Software +# Foundation; either version 2 of the License, or (at your option) any later +# version. +# +# dotLRN is distributed in the hope that it will be useful, but WITHOUT ANY +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS +# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more +# details. +# + +ad_library { + + Procedures to support the Contacts Package + + + @author kiesbye@theservice.de + @cvs-id $Id: contacts-portlet-procs.tcl + +} + +namespace eval contact_attributes_portlet { + + ad_proc -private my_package_key { + } { + return "contacts-portlet" + } + + ad_proc -private get_my_name { + } { + return "contact_attributes_portlet" + } + + ad_proc -public get_pretty_name { + } { + return "[_ contacts-portlet.Contact_Attributes_Portlet]" + } + + ad_proc -public link { + } { + return [site_node::get_package_url -package_key contacts] + } + + ad_proc -public add_self_to_page { + {-portal_id:required} + {-package_id:required} + {-param_action "overwrite"} + {-page_name ""} + {-pretty_name ""} + {-force_region ""} + {-scoped_p ""} + + } { + Adds a Contact Portlet to the given page. + + @param portal_id The page to add self to + @return element_id The new element's id + + } { + + # allow overrides of pretty_name and force_region + if {[empty_string_p $pretty_name]} { + set pretty_name [get_pretty_name] + } + + if {[empty_string_p $force_region]} { + set force_region [parameter::get_from_package_key \ + -package_key [my_package_key] \ + -parameter "force_region" + ] + } + + set extra_params "" + + + return [portal::add_element_parameters \ + -portal_id $portal_id \ + -page_name $page_name \ + -portlet_name [get_my_name] \ + -value $package_id \ + -pretty_name $pretty_name \ + -force_region $force_region \ + -param_action $param_action + + ] + } + + + + + ad_proc -public remove_self_from_page { + {-portal_id:required} + + } { + Removes a Contacts Portlet from the given page. + + @param portal_id The page to remove self from + @param project_manager_id + } { + portal::remove_element_parameters \ + -portal_id $portal_id \ + -portlet_name [get_my_name] \ + } + + + + ad_proc -public show { + cf + } { + } { + portal::show_proc_helper \ + -package_key [my_package_key] \ + -config_list $cf \ + -template_src "contact-attributes-portlet" + } + +} Index: openacs-4/packages/contacts-portlet/www/contact-attributes-portlet.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/contacts-portlet/www/contact-attributes-portlet.adp,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/contacts-portlet/www/contact-attributes-portlet.adp 21 Jun 2005 19:24:19 -0000 1.1 @@ -0,0 +1,3 @@ + + + \ No newline at end of file Index: openacs-4/packages/contacts-portlet/www/contact-attributes-portlet.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/contacts-portlet/www/contact-attributes-portlet.tcl,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/contacts-portlet/www/contact-attributes-portlet.tcl 21 Jun 2005 19:24:19 -0000 1.1 @@ -0,0 +1,23 @@ +# packages/contacts-portlet/www/contacts-portlet.tcl + +ad_page_contract { + + + + @author Bjoern Kiesbye (bjoern_kiesbye@web.de) + @creation-date 2005-06-13 + @arch-tag: 6d750604-b469-457c-bc2f-09ec8f0deb16 + @cvs-id $Id: contact-attributes-portlet.tcl,v 1.1 2005/06/21 19:24:19 maltes Exp $ +} { + +} -properties { + + package_id +} + +set user_id [ad_conn user_id] +set package_id [apm_package_id_from_key contacts] +set community_id [dotlrn_community::get_community_id_from_url] +set organization_id [lindex [application_data_link::get_linked -from_object_id $community_id -to_object_type "organization"] 0] + + Index: openacs-4/packages/contacts-portlet/www/contacts-portlet.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/contacts-portlet/www/contacts-portlet.adp,v diff -u -r1.3 -r1.4 --- openacs-4/packages/contacts-portlet/www/contacts-portlet.adp 16 Jun 2005 23:10:16 -0000 1.3 +++ openacs-4/packages/contacts-portlet/www/contacts-portlet.adp 21 Jun 2005 19:24:19 -0000 1.4 @@ -1,5 +1,3 @@ - - - - - + + + \ No newline at end of file Index: openacs-4/packages/contacts-portlet/www/contacts-portlet.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/contacts-portlet/www/contacts-portlet.tcl,v diff -u -r1.2 -r1.3 --- openacs-4/packages/contacts-portlet/www/contacts-portlet.tcl 16 Jun 2005 23:10:16 -0000 1.2 +++ openacs-4/packages/contacts-portlet/www/contacts-portlet.tcl 21 Jun 2005 19:24:19 -0000 1.3 @@ -2,8 +2,8 @@ ad_page_contract { - hallo + @author Bjoern Kiesbye (bjoern_kiesbye@web.de) @creation-date 2005-06-13 @arch-tag: 6d750604-b469-457c-bc2f-09ec8f0deb16 @@ -18,15 +18,4 @@ set user_id [ad_conn user_id] set package_id [apm_package_id_from_key contacts] set community_id [dotlrn_community::get_community_id_from_url] - -if {$community_id == ""} { - - db_foreach get_group_ids {} { - - lappend community_id $group_id - - } - - -} - +set organization_id [lindex [application_data_link::get_linked -from_object_id $community_id -to_object_type "organization"] 0]