Category Archives: ]po[ Development

GUI elements we’d love to see in ]po[ 4.x

Search Box with Filter and Large Drop Down Menu http://tympanus.net/codrops/2010/07/14/ui-elements-search-box/ http://www.web-delicious.com/jquery-plugins/

Autocomplete anywhere – includes emacs

http://www.autohotkey.com/ http://www.vasanth.in/content/binary/Intellitype.ahk http://www.autohotkey.com/docs/scripts/ http://www.donationcoder.com/Software/Skrommel/index.html#AutoClip

Common constructs writing ]po[ update scripts

Sample Script create or replace function inline_0 () returns integer as ‘ declare v_count integer; begin select count(*) into v_count from user_tab_columns where lower(table_name) = ”acs_object_types” and lower(column_name) = ”icon_path”; IF v_count > 0 THEN return 1; END IF; alter table acs_object_types add column icon_path character varying(100); RETURN 0; end;’ language ‘plpgsql’; select inline_0 (); [...]

Estimating Project Costs

This entry moved to http://www.project-open.org/documentation/rfe_Advanced_Financial_Project_Planning

How to prevent SQL Injections

http://stackoverflow.com/questions/1973/what-is-the-best-way-to-avoid-sql-injection-attacks Golden Rules: 3: Custom-Written Value Sanitation. Avoid writing your own sanitation routines as much as possible except when it’s absolutely the only option remaining (which is very unlikely in any modern language). Input sanitation is a hard problem, and the costs of getting it wrong are huge. It’s best to leave that job to [...]

XOWIKI – db structure

xowiki pages are managed with the OpenACS Content repository. XOWIKI pages: For each page there’s an entry in cr_items projop=# \d cr_items Table “public.cr_items” Column | Type | Modifiers ——————-+————————+———————————————— item_id | integer | not null parent_id | integer | not null name | character varying(400) | not null locale | character varying(4) | live_revision [...]

]project-open[ – Getting Things Done Package

The package provides the following features: Provide a single access point for all tasks assigned to an user Gives users the possibility to create a sortable list of tasks Tasks can added from a list of existing project tasks, forum tasks and workflow tasks Let users add arbitrary tasks not managed with ]po[ Provide users [...]

]po[ Time Sheet Management

Content General Information Tables and views used Time sheet Portlets Sample Queries General information When time sheet form (/intranet-timesheet2/hours/new) is send to the server, … ]po[ deletes affected time sheet entries for affected day and user and creates new ones ... ]po[ updates im_projects::reported_hours_cache Please note that ... Paramaters have in impact on values shown [...]

Debugging permissions

Sample User (user_id:28358) with profile “Sales” (group_id:473) can’t see Employees: Principal routine to check permissions create function acs_permission__permission_p(int4,int4,varchar) returns bool as ‘ declare permission_p__object_id alias for $1; permission_p__party_id alias for $2; permission_p__privilege alias for $3; exists_p boolean; begin return exists (select 1 from acs_permissions p, party_approved_member_map m, acs_object_context_index c, acs_privilege_descendant_map h where p.object_id = c.ancestor_id [...]

Common used OpenACS/]po[ methods

On this page: Control flow / Conditions Localization Categories Permissions Views OpenACS Packages User Management Database String operations Error handling Page contract Sanity checks See also Common constructs writing ]po[ update scripts Common used build in tcl commands Commonly used sql constructs Debugging Control flow / Conditions Check for existing variable exists_and_not_null project_id Localization OpenACS [...]