====== Štruktúra súborov ====== ===== Moduly ===== Moduly by mali byť uložené niekde v adresári ''/include/'' alebo ''/local_service/CUSTOMER_DIR/include/''. \\ ''CUSTOMER_DIR'' je názov adresára konkrétneho zákazníka. * Názov súboru musí obsahovať na konci ''.class.php'', napríklad ''myClass254.class.php''. * Treba striktne dodržiavať veľkosť písmen. Ak súbor alebo trieda budú obsahovať veľké písmená, tak treba tieto veľké písmená dodržiavať aj pri volaní. OS Windows nerozoznáva veľké a malé písmená v názvoch súborov, ale systém Linux áno. Takže pri vývoji na OS Windows si treba dávať na toto pozor, pretože na 99% je produkčné prostredie pod OS Linux. * V takomto súbore by sa mala nachádzať práve jedna trieda a jej názov by mal byť odvodený od umiestnenia v adresárovej štruktúre. Napríklad trieda v súbore ''/include/myFolder90/otherFolder3/myClass254.class.php'' bysa mala volať ''%%class studio2_myFolder90__otherFolder3__myClass254%%''. Všimnite si dve podtrhovátka, ktoré oddeľujú adresáre. * Ak názov nebude takto odvodený, potom musí byť na konci súboru ''return'' s názov tejto triedy ako //string//. Napríklad ak sa trieda bude volať ''class myClass254'', potom pred koncom súboru treba vložiť ''return 'myClass254';'' Príklad súboru ''/include/accounts/accountTools.class.php''. cc_flash(array($this, "setEmail"), $settings); } /** * Nastaví email pre aktuálne prihlásený účet. * * @param array $settings * @param string $settings["email"] */ function setEmail($settings = array()) { if ($_SESSION['remote_addr'] !== $_SERVER['REMOTE_ADDR']) { sleep(2); return x2_register_result(FALSE, getErrorText("1013.05.16")); } if (empty($_SESSION["account_id"])) { sleep(2); return x2_register_result(FALSE, getErrorText("1013.05.1")); } if (!x2_validate_mail($settings["email"])) { // return x2_register_result(FALSE, getErrorText("1013.05.2")); return x2_register_result(FALSE, getErrorObject(getErrorText("1013.05.2"), array("repeatInput" => TRUE))); } $row = $this->db->row( "SELECT [account_id], [account_login], [account_name] FROM [st2_accounts] WHERE [account_email]=%s AND [account_id]!=%i", $settings["email"], $_SESSION["account_id"] ); if ($row) { // return x2_register_result(FALSE, getErrorText("1013.05.7")); return x2_register_result(FALSE, getErrorObject(getErrorText("1013.05.7"), array("repeatInput" => TRUE))); } # ... return x2_register_result(TRUE); } } ?>