Hogyan kell új config formot létrehozni a chat control panelben
Hozzunk létre egy demo szolgáltatást
- Hozzuk létre a service mappát itt: C:\wamp64\www\ozekiservices
- Homepage elkészítése ide: C:\wamp64\www\ozekiservices\{service neve}\pages\home\home.php
- _lnclude.php file a service gyökerébe: C:\wamp64\www\ozekiservices\{service neve}\_include.php
- Böngésző: 127.0.0.1/ozeki
- Install services...
- Itt a listából keresd ki a te servicedet majd install.
home.php
<?php include_once("$dirprefix/ozekiservices/demo/entities/ent.config.demo.php"); $ent = createEntConfigDemo(); entLoadObj($ent,"democonfig",$obj,$error); echo json_encode($obj); ?>
_include.php
<?php addsrv("demo","Demo"); addp("/pages/home/home.php","Home"); ?>
Hozunk létre egy generátor által kezelt config form leírást
- Hozzuk létre az entitást itt: C:\wamp64\www\ozekiservices\demo\entities\ent.config.demo.php
<?php $sysdir = "$dirprefix/ozeki/sys/"; include_once("$sysdir/form/_include.php"); include_once("$sysdir/encryption/encryption.php"); function createEntConfigDemo() { $ent = ent("democonfig"); $ent["singleton"] = true; $ent["createbutton"] = false; $ent["deletebutton"] = false; $ent["dir"] = "/ozekiconfig"; $ent["datafile"] = "democonfig.json"; $ent["usetabs"] = true; $ent["usegroupboxes"] = true; $attrname = "demonumber"; $ent["a"][$attrname] = attrInt($attrname, "Demo number"); $ent["a"][$attrname]["tabpage"] = "General"; $ent["a"][$attrname]["groupbox"] = "Product"; $ent["a"][$attrname]["description"] = "Please provide the number for the demo."; $ent["a"][$attrname]["below"] = "This is the number that is used for the config."; $ent["a"][$attrname]["defaultvalue"] = 10; $attrname = "demotext"; $ent["a"][$attrname] = attrText($attrname, "Demo text"); $ent["a"][$attrname]["tabpage"] = "General"; $ent["a"][$attrname]["groupbox"] = "Product"; $ent["a"][$attrname]["description"] = "Please provide the text for the demo."; $ent["a"][$attrname]["below"] = "This is the text that is used for config."; $ent["a"][$attrname]["defaultvalue"] = "empty"; return $ent; } ?>
- Készítsük el a form.php file-t itt: C:\wamp64\www\ozekiservices\demo\form.php
<?php include_once("$dirprefix/ozekiservices/demo/entities/ent.config.demo.php"); $serviceform["demo"]["democonfig"] = createEntConfigDemo(); ?>
- Ahhoz hogy a chatcontrolpanel megjelenítse a formunkat szükséges egy navbar-t is generálni,
ezt a következő helyen kell megtenni: C:\wamp64\www\ozekiservices\demo\navbar_details.php
<?php $servicenavbar["dashcardtest"]["config"]["label"] = "Config"; $servicenavbar["dashcardtest"]["config"]["section"] = "Demo"; $servicenavbar["dashcardtest"]["config"]["order"] = 10; $servicenavbar["dashcardtest"]["config"]["url"] = "&entsrv=demo&ent=democonfig"; $servicenavbar["dashcardtest"]["config"]["icon"] = "configs"; ?>
- A kiemelt sorokkal jelölve van,
hogy hol szükséges ugyanazt az elnevezést használjuk.
Ezesetben a "democonfig" a neve az entitásnak amit létrehoztunk.
Illetve a 3. pontban az "entsrv" a service nevét kell tartalmazza.
Hogyan fog a generált form megjelenni a chat control panelben
A controlpanel automatikusan legenerálja a szükséges formot a metaleírás alapján. A tabpage és a groupbox paraméterek alapján kategorizálja az értékeket (lásd Figure 1).
Hogyan tudja a PHP a generált formon beállított értékeket változókban elérni
Ahhoz hogy elérjük az entitásban tárolt értékeket a következő lépéseket kell követni:
- Tegyük változóba az entitásunkat amelyet a C:\wamp64\www\ozekiservices\demo\entities\ent.config.demo file-ban létrehozott függvény meghívásával tehetünk meg ( createEntConfigDemo() ).
- Töltsük be az objektumot az entLoadObj függvény segítségével.
A függvény paraméterei:- $ent: az entitást amit betöltöttünk az első lépésben.
- $objid: Az objektum azonosítója singleton entitás esetében ez az entitás neve.
- $obj: Az objektum amit visszaad a függvény
- $error
- Ezután a $obj array bármelyik értékét eltudjuk érni.
Hogyan tudjuk a generált formot utólag bővíteni egy configuráható értékkel
Ahhoz hogy bővítsük a formot, nyissuk meg az entitás metaleírását.
Ez esetben: C:\wamp64\www\ozekiservices\demo\entities\ent.config.demo.php
majd adjuk hozzá az új elemet.
$attrname = "demotext"; $ent["a"][$attrname] = attrText($attrname, "Demo text"); $ent["a"][$attrname]["tabpage"] = "General"; $ent["a"][$attrname]["groupbox"] = "Product"; $ent["a"][$attrname]["description"] = "Please provide the text for the demo."; $ent["a"][$attrname]["below"] = "This is the text that is used for config."; $ent["a"][$attrname]["defaultvalue"] = "empty";
Elérhető form típusok:
- Text
- Textbox
- Number
- Checkbox
- Switch
- File
- Date
- Date time
- Password
- Label (disabled input)
- Unknown - Ha ismeretlen a típus