Example #1
0
 public function __construct($model = NULL)
 {
     if (!defined('MODEL_DIR')) {
         define('MODEL_DIR', 'models');
     }
     Oraculum::Load('DBO');
     Oraculum::Load('ActiveRecord');
     return !is_null($model) ? $this->LoadModel($model) : $this;
 }
Example #2
0
 public static function checkDebug()
 {
     if (defined('OF_DEBUG') && OF_DEBUG) {
         error_reporting(E_ALL | E_STRICT);
         ini_set('display_errors', TRUE);
         Oraculum::Load('Exceptions');
     } else {
         ini_set('display_errors', FALSE);
     }
 }
Example #3
0
 public function __construct()
 {
     if (!defined('URL')) {
         define('URL', '');
     }
     Oraculum::Load('Crypt');
     Oraculum::Load('HTTP');
     Oraculum::Load('Request');
     $this->_logoffurl = URL . 'logoff';
     $this->_loginurl = URL . 'login';
 }
Example #4
0
 public static function showError($code = NULL, $message = NULL, $file = NULL, $line = NULL, $context = null)
 {
     Oraculum::Load('Logs');
     $filecode = NULL;
     $report = '<h1>' . $message . '</h1>';
     $report .= '<strong>Error Code:</strong> #' . $code . '<br />';
     $report .= '<strong>Source File:</strong> ' . $file . ' <strong>line ' . $line . '</strong><br />';
     $report .= '<h3>Backtrace</h3>';
     $report = '<div style=\'float:left;text-align:left;\'>' . $report . '</div>';
     Oraculum_Logs::alert($report);
 }
 public function start()
 {
     Oraculum::Load('Request');
     $request = Oraculum_Request::request();
     $url = str_ireplace(URL, '', $request);
     $gets = Oraculum_Request::gets();
     if (isset($gets[BASE + 1])) {
         $page = $gets[BASE + 1];
     } else {
         $page = $this->_defaulturl;
         //throw new Exception('[Erro CGFC36] Nao foi possivel determinar a pagina atraves da URL');
     }
     if ($url == '') {
         $url = $this->_defaulturl;
     }
     Oraculum_App::LoadControl()->LoadPage($page, $url);
 }
Example #6
0
?>
public/img/oraculum.png" alt="Oraculum Framework" title="Oraculum" id="logo" />
</a>
<br />
<div id="content">
    <em>Oraculum Framework :: <?php 
echo $_SERVER['SERVER_NAME'];
?>
</em>
<p>
<?php 
/*
	Abaixo ocorre a mesma coisa que no inicio,
	e' carregado o modulo Oraculum_Text
*/
Oraculum::Load('Text');
?>
<br />
<?php 
echo Oraculum_Text::saudacao();
?>
 nobre desenvolvedor!<br />
Voc&ecirc; est&aacute; agora sendo apresentado a uma aplica&ccedil;&atilde;o modelo,
desenvolvida inteiramente com o Oraculum Framework para que voc&ecirc; possa
entender de forma uma forma mais simples poss&iacute;vel o seu funcionamento.<br /><br />
Sinta-se &agrave; vontade para explorar os c&oacute;digos e fazer altera&ccedil;&otilde;es
para se familiarizar com este novo ambiente de desenvolvimento.<br /><br />

Qualquer d&uacute;vida acesse o site oficial do projeto e entre em contato:<br />
<a href="http://oraculumframework.org/" target="_blank">
http://oraculumframework.org/</a><br /><br />
Example #7
0
File: plugin.php Project: phpon/on
<?php

$plugin = Oraculum_Request::getvar('plugin');
Oraculum::Load('Plugins');
switch ($plugin) {
    case 'calendar':
        Oraculum_Plugins::Load('calendar');
        $calendar = new Oraculum_Calendar();
        Oraculum_Register::set('calendar', $calendar);
        break;
    case 'captcha':
        Oraculum_Plugins::Load('captcha');
        $vcaptcha = Oraculum_Request::getvar('captcha');
        if ($vcaptcha == 'generate') {
            $captcha = new Oraculum_Captcha();
            exit;
        }
        break;
    case 'password-generator':
        Oraculum_Plugins::Load('password-generator');
        $password1 = new Oraculum_PasswordGenerator(1);
        $password2 = new Oraculum_PasswordGenerator(2);
        $password3 = new Oraculum_PasswordGenerator(3);
        Oraculum_Register::set('password1', $password1);
        Oraculum_Register::set('password2', $password2);
        Oraculum_Register::set('password3', $password3);
        break;
    default:
        $plugin = 'default';
}
Oraculum_WebApp::LoadView()->AddTemplate('geral')->LoadPage('plugin-' . $plugin);
Example #8
0
 public static function LoadAlias($class)
 {
     if ($class == 'Request' || $class == 'All') {
         Oraculum::Load('Request');
         /**********************************
          * Tratamento de requisicoes
          **********************************/
         Oraculum_Request::getpagina();
         Oraculum_Alias::AddAlias('post', 'Oraculum_Request::post');
         Oraculum_Alias::AddAlias('get', 'Oraculum_Request::get');
         Oraculum_Alias::AddAlias('sess', 'Oraculum_Request::sess');
         Oraculum_Alias::AddAlias('setsess', 'Oraculum_Request::setsess');
         Oraculum_Alias::AddAlias('unsetsess', 'Oraculum_Request::unsetsess');
         Oraculum_Alias::AddAlias('init_sess', 'Oraculum_Request::init_sess');
         Oraculum_Alias::AddAlias('set_cookie', 'Oraculum_Request::set_cookie');
         Oraculum_Alias::AddAlias('cookie', 'Oraculum_Request::set_cookie');
         Oraculum_Alias::AddAlias('getpagina', 'Oraculum_Request::getpagina');
         Oraculum_Alias::AddAlias('getid', 'Oraculum_Request::getid');
         Oraculum_Alias::AddAlias('getlast', 'Oraculum_Request::getlast');
         Oraculum_Alias::AddAlias('getvar', 'Oraculum_Request::getvar');
         Oraculum_Alias::AddAlias('gets', 'Oraculum_Request::gets');
     }
     if ($class == 'Crypt' || $class == 'All') {
         Oraculum::Load('Crypt');
         /**********************************
          * Tratamento de criptografia
          **********************************/
         Oraculum_Alias::AddAlias('strcrypt', 'Oraculum_Crypt::strcrypt');
         Oraculum_Alias::AddAlias('strdcrypt', 'Oraculum_Crypt::strdcrypt');
         Oraculum_Alias::AddAlias('blowfish', 'Oraculum_Crypt::blowfish');
         Oraculum_Alias::AddAlias('blowfishcheck', 'Oraculum_Crypt::blowfishcheck');
     }
     if ($class == 'HTTP' || $class == 'All') {
         Oraculum::Load('HTTP');
         /**********************************
          * Tratamento de parametros HTTP
          **********************************/
         Oraculum_Alias::AddAlias('redirect', 'Oraculum_HTTP::redirect');
         Oraculum_Alias::AddAlias('ip', 'Oraculum_HTTP::ip');
         Oraculum_Alias::AddAlias('host', 'Oraculum_HTTP::host');
     }
     if ($class == 'Validate' || $class == 'All') {
         Oraculum::Load('Validate');
         /**********************************
          * Tratamento de formularios
          **********************************/
         Oraculum_Alias::AddAlias('validar', 'Oraculum_Validate::validar');
         Oraculum_Alias::AddAlias('verificaCPF', 'Oraculum_Validate::verificaCPF');
         Oraculum_Alias::AddAlias('verificaEmail', 'Oraculum_Validate::verificaEmail');
     }
     if ($class == 'Views' || $class == 'All') {
         Oraculum::Load('Views');
         /**********************************
          * Tratamento de Views
          **********************************/
     }
     if ($class == 'Text' || $class == 'All') {
         Oraculum::Load('Text');
         /**********************************
          * Tratamento de informacoes textuais
          **********************************/
         Oraculum_Alias::AddAlias('moeda', 'Oraculum_Text::moeda');
         Oraculum_Alias::AddAlias('moedasql', 'Oraculum_Text::moedasql');
         Oraculum_Alias::AddAlias('data', 'Oraculum_Text::data');
         Oraculum_Alias::AddAlias('data_mysql', 'Oraculum_Text::data_mysql');
         Oraculum_Alias::AddAlias('hora', 'Oraculum_Text::hora');
         Oraculum_Alias::AddAlias('saudacao', 'Oraculum_Text::saudacao');
         Oraculum_Alias::AddAlias('getpwd', 'Oraculum_Text::getpwd');
         Oraculum_Alias::AddAlias('inflector', 'Oraculum_Text::inflector');
         Oraculum_Alias::AddAlias('plural', 'Oraculum_Text::plural');
     }
     if ($class == 'Files' || $class == 'All') {
         Oraculum::Load('Files');
         /**********************************
          * Tratamento de inclusao de arquvos
          **********************************/
         Oraculum_Alias::AddAlias('inc', 'Oraculum_Files::inc');
     }
     if ($class == 'Logs' || $class == 'All') {
         Oraculum::Load('Logs');
         /**********************************
          * Tratamento de erros e logs
          **********************************/
         Oraculum_Alias::AddAlias('alert', 'Oraculum_Logs::alert');
     }
 }
