jUCP - Samp User Control Panel

  • Ich habe angefangen ein User Control Panel zu coden.
    Das ganze ist objektorientiert programmiert, gut strukturiert (Verzeichnis und Codestruktur).
    Es ist übersichtlich und einfach gehalten, Erweiterungen bspw. durch Plugins etc. sind ebenfalls möglich.
    Ich habe auch eine leichte API gecoded, dazu gleich mehr.


    Ich nutze das Design was ich auch in meinem Showroom vorgestellt habe.


    Moment an gibt es nicht viel über das UCP zu schreiben, da ich gerade eben erst mit den Basics fertig geworden bin.
    Fangen wir einfach mit den Snippets an.


    Konfigurationsdatei

    PHP
    <?php	/*	 * The ____  _        	_                      		 *	  |  _ \| |      	| |                     		 *	  | |_) | |_   _  ___| |__   ___ _ __ _ __ _   _ 	 *	  |  _ <| | | | |/ _ \ '_ \ / _ \ '__| '__| | | |	 *	  | |_) | | |_| |  __/ |_) |  __/ |  | |  | |_| |	 *	  |____/|_|\__,_|\___|_.__/ \___|_|  |_|   \__, |	 *	                                        	__/ |	 *	                                       	|___/  CMS	 * @author Azcaq <Azcaq@outlook.de>	 * @copyright 2015 Azcaq	*/	$_CFG = [		"MySQL:HOST" => "127.0.0.1",		"MySQL:USER" => "root",		"MySQL:PASS" => "123456",		"MySQL:DATA" => "samp"	];	$_SAMP = [		"SERVER_ADDR"	=> "127.0.0.1",		"SERVER_PORT"	=> 7777	];?>


    Index

    PHP
    <?php	/*	 * The ____  _        	_                      		 *	  |  _ \| |      	| |                     		 *	  | |_) | |_   _  ___| |__   ___ _ __ _ __ _   _ 	 *	  |  _ <| | | | |/ _ \ '_ \ / _ \ '__| '__| | | |	 *	  | |_) | | |_| |  __/ |_) |  __/ |  | |  | |_| |	 *	  |____/|_|\__,_|\___|_.__/ \___|_|  |_|   \__, |	 *	                                        	__/ |	 *	                                       	|___/  CMS	 * @author Azcaq <Azcaq@outlook.de>	 * @copyright 2015 Azcaq	*/	set_time_limit(0);	define("DEBUGGING", true);	ini_set("display_errors", DEBUGGING);	ini_set("memory_limit", -1);	date_default_timezone_set("Europe/Berlin");	error_reporting(E_ALL);	if(session_status() == PHP_SESSION_NONE) {		session_start();	}	require_once($_SERVER['DOCUMENT_ROOT'] . "/Configuration.php");	spl_autoload_register(function($className) {		require_once($_SERVER['DOCUMENT_ROOT'] . "/" . implode("/", explode("\", $className)) . ".php");	});	use System\PDO\Connection;	if(defined("AJAX") || defined("API")) {		new Connection(array($_CFG["MySQL:HOST"], $_CFG["MySQL:USER"], $_CFG["MySQL:PASS"], $_CFG["MySQL:DATA"]));	} else {		return new System\Bootstrap(new Connection(array($_CFG["MySQL:HOST"], $_CFG["MySQL:USER"], $_CFG["MySQL:PASS"], $_CFG["MySQL:DATA"])), array("main", "index"));	}?>


    Account Plugin

    PHP
    <?php	/*	 * The ____  _        	_                      		 *	  |  _ \| |      	| |                     		 *	  | |_) | |_   _  ___| |__   ___ _ __ _ __ _   _ 	 *	  |  _ <| | | | |/ _ \ '_ \ / _ \ '__| '__| | | |	 *	  | |_) | | |_| |  __/ |_) |  __/ |  | |  | |_| |	 *	  |____/|_|\__,_|\___|_.__/ \___|_|  |_|   \__, |	 *	                                        	__/ |	 *	                                       	|___/  CMS	 * @author Azcaq <Azcaq@outlook.de>	 * @copyright 2015 Azcaq	*/	namespace Application\Plugins\Azcaq\Account;	use System\Controller\Plugin as PluginExt;	class Plugin extends PluginExt {		public function __construct($data) {			parent::__construct($data);		}		public function Index() {			$this->view->set("Title", $this->user->getUsername());			$this->minRank(1);			$this->display();		}		public function Logout() {			$this->user->factory->Logout();		}	}?>


    API
    Ich halte gerne alles kurz, die Codes sollten ja eine Menge erklären.


    Aufruf

    Zitat

    Dies würde dann, wenn der Server online ist folgendes ausgeben:

    Code
    {"Status":1,"Hostname":"Samp-Rp.Ru | Server: 14 | Client: 0.3z","Gamemode":"Samp-Rp.Ru Russia","Players":"335","MaxPlayers":"1000","MapName":"Russia","Weather":"sonnig in Las Venturas","Version":"0.3z-R4-1000p"}


    Sollte der Server offline sein:

    Code
    {"Message":"Server is offline."}


    Aufruf

    Zitat

    Dies gibt dann wenn der Server online ist und dort Spieler drauf sind folgendes aus:

    Code
    {"1":"[BG]Fast","3":"qsen"}


    Verzeichnisstruktur



  • Schaut gut aus 10/10. Finde die Ordnerstruktur übersichtlich. Der Code ist für einen Anfänger aber leider nichts .. wäre besser wenn du es kommentiert hättest :D für die anderen bzw. die die PHP erst neu erlernen.

    I like things with "C“ : Code + Cookies + Coffee + Cola + CBacon

  • Beitrag von MASYNO ()

    Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.