File: 0.00.0a/request.php (View as Code)

1: 2: /* ------------------------------------------------------------- 3: This file is part of FreeDESK 4: 5: FreeDESK is (C) Copyright 2012 David Cutting 6: 7: FreeDESK is free software: you can redistribute it and/or modify 8: it under the terms of the GNU General Public License as published by 9: the Free Software Foundation, either version 3 of the License, or 10: (at your option) any later version. 11: 12: FreeDESK is distributed in the hope that it will be useful, 13: but WITHOUT ANY WARRANTY; without even the implied warranty of 14: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15: GNU General Public License for more details. 16: 17: You should have received a copy of the GNU General Public License 18: along with FreeDESK. If not, see www.gnu.org/licenses 19: 20: For more information see www.purplepixie.org/freedesk/ 21: -------------------------------------------------------------- */ 22: 23: /** 24: * Request Display 25: **/ 26: 27: 28: // Output buffer on and start FreeDESK then discard startup whitespace-spam 29: ob_start(); 30: include("core/FreeDESK.php"); 31: $DESK = new FreeDESK("./"); 32: $DESK->Start(); 33: ob_end_clean(); 34: 35: 36: if (!isset($_REQUEST['sid']) || !$DESK->ContextManager->Open(ContextType::User, $_REQUEST['sid'])) 37: { 38: $data=array("title"=>$DESK->Lang->Get("welcome")); 39: $DESK->Skin->IncludeFile("min_header.php",$data); 40: 41: echo "\n\n"; 44: 45: echo "

".$DESK->Lang->Get("login_invalid").":

\n";
46: 47: 48: $DESK->Skin->IncludeFile("min_footer.php"); 49: exit(); 50: } 51: 52: 53: // So we're authenticated let's view the main page 54: $data=array("title"=>"FreeDESK"); 55: $DESK->Skin->IncludeFile("min_header.php",$data); 56: 57: if (isset($_REQUEST['id'])) 58: { 59: $id=$_REQUEST['id']; 60: 61: $request = $DESK->RequestManager->Fetch($id); 62: 63: if ($request === false) 64: { 65: echo $DESK->Lang->Get("entity_not_found"); 66: $DESK->Skin->IncludeFile("min_footer.php"); 67: exit(); 68: } 69: 70: echo "
\n"; 71: echo "".$DESK->Lang->Get("request")." ".$id.": "; 72: 73: $q="SELECT * FROM ".$DESK->Database->Table("customer")." WHERE ".$DESK->Database->Field("customerid")."=".$DESK->Database->Safe($request->Get("customerid"))." LIMIT 0,1"; 74: $r=$DESK->Database->Query($q); 75: $cust = $DESK->Database->FetchAssoc($r); 76: $DESK->Database->Free($r); 77: 78: echo $cust['firstname']." ".$cust['lastname']; 79: 80: echo "\n"; 81: echo "
";
82: 83: $request->LoadUpdates(); 84: 85: $panes = array( 86: "log" => array( "title" => "Request History" ), 87: //"details" => array( "title" => "Details" ), 88: "update" => array( "title" => "Update Request" ) ); 89: 90: $data = array( "id" => "request", "panes" => $panes ); 91: $DESK->Skin->IncludeFile("pane_start.php", $data); 92: 93: echo "
\n"; 94: 95: $updates = $request->GetUpdates(); 96: 97: foreach($updates as $update) 98: { 99: echo "
\n"; 100: echo "
\n"; 101: echo $update['updatedt']." : ".$update['updateby']."\n"; 102: echo "
\n";
103: echo "
"; 104: echo $update['update']."\n\n"; 105: echo "
\n";
106: echo "
\n";
107: } 108: 109: echo "
";
110: 111: echo "
\n"; 112: echo "Details"; 113: echo "
";
114: 115: echo "
\n"; 116: 117: echo "
"; 118: 119: echo "\n"; 120: 121: echo "\n"; 128: echo "\n"; 161: 162: echo "\n"; 178: 179: echo "\n"; 188: 189: echo "
\n"; 122: 123: echo "\n"; 124: echo "\n"; 125: echo "\n"; 126: 127: echo "
"; 129: 130: echo $DESK->Lang->Get("assign")." "; 131: 132: echo ""; 133: 134: echo "\n"; 159: 160: echo "
\n"; 163: 164: echo $DESK->Lang->Get("status"); 165: 166: echo "\n"; 167: 168: $statuses = $DESK->RequestManager->StatusList(); 169: 170: echo "\n"; 177: echo "
\n"; 180: 181: echo "Lang->Get("save")."\" onclick=\"DESK.formAPI('request_update',false,true);\">"; 182: 183: echo "\n"; 184: 185: echo "Lang->Get("save_close")."\" onclick=\"DESK.formAPI('request_update',true,false);\">"; 186: 187: echo "
";
190: 191: echo "\n";
192: 193: echo "
";
194: 195: 196: 197: $DESK->Skin->IncludeFile("pane_finish.php"); 198: } 199: else // new request 200: { 201: 202: echo "
\n"; 203: 204: echo "
\n"; 205: echo "\n"; 206: 207: $table=$DESK->DataDictionary->Tables["customer"]; 208: 209: foreach($table->fields as $id => $field) 210: { 211: if ($field->searchable) 212: { 213: echo "\n"; 214: $val=""; 215: if (isset($_REQUEST[$field->field])) 216: { 217: $val=$_REQUEST[$field->field]; 218: $searchnow=true; 219: } 220: echo "\n"; 221: } 222: } 223: echo "\n"; 224: echo "\n"; 225: echo ""; 226: echo "
".$field->name."field."\" value=\"".$val."\" />
Lang->Get("search")."\" onclick=\"DESKRequest.searchCustomer();\" />
\n";
227: echo "\n";
228: 229: 230: echo "
";
231: echo "
\n"; 232: echo "
".$DESK->Lang->Get("customer")." : \n";
233: echo "Change"; 234: echo "
";
235: 236: echo "
\n";
237: 238: echo "
"; 239: 240: echo "\n"; 241: 242: echo "\n"; 247: echo "\n"; 278: 279: echo "\n"; 294: 295: echo "\n"; 304: 305: echo "
\n"; 243: 244: echo "\n"; 245: 246: echo "
"; 248: 249: echo $DESK->Lang->Get("assign")." "; 250: 251: echo ""; 252: 253: echo "\n"; 276: 277: echo "
\n"; 280: 281: echo $DESK->Lang->Get("status"); 282: 283: echo "\n"; 284: 285: $statuses = $DESK->RequestManager->StatusList(); 286: 287: echo "\n"; 293: echo "
\n"; 296: 297: echo "Lang->Get("save")."\" onclick=\"DESKRequest.Create();\" />"; 298: 299: echo "\n"; 300: 301: echo "Lang->Get("save_close")."\" onclick=\"DESKRequest.Create(true);\" />"; 302: 303: echo "
";
306: 307: echo "";
308: 309: } 310: 311: 312: 313: $DESK->Skin->IncludeFile("min_footer.php"); 314: 315: 316: ?> 317: