Index: openacs-4/packages/assessment/tcl/as-assessment-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/assessment/tcl/as-assessment-procs.tcl,v
diff -u -r1.10 -r1.11
--- openacs-4/packages/assessment/tcl/as-assessment-procs.tcl 22 Dec 2004 20:52:17 -0000 1.10
+++ openacs-4/packages/assessment/tcl/as-assessment-procs.tcl 7 Jan 2005 16:10:44 -0000 1.11
@@ -7,6 +7,7 @@
namespace eval as::assessment {}
ad_proc -public as::assessment::new {
+ {-name ""}
{-title:required}
{-creator_id ""}
{-description ""}
@@ -35,11 +36,15 @@
New assessment to the database
} {
set package_id [ad_conn package_id]
- set folder_id [db_string get_folder_id "select folder_id from cr_folders where package_id=:package_id"]
+ set folder_id [as::assessment::folder_id -package_id $package_id]
# Insert as_assessment in the CR (and as_assessments table) getting the revision_id (as_assessment_id)
db_transaction {
- set assessment_item_id [content::item::new -parent_id $folder_id -content_type {as_assessments} -name [exec uuidgen] -title $title ]
+ set assessment_item_id [db_nextval acs_object_id_seq]
+ if {[empty_string_p $name]} {
+ set name "ASS_$assessment_item_id"
+ }
+ set assessment_item_id [content::item::new -item_id $assessment_item_id -parent_id $folder_id -content_type {as_assessments} -name $name -title $title ]
set as_assessment_id [content::revision::new \
-item_id $assessment_item_id \
@@ -283,3 +288,51 @@
}
return $time
}
+
+ad_proc as::assessment::folder_id {
+ -package_id:required
+} {
+ @author Timo Hentschel (timo@timohentschel.de)
+ @creation-date 2005-01-06
+
+ Returns the folder_id of the package instance
+} {
+ return [db_string get_folder_id "select folder_id from cr_folders where package_id=:package_id"]
+}
+
+ad_proc as::assessment::unique_name {
+ {-name ""}
+ {-new_p 1}
+} {
+ @author Timo Hentschel (timo@timohentschel.de)
+ @creation-date 2005-01-05
+
+ Checks if a name string is unique or empty
+} {
+ if {$new_p && ![empty_string_p $name] && [db_string check_unique {}] > 0} {
+ return 0
+ } else {
+ return 1
+ }
+}
+
+ad_proc as::assessment::display_content {
+ -content_id:required
+ -content_type:required
+ -filename:required
+ {-title ""}
+} {
+ @author Timo Hentschel (timo@timohentschel.de)
+ @creation-date 2005-01-06
+
+ Returns a html snippet to display a content item (i.e. image)
+} {
+ if {[empty_string_p $content_id]} {
+ return $title
+ }
+ if {$content_type == "image"} {
+ return ""
+ } else {
+ return "$title"
+ }
+}