Example #9
0
 public function DbAuth()
 {
     if (is_object($this->_dbobj)) {
         $userfield = 'getBy' . ucwords($this->_userfield);
         $passwordfield = $this->_passwordfield;
         $keyfield = $this->_keyfield;
         $obj = $this->_dbobj;
         $register = $obj->{$userfield}($this->_user);
         if (sizeof($register) == 1) {
             if ($this->_crypttype == 'md5') {
                 if ($register->{$passwordfield} == md5($this->_password)) {
                     $this->_key = $register->{$keyfield};
                     $this->_register = $register;
                     return true;
                 } else {
                     return false;
                 }
             } elseif ($this->_crypttype == 'sha1') {
                 if ($register->{$passwordfield} == sha1($this->_password)) {
                     $this->_key = $register->{$keyfield};
                     $this->_register = $register;
                     return true;
                 } else {
                     return false;
                 }
             } elseif ($this->_crypttype == 'blowfish') {
                 Oraculum::Load('Crypt');
                 if (Oraculum_Crypt::blowfishcheck($this->_password, $register->{$passwordfield})) {
                     $this->_key = $register->{$keyfield};
                     $this->_register = $register;
                     return true;
                 } else {
                     return false;
                 }
             } else {
                 if ($register->{$passwordfield} == $this->_password) {
                     $this->_key = $register->{$keyfield};
                     return true;
                 } else {
                     return false;
                 }
             }
         }
     } else {
         throw new Exception('Para autenticacao atraves de base de dados deve ser passada uma instancia relacionada a uma entidade do banco');
     }
 }
Example #10
0
<?php

Oraculum::Load('DBO');
class Oraculum_Cart extends DBO
{
    private $_class = null;
    private $_fields = array();
    private $_results = array();
    public function newPed($campos)
    {
        while (list($key, $val) = each($campos)) {
            $this->_class->{$key} = $val;
        }
        $this->_class->insert();
        return $this->_class->getInsertId();
    }
    public function newItem($campos)
    {
        while (list($key, $val) = each($campos)) {
            $this->_class->{$key} = $val;
        }
        $this->_class->insert();
        return $this->_class->getInsertId();
    }
    public function delItem($tabela, $campo, $valor)
    {
        $sql = "delete from {$tabela} where {$campo} = {$valor}";
        return $this->_class->execSQL($sql);
    }
    public function updQtd($tabela, $campo, $valor, $codigo, $valcod)
    {
Example #11
0
<?php

Oraculum::LoadContainer('App');
class Oraculum_WebApp extends Oraculum_App
{
    public function __construct()
    {
        header('X-Powered-By: Oraculum PHP Framework');
        Oraculum_App::checkDebug();
    }
}
Example #12
0
<?php

/*
  Utilizar OF_DEBUG true apenas em ambiente de desenvolvimento
	  pois habilita a exibição de todos os erros e alertas (E_STRING)
*/
define('OF_DEBUG', false);
define('DS', DIRECTORY_SEPARATOR);
/*
    Definindo diretorio do framework ../libraries/OF/
*/
define('PATH', getcwd() . DS . '..' . DS . 'libraries' . DS . 'OF' . DS);
/*
    A linha abaixo foi comentada por que foi identificado problemas em sistemas Windows
    ini_set('include_path', PATH.'::'.dirname(__FILE__));
*/
ini_set('include_path', PATH);
date_default_timezone_set('America/Sao_Paulo');
include 'Oraculum.php';
Oraculum::Load('Register');
Oraculum::Load('Request');
Oraculum::Load('Alias');
Oraculum_Alias::LoadAlias('Request');
/*
    Utilizar apenas em ambiente de desenvolvimento
    Oraculum::Load('Exceptions');
*/
Example #13
0
 public function FrontController()
 {
     Oraculum::Load('FrontController');
     return new Oraculum_FrontController();
 }
Example #14
0
define("SMTP_USER", "email");
// Usuario SMTP
define("SMTP_PASS", "senha");
// Senha SMTP
define("LANG", "pt_br");
// Idioma
define("NLOGS", 0);
// Nivel de logs. 0: Nada. 1: Erros. 2: Alertas. 3: Tudo
date_default_timezone_set("America/Sao_Paulo");
// Timezone
include_once "./apps/" . PROJECT . "/config/workspaces/load.php";
// Carregando Workspaces
include_once "./library/fs.php";
// Carregando funcoes gerais
include_once "./library/core/Oraculum.php";
Oraculum::load_all();
// Carregando Base do Oraculum
Oraculum::start();
// Inicializando Oraculum
/* Descomente a linha abaixo para carregar os arquivos de traducao */
//I18N::load();
/* Descomente a linha abaixo caso esteja utilizando algum Banco de Dados
   configurado com o Doctrine ORM */
//include_once("./models/doctrine/".PROJECT.".php");
include_once "./controllers/Controller.php";
include_once "./apps/" . PROJECT . "/controllers/modulos/index/home.php";
/* Descomente a linha abaixo caso esteja utilizando algum Banco de Dados
   configurado com o Doctrine ORM */
//Doctrine::loadModels("./apps/".PROJECT."/models/entidades");
// Inicializando sessao
init_sess();
            $db = new Oraculum_Models();
            $db->setDsn($banco . '://' . $usuario . ':' . $senha . '@' . $servidor . '/' . $base);
            $db->PDO();
            $dbo = new DBO();
            DBO::execSQL('USE ' . $base . ';');
            $query = DBO::execSQL('SHOW KEYS FROM ' . $tabela . ' WHERE Key_name = \'PRIMARY\';')->fetchAll();
            //$d=$query->fetchAll();
            //var_dump($query);
            $keys = array();
            foreach ($query as $r) {
                if (is_null($firstkey)) {
                    $firstkey = $r['Column_name'];
                }
                $keys[] = $r['Column_name'];
            }
            $keys = 'array(\'' . implode('\',\'', $keys) . '\')';
            $control = '<' . '?' . 'php' . NL . 'Oraculum::Load(\'Models\');' . NL . 'Oraculum::Load(\'Plugins\');' . NL . 'Oraculum::Load(\'HTTP\');' . NL . '// Carrega o arquivo de conexao com o banco' . NL . '$db=new Oraculum_Models(\'' . $banco . '\');' . NL . NL . '// Carrega dinamicamente uma classe para a tabela ' . $tabela . NL . '$db->LoadModelClass(\'' . $tabela . '\');' . NL . '$action=Oraculum_Request::getvar(\'' . $arquivo . '\');' . NL . NL . '// Verifica se a acao e\' permitida no sistema' . NL . 'if (!(in_array($action, array(\'cadastrar\', \'listar\', \'alterar\', \'excluir\'))))' . NL . '	$action=\'listar\';' . NL . NL . '// Verifica se existe uma funcao com o mesmo nome da acao' . NL . 'if (is_callable($action))' . NL . '    call_user_func($action); // Chama a funcao' . NL . 'else' . NL . '// Senao chama a funcao listar (esse e\' um tratamento de seguranca)' . NL . 'if (is_callable(\'listar\'))' . NL . '	call_user_func(\'listar\');' . NL . NL . 'function listar() {' . NL . '	// Carrega o plugin Oraculum_Datagrid' . NL . '	Oraculum_Plugins::Load(\'datagrid\');' . NL . '	// Cria uma instancia da classe' . NL . '	$tb=new ' . $classe . '();' . NL . '   $tb->setKey(' . $keys . ');' . NL . '	// Carrega todos os registros da tabela/entidade' . NL . '	$regs=$tb->getAll();' . NL . '	// Cria uma instancia de do plugin Oraculum_Datagrid' . NL . '	$grid=new Oraculum_Datagrid($regs);' . NL . NL . '	// Define a classe CSS da tabela' . NL . '	$grid->setTableClass(\'table table-bordered table-striped\');' . NL . '	// Define a classe CSS do botao de atualizacao' . NL . '	$grid->setUpdateClass(\'btn btn-primary\');' . NL . '	// Define a classe CSS do botao de exclusao' . NL . '	$grid->setDeleteClass(\'btn btn-danger\');' . NL . '	// Determina o padrao de URL para o link de atualizar' . NL . '	$grid->setUpdateURL(URL.\'' . $arquivo . '/alterar/%id%\');' . NL . '	// Determina o padrao de URL para o link de excluir' . NL . '	$grid->setDeleteURL(URL.\'' . $arquivo . '/excluir/%id%#confirm%id%" onclick="if(confirm(\\\'Tem certeza que deseja excluir?\\\')){return true;}else{return false;}\');' . NL . '	// Define o label do botao de atualizacao' . NL . '	$grid->setUpdateLabel(\'<i class="icon-pencil icon-white"></i> Alterar\');' . NL . '	// Define o label do botao de exclusao' . NL . '	$grid->setDeleteLabel(\'<i class="icon-remove icon-white"></i> Excluir\');' . NL . '	// Define o texto que deve ser exibido caso nao existem registros' . NL . '	$grid->setNoRecordsFound(\'Nenhum registro encontrado!\');' . NL . '	// Gera o HTML do grid' . NL . '	$grid=$grid->generate();' . NL . '	// Armazena o grid num registrador chamado grid que sera\' lido na view' . NL . '	Oraculum_Register::set(\'grid\', $grid);' . NL . '	// Armazena os registros num registrador chamado regs que sera\' lido na view' . NL . '	Oraculum_Register::set(\'regs\', $regs);' . NL . '}' . NL . NL . 'function excluir() {' . NL . '	// Cria uma instancia da classe' . NL . '	$tb=new ' . $classe . '();' . NL . '   $tb->setKey(' . $keys . ');' . NL . '	// Captura o que estiver apos /excluir/ na URL' . NL . '	$id=(int)Oraculum_Request::getvar(\'excluir\');' . NL . '	// Carrega todos os registros que tiverem o ID relacionado' . NL . '	$reg=$tb->getBy' . ucwords($firstkey) . '($id);' . NL . '	if (sizeof($reg)>0) {' . NL . '		// Se encontrar algum registro, o mesmo e\' apagado' . NL . '		$reg->delete();' . NL . '	}' . NL . '	// Redireciona para a pagina de listagem' . NL . '	Oraculum_HTTP::redirect(URL.\'' . $arquivo . '\');' . NL . '}' . NL . NL . 'function cadastrar() {' . NL . '  // No momento ainda e\' necessario criar manualmente o cadastro' . NL . '}' . NL . NL . 'function alterar() {' . NL . '  // No momento ainda e\' necessario criar manualmente a alteracao' . NL . '}' . NL . NL . 'if ($action==\'listar\'):' . NL . '  Oraculum_WebApp::LoadView()' . NL . '     ->AddTemplate(\'geral\')' . NL . '	  ->LoadPage(\'' . $arquivo . '-listar\'); // Carrega a view de listagem' . NL . 'endif;';
            $viewlistar = '<' . '?' . 'php $grid=Oraculum_Register::get(\'grid\'); ?' . '>' . "\n\r" . '<' . '?' . 'php echo $grid; ?' . '>';
            Oraculum_Register::set('model', $model);
            Oraculum_Register::set('control', $control);
            Oraculum_Register::set('viewlistar', $viewlistar);
            Oraculum_Register::set('nomebanco', $banco);
            Oraculum_Register::set('arquivo', $arquivo);
        } catch (Exception $e) {
            Oraculum_Register::set('msg', 'Ocorreu algum problema ao capturar as informa&ccedil;&otilde;es do banco');
            Oraculum::Load('Logs');
            Oraculum_Alias::LoadAlias('Logs');
        }
    }
}
Oraculum_WebApp::LoadView()->AddTemplate('geral')->LoadPage('gerador-de-codigos');
Example #16
0
File: 404.php Project: phpon/on
<?php

/*
	Abaixo e' utilizada a classe Oraculum_Register,
	por isso e' utilizado Oraculum::Load('Regiter')
	para carregar o modulo necessario.

	O ideal e chamar os modulos no Bootstrap (arquivo de
	inicializacao), ou nos controladores.
	O motivo de estar aqui e' apenas para demonstracao.
*/
Oraculum::Load('Register');
/*
	A classe Oraculum_Register serve para registrar variaveis
	entre arquivos (controladores, views e models)
	Para definir: Oraculum_Register::set('variavel', 'valor');
	Para recuperar: Oraculum_Register::get('variavel');
*/
Oraculum_Register::set('titulo', 'Erro 404 - P&aacute;gina n&atilde;o encontrada');
?>
<div id="erro">
<h1>A p&aacute;gina n&atilde;o pode ser encontrada ;-(</h1>
<h2>HTTP ERRO 404</h2>
<strong>Causas mais comuns:</strong><br />

<ul>
  <li>
    Pode haver um erro na digita&ccedil;&atilde;o do endere&ccedil;o.
  </li>
  <li>
    Se voc&ecirc; clicou em um link, ele pode estar desatualizado.
Example #17
0
<?php

ini_set('display_errors', true);
header('Content-Type: text/html; charset=iso-8859-1');
header('X-Powered-By: Oraculum PHP Framework');
date_default_timezone_set("America/Sao_Paulo");
include './bootstrap.php';
Oraculum::LoadContainer('WebApp');
$app = new Oraculum_WebApp();
$app->FrontController()->setBaseUrl('/projetos/Kap/kap/')->setDefaultPage('home')->setErrorPage('404')->start();