File Annotation
Not logged in
0edee97370 2007-10-03       drh: /*
0edee97370 2007-10-03       drh: ** Copyright (c) 2007 D. Richard Hipp
0edee97370 2007-10-03       drh: **
0edee97370 2007-10-03       drh: ** This program is free software; you can redistribute it and/or
0edee97370 2007-10-03       drh: ** modify it under the terms of the GNU General Public
0edee97370 2007-10-03       drh: ** License version 2 as published by the Free Software Foundation.
0edee97370 2007-10-03       drh: **
0edee97370 2007-10-03       drh: ** This program is distributed in the hope that it will be useful,
0edee97370 2007-10-03       drh: ** but WITHOUT ANY WARRANTY; without even the implied warranty of
0edee97370 2007-10-03       drh: ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
0edee97370 2007-10-03       drh: ** General Public License for more details.
0edee97370 2007-10-03       drh: **
0edee97370 2007-10-03       drh: ** You should have received a copy of the GNU General Public
0edee97370 2007-10-03       drh: ** License along with this library; if not, write to the
0edee97370 2007-10-03       drh: ** Free Software Foundation, Inc., 59 Temple Place - Suite 330,
0edee97370 2007-10-03       drh: ** Boston, MA  02111-1307, USA.
0edee97370 2007-10-03       drh: **
0edee97370 2007-10-03       drh: ** Author contact information:
0edee97370 2007-10-03       drh: **   drh@hwaci.com
0edee97370 2007-10-03       drh: **   http://www.hwaci.com/drh/
0edee97370 2007-10-03       drh: **
0edee97370 2007-10-03       drh: *******************************************************************************
0edee97370 2007-10-03       drh: **
0edee97370 2007-10-03       drh: ** This file contains code to implement the ticket configuration
0edee97370 2007-10-03       drh: ** setup screens.
0edee97370 2007-10-03       drh: */
0edee97370 2007-10-03       drh: #include "config.h"
0edee97370 2007-10-03       drh: #include "tktsetup.h"
0edee97370 2007-10-03       drh: #include <assert.h>
0edee97370 2007-10-03       drh: 
0edee97370 2007-10-03       drh: /*
0edee97370 2007-10-03       drh: ** Main sub-menu for configuring the ticketing system.
ce277cadda 2008-05-25       drh: ** WEBPAGE: tktsetup
0edee97370 2007-10-03       drh: */
0edee97370 2007-10-03       drh: void tktsetup_page(void){
0edee97370 2007-10-03       drh:   login_check_credentials();
0edee97370 2007-10-03       drh:   if( !g.okSetup ){
0edee97370 2007-10-03       drh:     login_needed();
0edee97370 2007-10-03       drh:   }
0edee97370 2007-10-03       drh: 
0edee97370 2007-10-03       drh:   style_header("Ticket Setup");
ce277cadda 2008-05-25       drh:   @ <table border="0" cellspacing="20">
ce277cadda 2008-05-25       drh:   setup_menu_entry("Table", "tktsetup_tab",
ce277cadda 2008-05-25       drh:     "Specify the schema of the  \"ticket\" table in the database.");
ce277cadda 2008-05-25       drh:   setup_menu_entry("Common", "tktsetup_com",
ce277cadda 2008-05-25       drh:     "Common TH1 code run before all ticket processing.");
ce277cadda 2008-05-25       drh:   setup_menu_entry("New Ticket Page", "tktsetup_newpage",
ce277cadda 2008-05-25       drh:     "HTML with embedded TH1 code for the \"new ticket\" webpage.");
ce277cadda 2008-05-25       drh:   setup_menu_entry("View Ticket Page", "tktsetup_viewpage",
ce277cadda 2008-05-25       drh:     "HTML with embedded TH1 code for the \"view ticket\" webpage.");
ce277cadda 2008-05-25       drh:   setup_menu_entry("Edit Ticket Page", "tktsetup_editpage",
ce277cadda 2008-05-25       drh:     "HTML with embedded TH1 code for the \"edit ticket\" webpage.");
ce277cadda 2008-05-25       drh:   setup_menu_entry("Report Format", "tktsetup_drep",
ce277cadda 2008-05-25       drh:     "The default ticket report format.");
ce277cadda 2008-05-25       drh:   @ </table>
0edee97370 2007-10-03       drh:   style_footer();
0edee97370 2007-10-03       drh: }
0edee97370 2007-10-03       drh: 
ce277cadda 2008-05-25       drh: /* @-comment: ** */
ce277cadda 2008-05-25       drh: static char zDefaultTab[] =
ce277cadda 2008-05-25       drh: @ CREATE TABLE ticket(
ce277cadda 2008-05-25       drh: @   -- Do not change any column that begins with tkt_
ce277cadda 2008-05-25       drh: @   tkt_id INTEGER PRIMARY KEY,
ce277cadda 2008-05-25       drh: @   tkt_uuid TEXT,
ce277cadda 2008-05-25       drh: @   tkt_mtime DATE,
ce277cadda 2008-05-25       drh: @   -- Add as many field as required below this line
ce277cadda 2008-05-25       drh: @   type TEXT,
ce277cadda 2008-05-25       drh: @   status TEXT,
ce277cadda 2008-05-25       drh: @   subsystem TEXT,
ce277cadda 2008-05-25       drh: @   priority TEXT,
ce277cadda 2008-05-25       drh: @   severity TEXT,
ce277cadda 2008-05-25       drh: @   foundin TEXT,
ce277cadda 2008-05-25       drh: @   contact TEXT,
ce277cadda 2008-05-25       drh: @   resolution TEXT,
ce277cadda 2008-05-25       drh: @   title TEXT,
ce277cadda 2008-05-25       drh: @   comment TEXT,
ce277cadda 2008-05-25       drh: @   -- Do not alter this UNIQUE clause:
ce277cadda 2008-05-25       drh: @   UNIQUE(tkt_uuid, tkt_mtime)
ce277cadda 2008-05-25       drh: @ );
ce277cadda 2008-05-25       drh: ;
1e9c0e287e 2007-10-03       drh: 
0edee97370 2007-10-03       drh: /*
ce277cadda 2008-05-25       drh: ** Common implementation for the ticket setup editor pages.
0edee97370 2007-10-03       drh: */
ce277cadda 2008-05-25       drh: static void tktsetup_generic(
ce277cadda 2008-05-25       drh:   const char *zTitle,           /* Page title */
ce277cadda 2008-05-25       drh:   const char *zDbField,         /* Configuration field being edited */
ce277cadda 2008-05-25       drh:   char *zDfltValue,             /* Default text value */
ce277cadda 2008-05-25       drh:   const char *zDesc,            /* Description of this field */
ce277cadda 2008-05-25       drh:   int height                    /* Height of the edit box */
ce277cadda 2008-05-25       drh: ){
ce277cadda 2008-05-25       drh:   const char *z;
ce277cadda 2008-05-25       drh:   int isSubmit;
0edee97370 2007-10-03       drh: 
0edee97370 2007-10-03       drh:   login_check_credentials();
0edee97370 2007-10-03       drh:   if( !g.okSetup ){
0edee97370 2007-10-03       drh:     login_needed();
0edee97370 2007-10-03       drh:   }
ce277cadda 2008-05-25       drh:   if( P("setup") ){
0edee97370 2007-10-03       drh:     cgi_redirect("tktsetup");
0edee97370 2007-10-03       drh:   }
ce277cadda 2008-05-25       drh:   isSubmit = P("submit")!=0;
ce277cadda 2008-05-25       drh:   db_begin_transaction();
ce277cadda 2008-05-25       drh:   z = P("x");
ce277cadda 2008-05-25       drh:   if( z==0 ){
ce277cadda 2008-05-25       drh:     z = db_get(zDbField, zDfltValue);
ce277cadda 2008-05-25       drh:   }
ce277cadda 2008-05-25       drh:   style_header("Edit %s", zTitle);
ce277cadda 2008-05-25       drh:   if( P("clear")!=0 ){
ce277cadda 2008-05-25       drh:     db_unset(zDbField, 0);
ce277cadda 2008-05-25       drh:     z = zDfltValue;
ce277cadda 2008-05-25       drh:   }else if( isSubmit ){
ce277cadda 2008-05-25       drh:     db_set(zDbField, z, 0);
1e9c0e287e 2007-10-03       drh:   }
ce277cadda 2008-05-25       drh:   @ <form action="%s(g.zBaseURL)/%s(g.zPath)" method="POST">
ce277cadda 2008-05-25       drh:   @ %s(zDesc)
ce277cadda 2008-05-25       drh:   @ <textarea name="tab" rows="%d(height)" cols="80">%h(z)</textarea>
ce277cadda 2008-05-25       drh:   @ <br />
ce277cadda 2008-05-25       drh:   @ <input type="submit" name="submit" value="Apply Changes">
ce277cadda 2008-05-25       drh:   @ <input type="submit" name="clear" value="Revert To Default">
ce277cadda 2008-05-25       drh:   @ <input type="submit" name="setup" value="Ticket Setup Menu">
ce277cadda 2008-05-25       drh:   @ </form>
ce277cadda 2008-05-25       drh:   @ <hr>
ce277cadda 2008-05-25       drh:   @ <h2>Default %s(zTitle)</h2>
ce277cadda 2008-05-25       drh:   @ <blockquote><pre>
ce277cadda 2008-05-25       drh:   @ %h(zDfltValue)
ce277cadda 2008-05-25       drh:   @ </pre></blockquote>
ce277cadda 2008-05-25       drh:   db_end_transaction(0);
1e9c0e287e 2007-10-03       drh:   style_footer();
ce277cadda 2008-05-25       drh: }
ce277cadda 2008-05-25       drh: 
ce277cadda 2008-05-25       drh: /*
ce277cadda 2008-05-25       drh: ** WEBPAGE: tktsetup_tab
ce277cadda 2008-05-25       drh: */
ce277cadda 2008-05-25       drh: void tktsetup_tab_page(void){
ce277cadda 2008-05-25       drh:   static const char zDesc[] =
ce277cadda 2008-05-25       drh:   @ <p>Enter a valid CREATE TABLE statement for the "ticket" table.  The
ce277cadda 2008-05-25       drh:   @ table must contain columns named "tkt_id", "tkt_uuid", and "tkt_mtime"
ce277cadda 2008-05-25       drh:   @ with an unique index on "tkt_uuid" and "tkt_mtime".</p>
ce277cadda 2008-05-25       drh:   ;
ce277cadda 2008-05-25       drh:   tktsetup_generic(
ce277cadda 2008-05-25       drh:     "Ticket Table Schema",
ce277cadda 2008-05-25       drh:     "ticket-table",
ce277cadda 2008-05-25       drh:     zDefaultTab,
ce277cadda 2008-05-25       drh:     zDesc,
ce277cadda 2008-05-25       drh:     20
ce277cadda 2008-05-25       drh:   );
ce277cadda 2008-05-25       drh: }
ce277cadda 2008-05-25       drh: 
ce277cadda 2008-05-25       drh: static char zDefaultCom[] =
ce277cadda 2008-05-25       drh: @ set type_choices {
ce277cadda 2008-05-25       drh: @    Code_Defect
ce277cadda 2008-05-25       drh: @    Build_Problem
ce277cadda 2008-05-25       drh: @    Documentation
ce277cadda 2008-05-25       drh: @    Feature_Request
ce277cadda 2008-05-25       drh: @    Incident
ce277cadda 2008-05-25       drh: @ }
ce277cadda 2008-05-25       drh: @ set priority_choices {
ce277cadda 2008-05-25       drh: @   Immediate
ce277cadda 2008-05-25       drh: @   High
ce277cadda 2008-05-25       drh: @   Medium
ce277cadda 2008-05-25       drh: @   Low
ce277cadda 2008-05-25       drh: @   Zero
ce277cadda 2008-05-25       drh: @ }
ce277cadda 2008-05-25       drh: @ set severity_choices {
ce277cadda 2008-05-25       drh: @   Critical
ce277cadda 2008-05-25       drh: @   Severe
ce277cadda 2008-05-25       drh: @   Important
ce277cadda 2008-05-25       drh: @   Minor
ce277cadda 2008-05-25       drh: @   Cosmetic
ce277cadda 2008-05-25       drh: @ }
ce277cadda 2008-05-25       drh: @ set resolution_choices {
ce277cadda 2008-05-25       drh: @   Open
ce277cadda 2008-05-25       drh: @   Fixed
ce277cadda 2008-05-25       drh: @   Rejected
ce277cadda 2008-05-25       drh: @   Unable_To_Reproduce
ce277cadda 2008-05-25       drh: @   Works_As_Designed
ce277cadda 2008-05-25       drh: @   External_Bug
ce277cadda 2008-05-25       drh: @   Not_A_Bug
ce277cadda 2008-05-25       drh: @   Duplicate
ce277cadda 2008-05-25       drh: @   Overcome_By_Events
ce277cadda 2008-05-25       drh: @   Drive_By_Patch
ce277cadda 2008-05-25       drh: @ }
ce277cadda 2008-05-25       drh: @ set status_choices {
ce277cadda 2008-05-25       drh: @   Open
ce277cadda 2008-05-25       drh: @   Verified
ce277cadda 2008-05-25       drh: @   In_Process
ce277cadda 2008-05-25       drh: @   Deferred
ce277cadda 2008-05-25       drh: @   Fixed
ce277cadda 2008-05-25       drh: @   Tested
ce277cadda 2008-05-25       drh: @   Closed
ce277cadda 2008-05-25       drh: @ }
ce277cadda 2008-05-25       drh: @ set subsystem_choices {one two three}
ce277cadda 2008-05-25       drh: ;
ce277cadda 2008-05-25       drh: 
ce277cadda 2008-05-25       drh: /*
ce277cadda 2008-05-25       drh: ** WEBPAGE: tktsetup_com
ce277cadda 2008-05-25       drh: */
ce277cadda 2008-05-25       drh: void tktsetup_com_page(void){
ce277cadda 2008-05-25       drh:   static const char zDesc[] =
ce277cadda 2008-05-25       drh:   @ <p>Enter TH1 script that initializes variables prior to generating
ce277cadda 2008-05-25       drh:   @ any of the ticket view, edit, or creation pages.</p>
ce277cadda 2008-05-25       drh:   ;
ce277cadda 2008-05-25       drh:   tktsetup_generic(
ce277cadda 2008-05-25       drh:     "Ticket Common Script",
ce277cadda 2008-05-25       drh:     "ticket-common",
ce277cadda 2008-05-25       drh:     zDefaultCom,
ce277cadda 2008-05-25       drh:     zDesc,
ce277cadda 2008-05-25       drh:     30
ce277cadda 2008-05-25       drh:   );
ce277cadda 2008-05-25       drh: }
ce277cadda 2008-05-25       drh: 
ce277cadda 2008-05-25       drh: static char zDefaultNew[] =
ce277cadda 2008-05-25       drh: @ <th1>
ce277cadda 2008-05-25       drh: @   if {[info exists submit]} {
ce277cadda 2008-05-25       drh: @      set status Open
ce277cadda 2008-05-25       drh: @      submit_ticket
ce277cadda 2008-05-25       drh: @   }
ce277cadda 2008-05-25       drh: @ </th1>
ce277cadda 2008-05-25       drh: @ <table cellpadding="5">
ce277cadda 2008-05-25       drh: @ <tr>
ce277cadda 2008-05-25       drh: @ <td colspan="2">
ce277cadda 2008-05-25       drh: @ Enter a one-line summary of the problem:<br>
ce277cadda 2008-05-25       drh: @ <input type="text" name="title" size="60" value="$<title>">
ce277cadda 2008-05-25       drh: @ </td>
ce277cadda 2008-05-25       drh: @ </tr>
ce277cadda 2008-05-25       drh: @
ce277cadda 2008-05-25       drh: @ <tr>
ce277cadda 2008-05-25       drh: @ <td align="right">Type:
ce277cadda 2008-05-25       drh: @ <th1>combobox type $type_choices 1</th1>
ce277cadda 2008-05-25       drh: @ </td>
ce277cadda 2008-05-25       drh: @ <td>What type of ticket is this?</td>
ce277cadda 2008-05-25       drh: @ </tr>
ce277cadda 2008-05-25       drh: @
ce277cadda 2008-05-25       drh: @ <tr>
ce277cadda 2008-05-25       drh: @ <td align="right">Version:
ce277cadda 2008-05-25       drh: @ <input type="text" name="foundin" size="20" value="$<foundin>">
ce277cadda 2008-05-25       drh: @ </td>
ce277cadda 2008-05-25       drh: @ <td>In what version or build number do you observe the problem?</td>
ce277cadda 2008-05-25       drh: @ </tr>
ce277cadda 2008-05-25       drh: @
ce277cadda 2008-05-25       drh: @ <tr>
ce277cadda 2008-05-25       drh: @ <td align="right">Severity:
ce277cadda 2008-05-25       drh: @ <th1>combobox severity $severity_choices 1</th1>
ce277cadda 2008-05-25       drh: @ </td>
ce277cadda 2008-05-25       drh: @ <td>How debilitating is the problem?  How badly does the problem
ce277cadda 2008-05-25       drh: @ effect the operation of the product?</td>
ce277cadda 2008-05-25       drh: @ </tr>
ce277cadda 2008-05-25       drh: @
ce277cadda 2008-05-25       drh: @ <tr>
ce277cadda 2008-05-25       drh: @ <td align="right">EMail:
ce277cadda 2008-05-25       drh: @ <input type="text" name="contact" value="$<contact>" size="30">
ce277cadda 2008-05-25       drh: @ </td>
ce277cadda 2008-05-25       drh: @ <td>Not publically visible. Used by developers to contact you with
ce277cadda 2008-05-25       drh: @ questions.</td>
ce277cadda 2008-05-25       drh: @ </tr>
ce277cadda 2008-05-25       drh: @
ce277cadda 2008-05-25       drh: @ <tr>
ce277cadda 2008-05-25       drh: @ <td colspan="2">
ce277cadda 2008-05-25       drh: @ Enter a detailed description of the problem.
ce277cadda 2008-05-25       drh: @ For code defects, be sure to provide details on exactly how
ce277cadda 2008-05-25       drh: @ the problem can be reproduced.  Provide as much detail as
ce277cadda 2008-05-25       drh: @ possible.
ce277cadda 2008-05-25       drh: @ <br>
ce277cadda 2008-05-25       drh: @ <th1>set nline [linecount $comment 50 10]</th1>
ce277cadda 2008-05-25       drh: @ <textarea name="comment" cols="80" rows="$nline"
ce277cadda 2008-05-25       drh: @  wrap="virtual" class="wikiedit">$<comment></textarea><br>
ce277cadda 2008-05-25       drh: @ <input type="submit" name="preview" value="Preview">
ce277cadda 2008-05-25       drh: @ </tr>
ce277cadda 2008-05-25       drh: @
ce277cadda 2008-05-25       drh: @ <th1>enable_output [info exists preview]</th1>
ce277cadda 2008-05-25       drh: @ <tr><td colspan="2">
ce277cadda 2008-05-25       drh: @ Description Preview:<br><hr>
ce277cadda 2008-05-25       drh: @ <th1>wiki $comment</th1>
ce277cadda 2008-05-25       drh: @ <hr>
ce277cadda 2008-05-25       drh: @ </td></tr>
ce277cadda 2008-05-25       drh: @ <th1>enable_output 1</th1>
ce277cadda 2008-05-25       drh: @
ce277cadda 2008-05-25       drh: @ <tr>
ce277cadda 2008-05-25       drh: @ <td align="right">
ce277cadda 2008-05-25       drh: @ <input type="submit" name="submit" value="Submit">
ce277cadda 2008-05-25       drh: @ </td>
ce277cadda 2008-05-25       drh: @ <td>After filling in the information above, press this button to create
ce277cadda 2008-05-25       drh: @ the new ticket</td>
ce277cadda 2008-05-25       drh: @ </tr>
ce277cadda 2008-05-25       drh: @ </table>
ce277cadda 2008-05-25       drh: ;
ce277cadda 2008-05-25       drh: 
ce277cadda 2008-05-25       drh: /*
ce277cadda 2008-05-25       drh: ** WEBPAGE: tktsetup_newpage
ce277cadda 2008-05-25       drh: */
ce277cadda 2008-05-25       drh: void tktsetup_newpage_page(void){
ce277cadda 2008-05-25       drh:   static const char zDesc[] =
ce277cadda 2008-05-25       drh:   @ <p>Enter HTML with embedded TH1 script that will render the "new ticket"
ce277cadda 2008-05-25       drh:   @ page</p>
ce277cadda 2008-05-25       drh:   ;
ce277cadda 2008-05-25       drh:   tktsetup_generic(
ce277cadda 2008-05-25       drh:     "HTML For New Tickets",
ce277cadda 2008-05-25       drh:     "ticket-newpage",
ce277cadda 2008-05-25       drh:     zDefaultNew,
ce277cadda 2008-05-25       drh:     zDesc,
ce277cadda 2008-05-25       drh:     40
ce277cadda 2008-05-25       drh:   );
ce277cadda 2008-05-25       drh: }
ce277cadda 2008-05-25       drh: 
ce277cadda 2008-05-25       drh: static char zDefaultView[] =
ce277cadda 2008-05-25       drh: @ <table cellpadding="5">
ce277cadda 2008-05-25       drh: @ <tr><td align="right">Title:</td><td>
ce277cadda 2008-05-25       drh: @ $<title>
ce277cadda 2008-05-25       drh: @ </td></tr>
ce277cadda 2008-05-25       drh: @ <tr><td align="right">Status:</td><td>
ce277cadda 2008-05-25       drh: @ $<status>
ce277cadda 2008-05-25       drh: @ </td></tr>
ce277cadda 2008-05-25       drh: @ <tr><td align="right">Type:</td><td>
ce277cadda 2008-05-25       drh: @ $<type>
ce277cadda 2008-05-25       drh: @ </td></tr>
ce277cadda 2008-05-25       drh: @ <tr><td align="right">Severity:</td><td>
ce277cadda 2008-05-25       drh: @ $<severity>
ce277cadda 2008-05-25       drh: @ </td></tr>
ce277cadda 2008-05-25       drh: @ <tr><td align="right">Priority:</td><td>
ce277cadda 2008-05-25       drh: @ $<priority>
ce277cadda 2008-05-25       drh: @ </td></tr>
ce277cadda 2008-05-25       drh: @ <tr><td align="right">Resolution:</td><td>
ce277cadda 2008-05-25       drh: @ $<resolution>
ce277cadda 2008-05-25       drh: @ </td></tr>
ce277cadda 2008-05-25       drh: @ <tr><td align="right">Subsystem:</td><td>
ce277cadda 2008-05-25       drh: @ $<subsystem>
ce277cadda 2008-05-25       drh: @ </td></tr>
ce277cadda 2008-05-25       drh: @ <th1>enable_output [hascap e]</th1>
ce277cadda 2008-05-25       drh: @   <tr><td align="right">Contact:</td><td>
ce277cadda 2008-05-25       drh: @   $<contact>
ce277cadda 2008-05-25       drh: @   </td></tr>
ce277cadda 2008-05-25       drh: @ <th1>enable_output 1</th1>
ce277cadda 2008-05-25       drh: @ <tr><td align="right">Version&nbsp;Found&nbsp;In:</td><td>
ce277cadda 2008-05-25       drh: @ $<foundin>
ce277cadda 2008-05-25       drh: @ </td></tr>
ce277cadda 2008-05-25       drh: @ <tr><td colspan="2">
ce277cadda 2008-05-25       drh: @ Description And Comments:<br>
ce277cadda 2008-05-25       drh: @ <th1>wiki $comment</th1>
ce277cadda 2008-05-25       drh: @ </td></tr>
ce277cadda 2008-05-25       drh: @ </table>
ce277cadda 2008-05-25       drh: ;
ce277cadda 2008-05-25       drh: 
ce277cadda 2008-05-25       drh: 
ce277cadda 2008-05-25       drh: /*
ce277cadda 2008-05-25       drh: ** WEBPAGE: tktsetup_viewpage
ce277cadda 2008-05-25       drh: */
ce277cadda 2008-05-25       drh: void tktsetup_viewpage_page(void){
ce277cadda 2008-05-25       drh:   static const char zDesc[] =
ce277cadda 2008-05-25       drh:   @ <p>Enter HTML with embedded TH1 script that will render the "view ticket"
ce277cadda 2008-05-25       drh:   @ page</p>
ce277cadda 2008-05-25       drh:   ;
ce277cadda 2008-05-25       drh:   tktsetup_generic(
ce277cadda 2008-05-25       drh:     "HTML For Viewing Tickets",
ce277cadda 2008-05-25       drh:     "ticket-viewpage",
ce277cadda 2008-05-25       drh:     zDefaultView,
ce277cadda 2008-05-25       drh:     zDesc,
ce277cadda 2008-05-25       drh:     40
ce277cadda 2008-05-25       drh:   );
ce277cadda 2008-05-25       drh: }
ce277cadda 2008-05-25       drh: 
ce277cadda 2008-05-25       drh: static char zDefaultEdit[] =
ce277cadda 2008-05-25       drh: @ <th1>
ce277cadda 2008-05-25       drh: @   if {![info exists username]} {set username $login}
ce277cadda 2008-05-25       drh: @   if {[info exists submit]} {
ce277cadda 2008-05-25       drh: @     if {[info exists cmappnd]} {
ce277cadda 2008-05-25       drh: @       if {[string length $cmappnd]>0} {
ce277cadda 2008-05-25       drh: @         set ctxt "\n\n<hr><i>[htmlize $login]"
ce277cadda 2008-05-25       drh: @         if {$username ne $login} {
ce277cadda 2008-05-25       drh: @           set ctxt "$ctxt claiming to be [htmlize $username]"
ce277cadda 2008-05-25       drh: @         }
ce277cadda 2008-05-25       drh: @         set ctxt "$ctxt added on [date]:</i><br>\n$cmappnd"
ce277cadda 2008-05-25       drh: @         append_field comment $ctxt
ce277cadda 2008-05-25       drh: @       }
ce277cadda 2008-05-25       drh: @     }
ce277cadda 2008-05-25       drh: @     submit_ticket
ce277cadda 2008-05-25       drh: @   }
ce277cadda 2008-05-25       drh: @ </th1>
ce277cadda 2008-05-25       drh: @ <table cellpadding="5">
ce277cadda 2008-05-25       drh: @ <tr><td align="right">Title:</td><td>
ce277cadda 2008-05-25       drh: @ <input type="text" name="title" value="$<title>" size="60">
ce277cadda 2008-05-25       drh: @ </td></tr>
ce277cadda 2008-05-25       drh: @ <tr><td align="right">Status:</td><td>
ce277cadda 2008-05-25       drh: @ <th1>combobox status $status_choices 1</th1>
ce277cadda 2008-05-25       drh: @ </td></tr>
ce277cadda 2008-05-25       drh: @ <tr><td align="right">Type:</td><td>
ce277cadda 2008-05-25       drh: @ <th1>combobox type $type_choices 1</th1>
ce277cadda 2008-05-25       drh: @ </td></tr>
ce277cadda 2008-05-25       drh: @ <tr><td align="right">Severity:</td><td>
ce277cadda 2008-05-25       drh: @ <th1>combobox severity $severity_choices 1</th1>
ce277cadda 2008-05-25       drh: @ </td></tr>
ce277cadda 2008-05-25       drh: @ <tr><td align="right">Priority:</td><td>
ce277cadda 2008-05-25       drh: @ <th1>combobox priority $priority_choices 1</th1>
ce277cadda 2008-05-25       drh: @ </td></tr>
ce277cadda 2008-05-25       drh: @ <tr><td align="right">Resolution:</td><td>
ce277cadda 2008-05-25       drh: @ <th1>combobox resolution $resolution_choices 1</th1>
ce277cadda 2008-05-25       drh: @ </td></tr>
ce277cadda 2008-05-25       drh: @ <tr><td align="right">Subsystem:</td><td>
ce277cadda 2008-05-25       drh: @ <th1>combobox subsystem $subsystem_choices 1</th1>
ce277cadda 2008-05-25       drh: @ </td></tr>
ce277cadda 2008-05-25       drh: @ <th1>enable_output [hascap e]</th1>
ce277cadda 2008-05-25       drh: @   <tr><td align="right">Contact:</td><td>
ce277cadda 2008-05-25       drh: @   <input type="text" name="contact" size="40" value="$<contact>">
ce277cadda 2008-05-25       drh: @   </td></tr>
ce277cadda 2008-05-25       drh: @ <th1>enable_output 1</th1>
ce277cadda 2008-05-25       drh: @ <tr><td align="right">Version&nbsp;Found&nbsp;In:</td><td>
ce277cadda 2008-05-25       drh: @ <input type="text" name="foundin" size="50" value="$<foundin>">
ce277cadda 2008-05-25       drh: @ </td></tr>
ce277cadda 2008-05-25       drh: @ <tr><td colspan="2">
ce277cadda 2008-05-25       drh: @ <th1>
ce277cadda 2008-05-25       drh: @   if {![info exists eall]} {set eall 0}
ce277cadda 2008-05-25       drh: @   if {[info exists aonlybtn]} {set eall 0}
ce277cadda 2008-05-25       drh: @   if {[info exists eallbtn]} {set eall 1}
ce277cadda 2008-05-25       drh: @   if {![hascap w]} {set eall 0}
ce277cadda 2008-05-25       drh: @   if {![info exists cmappnd]} {set cmappnd {}}
ce277cadda 2008-05-25       drh: @   set nline [linecount $comment 15 10]
ce277cadda 2008-05-25       drh: @   enable_output $eall
ce277cadda 2008-05-25       drh: @ </th1>
ce277cadda 2008-05-25       drh: @   Description And Comments:<br>
ce277cadda 2008-05-25       drh: @   <textarea name="comment" cols="80" rows="$nline"
ce277cadda 2008-05-25       drh: @    wrap="virtual" class="wikiedit">$<comment></textarea><br>
ce277cadda 2008-05-25       drh: @   <input type="hidden" name="eall" value="1">
ce277cadda 2008-05-25       drh: @   <input type="submit" name="aonlybtn" value="Append Remark">
ce277cadda 2008-05-25       drh: @ <th1>enable_output [expr {!$eall}]</th1>
ce277cadda 2008-05-25       drh: @   Append Remark from
ce277cadda 2008-05-25       drh: @   <input type="text" name="username" value="$<username>" size="30">:<br>
ce277cadda 2008-05-25       drh: @   <textarea name="cmappnd" cols="80" rows="15"
ce277cadda 2008-05-25       drh: @    wrap="virtual" class="wikiedit">$<cmappnd></textarea><br>
ce277cadda 2008-05-25       drh: @ <th1>enable_output [expr {[hascap w] && !$eall}]</th1>
ce277cadda 2008-05-25       drh: @   <input type="submit" name="eallbtn" value="Edit All">
ce277cadda 2008-05-25       drh: @ <th1>enable_output 1</th1>
ce277cadda 2008-05-25       drh: @ </td></tr>
ce277cadda 2008-05-25       drh: @ <tr><td align="right"></td><td>
ce277cadda 2008-05-25       drh: @ <input type="submit" name="submit" value="Submit Changes">
ce277cadda 2008-05-25       drh: @ </td></tr>
ce277cadda 2008-05-25       drh: @ </table>
ce277cadda 2008-05-25       drh: ;
ce277cadda 2008-05-25       drh: 
ce277cadda 2008-05-25       drh: /*
ce277cadda 2008-05-25       drh: ** WEBPAGE: tktsetup_editpage
ce277cadda 2008-05-25       drh: */
ce277cadda 2008-05-25       drh: void tktsetup_editpage_page(void){
ce277cadda 2008-05-25       drh:   static const char zDesc[] =
ce277cadda 2008-05-25       drh:   @ <p>Enter HTML with embedded TH1 script that will render the "edit ticket"
ce277cadda 2008-05-25       drh:   @ page</p>
ce277cadda 2008-05-25       drh:   ;
ce277cadda 2008-05-25       drh:   tktsetup_generic(
ce277cadda 2008-05-25       drh:     "HTML For Editing Tickets",
ce277cadda 2008-05-25       drh:     "ticket-editpage",
ce277cadda 2008-05-25       drh:     zDefaultEdit,
ce277cadda 2008-05-25       drh:     zDesc,
ce277cadda 2008-05-25       drh:     40
ce277cadda 2008-05-25       drh:   );
0edee97370 2007-10-03       drh: }