1
0
Fork 0
mirror of synced 2024-06-01 10:29:48 +12:00

Moved configs to init

This commit is contained in:
Eldad Fux 2020-06-30 07:34:13 +03:00
parent a43a7c74d9
commit 8d5a1e45d3
3 changed files with 64 additions and 39 deletions

View file

@ -2,8 +2,6 @@
require_once __DIR__.'/init.php';
global $register, $project;
use Utopia\App;
use Utopia\Request;
use Utopia\Response;
@ -11,13 +9,10 @@ use Utopia\View;
use Utopia\Exception;
use Utopia\Config\Config;
use Utopia\Domains\Domain;
use Utopia\Locale\Locale;
use Appwrite\Auth\Auth;
use Appwrite\Database\Database;
use Appwrite\Database\Document;
use Appwrite\Database\Validator\Authorization;
use Appwrite\Database\Adapter\MySQL as MySQLAdapter;
use Appwrite\Database\Adapter\Redis as RedisAdapter;
use Appwrite\Network\Validator\Origin;
// Config::setParam('domain', $request->getServer('HTTP_HOST', ''));
@ -524,30 +519,6 @@ foreach(Config::getParam('services', []) as $service) {
include_once $service['controller'];
}
// Runtime Execution
App::setResource('register', function() use ($register) { return $register; });
App::setResource('layout', function($locale) {
$layout = new View(__DIR__.'/views/layouts/default.phtml');
$layout->setParam('locale', $locale);
return $layout; }, ['locale']);
App::setResource('locale', function($request) { return new Locale('en'); }, ['request']);
// Queues
App::setResource('webhook', function($register) { return $register->get('queue-webhook'); }, ['register']);
App::setResource('audit', function($register) { return $register->get('queue-audit'); }, ['register']);
App::setResource('usage', function($register) { return $register->get('queue-usage'); }, ['register']);
App::setResource('mail', function($register) { return $register->get('queue-mails'); }, ['register']);
App::setResource('deletes', function($register) { return $register->get('queue-deletes'); }, ['register']);
// Test Mock
App::setResource('clients', function() { return []; });
App::setResource('user', function() { return new Document([]); });
App::setResource('project', function() { return new Document([]); });
App::setResource('console', function() { return new Document([]); });
App::setResource('consoleDB', function() { return new Database(); });
App::setResource('projectDB', function() { return new Database([]); });
App::setResource('mode', function() { return false; });
$app = new App('Asia/Tel_Aviv');
$app->run(new Request(), new Response());

View file

@ -18,8 +18,10 @@ use Utopia\Registry\Registry;
use Appwrite\Database\Database;
use Appwrite\Database\Adapter\MySQL as MySQLAdapter;
use Appwrite\Database\Adapter\Redis as RedisAdapter;
use Appwrite\Database\Document;
use Appwrite\Event\Event;
use PHPMailer\PHPMailer\PHPMailer;
use Utopia\View;
const APP_NAME = 'Appwrite';
const APP_DOMAIN = 'appwrite.io';
@ -62,6 +64,8 @@ Config::load('avatar-credit-cards', __DIR__.'/../app/config/avatars/credit-cards
Config::load('avatar-flags', __DIR__.'/../app/config/avatars/flags.php');
Config::load('storage-logos', __DIR__.'/../app/config/storage/logos.php');
Config::load('storage-mimes', __DIR__.'/../app/config/storage/mimes.php');
Config::load('storage-inputs', __DIR__.'/../app/config/storage/inputs.php');
Config::load('storage-outputs', __DIR__.'/../app/config/storage/outputs.php');
Resque::setBackend(App::getEnv('_APP_REDIS_HOST', '')
.':'.App::getEnv('_APP_REDIS_PORT', ''));
@ -220,11 +224,62 @@ Locale::setLanguage('zh-tw', include __DIR__.'/config/locales/zh-tw.php');
],
]);
/*
* Auth & Project Scope
*/
$consoleDB = new Database();
$consoleDB->setAdapter(new RedisAdapter(new MySQLAdapter($register), $register));
$consoleDB->setNamespace('app_console'); // Should be replaced with param if we want to have parent projects
$consoleDB->setMocks(Config::getParam('collections', []));
// Runtime Execution
App::setResource('register', function() use ($register) {
return $register;
});
App::setResource('layout', function($locale) {
$layout = new View(__DIR__.'/views/layouts/default.phtml');
$layout->setParam('locale', $locale);
return $layout;
}, ['locale']);
App::setResource('locale', function() {
return new Locale('en');
});
// Queues
App::setResource('webhook', function($register) {
return $register->get('queue-webhook');
}, ['register']);
App::setResource('audit', function($register) {
return $register->get('queue-audit');
}, ['register']);
App::setResource('usage', function($register) {
return $register->get('queue-usage');
}, ['register']);
App::setResource('mail', function($register) {
return $register->get('queue-mails');
}, ['register']);
App::setResource('deletes', function($register) {
return $register->get('queue-deletes');
}, ['register']);
// Test Mock
App::setResource('clients', function() { return []; });
App::setResource('user', function() { return new Document([]); });
App::setResource('project', function() { return new Document([]); });
App::setResource('console', function() { return new Document([]); });
App::setResource('consoleDB', function($register) {
$consoleDB = new Database();
$consoleDB->setAdapter(new RedisAdapter(new MySQLAdapter($register), $register));
$consoleDB->setNamespace('app_console'); // Should be replaced with param if we want to have parent projects
$consoleDB->setMocks(Config::getParam('collections', []));
}, ['register']);
App::setResource('projectDB', function() { return new Database([]); });
App::setResource('mode', function() { return false; });

View file

@ -1,8 +1,7 @@
#!/bin/env php
<?php
require_once __DIR__.'/../../vendor/autoload.php';
require_once __DIR__.'/../../app/init.php';
require_once __DIR__.'/../init.php';
use Utopia\Config\Config;
use Utopia\CLI\CLI;