File: 0.01.0a/pages/sysadmin.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: * System Administration Page 25: **/ 26: 27: global $DESK; 28: 29: header("Content-type: text/xml"); 30: header("Expires: Tue, 27 Jul 1997 01:00:00 GMT"); 31: header("Cache-Control: no-store, no-cache, must-revalidate"); 32: header("Cache-Control: post-check=0, pre-check=0", false); 33: header("Pragma: no-cache"); 34: 35: echo "\n"; 36: echo "\n"; 37: 38: if (!$DESK->ContextManager->Permission("system_admin")) 39: { 40: echo "

".$DESK->Lang->Get("permission_denied")."

\n";
41: echo "\n"; 42: exit(); 43: } 44: 45: function sa_link($text,$opts=array()) 46: { 47: $opt = ""; 48: $first=true; 49: foreach($opts as $key => $item) 50: { 51: if ($first) 52: $first=false; 53: else 54: $opt.="&"; 55: $opt.=$key."=".$item; 56: } 57: $out = " 58: if ($opt != "") 59: $out.=",'".$opt."'"; 60: $out.=");\">".$text.""; 61: return $out; 62: } 63: 64: 65: if (isset($_REQUEST['mode'])) 66: $mode=$_REQUEST['mode']; 67: else 68: $mode=""; 69: 70: if ($mode == "") 71: { 72: echo "

".$DESK->Lang->Get("system_admin")."

\n";
73: 74: if ($DESK->ContextManager->Permission("user_admin")) 75: { 76: echo sa_link($DESK->Lang->Get("admin_user"), array("mode"=>"user"))."

\n";
77: echo sa_link($DESK->Lang->Get("admin_group"), array("mode"=>"group"))."

\n";
78: echo sa_link($DESK->Lang->Get("teams"), array("mode"=>"teams"))."

\n";
79: echo sa_link($DESK->Lang->Get("request_status"), array("mode"=>"status"))."

\n";
80: echo sa_link($DESK->Lang->Get("request_class"), array("mode"=>"requestclass"))."

\n";
81: echo sa_link($DESK->Lang->Get("request_priority"), array("mode"=>"priorities"))."

\n";
82: if ($DESK->ContextManager->Permission("email_accounts")) 83: echo sa_link($DESK->Lang->Get("email_accounts"), array("mode"=>"emailaccounts"))."

\n";
84: if ($DESK->ContextManager->Permission("email_templates")) 85: echo sa_link($DESK->Lang->Get("email_templates"), array("mode"=>"emailtemplates"))."

\n";
86: if ($DESK->ContextManager->Permission("sysadmin_plugins")) 87: echo sa_link($DESK->Lang->Get("plugin_manager"), array("mode"=>"plugins"))."

\n";
88: if ($DESK->ContextManager->Permission("sysadmin_advanced")) 89: echo sa_link($DESK->Lang->Get("system_vars"), array("mode"=>"sysvars"))."

\n";
90: } 91: 92: } 93: 94: else if ($mode == "user") 95: { 96: echo "
".sa_link("<< ".$DESK->Lang->Get("system_admin"))."
\n";
97: echo "

".$DESK->Lang->Get("admin_user")."

\n";
98: 99: // TODO: PUT INTO CORE 100: $q="SELECT username,realname FROM ".$DESK->Database->Table("user"); 101: $r=$DESK->Database->Query($q); 102: while ($row=$DESK->Database->FetchAssoc($r)) 103: { 104: echo "
"; 105: 106: echo "\n"; 107: echo "\n"; 108: echo "Lang->Get("delete")."\" onclick=\"if (confirm('Delete user ".$row['username']."')) DESK.formAPI('delete_".$row['username']."',false,false,DESK.refreshSubpage);\" />\n"; 109: 110: $oa = array("mode" => "useredit", "username" => $row['username']); 111: echo sa_link($row['username'].": ".$row['realname'], $oa)." "; 112: 113: echo "";
114: 115: //echo "
";
116: } 117: $DESK->Database->Free($r); 118: 119: echo "
".$DESK->Lang->Get("user_create")."

\n";
120: echo "
\n"; 121: echo "\n"; 122: echo $DESK->Lang->Get("username")." "; 123: echo " \n"; 124: echo "Lang->Get("save")."\" onclick=\"DESK.formAPI('create_user',false,false,DESK.refreshSubpage);\" />\n"; 125: echo "\n";
126: 127: } 128: else if ($mode == "useredit") 129: { 130: $q="SELECT * FROM ".$DESK->Database->Table("user")." WHERE ".$DESK->Database->Field("username")."=".$DESK->Database->SafeQuote($_REQUEST['username']); 131: $r=$DESK->Database->Query($q); 132: $row=$DESK->Database->FetchAssoc($r); 133: $DESK->Database->Free($r); 134: echo "
".sa_link("<< ".$DESK->Lang->Get("system_admin"))." \n";
135: echo sa_link("<< ".$DESK->Lang->Get("admin_user"),array("mode"=>"user"))."
\n";
136: 137: echo "

".$row['realname']."

\n";
138: 139: echo "
\n"; 140: echo "\n"; 141: echo "\n"; 142: echo "\n"; 143: 144: echo "\n"; 149: 150: echo "\n"; 155: 156: echo "\n"; 161: 162: $q="SELECT * FROM ".$DESK->Database->Table("teamuserlink")." WHERE ".$DESK->Database->Field("username")."=".$DESK->Database->SafeQuote($row['username']); 163: $r=$DESK->Database->Query($q); 164: $teams=array(); 165: while ($trow = $DESK->Database->FetchAssoc($r)) 166: { 167: $teams[$trow['teamid']] = true; 168: } 169: $DESK->Database->Free($r); 170: 171: echo "\n"; 192: 193: 194: 195: echo "\n"; 224: 225: echo "\n"; 230: 231: echo "\n"; 232: echo "\n"; 233: 234: echo "
\n"; 145: echo $DESK->Lang->Get("username"); 146: echo "\n"; 147: echo "\n"; 148: echo "
\n"; 151: echo $DESK->Lang->Get("realname"); 152: echo "\n"; 153: echo "\n"; 154: echo "
\n"; 157: echo $DESK->Lang->Get("email"); 158: echo "\n"; 159: echo "\n"; 160: echo "
\n"; 172: echo $DESK->Lang->Get("team_membership"); 173: echo "\n"; 174: 175: $tq="SELECT * FROM ".$DESK->Database->Table("team"); 176: $tr=$DESK->Database->Query($tq); 177: $first=false; 178: while ($trow = $DESK->Database->FetchAssoc($tr)) 179: { 180: if ($first) 181: $first=false; 182: else echo "
";
183: 184: $s = "185: if (isset($teams[$trow['teamid']])) 186: $s.=" checked"; 187: $s.="> ".$trow['teamname']; 188: echo $s; 189: } 190: 191: echo "
\n"; 196: echo $DESK->Lang->Get("permgroup"); 197: echo "\n"; 198: $pg = $row['permgroup']; 199: if ($pg == "") 200: $pg = 0; 201: 202: $groups = array ( 0 => "None" ); 203: 204: $pgq="SELECT * FROM ".$DESK->Database->Table("permgroup"); 205: $pgr=$DESK->Database->Query($pgq); 206: while($pgrow = $DESK->Database->FetchAssoc($pgr)) 207: { 208: $groups[$pgrow['permgroupid']] = $pgrow['groupname']; 209: } 210: $DESK->Database->Free($pgr); 211: 212: echo "\n"; 222: 223: echo "
\n"; 226: echo $DESK->Lang->Get("password"); 227: echo "\n"; 228: echo "\n"; 229: echo "
 Lang->Get("save")."\" onclick=\"DESK.formAPI('user_admin');\">
";
235: 236: echo "

".$DESK->Lang->Get("permissions")."

\n";
237: 238: echo "
\n"; 239: echo "\n"; 240: echo "\n"; 241: echo "\n"; 242: echo "\n"; 243: 244: $perms = $DESK->PermissionManager->UserPermissionList($_REQUEST['username']); 245: 246: $row=0; 247: 248: foreach($perms as $perm => $allowed) 249: { 250: // HTML-Safe 251: $permhtml = str_replace(".","#",$perm); 252: 253: $class = "row".$row++; 254: if ($row>1) $row=0; 255: echo ""; 256: 257: echo "\n"; 260: 261: echo ""; 268: 269: echo ""; 276: 277: echo ""; 284: 285: 286: echo ""; 287: } 288: 289: echo ""; 292: 293: echo "
\n"; 258: echo $perm; 259: echo "\n"; 262: echo "263: if ($allowed == -1) 264: echo " checked"; 265: echo " />"; 266: echo $DESK->Lang->Get("undefined"); 267: echo "\n"; 270: echo "271: if ($allowed == 0) 272: echo " checked"; 273: echo " />"; 274: echo $DESK->Lang->Get("denied"); 275: echo "\n"; 278: echo "279: if ($allowed == 1) 280: echo " checked"; 281: echo " />"; 282: echo $DESK->Lang->Get("allowed"); 283: echo "
\n"; 290: echo "Lang->Get("save")."\" onclick=\"DESK.formAPI('permission_form');\" />\n"; 291: echo "
\n";
294: echo "\n";
295: 296: //echo memory_get_usage(); 297: } 298: else if ($mode == "group") 299: { 300: echo "
".sa_link("<< ".$DESK->Lang->Get("system_admin"))."
\n";
301: echo "

".$DESK->Lang->Get("admin_group")."

\n";
302: $groups = $DESK->PermissionManager->GroupList(); 303: 304: foreach($groups as $id => $name) 305: { 306: echo "
\n"; 307: echo "\n"; 308: echo "\n"; 309: echo "Lang->Get("delete")."\" onclick=\"if(confirm('Delete group ".$id."')) DESK.formAPI('delete_group_".$id."',false,false,DESK.refreshSubpage);\" />\n"; 310: echo " "; 311: $opts = array("mode" => "groupedit", "permgroupid" => $id); 312: echo sa_link($id.": ".$name,$opts); 313: echo "\n\n";
314: } 315: 316: echo "
";
317: echo "
\n"; 318: echo "\n"; 319: echo $DESK->Lang->Get("admin_group")." "; 320: echo " \n"; 321: echo "Lang->Get("save")."\" onclick=\"DESK.formAPI('create_group',false,false,DESK.refreshSubpage);\" />\n"; 322: echo "\n";
323: } 324: else if ($mode == "groupedit") 325: { 326: $groups = $DESK->PermissionManager->GroupList(); 327: echo "
".sa_link("<< ".$DESK->Lang->Get("system_admin"))." \n";
328: echo sa_link("<< ".$DESK->Lang->Get("admin_group"),array("mode"=>"group"))."
\n";
329: $group = $groups[$_REQUEST['permgroupid']]; 330: $id=$_REQUEST['permgroupid']; 331: echo "

".$id.": ".$group."

\n";
332: 333: echo "
\n"; 334: echo "\n"; 335: echo "\n"; 336: echo "\n"; 337: echo "\n"; 338: 339: $perms = $DESK->PermissionManager->GroupPermissionList($id); 340: 341: $row=0; 342: 343: foreach($perms as $perm => $allowed) 344: { 345: // HTML-Safe 346: $permhtml = str_replace(".","#",$perm); 347: 348: $class = "row".$row++; 349: if ($row>1) $row=0; 350: echo ""; 351: 352: echo "\n"; 355: 356: echo ""; 363: 364: echo ""; 371: 372: echo ""; 379: 380: 381: echo ""; 382: } 383: 384: echo ""; 387: 388: echo "
\n"; 353: echo $perm; 354: echo "\n"; 357: echo "358: if ($allowed == -1) 359: echo " checked"; 360: echo " />"; 361: echo $DESK->Lang->Get("undefined"); 362: echo "\n"; 365: echo "366: if ($allowed == 0) 367: echo " checked"; 368: echo " />"; 369: echo $DESK->Lang->Get("denied"); 370: echo "\n"; 373: echo "374: if ($allowed == 1) 375: echo " checked"; 376: echo " />"; 377: echo $DESK->Lang->Get("allowed"); 378: echo "
\n"; 385: echo "Lang->Get("save")."\" onclick=\"DESK.formAPI('permission_form');\" />\n"; 386: echo "
\n";
389: echo "\n";
390: } 391: else if ($mode == "teams") 392: { 393: echo "
".sa_link("<< ".$DESK->Lang->Get("system_admin"))."
\n";
394: echo ""; 395: $teams = $DESK->RequestManager->TeamList(); 396: foreach($teams as $id => $teamname) 397: { 398: echo ""; 413: } 414: echo "
"; 399: echo "
\n"; 400: echo "\n"; 401: echo "\n"; 402: echo "Lang->Get("delete")."\" onclick=\"if(confirm('Delete team ".$teamname."')) DESK.formAPI('team_delete_".$id."',false,false,DESK.refreshSubpage);\" />\n"; 403: echo "\n";
404: echo "
"; 405: echo "
\n"; 406: echo "\n"; 407: echo "\n"; 408: echo $id." : "; 409: echo " \n"; 410: echo "Lang->Get("save")."\" onclick=\"DESK.formAPI('team_update_".$id."',false,false,DESK.refreshSubpage);\" />\n"; 411: echo "\n";
412: echo "
";
415: echo "
";
416: echo "
\n"; 417: echo "\n"; 418: echo " \n"; 419: echo "Lang->Get("save")."\" onclick=\"DESK.formAPI('team_create',false,false,DESK.refreshSubpage);\" />\n"; 420: echo "\n";
421: } 422: else if ($mode == "status") 423: { 424: echo "
".sa_link("<< ".$DESK->Lang->Get("system_admin"))."
\n";
425: $status = $DESK->RequestManager->StatusList(); 426: echo ""; 427: foreach($status as $id => $name) 428: { 429: echo "\n"; 448: } 449: echo "
"; 430: if ($id>0) 431: { 432: echo "
\n"; 433: echo "\n"; 434: echo "\n"; 435: echo "Lang->Get("delete")."\" onclick=\"if(confirm('Delete ".$name."')) DESK.formAPI('status_delete_".$id."',false,false,DESK.refreshSubpage);\" />\n"; 436: echo "";
437: } 438: else 439: echo " "; 440: echo "
\n"; 441: echo "
\n"; 442: echo "\n"; 443: echo "\n"; 444: echo " \n"; 445: echo "Lang->Get("save")."\" onclick=\"DESK.formAPI('status_update_".$id."',false,false,DESK.refreshSubpage);\" />\n"; 446: echo "\n";
447: echo "
\n";
450: echo "

";
451: echo "
\n"; 452: echo "\n"; 453: echo " \n"; 454: echo "Lang->Get("save")."\" onclick=\"DESK.formAPI('status_create',false,false,DESK.refreshSubpage);\" />\n"; 455: echo "\n";
456: } 457: else if ($mode == "plugins") 458: { 459: echo "
".sa_link("<< ".$DESK->Lang->Get("system_admin"))."
\n";
460: echo "

".$DESK->Lang->Get("plugin_manager")."

\n";
461: 462: $pims = $DESK->PluginManager->ListPIMS(); 463: 464: echo ""; 465: 466: foreach($pims as $id => $data) 467: { 468: echo "\n"; 469: echo "\n"; 472: 473: if ($data['installed']) 474: { 475: if ($data['data']['active']) 476: { 477: echo ""; 484: } 485: else 486: { 487: echo ""; 519: } 520: 521: echo "
\n"; 470: echo $id."\n"; 471: echo "\n"; 478: echo "
\n"; 479: echo "\n"; 480: echo "\n"; 481: echo "Lang->Get("deactivate")."\" onclick=\"DESK.formAPI('deact_".$id."',false,false,DESK.refreshSubpage);\" />\n"; 482: echo "\n";
483: echo "
\n"; 488: echo "
\n"; 489: echo "\n"; 490: echo "\n"; 491: echo "Lang->Get("activate")."\" onclick=\"DESK.formAPI('act_".$id."',false,false,DESK.refreshSubpage);\" />\n"; 492: echo "\n";
493: echo "
\n"; 494: 495: echo "\n"; 496: echo "
\n"; 497: echo "\n"; 498: echo "\n"; 499: echo "Lang->Get("uninstall")."\" onclick=\"DESK.formAPI('uninst_".$id."',false,false,DESK.refreshSubpage);\" />\n"; 500: echo "\n";
501: echo "
\n"; 502: } 503: } 504: else 505: { 506: echo "\n"; 507: echo "
\n"; 508: echo "\n"; 509: echo "\n"; 510: echo "Lang->Get("install")."\" onclick=\"DESK.formAPI('inst_".$id."',false,false,DESK.refreshSubpage);\" />\n"; 511: echo "\n";
512: echo "
\n"; 513: } 514: 515: 516: 517: 518: echo "
";
522: } 523: else if ($mode == "sysvars") 524: { 525: echo "
".sa_link("<< ".$DESK->Lang->Get("system_admin"))."
\n";
526: echo "

".$DESK->Lang->Get("system_vars")."

\n";
527: 528: if ($DESK->ContextManager->Permission("sysadmin_advanced")) 529: { 530: $items = $DESK->Configuration->GetAll(); 531: 532: echo "\n"; 533: 534: foreach($items as $id => $val) 535: { 536: echo "\n"; 537: echo "\n"; 538: echo "\n"; 544: echo ""; 548: echo "\n"; 555: } 556: 557: echo "\n"; 566: echo "\n"; 567: 568: echo "
".$id."\n"; 539: echo "
\n"; 540: echo "\n"; 541: echo "\n"; 542: echo "\n"; 543: echo "
\n"; 545: echo "Lang->Get("save")."\" onclick=\"DESK.formAPI('save_".$id."',false,false,DESK.refreshSubpage);\" />\n"; 546: echo "\n"; 547: echo "\n"; 549: echo "
\n"; 550: echo "\n"; 551: echo "\n"; 552: echo "Lang->Get("delete")."\" onclick=\"if(confirm('".$DESK->Lang->Get("delete")."?')) DESK.formAPI('delete_".$id."',false,false,DESK.refreshSubpage);\" />\n"; 553: echo "\n";
554: echo "
\n"; 558: echo "
"; 559: echo "\n"; 560: echo " \n"; 561: //echo "
\n"; 562: echo "\n"; 563: echo "\n"; 564: echo "Lang->Get("save")."\" onclick=\"DESK.formAPI('create_sysvar',false,false,DESK.refreshSubpage);\" />\n"; 565: echo "
";
569: } 570: } 571: else if ($mode == "requestclass") 572: { 573: echo "
".sa_link("<< ".$DESK->Lang->Get("system_admin"))."
\n";
574: echo "

".$DESK->Lang->Get("request_class")."

\n";
575: 576: $classes = $DESK->RequestManager->GetRequestClasses(); 577: echo "\n"; 578: 579: $reqs = $DESK->PluginManager->GetType("request"); 580: $classnames = array(""); 581: foreach($reqs as $req) 582: if ($req['classname']!="") 583: $classnames[]=$req['classname']; 584: 585: foreach($classes as $id => $class) 586: { 587: echo "\n"; 588: echo "\n"; 609: 610: echo "\n"; 617: echo "\n"; 618: } 619: echo "
\n"; 589: echo "
\n"; 590: echo $id."\n"; 591: echo " \n"; 592: 593: 594: echo " "; 603: echo "\n"; 604: 605: echo "\n"; 606: echo "\n"; 607: echo " Lang->Get("save")."\" onclick=\"DESK.formAPI('save_".$id."',false,false,DESK.refreshSubpage);\" />\n"; 608: echo "
\n"; 611: echo "
\n"; 612: echo "\n"; 613: echo "\n"; 614: echo "Lang->Get("delete")."\" onclick=\"if(confirm('".$DESK->Lang->Get("delete")."?')) DESK.formAPI('delete_".$id."',false,false,DESK.refreshSubpage);\" />\n"; 615: echo "\n";
616: echo "
\n";
620: 621: echo "
\n"; 622: echo "\n"; 623: echo "\n"; 624: echo "\n"; 625: echo "\n"; 626: echo "\n"; 633: echo "\n"; 634: echo "\n"; 635: 636: echo "
 "; 632: echo "Lang->Get("create")."\" onclick=\"DESK.formAPI('create_rc',false,false,DESK.refreshSubpage);\" />
\n";
637: echo "\n";
638: } 639: else if ($mode=="priorities") 640: { 641: echo "
".sa_link("<< ".$DESK->Lang->Get("system_admin"))."
\n";
642: echo "

".$DESK->Lang->Get("request_priority")."

\n";
643: 644: $priorities = $DESK->RequestManager->GetPriorityList(); 645: echo "\n"; 646: 647: foreach($priorities as $id => $priority) 648: { 649: $seconds = $priority['resolutionsla']; 650: $hours = 0; 651: $mins = 0; 652: $secs = 0; 653: 654: if ($seconds>=3600) 655: { 656: $hours = (int)($seconds/3600); 657: $seconds -= ($hours*3600); 658: } 659: if ($seconds>=60) 660: { 661: $minutes = (int)($seconds/60); 662: $seconds -= ($minutes*60); 663: } 664: $secs = $seconds; 665: 666: echo "\n"; 667: echo "\n"; 680: echo "\n"; 685: echo "\n"; 686: } 687: echo "
\n"; 668: echo "\n"; 669: echo "\n"; 670: echo $id."\n"; 671: echo " \n"; 672: 673: echo " :\n"; 674: echo " :\n"; 675: echo " :\n"; 676: 677: echo " \n"; 678: echo " Lang->Get("save")."\" onclick=\"DESK.formAPI('save_".$id."',false,false,DESK.refreshSubpage);\" />\n"; 679: echo "
\n"; 681: echo "\n"; 682: echo "\n"; 683: echo "Lang->Get("delete")."\" onclick=\"if(confirm('".$DESK->Lang->Get("delete")."?')) DESK.formAPI('delete_".$id."',false,false,DESK.refreshSubpage);\" />\n"; 684: echo "
\n";
688: 689: echo "
\n"; 690: echo "\n"; 691: echo "\n"; 692: echo "\n"; 693: 694: echo "\n"; 696: echo "\n"; 697: echo "\n"; 698: echo "\n"; 699: echo "\n"; 700: echo "\n"; 701: echo "\n"; 702: 703: echo "\n"; 704: 705: echo "
 "; 695: echo "::=Lang->Get("create")."\" onclick=\"DESK.formAPI('create_priority',false,false,DESK.refreshSubpage);\" />
\n";
706: 707: echo "\n";
708: 709: } 710: 711: else if ($mode == "emailaccounts") // p: email_accounts 712: { 713: echo "
".sa_link("<< ".$DESK->Lang->Get("system_admin"))."
\n";
714: echo "

".$DESK->Lang->Get("email_accounts")."

\n";
715: 716: $accounts = $DESK->Email->GetAccounts(); 717: 718: echo "\n"; 719: foreach($accounts as $id => $account) 720: { 721: echo "\n"; 722: echo "\n"; 723: echo "\n"; 724: echo "\n"; 725: echo "\n"; 732: echo "\n"; 733: } 734: echo "
".$account['name']."<".$account['from'].">".sa_link($DESK->Lang->Get("edit"),array("mode"=>"emailaccounts","edit"=>$id))."\n"; 726: echo "
\n"; 727: echo "\n"; 728: echo "\n"; 729: echo "Lang->Get("delete")."\" onclick=\"if(confirm('".$DESK->Lang->Get("delete")."?')) DESK.formAPI('delete_opt_".$id."',false,false,DESK.refreshSubpage);\" />\n"; 730: echo "\n";
731: echo "
\n";
735: echo "
";
736: echo "
\n"; 737: echo " "; 738: echo "\n"; 739: echo "Lang->Get("create")."\" onclick=\"DESK.formAPI('email_create',false,false,DESK.refreshSubpage);\" />\n"; 740: echo "\n";
741: echo "

";
742: 743: if (isset($_REQUEST['edit'])) 744: { 745: $id=$_REQUEST['edit']; 746: 747: if (isset($accounts[$id])) 748: { 749: $acc = $accounts[$id]; 750: echo "

".$DESK->Lang->Get("edit").": ".$acc['name']."

\n";
751: 752: echo "
\n"; 753: echo "\n"; 754: echo "\n"; 755: echo "\n"; 756: 757: echo "\n"; 758: echo "\n"; 759: echo "\n"; 760: echo "\n"; 761: 762: echo "\n"; 763: echo "\n"; 764: echo "\n"; 765: echo "\n"; 766: echo "\n"; 767: 768: echo "\n"; 769: echo "\n"; 770: echo "\n"; 771: echo "\n"; 772: 773: echo "\n"; 774: echo "\n"; 775: echo "\n"; 776: echo "\n"; 777: 778: echo "\n"; 779: echo "\n"; 780: echo "\n"; 781: echo "\n"; 782: 783: echo "\n"; 784: echo "\n"; 785: echo "\n"; 798: echo "\n"; 799: 800: echo "\n"; 801: echo "\n"; 802: echo "\n"; 803: echo "\n"; 804: 805: echo "\n"; 806: echo "\n"; 807: echo "\n"; 808: echo "\n"; 809: 810: echo "\n"; 811: echo "\n"; 812: echo "\n"; 825: echo "\n"; 826: 827: echo "\n"; 828: echo "\n"; 829: echo "\n"; 832: echo "\n"; 833: 834: echo "
".$DESK->Lang->Get("name")."
".$DESK->Lang->Get("host")."
".$DESK->Lang->Get("hostdesc")."
".$DESK->Lang->Get("from")."
".$DESK->Lang->Get("fromname")."
".$DESK->Lang->Get("wordwrap")."
".$DESK->Lang->Get("auth")."\n"; 786: echo "\n"; 797: echo "
".$DESK->Lang->Get("username")."
".$DESK->Lang->Get("password")."
".$DESK->Lang->Get("smtpsec")."\n"; 813: echo "\n"; 824: echo "
 \n"; 830: echo "Lang->Get("save")."\" onclick=\"DESK.formAPI('save_email',false,false,DESK.refreshSubpage);\" />\n"; 831: echo "
\n";
835: echo "\n";
836: } 837: } 838: 839: if ($DESK->Email->hasAccounts()) 840: { 841: echo "

".$DESK->Lang->Get("test")."

\n";
842: 843: echo "
\n"; 844: echo "\n"; 845: 846: echo " \n"; 852: echo " \n"; 853: echo "Lang->Get("test")."\" onclick=\"DESK.formAPI('email_test',false,false,DESK.refreshSubpage);\" />\n"; 854: 855: echo "\n";
856: } 857: 858: } 859: 860: else if ($mode == "emailtemplates") // p: email_templates 861: { 862: echo "
".sa_link("<< ".$DESK->Lang->Get("system_admin"))."
\n";
863: echo "

".$DESK->Lang->Get("email_templates")."

\n";
864: 865: echo $DESK->Lang->Get("available_macro").": %requestid%, %customer%, %update%

\n";
866: 867: $id = "open"; 868: echo "

".$DESK->Lang->Get("template_open")."

";
869: $t = $DESK->Email->GetTemplate($id); 870: if ($t === false) 871: { 872: $sub = ""; 873: $body = ""; 874: } 875: else 876: { 877: $sub=$t['subject']; 878: $body=$t['body']; 879: } 880: echo "
\n"; 881: echo "\n"; 882: echo "\n"; 883: echo "
\n";
884: echo "
\n";
885: echo "Lang->Get("save")."\" onclick=\"DESK.formAPI('template_".$id."',false,false,DESK.refreshSubpage);\" />\n"; 886: echo "

";
887: 888: 889: $id = "update"; 890: echo "

".$DESK->Lang->Get("template_update")."

";
891: $t = $DESK->Email->GetTemplate($id); 892: if ($t === false) 893: { 894: $sub = ""; 895: $body = ""; 896: } 897: else 898: { 899: $sub=$t['subject']; 900: $body=$t['body']; 901: } 902: echo "
\n"; 903: echo "\n"; 904: echo "\n"; 905: echo "
\n";
906: echo "
\n";
907: echo "Lang->Get("save")."\" onclick=\"DESK.formAPI('template_".$id."',false,false,DESK.refreshSubpage);\" />\n"; 908: echo "

";
909: 910: 911: $id = "close"; 912: echo "

".$DESK->Lang->Get("template_close")."

";
913: $t = $DESK->Email->GetTemplate($id); 914: if ($t === false) 915: { 916: $sub = ""; 917: $body = ""; 918: } 919: else 920: { 921: $sub=$t['subject']; 922: $body=$t['body']; 923: } 924: echo "
\n"; 925: echo "\n"; 926: echo "\n"; 927: echo "
\n";
928: echo "
\n";
929: echo "Lang->Get("save")."\" onclick=\"DESK.formAPI('template_".$id."',false,false,DESK.refreshSubpage);\" />\n"; 930: echo "

";
931: 932: } 933: 934: else 935: { 936: echo "

".$DESK->Lang->Get("system_admin")."

\n";
937: echo ErrorCode::UnknownMode.": ".$DESK->Lang->Get("action_invalid")." (".$mode.")
\n";
938: exit(); 939: } 940: echo ""; 941: ?> 942: