HEX
Server: Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/7.4.30
System: Linux iZj6c1151k3ad370bosnmsZ 3.10.0-1160.76.1.el7.x86_64 #1 SMP Wed Aug 10 16:21:17 UTC 2022 x86_64
User: root (0)
PHP: 7.4.30
Disabled: NONE
Upload Files
File: /var/www/html/inventory.breadsecret.com/class/Controller/eventSetting.php
<?php
namespace Controller;

use Responses\Message, Responses\Action;
use Database\Sql, Database\Listable;
use Pages\Page, Pages\ListPage, Pages\FormPage;
use Routing\Route;
use Utility\WebSystem;

class eventSetting {
	
	/* Page Function */
	public function form($request) {
		if (!user::checklogin()) return new Action('redirect', WebSystem::path(Route::getRouteByName('page.login')->path(), false, false));
		
		$obj = null;
		
		return new FormPage('eventSetting/form', $obj);
	}
	
	public function edit($request) {		
		if (!user::checklogin()) return new Action('redirect', WebSystem::path(Route::getRouteByName('page.login')->path(), false, false));
		
        $startDateMeta = self::getSettingMeta("regStartDate");

        if(is_null($startDateMeta)){   
            $sql = Sql::insert('eventSetting')->setFieldValue([
                "metaKey"=>"'regStartDate'", 
                "metaValue"=>"'".strip_tags($request->post->startDate)."'"
            ]);
            $sql->prepare()->execute();			
        } else {
            $sql = Sql::update('eventSetting')->setFieldValue([
                "metaValue"=>"'".strip_tags($request->post->startDate)."'"
            ])->where(['id', '=', $startDateMeta->id]);
            $sql->prepare()->execute();		  
        }

        $endDateMeta = self::getSettingMeta("regEndDate");

        if(is_null($endDateMeta)){   
            $sql = Sql::insert('eventSetting')->setFieldValue([
                "metaKey"=>"'regEndDate'", 
                "metaValue"=>"'".strip_tags($request->post->endDate)."'"
            ]);
            $sql->prepare()->execute();			
        } else {
            $sql = Sql::update('eventSetting')->setFieldValue([
                "metaValue"=>"'".strip_tags($request->post->endDate)."'"
            ])->where(['id', '=', $endDateMeta->id]);
            $sql->prepare()->execute();		  
        }
		
        return new Message('info', L('info.updated'));
		
	}
	
	// fetch mata data 
	public static function getSettingMeta($metaKey, $fetchMode=\PDO::FETCH_OBJ){
	 	$sql = Sql::select("eventSetting")->where(['metaKey', '=', '?']);
		$stm = $sql->prepare();
		$stm->execute([$metaKey]);
		$obj = $stm->fetch($fetchMode);
		if ($obj === false) return null;
		return $obj;
	}    

}