Exemplo n.º 1
0
 /**
  * Retrieve a DBHandler instance
  *
  * @return $instance;
  */
 public static function getInstance()
 {
     if (!self::$instance) {
         self::$instance = new PDO("mysql:host=" . self::DB_SERVER . ";dbname=" . self::DB_DATABASE, self::DB_SERVER_USERNAME, self::DB_SERVER_PASSWORD);
         self::$instance->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
     }
     return self::$instance;
 }
 /**
  * Installs tables with default user
  * @param $db_type
  */
 public function install($db_type)
 {
     $f3 = \Base::instance();
     $db_type = strtoupper($db_type);
     if ($db = DBHandler::instance()->get($db_type)) {
         $f3->set('DB', $db);
     } else {
         $f3->error(256, 'no valid Database Type specified');
     }
     // setup the models
     \Model\User::setup();
     \Model\Payload::setup();
     \Model\Webot::setup();
     // create demo admin user
     $user = new \Model\User();
     $user->load(array('username = ?', 'mth3l3m3nt'));
     if ($user->dry()) {
         $user->username = '******';
         $user->name = 'Framework Administrator';
         $user->password = '******';
         $user->email = '*****@*****.**';
         $user->save();
         //migrate payloads successfully
         $payload_file = $f3->ROOT . $f3->BASE . '/db_dump_optional/mth3l3m3nt_payload';
         if (file_exists($payload_file)) {
             $payload = new \Model\Payload();
             $payload_file_data = $f3->read($payload_file);
             $payloadarray = json_decode($payload_file_data, true);
             foreach ($payloadarray as $payloaddata) {
                 $payload->pName = $payloaddata['pName'];
                 $payload->pType = $payloaddata['pType'];
                 $payload->pCategory = $payloaddata['pCategory'];
                 $payload->pDescription = $payloaddata['pDescription'];
                 $payload->payload = $payloaddata['payload'];
                 $payload->save();
                 //ensures values set to null before continuing update
                 $payload->reset();
             }
             //migtate payloads
             \Flash::instance()->addMessage('Payload StarterPack: ,' . 'All Starter Pack Payloads added New database', 'success');
         } else {
             \Flash::instance()->addMessage('Payload StarterPack: ,' . 'StarterPack Database not Found no payloads installed ', 'danger');
         }
         \Flash::instance()->addMessage('Admin User created,' . ' username: mth3l3m3nt, password: mth3l3m3nt', 'success');
     }
     \Flash::instance()->addMessage('New Database Setup Completed', 'success');
 }
Exemplo n.º 3
0
}
//handles all pagination
\Template::instance()->extend('pagebrowser', '\\Pagination::renderTag');
\Template\FooForms::init();
if (isset($writeableErr)) {
    header('Content-Type: text;');
    die(implode("\n", $writeableErr));
}
//Initialize some F3 Settings
$f3->set('FLASH', Flash::instance());
$web = Web::instance();
//Database Setup From our Config Class Instance
$cfg = Config::instance();
$f3->set('CONFIG', $cfg);
if ($cfg->ACTIVE_DB) {
    $f3->set('DB', DBHandler::instance()->get($cfg->ACTIVE_DB));
} else {
    $f3->error(500, 'Sorry, but there is no active DB setup.');
}
///////////////
//  frontend //
///////////////
$f3->route(array('GET /', 'GET /@page', 'GET /payloads', 'GET /page/@page'), 'Controller\\Payload->getList');
// view single
$f3->route(array('GET /payload/@id'), 'Controller\\Payload->viewSingle');
$f3->route(array('GET /payload/search'), 'Controller\\Payload->search_frontend');
///////////////
//  backend  //
///////////////
if (\Controller\Auth::isLoggedIn()) {
    // general CRUD operations