Thread: [Sitracker-devel] SF.net SVN: sitracker:[3843] trunk
Open source support tracking in your browser
Brought to you by:
ivanlucas
From: <iva...@us...> - 2008-07-18 15:04:19
|
Revision: 3843 http://sitracker.svn.sourceforge.net/sitracker/?rev=3843&view=rev Author: ivanlucas Date: 2008-07-18 15:04:12 +0000 (Fri, 18 Jul 2008) Log Message: ----------- Fix for Mantis 121 QBE report can reveal sensitive information. QBE report now requires Administrate permission (22) as well as reports permission (67) Modified Paths: -------------- trunk/doc/UPGRADE trunk/htdocs/reports/qbe.php Modified: trunk/doc/UPGRADE =================================================================== --- trunk/doc/UPGRADE 2008-07-18 14:18:19 UTC (rev 3842) +++ trunk/doc/UPGRADE 2008-07-18 15:04:12 UTC (rev 3843) @@ -22,6 +22,12 @@ upgrading and skipping several versions listed below you should read everything carefully to make sure you've met all the requirements: +Upgrading to 3.36 +----------------- +No special actions are required, however you should be aware that +the QBE report now requires Administrate permission (22). + + Upgrading to 3.35 ----------------- As of 3.35 we've changed our minimum requirement for php to 5.0.0 Modified: trunk/htdocs/reports/qbe.php =================================================================== --- trunk/htdocs/reports/qbe.php 2008-07-18 14:18:19 UTC (rev 3842) +++ trunk/htdocs/reports/qbe.php 2008-07-18 15:04:12 UTC (rev 3843) @@ -11,7 +11,7 @@ // Author: Ivan Lucas <ivanlucas[at]users.sourceforge.net> @include ('../set_include_path.inc.php'); -$permission = 37; // Run Reports +$permission = array(22, 67); // Administrate / Run Reports require ('db_connect.inc.php'); require ('functions.inc.php'); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <pau...@us...> - 2008-07-19 11:31:59
|
Revision: 3853 http://sitracker.svn.sourceforge.net/sitracker/?rev=3853&view=rev Author: paulheaney Date: 2008-07-19 11:31:52 +0000 (Sat, 19 Jul 2008) Log Message: ----------- * Start of monthly billing eport mailout * Sprinled a few spaces Modified Paths: -------------- trunk/htdocs/auto.php trunk/includes/triggers.inc.php Modified: trunk/htdocs/auto.php =================================================================== --- trunk/htdocs/auto.php 2008-07-19 11:30:07 UTC (rev 3852) +++ trunk/htdocs/auto.php 2008-07-19 11:31:52 UTC (rev 3853) @@ -187,7 +187,7 @@ mysql_free_result($update_result); - if ($newSlaTime!=-1) + if ($newSlaTime != -1) { // Get these time of NEXT SLA requirement in minutes $coefficient = 1; @@ -294,54 +294,55 @@ } if ($newstatus != $currentstatus) { - $accepting=''; + $accepting = ''; + // FIXME these should be constants switch ($newstatus) { case 1: // in office - $accepting='Yes'; + $accepting = 'Yes'; break; case 2: // Not in office - $accepting='No'; + $accepting = 'No'; break; case 3: // In Meeting // don't change - $accepting=''; + $accepting = ''; break; case 4: // At Lunch - $accepting=''; + $accepting = ''; break; case 5: // On Holiday - $accepting='No'; + $accepting = 'No'; break; case 6: // Working from home - $accepting='Yes'; + $accepting = 'Yes'; break; case 7: // On training course - $accepting='No'; + $accepting = 'No'; break; case 8: // Absent Sick - $accepting='No'; + $accepting =' No'; break; case 9: // Working Away // don't change - $accepting=''; + $accepting = ''; break; default: $accepting=''; } $usql = "UPDATE `{$dbUsers}` SET status='{$newstatus}'"; - if ($accepting!='') $usql .= ", accepting='{$accepting}'"; + if ($accepting != '') $usql .= ", accepting='{$accepting}'"; $usql .= " WHERE id='{$huser->userid}' LIMIT 1"; - if ($accepting=='No') incident_backup_switchover($huser->userid, 'no'); + if ($accepting == 'No') incident_backup_switchover($huser->userid, 'no'); if ($verbose) echo user_realname($huser->userid).': '.userstatus_name($currentstatus).' -> '.userstatus_name($newstatus).$crlf; if ($verbose) echo $usql.$crlf; mysql_query($usql); @@ -588,7 +589,38 @@ // TODO PurgeAttachments // Look for the review due trigger, where did it go +/** + * + * @author Paul Heaney +*/ +function saction_MailPreviousMonthsTransactions() +{ + /* + Get todays date + Subtract one from the month and find last month + Find the last day of last month + fope(transactions.php?mode=csv&start=X&end=Y&breakdonw=yes + mail to people + TODO need a mechanism to subscribe to scheduled events? Could this be done with a trigger? Hmmhhhhhh + + */ + $currentmonth = date('%m'); + $currentyear = date('%y'); + if ($currentmonth == 1) + { + $currentyear--; + $lastmonth = 12; + } + else + { + $lastmonth = $currentmonth - 1; + } + + $start = '{$currentyear}-{$lastmonth}-01'; + + $csv = fopen("transactions.php?startdate={$startdate}&enddate={$enddate}&display=csv&sitebreakdown=on"); +} // ======================================================================================= $actions = schedule_actions_due(); if ($actions !== FALSE) Modified: trunk/includes/triggers.inc.php =================================================================== --- trunk/includes/triggers.inc.php 2008-07-19 11:30:07 UTC (rev 3852) +++ trunk/includes/triggers.inc.php 2008-07-19 11:31:52 UTC (rev 3853) @@ -254,7 +254,7 @@ * we're not dealing with a trigger * @return mixed array if replacement found, NULL if not */ -function replace_vars(&$ttvar, &$triggerid, &$identifier, &$paramarray, $required='') +function replace_vars(&$ttvar, &$triggerid, &$identifier, &$paramarray, $required = '') { global $triggerarray, $ttvararray, $CONFIG; @@ -423,8 +423,8 @@ * @param $paramarray array. The array of extra parametes to apply to the * trigger */ -function create_trigger_notice($userid, $noticetext='', $triggertype='', - $template, $paramarray='') +function create_trigger_notice($userid, $noticetext = '', $triggertype = '', + $template, $paramarray = '') { global $CONFIG, $dbg, $dbNotices, $dbNoticeTemplates; /*if ($CONFIG['debug']) @@ -721,14 +721,14 @@ */ //TODO should this be limited to one delete, is there ever more than one? //TODO make it fail quietly -function trigger_revoke($triggerid, $userid, $referenceid=0) +function trigger_revoke($triggerid, $userid, $referenceid = 0) { global $GLOBALS; //find all triggers of this type and user $sql = "SELECT * FROM `{$GLOBALS['dbTriggers']}` WHERE triggerid='{$triggerid}' "; $sql .= "AND userid={$userid} AND action='ACTION_NOTICE' AND template!=0"; $result = mysql_query($sql); - while($triggerobj = @mysql_fetch_object($result)) + while ($triggerobj = @mysql_fetch_object($result)) { $templatesql = "DELETE FROM {$GLOBALS['dbNotices']} "; $templatesql .= "WHERE template={$triggerobj->template} "; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <pau...@us...> - 2008-07-20 18:53:52
|
Revision: 3854 http://sitracker.svn.sourceforge.net/sitracker/?rev=3854&view=rev Author: paulheaney Date: 2008-07-20 18:53:49 +0000 (Sun, 20 Jul 2008) Log Message: ----------- * Further implementation of saction_MailPreviousMonthsTransactions though still not complete * A few spaces Modified Paths: -------------- trunk/htdocs/auto.php trunk/htdocs/incident/email.inc.php trunk/includes/functions.inc.php Modified: trunk/htdocs/auto.php =================================================================== --- trunk/htdocs/auto.php 2008-07-19 11:31:52 UTC (rev 3853) +++ trunk/htdocs/auto.php 2008-07-20 18:53:49 UTC (rev 3854) @@ -122,7 +122,7 @@ { // Get the service level timings for this class of incident, we may have one // from the incident itself, otherwise look at contract type - if ($incident['servicelevel']== '') + if ($incident['servicelevel'] == '') { $sql = "SELECT tag FROM `{$dbServiceLevels}` s, `{$dbMaintenance}` m "; $sql .= "WHERE m.id = '{$incident['maintenanceid']}' AND s.id = m.servicelevelid"; @@ -595,6 +595,8 @@ */ function saction_MailPreviousMonthsTransactions() { + echo "Running saction_MailPreviousMonthsTransactions"; + global $CONFIG; /* Get todays date Subtract one from the month and find last month @@ -605,8 +607,8 @@ TODO need a mechanism to subscribe to scheduled events? Could this be done with a trigger? Hmmhhhhhh */ - $currentmonth = date('%m'); - $currentyear = date('%y'); + $currentmonth = date('m'); + $currentyear = date('y'); if ($currentmonth == 1) { $currentyear--; @@ -617,9 +619,30 @@ $lastmonth = $currentmonth - 1; } - $start = '{$currentyear}-{$lastmonth}-01'; + $startdate = "{$currentyear}-{$lastmonth}-01"; + // Find last date of previous month, 5 day an arbitary choice + $lastday = date('t', strtotime('{$currentyear}-{$lastmonth}-05')); + $enddate = "{$currentyear}-{$lastmonth}-{$lastday}"; - $csv = fopen("transactions.php?startdate={$startdate}&enddate={$enddate}&display=csv&sitebreakdown=on"); + $csv = file_get_contents("http://sit.pheaney.co.uk/transactions.php?startdate={$startdate}&enddate={$enddate}&display=csv&sitebreakdown=on"); + + $extra_headers = "Reply-To: {$CONFIG['support_email']}\nErrors-To: {$CONFIG['support_email']}\n"; // TODO should probably be different + $extra_headers .= "X-Mailer: {$CONFIG['application_shortname']} {$application_version_string}/PHP " . phpversion() . "\n"; + $extra_headers .= "X-Originating-IP: {$_SERVER['REMOTE_ADDR']}\n"; +// if ($ccfield != '') $extra_headers .= "cc: $ccfield\n"; +// if ($bccfield != '') $extra_headers .= "Bcc: $bccfield\n"; + + $extra_headers .= "\n"; // add an extra crlf to create a null line to separate headers from body + // this appears to be required by some email clients - INL + + $subject = "Billable incidents for period {$startdate} to {$enddate}"; + + $bodytext = "Attached is the billable incidents for the above period"; + + $mime = new MIME_mail($CONFIG['support_email'], "pa...@ph...", html_entity_decode($subject), $bodytext, $extra_headers, ''); + $mime->attach($csv, "Billable report", OCTET, BASE64, "filename=billable_incidents_{$lastmonth}_{$currentyear}.csv"); + return $mime->send_mail(); + } // ======================================================================================= $actions = schedule_actions_due(); Modified: trunk/htdocs/incident/email.inc.php =================================================================== --- trunk/htdocs/incident/email.inc.php 2008-07-19 11:31:52 UTC (rev 3853) +++ trunk/htdocs/incident/email.inc.php 2008-07-20 18:53:49 UTC (rev 3854) @@ -742,7 +742,7 @@ } else { - $timetext.=date("D jS M Y @ g:i A", $timeofnextaction); + $timetext .= date("D jS M Y @ g:i A", $timeofnextaction); } $timetext .= "</b>\n\n"; //$bodytext = $timetext.$bodytext; Modified: trunk/includes/functions.inc.php =================================================================== --- trunk/includes/functions.inc.php 2008-07-19 11:31:52 UTC (rev 3853) +++ trunk/includes/functions.inc.php 2008-07-20 18:53:49 UTC (rev 3854) @@ -1031,23 +1031,23 @@ $vcard .= "FN:{$contact->forenames} {$contact->surname}\r\n"; if (!empty($contact->jobtitle)) $vcard .= "TITLE:{$contact->jobtitle}\r\n"; if (!empty($contact->sitename)) $vcard .= "ORG:{$contact->sitename}\r\n"; - if ($contact->dataprotection_phone!='Yes') $vcard .= "TEL;TYPE=WORK:{$contact->phone}\r\n"; - if ($contact->dataprotection_phone!='Yes' && !empty($contact->fax)) + if ($contact->dataprotection_phone != 'Yes') $vcard .= "TEL;TYPE=WORK:{$contact->phone}\r\n"; + if ($contact->dataprotection_phone != 'Yes' && !empty($contact->fax)) { $vcard .= "TEL;TYPE=WORK;TYPE=FAX:{$contact->fax}\r\n"; } - if ($contact->dataprotection_phone!='Yes' && !empty($contact->mobile)) + if ($contact->dataprotection_phone != 'Yes' && !empty($contact->mobile)) { $vcard .= "TEL;TYPE=WORK;TYPE=CELL:{$contact->mobile}\r\n"; } - if ($contact->dataprotection_email!='Yes' && !empty($contact->email)) + if ($contact->dataprotection_email != 'Yes' && !empty($contact->email)) { $vcard .= "EMAIL;TYPE=INTERNET:{$contact->email}\r\n"; } - if ($contact->dataprotection_address!='Yes') + if ($contact->dataprotection_address != 'Yes') { if ($contact->address1 != '') { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <pau...@us...> - 2008-07-22 19:33:44
|
Revision: 3862 http://sitracker.svn.sourceforge.net/sitracker/?rev=3862&view=rev Author: paulheaney Date: 2008-07-22 19:33:39 +0000 (Tue, 22 Jul 2008) Log Message: ----------- * Convert transactions into a function * Create a config variable for billable report emails * Finish auto reporting Modified Paths: -------------- trunk/htdocs/auto.php trunk/htdocs/transactions.php trunk/includes/defaults.inc.php trunk/includes/functions.inc.php Modified: trunk/htdocs/auto.php =================================================================== --- trunk/htdocs/auto.php 2008-07-22 18:25:27 UTC (rev 3861) +++ trunk/htdocs/auto.php 2008-07-22 19:33:39 UTC (rev 3862) @@ -595,7 +595,6 @@ */ function saction_MailPreviousMonthsTransactions() { - echo "Running saction_MailPreviousMonthsTransactions"; global $CONFIG; /* Get todays date @@ -624,7 +623,7 @@ $lastday = date('t', strtotime('{$currentyear}-{$lastmonth}-05')); $enddate = "{$currentyear}-{$lastmonth}-{$lastday}"; - $csv = file_get_contents("http://sit.pheaney.co.uk/transactions.php?startdate={$startdate}&enddate={$enddate}&display=csv&sitebreakdown=on"); + $csv = transactions_report('', $startdate, $enddate, '', 'csv', TRUE); $extra_headers = "Reply-To: {$CONFIG['support_email']}\nErrors-To: {$CONFIG['support_email']}\n"; // TODO should probably be different $extra_headers .= "X-Mailer: {$CONFIG['application_shortname']} {$application_version_string}/PHP " . phpversion() . "\n"; @@ -639,7 +638,7 @@ $bodytext = "Attached is the billable incidents for the above period"; - $mime = new MIME_mail($CONFIG['support_email'], "pa...@ph...", html_entity_decode($subject), $bodytext, $extra_headers, ''); + $mime = new MIME_mail($CONFIG['support_email'], $CONFIG['billing_reports_email'], html_entity_decode($subject), $bodytext, $extra_headers, ''); $mime->attach($csv, "Billable report", OCTET, BASE64, "filename=billable_incidents_{$lastmonth}_{$currentyear}.csv"); return $mime->send_mail(); Modified: trunk/htdocs/transactions.php =================================================================== --- trunk/htdocs/transactions.php 2008-07-22 18:25:27 UTC (rev 3861) +++ trunk/htdocs/transactions.php 2008-07-22 19:33:39 UTC (rev 3862) @@ -23,11 +23,9 @@ // External variables $serviceid = cleanvar($_REQUEST['serviceid']); -$startdateorig = cleanvar($_REQUEST['startdate']); -$enddateorig = cleanvar($_REQUEST['enddate']); +$startdate = cleanvar($_REQUEST['startdate']); +$enddate = cleanvar($_REQUEST['enddate']); -$startdate = strtotime(cleanvar($_REQUEST['startdate'])); -$enddate = strtotime(cleanvar($_REQUEST['enddate'])); $mode = cleanvar($_REQUEST['mode']); // FIXME this parameter is never used $site = cleanvar($_REQUEST['site']); $sites = $_REQUEST['sites']; @@ -44,182 +42,11 @@ $enddate = date("Y-m-d", $m); } +if ($sitebreakdown == 'on') $sitebreakdown = TRUE; +else $sitebreakdown = FALSE; -$sql = "SELECT DISTINCT t.*, m.site FROM `{$dbTransactions}` AS t, `{$dbService}` AS p, `{$dbMaintenance}` AS m, `{$dbServiceLevels}` AS sl, `{$dbSites}` AS s "; -$sql .= "WHERE t.serviceid = p.serviceid AND p.contractid = m.id "; // AND t.date <= '{$enddateorig}' "; -$sql .= "AND m.servicelevelid = sl.id AND sl.timed = 'yes' AND m.site = s.id "; -//// $sql .= "AND t.date > p.lastbilled AND m.site = {$objsite->site} "; -if ($serviceid > 0) $sql .= "AND t.serviceid = {$serviceid} "; -if (!empty($startdate)) $sql .= "AND t.date >= '{$startdateorig}' "; -if (!empty($enddate)) $sql .= "AND t.date <= '{$enddate}' "; +$text = transactions_report($serviceid, $startdate, $enddate, $sites, $display, $sitebreakdown); -if (!empty($sites)) -{ - $sitestr = ''; - - foreach ($sites AS $s) - { - if (empty($sitestr)) $sitestr .= "m.site = {$s} "; - else $sitestr .= "OR m.site = {$s} "; - } - - $sql .= "AND {$sitestr} "; -} - -if (!empty($site)) $sql .= "AND m.site = {$site} "; - -$sql .= "ORDER BY s.name "; - -$result = mysql_query($sql); -if (mysql_error()) trigger_error("MySQL Query Error ".mysql_error(), E_USER_WARNING); - -if (mysql_num_rows($result) > 0) -{ - $shade = 'shade1'; - - $total = 0; - $totalcredit = 0; - $totaldebit = 0; - - while ($transaction = mysql_fetch_object($result)) - { - if ($display == 'html') - { - $str = "<tr class='$shade'>"; - $str .= "<td>{$transaction->date}</td>"; - $str .= "<td>{$transaction->transactionid}</td>"; - $str .= "<td>{$transaction->serviceid}</td>"; - $str .= "<td>".site_name($transaction->site)."</td>"; - $str .= "<td>{$transaction->description}</td>"; - } - elseif ($display == 'csv') - { - $str = "\"{$transaction->date}\","; - $str .= "\"{$transaction->transactionid}\","; - $str .= "\"{$transaction->serviceid}\",\""; - $str .= site_name($transaction->site)."\","; - $str .= "\"{$transaction->description}\","; - } - - $total += $transaction->amount; - if ($transaction->amount < 0) - { - $totaldebit += $transaction->amount; - if ($display == 'html') - { - $str .= "<td></td><td>{$CONFIG['currency_symbol']}".number_format($transaction->amount, 2)."</td>"; - } - elseif ($display == 'csv') - { - $str .= ",\"{$CONFIG['currency_symbol']}".number_format($transaction->amount, 2)."\","; - } - } - else - { - $totalcredit += $transaction->amount; - if ($display == 'html') - { - $str .= "<td>{$CONFIG['currency_symbol']}".number_format($transaction->amount, 2)."</td><td></td>"; - } - elseif ($display == 'csv') - { - $str .= "\"{$CONFIG['currency_symbol']}".number_format($transaction->amount, 2)."\",,"; - } - } - - if ($display == 'html') $str .= "</tr>"; - elseif ($display == 'csv') $str .= "\n"; - - if ($sitebreakdown == 'on') - { - $table[$transaction->site]['site'] = site_name($transaction->site); - $table[$transaction->site]['str'] .= $str; - if ($transaction->amount < 0) - { - $table[$transaction->site]['debit'] += $transaction->amount; - } - else - { - $table[$transaction->site]['credit'] += $transaction->amount; - } - } - else - { - $table .= $str; - } - } - - if ($sitebreakdown == 'on') - { - foreach ($table AS $e) - { - if ($display == 'html') - { - $text .= "<h3>{$e['site']}</h3>"; - $text .= "<table align='center' width='60%'>"; - //echo "<tr><th colspan='7'>{$e['site']}</th></tr>"; - $text .= "<tr><th>{$strDate}</th><th>{$strID}</th><th>{$strServiceID}</th>"; - $text .= "<th>{$strSite}</th><th>{$strDescription}</th><th>{$strCredit}</th><th>{$strDebit}</th></tr>"; - $text .= $e['str']; - $text .= "<tr><td colspan='5' align='right'>{$strTotal}</td>"; - $text .= "<td>{$CONFIG['currency_symbol']}".number_format($e['credit'], 2)."</td>"; - $text .= "<td>{$CONFIG['currency_symbol']}".number_format($e['debit'], 2)."</td></tr>"; - $text .= "</table>"; - } - elseif ($display == 'csv') - { - $text .= "\"{$e['site']}\"\n\n"; - $text .= "\"{$strDate}\",\"{$strID}\",\"{$strServiceID}\","; - $text .= "\"{$strSite}\",\"{$strDescription}\",\"{$strCredit}\",\"{$strDebit}\"\n"; - $text .= $e['str']; - $text .= ",,,,{$strTotal},"; - $text .= "\"{$CONFIG['currency_symbol']}".number_format($e['credit'], 2)."\",\""; - $text .="{$CONFIG['currency_symbol']}".number_format($e['debit'], 2)."\"\n"; - } - } - } - else - { - if ($display == 'html') - { - $text .= "<table align='center'>"; - $text .= "<tr><th>{$strDate}</th><th>{$strID}</th><th>{$strServiceID}</th>"; - $text .= "<th>{$strSite}</th>"; - $text .= "<th>{$strDescription}</th><th>{$strCredit}</th><th>{$strDebit}</th></tr>"; - $text .= $table; - $text .= "<tr><td colspan='5' align='right'>{$strTOTALS}</td>"; - $text .= "<td>{$CONFIG['currency_symbol']}".number_format($totalcredit, 2)."</td>"; - $text .= "<td>{$CONFIG['currency_symbol']}".number_format($totaldebit, 2)."</td></tr>"; - $text .= "</table>"; - } - elseif ($display == 'csv') - { - $text .= "\"{$strDate}\",\"{$strID}\",\"{$strServiceID}\","; - $text .= "\"{$strSite}\","; - $text .= "\"{$strDescription}\",\"{$strCredit}\",\"{$strDebit}\"\n"; - $text .= $table; - $text .= ",,,,{$strTOTALS},"; - $text .= "\"{$CONFIG['currency_symbol']}".number_format($totalcredit, 2)."\",\""; - $text .= "{$CONFIG['currency_symbol']}".number_format($totaldebit, 2)."\"\n"; - } - } - - - if ($shade == 'shade1') $shade = 'shade2'; - else $shade = 'shade1'; -} -else -{ - if ($display == 'html') - { - $text = "<p align='center'>{$strNoTransactionsMatchYourSearch}</p>"; - } - elseif ($display == 'csv') - { - $text = $strNoTransactionsMatchYourSearch."\n"; - } -} - if ($display == 'html') { include ('htmlheader.inc.php'); Modified: trunk/includes/defaults.inc.php =================================================================== --- trunk/includes/defaults.inc.php 2008-07-22 18:25:27 UTC (rev 3861) +++ trunk/includes/defaults.inc.php 2008-07-22 19:33:39 UTC (rev 3862) @@ -242,4 +242,7 @@ // see www.gravatar.com to learn about gravatars $CONFIG['default_gravatar'] = 'identicon'; +// Default for whom the billing reports should be mailed to, multiple address can be seperared by commas +$CONFIG['billing_reports_email'] = 'admin@localhost'; + ?> \ No newline at end of file Modified: trunk/includes/functions.inc.php =================================================================== --- trunk/includes/functions.inc.php 2008-07-22 18:25:27 UTC (rev 3861) +++ trunk/includes/functions.inc.php 2008-07-22 19:33:39 UTC (rev 3862) @@ -10567,6 +10567,200 @@ /** + * Function to display/generate the transactions table + * @author Paul Heaney + * @param int $serviceid - The service ID to show transactons for + * @param Date $startdate - Date in format yyyy-mm-dd when you want to start the report from + * @param Date $enddate - Date in format yyyy-mm-dd when you want to end the report, empty means today + * @param int[] $sites - Array of sites to report on + * @param String $display either csv or html + * @param boolean $sitebreakdown - Breakdown per site + * @return String -either HTML or CSV + */ +function transactions_report($serviceid, $startdate, $enddate, $sites, $display, $sitebreakdown=TRUE) +{ + global $CONFIG; + $sql = "SELECT DISTINCT t.*, m.site FROM `{$GLOBALS['dbTransactions']}` AS t, `{$GLOBALS['dbService']}` AS p, "; + $sql .= "`{$GLOBALS['dbMaintenance']}` AS m, `{$GLOBALS['dbServiceLevels']}` AS sl, `{$GLOBALS['dbSites']}` AS s "; + $sql .= "WHERE t.serviceid = p.serviceid AND p.contractid = m.id "; // AND t.date <= '{$enddateorig}' "; + $sql .= "AND m.servicelevelid = sl.id AND sl.timed = 'yes' AND m.site = s.id "; + //// $sql .= "AND t.date > p.lastbilled AND m.site = {$objsite->site} "; + if ($serviceid > 0) $sql .= "AND t.serviceid = {$serviceid} "; + if (!empty($startdate)) $sql .= "AND t.date >= '{$startdate}' "; + if (!empty($enddate)) $sql .= "AND t.date <= '{$enddate}' "; + + if (!empty($sites)) + { + $sitestr = ''; + + foreach ($sites AS $s) + { + if (empty($sitestr)) $sitestr .= "m.site = {$s} "; + else $sitestr .= "OR m.site = {$s} "; + } + + $sql .= "AND {$sitestr} "; + } + + if (!empty($site)) $sql .= "AND m.site = {$site} "; + + $sql .= "ORDER BY s.name "; + + $result = mysql_query($sql); + if (mysql_error()) trigger_error("MySQL Query Error ".mysql_error(), E_USER_WARNING); + + if (mysql_num_rows($result) > 0) + { + $shade = 'shade1'; + + $total = 0; + $totalcredit = 0; + $totaldebit = 0; + + while ($transaction = mysql_fetch_object($result)) + { + if ($display == 'html') + { + $str = "<tr class='$shade'>"; + $str .= "<td>{$transaction->date}</td>"; + $str .= "<td>{$transaction->transactionid}</td>"; + $str .= "<td>{$transaction->serviceid}</td>"; + $str .= "<td>".site_name($transaction->site)."</td>"; + $str .= "<td>{$transaction->description}</td>"; + } + elseif ($display == 'csv') + { + $str = "\"{$transaction->date}\","; + $str .= "\"{$transaction->transactionid}\","; + $str .= "\"{$transaction->serviceid}\",\""; + $str .= site_name($transaction->site)."\","; + $str .= "\"{$transaction->description}\","; + } + + $total += $transaction->amount; + if ($transaction->amount < 0) + { + $totaldebit += $transaction->amount; + if ($display == 'html') + { + $str .= "<td></td><td>{$CONFIG['currency_symbol']}".number_format($transaction->amount, 2)."</td>"; + } + elseif ($display == 'csv') + { + $str .= ",\"{$CONFIG['currency_symbol']}".number_format($transaction->amount, 2)."\","; + } + } + else + { + $totalcredit += $transaction->amount; + if ($display == 'html') + { + $str .= "<td>{$CONFIG['currency_symbol']}".number_format($transaction->amount, 2)."</td><td></td>"; + } + elseif ($display == 'csv') + { + $str .= "\"{$CONFIG['currency_symbol']}".number_format($transaction->amount, 2)."\",,"; + } + } + + if ($display == 'html') $str .= "</tr>"; + elseif ($display == 'csv') $str .= "\n"; + + if ($sitebreakdown == TRUE) + { + $table[$transaction->site]['site'] = site_name($transaction->site); + $table[$transaction->site]['str'] .= $str; + if ($transaction->amount < 0) + { + $table[$transaction->site]['debit'] += $transaction->amount; + } + else + { + $table[$transaction->site]['credit'] += $transaction->amount; + } + } + else + { + $table .= $str; + } + } + + if ($sitebreakdown == TRUE) + { + foreach ($table AS $e) + { + if ($display == 'html') + { + $text .= "<h3>{$e['site']}</h3>"; + $text .= "<table align='center' width='60%'>"; + //echo "<tr><th colspan='7'>{$e['site']}</th></tr>"; + $text .= "<tr><th>{$GLOBALS['strDate']}</th><th>{$GLOBALS['strID']}</th><th>{$GLOBALS['strServiceID']}</th>"; + $text .= "<th>{$GLOBALS['strSite']}</th><th>{$GLOBALS['strDescription']}</th><th>{$GLOBALS['strCredit']}</th><th>{$GLOBALS['strDebit']}</th></tr>"; + $text .= $e['str']; + $text .= "<tr><td colspan='5' align='right'>{$GLOBALS['strTotal']}</td>"; + $text .= "<td>{$CONFIG['currency_symbol']}".number_format($e['credit'], 2)."</td>"; + $text .= "<td>{$CONFIG['currency_symbol']}".number_format($e['debit'], 2)."</td></tr>"; + $text .= "</table>"; + } + elseif ($display == 'csv') + { + $text .= "\"{$e['site']}\"\n\n"; + $text .= "\"{$GLOBALS['strDate']}\",\"{$GLOBALS['strID']}\",\"{$GLOBALS['strServiceID']}\","; + $text .= "\"{$GLOBALS['strSite']}\",\"{$GLOBALS['strDescription']}\",\"{$GLOBALS['strCredit']}\",\"{$GLOBALS['strDebit']}\"\n"; + $text .= $e['str']; + $text .= ",,,,{$GLOBALS['strTotal']},"; + $text .= "\"{$CONFIG['currency_symbol']}".number_format($e['credit'], 2)."\",\""; + $text .="{$CONFIG['currency_symbol']}".number_format($e['debit'], 2)."\"\n"; + } + } + } + else + { + if ($display == 'html') + { + $text .= "<table align='center'>"; + $text .= "<tr><th>{$GLOBALS['strDate']}</th><th>{$GLOBALS['strID']}</th><th>{$GLOBALS['strServiceID']}</th>"; + $text .= "<th>{$GLOBALS['strSite']}</th>"; + $text .= "<th>{$GLOBALS['strDescription']}</th><th>{$GLOBALS['strCredit']}</th><th>{$GLOBALS['strDebit']}</th></tr>"; + $text .= $table; + $text .= "<tr><td colspan='5' align='right'>{$strTOTALS}</td>"; + $text .= "<td>{$CONFIG['currency_symbol']}".number_format($totalcredit, 2)."</td>"; + $text .= "<td>{$CONFIG['currency_symbol']}".number_format($totaldebit, 2)."</td></tr>"; + $text .= "</table>"; + } + elseif ($display == 'csv') + { + $text .= "\"{$GLOBALS['strDate']}\",\"{$GLOBALS['strID']}\",\"{$GLOBALS['strServiceID']}\","; + $text .= "\"{$GLOBALS['strSite']}\","; + $text .= "\"{$GLOBALS['strDescription']}\",\"{$GLOBALS['strCredit']}\",\"{$GLOBALS['strDebit']}\"\n"; + $text .= $table; + $text .= ",,,,{$GLOBALS['strTOTALS']},"; + $text .= "\"{$CONFIG['currency_symbol']}".number_format($totalcredit, 2)."\",\""; + $text .= "{$CONFIG['currency_symbol']}".number_format($totaldebit, 2)."\"\n"; + } + } + + + if ($shade == 'shade1') $shade = 'shade2'; + else $shade = 'shade1'; + } + else + { + if ($display == 'html') + { + $text = "<p align='center'>{$GLOBALS['strNoTransactionsMatchYourSearch']}</p>"; + } + elseif ($display == 'csv') + { + $text = $GLOBALS['strNoTransactionsMatchYourSearch']."\n"; + } + } + + return $text; +} + + +/** * Outputs a table or csv file based on csv-based array * @author Kieran Hogg * @param array $data Array of data, see @note for format This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <iva...@us...> - 2008-07-23 14:22:30
|
Revision: 3866 http://sitracker.svn.sourceforge.net/sitracker/?rev=3866&view=rev Author: ivanlucas Date: 2008-07-23 14:22:27 +0000 (Wed, 23 Jul 2008) Log Message: ----------- * Tidy up cleanvar function * Put the formdata session stuff on the notes field of add contract Modified Paths: -------------- trunk/htdocs/add_contract.php trunk/includes/functions.inc.php Modified: trunk/htdocs/add_contract.php =================================================================== --- trunk/htdocs/add_contract.php 2008-07-23 14:01:39 UTC (rev 3865) +++ trunk/htdocs/add_contract.php 2008-07-23 14:22:27 UTC (rev 3866) @@ -120,7 +120,7 @@ echo "<tr><th>{$strAdminContact}</th>"; echo "<td>".contact_drop_down("admincontact", 0, TRUE, TRUE); echo " <span class='required'>{$strRequired}</span></td></tr>\n"; - echo "<tr><th>{$strNotes}</th><td><textarea cols='40' name='notes' rows='5'></textarea></td></tr>\n"; + echo "<tr><th>{$strNotes}</th><td><textarea cols='40' name='notes' rows='5'>{$_SESSION['formdata']['add_contract']['notes']}</textarea></td></tr>\n"; echo "<tr><th></th><td><a href=\"javascript:void(0);\" onclick=\"$('hidden').toggle();\">{$strMore}</a></td></tr>\n"; Modified: trunk/includes/functions.inc.php =================================================================== --- trunk/includes/functions.inc.php 2008-07-23 14:01:39 UTC (rev 3865) +++ trunk/includes/functions.inc.php 2008-07-23 14:22:27 UTC (rev 3866) @@ -6018,7 +6018,7 @@ * @author Ivan Lucas, Kieran Hogg * @param mixed $var variable to replace * @param bool $striphtml whether to strip html - * @param bool $transentities whether to translate forward (true) or backward (false) from html entites + * @param bool $transentities whether to translate all aplicable chars (true) or just special chars (false) into html entites * @param bool $mysqlescape whether to mysql_escape() * @param array $disallowedchars array of chars to remove * @param array $replacechars array of chars to replace as $orig => $replace @@ -6037,27 +6037,38 @@ } else { - if (sizeof($disallowedchars) > 0) + if ($striphtml === TRUE) { - foreach ($disallowedchars as $replace) - { - str_replace($replace, "", $var); - } + $var = strip_tags($var); } - - if (sizeof($replacechars) > 0) + + if (!empty($dissallowedchars)) { + $var = str_replace($dissallowedchars, '', $var); + } + + if (!empty($replacechars)) + { foreach ($replacechars as $orig => $replace) { - str_replace($orig, $replace, $var); + $var = str_replace($orig, $replace, $var); } } - if ($striphtml) $var = strip_tags($var); - if ($transentities) $var = htmlentities($var, ENT_COMPAT, $GLOBALS['i18ncharset']); - else $var = htmlspecialchars($var, ENT_COMPAT, $GLOBALS['i18ncharset']); + if ($transentities) + { + $var = htmlentities($var, ENT_COMPAT, $GLOBALS['i18ncharset']); + } + else + { + $var = htmlspecialchars($var, ENT_COMPAT, $GLOBALS['i18ncharset']); + } - if ($mysqlescape) $var = mysql_real_escape_string($var); + if ($mysqlescape) + { + $var = mysql_real_escape_string($var); + } + $var = trim($var); return $var; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kie...@us...> - 2008-07-23 14:42:12
|
Revision: 3867 http://sitracker.svn.sourceforge.net/sitracker/?rev=3867&view=rev Author: kieran_hogg Date: 2008-07-23 14:42:09 +0000 (Wed, 23 Jul 2008) Log Message: ----------- complete recursive cleanvar() and add to add_contract Modified Paths: -------------- trunk/htdocs/add_contract.php trunk/includes/functions.inc.php Modified: trunk/htdocs/add_contract.php =================================================================== --- trunk/htdocs/add_contract.php 2008-07-23 14:22:27 UTC (rev 3866) +++ trunk/htdocs/add_contract.php 2008-07-23 14:42:09 UTC (rev 3867) @@ -120,6 +120,7 @@ echo "<tr><th>{$strAdminContact}</th>"; echo "<td>".contact_drop_down("admincontact", 0, TRUE, TRUE); echo " <span class='required'>{$strRequired}</span></td></tr>\n"; + echo "<tr><th>{$strNotes}</th><td><textarea cols='40' name='notes' rows='5'>{$_SESSION['formdata']['add_contract']['notes']}</textarea></td></tr>\n"; echo "<tr><th></th><td><a href=\"javascript:void(0);\" onclick=\"$('hidden').toggle();\">{$strMore}</a></td></tr>\n"; @@ -180,7 +181,11 @@ $enddate = strtotime($_REQUEST['expiry']); if ($enddate > 0) $enddate = date('Y-m-d',$enddate); else $enddate = date('Y-m-d',$now); - if ($_REQUEST['noexpiry'] == 'on') $expirydate = '-1'; + + if ($_REQUEST['noexpiry'] == 'on') + { + $expirydate = '-1'; + } else $expirydate = strtotime($_REQUEST['expiry']); $amount = cleanvar($_POST['amount']); if ($amount == '') $amount = 0; @@ -194,7 +199,8 @@ $incident_pools = explode(',', "0,{$CONFIG['incident_pools']}"); $incident_quantity = $incident_pools[$_POST['incident_poolid']]; - $_SESSION['formdata']['add_contract'] = $_REQUEST; + $_SESSION['formdata']['add_contract'] = cleanvar($_POST, TRUE, FALSE, FALSE, + array("@"), array("'" => '"')); // Add maintenance to database $errors = 0; @@ -217,7 +223,7 @@ $_SESSION['formerrors']['add_contract']['admincontact'] = "You must select an admin contact\n"; } // check for blank expiry day - if ($expirydate == 0) + if (!isset($expirydate)) { $errors++; $_SESSION['formerrors']['add_contract']['expirydate'] = "You must enter an expiry date\n"; Modified: trunk/includes/functions.inc.php =================================================================== --- trunk/includes/functions.inc.php 2008-07-23 14:22:27 UTC (rev 3866) +++ trunk/includes/functions.inc.php 2008-07-23 14:42:09 UTC (rev 3867) @@ -6024,27 +6024,29 @@ * @param array $replacechars array of chars to replace as $orig => $replace * @returns variable */ -function cleanvar($var, $striphtml = TRUE, $transentities = TRUE, +function cleanvar($vars, $striphtml = TRUE, $transentities = TRUE, $mysqlescape = TRUE, $disallowedchars = array(), $replacechars = array()) { - if (is_array($var)) + if (is_array($vars)) { - foreach ($var as $singlevar) + foreach ($vars as $key => $singlevar) { - cleanvar($singlevar); + $var[$key] = cleanvar($singlevar, $striphtml, $transentities, $mysqlescape, + $disallowedchars, $replacechars); } } else { + $var = $vars; if ($striphtml === TRUE) { $var = strip_tags($var); } - if (!empty($dissallowedchars)) + if (!empty($disallowedchars)) { - $var = str_replace($dissallowedchars, '', $var); + $var = str_replace($disallowedchars, '', $var); } if (!empty($replacechars)) @@ -6070,9 +6072,8 @@ } $var = trim($var); - - return $var; } + return $var; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <iva...@us...> - 2008-07-23 14:54:37
|
Revision: 3868 http://sitracker.svn.sourceforge.net/sitracker/?rev=3868&view=rev Author: ivanlucas Date: 2008-07-23 14:54:32 +0000 (Wed, 23 Jul 2008) Log Message: ----------- * Move style into sitbase * Comments Modified Paths: -------------- trunk/htdocs/styles/sitbase.css trunk/includes/functions.inc.php Modified: trunk/htdocs/styles/sitbase.css =================================================================== --- trunk/htdocs/styles/sitbase.css 2008-07-23 14:42:09 UTC (rev 3867) +++ trunk/htdocs/styles/sitbase.css 2008-07-23 14:54:32 UTC (rev 3868) @@ -581,4 +581,15 @@ .incidentkey td { width: 25%; +} + + +.percentcontainer { + width: 100px; border: 1px solid #ccc; background-color: white; height: 12px; +} + +.percentbar { + text-align: center; height: 12px; font-size: 90%; + background: #AFAFAF; + width: 0px; /* default */ } \ No newline at end of file Modified: trunk/includes/functions.inc.php =================================================================== --- trunk/includes/functions.inc.php 2008-07-23 14:42:09 UTC (rev 3867) +++ trunk/includes/functions.inc.php 2008-07-23 14:54:32 UTC (rev 3868) @@ -6208,12 +6208,20 @@ } +/** + * Produces HTML for a percentage indicator + * @author Ivan Lucas + * @param $percent int. Number between 0 and 100 + * @returns string HTML +*/ function percent_bar($percent) { if ($percent == '') $percent = 0; + if ($percent < 0) $percent = 0; + if ($percent > 100) $percent = 100; // #B4D6B4; - $html = "<div style='width: 100px; border: 1px solid #ccc; background-color: white; height: 12px;'>"; - $html .= "<div style='text-align: center; height: 12px; font-size: 90%; width: {$percent}%; background: #AFAFAF;'> {$percent}%"; + $html = "<div class='percentcontainer'>"; + $html .= "<div class='percentbar' style='width: {$percent}%;'> {$percent}%"; $html .= "</div></div>\n"; return $html; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <iva...@us...> - 2008-07-23 15:11:48
|
Revision: 3870 http://sitracker.svn.sourceforge.net/sitracker/?rev=3870&view=rev Author: ivanlucas Date: 2008-07-23 15:11:43 +0000 (Wed, 23 Jul 2008) Log Message: ----------- Remove obsolete/deprecated code Modified Paths: -------------- trunk/htdocs/kb_article.php trunk/includes/functions.inc.php Removed Paths: ------------- trunk/htdocs/send_closing_email.php Modified: trunk/htdocs/kb_article.php =================================================================== --- trunk/htdocs/kb_article.php 2008-07-23 14:58:18 UTC (rev 3869) +++ trunk/htdocs/kb_article.php 2008-07-23 15:11:43 UTC (rev 3870) @@ -338,78 +338,4 @@ echo "<script type='text/javascript'>\n//<![CDATA[\nkbSectionCollapse();\n//]]>\n</script>"; include ('htmlfooter.inc.php'); } - -/* - -elseif (isset($_POST['submit'])) -{ - //new - $title = cleanvar($_POST['title']); - $distribution = cleanvar($_POST['distribution']); - $keywords = cleanvar($_POST['keywords']); - $summary = cleanvar($_POST['summary'],FALSE,FALSE); - $symptoms = cleanvar($_POST['symptoms'],FALSE,FALSE); - $cause = cleanvar($_POST['cause'],FALSE,FALSE); - $question = cleanvar($_POST['question'],FALSE,FALSE); - $answer = cleanvar($_POST['answer'],FALSE,FALSE); - $solution = cleanvar($_POST['solution'],FALSE,FALSE); - $workaround = cleanvar($_POST['workaround'],FALSE,FALSE); - $status = cleanvar($_POST['status'],FALSE,FALSE); - $additional = cleanvar($_POST['additional'],FALSE,FALSE); - $references = cleanvar($_POST['references'],FALSE,FALSE); - - - if ($errors == '0') - { - $sql = "INSERT INTO `{$dbKBArticles}` (doctype, title, distribution, author, published, keywords) VALUES "; - $sql .= "('1', "; - $sql .= "'{$title}', "; - $sql .= "'{$distribution}', "; - $sql .= "'{$sit[2]}', "; - $sql .= "'".date('Y-m-d H:i:s', mktime(date('H'),date('i'),date('s'),date('m'),date('d'),date('Y')))."', "; - $sql .= "'{$keywords}') "; - mysql_query($sql); - if (mysql_error()) trigger_error("MySQL Query Error ".mysql_error(), E_USER_ERROR); - $docid = mysql_insert_id(); - - // Force private if not specified - if (empty($_POST['distribution'])) $_POST['distribution']='private'; - - if (!empty($summary)) $query[]="INSERT INTO `{$dbKBContent}` (docid, ownerid, headerstyle, header, contenttype, content, distribution) VALUES ('$docid', '".mysql_real_escape_string($sit[2])."', 'h1', 'Summary', '1', '{$summary}', '{$distribution}') "; - if (!empty($symptoms)) $query[]="INSERT INTO `{$dbKBContent}` (docid, ownerid, headerstyle, header, contenttype, content, distribution) VALUES ('$docid', '".mysql_real_escape_string($sit[2])."', 'h1', 'Symptoms', '1', '{$symptoms}', '{$distribution}') "; - if (!empty($cause)) $query[]="INSERT INTO `{$dbKBContent}` (docid, ownerid, headerstyle, header, contenttype, content, distribution) VALUES ('$docid', '".mysql_real_escape_string($sit[2])."', 'h1', 'Cause', '1', '{$cause}', '{$distribution}') "; - if (!empty($question)) $query[]="INSERT INTO `{$dbKBContent}` (docid, ownerid, headerstyle, header, contenttype, content, distribution) VALUES ('$docid', '".mysql_real_escape_string($sit[2])."', 'h1', 'Question', '1', '{$question}', '{$distribution}') "; - if (!empty($answer)) $query[]="INSERT INTO `{$dbKBContent}` (docid, ownerid, headerstyle, header, contenttype, content, distribution) VALUES ('$docid', '".mysql_real_escape_string($sit[2])."', 'h1', 'Answer', '1', '{$answer}', '{$distribution}') "; - if (!empty($solution)) $query[]="INSERT INTO `{$dbKBContent}` (docid, ownerid, headerstyle, header, contenttype, content, distribution) VALUES ('$docid', '".mysql_real_escape_string($sit[2])."', 'h1', 'Solution', '1', '{$solution}', '{$distribution}') "; - if (!empty($workaround)) $query[]="INSERT INTO `{$dbKBContent}` (docid, ownerid, headerstyle, header, contenttype, content, distribution) VALUES ('$docid', '".mysql_real_escape_string($sit[2])."', 'h1', 'Workaround', '1', '{$workaround}', '{$distribution}') "; - if (!empty($status)) $query[]="INSERT INTO `{$dbKBContent}` (docid, ownerid, headerstyle, header, contenttype, content, distribution) VALUES ('$docid', '".mysql_real_escape_string($sit[2])."', 'h1', 'Status', '1', '{$status}', '{$distribution}') "; - if (!empty($additional)) $query[]="INSERT INTO `{$dbKBContent}` (docid, ownerid, headerstyle, header, contenttype, content, distribution) VALUES ('$docid', '".mysql_real_escape_string($sit[2])."', 'h1', 'Additional Information', '1', '{$additional}', '{$distribution}') "; - if (!empty($references)) $query[]="INSERT INTO `{$dbKBContent}` (docid, ownerid, headerstyle, header, contenttype, content, distribution) VALUES ('$docid', '".mysql_real_escape_string($sit[2])."', 'h1', 'References', '1', '{$references}', '{$distribution}') "; - - if (count($query) < 1) $query[] = "INSERT INTO `{$dbKBContent}` (docid, ownerid, headerstyle, header, contenttype, content, distribution) VALUES ('$docid', '".mysql_real_escape_string($sit[2])."', 'h1', 'Summary', '1', 'Enter details here...', 'restricted') "; - - foreach ($query AS $sql) - { - mysql_query($sql); - if (mysql_error()) trigger_error("MySQL Query Error ".mysql_error(), E_USER_ERROR); - } - - $id = mysql_insert_id(); - //DEPRECATED 3.40 - //journal(CFG_LOGGING_NORMAL, 'KB Article Added', "KB Article $id was added", CFG_JOURNAL_KB, $id); - trigger("TRIGGER_KB_CREATED", array('title' => $title)); - - unset($_SESSION['formerrors']['kb_add_article']); - unset($_SESSION['formdata']['kb_add_article']); - header("Location: kb_view_article.php?id=$docid"); - exit; - } - else - { - include 'htmlheader.inc.php'; - html_redirect("kb_article.php", FALSE); - } -} -*/ - -?> +?> \ No newline at end of file Deleted: trunk/htdocs/send_closing_email.php =================================================================== --- trunk/htdocs/send_closing_email.php 2008-07-23 14:58:18 UTC (rev 3869) +++ trunk/htdocs/send_closing_email.php 2008-07-23 15:11:43 UTC (rev 3870) @@ -1,81 +0,0 @@ -<?php -// send_closing_email.php - Send an email when incident is closed -// -// SiT (Support Incident Tracker) - Support call tracking system -// Copyright (C) 2000-2008 Salford Software Ltd. and Contributors -// -// This software may be used and distributed according to the terms -// of the GNU General Public License, incorporated herein by reference. -// - - -// This script is run after confirmation in close_incident.php - -@include ('set_include_path.inc.php'); -$permision = 33; // send emails -require ('db_connect.inc.php'); -require ('functions.inc.php'); - -// This page requires authentication -require ('auth.inc.php'); - -// Valid user - -$id = cleanvar($_REQUEST['id']); - -if (empty($id)) -{ - // no id specified, should not happen unless someone is playing silly buggers - include ('includes/incident_html_top.inc'); - echo "<p class='error'>No incident id specified</p>\n"; - include ('includes/incident_html_bottom.inc'); -} -else -{ - // send "Incident Closed" - // extract details from emailtype - $to_field = emailtype_replace_specials(emailtype_to(13), $id, $sit[2]); - $from_field = emailtype_replace_specials(emailtype_from(13), $id, $sit[2]); - $replyto_field = emailtype_replace_specials(emailtype_replyto(13), $id, $sit[2]); - $cc_field = emailtype_replace_specials(emailtype_cc(13), $id, $sit[2]); - $bcc_field = emailtype_replace_specials(emailtype_bcc(13), $id, $sit[2]); - $subject_field = emailtype_replace_specials(emailtype_subject(13), $id, $sit[2]); - $bodytext = emailtype_replace_specials(emailtype_body(13), $id, $sit[2]); - - - // build the extra headers string for email - $extra_headers = "From: $fromfield\nReply-To: $replytofield\nErrors-To: {$CONFIG['support_email']}\n"; - if ($ccfield != '') - - $extra_headers .= "CC: $ccfield\n"; - - if ($bccfield != '') - - $extra_headers .= "BCC: $bccfield\n"; - $extra_headers .= "X-Originating-IP: {$_SERVER['REMOTE_ADDR']}\n"; - - // send email - // $success = mail($tofield, stripslashes($subjectfield), stripslashes($bodytext), $extra_headers); - $success = mail($tofield, $subjectfield, $bodytext, $extra_headers); - - if (!$success) - { - // show error - include ('includes/incident_html_top.inc'); - echo "<p class='error'>Error sending email</p>\n"; - include ('includes/incident_html_bottom.inc'); - } - else - { - // add update - $time = time(); - $updatebody .= "To: <b>" . $tofield . "</b>\nFrom: <b>" . $fromfield . "</b>\nReply-To: <b>" . $replytofield . "</b>\nCC: <b>" . $ccfield . "</b>\nBCC: <b>" . $bccfield . "</b>\nSubject: <b>" . $subjectfield . "</b>\n\n" . $bodytext; - $sql = "INSERT INTO `{$dbUpdates}` (incidentid, userid, bodytext, type, timestamp) "; - $sql .= "VALUES ($id, $sit[2], '$updatebody', 'email', $time)"; - mysql_query($sql); - - // show success and redirect - html_redirect("incident_details.php?id={$id}"); - } -} -?> Modified: trunk/includes/functions.inc.php =================================================================== --- trunk/includes/functions.inc.php 2008-07-23 14:58:18 UTC (rev 3869) +++ trunk/includes/functions.inc.php 2008-07-23 15:11:43 UTC (rev 3870) @@ -887,130 +887,6 @@ /** - * Returns a string depending on whether the given contact has support for the given product. - * @author Ivan Lucas - * @deprecated - * @param $contactid Contact ID to check - * @param $productid Product ID to check - * @return string - * @retval 'yes' Contact has support for product - * @retval 'no' Contact doesn't have support for product - * @retval 'expired' Contact did have support for product but it has now expired - * @note Based on contactproducts and so DEPRECATED needs updating to be based on contracts - * @todo TODO update contact_productsupport() to be based on contracts - * -*/ -function contact_productsupport($contactid, $productid) -{ - global $now, $dbContactProducts; - // check support - $sql = "SELECT id, expirydate FROM `{$dbContactProducts}` WHERE contactid={$contactid} AND productid={$productid}"; - $result = mysql_query($sql); - - if (mysql_num_rows($result) == 0) - { - return ("no"); - } - else - { - $product = mysql_fetch_array($result); - if ($product['expirydate'] <= $now) - { - return ("expired"); - } - else if ($product['expirydate'] > $now) - { - return ("yes"); - } - } -} - - -/** - * Returns an integer representing the expiry day of the month for the given contact's product support. - * @author Ivan Lucas - * @deprecated - * @returns integer day of month - * @retval 0 the contact or product does not exist or if the contact does not have support for the given product. - * @note Based on contactproducts and so DEPRECATED needs updating to be based on contracts -*/ -function contact_productsupport_expiryday($contactid, $productid) -{ - global $dbContactProducts; - // check support - $sql = "SELECT id, expirydate FROM `{$dbContactProducts}` WHERE contactid={$contactid} AND productid={$productid}"; - $result = mysql_query($sql); - - if (mysql_num_rows($result) == 0) - { - return 0; - } - else - { - $productsupport = mysql_fetch_array($result); - $date_array = getdate($productsupport["expirydate"]); - return $date_array["mday"]; - } -} - - -/** - * Returns an integer representing the expiry month of the year for the given contact's product support. - * @author Ivan Lucas - * @deprecated - * @returns integer month of year - * @retval 0 the contact or product does not exist or if the contact does not have support for the given product. - * @note Based on contactproducts and so DEPRECATED needs updating to be based on contracts -*/ -function contact_productsupport_expirymonth($contactid, $productid) -{ - global $dbContactProducts; - // check support - $sql = "SELECT id, expirydate FROM `{$dbContactProducts}` WHERE contactid={$contactid} AND productid={$productid}"; - $result = mysql_query($sql); - - if (mysql_num_rows($result) == 0) - { - return (0); - } - else - { - $productsupport = mysql_fetch_array($result); - $date_array = getdate($productsupport["expirydate"]); - return ($date_array["mon"]); - } -} - - -/** - * Returns an integer representing the expiry year for the given contact's product support. - * @author Ivan Lucas - * @deprecated - * @returns integer year - * @retval 0 the contact or product does not exist or if the contact does not have support for the given product. - * @deprecated Based on contactproducts and so DEPRECATED needs updating to be based on contracts -*/ -function contact_productsupport_expiryyear($contactid, $productid) -{ - global $dbContactProducts; - // check support - $sql = "SELECT id, expirydate FROM `{$dbContactProducts}` WHERE contactid={$contactid} AND productid={$productid}"; - $result = mysql_query($sql); - - if (mysql_num_rows($result) == 0) - { - return (0); - } - else - { - $productsupport = mysql_fetch_array($result); - $date_array = getdate($productsupport["expirydate"]); - return ($date_array["year"]); - } -} - - -/** * Creates a vcard electronic business card for the given contact * @author Ivan Lucas * @param $id integer Contact ID @@ -2094,44 +1970,6 @@ /** - * prints the HTML for a drop down list of incident status names, with the given name and with the - * given id selected. Also prints an 'All' option with value 'all' for viewing all incidents. - * @author Ivan Lucas - * @deprecated DEPRECATED remove after 3.35 -*/ -function incidentstatus_drop_down_all($name, $id) -{ - global $dbIncidentStatus; - // extract statuses - $sql = "SELECT id, name FROM `{$dbIncidentStatus}` ORDER BY name ASC"; - $result = mysql_query($sql); - - echo "<select name='{$name}'>\n"; - if ($id == 0) - { - echo "<option selected='selected' value=\"all\">{$GLOBALS['strAll']}</option>\n"; - } - else - { - echo "<option value=\"all\">{$GLOBALS['strAll']}</option>\n"; - } - - while ($statuses = mysql_fetch_array($result)) - { - echo "<option"; - if ($statuses["id"] == $id) - { - echo "selected='selected'"; - } - echo " value='{$statuses["id"]}'>{$GLOBALS[$statuses['name']]}"; - echo "</option>"; - echo "\n"; -} - echo "</select>"; -} - - -/** * Return HTML for a select box of closing statuses * @author Ivan Lucas * @param $name string. Name attribute @@ -2365,38 +2203,6 @@ /** - * prints the HTML for a multiple select list of products, with the given name and with all the products - * the given customer has support for already selected - * @author Ivan Lucas - * @deprecated - * @note DEPRECATED uses contactproducts -*/ -function contactproducts_drop_down($name, $contactid) -{ - // extract products - $sql = "SELECT * FROM `{$dbProducts}` ORDER BY name ASC"; - $result = mysql_query($sql); - - // print HTML - - echo "<select multiple='mutliple' name='{$name}' size='10'>"; - while ($products = mysql_fetch_array($result)) - { - echo "<option "; - if (contact_productsupport($contactid, $products["id"]) == 1) - { - echo "selected='selected' "; - } - - echo "value='{$products['id']}'>{$products['name']}</option>"; - echo "\n"; - } - - echo "</select>"; -} - - -/** * Return HTML for a select box for accepting yes/no. The given user's accepting status is displayed. * @author Ivan Lucas * @param $name string. Name attribute @@ -3402,17 +3208,6 @@ * @deprecated Remove after 3.40 release * @note DEPRECATED and replaced by sit_error_handler() / trigger_error() **/ -function throw_fatal_error($message,$details) -{ - trigger_error("{$message}: {$details}", E_USER_ERROR); -} - - -/** - * @author Ivan Lucas - * @deprecated Remove after 3.40 release - * @note DEPRECATED and replaced by sit_error_handler() / trigger_error() -**/ function throw_error($message, $details) { trigger_error("{$message}: {$details}", E_USER_WARNING); @@ -3602,17 +3397,6 @@ } -/** -* -* @deprecated - PH -* @note DEPRECATED for 3.35, remove after 3.40 -*/ -function reseller_name($id) -{ - return db_read_column('name', $GLOBALS['dbResellers'], $id); -} - - // prints the HTML for a drop down list of // licence types, with the given name and with the given id // selected. @@ -3645,16 +3429,7 @@ echo "</select>"; } -/** -* -* @deprecated - PH -*/ -function licence_type($id) -{ - return db_read_column('name', $GLOBALS['dbLicenceTypes'], $id); -} - /** * @author Ivan Lucas */ @@ -4772,59 +4547,6 @@ } -/** -* No long used anywhere, suggest removal -* @deprecated -* @note DEPRECATED remove after 3.40 -*/ -function target_radio_buttons($incidentid) -{ - global $strNo, $strInitialResponse; - $target = incident_get_next_target($incidentid); - if (empty($target->time)) - { - echo "N/A (This incident has no unfulfilled targets)"; - } - else - { - switch ($target->type) - { - case 'initialresponse': - echo "<input type='radio' name='target' checked='checked' value='none' />{$strNo} "; - echo "<input type='radio' name='target' value='initialresponse' />{$strInitialResponse} "; - echo "<input type='radio' name='target' value='probdef' />Prob. Def. "; - echo "<input type='radio' name='target' value='actionplan' />Act. Plan "; - echo "<input type='radio' name='target' disabled='disabled' value='solution' />Reprioritise "; - break; - - case 'probdef': - echo "<input type='radio' name='target' checked='checked' value='none' />No "; - echo "<input type='radio' name='target' disabled='disabled' value='initialresponse' />{$strInitialResponse} "; - echo "<input type='radio' name='target' value='probdef' />Prob. Def. "; - echo "<input type='radio' name='target' value='actionplan' />Act. Plan "; - echo "<input type='radio' name='target' value='solution' />Reprioritise "; - break; - - case 'actionplan': - echo "<input type='radio' name='target' checked='checked' value='none' />No "; - echo "<input type='radio' name='target' disabled='disabled' value='initialresponse' />{$strInitialResponse} "; - echo "<input type='radio' name='target' disabled='disabled' value='probdef' />Prob. Def. "; - echo "<input type='radio' name='target' value='actionplan' />Act. Plan "; - echo "<input type='radio' name='target' value='solution' />Reprioritise "; - break; - - case 'solution': - echo "<input type='radio' name='target' checked='checked' value='none' />No "; - echo "<input type='radio' name='target' disabled='disabled' value='initialresponse' />{$strInitialResponse} "; - echo "<input type='radio' name='target' disabled='disabled' value='probdef' />Prob. Def. "; - echo "<input type='radio' name='target' disabled='disabled' value='actionplan' />Act. Plan "; - echo "<input type='radio' name='target' value='solution' />Reprioritise "; - break; - } - } -} - - function incident_get_next_review($incidentid) { global $now, $dbUpdates; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <iva...@us...> - 2008-07-24 14:25:41
|
Revision: 3872 http://sitracker.svn.sourceforge.net/sitracker/?rev=3872&view=rev Author: ivanlucas Date: 2008-07-24 14:25:35 +0000 (Thu, 24 Jul 2008) Log Message: ----------- Update bug tracker url Modified Paths: -------------- trunk/doc/README trunk/htdocs/setup.php Modified: trunk/doc/README =================================================================== --- trunk/doc/README 2008-07-24 11:11:37 UTC (rev 3871) +++ trunk/doc/README 2008-07-24 14:25:35 UTC (rev 3872) @@ -226,7 +226,7 @@ -------------- In the (hopefully unlikely) event that you find a bug in SiT! feel free to report it via our bug tracker -at http://sourceforge.net/tracker/?group_id=160319&atid=815372 +at http://sitracker.sourceforge.net/Bugs If you're not sure whether the problem you've found is actually a bug, please discuss it with us first. Modified: trunk/htdocs/setup.php =================================================================== --- trunk/htdocs/setup.php 2008-07-24 11:11:37 UTC (rev 3871) +++ trunk/htdocs/setup.php 2008-07-24 14:25:35 UTC (rev 3872) @@ -785,7 +785,7 @@ $installed_version = $application_version; echo "<h2>Database schema created</h2>"; echo "<p>If no errors were reported above you should continue and check the installation.</p>"; - echo "<p>If there are errors, please log a bug <a href='https://sourceforge.net/tracker/?group_id=160319&atid=815372'>here</a>"; + echo "<p>If there are errors, please log a bug <a href='http://sitracker.sourceforge.net/Bugs'>here</a>"; echo ", with the full error message.</p>"; echo "<p><a href='setup.php?action=checkinstallcomplete' class='button'>Next</a></p>"; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <iva...@us...> - 2008-07-24 17:19:34
|
Revision: 3876 http://sitracker.svn.sourceforge.net/sitracker/?rev=3876&view=rev Author: ivanlucas Date: 2008-07-24 17:19:31 +0000 (Thu, 24 Jul 2008) Log Message: ----------- Tweaks and some escalations work (WIP) Modified Paths: -------------- trunk/htdocs/add_escalation_path.php trunk/htdocs/close_incident.php trunk/htdocs/reassign_incident.php trunk/htdocs/setup-schema.php trunk/htdocs/setup.php trunk/includes/functions.inc.php trunk/includes/triggers.inc.php trunk/tools/indent.sh Modified: trunk/htdocs/add_escalation_path.php =================================================================== --- trunk/htdocs/add_escalation_path.php 2008-07-24 17:18:41 UTC (rev 3875) +++ trunk/htdocs/add_escalation_path.php 2008-07-24 17:19:31 UTC (rev 3876) @@ -35,13 +35,18 @@ echo "<form action='".$_SERVER['PHP_SELF']."' method='post' onsubmit='return confirm_action(\"{$strAreYouSureAddEscalationPath}\")'>"; echo "<table class='vertical'>"; - echo "<tr><th>{$strName}<sup class='red'>*</sup></th><td><input name='name'"; + echo "<tr><th>{$strName}</th><td><input name='name' class='required' "; if ($_SESSION['formdata']['add_escalation_path']['name'] != '') { echo "value='{$_SESSION['formdata']['add_escalation_path']['name']}'"; } - echo "/></td></tr>"; + echo "/> <span class='required'>{$strRequired}</span></td></tr>"; + echo "<tr><th>{$strType}</th><td>"; + $type = array('internal' => 'Internal','external' => 'External'); + echo array_drop_down($type, 'type', $_SESSION['formdata']['add_escalation_path']['type']); + echo "</td></tr>"; + echo "<tr><th>{$strTrackURL}<br /></th><td><input name='trackurl'"; if ($_SESSION['formdata']['add_escalation_path']['trackurl'] != '') { @@ -82,7 +87,9 @@ } else { + // External variables $name = cleanvar($_REQUEST['name']); + $type = cleanvar($_REQUEST['type']); $trackurl = cleanvar($_REQUEST['trackurl']); $homeurl = cleanvar($_REQUEST['homeurl']); $title = cleanvar($_REQUEST['title']); @@ -122,4 +129,4 @@ } } -?> +?> \ No newline at end of file Modified: trunk/htdocs/close_incident.php =================================================================== --- trunk/htdocs/close_incident.php 2008-07-24 17:18:41 UTC (rev 3875) +++ trunk/htdocs/close_incident.php 2008-07-24 17:19:31 UTC (rev 3876) @@ -573,4 +573,4 @@ include ('incident_html_bottom.inc.php'); } } -?> +?> \ No newline at end of file Modified: trunk/htdocs/reassign_incident.php =================================================================== --- trunk/htdocs/reassign_incident.php 2008-07-24 17:18:41 UTC (rev 3875) +++ trunk/htdocs/reassign_incident.php 2008-07-24 17:19:31 UTC (rev 3876) @@ -158,16 +158,22 @@ if ($incident->towner == $sit[2]) $suggested = suggest_reassign_userid($id); else $suggested = suggest_reassign_userid($id, $incident->owner); + if ($suggested === FALSE) + { + $suggested = 0; + echo "<p class='warning'>No users suggested</p>"; + } echo "<form name='assignform' action='{$_SERVER['PHP_SELF']}?id={$id}' method='post'>"; - $sql = "SELECT * FROM `{$dbUsers}` WHERE status!=0 "; + $sql = "SELECT * FROM `{$dbUsers}` WHERE status != 0 "; $sql .= "AND NOT id = {$incident->owner} "; if ($suggested > 0) $sql .= "AND NOT id = '$suggested' "; if (!$forcepermission) $sql .= "AND accepting = 'Yes' "; $sql .= "ORDER BY realname"; $result = mysql_query($sql); if (mysql_error()) trigger_error("MySQL Query Error ".mysql_error(), E_USER_WARNING); + $countusers = mysql_num_rows($result); echo "<p>{$strOwner}: <strong>"; if ($sit[2] == $incident->owner) echo "{$strYou} (".user_realname($incident->owner,TRUE).")"; @@ -251,8 +257,6 @@ echo "</tr>\n"; } - $countusers = mysql_num_rows($result); - if ($countusers >= 1) { // Other users are shown in a optional section Modified: trunk/htdocs/setup-schema.php =================================================================== --- trunk/htdocs/setup-schema.php 2008-07-24 17:18:41 UTC (rev 3875) +++ trunk/htdocs/setup-schema.php 2008-07-24 17:19:31 UTC (rev 3876) @@ -2363,15 +2363,18 @@ UPDATE `{$dbClosingStatus}` SET `name` = 'strUnsolved' WHERE `id` = 9; UPDATE `{$dbClosingStatus}` SET `name` = 'strEscalated' WHERE `id` = 10; --- PH 2008-07-12 +-- PH 2008-07-12 ALTER TABLE `{$dbScheduler}` ADD `type` ENUM( 'interval', 'date' ) NOT NULL DEFAULT 'interval' AFTER `end` ; ALTER TABLE `{$dbScheduler}` ADD `date_type` ENUM( 'month', 'year' ) NOT NULL COMMENT 'For type date the type' AFTER `interval` , ADD `date_offset` INT NOT NULL COMMENT 'off set into the period' AFTER `date_type` , ADD `date_time` TIME NOT NULL COMMENT 'Time to perform action' AFTER `date_offset` ; +-- INL 2008-07-21 +ALTER TABLE `{$dbEscalationPaths}` ADD `type` ENUM( 'internal', 'external' ) NOT NULL DEFAULT 'internal' AFTER `name` ; + "; // Important: When making changes to the schema you must add SQL to make the alterations // to existing databases in $upgrade_schema[] *AND* you must also change $schema[] for // new installations (above the line of stars). -?> +?> \ No newline at end of file Modified: trunk/htdocs/setup.php =================================================================== --- trunk/htdocs/setup.php 2008-07-24 17:18:41 UTC (rev 3875) +++ trunk/htdocs/setup.php 2008-07-24 17:19:31 UTC (rev 3876) @@ -938,7 +938,7 @@ if (!empty($upgrade_schema[$v])) { $newversion = number_format(($v/100),2); - echo "<p>Updating schema to v{$newversion}…</p>"; + echo "<p>Updating schema from {$installed_version} to v{$newversion}…</p>"; //echo $upgrade_schema[$v]; $errors = setup_exec_sql($upgrade_schema[$v]); // Update the system version @@ -958,7 +958,7 @@ } else { - $html .= "<p class='error'>{$errors} Errors occurred while updating the schema, "; + $html .= "<p class='error'>{$errors} Error(s) occurred while updating the schema, "; $html .= "please resolve the problems reported and then try running setup again.</p>"; } echo $html; Modified: trunk/includes/functions.inc.php =================================================================== --- trunk/includes/functions.inc.php 2008-07-24 17:18:41 UTC (rev 3875) +++ trunk/includes/functions.inc.php 2008-07-24 17:19:31 UTC (rev 3876) @@ -9413,7 +9413,7 @@ } else { - trigger_error("Invalid userid specified"); + trigger_error("setup_user_triggers() Invalid userid specified", E_USER_NOTICE); $return = FALSE; } Modified: trunk/includes/triggers.inc.php =================================================================== --- trunk/includes/triggers.inc.php 2008-07-24 17:18:41 UTC (rev 3875) +++ trunk/includes/triggers.inc.php 2008-07-24 17:19:31 UTC (rev 3876) @@ -372,7 +372,7 @@ } // $triggerarray[$triggerid]['type']) - //if we have an incidentid, get it to pass to emailtype_replace_specials() + //if we have an incidentid, get it to pass to trigger_replace_specials() if (!empty($paramarray['incidentid'])) { $incidentid = $paramarray['incidentid']; Modified: trunk/tools/indent.sh =================================================================== --- trunk/tools/indent.sh 2008-07-24 17:18:41 UTC (rev 3875) +++ trunk/tools/indent.sh 2008-07-24 17:19:31 UTC (rev 3876) @@ -3,8 +3,6 @@ echo "usage: ./indent.sh file.php"; exit fi -indent -bap -bbo -nbc -bl -bli0 -c33 -cd33 -ncdb -ci4 -cli0 -cp33 -cs -d0 -di1 --nfc1 -nfca -hnl -i4 -ip0 -l75 -lp -npcs -nprs -npsl -saf -sai -saw -nsc -nsob --nss -nut $1 +indent -bap -bbo -nbc -bl -bli0 -c33 -cd33 -ncdb -ci4 -cli0 -cp33 -cs -d0 -di1 -nfc1 -nfca -hnl -i4 -ip0 -l75 -lp -npcs -nprs -npsl -saf -sai -saw -nsc -nsob-nss -nut $1 sed 's/< ? php/<?php/' $1 sed 's/? >/?>/' $1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <iva...@us...> - 2008-07-25 09:13:47
|
Revision: 3877 http://sitracker.svn.sourceforge.net/sitracker/?rev=3877&view=rev Author: ivanlucas Date: 2008-07-25 09:13:45 +0000 (Fri, 25 Jul 2008) Log Message: ----------- Use != instead of NOT. Fixes Mantis 95: Reassign 'more' link missing Modified Paths: -------------- trunk/htdocs/reassign_incident.php trunk/includes/functions.inc.php Modified: trunk/htdocs/reassign_incident.php =================================================================== --- trunk/htdocs/reassign_incident.php 2008-07-24 17:19:31 UTC (rev 3876) +++ trunk/htdocs/reassign_incident.php 2008-07-25 09:13:45 UTC (rev 3877) @@ -161,14 +161,14 @@ if ($suggested === FALSE) { $suggested = 0; - echo "<p class='warning'>No users suggested</p>"; + $dbg .= "<p>No users suggested</p>"; } echo "<form name='assignform' action='{$_SERVER['PHP_SELF']}?id={$id}' method='post'>"; $sql = "SELECT * FROM `{$dbUsers}` WHERE status != 0 "; - $sql .= "AND NOT id = {$incident->owner} "; - if ($suggested > 0) $sql .= "AND NOT id = '$suggested' "; + $sql .= "AND id != {$incident->owner} "; + if ($suggested > 0) $sql .= "AND id != '$suggested' "; if (!$forcepermission) $sql .= "AND accepting = 'Yes' "; $sql .= "ORDER BY realname"; $result = mysql_query($sql); Modified: trunk/includes/functions.inc.php =================================================================== --- trunk/includes/functions.inc.php 2008-07-24 17:19:31 UTC (rev 3876) +++ trunk/includes/functions.inc.php 2008-07-25 09:13:45 UTC (rev 3877) @@ -5487,13 +5487,13 @@ { $sql = "SELECT us.userid, u.status, u.lastseen FROM `{$dbUserSoftware}` AS us, `{$dbUsers}` AS u "; $sql .= "WHERE u.id = us.userid AND u.status > 0 AND u.accepting='Yes' "; - if ($exceptuserid > 0) $sql .= "AND NOT u.id = '$exceptuserid' "; + if ($exceptuserid > 0) $sql .= "AND u.id != '$exceptuserid' "; $sql .= "AND softwareid = {$incident->softwareid}"; } else { $sql = "SELECT id AS userid, status, lastseen FROM `{$dbUsers}` WHERE status > 0 AND users.accepting='Yes' "; - if ($exceptuserid > 0) $sql .= "AND NOT id = '$exceptuserid' "; + if ($exceptuserid > 0) $sql .= "AND id != '$exceptuserid' "; } $result = mysql_query($sql); if (mysql_error()) trigger_error(mysql_error(),E_USER_WARNING); @@ -5502,7 +5502,7 @@ if (mysql_num_rows($result) < 1) { $sql = "SELECT id AS userid, status, lastseen FROM `{$dbUsers}` WHERE status > 0 "; - if ($exceptuserid > 0) $sql .= "AND NOT id = '$exceptuserid' "; + if ($exceptuserid > 0) $sql .= "AND id != '$exceptuserid' "; $result = mysql_query($sql); if (mysql_error()) trigger_error(mysql_error(),E_USER_WARNING); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <iva...@us...> - 2008-07-25 15:24:07
|
Revision: 3879 http://sitracker.svn.sourceforge.net/sitracker/?rev=3879&view=rev Author: ivanlucas Date: 2008-07-25 15:24:04 +0000 (Fri, 25 Jul 2008) Log Message: ----------- Only show warning message for missing icons when in debug mode, with debug mode off just show a generic icon with a warning message in the ALT text Modified Paths: -------------- trunk/htdocs/images/icons/sit/LICENSE trunk/includes/functions.inc.php Added Paths: ----------- trunk/htdocs/images/icons/sit/16x16/blank.png Property changes on: trunk/htdocs/images/icons/sit/16x16/blank.png ___________________________________________________________________ Added: svn:mime-type + application/octet-stream Modified: trunk/htdocs/images/icons/sit/LICENSE =================================================================== --- trunk/htdocs/images/icons/sit/LICENSE 2008-07-25 15:12:28 UTC (rev 3878) +++ trunk/htdocs/images/icons/sit/LICENSE 2008-07-25 15:24:04 UTC (rev 3879) @@ -79,6 +79,7 @@ 16x16/statistics.png Crystal Project 16x16/attach.png Crystal Project 16x16/language.png Crystal Project +16x16/blank.png Crystal Project (Modified) 32x32/mimetypes/* Crystal Project 32x32/blackflag.png SiT 32x32/whiteflag.png SiT Modified: trunk/includes/functions.inc.php =================================================================== --- trunk/includes/functions.inc.php 2008-07-25 15:12:28 UTC (rev 3878) +++ trunk/includes/functions.inc.php 2008-07-25 15:24:04 UTC (rev 3879) @@ -37,8 +37,8 @@ (strlen($_SERVER['PHP_SELF']) - @strlen($_SERVER['PATH_INFO']))); // Report all PHP errors -//error_reporting(E_ALL); -//$oldeh = set_error_handler("sit_error_handler"); +error_reporting(E_ALL); +$oldeh = set_error_handler("sit_error_handler"); if (version_compare(PHP_VERSION, "5.1.0", ">=")) { @@ -8643,37 +8643,36 @@ if (!file_exists($file)) { - // TODO 3.35 Return a default (blank?) icon here instead of an error message - trigger_error("No such image: '$filename.png', ($file) size {$size}", E_USER_WARNING); + $alt = "Missing icon: '$filename.png', ($file) size {$size}"; + if ($CONFIG['debug']) trigger_error($alt, E_USER_WARNING); + $urlpath = "{$CONFIG['application_webpath']}images/icons/sit"; + $urlpath .= "/16x16/blank.png"; } + $icon = "<img src=\"{$urlpath}\""; + if (!empty($alt)) + { + $icon .= " alt=\"{$alt}\" "; + } else { - $icon = "<img src=\"{$urlpath}\""; - if (!empty($alt)) - { - $icon .= " alt=\"{$alt}\" "; - } - else - { - $alt = $filename; - $icon .= " alt=\"{$alt}\" "; - } - if (!empty($title)) - { - $icon .= " title=\"{$title}\""; - } - else - { - $icon .= " title=\"{$alt}\""; - } + $alt = $filename; + $icon .= " alt=\"{$alt}\" "; + } + if (!empty($title)) + { + $icon .= " title=\"{$title}\""; + } + else + { + $icon .= " title=\"{$alt}\""; + } - if (!empty($id)) - { - $icon .= " id=\"{$id}\""; - } - - $icon .= " />"; + if (!empty($id)) + { + $icon .= " id=\"{$id}\""; } + $icon .= " />"; + return $icon; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <iva...@us...> - 2008-07-25 16:05:00
|
Revision: 3881 http://sitracker.svn.sourceforge.net/sitracker/?rev=3881&view=rev Author: ivanlucas Date: 2008-07-25 16:02:11 +0000 (Fri, 25 Jul 2008) Log Message: ----------- Fix schema upgrade issues 3.30 -> 3.40 Modified Paths: -------------- trunk/htdocs/setup-schema.php trunk/htdocs/setup.php trunk/includes/functions.inc.php Modified: trunk/htdocs/setup-schema.php =================================================================== --- trunk/htdocs/setup-schema.php 2008-07-25 15:42:03 UTC (rev 3880) +++ trunk/htdocs/setup-schema.php 2008-07-25 16:02:11 UTC (rev 3881) @@ -1857,6 +1857,25 @@ "; $upgrade_schema[335] = " +-- INL 25Jul08 fix upgrade issues for 3.40 +CREATE TABLE IF NOT EXISTS `{$dbLinkTypes}` ( + `id` int(11) NOT NULL auto_increment, + `name` varchar(255) NOT NULL default '', + `lrname` varchar(255) NOT NULL default '', + `rlname` varchar(255) NOT NULL default '', + `origtab` varchar(255) NOT NULL default '', + `origcol` varchar(255) NOT NULL default '', + `linktab` varchar(255) NOT NULL default '', + `linkcol` varchar(255) NOT NULL default 'id', + `selectionsql` varchar(255) NOT NULL default '', + `filtersql` varchar(255) NOT NULL default '', + `viewurl` varchar(255) NOT NULL default '', + PRIMARY KEY (`id`), + KEY `origtab` (`origtab`), + KEY `linktab` (`linktab`) + ) ENGINE=MyISAM; + + DROP TABLE IF EXISTS `{$CONFIG['db_tableprefix']}contactflags`; DROP TABLE IF EXISTS `{$CONFIG['db_tableprefix']}contactproducts`; @@ -2195,11 +2214,6 @@ INSERT INTO `{$dbTriggers}` (`triggerid`, `userid`, `action`, `template`, `parameters`, `checks`) VALUES('TRIGGER_INCIDENT_CLOSED', 0, 'ACTION_EMAIL', 'EMAIL_EXTERNAL_INCIDENT_CLOSURE', '', '{notifyexternal} == 1'); -- INL 22May08 -INSERT INTO `{$dbRolePermissions}` (`roleid`, `permissionid`, `granted`) VALUES (1, 72, 'true'); -INSERT INTO `{$dbRolePermissions}` (`roleid`, `permissionid`, `granted`) VALUES (1, 73, 'true'); -INSERT INTO `{$dbRolePermissions}` (`roleid`, `permissionid`, `granted`) VALUES (1, 74, 'true'); -INSERT INTO `{$dbRolePermissions}` (`roleid`, `permissionid`, `granted`) VALUES (1, 75, 'true'); -INSERT INTO `{$dbRolePermissions}` (`roleid`, `permissionid`, `granted`) VALUES (1, 76, 'true'); INSERT INTO `{$dbRolePermissions}` (`roleid`, `permissionid`, `granted`) VALUES (1, 77, 'true'); INSERT INTO `{$dbRolePermissions}` (`roleid`, `permissionid`, `granted`) VALUES (2, 73, 'true'); INSERT INTO `{$dbRolePermissions}` (`roleid`, `permissionid`, `granted`) VALUES (2, 76, 'true'); @@ -2213,7 +2227,7 @@ ALTER TABLE `{$dbFiles}` CHANGE `expiry` `expiry` DATETIME NULL; ALTER TABLE `{$dbFiles}` CHANGE `fileversion` `fileversion` varchar(50) NULL default ''; -INSERT INTO `{$dbInterfaceStyles}` (`id` ,`name` ,`cssurl` ,`iconset` ,`headerhtml`) VALUES ('16', 'Cake', 'sit_cake.css', 'sit', ''); +REPLACE INTO `{$dbInterfaceStyles}` (`id` ,`name` ,`cssurl` ,`iconset` ,`headerhtml`) VALUES ('16', 'Cake', 'sit_cake.css', 'sit', ''); INSERT INTO `{$dbPermissions}` VALUES (78, 'Post System Notices'); UPDATE `{$dbPermissions}` SET `name` = 'Add Templates' WHERE `id` =16; Modified: trunk/htdocs/setup.php =================================================================== --- trunk/htdocs/setup.php 2008-07-25 15:42:03 UTC (rev 3880) +++ trunk/htdocs/setup.php 2008-07-25 16:02:11 UTC (rev 3881) @@ -931,15 +931,13 @@ } // Upgrade schema - // for ($v=(($installed_version*100)+1); $v<=($application_version*100); $v++) - for ($v=(($installed_version*100)); $v<=($application_version*100); $v++) + for ($v=(($installed_version*100)); $v<($application_version*100); $v++) { $html = ''; if (!empty($upgrade_schema[$v])) { $newversion = number_format(($v/100),2); echo "<p>Updating schema from {$installed_version} to v{$newversion}…</p>"; - //echo $upgrade_schema[$v]; $errors = setup_exec_sql($upgrade_schema[$v]); // Update the system version if ($errors < 1) @@ -952,8 +950,9 @@ } else { - $html .= "<p>Schema successfully updated to version {$newversion}</p>"; + $html .= "<p>Schema successfully updated to version {$newversion}.</p>"; } + $installed_version = $newversion; $upgradeok = TRUE; } else Modified: trunk/includes/functions.inc.php =================================================================== --- trunk/includes/functions.inc.php 2008-07-25 15:42:03 UTC (rev 3880) +++ trunk/includes/functions.inc.php 2008-07-25 16:02:11 UTC (rev 3881) @@ -9412,7 +9412,7 @@ } else { - trigger_error("setup_user_triggers() Invalid userid specified", E_USER_NOTICE); + trigger_error("setup_user_triggers() Invalid userid '{$userid}' specified", E_USER_NOTICE); $return = FALSE; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <pau...@us...> - 2008-07-30 17:54:00
|
Revision: 3884 http://sitracker.svn.sourceforge.net/sitracker/?rev=3884&view=rev Author: paulheaney Date: 2008-07-30 17:53:53 +0000 (Wed, 30 Jul 2008) Log Message: ----------- * Monthly and yearly schedule improvements (Mantis 89 and 81) Modified Paths: -------------- trunk/htdocs/auto.php trunk/htdocs/scheduler.php trunk/includes/functions.inc.php trunk/includes/i18n/en-GB.inc.php Modified: trunk/htdocs/auto.php =================================================================== --- trunk/htdocs/auto.php 2008-07-25 16:24:09 UTC (rev 3883) +++ trunk/htdocs/auto.php 2008-07-30 17:53:53 UTC (rev 3884) @@ -50,8 +50,8 @@ if ($verbose) echo "Found ".mysql_num_rows($result)." Incidents to close{$crlf}"; while ($irow = mysql_fetch_array($result)) { - $sqlb="UPDATE `{$dbIncidents}` SET lastupdated='$now', closed='$now', status='2', closingstatus='4', timeofnextaction='0' WHERE id='".$irow['id']."'"; - $resultb=mysql_query($sqlb); + $sqlb = "UPDATE `{$dbIncidents}` SET lastupdated='$now', closed='$now', status='2', closingstatus='4', timeofnextaction='0' WHERE id='".$irow['id']."'"; + $resultb = mysql_query($sqlb); if (mysql_error()) { trigger_error("MySQL Query Error ".mysql_error(), E_USER_WARNING); @@ -59,8 +59,8 @@ } if ($verbose) echo " Incident ".$row['id']." closed{$crlf}"; - $sqlc="INSERT INTO `{$dbUpdates}` (incidentid, userid, type, currentowner, currentstatus, bodytext, timestamp, nextaction, customervisibility) "; - $sqlc.="VALUES ('".$irow['id']."', '0', 'closing', '".$irow['owner']."', '".$irow['status']."', 'Incident Closed by {$CONFIG['application_shortname']}', '$now', '', 'show' ) "; + $sqlc = "INSERT INTO `{$dbUpdates}` (incidentid, userid, type, currentowner, currentstatus, bodytext, timestamp, nextaction, customervisibility) "; + $sqlc .= "VALUES ('".$irow['id']."', '0', 'closing', '".$irow['owner']."', '".$irow['status']."', 'Incident Closed by {$CONFIG['application_shortname']}', '$now', '', 'show' ) "; $resultc = mysql_query($sqlc); if (mysql_error()) { @@ -343,8 +343,12 @@ if ($accepting != '') $usql .= ", accepting='{$accepting}'"; $usql .= " WHERE id='{$huser->userid}' LIMIT 1"; if ($accepting == 'No') incident_backup_switchover($huser->userid, 'no'); - if ($verbose) echo user_realname($huser->userid).': '.userstatus_name($currentstatus).' -> '.userstatus_name($newstatus).$crlf; - if ($verbose) echo $usql.$crlf; + if ($verbose) + { + echo user_realname($huser->userid).': '.userstatus_name($currentstatus).' -> '.userstatus_name($newstatus).$crlf; + echo $usql.$crlf; + } + mysql_query($usql); if (mysql_error()) { @@ -620,8 +624,8 @@ $startdate = "{$currentyear}-{$lastmonth}-01"; // Find last date of previous month, 5 day an arbitary choice - $lastday = date('t', strtotime('{$currentyear}-{$lastmonth}-05')); - $enddate = "{$currentyear}-{$lastmonth}-{$lastday}"; + $lastday = date('t', strtotime('{$currentyear}-{$lastmonth}-05')); + $enddate = "{$currentyear}-{$lastmonth}-{$lastday}"; $csv = transactions_report('', $startdate, $enddate, '', 'csv', TRUE); @@ -634,15 +638,15 @@ $extra_headers .= "\n"; // add an extra crlf to create a null line to separate headers from body // this appears to be required by some email clients - INL - $subject = "Billable incidents for period {$startdate} to {$enddate}"; + $subject = sprintf($strBillableIncidentsForPeriodXtoX, $startdate, $enddate); - $bodytext = "Attached is the billable incidents for the above period"; + $bodytext = $strAttachedIsBillableIncidentsForAbovePeriod; $mime = new MIME_mail($CONFIG['support_email'], $CONFIG['billing_reports_email'], html_entity_decode($subject), $bodytext, $extra_headers, ''); $mime->attach($csv, "Billable report", OCTET, BASE64, "filename=billable_incidents_{$lastmonth}_{$currentyear}.csv"); return $mime->send_mail(); +} -} // ======================================================================================= $actions = schedule_actions_due(); if ($actions !== FALSE) Modified: trunk/htdocs/scheduler.php =================================================================== --- trunk/htdocs/scheduler.php 2008-07-25 16:24:09 UTC (rev 3883) +++ trunk/htdocs/scheduler.php 2008-07-30 17:53:53 UTC (rev 3884) @@ -7,7 +7,8 @@ // This software may be used and distributed according to the terms // of the GNU General Public License, incorporated herein by reference. // -// Author: Ivan Lucas <ivanlucas[at]users.sourceforge.net> +// Authors: Ivan Lucas <ivanlucas[at]users.sourceforge.net> +// Paul Heaney <paulheaney[at]users.sourceforge.net> @include ('set_include_path.inc.php'); $permission = 22; // Admin @@ -43,7 +44,7 @@ echo "</td></tr>\n"; if (!empty($saction->paramslabel)) { - echo "<tr><th><label for='params'>{$strParameters}</label>".help_link('SchedulerStatus')."</th>"; + echo "<tr><th><label for='params'>{$strParameters}</label>".help_link('SchedulerStatus')."</th>"; // FIXME incorrect help echo "<td>{$saction->paramslabel}: <input type='text' id='params' name='params' value='{$saction->params}' size='15' maxlength='255' />"; echo "</tr>"; } @@ -77,9 +78,71 @@ echo date_picker('scheduleform.enddate'); echo " <input type='text' id='endtime' name='endtime' value='{$endtime}' size='5' /> "; echo "</td></tr>\n"; + + echo "<tr>"; + echo "<th>{$strType}</th><td>"; + echo "<input type='radio' name='type' value='interval' id='interval' onclick=\"$('intervalsection').show(); $('datesection').hide();\" checked='checked' />{$strInterval} "; + echo "<input type='radio' name='type' value='date' id='date' onclick=\"$('intervalsection').hide(); $('datesection').show();\" />{$strDate} "; + echo "</td></tr>"; + + echo "<tbody id='intervalsection'>"; echo "<tr><th><label for='interval'>{$strInterval}</label></th>"; echo "<td><input type='text' id='interval' name='interval' value='{$saction->interval}' size='5' /> ({$strSeconds})"; echo "</td></tr>\n"; + echo "</tbody>"; + + echo "<tbody id='datesection' style='display:none'>"; + // date_type - month, year + // date_offset + // date_time + echo "<tr><th>{$strFrequency}</th><td>"; + + if (empty($saction->date_type) OR empty($saction->date_type) == 'month') + { + $month = " checked='yes'"; // TODO figure this out + } + else + { + $year = " checked='yes'"; // TODO figure this out + } + + echo "<select name='frequency'><option value='month' {$month}>{$strMonthly}</option>"; + echo "<option value='year' {$year}>{$strYearly}</option></select>"; + echo "</td></tr>"; + echo "<tr><th>{$strOffset}</th><td><input type='text' id='date_offset' name='date_offset' value='{$saction->date_offset}' size='5' /> ({$strDays})</td></tr>"; + echo "<tr><th>{$strTime}</th><td>"; + //<input type='text' id='date_time' name='date_time' value='{$saction->date_time}' size='5' /> + // TODO select based on DB + echo "<select name='date_time' id='date_time'>"; + echo "<option value='0'>{$strMidnight}</option>"; + echo "<option value='1'>1:00 AM</option>"; + echo "<option value='2'>2:00 AM</option>"; + echo "<option value='3'>3:00 AM</option>"; + echo "<option value='4'>4:00 AM</option>"; + echo "<option value='5'>5:00 AM</option>"; + echo "<option value='6'>6:00 AM</option>"; + echo "<option value='7'>7:00 AM</option>"; + echo "<option value='8'>8:00 AM</option>"; + echo "<option value='9'>9:00 AM</option>"; + echo "<option value='10'>10:00 AM</option>"; + echo "<option value='11'>11:00 AM</option>"; + echo "<option value='12'>12:00 PM</option>"; + echo "<option value='13'>1:00 PM</option>"; + echo "<option value='14'>2:00 PM</option>"; + echo "<option value='15'>3:00 PM</option>"; + echo "<option value='16'>4:00 PM</option>"; + echo "<option value='17'>5:00 PM</option>"; + echo "<option value='18'>6:00 PM</option>"; + echo "<option value='19'>7:00 PM</option>"; + echo "<option value='20'>8:00 PM</option>"; + echo "<option value='21'>9:00 PM</option>"; + echo "<option value='22'>10:00 PM</option>"; + echo "<option value='23'>11:00 PM</option>"; + echo "</select>"; + + echo "</td></tr>"; + echo "</tbody>"; + echo "</table>"; echo "<input type='hidden' name='mode' value='save' />"; echo "<input type='hidden' name='id' value='{$id}' />"; @@ -95,13 +158,28 @@ break; case 'save': - $start = strtotime($_REQUEST['startdate'].' '.$_REQUEST['starttime']); - if ($start > 0) $start = date('Y-m-d H:i', $start); - else $tart = $now; - $end = strtotime($_REQUEST['enddate'].' '.$_REQUEST['endtime']); - if ($end > 0) $end = date('Y-m-d H:i', $end); - else $end = '0000-00-00 00:00'; - + + if (!empty($_REQUEST['startdate'])) + { + echo "moo"; + $start = strtotime($_REQUEST['startdate'].' '.$_REQUEST['starttime']); + $start = date('Y-m-d H:i', $start); + } + else + { + $start = date('Y-m-d H:i', $now); + } + + if (!empty($_REQUEST['enddate'])) + { + $end = strtotime($_REQUEST['enddate'].' '.$_REQUEST['endtime']); + $end = date('Y-m-d H:i', $end); + } + else + { + $end = '0000-00-00 00:00'; + } + $status = cleanvar($_REQUEST['status']); $params = cleanvar($_REQUEST['params']); $interval = cleanvar($_REQUEST['interval']); @@ -110,24 +188,46 @@ $status = 'disabled'; $interval = 0; } + $type = cleanvar($_REQUEST['type']); + $frequency = cleanvar($_REQUEST['frequency']); + $date_offset = cleanvar($_REQUEST['date_offset']); + $date_time = cleanvar($_REQUEST['date_time']); + + if ($date_time < 10) $date_time = "0{$date_time}:00:00"; + else "{$date_time}:00:00"; + + if ($type == 'interval') + { + $setsql = " `interval` = '{$interval}', `type` = 'interval' "; + } + elseif ($type == 'date') + { + $setsql = " `date_type` = '{$frequency}', `date_offset` = '{$date_offset}', "; + $setsql .= "`date_time` = '{$date_time}', `type` = 'date' "; + } - $sql = "UPDATE `{$dbScheduler}` SET `status`='{$status}', `start`='{$start}', `end`='{$end}', `interval`='{$interval}'"; + $sql = "UPDATE `{$dbScheduler}` SET `status`='{$status}', `start`='{$start}', `end`='{$end}', {$setsql} "; if ($status = 'enabled') { $sql .= " , `success` = '1'"; } + if (!empty($params)) { $sql .= " , `params` = '{$params}'"; } $sql .= " WHERE `id` = $id LIMIT 1"; + mysql_query($sql); if (mysql_error()) { trigger_error("MySQL Query Error ".mysql_error(), E_USER_WARNING); html_redirect($_SERVER['PHP_SELF'], FALSE); } - else html_redirect($_SERVER['PHP_SELF'], TRUE); + else + { + html_redirect($_SERVER['PHP_SELF'], TRUE); + } break; case 'list': @@ -173,7 +273,36 @@ echo "</span></a></td>"; echo "<td>{$schedule->start}</td>"; - echo "<td>".format_seconds($schedule->interval)."</td>"; + if ($schedule->type == 'interval') + { + echo "<td>{$strEvery} ".format_seconds($schedule->interval)."</td>"; + } + elseif ($schedule->type == 'date') + { + echo "<td>"; + switch ($schedule->date_offset) + { + case 1: echo $str1st; + break; + case 2: echo $str2nd; + break; + case 3: echo $str3rd; + break; + default: + echo sprintf($strXth, $schedule->date_offset); + break; + } + + if ($schedule->date_type == 'month') + { + echo " of month"; + } + elseif ($schedule->date_type == 'year') + { + echo " of year"; + } + echo "</td>"; + } echo "<td>"; if (mysql2date($schedule->end) > 0) echo "{$schedule->end}"; else echo "-"; @@ -183,7 +312,7 @@ if ($lastruntime > 0) { echo ldate($CONFIG['dateformat_datetime'], $lastruntime); - } + } else echo $strNever; echo "</td>"; Modified: trunk/includes/functions.inc.php =================================================================== --- trunk/includes/functions.inc.php 2008-07-25 16:24:09 UTC (rev 3883) +++ trunk/includes/functions.inc.php 2008-07-30 17:53:53 UTC (rev 3884) @@ -7423,7 +7423,7 @@ $sql = "SELECT * FROM `{$dbScheduler}` WHERE status = 'enabled' AND type = 'date' "; $sql .= "AND UNIX_TIMESTAMP(start) <= $now AND (UNIX_TIMESTAMP(end) >= $now OR UNIX_TIMESTAMP(end) = 0) "; $sql .= "AND ((date_type = 'month' AND (DAYOFMONTH(CURDATE()) > date_offset OR (DAYOFMONTH(CURDATE()) = date_offset AND CURTIME() >= date_time)) "; - $sql .= "AND CURDATE() != DATE_FORMAT(lastran, '%Y-%m') ) )"; // not run this month + $sql .= "AND DATE_FORMAT(CURDATE(), '%Y-%m') != DATE_FORMAT(lastran, '%Y-%m') ) )"; // not run this month //$sql .= "OR "; //$sql .= "(date_type = 'year'))"; @@ -7437,6 +7437,26 @@ } } + + // Year TODO CHECK + $sql = "SELECT * FROM `{$dbScheduler}` WHERE status = 'enabled' AND type = 'date' "; + $sql .= "AND UNIX_TIMESTAMP(start) <= $now AND (UNIX_TIMESTAMP(end) >= $now OR UNIX_TIMESTAMP(end) = 0) "; + $sql .= "AND ((date_type = 'year' AND (DAYOFYEAR(CURDATE()) > date_offset OR (DAYOFYEAR(CURDATE()) = date_offset AND CURTIME() >= date_time)) "; + $sql .= "AND DATE_FORMAT(CURDATE(), '%Y') != DATE_FORMAT(lastran, '%Y') ) )"; // not run this year + //$sql .= "OR "; + //$sql .= "(date_type = 'year'))"; + + $result = mysql_query($sql); + if (mysql_error()) trigger_error(mysql_error(),E_USER_WARNING); + if (mysql_num_rows($result) > 0) + { + while ($action = mysql_fetch_object($result)) + { + $actions[$action->action] = $actions->params; + } + } + + return $actions; } Modified: trunk/includes/i18n/en-GB.inc.php =================================================================== --- trunk/includes/i18n/en-GB.inc.php 2008-07-25 16:24:09 UTC (rev 3883) +++ trunk/includes/i18n/en-GB.inc.php 2008-07-30 17:53:53 UTC (rev 3884) @@ -12,6 +12,12 @@ $str1Month = '1 Month'; $str1Hour = '1 Hour'; $str1IncidentsLoggedViaPortal = '1 Incident Logged via the Portal'; +# e.g 1st day of month +$str1st = '1st'; +# e.g 2nd day of month +$str2nd = '2nd'; +# e.g 3rd day of month +$str3rd = '3rd'; # e.g. About this site, i.e. more information $strAbout = 'About'; @@ -158,6 +164,7 @@ $strAtLunch = 'At Lunch'; $strAttachFile = 'Attach File'; $strAttachment = 'Attachment'; +$strAttachedIsBillableIncidentsForAbovePeriod ='Attached is the billable incidents for the above period'; # Short for August $strAugAbbr = 'Aug'; $strAugust = 'August'; @@ -180,6 +187,7 @@ $strBCC = 'BCC'; $strBill = 'Bill'; $strBillableIncidents = 'Billable Incidents'; +$strBillableIncidentsForPeriodXtoX = 'Billable incidents for period %s to %s'; $strBillableIncidentsReport = 'Billable Incidents Report'; $strBilling = 'Billing'; $strBillingCustomerPeriod = 'Customer Period'; @@ -447,6 +455,7 @@ $strEscalation = 'Escalation'; $strEscalationPaths = 'Escalation Paths'; $strEvent = 'Event'; +$strEvery = 'Every'; $strExact = 'Exact'; $strExclude = 'Exclude'; $strExpired = 'Expired'; @@ -511,6 +520,7 @@ $strForRefundsThisShouldBeNegative = 'For refunds this should be negative'; $strForwardOneYear = 'Forward One Year'; $strForXDaysHoursMinutes = 'For <em>x</em> days, hours, minutes'; +$strFrequency = 'Frequency'; # Short for 'Friday' $strFri = 'Fri'; $strFriday = 'Friday'; @@ -734,6 +744,7 @@ $strMedium = 'Medium'; $strMediumPriority = 'Medium Priority'; $strMessage = 'Message'; +$strMidnight = 'Midnight'; $strMine = 'Mine'; $strMinutes = 'minutes'; $strMinVersion = 'Minimum Version'; @@ -744,6 +755,7 @@ $strMon = 'Mon'; $strMonday = 'Monday'; $strMonth = 'Month'; +$strMonthly = 'Monthly'; $strMonthView = 'Month View'; $strMore = 'More...'; $strMoreContactsThanContractSupports = 'There are more contacts linked than this contract should support'; @@ -908,6 +920,7 @@ # Short for October $strOctAbbr = 'Oct'; $strOctober = 'October'; +$strOffset = 'Offset'; $strOK = 'OK'; $strOldPassword = 'Old Password'; $strOnHoliday = 'On Holiday'; @@ -1430,6 +1443,8 @@ $strXSeconds = '%s Seconds'; # e.g. John's Tasks $strXsTasks = '%s\'s Tasks'; +# e.g. 10th day of month +$strXth = '%sth'; # e.g. 42 units @ 2x $strXUnitsAtX = '%d units @ %dx'; $strXWorkingDay = '%s working day'; @@ -1437,6 +1452,7 @@ $strXYears = '%s Years'; $strYear = 'Year'; +$strYearly = 'Yearly'; $strYearView = 'Year View'; $strYes = 'Yes'; $strYesterday = 'Yesterday'; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <pau...@us...> - 2008-08-02 17:43:25
|
Revision: 3887 http://sitracker.svn.sourceforge.net/sitracker/?rev=3887&view=rev Author: paulheaney Date: 2008-08-02 17:43:21 +0000 (Sat, 02 Aug 2008) Log Message: ----------- * Convert $CONFIG['currency_symbol'] to the symbol using html_entity_decode (Resolves Mantis #140) * Summary report CSV now double quote'd in CSV Modified Paths: -------------- trunk/htdocs/billing/summary.php trunk/includes/functions.inc.php Modified: trunk/htdocs/billing/summary.php =================================================================== --- trunk/htdocs/billing/summary.php 2008-08-02 13:05:52 UTC (rev 3886) +++ trunk/htdocs/billing/summary.php 2008-08-02 17:43:21 UTC (rev 3887) @@ -29,6 +29,8 @@ $sitestr = ''; +$csv_currency = html_entity_decode($CONFIG['currency_symbol'], ENT_NOQUOTES, "ISO-8859-15"); // Note using -15 as -1 doesnt support euro + if (!empty($sites)) { foreach ($sites AS $s) @@ -56,7 +58,7 @@ } elseif ($display == 'csv') { - $str .= "{$strSiteName},{$strProduct},{$strStartDate},{$strEndDate},{$strCreditAmount},{$strBalance},{$strUnitRate},Units remaining @1 x\n"; + $str .= "\"{$strSiteName}\",\"{$strProduct}\",\"{$strStartDate}\",\"{$strEndDate}\",\"{$strCreditAmount}\",\"{$strBalance}\",\"{$strUnitRate}\",\"Units remaining @1 x\"\n"; // FIXME i18n } $lastsite = ''; @@ -111,8 +113,8 @@ { if ($obj->site != $lastsite) { - $str .= site_name($obj->site).","; - $str .= product_name($obj->product).","; + $str .= "\"".site_name($obj->site)."\","; + $str .= "\"".product_name($obj->product)."\","; } else { @@ -127,10 +129,10 @@ } } - $str .= "{$obj->startdate},{$obj->enddate},"; - $str .= "{$CONFIG['currency_symbol']}{$obj->creditamount},{$CONFIG['currency_symbol']}{$obj->balance},"; - $str .= "{$CONFIG['currency_symbol']}{$obj->unitrate},"; - $str .= "{$unitsat1times}\n"; + $str .= "\"{$obj->startdate}\",\"{$obj->enddate}\","; + $str .= "\"{$csv_currency}{$obj->creditamount}\",\"{$csv_currency}{$obj->balance}\","; + $str .= "\"{$csv_currency}{$obj->unitrate}\","; + $str .= "\"{$unitsat1times}\"\n"; } } @@ -143,8 +145,8 @@ } elseif ($display == 'csv') { - $str .= ",,,{$strTOTALS},{$CONFIG['currency_symbol']}{$totalcredit},"; - $str .= "{$CONFIG['currency_symbol']}{$totalbalance},,{$remainingunits}\n"; + $str .= ",,,\"{$strTOTALS}\",\"{$csv_currency}{$totalcredit}\","; + $str .= "\"{$csv_currency}{$totalbalance}\",,\"{$remainingunits}\"\n"; } } else Modified: trunk/includes/functions.inc.php =================================================================== --- trunk/includes/functions.inc.php 2008-08-02 13:05:52 UTC (rev 3886) +++ trunk/includes/functions.inc.php 2008-08-02 17:43:21 UTC (rev 3887) @@ -10380,6 +10380,9 @@ function transactions_report($serviceid, $startdate, $enddate, $sites, $display, $sitebreakdown=TRUE) { global $CONFIG; + + $csv_currency = html_entity_decode($CONFIG['currency_symbol'], ENT_NOQUOTES, "ISO-8859-15"); // Note using -15 as -1 doesnt support euro + $sql = "SELECT DISTINCT t.*, m.site FROM `{$GLOBALS['dbTransactions']}` AS t, `{$GLOBALS['dbService']}` AS p, "; $sql .= "`{$GLOBALS['dbMaintenance']}` AS m, `{$GLOBALS['dbServiceLevels']}` AS sl, `{$GLOBALS['dbSites']}` AS s "; $sql .= "WHERE t.serviceid = p.serviceid AND p.contractid = m.id "; // AND t.date <= '{$enddateorig}' "; @@ -10434,7 +10437,7 @@ $str .= "\"{$transaction->transactionid}\","; $str .= "\"{$transaction->serviceid}\",\""; $str .= site_name($transaction->site)."\","; - $str .= "\"{$transaction->description}\","; + $str .= "\"".html_entity_decode($transaction->description)."\","; } $total += $transaction->amount; @@ -10447,7 +10450,7 @@ } elseif ($display == 'csv') { - $str .= ",\"{$CONFIG['currency_symbol']}".number_format($transaction->amount, 2)."\","; + $str .= ",\"{$csv_currency}".number_format($transaction->amount, 2)."\","; } } else @@ -10459,7 +10462,7 @@ } elseif ($display == 'csv') { - $str .= "\"{$CONFIG['currency_symbol']}".number_format($transaction->amount, 2)."\",,"; + $str .= "\"{$csv_currency}".number_format($transaction->amount, 2)."\",,"; } } @@ -10509,8 +10512,8 @@ $text .= "\"{$GLOBALS['strSite']}\",\"{$GLOBALS['strDescription']}\",\"{$GLOBALS['strCredit']}\",\"{$GLOBALS['strDebit']}\"\n"; $text .= $e['str']; $text .= ",,,,{$GLOBALS['strTotal']},"; - $text .= "\"{$CONFIG['currency_symbol']}".number_format($e['credit'], 2)."\",\""; - $text .="{$CONFIG['currency_symbol']}".number_format($e['debit'], 2)."\"\n"; + $text .= "\"{$csv_currency}".number_format($e['credit'], 2)."\",\""; + $text .="{$csv_currency}".number_format($e['debit'], 2)."\"\n"; } } } @@ -10535,8 +10538,8 @@ $text .= "\"{$GLOBALS['strDescription']}\",\"{$GLOBALS['strCredit']}\",\"{$GLOBALS['strDebit']}\"\n"; $text .= $table; $text .= ",,,,{$GLOBALS['strTOTALS']},"; - $text .= "\"{$CONFIG['currency_symbol']}".number_format($totalcredit, 2)."\",\""; - $text .= "{$CONFIG['currency_symbol']}".number_format($totaldebit, 2)."\"\n"; + $text .= "\"{$csv_currency}".number_format($totalcredit, 2)."\",\""; + $text .= "{$csv_currency}".number_format($totaldebit, 2)."\"\n"; } } @@ -10580,6 +10583,7 @@ $html .= colheader($header, $header); } $html .= "</tr>"; + if (sizeof($data) == 1) { $html .= "<tr><td rowspan='{$rows}'>{$GLOBALS['strNoRecords']}</td></tr>"; @@ -10664,6 +10668,7 @@ return $html; } + // ** Place no more function defs below this ** This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <iva...@us...> - 2008-08-08 09:24:43
|
Revision: 3895 http://sitracker.svn.sourceforge.net/sitracker/?rev=3895&view=rev Author: ivanlucas Date: 2008-08-08 09:24:39 +0000 (Fri, 08 Aug 2008) Log Message: ----------- Updated Japanese translation by Eliza Galang - thanks Eliza! Modified Paths: -------------- trunk/doc/CREDITS trunk/includes/i18n/ja-JP.inc.php Modified: trunk/doc/CREDITS =================================================================== --- trunk/doc/CREDITS 2008-08-07 15:03:29 UTC (rev 3894) +++ trunk/doc/CREDITS 2008-08-08 09:24:39 UTC (rev 3895) @@ -9,8 +9,8 @@ Micky Campbell -- Ideas & Testing Martin Cosgrave <martin.cosgrave[at]aptosolutions.co.uk> -- Code Patches Mario Dejo <mdejo[at]yahoo.com> -- Translation (Spanish) -Eliza G -- Translation (Japanese) Felix Enescu <fenescu[at]users.sourceforge.net> -- Code Patch +Eliza Galang <ehly25[at]gmail.com> -- Translation (Japanese) Tom Gerrard <tomgerrard[at]users.sourceforge.net> -- Current Maintainer, Code & Design Paul Harrison -- Suggestions, Bug Reports and CSS Theme Paul Heaney <paulheaney[at]users.sourceforge.net> -- Code Modified: trunk/includes/i18n/ja-JP.inc.php =================================================================== --- trunk/includes/i18n/ja-JP.inc.php 2008-08-07 15:03:29 UTC (rev 3894) +++ trunk/includes/i18n/ja-JP.inc.php 2008-08-08 09:24:39 UTC (rev 3895) @@ -1,328 +1,590 @@ -<?php -// Translation by Eliza G - -$languagestring='Japanese'; -$i18ncharset='UTF-8'; - -// list of strings (Alphabetical) -$strAbout = 'について'; -$strAbsentSick = '病気'; -$strAccepting = '受付中'; -$strActionNeeded = 'アクションが必要'; -$strActionPlan = 'アクション計画'; -$strActionPlanBy = '%s によるアクション計画'; -$strActive = '有効'; -$strActiveContracts = '有効なサポート契約'; -$strActivity = '活動'; -$strAdd = '追加'; -$strAdded = '追加されました'; -$strAddFeedbackForm = 'フィードバックフォームの追加'; -$strAddIncident = 'インシデントの追加'; -$strAddLink = 'リンクの追加'; -$strAddNote = '情報の追加'; -$strAddTask = 'タスクの追加'; -$strAddTemplate = 'テンプレートの追加'; -$strAddUser = 'ユーザーの追加'; -$strAddContact = '担当者の追加'; -$strAddContract = '契約の追加'; -$strAddIncident = 'インシデントの追加'; -$strAddProduct = '製品の追加'; -$strAddReseller = 'Resellerの追加'; -$strAddServiceLevel = 'サービスレベルの追加'; -$strAddSite = 'サイトの追加'; -$strAddSkill = '技能の追加'; -$strAddTask = 'タスクの追加'; -$strAddTemplate = 'テンプレートの追加'; -$strAddUser = 'ユーザーの追加'; -$strAddVendor = 'メーカの追加'; -$strAddress = '住所'; -$strAddress1 = '住所1'; -$strAddress2 = '住所2'; -$strAdminContact = 'アドミン連絡先'; -$strAdvanced = 'その他のオプション'; -$strAge = 'Age'; -$strAgo = '%s 前'; -$strAll = 'すべて'; -$strAllClosed = 'すべてがクローズ'; -$strAllOpen = 'すべてがオーペン'; -$strAlternative = 'Alternative'; -$strApproveHolidays = '承認された休日'; -$strAssign = 'Assign'; -$strAssignTo = 'Assign To'; -$strAtLunch = 'お昼休み'; -$strAttachFile = 'ファイルを添付する'; -$strAttachment = '添付ファイル'; -$strAuthor = '記入者'; - -$strBoth = '両方'; -$strBrowse = '参照'; -$strBrowseContacts = '連絡先を参照'; -$strBrowseFeedback = 'フィードバックを参照'; -$strBrowseFeedbackForms = 'フィードバックフォームを参照'; -$strBrowseKB = '技術情報ベースを参照'; -$strBrowseSites = 'サイトを参照'; -$strBulkModify = '大量変更'; - -$strChooseLanguage = '言語を選んでください'; -$strCity = '都市'; -$strClose = 'クローズ'; -$strClosed = 'クローズされた'; -$strCloseWindow = 'ウィンドーをクローズ'; -$strConfirmNewPassword = '新しいパスワードを確認'; -$strContact = '連絡先'; -$strContinue = 'Continue'; -$strContacts = '連絡先'; -$strContactsMulti = '%d 連絡先'; -$strContract = '契約'; -$strContractID = '契約 ID'; -$strContractNum = '契約 %d'; -$strContracts = '契約'; -$strControlPanel = 'コントロールパネル'; -$strComplete = '完了'; -$strCompleted = '完了'; -$strCompletion = '完了'; -$strCriteria = 'Criteria'; -$strCritical = '重要な'; -$strCustomer = '顧客'; -$strCustomerFeedback = '顧客のフィードバック'; -$strCustomers = '顧客'; -$strCountContractsByProduct = '製品による契約をカウント'; -$strCounty = '県'; -$strCountry = '国'; -$strCreate = '作成'; -$strCSVfile = 'CSV (Comma Seperated) ファイル'; -$strCustomerImpact = '業務影響'; - -$strDataProtection = 'データのプロテクション'; -$strDate = '日付'; -$strDay = '日'; -$strDays = '日'; -$strDefault = 'デフォルト'; -$strDelete = '削除'; -$strDeleted = '削除済み'; -$strDeleteTask = '削除済みタスク'; -$strDepartment = '部署'; -$strDescription = '記述'; -$strDetails = '詳細'; -$strDetailsAndLog = '詳細やログ'; -$strDisabled = '無効'; -$strDraftDelete = '下書きを削除'; -$strDraftEdit = '下書きの変更'; - -$strEdit = '編集'; -$strEditContact = '連絡先の変更'; -$strEditContract = '契約の変更'; -$strEdited = '変更しました'; -$strEditedBy = '%sによる変更された'; -$strEditHolidays = '休日の変更'; -$strEditProfileFor = '%s によるユーサープロファイルの変更'; -$strEditProduct = '製品の変更'; -$strEditSkill = '技能の変更'; -$strEditTask = 'タスクの変更'; -$strEditTemplate = 'テンプレートの変更'; -$strEmail = '電子メール'; -$strEmailSettings = '電子メールの設定'; -$strEmailSignature = '電子メールの署名'; -$strEnterTheIncidentID = 'インシデントIDを入力してください'; -$strEnterTheCallID = '受付番号を入力してください'; -$strEvent = 'イベント'; - -$strFeedback = 'フィードバック'; -$strFeedbackForms = 'フィードバックフォーム'; -$strFields = 'フィールド'; -$strFiles = 'ファイル'; -$strFindContact = '連絡先の検索'; -$strForenames = '名'; -$strForgottenDetails = 'あなたの詳細を忘れましたか?'; -$strForm = 'フォーム'; -$strFTPFilesDB = 'FTP ファイル DB'; - -$strGlobalSignature = 'グローバル署名'; -$strGroup = 'グループ'; - -$strHelp = 'ヘルプ'; -$strHelpAbout = 'バージョン情報'; -$strHelpContents = 'ヘルプの内容'; -$strHigh = '高い'; -$strHolidays = '休日'; -$strHolidayType = '休日のタイプ'; - -$strImportant = '重要な'; -$strInactive = '有効でない'; -$strIncidentTitle = 'インシデントのタイトル'; -$strIncident = 'インシデント'; -$strIncidentAdded = 'インシデントは追加されました'; -$strIncidentLogOrder = 'インシデントログの順番'; -$strIncidentNum = 'インシデント %d'; -$strIncidentPool = 'インシデントのプール'; -$strIncidentRefresh = 'インシデントのリフレッシュ'; -$strIncidents = 'インシデント'; -$strIncidentsMulti = '%d インシデント'; -$strIncidentsByEngineer = 'エンジニアによるインシデント'; -$strIncidentsBySite = 'サイトによるインシデント'; -$strIncidentsBySkill = '技能によるインシデント'; -$strInfo = '情報'; -$strInstall = 'インストール'; -$strInstall = 'インストール'; - -$strKnowledgeBase = '技術情報ベース'; - -$strLanguage = '言語'; -$strLastUpdated = '最終更新日'; -$strLink = 'リンク'; -$strLinkedSkills = 'リンクされた技能'; -$strLinkProducts = '製品をリンク'; -$strListProducts = '製品一覧'; -$strListSkills = '技能一覧'; -$strLogIn = 'ログイン'; -$strLogin = 'ログイン'; -$strLogout = 'ログアウト'; - -$strMaintenance = 'メンテナンス'; -$strManageUsers = 'ユーザー管理'; -$strMandatoryMarked = '%s は必須フィールド'; -$strMessage = 'メッセージ'; -$strMinutes = '分'; -$strMultiIncidents = '%d インシデント'; -$strMyDashboard = '私の Dashboard'; -$strMyDetails = '私の詳細'; -$strMyHolidays = '私の休日'; -$strMyProfile = 'マイプロファイル'; -$strMySkills = 'マイスキール'; -$strMySubstitutes = '私のSubstitutes'; - -$strName = 'お名前'; -$strNewContact = '新規担当者'; -$strNewContract = '新規契約'; -$strNewEmail = '新規電子メール (none of the above)'; -$strNewIncidentStatus = '新規インシデントのステータス'; -$strNewPassword = '新規パスワード'; -$strNewProduct = '新規製品'; -$strNewReseller = '新規Reseller'; -$strNewSite = '新規サイト'; -$strNewSkill = '新規技能'; -$strNewTemplate = '新規電子メールテンプレート'; -$strNewUser = '新規ユーザー'; -$strNextAction = '次のアクション'; -$strNo = 'いいえ'; -$strNoEmail = '電子メールはなし'; -$strNoIncidents = 'インシデントはなし'; -$strNone = 'なし'; -$strNow = '今'; - -$strOldPassword = '古いパスワード'; -$strOnHoliday = '休み中'; -$strOffline = 'オフライン'; -$strOnline = 'オンライン'; -$strOnTrainingCourse = 'トレーニング中'; -$strOther = 'その他'; -$strOtherIncidents = '他のインシデント'; -$strOperation = '運用'; - -$strProblemDefinition = '問題の定義'; -$strProblemDescription = '問題の記述'; -$strPassword = 'パスワード'; -$strPermission = 'パーミッション'; -$strPermissions = 'パミッション'; -$strPhonecallmadeby = '%sによる電話'; -$strPleaseCheckData = '入力されたデータを確認してください。'; -$strPleaseWaitRedirect = 'しばらくお待ちください。'; -$strPlugins = 'プラッグイン'; -$strPostcode = '郵便番号'; -$strPriority = '優先権'; -$strPrivacy = 'プライバシー'; -$strPrivate = 'プライベト'; -$strProblemDefinitionby = '%sによる問題の定義'; -$strProduct = '製品'; -$strProducts = '製品'; - -$strRealName = 'お名前'; -$strReports = '報告'; -$strReset = 'リセット'; -$strResetPassword = 'パスワードをリセット'; -$strResult = '結果'; -$strReview = 'レビュー'; -$strReviewby = '%sによる更新のレビュー'; - -$strSave = '保存'; -$strScreen = '画面'; -$strSearch = '検索'; -$strSearchAgain = 'もう一度検索'; -$strSeconds = '秒'; -$strSendEmail = '電子メールを送信'; -$strService = 'サービス'; -$strServiceLevel = 'サービスレベル'; -$strServiceLevels = 'サービスレベル'; -$strSetPermissions = 'パーミッションの設定'; -$strSetYourStatus = 'あなたのステータスをセットしてください。'; -$strSingleIncident = '%d インシデント'; -$strSite = 'サイト'; -$strSiteContracts = 'サイトの契約'; -$strSiteIncidents = 'サイトのインシデント'; -$strSiteProducts = 'サイトの製品'; -$strSites = 'サイト'; -$strSiteName = 'サイト名'; -$strSiteType = 'サイトのタイプ'; -$strSkill = '技能'; -$strSkills = '技能'; -$strSoftware = 'ソフトウェア'; -$strSoftwareVersion = 'ソフトウェアのバージョン'; -$strStartDate = 'スタート日付'; -$strStatus = '状態'; -$strStatusSummary = 'ステータスの概要'; -$strSummary = '概要'; -$strSupport = '支援'; -$strSurname = '姓'; - -$strTable = '表'; -$strTask = 'タスク'; -$strTasks = 'タスク'; -$strTaskList = 'タスク一覧'; -$strTelephone = '電話番号'; -$strTime = '時間'; -$strTitle = 'タイトル'; -$strToday = '今日'; -$strTotal = '総額'; -$strTranslate = '翻訳する'; -$strTranslation = '翻訳'; -$strType = 'タイプ'; - -$strUpdate = '更新'; -$strUpdated = '更新された'; -$strUpdatedAutomaticallyBy = '%sによる自動的に更新された'; -$strUpdatedFromTask = 'タスクから更新された'; -$strUpdateIncident = 'インシデントを更新'; -$strUpdateNewUpdate = '新しい更新 (特になし)'; -$strUpdates = 'アップデート'; -$strUpdatedFromTask = '%sによるタスクから更新された'; -$strUpdateType = '更新のタイプ'; -$strUnknown = '不明'; -$strUnlink = 'リンクされていない'; -$strUser = 'ユーザー'; -$strUserGroups = 'ユーザーのグループ'; -$strUsername = 'ユーザー名'; -$strUsers = 'ユーザー'; -$strUserIncidents = '%s\'s インシデント'; -$strUsersNoGroup = 'グループに入っていないユーザー'; -$strUsersTasks = '%s\'s タスク'; - -$strVersion = 'バージョン'; -$strView = '表示'; -$strViewIncidents = 'インシデント表示'; -$strViewTask = 'タスク表示'; -$strViewTasks = 'タスク表示'; -$strViewUsers = 'ユーザー表示'; -$strWebupdate = 'ウェブアップデート'; -$strWelcome = 'ようこそ'; -$strWebsite = 'ウェブサイト'; - -$strYes = 'はい'; -$strYesterday = '昨日'; -$strYou = 'あなた'; -$strYourClosedIncidents = 'あなたのクロースされたインシデント'; -$strYourCurrentIncidents = 'あなたの現在のインシデント'; -$strYourDetails = 'あなたの詳細'; -$strYourSupportEntitlement = 'あなたのサポート契約'; - -$strZeroRemaining = '残りのゼロ'; +<?php +// SiT! Language File - Japanese (ja-JP) by Eliza Galang <ehly25[at]gmail.com> + +$languagestring = 'Japanese (ja-JP)'; +$i18ncharset = 'UTF-8'; + +$str0MeansUnlimited = '0 Means Unlimited'; + +$str1Day = '一日間'; +$str1Minute = '一分間'; +$str1Month = '一ヶ月間'; +$str1Hour = '一時間'; + +$strAbout = 'About'; +$strAboutXMinutesAgo = 'およそ %d分前'; +$strAbsentSick = '病気'; +$strActual = '実際'; +$strAcknowledge = '承認します'; +$strAccepting = 'Accepting'; +$strAccessDetails = 'アクセスの詳細'; +$strActions = 'アクション'; +$strActionNeeded = 'アクションが必要'; +$strActionPlan = 'アクションプラン'; +$strActionPlanBy = 'Action Plan By %s'; +$strActive = '有効'; +$strActiveContracts = '有効なサポート契約'; +$strActivities = '活動'; +$strActivity = '活動'; +$strActivityAdded = '活動は加えました'; +$strActivityBilling = 'Activity Billing'; +$strActivityBillingInfo = 'Only closed activities are shown for billing.'; +$strActivityList = '活動一覧'; +$strActivityMarkedCompleteSuccessfully = 'Activity Marked Complete Successfully'; +$strActivitiesForX = '%s の活動'; +$strAdd = '追加'; +$strAddContact = '担当者の追加'; +$strAddContract = '契約の追加'; +$strAddContractConfirm = 'この契約を追加したいですか。'; +$strAdded = '追加されました'; +$strAddedSuccessfully = 'Added successfully'; +$strAddEmailConfirm = 'このメールテンプレートを追加したいですか。'; +$strAddEmailTemplate = 'メールテンプレートの追加'; +$strAddFeedbackForm = 'フィードバックフォームの追加'; +$strAddIncident = 'インシデントの追加'; +$strAdditional = '追加'; +$strAdditionalInfo = '追加情報'; +$strAddKBArticle = '技術情報ベースの追加'; +$strAddLink = 'リンクの追加'; +$strAddNew = '新規追加'; +$strAddNote = '情報の追加'; +$strAddProduct = '製品の追加'; +$strAddProductInformation = '製品情報の追加'; +$strAddProductQuestion = '製品質問の追加'; +$strAddReseller = 'Resellerの追加'; +$strAddress = '住所'; +$strAddress1 = '住所1'; +$strAddress2 = '住所2'; +$strAddRSSAtomFeed = 'RSS/AtomFeedの追加'; +$strAddServiceLevel = 'サービスレベルの追加'; +$strAddSite = 'サイトの追加'; +$strAddSiteSupportIncident = 'サイトサポートインシデントの追加'; +$strAddSkill = 'スキルの追加'; +$strAddTask = 'タスクの追加'; +$strAddTemplate = 'テンプレートの追加'; +$strAddUser = 'ユーザーの追加'; +$strAddVendor = 'メーカの追加'; +$strAdminContact = '管理者連絡先'; +$strAdministratorsOnly = '管理者専用'; +$strAdvanced = 'その他のオプション'; +$strAfternoon = '午後'; +$strAge = 'Age'; +$strAgo = '%s 前'; +$strAll = '全て'; +$strAllClosed = '全てのクローズ済み'; +$strAllDay = '一日中'; +$strAllOpen = '全てのオペン'; +$strAllSiteContactsSupported = 'このサイトの担当者は全てがサポートされます'; +$strAlphabetically = 'Alphabetically'; +$strAlternative = 'Alternative'; +$strAM = 'AM'; +$strAnswer = '答え'; +$strApprove = '承認します'; +$strApproveAll = '全てを承認します'; +$strApproved = '承認されました'; +$strApproveHolidays = '休日を承認します'; +$strAprAbbr = '4月'; +$strApril = '4月'; +$strAreYouSureAddContract = 'この契約を追加したいですか。'; +$strAreYouSureAddEscalationPath = 'このエスカレーションパスを追加したいですか。'; +$strAreYouSureAddProduct = 'この製品を追加したいですか。'; +$strAreYouSureAddProductInfo = 'この製品情報を追加したいですか。'; +$strAreYouSureAddSite = 'このサイトを追加したいですか。'; +$strAreYouSureAddSkill = 'この技能を追加したいですか。'; +$strAreYouSureAddUser = 'このユーザを追加したいですか。'; +$strAreYouSureAddVendor = 'このメーカを追加したいですか。'; +$strAreYouSureEditEmailTemplate = 'このメールテンプレートを編集したいですか。'; +$strAreYouSureEditEscalationPath = 'このエスカレーションパスを編集したいですか。'; +$strAssign = 'アサイン'; +$strAssignTo = 'アサイン'; +$strAtLunch = 'お昼休み'; +$strAttachFile = 'ファイルを添付する'; +$strAttachment = '添付ファイル'; +$strAugAbbr = '8月'; +$strAugust = '8月'; +$strAuthor = '記入者'; +$strAuthors = '記入者'; + +$strBackToList = '一覧に戻る'; +$strBackToLoginPage = 'ログインページに戻る'; +$strBCC = 'BCC'; +$strBoth = '両方'; +$strBrowse = '参照'; +$strBrowseContacts = '連絡先を参照'; +$strBrowseContracts = '契約を参照'; +$strBrowseContractsBySite = '契約を参照(サイト別)'; +$strBrowseFeedback = 'フィードバックを参照'; +$strBrowseFeedbackForms = 'フィードバックフォームを参照'; +$strBrowseJournal = 'ジャーナルを参照'; +$strBrowseKB = '技術情報ベースを参照'; +$strBrowseSites = 'サイトを参照'; +$strBulkModify = '大量変更'; + +$strCallFromCustomer = 'お客様からの電話'; +$strCallToCustomer = 'お客様への電話'; +$strCannotResetThisPassword = 'このユーザパスワードをリセットすることが出来ないです。'; +$strCC = 'CC'; +$strChange = '変化'; +$strChooseLanguage = '言語を選んでください'; +$strCity = '都市'; +$strClose = 'クローズ'; +$strClosed = 'クローズ済み'; +$strClosedOnX = '%s にクローズしました。'; +$strCloseWindow = 'ウィンドーをクローズ'; +$strClosingStatus = 'クローズステータス'; +$strCode = 'コード'; +$strConfirmNewPassword = '新しいパスワードを確認'; +$strContact = '担当者'; +$strContactAddedSuccessfully = '担当者は追加しました。'; +$strContinue = '次へ'; +$strContactDetails = '担当者の詳細'; +$strContacts = '担当者'; +$strContactsMulti = '%d 担当者'; +$strContract = '契約'; +$strContractID = '契約 ID'; +$strContractNum = '契約 %d'; +$strContracts = '契約'; +$strControlPanel = 'コントロールパネル'; +$strComplete = '完了'; +$strCompleted = '完了'; +$strCompletion = '完了'; +$strCriteria = 'Criteria'; +$strCritical = 'クリティカル'; +$strCountContractsByProduct = '製品別契約をカウント'; +$strCounty = '県'; +$strCountry = '国'; +$strCreate = '作成'; +$strCSVfile = 'CSV (Comma Seperated) ファイル'; +$strCurrentUserEmailAddress = '現在のユーザのメールアドレス'; +$strCurrentlyOpen = '現在オペン'; +$strCustomer = 'お客様'; +$strCustomerFeedback = 'お客様のフィードバック'; +$strCustomers = 'お客様'; +$strCustomerImpact = '業務影響'; + +$strDashboard = 'ダッシュボード'; +$strDataProtection = 'データプロテクション'; +$strDate = '日付'; +$strDateAndTime = '日時'; +$strDay = '日'; +$strDays = '日'; +$strDecAbbr = '12月'; +$strDecember = '12月'; +$strDefault = 'デフォルト'; +$strDelete = '削除'; +$strDeleted = '削除済み'; +$strDeleteTask = 'タスクを削除'; +$strDepartment = '部署'; +$strDescription = '記述'; +$strDetails = '詳細'; +$strDetailsAndLog = '詳細やログ'; +$strDisabled = '無効'; +$strDraftDelete = '下書きを削除'; +$strDraftEdit = '下書きを編集'; + +$strEdit = '編集'; +$strEditContact = '連絡先編集'; +$strEditContract = '契約編集'; +$strEdited = '編集しました'; +$strEditedBy = 'Edited By %s'; +$strEditHolidays = '休日編集'; +$strEditProfileFor = 'Edit Profile for %s'; +$strEditProduct = '製品編集'; +$strEditServiceLevel = 'サービスレベル編集'; +$strEditSkill = 'スキル編集'; +$strEditSite = 'サイト編集'; +$strEditTask = 'タスク編集'; +$strEditTemplate = 'テンプレート編集'; +$strEditVendor = 'メーカ編集'; +$strEmail = '電子メール'; +$strEmailAddress = '電子メールアドレス'; +$strEmailDomain = 'メールドメイン'; +$strEmailFromCustomer = 'お客様からの電子メール'; +$strEmailSettings = '電子メールの設定'; +$strEmailSignature = '電子メールの署名'; +$strEmailTemplate = 'メールテンプレート'; +$strEndDate = '完了日時'; +$strEnterTheIncidentID = 'インシデントIDを入力してください'; +$strEngineer = 'エンジニア'; +$strEngineers = 'エンジニア'; +$strEnglish = '英語'; +$strEnterTheCallID = '受付番号を入力してください'; +$strEOL = 'EOL'; +$strError = 'エラー'; +$strEscalation = 'エスカレーション'; +$strEscalationPaths = 'エスカレーションパス'; +$strEvent = 'イベント'; +$strExact = 'ちょど'; +$strExternalEmail = 'エクスターナルメール'; +$strExternalEngineer = 'エクスターナルエンジニア'; +$strExternalEngineerEmail = 'エクスターナルエンジニアのメール'; +$strExternalEngineersFirstName = 'エクスターナルエンジニアの名'; +$strExternalEngineersName = 'エクスターナルエンジニアの名前'; +$strExternalID = 'エクスターナル ID'; +$strExternalInfo = 'エクスターナル情報'; + +$strFailed = '失敗'; +$strFAILED = '失敗'; +$strFebAbbr = '2月'; +$strFebruary = '2月'; +$strFeedback = 'フィードバック'; +$strFeedbackForms = 'フィードバックフォーム'; +$strField1 = 'フィルド 1'; +$strField2 = 'フィルド 2'; +$strField3 = 'フィルド 3'; +$strField4 = 'フィルド 4'; +$strField5 = 'フィルド 5'; +$strField6 = 'フィルド 6'; +$strField7 = 'フィルド 7'; +$strField8 = 'フィルド 8'; +$strFields = 'フィールド'; +$strFileManagement = 'ファイル管理'; +$strFilename = 'ファイル名'; +$strFiles = 'ファイル'; +$strFindContact = '担当者の検索'; +$strForenames = '名'; +$strForgottenDetails = 'あなたの詳細を忘れましたか?'; +$strForgottenPasswordDetails = 'パスワードの詳細を忘れました'; +$strForm = 'フォーム'; +$strFri = '金'; +$strFriday = '金曜日'; +$strFTPFilesDB = 'FTP ファイル DB'; + +$strGBytes = 'GB'; +$strGlobalSignature = 'グローバル署名'; +$strGroup = 'グループ'; + +$strHelp = 'ヘルプ'; +$strHelpAbout = 'バージョン情報'; +$strHelpContents = 'ヘルプの内容'; +$strHigh = '高い'; +$strHoldingQueue = 'インシデント待ち行列'; +$strHolidays = '休日'; +$strHolidayPlanner = '休みプランナ'; +$strHolidayType = '休日のタイプ'; + +$strID = 'ID'; +$strImportant = '重要'; +$strInactive = 'Inactive'; +$strIncident = 'インシデント'; +$strIncidentID = 'インシデントID'; +$strIncidentTitle = 'インシデントのタイトル'; +$strIncidentAdded = 'インシデントは追加されました'; +$strIncidentLogOrder = 'インシデントログの順番'; +$strIncidentNum = 'インシデント %d'; +$strIncidentNumAbb = 'インシデント#'; +$strIncidentPool = 'インシデントのプール'; +$strIncidentRefresh = 'インシデントのリフレッシュ'; +$strIncidents = 'インシデント'; +$strIncidentsMulti = '%d インシデント'; +$strIncidentsByEngineer = 'インシデント(エンジニア別)'; +$strIncidentsBySite = 'インシデント(サイト別)'; +$strIncidentsBySkill = 'インシデント(スキル別)'; +$strIncidentsByVendor = 'インシデント(メーカ別)'; +$strIncidentsClosedToday = '今日、 %s インシデントはクローズされました '; +$strIncidentsLoggedOpenClosed = '登録されたインシデント (オペン/クローズ)'; +$strIncidentsLoggedToday = '今日、 %s インシデントが登録されました '; +$strInfo = '情報'; +$strInstall = 'インストール'; +$strInterfaceStyle = 'インタフェーススタイル(テーマ)'; +$strInternalEngineer = 'インタナールエンジニア'; + +$strJanAbbr = '1月'; +$strJanuary = '1月'; +$strJournal = 'ジャーナル'; +$strJulAbbr = '7月'; +$strJuly = '7月'; +$strJumpToIncident = 'インシデントに行く'; +$strJunAbbr = '6月'; +$strJune = '6月'; +$strJustNow = 'ちょうど今'; + +$strKBytes = 'KB'; +$strKeywords = 'キーワード'; +$strKnowledgeBase = '技術情報ベース'; +$strKnowledgeBaseArticle = '技術情報ベース'; + +$strLanguage = '言語'; +$strLastMonth = '先月'; +$strLastUpdated = '最終更新日'; +$strLastYear = '去年'; +$strLicense = 'ライセンス'; +$strLicenseType = 'ライセンスタイプ'; +$strLink = 'リンク'; +$strLinkedSkills = 'リンクされた技能'; +$strLinkProducts = '製品をリンク'; +$strList = '一覧'; +$strListProducts = '製品一覧'; +$strListSkills = 'スキル一覧'; +$strLogged = '登録されました'; +$strLogIn = 'ログイン'; +$strLogin = 'ログイン'; +$strLogout = 'ログアウト'; + +$strMaintenance = 'メンテナンス'; +$strManageDashboardComponents = 'ダッシュボード管理'; +$strManageEmailTemplates = 'メールテンプレート管'; +$strManageFTPFiles = 'FTPファイル管理'; +$strManageUsers = 'ユーザー管理'; +$strManageYourDashboard = 'ダッシュボード管理'; +$strMandatoryMarked = '%s は必須フィールド'; +$strMarAbbr = '3月'; +$strMarch = '3月'; +$strMayAbbr = '5月'; +$strMay = '5月'; +$strMBytes = 'MB'; +$strMessage = 'メッセージ'; +$strMine = '私の'; +$strMinutes = '分'; +$strMobile = '携帯電話'; +$strMon = '月'; +$strMonday = '月曜日'; +$strMonth = '月'; +$strMultiIncidents = '%d インシデント'; +$strMyDashboard = 'マイダッシュボード'; +$strMyDetails = '私の詳細'; +$strMyHolidays = '私の休日'; +$strMyProfile = 'マイプロファイル'; +$strMySkills = 'マイスキル'; +$strMySubstitutes = 'マイSubstitutes'; + +$strName = 'お名前'; +$strNewContact = '新規担当者'; +$strNewContract = '新規契約'; +$strNewEmail = '新規電子メール (none of the above)'; +$strNewEscalationPath = '新規エスカレーションパス'; +$strNewIncidentStatus = '新規インシデントのステータス'; +$strNewPassword = '新規パスワード'; +$strNewProduct = '新規製品'; +$strNewReseller = '新規Reseller'; +$strNewSite = '新規サイト'; +$strNewSkill = '新規スキル'; +$strNewStatus = '新規ステータス'; +$strNewTemplate = '新規テンプレート'; +$strNewUser = '新規ユーザー'; +$strNextAction = '次のアクション'; +$strNo = 'いいえ'; +$strNone = 'なし'; +$strNoEmail = '電子メールはなし'; +$strNoIncidents = 'インシデントは無し'; +$strNoLicense = 'ライセンスは無し'; +$strNoOpenIncidents = 'オペンインシデントは無し'; +$strNoProductInfo = '製品情報は無し'; +$strNoProductsForThisVendor = 'このメーカによる製品は無し'; +$strNOSkills = 'スキルは無し'; +$strNotApproved = '承認されません。'; +$strNotCompleted = '完成されません。'; +$strNotRequested = '要求されていません。'; +$strNotifications = '通知'; +$strNoRecords = '記録は無し'; +$strNoTasks = 'タスクは無し'; +$strNotice = '通知'; +$strNotices = '通知'; +$strNotes = 'ノート'; +$strNovAbbr = '11月'; +$strNovember = '11月'; +$strNow = '今'; +$strNumOfIncidents = 'この一覧には %s インシデントがあります。'; +$strNumOpenIncidents = '%s オペン'; + +$strOctAbbr = '10月'; +$strOctober = '10月'; +$strOK = 'OK'; +$strOlderVersions = '旧のバージョン'; +$strOldPassword = '古いパスワード'; +$strOnHoliday = '休み中'; +$strOffline = 'オフライン'; +$strOnline = 'オンライン'; +$strOnTrainingCourse = 'トレーニング中'; +$strOther = 'その他'; +$strOtherIncidents = '他のインシデント'; +$strOpen = 'オペン'; +$strOperation = '運用'; + +$strPassword = 'パスワード'; +$strPasswordReset = 'パスワードリセット'; +$strPermission = 'パーミッション'; +$strPermissions = 'パーミッション'; +$strPhonecallmadeby = '%s からの電話'; +$strPleaseCheckData = '入力されたデータを確認してください。'; +$strPleaseWaitRedirect = 'しばらくお待ちください。'; +$strPlugins = 'プラッグイン'; +$strPostcode = '郵便番号'; +$strPM = 'PM'; +$strPriority = '優先権'; +$strPrivacy = 'プライバシー'; +$strPrivate = 'プライベト'; +$strProblemDefinition = '問題の定義'; +$strProblemDefinitionby = '%sによって問題の定義'; +$strProblemDescription = '問題の記述'; +$strProduct = '製品'; +$strProducts = '製品'; +$strPublicHoliday = '祝祭日'; + +$strQuestion = '質問'; + +$strRealName = 'お名前'; +$strRecent = '現在'; +$strRecentIncidents = '現在のインシデント'; +$strReleaseNotes = 'リリースノート'; +$strReports = 'レポート'; +$strResearchNotes = 'リサーチノート'; +$strReset = 'リセット'; +$strResetPassword = 'パスワードをリセット'; +$strResult = '結果'; +$strResults = '結果'; +$strResultsNum = '%d 結果'; +$strReturnAfterSaving = '保存した後にこのページに戻る'; +$strReturnToList = '一覧に戻る'; +$strReturnToProductList = '製品一覧に戻る'; +$strReview = 'レビュー'; +$strReviewby = 'Review by %s'; +$strRSSAtomURL = 'RSS/Atom Feed URL'; + +$strSat = '土'; +$strSaturday = '土曜日'; +$strSave = '保存'; +$strScreen = '画面'; +$strSearch = '検索'; +$strSearchAgain = 'もう一度検索'; +$strSeconds = '秒'; +$strSelect = '選ぶ'; +$strSendEmail = '電子メールを送信'; +$strSendRequest = '要求を送信'; +$strSep = '9月'; +$strSeptember = '9月'; +$strService = 'サービス'; +$strServiceHistory = 'サービスヒストリ'; +$strServiceLevel = 'サービスレベル'; +$strServiceLevels = 'サービスレベル'; +$strSession = 'セッション'; +$strSetPassword = 'パスワードの設定'; +$strSetPermissions = 'パーミッションの設定'; +$strSetPublicHolidays = '祝祭日をセット'; +$strSetYourStatus = 'あなたのステータスをセットしてください。'; +$strSingleIncident = '%d インシデント'; +$strSite = 'サイト'; +$strSiteContracts = 'サイトの契約'; +$strSiteIncidents = 'サイトのインシデント'; +$strSiteName = 'サイト名'; +$strSiteNotes = 'サイトノート:'; +$strSiteProducts = 'サイトの製品'; +$strSites = 'サイト'; +$strSiteSupport = 'サイトサポート'; +$strSiteType = 'サイトのタイプ'; +$strSize = 'サイズ'; +$strSkill = 'スキル'; +$strSkills = 'スキル'; +$strSkillsMatrix = 'スキルマトリクス'; +$strSLATarget = 'SLAターゲト'; +$strSoftware = 'ソフトウェア'; +$strSoftwareVersion = 'ソフトウェアのバージョン'; +$strSolution = 'ソルーション'; +$strStartDate = 'スタート日付'; +$strStatus = 'ステータス'; +$strStatusSummary = 'ステータスの概要'; +$strSubject = '件名'; +$strSummary = '概要'; +$strSun = '日'; +$strSunday = '日曜日'; +$strSupport = '支援'; +$strSupportEmailAddress = 'サポートメールアドレス'; +$strSupportManagersEmailAddress = 'テクニカルサポート管理者メールアドレス'; +$strSupportedContacts = 'サポートされている担当者'; +$strSurname = '姓'; + +$strTable = '表'; +$strTarget = 'ターゲト'; +$strTask = 'タスク'; +$strTasks = 'タスク'; +$strTaskList = 'タスク一覧'; +$strTechnicalSupportAdmin = 'テクニカルサポートアドミン'; +$strTelephone = '電話番号'; +$strText = 'テキスト'; +$strThereAreXIncidentsInThisList = 'この一覧に %s インシデントがあります。'; +$strThisMonth = '今月'; +$strThisYear = '今年'; +$strThu = '火'; +$strThursday = '火曜日'; +$strTime = '時間'; +$strTitle = 'タイトル'; +$strTodaysDate = '今日の日付'; +$strToday = '今日'; +$strTotal = '総額'; +$strTraining = 'トレーニング'; +$strTranslate = '翻訳する'; +$strTranslation = '翻訳'; +$strTue = '火'; +$strTuesday = '火曜日'; +$strType = 'タイプ'; + +$strURLTile = 'URLタイトル'; +$strUpdate = 'アップデート'; +$strUpdated = 'アップデート済み'; +$strUpdatedAutomaticallyBy = 'Updated Automatically by %s'; +$strUpdatedFromTask = '%s タスクからアップデートされます'; +$strUpdateIncident = 'インシデントをアップデート'; +$strUpdateIncidentFailed = 'インシデントのアップデートが失敗しました'; +$strUpdateNewUpdate = '新規アップデート'; +$strUpdates = 'アップデート'; +$strUpdateType = 'アップデートタイプ'; +$strUnknown = '不明'; +$strUnlink = 'Unlink'; +$strUser = 'ユーザー'; +$strUserGroups = 'ユーザーグループ'; +$strUsername = 'ユーザー名'; +$strUsers = 'ユーザー'; +$strUserSettings = 'ユーザー設定'; +$strUserIncidents = '%s のインシデント'; +$strUsersNoGroup = 'グループに入っていないユーザー'; +$strUsersTasks = '%s のタスク'; + +$strVendor = 'メーカ'; +$strVersion = 'バージョン'; +$strView = '表示'; +$strViewIncidents = 'インシデント表示'; +$strViewResponse = 'レスポンス表示'; +$strViewTask = 'タスク表示'; +$strViewTasks = 'タスク表示'; +$strViewUsers = 'ユーザー表示'; + +$strWaiting = '待ち状態'; +$strWarning = '警告'; +$strWatchIncidents = 'インシデントモニター'; +$strWatchingAll = 'モニター'; +$strWebupdate = 'ウェブアップデート'; +$strWeek = '週'; +$strWed = '水'; +$strWednesday = '水曜日'; +$strWelcome = 'ようこそう'; +$strWorkaround = 'ワークアラウンド'; +$strWebsite = 'ウェブサイト'; + +$strXIncidentsLeft = '%s 残りのインシデント'; +$strXDays = '%s 日'; +$strXHour = '%s 時間'; +$strXHours = '%s 時間'; +$strXMinute = '%s 分'; +$strXMinutes = '%s 分'; +$strXMonths = '%s 月'; +$strXofX = '%s の %s'; +$strXSeconds = '%s 秒'; +$strXWorkingDay = '%s 営業日'; +$strXWorkingDays = '%s 営業日'; +$strXYears = '%s 年'; + +$strYear = '年'; +$strYes = 'はい'; +$strYesterday = '昨日'; +$strYou = 'あなた'; +$strYouACurrentlyNotAccepting = 'あなたは現在、インシデントを受け入れていません。 メインページの下部でこれを変えることができます。'; +$strYourClosedIncidents = 'あなたのクローズされたインシデント'; +$strYourCurrentIncidents = 'あなたの現在のインシデント'; +$strYourCurrentOpenIncidents = 'あなたの現在のオペンインシデント'; +$strYourCurrentLanguage = '現在の言語はあなたのプロフィールに保存されたものと異なっています。'; +$strYourDetails = 'あなたの詳細'; +$strYouMustEnter = 'あなたは %s を入力しなければなりません。'; +$strYourSupportEntitlement = 'あなたのサポート契約'; + +$strZeroRemaining = '残りのゼロ'; ?> \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <pau...@us...> - 2008-08-10 15:50:04
|
Revision: 3898 http://sitracker.svn.sourceforge.net/sitracker/?rev=3898&view=rev Author: paulheaney Date: 2008-08-10 15:49:58 +0000 (Sun, 10 Aug 2008) Log Message: ----------- * Numerous fixes to the interface for monthly and yearly so it shows the existing settings * Prevent monthly and yearly schedules being disabled when ther eupdated * Optimise array_drop_down alittle OUTSTANDING ISSUE * Schedule review page shows next runtime as the beginning of time for monthly and yearly (cant get my head around the logic at the moment) Modified Paths: -------------- trunk/htdocs/auto.php trunk/htdocs/scheduler.php trunk/includes/functions.inc.php Modified: trunk/htdocs/auto.php =================================================================== --- trunk/htdocs/auto.php 2008-08-10 12:03:25 UTC (rev 3897) +++ trunk/htdocs/auto.php 2008-08-10 15:49:58 UTC (rev 3898) @@ -24,7 +24,7 @@ { echo "<h2>Testing testing 1 2 3.</h2>"; - return FALSE; + return TRUE; } @@ -101,7 +101,7 @@ { global $now; global $dbIncidents, $dbServiceLevels, $dbMaintenance, $dbUpdates; - global $SYSLANG; + global $SYSLANG, $CONFIG; $success = TRUE; // FIXME this should only run INSIDE the working day @@ -156,7 +156,10 @@ { $slaInfo = mysql_fetch_array($update_result); $newSlaTime = calculate_incident_working_time($incident['id'],$slaInfo['timestamp'],$now); - if ($verbose) echo " Last SLA record is ".$slaInfo['sla']." at ".date("jS F Y H:i",$slaInfo['timestamp'])." which is $newSlaTime working minutes ago{$crlf}"; + if ($verbose) + { + echo " Last SLA record is ".$slaInfo['sla']." at ".date("jS F Y H:i",$slaInfo['timestamp'])." which is $newSlaTime working minutes ago{$crlf}"; + } } mysql_free_result($update_result); @@ -343,6 +346,7 @@ if ($accepting != '') $usql .= ", accepting='{$accepting}'"; $usql .= " WHERE id='{$huser->userid}' LIMIT 1"; if ($accepting == 'No') incident_backup_switchover($huser->userid, 'no'); + if ($verbose) { echo user_realname($huser->userid).': '.userstatus_name($currentstatus).' -> '.userstatus_name($newstatus).$crlf; @@ -376,7 +380,7 @@ */ function saction_ChaseCustomers() { - global $CONFIG; + global $CONFIG, $now; global $dbIncidents, $dbUpdates; $success = TRUE; @@ -638,9 +642,9 @@ $extra_headers .= "\n"; // add an extra crlf to create a null line to separate headers from body // this appears to be required by some email clients - INL - $subject = sprintf($strBillableIncidentsForPeriodXtoX, $startdate, $enddate); + $subject = sprintf($GLOBALS['strBillableIncidentsForPeriodXtoX'], $startdate, $enddate); - $bodytext = $strAttachedIsBillableIncidentsForAbovePeriod; + $bodytext = $GLOBALS['strAttachedIsBillableIncidentsForAbovePeriod']; $mime = new MIME_mail($CONFIG['support_email'], $CONFIG['billing_reports_email'], html_entity_decode($subject), $bodytext, $extra_headers, ''); $mime->attach($csv, "Billable report", OCTET, BASE64, "filename=billable_incidents_{$lastmonth}_{$currentyear}.csv"); Modified: trunk/htdocs/scheduler.php =================================================================== --- trunk/htdocs/scheduler.php 2008-08-10 12:03:25 UTC (rev 3897) +++ trunk/htdocs/scheduler.php 2008-08-10 15:49:58 UTC (rev 3898) @@ -81,29 +81,41 @@ echo "<tr>"; echo "<th>{$strType}</th><td>"; - echo "<input type='radio' name='type' value='interval' id='interval' onclick=\"$('intervalsection').show(); $('datesection').hide();\" checked='checked' />{$strInterval} "; - echo "<input type='radio' name='type' value='date' id='date' onclick=\"$('intervalsection').hide(); $('datesection').show();\" />{$strDate} "; + + if ($saction->type == 'interval') + { + $interval = "checked='checked'"; + $visibilitydate = "style='display:none'"; + } + elseif ($saction->type == 'date') + { + $date = "checked='checked'"; + $visibilityinterval = "style='display:none'"; + } + + echo "<input type='radio' name='type' value='interval' id='interval' onclick=\"$('intervalsection').show(); $('datesection').hide();\" {$interval} />{$strInterval} "; + echo "<input type='radio' name='type' value='date' id='date' onclick=\"$('intervalsection').hide(); $('datesection').show();\" {$date} />{$strDate} "; echo "</td></tr>"; - echo "<tbody id='intervalsection'>"; + echo "<tbody id='intervalsection' {$visibilityinterval}>"; echo "<tr><th><label for='interval'>{$strInterval}</label></th>"; echo "<td><input type='text' id='interval' name='interval' value='{$saction->interval}' size='5' /> ({$strSeconds})"; echo "</td></tr>\n"; echo "</tbody>"; - echo "<tbody id='datesection' style='display:none'>"; + echo "<tbody id='datesection' {$visibilitydate}>"; // date_type - month, year // date_offset // date_time echo "<tr><th>{$strFrequency}</th><td>"; - if (empty($saction->date_type) OR empty($saction->date_type) == 'month') + if (empty($saction->date_type) OR $saction->date_type == 'month') { - $month = " checked='yes'"; // TODO figure this out + $month = " selected='selected' "; } else { - $year = " checked='yes'"; // TODO figure this out + $year = " selected='selected' "; } echo "<select name='frequency'><option value='month' {$month}>{$strMonthly}</option>"; @@ -111,34 +123,15 @@ echo "</td></tr>"; echo "<tr><th>{$strOffset}</th><td><input type='text' id='date_offset' name='date_offset' value='{$saction->date_offset}' size='5' /> ({$strDays})</td></tr>"; echo "<tr><th>{$strTime}</th><td>"; - //<input type='text' id='date_time' name='date_time' value='{$saction->date_time}' size='5' /> - // TODO select based on DB - echo "<select name='date_time' id='date_time'>"; - echo "<option value='0'>{$strMidnight}</option>"; - echo "<option value='1'>1:00 AM</option>"; - echo "<option value='2'>2:00 AM</option>"; - echo "<option value='3'>3:00 AM</option>"; - echo "<option value='4'>4:00 AM</option>"; - echo "<option value='5'>5:00 AM</option>"; - echo "<option value='6'>6:00 AM</option>"; - echo "<option value='7'>7:00 AM</option>"; - echo "<option value='8'>8:00 AM</option>"; - echo "<option value='9'>9:00 AM</option>"; - echo "<option value='10'>10:00 AM</option>"; - echo "<option value='11'>11:00 AM</option>"; - echo "<option value='12'>12:00 PM</option>"; - echo "<option value='13'>1:00 PM</option>"; - echo "<option value='14'>2:00 PM</option>"; - echo "<option value='15'>3:00 PM</option>"; - echo "<option value='16'>4:00 PM</option>"; - echo "<option value='17'>5:00 PM</option>"; - echo "<option value='18'>6:00 PM</option>"; - echo "<option value='19'>7:00 PM</option>"; - echo "<option value='20'>8:00 PM</option>"; - echo "<option value='21'>9:00 PM</option>"; - echo "<option value='22'>10:00 PM</option>"; - echo "<option value='23'>11:00 PM</option>"; - echo "</select>"; + $dates = array(0 => $strMidnight, 1 => "1:00 AM", 2 => "2:00 AM", 3 => "3:00 AM", + 4 => "4:00 AM", 5 => "5:00 AM", 6 => "6:00 AM", 7 => "7:00 AM", 8 => "8:00 AM", + 9 => "9:00 AM", 10 => "10:00 AM", 11 => "11:00 AM", 12 => "12:00 PM", + 13 => "1:00 PM", 14 => "2:00 PM", 15 => "3:00 PM", + 16 => "4:00 PM", 17 => "5:00 PM", 18 => "6:00 PM", 19 => "7:00 PM", 20 => "8:00 PM", + 21 => "9:00 PM", 22 => "10:00 PM", 23 => "11:00 PM",); + $selected = substr($saction->date_time, 0, 2); + if ($selected[0] == '0') $selected = $selected[1]; + echo array_drop_down($dates, 'date_time', $selected); echo "</td></tr>"; echo "</tbody>"; @@ -161,7 +154,6 @@ if (!empty($_REQUEST['startdate'])) { - echo "moo"; $start = strtotime($_REQUEST['startdate'].' '.$_REQUEST['starttime']); $start = date('Y-m-d H:i', $start); } @@ -181,9 +173,10 @@ } $status = cleanvar($_REQUEST['status']); + $params = cleanvar($_REQUEST['params']); $interval = cleanvar($_REQUEST['interval']); - if ($interval <= 0) + if ($interval <= 0 AND $type == 'interval') { $status = 'disabled'; $interval = 0; @@ -194,7 +187,7 @@ $date_time = cleanvar($_REQUEST['date_time']); if ($date_time < 10) $date_time = "0{$date_time}:00:00"; - else "{$date_time}:00:00"; + else $date_time = "{$date_time}:00:00"; if ($type == 'interval') { @@ -319,16 +312,38 @@ echo "<td>"; if ($schedule->status == 'enabled') { + $starttime = mysql2date($schedule->start); if ($lastruntime > 0) { - $nextruntime = $lastruntime + $schedule->interval; + if ($schedule->type == 'interval') + { + $nextruntime = $lastruntime + $schedule->interval; + } + elseif ($schedule->type == 'date') + { + $nextruntime = 1; + // TODO + /* + if over schedule + now + else + find date + */ + } } else { - $nextruntime = $now; + if ($schedule->type == 'interval') + { + $nextruntime = $now; + } + elseif ($schedule->type == 'date') + { + $nextruntime = 1; + } } - echo ldate($CONFIG['dateformat_datetime'],$nextruntime); + echo ldate($CONFIG['dateformat_datetime'], $nextruntime); } else { Modified: trunk/includes/functions.inc.php =================================================================== --- trunk/includes/functions.inc.php 2008-08-10 12:03:25 UTC (rev 3897) +++ trunk/includes/functions.inc.php 2008-08-10 15:49:58 UTC (rev 3898) @@ -1254,28 +1254,23 @@ { $usekey = FALSE; } + foreach ($array AS $key => $value) { $value = htmlentities($value, ENT_COMPAT, $GLOBALS['i18ncharset']); if ($usekey) { $html .= "<option value='$key'"; - } - else - { - $html .= "<option value='$value'"; - } - - if ($usekey) - { - if ($key==$setting) + if ($key == $setting) { $html .= " selected='selected'"; } + } else { - if ($value==$setting) + $html .= "<option value='$value'"; + if ($value == $setting) { $html .= " selected='selected'"; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <iva...@us...> - 2008-08-13 10:25:32
|
Revision: 3899 http://sitracker.svn.sourceforge.net/sitracker/?rev=3899&view=rev Author: ivanlucas Date: 2008-08-13 10:25:29 +0000 (Wed, 13 Aug 2008) Log Message: ----------- Portuguese (pt-PT) translation by Jos?\195?\169 Tom?\195?\161s Modified Paths: -------------- trunk/doc/CREDITS trunk/includes/strings.inc.php Added Paths: ----------- trunk/includes/i18n/pt-PT.inc.php Modified: trunk/doc/CREDITS =================================================================== --- trunk/doc/CREDITS 2008-08-10 15:49:58 UTC (rev 3898) +++ trunk/doc/CREDITS 2008-08-13 10:25:29 UTC (rev 3899) @@ -27,4 +27,5 @@ Salford Software -- Sponsor, Design, Testing Kevin Shrimpton -- v1 Code Jenny Steward -- Testing -Andy Smith -- Code & Testing \ No newline at end of file +Andy Smith -- Code & Testing +José Tomás <jose.tomas[at]chico.mine.nu> -- Translation (Portuguese) \ No newline at end of file Added: trunk/includes/i18n/pt-PT.inc.php =================================================================== --- trunk/includes/i18n/pt-PT.inc.php (rev 0) +++ trunk/includes/i18n/pt-PT.inc.php 2008-08-13 10:25:29 UTC (rev 3899) @@ -0,0 +1,337 @@ +<?php +// SiT! Language File - Português (PT) by José Tomás <jose.tomas[at]chico.mine.nu> + +$languagestring='Português (PT)'; +$i18ncharset='UTF-8'; + +// list of strings (Alphabetical - ABCDEFGHIJKLMNOPQRSTUVWXYZ 0123456789) + +// Translation notes: +// 1 - Holiday in Portugal on a general porpose means a day from a bulk of days, that every year a worker can schedulle. Holiday booked or bank or even institutional has a literal meaning more like simple as "non-working day". The contexted tranlation for Holiday here been made. + +$str0MeansUnlimited = '0 Significa Sem Limite'; + +$strActual = 'Actual'; +# e.g. About this site, i.e. more information +$strAbout = 'Sobre'; +# e.g. Accepting incidents +$strAccepting = 'Aceitar'; +$strActionNeeded = 'Requer Acção'; +$strActionPlan = 'Plano de Acção'; +$strActionPlanBy = 'Acção planeada por %s'; +$strActive = 'Activo'; +$strActiveContracts = 'Contratos Activos'; +$strActivities = 'Actividades'; +$strActivity = 'Actividade'; +$strActivityAdded = 'Actividade Adicionada'; +$strActivityBilling = 'Actividade Billing'; +$strActivityBillingInfo = 'Apenas activifades fechadas são exibidias para billing.'; +$strActivityList = 'Lista de Actividades'; +$strActivityMarkedCompleteSuccessfully = 'Actividade Marcada Completa com Sucesso'; +# i.e. Create, New +$strAdd = 'Adicionar'; +$strAddContact = 'Adicionar Contacto'; +$strAddContract = 'Adicionar Contrato'; +$strAddContractConfirm = 'Tem a certeza que quer adicionar este contrato?'; +$strAdded = 'Adicionado'; +$strAddEmailConfirm = 'Tem a certeza que quer adicionar este tipo de email?'; +$strAddFeedbackForm = 'Adicionar Feedback Form'; +$strAddIncident = 'Adicionar Incidente'; +$strAdditionalInfo = 'Informação Adicional'; +$strAddKBArticle = 'Adicionar Artigo KnowledgeBase'; +$strAddLink = 'Adicionar Link'; +$strAddNew = 'Adicionar Novo'; +$strAddNote = 'Adicionar Nonta'; +$strAddProduct = 'Adicionar Produto'; +$strAddProductQuestion = 'Adicionar Questões de Produto'; +$strAddReseller = 'Adicionar Revendedor'; +$strAddress = 'Morada'; +$strAddress1 = 'Morada1'; +$strAddress2 = 'Morada2'; +$strAddServiceLevel = 'Adicionar Nível de Serviço'; +# i.e. Physical site +$strAddSite = 'Adicionar Site'; +$strAddSiteSupportIncident = 'Add Site Support Incident'; +$strAddSkill = 'Adicionar Competencia'; +$strAddTask = 'Adicionar Tarefa'; +$strAddTemplate = 'Adicionar Template'; +$strAddUser = 'Adicionar Utilizador'; +$strAddVendor = 'Adicionar Fornecedor'; +$strAdminContact = 'Contacto de Admin'; +$strAdvanced = 'Avançado'; +$strAfternoon = 'Tarde'; +$strAge = 'Idade'; +# e.g. 4 hours ago +$strAgo = '%s atrás'; +$strAll = 'Todos'; +$strAllClosed = 'Todos Fechados'; +$strAllDay = 'todo o dia'; +$strAllOpen = 'Todos Abertos'; +$strAllSiteContactsSupported = 'Contactos suportados\' por todos estes sites'; +# i.e. Sorted by alphabet +$strAlphabetically = 'Alfabéticamente'; +$strAlternative = 'Alternativa'; +# i.e. before noon +$strAM = 'am'; +$strAnswer = 'Pergunta'; +$strApprove = 'Aprove'; +$strApproveHolidays = 'Aprovar Férias'; +$strArticlesPublishedRecently = 'Artigos Publicados Recentemente'; +$strArticlesPublishedToday = 'Artigos Publicados Hoje'; +$strAssign = 'Assignar'; +$strAssignTemporarily = 'Assignar Temporariamente'; +$strAssignTo = 'Assignar a'; + +$strAtLunch = 'Em Almoço'; +$strAttachFile = 'Anexar Ficheiro'; +$strAttachment = 'Anexos'; +$strAuthor = 'Autor'; +$strAverageIncidentDuration = 'Duração Média de Incidente'; +$strAvoidDupes = 'Se possível, ajude a evitar dublicados verificando que se já existe o registo que pretende adicionar'; + +$strBackToList = 'Voltar à Lista'; +$strBillingCustomerPeriod = 'Período Cliente'; +$strBillingEngineerPeriod = 'Período Engenheiro'; +$strBookHoliday = 'Feriado Institucional'; +$strBoth = 'Ambos'; +$strBrowse = 'Navegar'; +$strBrowseContacts = 'Navegar contactos'; +$strBrowseContracts = 'Navegar contratos'; +$strBrowseContractsBySite = 'Navegar Contratos por Site'; +$strBrowseFeedback = 'Navegar feedbacks'; +$strBrowseFeedbackForms = 'Navegar Formulários de Feedback'; +$strBrowseKB = 'Navegar BaseDeConhecimento'; +$strBrowseSites = 'Navegar sites'; +$strBulkModify = 'Alteração Série'; +# e.g. Ordered By Product +$strByProduct = 'Por Produto'; + +$strCallFromCustomer = 'Chamadas do cliente'; +$strCallToCustomer = 'Chamadas para o cliente'; +$strCause = 'Causa'; +$strChange = 'Alterar'; +$strChangePassword = 'Alterar Password'; +$strChangeTemporaryOwner = 'Alterar responsável temporário'; + +$strChangingContact = 'Alterar o contacto ou habilitação não irá reatribuir este incidente a outro contrato.'; +$strChase = 'Perseguir'; +$strChased = 'Perseguido'; +$strChooseLanguage = 'P.f.f., escolha a sua lingua'; +$strCity = 'Cidade'; +# e.g. close an incident +$strClose = 'Fechar'; +# e.g. incident is closed +$strClosed = 'Encerrado'; +$strCloseImmediately = 'Encerrar imediatamente'; +$strCloseWindow = 'Encerrar Janela'; +# i.e. the status at the time of closure +$strClosingStatus = 'Fechar Estado'; +$strClosureRequested = 'Fecho Requerido'; +$strClosureRequestForIncident = 'Fecho Requerido por Incidente'; + +$strCollapseData = 'Colapso de Data'; +$strConfirmNewPassword = 'Confirme Password Nova'; +# noun, he is a contact +$strContact = 'Contacto'; +$strContactAddedSuccessfully = 'Contacto Adicionado com Sucesso'; +$strContinue = 'Continue'; +$strContactDetails = 'Detalhes do Contacto'; +$strContactRecordExists = 'O contacto já existe com esse sobrenome e enderesso e-mail.'; +$strContacts = 'Contactos'; +# e.g. 5 contacts +$strContactsMulti = '%d Contactos'; +# i.e. legal agreement +$strContract = 'Contrato'; +$strContractID = 'ID de Contrato'; +$strContractNum = 'Contrato %d'; +$strContracts = 'Contratos'; +$strControlPanel = 'Panel de Controlo'; +$strComplete = 'Completo'; +$strCompleted = 'Completed'; +$strCompletion = 'Completar'; +$strCreateNewForm = 'Ciar Novo Formulário'; +# e.g. film credits +$strCredits = 'Créditos'; +$strCriteria = 'Critério'; +$strCritical = 'Crítico'; +$strCustomer = 'Cliente'; +$strCustomerFeedback = 'Feedback do Cliente'; +$strCustomers = 'Clientes'; + +# Missing cultural and context understandment for "Compassionate" +$strCompassionateLeave = 'Deixar Maternidade/Paternidade/Compassivo'; +$strCountContractsByProduct = 'Contablizar contratos por produto'; +$strCounty = 'Condado'; +$strCountry = 'País'; +$strCreate = 'Criar'; +$strCurrentlyOpen = 'Em Aberto'; +$strCustomerExport = 'Exportar Cliente'; +$strCustomerImpact = 'Impacto Cliente'; +$strDataProtection = 'Protecção de dados'; +# i.e. 25th December +$strDate = 'Data'; +$strDateAndTime = 'Data and Hora'; +$strDatesNotYetApproved = 'Datas sem aprovação'; +$strDay = 'Dia'; +$strDays = 'Dias'; +$strdayssick = 'dias de saída por doença'; +$strdaysworkingaway = 'dias de trabalho fora'; +$strdaystraining = 'dias de formação'; +$strdaysother = 'dias de saida por outros motivos'; +$strDecline = 'Declinar'; +$strDefault = 'Por omissão'; +$strDefaultSubstitute = 'Substituto por omissão'; +$strEditHolidays = 'Editar Férias/Feriados'; +$strEditProfileFor = 'Editar perfil do Utilizador %s'; +$strEditProduct = 'Editar Produto'; +$strEditServiceLevel = 'Editar Nível de Serviço'; +$strEditSkill = 'Editar Habilitação'; +$strEditSite = 'Edita Site'; +$strEditTask = 'Edit Tarefa'; +$strEditTemplate = 'Edita Template'; +$strEditVendor = 'Editar Fornecedor'; +$strEditWatchedIncidents = 'Editar incidentes assinalados'; +$strEmailsentby = 'Email enviado pot %s'; +$strEmailreceivedby = 'Email recebido por %s'; +$strEmailSettings = 'Definições de Email'; +$strEmailSignature = 'Assinatura de Email'; + +$strFailed = 'Falhado'; +$strFeedbackForms = 'Formulários de Feedback'; +$strHoliday = 'Férias/Feriado'; +$strHolidayList = 'Lista de Feriados'; +$strHolidayAfternoon = 'Tolerância de ponte (tarde)'; +$strHolidayCancel = 'Cancelar Feriado/Ponte'; +$strHolidayFullDay = 'Atribuir Ponte'; +$strHolidayMorningOnly = 'Atribuir Ponte (manhã)'; +$strHolidays = 'Férias/Feriados'; +$strHolidayType = 'Tipo de \"Holiday\"'; +$strHours = 'Horas'; + +$strMyHolidays = 'Minhas Férias'; +$strMyProfile = 'Meu perfil'; + +$strSuccess = 'Sucesso'; +$strSuccessfully = 'Com Sucesso'; +$strSummary = 'Sumário'; +# Short for 'Sunday' +$strSun = 'Domingo'; +$strSunday = 'Domingo'; +$strSupport = 'Suporte'; +$strSupportedContacts = 'Contactos Suportados'; + +$strTable = 'Tabela'; +$strTarget = 'Alvo'; +$strTask = 'Tarefa'; +$strTasks = 'Tarefas'; +$strTaskList = 'Lista de Tarefas'; +$strTaskDeletedSuccessfully = 'Tarefa apagada com sucesso'; +$strTaskEditedSuccessfully = 'Tarefa editada com sucesso'; +$strTaskMarkedCompleteSuccessfully = 'Tarefa marcada completa com sucesso'; +$strTelephone = 'Telefone'; +$strTemporaryOwner = 'Dono Temporário'; +$strTemporarilyAssignedto = 'Temporáriamente atribuido a %s por %s'; +$strTerminated = 'Terminado'; +# Short for 'Thursday' +$strThu = 'Quinta'; +$strThursday = 'Quinta-feira'; +$strTime = 'Tempo'; +$strTimed = 'Temporizado'; +$strTimeToNextAction = 'Tempo Até à Acção Seguinte'; +$strTitle = 'Titlo'; +$strTo = 'Para'; +$strTodaysStats = 'Estatísticas de hoje'; +$strToday = 'Hoje'; +$strTotalMinutes = 'Total Minutos'; +$strTraining = 'Treino'; +$strTranslate = 'Translate'; +$strTranslation = 'Tradução'; +# Short for 'Tuesday' +$strTue = 'Terça'; +$strTuesday = 'Terça-feira'; +$strType = 'Tipo'; + +$strUpdate = 'Actualize'; +$strUpdated = 'actualizado'; +$strUpdatedAutomaticallyBy = 'Actualizado automáticamente por %s'; +$strUpdatedFromTask = 'Actualizado pela Tarefa'; +$strUpdateIncident = 'Actualizar Incidente'; +$strUpdateNewUpdate = 'Nova actualização (nenhuma das acima)'; +$strUpdates = 'Actualizações'; +$strUpdatedFromActivity = 'Actualizado a partir da Actividade por %s'; +$strUpdateSuccessful = 'Actualização com sucesso'; +$strUpdateType = 'Actualizar Tipo'; +$strUnknown = 'Desconhecido'; +$strUnlimited = 'Sem limite'; +$strUnlink = 'Sem ligação'; +$strUnlock = 'Desprotegido'; +$strUntitled = 'Sem título'; +$strUsed = 'Utilizado'; +$strUsedNofN = 'Utilizado %s de %s'; +$strUser = 'Utilizador'; +$strUserGroups = 'Grupos de utilizadores'; +$strUsername = 'Nome de Utilizador'; +$strUsers = 'Utilizadores'; +$strUsersHolidays = '%s\'s Férias/Feriados'; +$strUserStillAway = 'Seu estado definido actualmente não é \"In Office\", pode mudar na base da página frontal'; +$strUserIncidents = 'Incidente de %s'; +$strUsersNoGroup = 'Utilizadores sem grupo'; +$strUsersTasks = 'Tarefas de %s'; +$strUsersBoldSkills = 'Utilizadores a bold são conhecidos por terem ablitações relevantes'; +$strUseThisInFuture = 'Use no futuro'; + + +$strValue = 'Valor'; +$strVariable = 'Variável'; +$strVendor = 'Vendedor'; +$strVersion = 'Versão'; +$strView = 'Vista'; +$strViewIncidents = 'Vêr Incidentes'; +$strViewResponse = 'Vêr Resposta'; +$strViewTask = 'Vêr Tarefa'; +$strViewTasks = 'Vêr Tarefas'; +$strViewUsers = 'Vêr Utilisadores'; +$strVisibleToCustomer = 'Visible To Customer'; +$strVisibility = 'Visiblidade'; + +$strWaiting = 'A aguardar'; +$strWarning = 'Alerta'; +$strWatchAddFailed = 'Façlha em adicionar alerta'; +$strWatchAddSet = 'Adicionar novo conjunto de alertas'; +$strWatchDeleteFailed = 'Falhou remoção de alerta'; +#To Watch Incidents: +#$strWatchIncidents = 'Ver alertas'; +#Items Watch Incidents +$strWatchIncidents = 'Alertas'; +$strWatchIncidentsAdded = 'Alerta adicionado'; +$strWatchIncidentsRemovalSucceded = 'Remoção de alertas com sucesso'; +$strWatchingAll = 'Ver todos os alertas'; +$strWebupdate = 'Actualização da Web'; +$strWeek = 'Semana'; +# Short for 'Wednesday' +$strWeds = 'Quartas'; +$strWednesday = 'Quarta-Feira'; +$strWelcome = 'Bem Vindo'; +$strWhosAwayToday = 'Hoje, quem está fora?'; +$strWorkaround = 'Workaround'; +$strWorkAroundsAttempted = 'Workarounds tentados'; +$strWorkAroundsAttemptedEngineerText = 'Que foi feito pelo cliente para obter uma solução? Que alterações de configuração foram feitas? Que patches/service packs foram instalados?'; +$strWorkAroundsAttemptedCustomerText = 'Que foi feito para obter uma solução? Que alterações de configuração foram feitas? Que patches/service packs foram instalados?'; +$strWorkingAway = 'Trabalhando fora'; +$strWorkingFromHome = 'Trabalhando de casa'; +$strWorkStatus = 'Estado do Trabalho'; +$strWithheld = 'Retido'; + +$strYear = 'Ano'; +$strYes = 'Sim'; +$strYesterday = 'Ontem'; +$strYou = 'Voçê'; +$strYourClosedIncidents = 'Seus Incidentes Fechados'; +$strYourCurrentIncidents = 'Seus Incidentes Actuais'; +$strYourCurrentOpenIncidents = 'Seus Incidentes Actuais Abertos'; +$strYourCurrentLanguage = 'Linguagem currente difere da que está registada no seu perfil'; +$strYourDetails = 'Seus Detalhes'; +$strYourSupportEntitlement = 'Suas condições de support'; + +$strZeroRemaining = 'Restam zero'; +?> \ No newline at end of file Property changes on: trunk/includes/i18n/pt-PT.inc.php ___________________________________________________________________ Added: svn:mime-type + text/plain Added: svn:eol-style + native Modified: trunk/includes/strings.inc.php =================================================================== --- trunk/includes/strings.inc.php 2008-08-10 15:49:58 UTC (rev 3898) +++ trunk/includes/strings.inc.php 2008-08-13 10:25:29 UTC (rev 3899) @@ -233,6 +233,7 @@ 'ja-JP' => '日本語', 'it-IT' => 'Italiano', 'lt-LT' => 'Lietuvių', + 'pt-PT' => 'Português', 'cy-GB' => 'Cymraeg' ); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <pau...@us...> - 2008-08-16 17:31:15
|
Revision: 3905 http://sitracker.svn.sourceforge.net/sitracker/?rev=3905&view=rev Author: paulheaney Date: 2008-08-16 17:31:12 +0000 (Sat, 16 Aug 2008) Log Message: ----------- * Resolve mantis 151 Next Action due now rather than just displaying next action * Couple of spaces * A odd i18n Modified Paths: -------------- trunk/htdocs/incident/details.inc.php trunk/htdocs/incidents_table.inc.php trunk/includes/i18n/en-GB.inc.php Modified: trunk/htdocs/incident/details.inc.php =================================================================== --- trunk/htdocs/incident/details.inc.php 2008-08-15 10:16:41 UTC (rev 3904) +++ trunk/htdocs/incident/details.inc.php 2008-08-16 17:31:12 UTC (rev 3905) @@ -137,7 +137,7 @@ // Show sla target/review target if incident is still open if ($incident->status != 2 AND $incident->status!=7) { - if ($slaremain<>0) + if ($targettype != '') { if ($slaremain > 0) { @@ -147,8 +147,13 @@ { echo " ".sprintf($strSLAXLate, $targettype, format_workday_minutes((0-$slaremain))); } + else + { + echo " ".sprintf($strSLAXDueNow , $targettype); + } } - if ($reviewremain>0 && $reviewremain<=2400) + + if ($reviewremain > 0 && $reviewremain <= 2400) { // Only display if review is due in the next five days if ($slaremain<>0) echo "<br />"; // only need a line sometimes @@ -169,19 +174,19 @@ if (mysql_error()) trigger_error(mysql_error(),E_USER_WARNING); if (mysql_num_rows($rresult) >= 1) { - echo "<tr><td colspan='2'>Relations: "; + echo "<tr><td colspan='2'>{$strRelations}: "; while ($related = mysql_fetch_object($rresult)) { - if ($related->relatedid==$id) + if ($related->relatedid == $id) { - if ($related->relation=='child') $linktitle='Child'; + if ($related->relation == 'child') $linktitle='Child'; else $linktitle='Sibling'; $linktitle .= ": ".incident_title($related->incidentid); echo "<a href='incident_details.php?id={$related->incidentid}' title='$linktitle'>{$related->incidentid}</a> "; } else { - if ($related->relation=='child') $linktitle='Parent'; + if ($related->relation == 'child') $linktitle='Parent'; else $linktitle='Sibling'; $linktitle .= ": ".incident_title($related->relatedid); echo "<a href='incident_details.php?id={$related->relatedid}' title='$linktitle'>{$related->relatedid}</a> "; Modified: trunk/htdocs/incidents_table.inc.php =================================================================== --- trunk/htdocs/incidents_table.inc.php 2008-08-15 10:16:41 UTC (rev 3904) +++ trunk/htdocs/incidents_table.inc.php 2008-08-16 17:31:12 UTC (rev 3905) @@ -100,8 +100,8 @@ { $updated = "{$strYesterday} @ ".ldate($CONFIG['dateformat_time'], $incidents['lastupdated']); } - elseif ($incidents['lastupdated'] < $now-86400 AND - $incidents['lastupdated'] > $now-(86400*6)) + elseif ($incidents['lastupdated'] < $now - 86400 AND + $incidents['lastupdated'] > $now - (86400 * 6)) { $updated = ldate('l', $incidents['lastupdated'])." @ ".ldate($CONFIG['dateformat_time'], $incidents['lastupdated']); } @@ -349,15 +349,19 @@ $targettype = target_type_name($target->type); if ($targettype != '') { - echo $targettype; + echo $targettype; //FIXME this needs to be properly i18n'ed if ($slaremain > 0) { echo "<br />in ".format_workday_minutes($slaremain); // ." left" } elseif ($slaremain < 0) { - echo "<br />".format_workday_minutes((0 - $slaremain))." late"; // ." left" + echo "<br />".sprintf($strXLate, format_workday_minutes((0 - $slaremain))); // ." left" } + elseif ($slaremain == 0) + { + echo "<br />{$strDueNow}"; + } } else { Modified: trunk/includes/i18n/en-GB.inc.php =================================================================== --- trunk/includes/i18n/en-GB.inc.php 2008-08-15 10:16:41 UTC (rev 3904) +++ trunk/includes/i18n/en-GB.inc.php 2008-08-16 17:31:12 UTC (rev 3905) @@ -380,6 +380,7 @@ $strDraftEdit = 'Edit Draft'; $strDraftLastSaved = 'Draft last saved'; $strDueDate = 'Due Date'; +$strDueNow = 'Due Now'; # the noun; 'a duplicate' $strDuplicate = 'Duplicate'; $strDurability = 'Durability'; @@ -1190,6 +1191,7 @@ $strSLAApproaching = 'SLA approaching'; $strSLAby = 'SLA: %s by %s'; $strSLADue = 'SLA due'; +$strSLAXDueNow = '%s due now'; #E.g. Initial Response in 3 hours $strSLAInX = '%s in %s'; #E.g. Initial Response 3 hours late @@ -1427,12 +1429,13 @@ $strWebsite = 'Website'; $strWithheld = 'Withheld'; +$strXDays = '%s Days'; $strXIncidentsLoggedViaPortal = '%s Incidents Logged via the Portal'; $strXIncidentsLeft = '%s Incidents Left'; -$strXDays = '%s Days'; $strXHasAction = '%s Has Action'; $strXHour = '%s Hour'; $strXHours = '%s Hours'; +$strXLate = '%s late'; $strXMinutes = '%s Minutes'; # e.g. '5 days old' $strXold = '%s old'; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <pau...@us...> - 2008-08-17 18:39:05
|
Revision: 3906 http://sitracker.svn.sourceforge.net/sitracker/?rev=3906&view=rev Author: paulheaney Date: 2008-08-17 18:39:02 +0000 (Sun, 17 Aug 2008) Log Message: ----------- * Store the person and time a reason was added to a incoming email (Mantis 152) Modified Paths: -------------- trunk/htdocs/incident/incoming.inc.php trunk/htdocs/review_incoming_updates.php trunk/htdocs/setup-schema.php trunk/includes/i18n/en-GB.inc.php Modified: trunk/htdocs/incident/incoming.inc.php =================================================================== --- trunk/htdocs/incident/incoming.inc.php 2008-08-16 17:31:12 UTC (rev 3905) +++ trunk/htdocs/incident/incoming.inc.php 2008-08-17 18:39:02 UTC (rev 3906) @@ -21,7 +21,9 @@ if ($_REQUEST['action'] == "updatereason") { $newreason = cleanvar($_REQUEST['newreason']); - $update = "UPDATE `{$dbTempIncoming}` SET reason='{$newreason}' WHERE id={$incomingid}"; + $updatetime = date('Y-m-d H:i:s',$now); + $update = "UPDATE `{$dbTempIncoming}` SET reason='{$newreason}', "; + $update .= "reason_user='{$sit['2']}', reason_time='{$updatetime}' WHERE id={$incomingid}"; $result = mysql_query($update); if (mysql_error()) trigger_error(mysql_error(),E_USER_ERROR); unset($result); @@ -51,20 +53,24 @@ $lockedbyresult = mysql_query($lockedbysql); if (mysql_error()) trigger_error("MySQL Query Error ".mysql_error(), E_USER_WARNING); while ($row = mysql_fetch_object($lockedbyresult)) + { $lockedbyname = $row->realname; + } } else + { $lockedbyname = "you"; + } echo "<div class='detailinfo'>"; if ($lockedbyname == "you") { - echo "<div class='detaildate'> - <form method='post' action='{$_SERVER['PHP_SELF']}?id={$incomingid}&win=incomingview&action=updatereason'> - {$strMessage}: <input name='newreason' type='text' value=\"{$incoming->reason}\" size='25' maxlength='100' /> - <input type='submit' value='{$strSave}' /> - </form> - </div>"; + echo "<div class='detaildate'>"; + echo "<form method='post' action='{$_SERVER['PHP_SELF']}?id={$incomingid}&win=incomingview&action=updatereason'>"; + echo "{$strMessage}: <input name='newreason' type='text' value=\"{$incoming->reason}\" size='25' maxlength='100' />"; + echo "<input type='submit' value='{$strSave}' />"; + echo "</form>"; + echo "</div>"; } else { @@ -91,7 +97,12 @@ echo "</div>"; } -} else echo "<p class='error'>{$strNoRecords}</p>"; +} +else +{ + echo "<p class='error'>{$strNoRecords}</p>"; +} + unset($result); unset($uresult); Modified: trunk/htdocs/review_incoming_updates.php =================================================================== --- trunk/htdocs/review_incoming_updates.php 2008-08-16 17:31:12 UTC (rev 3905) +++ trunk/htdocs/review_incoming_updates.php 2008-08-17 18:39:02 UTC (rev 3906) @@ -41,7 +41,7 @@ $updatebodytext = htmlspecialchars(str_replace($search, $replace, $updatebodytext)); if ($updatebodytext == '') $updatebodytext = ' '; - $shade='shade1'; + $shade = 'shade1'; if (!empty($update['fromaddr'])) { // Have a look if we've got a customer or user with this email address @@ -83,10 +83,14 @@ $html_row.="<td width='20%'><a href=\"javascript:incident_details_window('{$update['tempid']}','incomingview');\" id='update{$update['id']}' class='info'>"; // $html_row.="<td width='20%'><a href=\"javascript:void(0);\" id='update{$update['id']}' class='info' style='cursor:help;'>"; - if (empty($update['subject'])) $update['subject'] = $strUntitled; + if (empty($update['subject'])) $update['subject'] = $GLOBALS['strUntitled']; $html_row .= htmlentities($update['subject'],ENT_QUOTES, $GLOBALS['i18ncharset']); $html_row .= '<span>'.parse_updatebody($updatebodytext).'</span></a></td>'; - $html_row .= "<td align='center' width='20%'>{$update['reason']}</td>"; + + $span = sprintf($GLOBALS['strByX'], user_realname($update['reason_user']))."<br />"; + $span .= sprintf($GLOBALS['strOnxAtY'], ldate($CONFIG['dateformat_date'], mysql2date($update['reason_time'])), ldate($CONFIG['dateformat_time'], mysql2date($update['reason_time']))); + + $html_row .= "<td align='center' width='20%'><a class='info'>{$update['reason']}<span>{$span}</span></a></td>"; $html_row .= "<td align='center' width='20%'>"; if (($update['locked'] != $sit[2]) && ($update['locked'] > 0)) { @@ -108,6 +112,7 @@ return $html_row; } + function deldir($location) { if (substr($location,-1) <> "/") @@ -236,7 +241,7 @@ // extract updates $sql = "SELECT u.id AS id, u.bodytext AS bodytext, ti.emailfrom AS emailfrom, ti.subject AS subject, "; $sql .= "u.timestamp AS timestamp, ti.incidentid AS incidentid, ti.id AS tempid, ti.locked AS locked, "; -$sql .= "ti.reason AS reason, ti.contactid AS contactid, ti.`from` AS fromaddr "; +$sql .= "ti.reason AS reason, ti.reason_user AS reason_user, ti.reason_time AS reason_time, ti.contactid AS contactid, ti.`from` AS fromaddr "; $sql .= "FROM `{$dbUpdates}` AS u, `{$dbTempIncoming}` AS ti "; $sql .= "WHERE u.incidentid = 0 AND ti.updateid = u.id "; $sql .= "ORDER BY timestamp ASC, id ASC"; @@ -484,7 +489,7 @@ $rhtml .= "<a href=\"javascript:wt_winpopup('reassign_incident.php?id={$assign->id}&reason={$reason}&asktemp=temporary&popup=yes','mini');\" title='Re-assign this incident to another engineer'>Assign to other</a> | <a href='set_user_status.php?mode=deleteassign&incidentid={$assign->incidentid}&originalowner={$assign->originalowner}' title='Ignore this reassignment and delete this notice'>Ignore</a></td>"; $rhtml .= "</tr>\n"; } - elseif ($assign->owner != $assign->originalowner AND $useraccepting =='yes') + elseif ($assign->owner != $assign->originalowner AND $useraccepting == 'yes') { $show = TRUE; // display a row to assign the incident back to the original owner @@ -509,12 +514,11 @@ } $rhtml .= "</table>\n"; } + if ($show) { echo $rhtml; } -// TODO v3.2x Merge the sections into a single queue using an array - include ('htmlfooter.inc.php'); ?> Modified: trunk/htdocs/setup-schema.php =================================================================== --- trunk/htdocs/setup-schema.php 2008-08-16 17:31:12 UTC (rev 3905) +++ trunk/htdocs/setup-schema.php 2008-08-17 18:39:02 UTC (rev 3906) @@ -1265,6 +1265,8 @@ `locked` tinyint(4) default NULL, `lockeduntil` datetime default NULL, `reason` varchar(255) default NULL, + `reason_user` int(11) NOT NULL, + `reason_time` datetime NOT NULL, `contactid` int(11) default NULL, PRIMARY KEY (`id`), KEY `updateid` (`updateid`) @@ -2381,6 +2383,10 @@ -- INL 2008-07-21 ALTER TABLE `{$dbEscalationPaths}` ADD `type` ENUM( 'internal', 'external' ) NOT NULL DEFAULT 'internal' AFTER `name` ; +-- PH 2008-08-17 +ALTER TABLE `{$dbTempIncoming}` ADD `reason_user` INT NOT NULL AFTER `reason` , +ADD `reason_time` DATETIME NOT NULL AFTER `reason_user` ; + "; // Important: When making changes to the schema you must add SQL to make the alterations Modified: trunk/includes/i18n/en-GB.inc.php =================================================================== --- trunk/includes/i18n/en-GB.inc.php 2008-08-16 17:31:12 UTC (rev 3905) +++ trunk/includes/i18n/en-GB.inc.php 2008-08-17 18:39:02 UTC (rev 3906) @@ -218,6 +218,8 @@ $strByDate = 'By Date'; $strBySLA = 'By SLA'; $strByVendor = 'By Vendor'; +# e.g. By: Joe Bloggs +$strByX = 'By: %s'; $strCalendar = 'Calendar'; # incident status: e.g. Made a phone call and left a message @@ -930,6 +932,8 @@ $strOnline = 'Online'; $strOnlyShowNewerThan = 'Only show newer than %d days old'; $strOnTrainingCourse = 'On Training Course'; +# e.g. on 16 July at 8:00am +$strOnxAtY = 'On %s at %s'; $strOpen = 'Open'; $strOpened = 'Opened'; $strOpenActivities = 'Open Activities'; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <pau...@us...> - 2008-08-18 19:48:04
|
Revision: 3907 http://sitracker.svn.sourceforge.net/sitracker/?rev=3907&view=rev Author: paulheaney Date: 2008-08-18 19:47:55 +0000 (Mon, 18 Aug 2008) Log Message: ----------- * Interface and schema for adding a free of charge services (Start of Mantis 153) Unsure of wording comments please Modified Paths: -------------- trunk/htdocs/billing/addservice.php trunk/htdocs/setup-schema.php trunk/includes/i18n/en-GB.inc.php Modified: trunk/htdocs/billing/addservice.php =================================================================== --- trunk/htdocs/billing/addservice.php 2008-08-17 18:39:02 UTC (rev 3906) +++ trunk/htdocs/billing/addservice.php 2008-08-18 19:47:55 UTC (rev 3907) @@ -110,6 +110,11 @@ echo "<tr id='incidentratesection' style='display:none'><th>{$strIncidentRate}</th>"; echo "<td>{$CONFIG['currency_symbol']} <input type='text' name='incidentrate' size='5' />"; echo "</td></tr>"; + + echo "<tr>"; + echo "<th>{$strFreeOfCharge}</th>"; + echo "<td><input type='checkbox' id='foc' name='foc' value='yes' /> {$strAboveMustBeCompletedToAllowDeductions}</td>"; + echo "</tr>"; echo "</tbody>"; //FIXME not XHTML @@ -148,12 +153,14 @@ $billtype = cleanvar($_REQUEST['billtype']); $notes = cleanvar($_REQUEST['notes']); + $foc = cleanvar($_REQUEST['foc']); + if (empty($foc)) $foc = 'no'; if ($billtype == 'billperunit') $incidentrate = 0; elseif ($billtype == 'billperincident') $unitrate = 0; - $sql = "INSERT INTO `{$dbService}` (contractid, startdate, enddate, creditamount, unitrate, incidentrate, notes) "; - $sql .= "VALUES ('{$contractid}', '{$startdate}', '{$enddate}', '{$amount}', '{$unitrate}', '{$incidentrate}', '{$notes}')"; + $sql = "INSERT INTO `{$dbService}` (contractid, startdate, enddate, creditamount, unitrate, incidentrate, notes, foc) "; + $sql .= "VALUES ('{$contractid}', '{$startdate}', '{$enddate}', '{$amount}', '{$unitrate}', '{$incidentrate}', '{$notes}', '{$foc}')"; mysql_query($sql); if (mysql_error()) trigger_error(mysql_error(),E_USER_ERROR); Modified: trunk/htdocs/setup-schema.php =================================================================== --- trunk/htdocs/setup-schema.php 2008-08-17 18:39:02 UTC (rev 3906) +++ trunk/htdocs/setup-schema.php 2008-08-18 19:47:55 UTC (rev 3907) @@ -1074,7 +1074,8 @@ `billingmatrix` int(11) NOT NULL default '1', `priority` smallint(6) NOT NULL default '0', `notes` TEXT NOT NULL, - PRIMARY KEY (`serviceid`) + `foc` enum('yes','no') NOT NULL default 'no' COMMENT 'Free of charge (customer not charged)', + PRIMARY KEY (`serviceid`) ) ENGINE=MyISAM; @@ -2387,6 +2388,8 @@ ALTER TABLE `{$dbTempIncoming}` ADD `reason_user` INT NOT NULL AFTER `reason` , ADD `reason_time` DATETIME NOT NULL AFTER `reason_user` ; +-- PH 2008-08-18 +ALTER TABLE `{$dbService}` ADD `foc` ENUM( 'yes', 'no' ) NOT NULL DEFAULT 'no' COMMENT 'Free of charge (customer not charged)'; "; // Important: When making changes to the schema you must add SQL to make the alterations Modified: trunk/includes/i18n/en-GB.inc.php =================================================================== --- trunk/includes/i18n/en-GB.inc.php 2008-08-17 18:39:02 UTC (rev 3906) +++ trunk/includes/i18n/en-GB.inc.php 2008-08-18 19:47:55 UTC (rev 3907) @@ -24,6 +24,7 @@ # e.g. About John Smith $strAboutPerson = 'About %s'; $strAboutXMinutesAgo = 'About %d Mins Ago'; +$strAboveMustBeCompletedToAllowDeductions = 'Above must be completed to allow deductions'; $strAbsentSick = 'Absent Sick'; $strAcceptingIncidents = 'Accepting Incidents'; $strActual = 'Actual'; @@ -523,6 +524,7 @@ $strForRefundsThisShouldBeNegative = 'For refunds this should be negative'; $strForwardOneYear = 'Forward One Year'; $strForXDaysHoursMinutes = 'For <em>x</em> days, hours, minutes'; +$strFreeOfCharge = 'Free of Charge'; $strFrequency = 'Frequency'; # Short for 'Friday' $strFri = 'Fri'; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <pau...@us...> - 2008-08-18 20:03:58
|
Revision: 3908 http://sitracker.svn.sourceforge.net/sitracker/?rev=3908&view=rev Author: paulheaney Date: 2008-08-18 20:03:47 +0000 (Mon, 18 Aug 2008) Log Message: ----------- reporting part for Mantis 143 Modified Paths: -------------- trunk/htdocs/billable_incidents.php trunk/htdocs/billing/summary.php trunk/htdocs/transactions.php trunk/includes/functions.inc.php trunk/includes/i18n/en-GB.inc.php Modified: trunk/htdocs/billable_incidents.php =================================================================== --- trunk/htdocs/billable_incidents.php 2008-08-18 19:47:55 UTC (rev 3907) +++ trunk/htdocs/billable_incidents.php 2008-08-18 20:03:47 UTC (rev 3908) @@ -89,15 +89,15 @@ echo "<table align='center'>"; echo "<tr><th>{$strType}:</th><td>"; - echo "<input type='radio' name='mode' value='summarypage' id='summarypage' onclick=\"$('startdatesection').hide(); $('enddatesection').hide(); $('sitebreakdownsection').hide(); $('displaysection').show(); $('showapprovedsection').hide();\" checked='checked' />{$strSummary} "; + echo "<input type='radio' name='mode' value='summarypage' id='summarypage' onclick=\"$('startdatesection').hide(); $('enddatesection').hide(); $('sitebreakdownsection').hide(); $('displaysection').show(); $('showapprovedsection').hide(); $('showfoc').show();\" checked='checked' />{$strSummary} "; if (user_permission($sit[2], 73) == TRUE) { - echo "<input type='radio' name='mode' value='approvalpage' id='approvalpage' onclick=\"$('startdatesection').show(); $('enddatesection').show(); $('sitebreakdownsection').hide(); $('displaysection').hide(); $('showapprovedsection').show();\" />{$strApprove} "; + echo "<input type='radio' name='mode' value='approvalpage' id='approvalpage' onclick=\"$('startdatesection').show(); $('enddatesection').show(); $('sitebreakdownsection').hide(); $('displaysection').hide(); $('showapprovedsection').show(); $('showfoc').hide();\" />{$strApprove} "; } if (user_permission($sit[2], 76) == TRUE) { - echo "<input type='radio' name='mode' value='transactions' id='transactions' onclick=\"$('startdatesection').show(); $('enddatesection').show(); $('sitebreakdownsection').show(); $('displaysection').show(); $('showapprovedsection').hide();\" />{$strTransactions} "; + echo "<input type='radio' name='mode' value='transactions' id='transactions' onclick=\"$('startdatesection').show(); $('enddatesection').show(); $('sitebreakdownsection').show(); $('displaysection').show(); $('showapprovedsection').hide(); $('showfoc').show();\" />{$strTransactions} "; } echo "</td></tr>\n"; @@ -118,6 +118,9 @@ echo "<td><input type='checkbox' name='showonlyapproved' value='true' checked='checked' />"; echo "</td></tr></tbody>\n"; + echo "<tbody id='showfoc'><tr><th>{$strShowFreeOfCharge}</th>"; + echo "<td><input type='checkbox' id='foc' name='foc' value='show' checked /></td></tr></tbody>"; + echo "<tbody id='displaysection' ><tr><th>{$strOutput}:</th>"; echo "<td><input type='radio' name='display' value='html' checked='checked' /> {$strScreen}"; echo "<input type='radio' name='display' value='csv' /> $strCSVfile "; Modified: trunk/htdocs/billing/summary.php =================================================================== --- trunk/htdocs/billing/summary.php 2008-08-18 19:47:55 UTC (rev 3907) +++ trunk/htdocs/billing/summary.php 2008-08-18 20:03:47 UTC (rev 3908) @@ -20,6 +20,7 @@ require_once('auth.inc.php'); $display = cleanvar($_REQUEST['display']); +$showfoc = cleanvar($_REQUEST('foc')); if (empty($display)) $display = 'html'; @@ -27,6 +28,11 @@ $sql .= "FROM `{$dbMaintenance}` AS m, `{$dbServiceLevels}` AS sl, `{$dbService}` AS s, `{$dbSites}` AS site "; $sql .= "WHERE m.servicelevelid = sl.id AND sl.timed = 'yes' AND m.id = s.contractid AND m.site = site.id "; +if (empty($showfoc) OR $showfoc != 'show') +{ + $sql .= "AND s.foc = 'no' "; +} + $sitestr = ''; $csv_currency = html_entity_decode($CONFIG['currency_symbol'], ENT_NOQUOTES, "ISO-8859-15"); // Note using -15 as -1 doesnt support euro Modified: trunk/htdocs/transactions.php =================================================================== --- trunk/htdocs/transactions.php 2008-08-18 19:47:55 UTC (rev 3907) +++ trunk/htdocs/transactions.php 2008-08-18 20:03:47 UTC (rev 3908) @@ -31,7 +31,11 @@ $sites = $_REQUEST['sites']; $display = cleanvar($_REQUEST['display']); if (empty($display)) $display = 'html'; +$showfoc = cleanvar($_REQUEST['foc']); +if (empty($showfoc) OR $showfoc != 'show') $showfoc = FALSE; +else $showfoc = TRUE; + $sitebreakdown = $_REQUEST['sitebreakdown']; if (!empty($enddate)) @@ -45,7 +49,7 @@ if ($sitebreakdown == 'on') $sitebreakdown = TRUE; else $sitebreakdown = FALSE; -$text = transactions_report($serviceid, $startdate, $enddate, $sites, $display, $sitebreakdown); +$text = transactions_report($serviceid, $startdate, $enddate, $sites, $display, $sitebreakdown, $showfoc); if ($display == 'html') { Modified: trunk/includes/functions.inc.php =================================================================== --- trunk/includes/functions.inc.php 2008-08-18 19:47:55 UTC (rev 3907) +++ trunk/includes/functions.inc.php 2008-08-18 20:03:47 UTC (rev 3908) @@ -10376,9 +10376,10 @@ * @param int[] $sites - Array of sites to report on * @param String $display either csv or html * @param boolean $sitebreakdown - Breakdown per site + * @param boolean showfoc - Show free of charge as well (defaults to true); * @return String -either HTML or CSV */ -function transactions_report($serviceid, $startdate, $enddate, $sites, $display, $sitebreakdown=TRUE) +function transactions_report($serviceid, $startdate, $enddate, $sites, $display, $sitebreakdown=TRUE, $showfoc=TRUE) { global $CONFIG; @@ -10393,6 +10394,8 @@ if (!empty($startdate)) $sql .= "AND t.date >= '{$startdate}' "; if (!empty($enddate)) $sql .= "AND t.date <= '{$enddate}' "; + if (!showfoc) $sql .= "AND s.foc = 'no' "; + if (!empty($sites)) { $sitestr = ''; Modified: trunk/includes/i18n/en-GB.inc.php =================================================================== --- trunk/includes/i18n/en-GB.inc.php 2008-08-18 19:47:55 UTC (rev 3907) +++ trunk/includes/i18n/en-GB.inc.php 2008-08-18 20:03:47 UTC (rev 3908) @@ -1162,6 +1162,7 @@ $strShowingAllClosedIncidents = 'Showing all closed incidents'; $strShowingXtoXofX = 'Showing %s to %s of %s'; $strShowingOnlyRelevantArticles = 'Showing only relevant articles'; +$strShowFreeOfCharge = 'Show Free of Charge'; $strShowMine = 'Show Mine'; $strShowOnlyRelevant = 'Show only relevant'; $strShowOpenIncidents = 'Show open incidents'; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kie...@us...> - 2008-08-19 19:46:15
|
Revision: 3913 http://sitracker.svn.sourceforge.net/sitracker/?rev=3913&view=rev Author: kieran_hogg Date: 2008-08-19 19:46:11 +0000 (Tue, 19 Aug 2008) Log Message: ----------- test fix for mantis 156, please test Modified Paths: -------------- trunk/htdocs/add_incident.php trunk/htdocs/setup-schema.php trunk/includes/i18n/en-GB.inc.php trunk/includes/triggertypes.inc.php Modified: trunk/htdocs/add_incident.php =================================================================== --- trunk/htdocs/add_incident.php 2008-08-19 18:28:33 UTC (rev 3912) +++ trunk/htdocs/add_incident.php 2008-08-19 19:46:11 UTC (rev 3913) @@ -540,6 +540,10 @@ echo "<tr><th>{$strVisibleToCustomer}".help_link('VisibleToCustomer')."</th>\n"; echo "<td><label><input name='cust_vis' type='checkbox' checked='checked' /> {$strVisibleToCustomer}</label>"; echo "</td></tr>\n"; + echo "<tr><th>{$strSendOpeningEmail}</th>\n"; + echo "<td><label for='send_email'><input name='send_email' "; + echo "type='checkbox' checked='checked' />"; + echo "{$strSendOpeningEmailDesc}</label></td></tr>\n"; } echo "<tr><th>{$strPriority}</th><td>".priority_drop_down("priority", 1, 4, FALSE)." </td></tr>"; echo "</table>\n"; @@ -575,6 +579,14 @@ $productservicepacks = cleanvar($_REQUEST['productservicepacks']); $bodytext = cleanvar($_REQUEST['bodytext']); $cust_vis = $_REQUEST['cust_vis']; + if ($_REQUEST['send_email']) == 'on') + { + $send_email = 1; + } + else + { + $send_email = 0; + } // check form input $errors = 0; @@ -877,7 +889,7 @@ } echo "</table>"; echo "<p align='center'>{$strUsersBoldSkills}.</p>"; - trigger('TRIGGER_INCIDENT_CREATED', array('incidentid' => $incidentid)); + trigger('TRIGGER_INCIDENT_CREATED', array('incidentid' => $incidentid, 'sendemail' => $send_email)); } else { Modified: trunk/htdocs/setup-schema.php =================================================================== --- trunk/htdocs/setup-schema.php 2008-08-19 18:28:33 UTC (rev 3912) +++ trunk/htdocs/setup-schema.php 2008-08-19 19:46:11 UTC (rev 3913) @@ -1297,7 +1297,7 @@ ) ENGINE=MyISAM; INSERT INTO `{$dbTriggers}` (`triggerid`, `userid`, `action`, `template`, `parameters`, `checks`) VALUES('TRIGGER_INCIDENT_CREATED', 0, 'ACTION_JOURNAL', 0, '', ''); -INSERT INTO `{$dbTriggers}` (`triggerid`, `userid`, `action`, `template`, `parameters`, `checks`) VALUES('TRIGGER_INCIDENT_CREATED', 0, 'ACTION_EMAIL', 'EMAIL_INCIDENT_LOGGED_CONTACT', '', ''); +INSERT INTO `{$dbTriggers}` (`triggerid`, `userid`, `action`, `template`, `parameters`, `checks`) VALUES('TRIGGER_INCIDENT_CREATED', 0, 'ACTION_EMAIL', 'EMAIL_INCIDENT_LOGGED_CONTACT', '', '{sendemail} == 1'); INSERT INTO `{$dbTriggers}` (`triggerid`, `userid`, `action`, `template`, `parameters`, `checks`) VALUES('TRIGGER_INCIDENT_ASSIGNED', 0, 'ACTION_JOURNAL', 0, '', ''); INSERT INTO `{$dbTriggers}` (`triggerid`, `userid`, `action`, `template`, `parameters`, `checks`) VALUES('TRIGGER_INCIDENT_NEARING_SLA', 0, 'ACTION_JOURNAL', 0, '', ''); INSERT INTO `{$dbTriggers}` (`triggerid`, `userid`, `action`, `template`, `parameters`, `checks`) VALUES('TRIGGER_INCIDENT_REVIEW_DUE', 0, 'ACTION_JOURNAL', 0, '', ''); Modified: trunk/includes/i18n/en-GB.inc.php =================================================================== --- trunk/includes/i18n/en-GB.inc.php 2008-08-19 18:28:33 UTC (rev 3912) +++ trunk/includes/i18n/en-GB.inc.php 2008-08-19 19:46:11 UTC (rev 3913) @@ -1126,6 +1126,8 @@ $strSendEmail = 'Send Email'; $strSendEmailExplainingIncidentClosure = 'Send an email to the customer explaining that the incident has been (or will be) closed.'; $strSendEmailExternalIncidentClosure = 'Send an email to %s asking for the external incident to be closed.'; +$strSendOpeningEmail = 'Send opening email'; +$strSendOpeningEmailDesc = 'Send opening email to incident contact?'; $strSendPassword = 'Send Password'; $strSendRequest = 'Send Request'; $strSendReminderRequest = 'Send Reminder Request'; Modified: trunk/includes/triggertypes.inc.php =================================================================== --- trunk/includes/triggertypes.inc.php 2008-08-19 18:28:33 UTC (rev 3912) +++ trunk/includes/triggertypes.inc.php 2008-08-19 19:46:11 UTC (rev 3913) @@ -50,7 +50,7 @@ $triggerarray['TRIGGER_INCIDENT_CREATED'] = array('name' => 'Incident Created', 'description' => 'strTriggerNewIncidentCreatedDesc', - 'required' => array('incidentid'), + 'required' => array('incidentid', 'sendemail'), 'params' => array('contactid', 'siteid', 'priority', 'contractid', 'slaid', 'sitesalespersonid') ); @@ -458,6 +458,11 @@ 'replacement' => 'user_email(db_read_column(\'owner\', $GLOBALS[\'dbSites\'], $siteid));' ); +$ttvararray['{sendemail}'] = +array('description' => 'Whether to send an opening email or not', + 'replacement' => '$paramarray[\'sendemail\'];' + ); + $ttvararray['{signature}'] = array('description' => $strCurrentUsersSignature, 'replacement' => 'user_signature($_SESSION[\'userid\']);' This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <pau...@us...> - 2008-08-19 20:23:46
|
Revision: 3914 http://sitracker.svn.sourceforge.net/sitracker/?rev=3914&view=rev Author: paulheaney Date: 2008-08-19 20:23:42 +0000 (Tue, 19 Aug 2008) Log Message: ----------- * Fix for Mantis 149 (Approvae against an overdrawn service) * Fix my previous commit * Added variable to prevent approving against an overdrawn service - If anyone can come up with a shorter variable name that would be great else I claim the prize of the longest variable name in SiT! ;-) Modified Paths: -------------- trunk/htdocs/billable_incidents.php trunk/includes/defaults.inc.php trunk/includes/functions.inc.php trunk/includes/i18n/en-GB.inc.php Modified: trunk/htdocs/billable_incidents.php =================================================================== --- trunk/htdocs/billable_incidents.php 2008-08-19 19:46:11 UTC (rev 3913) +++ trunk/htdocs/billable_incidents.php 2008-08-19 20:23:42 UTC (rev 3914) @@ -201,7 +201,7 @@ </script> <?php - echo "<p align='center'>This report shows incidents closed in the period "; + echo "<p align='center'>This report shows incidents closed in the period "; // FIXME i18n echo ldate($CONFIG['dateformat_date'], $startdate)." - ".ldate($CONFIG['dateformat_date'], $enddate)."</p>"; } @@ -300,9 +300,11 @@ $unitrate = get_unit_rate(incident_maintid($obj->id)); + if ($unitrate == -1) $unapprovable = TRUE; + $line = "<tr class='{$shade}'><td style='text-align: center'>"; - if (!$isapproved) + if (!$isapproved AND !$unapprovable) { $line .= "<input type='checkbox' name='selected[]' value='{$obj->id}' />"; } @@ -362,7 +364,9 @@ $line .= "<td>{$a[-1]['totalcustomerperiods']}</td>"; $line .= "<td>{$billableunitsincident}</td>"; $line .= "<td>{$a[-1]['refunds']}</td>"; - $line .= "<td>{$CONFIG['currency_symbol']}".number_format($cost, 2)."</td>"; + $bill = number_format($cost, 2); + if ($unapprovable) $bill = "?"; + $line .= "<td>{$CONFIG['currency_symbol']} {$bill}</td>"; $line .= "<td>"; // Approval ? @@ -371,6 +375,10 @@ { $line .= $strApproved; } + elseif ($unapprovable) + { + $line .= $strUnapprovable; + } else { $line .= "<a href='{$_SERVER['PHP_SELF']}?mode=approve&incidentid={$obj->id}&startdate={$startdateorig}&enddate={$enddateorig}'>{$strApprove}</a> | "; Modified: trunk/includes/defaults.inc.php =================================================================== --- trunk/includes/defaults.inc.php 2008-08-19 19:46:11 UTC (rev 3913) +++ trunk/includes/defaults.inc.php 2008-08-19 20:23:42 UTC (rev 3914) @@ -245,4 +245,7 @@ // Default for whom the billing reports should be mailed to, multiple address can be seperared by commas $CONFIG['billing_reports_email'] = 'admin@localhost'; +// Allow incidents to be approved against overdrawn services +$CONFIG['billing_allow_incident_approval_against_overdrawn_service'] = TRUE; + ?> \ No newline at end of file Modified: trunk/includes/functions.inc.php =================================================================== --- trunk/includes/functions.inc.php 2008-08-19 19:46:11 UTC (rev 3913) +++ trunk/includes/functions.inc.php 2008-08-19 20:23:42 UTC (rev 3914) @@ -9812,16 +9812,23 @@ * @author Paul Heaney * @param $contractid The Contract ID * @param $date UNIX timestamp. The function will look for service that is current as of this timestamp - * @returns mixed. Service ID, or -1 if not found, or FALSE on error + * @return mixed. Service ID, or -1 if not found, or FALSE on error */ function get_serviceid($contractid, $date = '') { - global $now; + global $now, $CONFIG; if (empty($date)) $date = $now; $sql = "SELECT serviceid FROM `{$GLOBALS['dbService']}` AS p "; $sql .= "WHERE contractid = {$contractid} AND UNIX_TIMESTAMP(startdate) <= {$date} "; - $sql .= "AND UNIX_TIMESTAMP(enddate) > {$date} AND balance > 0 ORDER BY priority DESC, enddate ASC LIMIT 1"; + $sql .= "AND UNIX_TIMESTAMP(enddate) > {$date} "; + + if (!$CONFIG['billing_allow_incident_approval_against_overdrawn_service']) + { + $sql .= "AND balance > 0 "; + } + + $sql .= "ORDER BY priority DESC, enddate, balance ASC LIMIT 1"; $result = mysql_query($sql); if (mysql_error()) @@ -9842,6 +9849,10 @@ /** + * Function to find the most applicable unit rate for a particular contract + * @param $contractid - The contract id + * @param $date UNIX timestamp. The function will look for service that is current as of this timestamp + * @return int th eunit rate, -1 if non found * @author Paul Heaney */ function get_unit_rate($contractid, $date='') @@ -9857,7 +9868,7 @@ return FALSE; } - $unitrate = 0; + $unitrate = -1; if (mysql_num_rows($result) > 0) { Modified: trunk/includes/i18n/en-GB.inc.php =================================================================== --- trunk/includes/i18n/en-GB.inc.php 2008-08-19 19:46:11 UTC (rev 3913) +++ trunk/includes/i18n/en-GB.inc.php 2008-08-19 20:23:42 UTC (rev 3914) @@ -1358,6 +1358,7 @@ $strUpdateSuccessful = 'Update Successful'; $strUpdateType = 'Update Type'; $strUploadedBy = 'Uploaded by %s'; +$strUnapprovable = 'Unapprovable'; $strUnitRate = 'Unit Rate'; $strUnits = 'Units'; $strUnknown = 'Unknown'; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kie...@us...> - 2008-08-21 22:26:32
|
Revision: 3931 http://sitracker.svn.sourceforge.net/sitracker/?rev=3931&view=rev Author: kieran_hogg Date: 2008-08-21 22:26:30 +0000 (Thu, 21 Aug 2008) Log Message: ----------- * few tweaks on the inventory * add a count for site incidents * add a count for inventory items Modified Paths: -------------- trunk/htdocs/inventory.php trunk/htdocs/site_details.php trunk/includes/functions.inc.php Modified: trunk/htdocs/inventory.php =================================================================== --- trunk/htdocs/inventory.php 2008-08-21 17:04:14 UTC (rev 3930) +++ trunk/htdocs/inventory.php 2008-08-21 22:26:30 UTC (rev 3931) @@ -42,14 +42,16 @@ { $sql .= "AND type='{$filter}' "; } - $sql .= "ORDER BY `{$dbInventory}`.active DESC"; - //$sql .= "GROUP BY type"; + $sql .= "ORDER BY `{$dbInventory}`.active DESC, "; + $sql .= "`{$dbInventory}`.modified DESC"; + //$sql .= "GROUP BY type DESC "; $result = mysql_query($sql); if (mysql_error()) trigger_error("MySQL Query Error ".mysql_error(), E_USER_WARNING); echo "<form action='{$_SERVER['PHP_SELF']}?site={$siteid}' method='post'>"; echo "<p align='center'>".icon('filter', 16)." {$strFilter}: "; echo "<select name='filter' onchange='form.submit();'>"; + echo "<option value=''></option>"; foreach ($CONFIG['inventory_types'] as $code => $name) { echo "<option value='{$code}'"; @@ -289,15 +291,23 @@ $sql .= "WHERE siteid=sites.id "; $sql .= "GROUP BY siteid "; $result = mysql_query($sql); - echo "<table class='vertical' align='center'>"; - echo "<th>{$strSite}</th><th>{$strCount}</th>"; - while ($row = mysql_fetch_object($result)) + + if (mysql_num_rows($result) > 0) { - echo "<tr><td><a href='?site={$row->id}'>{$row->name}</a></td>"; - echo "<td>{$row->count}</td></tr>"; + echo "<table class='vertical' align='center'>"; + echo "<th>{$strSite}</th><th>{$strCount}</th>"; + while ($row = mysql_fetch_object($result)) + { + echo "<tr><td><a href='?site={$row->id}'>{$row->name}</a></td>"; + echo "<td>{$row->count}</td></tr>"; + } + + echo "</table>"; } - - echo "</table>"; + else + { + echo "<p align='center'>{$strNoRecords}</p>"; + } include ('htmlfooter.inc.php'); } Modified: trunk/htdocs/site_details.php =================================================================== --- trunk/htdocs/site_details.php 2008-08-21 17:04:14 UTC (rev 3930) +++ trunk/htdocs/site_details.php 2008-08-21 22:26:30 UTC (rev 3931) @@ -70,8 +70,12 @@ echo "</td></tr>"; echo "<tr><th>{$strNotes}:</th><td>".nl2br($siterow['notes'])."</td></tr>"; echo "<tr><td colspan='2'> </td></tr>"; - echo "<tr><th>{$strIncidents}:</th><td><a href=\"contact_support.php?id=".$siterow['id']."&mode=site\">{$strSeeHere}</a></td></tr>"; + echo "<tr><th>{$strIncidents}:</th>"; + echo "<td>".site_count_incidents($id)." <a href=\"contact_support.php?id=".$siterow['id']."&mode=site\">{$strSeeHere}</a></td></tr>"; echo "<tr><th>{$strActivities}:</th><td>".open_activities_for_site($siterow['id'])." <a href='tasks.php?siteid={$siterow['id']}'>{$strSeeHere}</a></td></tr>"; + echo "<tr><th>{$strInventory}</th>"; + echo "<td>".site_count_inventory_items($id); + echo " <a href='inventory.php?site={$id}'>{$strSeeHere}</a></td></tr>"; $billableunits = billable_units_site($siterow['id'], $now-2678400); // Last 31 days if ($billableunits > 0) { Modified: trunk/includes/functions.inc.php =================================================================== --- trunk/includes/functions.inc.php 2008-08-21 17:04:14 UTC (rev 3930) +++ trunk/includes/functions.inc.php 2008-08-21 22:26:30 UTC (rev 3931) @@ -871,8 +871,49 @@ return $count; } +/** + * Return the number of incidents ever logged against a site + * @author Kieran + * @param $id integer. Site ID + * @returns int. +*/ +function site_count_incidents($id) +{ + global $dbIncidents; + $count = 0; + $sql = "SELECT COUNT(id) FROM `{$dbIncidents}` WHERE siteid='$id'"; + $result = mysql_query($sql); + if (mysql_error()) trigger_error(mysql_error(),E_USER_WARNING); + else list($count) = mysql_fetch_row($result); + mysql_free_result($result); + + return $count; +} + + /** + * Return the number of inventory items for a site + * @author Kieran + * @param $id integer. Site ID + * @returns int. +*/ +function site_count_inventory_items($id) +{ + global $dbInventory; + $count = 0; + + $sql = "SELECT COUNT(id) FROM `{$dbInventory}` WHERE siteid='$id'"; + $result = mysql_query($sql); + if (mysql_error()) trigger_error(mysql_error(),E_USER_WARNING); + else list($count) = mysql_fetch_row($result); + mysql_free_result($result); + + return $count; +} + + +/** * The number representing the total number of currently OPEN incidents submitted by a given contact. * @author Ivan Lucas * @param $id The Contact ID to check This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |