ports/88332: Update port: devel/flyspray -> 0.9.8
Nick Hilliard
nick at foobar.org
Tue Nov 1 14:40:22 UTC 2005
>Number: 88332
>Category: ports
>Synopsis: Update port: devel/flyspray -> 0.9.8
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: maintainer-update
>Submitter-Id: current-users
>Arrival-Date: Tue Nov 01 14:40:20 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator: Nick Hilliard
>Release: FreeBSD 5.4-RELEASE-p1 i386
>Organization:
Network Ability Ltd
>Environment:
System: FreeBSD xx 5.4-RELEASE-p1 FreeBSD 5.4-RELEASE-p1 #0: Fri May 20 11:11:40 IST 2005 nick at xx:/data/FreeBSD-src/usr.obj.current/data/FreeBSD-src/current/src/sys/MUFFIN i386
>Description:
Update for Flyspray 0.9.7 -> 0.9.8. A couple of days after the author
released 0.9.8, a security problem was found, and a separate update archive
was released as 0.9.8-update1. This port includes the patches from
-update1, and has set PORTEPOCH to 1 in order to note that this is not
vanilla 0.9.8.
>How-To-Repeat:
>Fix:
# This is a shell archive. Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file". Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
# flyspray-0.9.8.1
# flyspray-0.9.8.1/files
# flyspray-0.9.8.1/files/README.FreeBSD
# flyspray-0.9.8.1/files/patch-.htaccess
# flyspray-0.9.8.1/files/patch-docs::CHANGELOG.txt
# flyspray-0.9.8.1/files/patch-header.php
# flyspray-0.9.8.1/files/patch-includes::functions.inc.php
# flyspray-0.9.8.1/files/patch-includes::regexp.php
# flyspray-0.9.8.1/files/patch-index.php
# flyspray-0.9.8.1/files/patch-remote.php
# flyspray-0.9.8.1/files/patch-scripts::details.php
# flyspray-0.9.8.1/files/patch-scripts::index.php
# flyspray-0.9.8.1/files/patch-scripts::newtask.php
# flyspray-0.9.8.1/files/patch-scripts::reports.php
# flyspray-0.9.8.1/pkg-message
# flyspray-0.9.8.1/pkg-descr
# flyspray-0.9.8.1/pkg-deinstall
# flyspray-0.9.8.1/distinfo
# flyspray-0.9.8.1/pkg-plist
# flyspray-0.9.8.1/Makefile
#
echo c - flyspray-0.9.8.1
mkdir -p flyspray-0.9.8.1 > /dev/null 2>&1
echo c - flyspray-0.9.8.1/files
mkdir -p flyspray-0.9.8.1/files > /dev/null 2>&1
echo x - flyspray-0.9.8.1/files/README.FreeBSD
sed 's/^X//' >flyspray-0.9.8.1/files/README.FreeBSD << 'END-of-flyspray-0.9.8.1/files/README.FreeBSD'
XConfiguration Instructions for Flyspray
X=======================================
X
X0) If you are upgrading from a previous version of flyspray, please skip to
X the Upgrading section below.
X
X1) Create a mysql database for Flyspray to use. Here is one way to do that,
X from the unix/linux command line, entering your mysql root password when
X prompted:
X
X# mysqladmin -u root -p create flyspray
X
X2) Insert the following configuration command into your Apache httpd.conf:
X
X Alias "/flyspray/" "%%FLYSPRAYDIR%%/"
X <Directory %%FLYSPRAYDIR%%>
X AllowOverride All
X Options Indexes FollowSymLinks
X Order allow,deny
X Allow from all
X </Directory>
X
X3) Point your browser to http://yourserver.com/flyspray/ and you should
X see the Flyspray setup script!
X
X4) Click on the admin links to set up your Options and lists.
X
X5) Close the sample task, and begin adding your own.
X
X6) Report any bugs you find back to http://flyspray.rocks.cc/bts/ or the
X mailing list linked from the Flyspray homepage.
X
X
XUpgrading from Flyspray 0.9.7
X=============================
X
XYou can upgrade from a previous version of Flyspray by doing the following:
X
X0) read %%DOCSDIR%%/UPGRADING.txt.
X
X1) back up your old flyspray task database using "mysqldump". No, really,
X you seriously run the risk of losing data if you don't do this.
X
X2) load http://yourserver.com/flyspray/ in your browser and follow the
X installation instructions. On the "Database setup" page, set the
X "Install/Upgrade" field to "Upgrade 0.9.7 - 0.9.8" and enter your
X database parameters.
X
X5) That's it! flyspray has been upgraded to 0.9.8. If you messed up the
X sequence of commands, you will probably have lost data in the process,
X and may need to re-install your database from your backup. You did
X take a backup, right?
END-of-flyspray-0.9.8.1/files/README.FreeBSD
echo x - flyspray-0.9.8.1/files/patch-.htaccess
sed 's/^X//' >flyspray-0.9.8.1/files/patch-.htaccess << 'END-of-flyspray-0.9.8.1/files/patch-.htaccess'
X--- .htaccess.orig Tue Nov 1 13:13:20 2005
X+++ .htaccess Tue Nov 1 13:13:20 2005
X@@ -5,6 +5,8 @@
X <IfModule mod_rewrite.c>
X RewriteEngine on
X
X+ReWriteBase /flyspray
X+
X RewriteRule ^.*\?do=admin&area=prefs$ index.php?do=admin&area=prefs [L]
X
X RewriteRule ^([0-9]+)$ index.php?do=details&id=$1 [L]
X@@ -12,7 +14,7 @@
X RewriteRule ^task/([0-9]+)comment([0-9]+)$ index.php?do=details&id=$1comment$2 [L]
X RewriteRule ^task/([0-9]+)/depends$ index.php?do=depends&id=$1 [L]
X RewriteRule ^task/([0-9]+)/edit$ index.php?do=details&id=$1&edit=yep [L]
X-
X+RewriteRule ^task/([0-9]+)/depends&prune=([0-9]+)$ index.php?do=depends&id=$1&prune=$2 [L]
X RewriteRule ^newtask$ index.php?do=newtask [L]
X RewriteRule ^newtask/proj([0-9]+)$ index.php?do=newtask&project=$1 [L]
X
END-of-flyspray-0.9.8.1/files/patch-.htaccess
echo x - flyspray-0.9.8.1/files/patch-docs::CHANGELOG.txt
sed 's/^X//' >flyspray-0.9.8.1/files/patch-docs::CHANGELOG.txt << 'END-of-flyspray-0.9.8.1/files/patch-docs::CHANGELOG.txt'
X--- docs/CHANGELOG.txt.orig Sun Oct 23 01:22:26 2005
X+++ docs/CHANGELOG.txt Sun Oct 30 07:11:06 2005
X@@ -1,4 +1,14 @@
X-0.9.8 - 23 October 2005
X+0.9.8 update1 - 30 October 05
X+
X+FIXED - Lack of .htaccess rewrite rule for dependency graphs
X+FIXED - Cross Site Scripting security hole
X+FIXED - Project selector permission query
X+FIXED - Date range for Reports
X+FIXED - Bugs with language pack function
X+FIXED - error_reporting() in header.php
X+
X+
X+0.9.8 - 23 October 05
X
X NEW - Full-featured installer
X NEW - Address rewriting for human-readable URLs
END-of-flyspray-0.9.8.1/files/patch-docs::CHANGELOG.txt
echo x - flyspray-0.9.8.1/files/patch-header.php
sed 's/^X//' >flyspray-0.9.8.1/files/patch-header.php << 'END-of-flyspray-0.9.8.1/files/patch-header.php'
X--- header.php.orig Sun Oct 23 01:11:14 2005
X+++ header.php Wed Oct 26 04:16:53 2005
X@@ -4,8 +4,11 @@
X // move flyspray.conf.php to a directory where a browser can't access it.
X // (RECOMMENDED).
X
X-// Turn off PHP notices
X-error_reporting(E_ALL & -E_NOTICE);
X+// You might like to uncomment the next line if you are receiving lots of
X+// PHP NOTICE errors. We are in the process of making Flyspray stop making
X+// these errors, but this will help hide them until we are finished.
X+
X+//error_reporting(E_ALL & ~E_NOTICE);
X
X // Check PHP Version (Must Be at least 4.3)
X // For 0.9.9, this should redirect to the error page
END-of-flyspray-0.9.8.1/files/patch-header.php
echo x - flyspray-0.9.8.1/files/patch-includes::functions.inc.php
sed 's/^X//' >flyspray-0.9.8.1/files/patch-includes::functions.inc.php << 'END-of-flyspray-0.9.8.1/files/patch-includes::functions.inc.php'
X--- includes/functions.inc.php.orig Sun Oct 23 09:03:37 2005
X+++ includes/functions.inc.php Sun Oct 30 10:51:12 2005
X@@ -18,19 +18,31 @@
X */
X function get_language_pack($lang, $module)
X {
X- $before = get_defined_vars();
X+ // MC: functions module is in functions.*inc*.php
X+ if ($module == 'functions') {
X+ $module .= '.inc';
X+ }
X+
X+ $before = get_defined_vars();
X require_once("lang/en/$module.php");
X $after_en = get_defined_vars();
X- $new_var = array_keys(array_diff($after_en, $before));
X- $new_var_name = @$new_var[1];
X- $new_var['en'] = @$$new_var_name;
X- if (file_exists("lang/$lang/$module.php"))
X- {
X- require_once("lang/$lang/$module.php");
X- }
X- $new_var[$lang] = @$$new_var_name;
X+ $new_var = array_keys(array_diff($after_en, $before));
X
X- $$new_var_name = @array_merge($new_var['en'], $new_var[$lang]);
X+ if (isset($new_var[1])) {
X+ list(, $new_var_name) = $new_var;
X+ $new_var['en'] = $$new_var_name;
X+
X+ if (file_exists("lang/$lang/$module.php")) {
X+ require_once("lang/$lang/$module.php");
X+ }
X+ $new_var[$lang] = $$new_var_name;
X+ // $$new_var_name = array_merge($new_var['en'], $new_var[$lang]);
X+ $$new_var_name = $new_var['en'];
X+ $merge_ref =& $$new_var_name;
X+ foreach ($new_var[$lang] as $key => $val) {
X+ $merge_ref[$key] = $val;
X+ }
X+ }
X }
X
X /** Redirects the browser to the page in $url
X@@ -189,17 +201,19 @@
X
X $status_id = $get_details['item_status'];
X
X- require("lang/$lang/status.php");
X+ global $status_list, $severity_list, $priority_list;
X+ $this->get_language_pack($lang, 'status');
X+ $this->get_language_pack($lang, 'severity');
X+ $this->get_language_pack($lang, 'priority');
X+
X $tmp_array = array("status_name" => $status_list[$status_id]);
X $get_details = $get_details + $tmp_array;
X
X $severity_id = $get_details['task_severity'];
X- require("lang/$lang/severity.php");
X $tmp_array = array("severity_name" => $severity_list[$severity_id]);
X $get_details = $get_details + $tmp_array;
X
X $priority_id = $get_details['task_priority'];
X- require("lang/$lang/priority.php");
X $tmp_array = array("priority_name" => $priority_list[$priority_id]);
X $get_details = $get_details + $tmp_array;
X
X@@ -301,8 +315,9 @@
X global $db;
X global $dbprefix;
X global $lang;
X+ global $functions_text;
X
X- require("lang/$lang/functions.inc.php");
X+ $this->get_language_pack($lang, 'functions');
X
X // Just in case $perpage is something weird, like 0, fix it here:
X if ($perpage < 1) { $perpage = ($totalcount > 0 ? $totalcount : 1); }
END-of-flyspray-0.9.8.1/files/patch-includes::functions.inc.php
echo x - flyspray-0.9.8.1/files/patch-includes::regexp.php
sed 's/^X//' >flyspray-0.9.8.1/files/patch-includes::regexp.php << 'END-of-flyspray-0.9.8.1/files/patch-includes::regexp.php'
X--- includes/regexp.php.orig Sun Jul 24 12:00:47 2005
X+++ includes/regexp.php Wed Oct 26 23:03:01 2005
X@@ -55,6 +55,20 @@
X
X };
X
X+if (isset($_GET['sort2']) && !empty($_GET['sort2']))
X+{
X+ // Yes. Now check its regex format for safety -- Limited range
X+ if (preg_match ("/^(asc|desc)$/", $_GET['sort2'])) {
X+
X+ // continue;
X+ } else {
X+
X+ $fs->Redirect($fs->CreateURL('error', null));
X+// print "Sorting request is invalid."; exit;
X+ };
X+
X+};
X+
X if (isset($_GET['project']) && !empty($_GET['project'])) {
X
X // Yes. Now check its regex format for safety -- Numbers only
X@@ -69,6 +83,21 @@
X };
X };
X
X+if (isset($_GET['type']) && !empty($_GET['type'])) {
X+
X+ // Yes. Now check its regex format for safety -- Numbers only
X+ if (preg_match ("/^\d+$/", $_GET['type'])) {
X+
X+ // continue;
X+
X+ } else {
X+
X+ $fs->Redirect($fs->CreateURL('error', null));
X+// print "Tasktype request is invalid."; exit;
X+ };
X+};
X+
X+
X if (isset($_GET['page']) && !empty($_GET['page']))
X {
X // Yes. Now check its regex format for safety -- Numbers only
X@@ -324,4 +353,48 @@
X // print "Magic URL is invalid."; exit;
X };
X };
X+
X+if (isset($_GET['tasks']) && !empty($_GET['tasks']))
X+{
X+ // Yes. Now check its regex format for safety -- Limited range
X+ if (preg_match ("/^(all|assigned|reported|watched)$/", $_GET['tasks'])) {
X+
X+ // continue;
X+ } else {
X+
X+ $fs->Redirect($fs->CreateURL('error', null));
X+// print "Tasks request is invalid."; exit;
X+ };
X+
X+};
X+
X+if (isset($_GET['due']) && !empty($_GET['due'])) {
X+
X+ // Yes. Now check its regex format for safety -- Numbers only
X+ if (preg_match ("/^\d+$/", $_GET['due'])) {
X+
X+ // continue;
X+ } else {
X+
X+ $fs->Redirect($fs->CreateURL('error', null));
X+// print "Due version request is invalid."; exit;
X+ };
X+};
X+
X+if (isset($_GET['string']) && !empty($_GET['string'])) {
X+
X+ // Yes. Now check its regex format for safety -- Numbers only
X+ if (preg_match ("!<.*>!", $_GET['string'])) {
X+ $fs->Redirect($fs->CreateURL('error', null));
X+ };
X+};
X+
X+if (isset($_GET['PHPSESSID']) && !empty($_GET['PHPSESSID'])) {
X+
X+ // Yes. Now check its regex format for safety -- Numbers only
X+ if (preg_match ("!<.*>!", $_GET['PHPSESSID'])) {
X+ $fs->Redirect($fs->CreateURL('error', null));
X+ };
X+};
X+
X ?>
END-of-flyspray-0.9.8.1/files/patch-includes::regexp.php
echo x - flyspray-0.9.8.1/files/patch-index.php
sed 's/^X//' >flyspray-0.9.8.1/files/patch-index.php << 'END-of-flyspray-0.9.8.1/files/patch-index.php'
X--- index.php.orig Sat Oct 22 13:40:26 2005
X+++ index.php Thu Oct 27 00:09:01 2005
X@@ -384,15 +384,17 @@
X // or, if the user is logged in
X } elseif (isset($_COOKIE['flyspray_userid']))
X {
X- $get_projects = $db->Query("SELECT DISTINCT p.*
X- FROM {$dbprefix}users_in_groups uig
X- LEFT JOIN {$dbprefix}groups g ON uig.group_id = g.group_id,
X- {$dbprefix}projects p
X- WHERE ((uig.user_id = ?
X- AND g.view_tasks = '1')
X- OR p.others_view = '1')
X- AND p.project_is_active = '1'
X- GROUP BY p.project_id",
X+ $get_projects = $db->Query("SELECT p.* FROM {$dbprefix}projects p
X+ LEFT JOIN {$dbprefix}groups g
X+ ON p.project_id=g.belongs_to_project
X+ AND g.view_tasks=1
X+ LEFT JOIN {$dbprefix}users_in_groups uig
X+ ON uig.group_id = g.group_id
X+ AND uig.user_id = ?
X+ WHERE p.project_is_active='1'
X+ AND (p.others_view
X+ OR uig.user_id IS NOT NULL)
X+ ORDER BY p.project_title",
X array($current_user['user_id'])
X );
X // Anonymous users
END-of-flyspray-0.9.8.1/files/patch-index.php
echo x - flyspray-0.9.8.1/files/patch-remote.php
sed 's/^X//' >flyspray-0.9.8.1/files/patch-remote.php << 'END-of-flyspray-0.9.8.1/files/patch-remote.php'
X--- remote.php.orig Thu Aug 25 01:53:36 2005
X+++ remote.php Wed Oct 26 23:03:01 2005
X@@ -564,6 +564,7 @@
X {
X global $fs;
X global $db;
X+ global $dbprefix;
X include_once('includes/notify.inc.php');
X $notify = new Notifications;
X
END-of-flyspray-0.9.8.1/files/patch-remote.php
echo x - flyspray-0.9.8.1/files/patch-scripts::details.php
sed 's/^X//' >flyspray-0.9.8.1/files/patch-scripts::details.php << 'END-of-flyspray-0.9.8.1/files/patch-scripts::details.php'
X--- scripts/details.php.orig Sat Oct 22 13:41:22 2005
X+++ scripts/details.php Thu Oct 27 00:09:01 2005
X@@ -91,17 +91,19 @@
X } elseif (isset($_COOKIE['flyspray_userid']))
X {
X
X- $get_projects = $db->Query("SELECT DISTINCT p.*
X- FROM {$dbprefix}users_in_groups uig
X- LEFT JOIN {$dbprefix}groups g ON uig.group_id = g.group_id,
X- {$dbprefix}projects p
X- WHERE ((uig.user_id = ?
X- AND g.view_tasks = '1')
X- OR p.others_view = '1')
X- AND p.project_is_active = '1'
X- ORDER BY p.project_title",
X- array($current_user['user_id'])
X- );
X+ $get_projects = $db->Query("SELECT p.* FROM {$dbprefix}projects p
X+ LEFT JOIN {$dbprefix}groups g
X+ ON p.project_id=g.belongs_to_project
X+ AND g.view_tasks=1
X+ LEFT JOIN {$dbprefix}users_in_groups uig
X+ ON uig.group_id = g.group_id
X+ AND uig.user_id = ?
X+ WHERE p.project_is_active='1'
X+ AND (p.others_view
X+ OR uig.user_id IS NOT NULL)
X+ ORDER BY p.project_title",
X+ array($current_user['user_id'])
X+ );
X
X } else
X {
X@@ -242,7 +244,7 @@
X <select id="status" name="item_status">
X <?php
X // let's get a list of statuses and compare it to the saved one
X- require("lang/$lang/status.php");
X+ $fs->get_language_pack($lang, 'status');
X foreach($status_list as $key => $val)
X {
X if ($task_details['item_status'] == $key)
X@@ -319,7 +321,7 @@
X <select id="severity" name="task_severity">
X <?php
X // Get list of severities
X- require("lang/$lang/severity.php");
X+ $fs->get_language_pack($lang, 'severity');
X foreach($severity_list as $key => $val)
X {
X if ($task_details['task_severity'] == $key)
X@@ -340,7 +342,7 @@
X <select id="priority" name="task_priority">
X <?php
X // Get list of priorities
X- require("lang/$lang/priority.php");
X+ $fs->get_language_pack($lang, 'priority');
X foreach($priority_list as $key => $val)
X {
X if ($task_details['task_priority'] == $key)
END-of-flyspray-0.9.8.1/files/patch-scripts::details.php
echo x - flyspray-0.9.8.1/files/patch-scripts::index.php
sed 's/^X//' >flyspray-0.9.8.1/files/patch-scripts::index.php << 'END-of-flyspray-0.9.8.1/files/patch-scripts::index.php'
X--- scripts/index.php.orig Sat Oct 22 13:41:49 2005
X+++ scripts/index.php Thu Oct 27 00:09:01 2005
X@@ -129,14 +129,16 @@
X // Those who aren't super users get this more restrictive query
X } elseif (isset($_COOKIE['flyspray_userid']))
X {
X- $check_projects = $db->Query("SELECT p.project_id
X- FROM {$dbprefix}users_in_groups uig
X- LEFT JOIN {$dbprefix}groups g ON uig.group_id = g.group_id,
X- {$dbprefix}projects p
X- WHERE ((uig.user_id = ?
X- AND g.view_tasks = '1')
X- OR p.others_view = '1')
X- AND p.project_is_active = '1'
X+ $check_projects = $db->Query("SELECT p.* FROM {$dbprefix}projects p
X+ LEFT JOIN {$dbprefix}groups g
X+ ON p.project_id=g.belongs_to_project
X+ AND g.view_tasks=1
X+ LEFT JOIN {$dbprefix}users_in_groups uig
X+ ON uig.group_id = g.group_id
X+ AND uig.user_id = ?
X+ WHERE p.project_is_active='1'
X+ AND (p.others_view
X+ OR uig.user_id IS NOT NULL)
X ORDER BY p.project_title",
X array($current_user['user_id'])
X );
X@@ -334,7 +336,7 @@
X <select name="sev">
X <option value=""><?php echo $index_text['allseverities'];?></option>
X <?php
X- require("lang/$lang/severity.php");
X+ $fs->get_language_pack($lang, 'severity');
X foreach($severity_list as $key => $val)
X {
X if (isset($_GET['sev']) && $_GET['sev'] == $key)
X@@ -430,7 +432,7 @@
X <option value="all" <?php if (isset($_GET['status']) && $_GET['status'] == 'all') echo 'selected="selected"';?>><?php echo $index_text['allstatuses'];?></option>
X <option value="" <?php if ((isset($_GET['status']) && empty($_GET['status'])) OR !isset($_GET['status'])) { echo "selected=\"selected\"";}?>><?php echo $index_text['allopentasks'];?></option>
X <?php
X- require("lang/$lang/status.php");
X+ $fs->get_language_pack($lang, 'status');
X foreach($status_list as $key => $val)
X {
X if (isset($_GET['status']) && $_GET['status'] == $key)
X@@ -739,18 +741,18 @@
X {
X // Get the full status name
X $status_id = $task_details['item_status'];
X- require("lang/$lang/status.php");
X+ $fs->get_language_pack($lang, 'status');
X $status = $status_list[$status_id];
X }
X
X // Get the full severity name
X $severity_id = $task_details['task_severity'];
X- require("lang/$lang/severity.php");
X+ $fs->get_language_pack($lang, 'severity');
X $severity = $severity_list[$severity_id];
X
X // Get the full priority name
X $priority_id = $task_details['task_priority'];
X- require("lang/$lang/priority.php");
X+ $fs->get_language_pack($lang, 'priority');
X $priority = $priority_list[$priority_id];
X
X // see if it's been assigned
END-of-flyspray-0.9.8.1/files/patch-scripts::index.php
echo x - flyspray-0.9.8.1/files/patch-scripts::newtask.php
sed 's/^X//' >flyspray-0.9.8.1/files/patch-scripts::newtask.php << 'END-of-flyspray-0.9.8.1/files/patch-scripts::newtask.php'
X--- scripts/newtask.php.orig Thu Sep 29 21:43:25 2005
X+++ scripts/newtask.php Wed Oct 26 23:03:01 2005
X@@ -104,7 +104,7 @@
X <select id="itemstatus" name="item_status" <?php if ($permissions['modify_all_tasks'] != "1") echo ' disabled="disabled"';?>>
X <?php
X // Get list of statuses
X- require("lang/$lang/status.php");
X+ $fs->get_language_pack($lang, 'status');
X foreach($status_list as $key => $val)
X {
X if ($key == '2')
X@@ -177,7 +177,7 @@
X <select id="taskseverity" class="adminlist" name="task_severity">
X <?php
X // Get list of severities
X- require("lang/$lang/severity.php");
X+ $fs->get_language_pack($lang, 'severity');
X foreach($severity_list as $key => $val)
X {
X if ($key == '2')
X@@ -198,7 +198,7 @@
X <select id="task_priority" name="task_priority" <?php if ($permissions['modify_all_tasks'] != "1") echo ' disabled="disabled"';?>>
X <?php
X // Get list of statuses
X- require("lang/$lang/priority.php");
X+ $fs->get_language_pack($lang, 'priority');
X foreach($priority_list as $key => $val)
X {
X if ($key == '2')
END-of-flyspray-0.9.8.1/files/patch-scripts::newtask.php
echo x - flyspray-0.9.8.1/files/patch-scripts::reports.php
sed 's/^X//' >flyspray-0.9.8.1/files/patch-scripts::reports.php << 'END-of-flyspray-0.9.8.1/files/patch-scripts::reports.php'
X--- scripts/reports.php.orig Mon Oct 3 12:51:02 2005
X+++ scripts/reports.php Thu Oct 27 00:09:01 2005
X@@ -353,9 +353,12 @@
X $date = 'from';
X $fromdate = $_REQUEST['fromdate'];
X $todate = $_REQUEST['todate'];
X-
X+ if (!isset($fromdate) || $fromdate=="") { $fromdate = date("d-M-Y"); }
X+ if (!isset($todate) || $todate=="") { $todate = date("d-M-Y"); }
X+
X $ufromdate = strtotime($fromdate);
X- $utodate = strtotime($todate);
X+ // Add 24 hours to the end to make it include that date
X+ $utodate = strtotime($todate) + 86400;
X
X $wheredate = "AND h.event_date > {$ufromdate} AND h.event_date < {$utodate}";
X break;
END-of-flyspray-0.9.8.1/files/patch-scripts::reports.php
echo x - flyspray-0.9.8.1/pkg-message
sed 's/^X//' >flyspray-0.9.8.1/pkg-message << 'END-of-flyspray-0.9.8.1/pkg-message'
X##
X
XPlease read the installation instructions in:
X
X %%DOCSDIR%%/README.FreeBSD
X
X##
END-of-flyspray-0.9.8.1/pkg-message
echo x - flyspray-0.9.8.1/pkg-descr
sed 's/^X//' >flyspray-0.9.8.1/pkg-descr << 'END-of-flyspray-0.9.8.1/pkg-descr'
XNeed a bug tracking system for your programming project? Having trouble
Xfinding something that suits your needs? Tried installing Bugzilla, but
Xfound it too complex?
X
XFlyspray is a power but easy to use bug tracking system for those who don't
Xrequire all the complexities of something like Bugzilla.
X
XFeatures include:
X
X * Web-based, platform-independent
X * Multiple database support (through the ADOdb database abstraction
X layer)
X * Easy installation
X * Easy to use
X * Multiple projects
X * Permissions-based user groups
X * 'Watching' tasks, with notification of changes (email or Jabber)
X * Comprehensive task history
X * File attachments
X * CSS themes
X
XWWW: http://flyspray.rocks.cc/
END-of-flyspray-0.9.8.1/pkg-descr
echo x - flyspray-0.9.8.1/pkg-deinstall
sed 's/^X//' >flyspray-0.9.8.1/pkg-deinstall << 'END-of-flyspray-0.9.8.1/pkg-deinstall'
X#!/bin/sh
X
Xcase $2 in
XDEINSTALL)
X# /bin/rm -f ${PKG_PREFIX}/share/flyspray/flyspray.conf.php
X# /bin/rmdir ${PKG_PREFIX}/share/flyspray/
X echo "--"
X echo "The Flyspray program has been deleted but the bug tracking database has"
X echo "not been touched. To delete all the bug tracking information, execute the"
X echo "following commands:"
X echo ""
X echo "# rm -rf /var/db/flyspray"
X echo "# mysqladmin -u root -p drop flyspray"
X echo ""
X echo "Thanks for using Flyspray!"
X echo "--"
X;;
Xesac
END-of-flyspray-0.9.8.1/pkg-deinstall
echo x - flyspray-0.9.8.1/distinfo
sed 's/^X//' >flyspray-0.9.8.1/distinfo << 'END-of-flyspray-0.9.8.1/distinfo'
XMD5 (flyspray-0.9.8.tar.gz) = e034c2f1638cca65c41c7cb3590e2014
XSIZE (flyspray-0.9.8.tar.gz) = 385283
END-of-flyspray-0.9.8.1/distinfo
echo x - flyspray-0.9.8.1/pkg-plist
sed 's/^X//' >flyspray-0.9.8.1/pkg-plist << 'END-of-flyspray-0.9.8.1/pkg-plist'
X%%DATADIR%%/.htaccess
X%%DATADIR%%/adodb
X%%DATADIR%%/attachments
X%%DATADIR%%/docs/licences/gnu_lgpl.html
X%%DATADIR%%/favicon.ico
X%%DATADIR%%/flyspray.conf.php
X%%DATADIR%%/flyspray.conf.php-dist
X%%DATADIR%%/header.php
X%%DATADIR%%/includes/archive_tar.php
X%%DATADIR%%/includes/backend.inc.php
X%%DATADIR%%/includes/class.jabber.php
X%%DATADIR%%/includes/class.phpmailer.php
X%%DATADIR%%/includes/class.smtp.php
X%%DATADIR%%/includes/db.inc.php
X%%DATADIR%%/includes/functions.inc.php
X%%DATADIR%%/includes/functions.js
X%%DATADIR%%/includes/gzip_compress.php
X%%DATADIR%%/includes/ie_hover.js
X%%DATADIR%%/includes/jscalendar/calendar-blue.css
X%%DATADIR%%/includes/jscalendar/calendar-blue2.css
X%%DATADIR%%/includes/jscalendar/calendar-brown.css
X%%DATADIR%%/includes/jscalendar/calendar-green.css
X%%DATADIR%%/includes/jscalendar/calendar-setup.js
X%%DATADIR%%/includes/jscalendar/calendar-setup_stripped.js
X%%DATADIR%%/includes/jscalendar/calendar-system.css
X%%DATADIR%%/includes/jscalendar/calendar-tas.css
X%%DATADIR%%/includes/jscalendar/calendar-win2k-1.css
X%%DATADIR%%/includes/jscalendar/calendar-win2k-2.css
X%%DATADIR%%/includes/jscalendar/calendar-win2k-cold-1.css
X%%DATADIR%%/includes/jscalendar/calendar-win2k-cold-2.css
X%%DATADIR%%/includes/jscalendar/calendar.js
X%%DATADIR%%/includes/jscalendar/calendar.php
X%%DATADIR%%/includes/jscalendar/calendar_stripped.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-af.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-al.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-bg.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-big5-utf8.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-big5.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-br.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-ca.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-cs-utf8.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-cs-win.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-da.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-de.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-du.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-el.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-en.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-es.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-fi.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-fr.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-he-utf8.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-hr-utf8.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-hr.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-hu.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-it.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-jp.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-ko-utf8.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-ko.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-lt-utf8.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-lt.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-lv.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-nl.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-no.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-pl-utf8.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-pl.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-pt.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-ro.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-ru.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-ru_win_.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-si.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-sk.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-sp.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-sv.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-tr.js
X%%DATADIR%%/includes/jscalendar/lang/calendar-zh.js
X%%DATADIR%%/includes/jscalendar/lang/cn_utf8.js
X%%DATADIR%%/includes/jscalendar/menuarrow.gif
X%%DATADIR%%/includes/jscalendar/menuarrow2.gif
X%%DATADIR%%/includes/jscalendar/skins/aqua/active-bg.gif
X%%DATADIR%%/includes/jscalendar/skins/aqua/dark-bg.gif
X%%DATADIR%%/includes/jscalendar/skins/aqua/hover-bg.gif
X%%DATADIR%%/includes/jscalendar/skins/aqua/menuarrow.gif
X%%DATADIR%%/includes/jscalendar/skins/aqua/normal-bg.gif
X%%DATADIR%%/includes/jscalendar/skins/aqua/rowhover-bg.gif
X%%DATADIR%%/includes/jscalendar/skins/aqua/status-bg.gif
X%%DATADIR%%/includes/jscalendar/skins/aqua/theme.css
X%%DATADIR%%/includes/jscalendar/skins/aqua/title-bg.gif
X%%DATADIR%%/includes/jscalendar/skins/aqua/today-bg.gif
X%%DATADIR%%/includes/markdown.php
X%%DATADIR%%/includes/notify.inc.php
X%%DATADIR%%/includes/regexp.php
X%%DATADIR%%/includes/styleswitcher.js
X%%DATADIR%%/includes/tabs.js
X%%DATADIR%%/includes/template.php
X%%DATADIR%%/includes/version.php
X%%DATADIR%%/includes/xmlrpc.inc
X%%DATADIR%%/includes/xmlrpcs.inc
X%%DATADIR%%/index.php
X%%DATADIR%%/lang/en/admin.php
X%%DATADIR%%/lang/en/authenticate.php
X%%DATADIR%%/lang/en/chpass.php
X%%DATADIR%%/lang/en/details.php
X%%DATADIR%%/lang/en/functions.inc.php
X%%DATADIR%%/lang/en/index.php
X%%DATADIR%%/lang/en/loginbox.php
X%%DATADIR%%/lang/en/main.php
X%%DATADIR%%/lang/en/modify.php
X%%DATADIR%%/lang/en/newgroup.php
X%%DATADIR%%/lang/en/newproject.php
X%%DATADIR%%/lang/en/newtask.php
X%%DATADIR%%/lang/en/newuser.php
X%%DATADIR%%/lang/en/notify.inc.php
X%%DATADIR%%/lang/en/pm.php
X%%DATADIR%%/lang/en/priority.php
X%%DATADIR%%/lang/en/register.php
X%%DATADIR%%/lang/en/reports.php
X%%DATADIR%%/lang/en/severity.php
X%%DATADIR%%/lang/en/status.php
X%%DATADIR%%/lang/langdiff.php
X%%DATADIR%%/remote-client.php
X%%DATADIR%%/remote.php
X%%DATADIR%%/scripts/admin.php
X%%DATADIR%%/scripts/authenticate.php
X%%DATADIR%%/scripts/chproject.php
X%%DATADIR%%/scripts/daemon.php
X%%DATADIR%%/scripts/depends.php
X%%DATADIR%%/scripts/details.php
X%%DATADIR%%/scripts/editcomment.php
X%%DATADIR%%/scripts/error.php
X%%DATADIR%%/scripts/index.php
X%%DATADIR%%/scripts/loginbox.php
X%%DATADIR%%/scripts/lostpw.php
X%%DATADIR%%/scripts/modify.php
X%%DATADIR%%/scripts/myprofile.php
X%%DATADIR%%/scripts/newgroup.php
X%%DATADIR%%/scripts/newtask.php
X%%DATADIR%%/scripts/newuser.php
X%%DATADIR%%/scripts/pm.php
X%%DATADIR%%/scripts/register.php
X%%DATADIR%%/scripts/reports.php
X%%DATADIR%%/scripts/rss.php
X%%DATADIR%%/scripts/rss2.php
X%%DATADIR%%/scripts/schedule.php
X%%DATADIR%%/setup/images/exclamation.png
X%%DATADIR%%/setup/images/title.png
X%%DATADIR%%/setup/index.php
X%%DATADIR%%/setup/styles/setup.css
X%%DATADIR%%/setup/styles/theme.css
X%%DATADIR%%/setup/templates/administration.tpl.php
X%%DATADIR%%/setup/templates/complete_install.tpl.php
X%%DATADIR%%/setup/templates/database.tpl.php
X%%DATADIR%%/setup/templates/license.tpl.php
X%%DATADIR%%/setup/templates/pre_install.tpl.php
X%%DATADIR%%/setup/templates/structure.tpl.php
X%%DATADIR%%/sql/flyspray-0.9.8.mysql
X%%DATADIR%%/sql/flyspray-0.9.8.pgsql
X%%DATADIR%%/sql/flyspray.conf.skel
X%%DATADIR%%/sql/upgrade_0.9.7_to_0.9.8.mysql
X%%DATADIR%%/sql/upgrade_0.9.7_to_0.9.8.pgsql
X%%DATADIR%%/themes/Bluey/asc.png
X%%DATADIR%%/themes/Bluey/attachment.png
X%%DATADIR%%/themes/Bluey/button-over.png
X%%DATADIR%%/themes/Bluey/button.png
X%%DATADIR%%/themes/Bluey/calendar.png
X%%DATADIR%%/themes/Bluey/comment.png
X%%DATADIR%%/themes/Bluey/desc.png
X%%DATADIR%%/themes/Bluey/frown.png
X%%DATADIR%%/themes/Bluey/index.html
X%%DATADIR%%/themes/Bluey/menu/comment.png
X%%DATADIR%%/themes/Bluey/menu/editmydetails.png
X%%DATADIR%%/themes/Bluey/menu/lists.png
X%%DATADIR%%/themes/Bluey/menu/logout.png
X%%DATADIR%%/themes/Bluey/menu/newtask.png
X%%DATADIR%%/themes/Bluey/menu/options.png
X%%DATADIR%%/themes/Bluey/menu/projectprefs.png
X%%DATADIR%%/themes/Bluey/menu/reports.png
X%%DATADIR%%/themes/Bluey/menu/search.png
X%%DATADIR%%/themes/Bluey/menu/usersandgroups.png
X%%DATADIR%%/themes/Bluey/mime/application.png
X%%DATADIR%%/themes/Bluey/mime/application/octet-stream.png
X%%DATADIR%%/themes/Bluey/mime/application/pdf.png
X%%DATADIR%%/themes/Bluey/mime/application/x-gzip.png
X%%DATADIR%%/themes/Bluey/mime/audio.png
X%%DATADIR%%/themes/Bluey/mime/image.png
X%%DATADIR%%/themes/Bluey/mime/text.png
X%%DATADIR%%/themes/Bluey/mime/text/html.png
X%%DATADIR%%/themes/Bluey/mime/video.png
X%%DATADIR%%/themes/Bluey/next.png
X%%DATADIR%%/themes/Bluey/percent-0.png
X%%DATADIR%%/themes/Bluey/percent-10.png
X%%DATADIR%%/themes/Bluey/percent-100.png
X%%DATADIR%%/themes/Bluey/percent-20.png
X%%DATADIR%%/themes/Bluey/percent-30.png
X%%DATADIR%%/themes/Bluey/percent-40.png
X%%DATADIR%%/themes/Bluey/percent-50.png
X%%DATADIR%%/themes/Bluey/percent-60.png
X%%DATADIR%%/themes/Bluey/percent-70.png
X%%DATADIR%%/themes/Bluey/percent-80.png
X%%DATADIR%%/themes/Bluey/percent-90.png
X%%DATADIR%%/themes/Bluey/prev.png
X%%DATADIR%%/themes/Bluey/smile.png
X%%DATADIR%%/themes/Bluey/tab-active.png
X%%DATADIR%%/themes/Bluey/tab-notactive.png
X%%DATADIR%%/themes/Bluey/theme.css
X%%DATADIR%%/themes/Bluey/title.png
X%%PORTDOCS%%%%DOCSDIR%%/AUTHORS.txt
X%%PORTDOCS%%%%DOCSDIR%%/BUGS.txt
X%%PORTDOCS%%%%DOCSDIR%%/CHANGELOG.txt
X%%PORTDOCS%%%%DOCSDIR%%/INSTALL.txt
X%%PORTDOCS%%%%DOCSDIR%%/QA_CHECKLIST.txt
X%%PORTDOCS%%%%DOCSDIR%%/README.txt
X%%PORTDOCS%%%%DOCSDIR%%/TODO.txt
X%%PORTDOCS%%%%DOCSDIR%%/UPGRADING.txt
X%%PORTDOCS%%%%DOCSDIR%%/ADOdb.licence.txt
X%%PORTDOCS%%%%DOCSDIR%%/Flyspray.licence.txt
X%%PORTDOCS%%%%DOCSDIR%%/class.jabber.php.licence.txt
X%%PORTDOCS%%%%DOCSDIR%%/NuvolaIcons.licence.txt
X%%PORTDOCS%%%%DOCSDIR%%/jsCalendar.licence.txt
X%%PORTDOCS%%%%DOCSDIR%%/phpMarkdown.licence.txt
X%%PORTDOCS%%%%DOCSDIR%%/phpmailer.licence.txt
X%%PORTDOCS%%%%DOCSDIR%%/README.FreeBSD
X%%PORTDOCS%%@dirrm %%DOCSDIR%%
X at dirrm %%DATADIR%%/docs/licences
X at dirrm %%DATADIR%%/docs
X at dirrm %%DATADIR%%/includes/jscalendar/lang
X at dirrm %%DATADIR%%/includes/jscalendar/skins/aqua
X at dirrm %%DATADIR%%/includes/jscalendar/skins
X at dirrm %%DATADIR%%/includes/jscalendar
X at dirrm %%DATADIR%%/includes
X at dirrm %%DATADIR%%/lang/en
X at dirrm %%DATADIR%%/lang
X at dirrm %%DATADIR%%/scripts
X at dirrm %%DATADIR%%/setup/styles
X at dirrm %%DATADIR%%/setup/images
X at dirrm %%DATADIR%%/setup/templates
X at dirrm %%DATADIR%%/setup
X at dirrm %%DATADIR%%/sql
X at dirrm %%DATADIR%%/themes/Bluey/mime/application
X at dirrm %%DATADIR%%/themes/Bluey/mime/text
X at dirrm %%DATADIR%%/themes/Bluey/mime
X at dirrm %%DATADIR%%/themes/Bluey/menu
X at dirrm %%DATADIR%%/themes/Bluey
X at dirrm %%DATADIR%%/themes
X at dirrm %%DATADIR%%/
END-of-flyspray-0.9.8.1/pkg-plist
echo x - flyspray-0.9.8.1/Makefile
sed 's/^X//' >flyspray-0.9.8.1/Makefile << 'END-of-flyspray-0.9.8.1/Makefile'
X# New ports collection makefile for: flyspray
X# Date created: 2003.08.28
X# Whom: Nick Hilliard <nick at foobar.org>
X#
X# $FreeBSD: ports/devel/flyspray/Makefile,v 1.4 2005/04/29 06:09:56 leeym Exp $
X#
X
XPORTNAME= flyspray
XPORTVERSION= 0.9.8
XPORTEPOCH= 1
XCATEGORIES= devel
XMASTER_SITES= http://flyspray.rocks.cc/files/
X
XMAINTAINER= nick at foobar.org
XCOMMENT= A simple, easy-to-use web based bug tracking system
X
XRUN_DEPENDS= ${LOCALBASE}/share/adodb/adodb.inc.php:${PORTSDIR}/databases/adodb
X
XUSE_REINPLACE= yes
XUSE_PHP= mysql pcre session
XWANT_PHP_WEB= yes
X
XNO_BUILD= yes
X
XFLYSPRAYDIR= ${PREFIX}/share/${PORTNAME}
XATTACHMENTDIR= ${DBDIR}/${PORTNAME}/attachments
XDBDIR= /var/db
X
XDOC_FILES= AUTHORS.txt BUGS.txt CHANGELOG.txt INSTALL.txt \
X QA_CHECKLIST.txt README.txt TODO.txt UPGRADING.txt \
X README.FreeBSD \
X licences/ADOdb.licence.txt \
X licences/Flyspray.licence.txt \
X licences/NuvolaIcons.licence.txt \
X licences/class.jabber.php.licence.txt \
X licences/jsCalendar.licence.txt \
X licences/phpMarkdown.licence.txt \
X licences/phpmailer.licence.txt \
X
XFLYSPRAY_FILES= .htaccess favicon.ico header.php index.php \
X remote-client.php remote.php docs/licences/gnu_lgpl.html \
X includes lang scripts setup sql themes
X
XPKGMESSAGE= ${WRKSRC}/pkg-message
X
Xpost-patch:
X @${CP} ${PKGDIR}/files/README.FreeBSD ${WRKSRC}/docs/
X @${REINPLACE_CMD} -e "s|%%FLYSPRAYDIR%%|"${FLYSPRAYDIR}"|g" \
X -e "s|%%DOCSDIR%%|"${DOCSDIR}"|g" \
X ${WRKSRC}/docs/README.FreeBSD
X @${FIND} ${WRKSRC} -name \*.orig -exec ${RM} '{}' ';'
X
Xdo-install:
X @${MKDIR} ${FLYSPRAYDIR}
X ${CHMOD} 755 ${FLYSPRAYDIR}
X ${INSTALL_DATA} ${WRKSRC}/flyspray.conf.php \
X ${FLYSPRAYDIR}/flyspray.conf.php-dist
X ${TOUCH} ${FLYSPRAYDIR}/flyspray.conf.php
X cd ${WRKSRC} && \
X tar cf - ${FLYSPRAY_FILES} | \
X (cd ${FLYSPRAYDIR} && tar -xf -)
X ${LN} -s ${ATTACHMENTDIR} ${FLYSPRAYDIR}/attachments
X ${LN} -s ${PREFIX}/share/adodb ${FLYSPRAYDIR}
X @${MKDIR} ${ATTACHMENTDIR}
X ${CHMOD} 750 ${ATTACHMENTDIR}
X ${CHOWN} ${WWWOWN}:${WWWGRP} ${ATTACHMENTDIR}
X ${CHOWN} ${WWWOWN}:${WWWGRP} ${FLYSPRAYDIR}/flyspray.conf.php
X
Xpost-install: install-doc
X @${SED} -e 's|%%DOCSDIR%%|${DOCSDIR}|g' pkg-message > ${PKGMESSAGE}
X @${CAT} ${PKGMESSAGE}
X
Xinstall-doc:
X.if !defined(NOPORTDOCS)
X @${MKDIR} ${DOCSDIR}
X.for file in ${DOC_FILES}
X @${INSTALL_DATA} ${WRKSRC}/docs/${file} ${DOCSDIR}
X.endfor
X.endif
X
X.include <bsd.port.mk>
END-of-flyspray-0.9.8.1/Makefile
exit
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list