Index: openacs-4/packages/bug-tracker/bug-tracker.info
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/bug-tracker/bug-tracker.info,v
diff -u -r1.24 -r1.25
--- openacs-4/packages/bug-tracker/bug-tracker.info 29 May 2008 14:59:43 -0000 1.24
+++ openacs-4/packages/bug-tracker/bug-tracker.info 29 May 2008 15:09:52 -0000 1.25
@@ -1,3 +1,4 @@
+
@@ -12,7 +13,7 @@
Tracks bugs and features, versions and maintainers, in software projects.
2008-05-13
Musea Technologies
- Bug tracking application with notifications, configurable state management, and patch upload.
+ Bug tracking application with notifications, configurable state management, and patch upload.
Contains the best of SDM, Bugzilla, FogBUGZ, and bughost.com.
0
@@ -36,6 +37,7 @@
+
Index: openacs-4/packages/bug-tracker/catalog/bug-tracker.en_US.ISO-8859-1.xml
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/bug-tracker/catalog/bug-tracker.en_US.ISO-8859-1.xml,v
diff -u -r1.9 -r1.10
--- openacs-4/packages/bug-tracker/catalog/bug-tracker.en_US.ISO-8859-1.xml 29 May 2008 15:01:08 -0000 1.9
+++ openacs-4/packages/bug-tracker/catalog/bug-tracker.en_US.ISO-8859-1.xml 29 May 2008 15:09:52 -0000 1.10
@@ -70,6 +70,8 @@
Component_id %component_id% not found
components
Components: %component_filter%
+ Confirm delete
+ Are you sure you want to delete this related file from this bug? You will not be able to undo this action.
Create new
Create new category type
Creation Date
@@ -79,9 +81,12 @@
Custom
Default
Delete
+ delete
+ Delete related file
Deleted
Description
format
+ download
Download patch content
Duplicate
Edit
@@ -140,6 +145,7 @@
%next_bug_num% of %all_bugs%
No %patches_name%.
You don't have permission to '%action.pretty_name%' on bug #%bug_id% "%bug.summary%"
+ No related files
No selected bugs.
Couldn't find user in database
None
@@ -182,10 +188,21 @@
Priority codes
Name
Project administration
+ properties
Reassign
Reassigned
Refuse
Refused
+ A related file (%filename%) was deleted from this %bug_pretty%.
+ Description
+ File
+ File is required
+ Filename
+ A file (%filename%) was uploaded to this %bug_pretty%. <br><br> Description:<br> %description%
+ Related file not found
+ Related File Properties
+ A new revision (%filename%) for a file (%old_filename%) was uploaded to this %bug_pretty%. <br><br> Description:<br> %description%
+ Related Files
Release
Version
Release this version
@@ -263,7 +280,10 @@
Unsubscribe
from %pretty_name%" "<# Subscribe to %pretty_name%
Unsubscribe to notifications for activity on this %bug_name%
+ Upload new revision of related file (%filename%)
+ upload new version
Upload a patch
+ Upload related file
Use default setup
User Agent
Version
Index: openacs-4/packages/bug-tracker/tcl/bug-tracker-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/bug-tracker/tcl/bug-tracker-procs.tcl,v
diff -u -r1.35 -r1.36
--- openacs-4/packages/bug-tracker/tcl/bug-tracker-procs.tcl 29 May 2008 14:59:43 -0000 1.35
+++ openacs-4/packages/bug-tracker/tcl/bug-tracker-procs.tcl 29 May 2008 15:09:52 -0000 1.36
@@ -1296,6 +1296,8 @@
if [db_0or1row instance_info { *SQL* } ] {
set folder_id [content::folder::new -name "bug_tracker_$project_id" -package_id $project_id]
content::folder::register_content_type -folder_id $folder_id -content_type {bt_bug_revision} -include_subtypes t
+ content::folder::register_content_type -folder_id $folder_id -content_type "content_revision"
+ content::folder::register_content_type -folder_id $folder_id -content_type "image"
set keyword_id [content::keyword::new -heading "$instance_name"]
@@ -1378,3 +1380,49 @@
-package_id $package_id \
-workflow_id $workflow_id]]
}
+
+#####
+#
+# Related Files
+#
+#####
+
+ad_proc bug_tracker::related_files_p {} {
+ Is the related files submission feature turned on?
+} {
+ return [parameter::get -package_id [ad_conn package_id] -parameter "RelatedFilesP" -default 1]
+}
+
+ad_proc bug_tracker::get_related_files_links {
+ {-bug_id:required}
+} {
+ set related_files_list [list]
+ set user_id [ad_conn user_id]
+ set admin_p [permission::permission_p \
+ -party_id $user_id \
+ -object_id [ad_conn package_id] \
+ -privilege "admin"]
+ set return_url [ad_return_url]
+
+ db_foreach get_related_files_for_bug {} {
+ set view_url [export_vars -base related-file-download {bug_id related_object_id {t $related_revision_id}}]
+ set properties_url [export_vars -base "related-file-properties" {bug_id related_object_id}]
+ set delete_url [export_vars -base "related-file-delete" {bug_id related_object_id return_url}]
+ set new_version_url [export_vars -base "related-file-update" {bug_id related_object_id return_url}]
+ if { ( $related_creation_user == $user_id ) || $admin_p } {
+ set extra_actions " | [_ bug-tracker.upload_new_version] | [_ bug-tracker.delete]"
+ } else {
+ set extra_actions ""
+ }
+ lappend related_files_list "$related_title [_ bug-tracker.download] | [_ bug-tracker.properties]${extra_actions}"
+ } if_no_rows {
+ set related_files_string [_ bug-tracker.No_related_files]
+ }
+
+ if { [llength $related_files_list] != 0 } {
+ set related_files_string [join $related_files_list "
"]
+ }
+
+ return $related_files_string
+}
+
Index: openacs-4/packages/bug-tracker/tcl/bug-tracker-procs.xql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/bug-tracker/tcl/bug-tracker-procs.xql,v
diff -u -r1.6 -r1.7
--- openacs-4/packages/bug-tracker/tcl/bug-tracker-procs.xql 25 Feb 2005 17:08:11 -0000 1.6
+++ openacs-4/packages/bug-tracker/tcl/bug-tracker-procs.xql 29 May 2008 15:09:52 -0000 1.7
@@ -221,6 +221,25 @@
-
+
+
+ select l.rel_id,
+ l.object_id_two as related_object_id,
+ r.title as related_title,
+ i.name as related_name,
+ o.creation_user as related_creation_user,
+ r.revision_id as related_revision_id
+ from acs_data_links l,
+ cr_items i,
+ cr_revisions r,
+ acs_objects o
+ where l.object_id_one = :bug_id
+ and l.object_id_two = i.item_id
+ and r.revision_id = i.live_revision
+ and i.item_id = o.object_id
+ and (i.content_type = 'content_revision' or i.content_type = 'image')
+ order by l.object_id_two
+
+
Index: openacs-4/packages/bug-tracker/tcl/install-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/bug-tracker/tcl/install-procs.tcl,v
diff -u -r1.4 -r1.5
--- openacs-4/packages/bug-tracker/tcl/install-procs.tcl 13 Jan 2005 13:56:16 -0000 1.4
+++ openacs-4/packages/bug-tracker/tcl/install-procs.tcl 29 May 2008 15:09:52 -0000 1.5
@@ -65,6 +65,12 @@
workflow::case::state_changed_handler -case_id $case_id
}
}
+ 1.4d3 1.4d4 {
+ db_foreach select_folder_ids {} {
+ content::folder::register_content_type -folder_id $folder_id -content_type "content_revision"
+ content::folder::register_content_type -folder_id $folder_id -content_type "image"
+ }
+ }
}
}
Index: openacs-4/packages/bug-tracker/tcl/install-procs.xql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/bug-tracker/tcl/install-procs.xql,v
diff -u -r1.2 -r1.3
--- openacs-4/packages/bug-tracker/tcl/install-procs.xql 13 Jan 2005 13:56:16 -0000 1.2
+++ openacs-4/packages/bug-tracker/tcl/install-procs.xql 29 May 2008 15:09:52 -0000 1.3
@@ -16,4 +16,11 @@
+
+
+ select folder_id
+ from bt_projects
+
+
+
Index: openacs-4/packages/bug-tracker/www/bug.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/bug-tracker/www/bug.tcl,v
diff -u -r1.38 -r1.39
--- openacs-4/packages/bug-tracker/www/bug.tcl 1 Mar 2005 00:01:26 -0000 1.38
+++ openacs-4/packages/bug-tracker/www/bug.tcl 29 May 2008 15:09:52 -0000 1.39
@@ -39,6 +39,8 @@
# Paches enabled for this project?
set patches_p [bug_tracker::patches_p]
+# Does project allow upload of related files?
+set related_files_p [bug_tracker::related_files_p]
#####
#
@@ -186,6 +188,10 @@
# More fixed form elements
ad_form -extend -name bug -form {
+ {related_files:text(inform)
+ {label "[_ bug-tracker.Related_Files]"}
+ {mode display}
+ }
{patches:text(inform)
{label $patch_label}
{mode display}
@@ -300,6 +306,9 @@
# Display value for patches
set bug(patches_display) "[bug_tracker::get_patch_links -bug_id $bug(bug_id) -show_patch_status $show_patch_status] \[ [_ bug-tracker.Upload_Patch] \]"
+ # Display value for related files
+ set bug(related_files_display) "[bug_tracker::get_related_files_links -bug_id $bug(bug_id)]
\[ [_ bug-tracker.Upload_related_file] \]"
+
# Hide elements that should be hidden depending on the bug status
foreach element $bug(hide_fields) {
element set_properties bug $element -widget hidden
@@ -321,6 +330,14 @@
}
}
+ if { !$related_files_p } {
+ foreach element { related_files } {
+ if { [info exists bug:$element] } {
+ element set_properties bug $element -widget hidden
+ }
+ }
+ }
+
# Optionally hide user agent
if { !$user_agent_p } {
element set_properties bug user_agent -widget hidden
@@ -357,6 +374,7 @@
# Set values for elements with separate display value
foreach element {
patches
+ related_files
} {
# check that the element exists
if { [info exists bug:$element] } {