Diff
Not logged in

Differences From:

File src/setup.c part of check-in [86db6fa150] - Split of the ticket configuratio into separately editable pieces. by drh on 2008-05-28 15:29:16. [view]

To:

File src/setup.c part of check-in [49380d500a] - Continuing work on the ticketing system. by drh on 2008-05-28 18:48:12. [view]

@@ -149,8 +149,9 @@
   @ <li value="16"><b>Password</b>: Change your own password</li>
   @ <li value="17"><b>Query</b>: Create new queries against tickets</li>
   @ <li value="18"><b>Read-Tkt</b>: View tickets</li>
   @ <li value="19"><b>Setup:</b> Setup and configure this website</li>
+  @ <li value="20"><b>Tkt-Report:</b> Create new bug summary reports</li>
   @ <li value="23"><b>Write-Tkt</b>: Edit tickets</li>
   @ </ol>
   @ </p></li>
   @
@@ -172,8 +173,9 @@
 void user_edit(void){
   const char *zId, *zLogin, *zInfo, *zCap;
   char *oaa, *oas, *oar, *oaw, *oan, *oai, *oaj, *oao, *oap;
   char *oak, *oad, *oaq, *oac, *oaf, *oam, *oah, *oag, *oae;
+  char *oat;
   int doWrite;
   int uid;
   int higherUser = 0;  /* True if user being edited is SETUP and the */
                        /* user doing the editing is ADMIN.  Disallow editing */
@@ -206,9 +208,9 @@
   doWrite = cgi_all("login","info","pw") && !higherUser;
   if( doWrite ){
     const char *zPw;
     const char *zLogin;
-    char zCap[30];
+    char zCap[50];
     int i = 0;
     int aa = P("aa")!=0;
     int ad = P("ad")!=0;
     int ae = P("ae")!=0;
@@ -226,8 +228,9 @@
     int af = P("af")!=0;
     int am = P("am")!=0;
     int ah = P("ah")!=0;
     int ag = P("ag")!=0;
+    int at = P("at")!=0;
     if( aa ){ zCap[i++] = 'a'; }
     if( ac ){ zCap[i++] = 'c'; }
     if( ad ){ zCap[i++] = 'd'; }
     if( ae ){ zCap[i++] = 'e'; }
@@ -243,8 +246,9 @@
     if( ap ){ zCap[i++] = 'p'; }
     if( aq ){ zCap[i++] = 'q'; }
     if( ar ){ zCap[i++] = 'r'; }
     if( as ){ zCap[i++] = 's'; }
+    if( at ){ zCap[i++] = 't'; }
     if( aw ){ zCap[i++] = 'w'; }
 
     zCap[i] = 0;
     zPw = P("pw");
@@ -277,9 +281,9 @@
   zLogin = "";
   zInfo = "";
   zCap = "";
   oaa = oac = oad = oae = oaf = oag = oah = oai = oaj = oak = oam =
-        oan = oao = oap = oaq = oar = oas = oaw = "";
+        oan = oao = oap = oaq = oar = oas = oat = oaw = "";
   if( uid ){
     zLogin = db_text("", "SELECT login FROM user WHERE uid=%d", uid);
     zInfo = db_text("", "SELECT info FROM user WHERE uid=%d", uid);
     zCap = db_text("", "SELECT cap FROM user WHERE uid=%d", uid);
@@ -299,8 +303,9 @@
     if( strchr(zCap, 'p') ) oap = " checked";
     if( strchr(zCap, 'q') ) oaq = " checked";
     if( strchr(zCap, 'r') ) oar = " checked";
     if( strchr(zCap, 's') ) oas = " checked";
+    if( strchr(zCap, 't') ) oat = " checked";
     if( strchr(zCap, 'w') ) oaw = " checked";
   }
 
   /* Begin generating the page
@@ -351,9 +356,10 @@
   @     <input type="checkbox" name="ak"%s(oak)>Write Wiki</input><br>
   @     <input type="checkbox" name="ar"%s(oar)>Read Tkt</input><br>
   @     <input type="checkbox" name="an"%s(oan)>New Tkt</input><br>
   @     <input type="checkbox" name="ac"%s(oac)>Append Tkt</input><br>
-  @     <input type="checkbox" name="aw"%s(oaw)>Write Tkt</input>
+  @     <input type="checkbox" name="aw"%s(oaw)>Write Tkt</input><br>
+  @     <input type="checkbox" name="at"%s(oat)>Tkt Report</input>
   @   </td>
   @ </tr>
   @ <tr>
   @   <td align="right">Password:</td>