This commit is contained in:
Nicolas Le Goff
2011-12-27 13:06:51 +01:00
300 changed files with 3436 additions and 3162 deletions

View File

@@ -39,8 +39,7 @@ class Users implements ControllerProviderInterface
$controllers->post('/rights/', function() use ($app)
{
$request = $app['request'];
$rights = new UserHelper\Edit($request);
$rights = new UserHelper\Edit($app['Core']);
$template = 'admin/editusers.twig';
$twig = new \supertwig();
@@ -55,8 +54,7 @@ class Users implements ControllerProviderInterface
$controllers->get('/rights/', function() use ($app)
{
$request = $app['request'];
$rights = new UserHelper\Edit($request);
$rights = new UserHelper\Edit($app['Core']);
$template = 'admin/editusers.twig';
$twig = new \supertwig();
@@ -71,11 +69,7 @@ class Users implements ControllerProviderInterface
$controllers->post('/delete/', function() use ($app)
{
$request = $app['request'];
$module = new UserHelper\Edit($request);
$module = new UserHelper\Edit($app['Core']);
$module->delete_users();
return $app->redirect('/admin/users/search/');
@@ -88,8 +82,7 @@ class Users implements ControllerProviderInterface
try
{
$request = $app['request'];
$rights = new UserHelper\Edit($request);
$rights = new UserHelper\Edit($app['Core']);
$rights->apply_rights();
$rights->apply_infos();
@@ -110,8 +103,7 @@ class Users implements ControllerProviderInterface
$controllers->post('/rights/quotas/', function() use ($app)
{
$request = $app['request'];
$rights = new UserHelper\Edit($request);
$rights = new UserHelper\Edit($app['Core']);
$template = 'admin/editusers_quotas.twig';
$twig = new \supertwig();
@@ -125,8 +117,7 @@ class Users implements ControllerProviderInterface
$controllers->post('/rights/quotas/apply/', function() use ($app)
{
$request = $app['request'];
$rights = new UserHelper\Edit($request);
$rights = new UserHelper\Edit($app['Core']);
$rights->apply_quotas();
return;
@@ -135,8 +126,7 @@ class Users implements ControllerProviderInterface
$controllers->post('/rights/time/', function() use ($app)
{
$request = $app['request'];
$rights = new UserHelper\Edit($request);
$rights = new UserHelper\Edit($app['Core']);
$template = 'admin/editusers_timelimit.twig';
$twig = new \supertwig();
@@ -150,8 +140,7 @@ class Users implements ControllerProviderInterface
$controllers->post('/rights/time/apply/', function() use ($app)
{
$request = $app['request'];
$rights = new UserHelper\Edit($request);
$rights = new UserHelper\Edit($app['Core']);
$rights->apply_time();
return;
@@ -160,8 +149,7 @@ class Users implements ControllerProviderInterface
$controllers->post('/rights/masks/', function() use ($app)
{
$request = $app['request'];
$rights = new UserHelper\Edit($request);
$rights = new UserHelper\Edit($app['Core']);
$template = 'admin/editusers_masks.twig';
$twig = new \supertwig();
@@ -175,46 +163,40 @@ class Users implements ControllerProviderInterface
$controllers->post('/rights/masks/apply/', function() use ($app)
{
$request = $app['request'];
$rights = new UserHelper\Edit($request);
$rights = new UserHelper\Edit($app['Core']);
$rights->apply_masks();
return;
}
);
$controllers->post('/search/', function() use ($app)
$controllers->match('/search/', function() use ($app)
{
$request = $app['request'];
$users = new UserHelper\Manage($request);
$users = new UserHelper\Manage($app['Core']);
$template = 'admin/users.html';
$twig = new \supertwig();
$twig->addFilter(array('floor' => 'floor'));
$twig->addFilter(array('getDate' => 'phraseadate::getDate'));
return $twig->render($template, $users->search($request));
return $twig->render($template, $users->search());
}
);
$controllers->get('/search/', function() use ($app)
$controllers->post('/apply_template/', function() use ($app)
{
$request = $app['request'];
$users = new UserHelper\Manage($request);
$template = 'admin/users.html';
$users = UserHelper\Manage($app['Core']);
$users->apply_template();
$twig = new \supertwig();
$twig->addFilter(array('floor' => 'floor'));
$twig->addFilter(array('getDate' => 'phraseadate::getDate'));
return $twig->render($template, $users->search($request));
return new Symfony\Component\HttpFoundation\RedirectResponse('/admin/users/search/');
}
);
$controllers->get('/typeahead/search/', function() use ($app, $appbox)
{
$request = $app['request'];
$user_query = new User_Query($appbox);
$user_query = new \User_Query($appbox);
$user = User_Adapter::getInstance($appbox->get_session()->get_usr_id(), $appbox);
$like_value = $request->get('term');
@@ -258,7 +240,7 @@ class Users implements ControllerProviderInterface
try
{
$request = $app['request'];
$module = new UserHelper\Manage($request);
$module = new UserHelper\Manage($app['Core']);
if ($request->get('template') == '1')
{
$user = $module->create_template();
@@ -285,7 +267,7 @@ class Users implements ControllerProviderInterface
$controllers->post('/export/csv/', function() use ($appbox, $app)
{
$request = $app['request'];
$user_query = new \User_Query($appbox);
$user_query = new \User_Query($appbox, $app['Core']);
$user = \User_Adapter::getInstance($appbox->get_session()->get_usr_id(), $appbox);
$like_value = $request->get('like_value');

View File

@@ -136,7 +136,7 @@ class Basket implements ControllerProviderInterface
});
$controllers->post(
'/{basket_id}/{basket_element_id}/delete/'
'/{basket_id}/delete/{basket_element_id}/'
, function(Application $app, Request $request, $basket_id, $basket_element_id)
{
/* @var $em \Doctrine\ORM\EntityManager */
@@ -342,6 +342,61 @@ class Basket implements ControllerProviderInterface
return new RedirectResponse('/');
}
});
$controllers->post(
'/{basket_id}/stealElements/'
, function(Application $app, Request $request, $basket_id)
{
$em = $app['Core']->getEntityManager();
/* @var $em \Doctrine\ORM\EntityManager */
$basket = $em->getRepository('\Entities\Basket')
->findUserBasket($basket_id, $app['Core']->getAuthenticatedUser());
$user = $app['Core']->getAuthenticatedUser();
/* @var $user \User_Adapter */
$n = 0;
foreach ($request->get('elements') as $bask_element_id)
{
$basket_element = $em->getRepository('\Entities\BasketElement')
->findUserElement($bask_element_id, $user);
if(!$basket_element)
{
continue;
}
$basket_element->setBasket($basket);
$em->merge($basket_element);
$n++;
}
$em->merge($basket);
$em->flush();
$data = array(
'success' => true
, 'message' => sprintf(_('%d records moved'), $n)
);
if ($request->getRequestFormat() == 'json')
{
$datas = $app['Core']['Serializer']->serialize($data, 'json');
return new Response($datas, 200, array('Content-type' => 'application/json'));
}
else
{
return new RedirectResponse('/');
}
});
$controllers->get('/create/', function(Application $app)
{
@@ -364,7 +419,7 @@ class Basket implements ControllerProviderInterface
$twig = new \supertwig();
$html = $twig->render('prod/basket.twig', array('basket' => $basket));
$html = $twig->render('prod/WorkZone/Basket.html.twig', array('basket' => $basket));
return new Response($html);
})->assert('basket_id', '\d+');

View File

@@ -45,9 +45,9 @@ class Bridge implements ControllerProviderInterface
};
if (!$account->get_api()->get_connector()->is_configured())
throw new \Bridge_Exception_ApiConnectorNotConfigured();
throw new \Bridge_Exception_ApiConnectorNotConfigured("Bridge API Connector is not configured");
if (!$account->get_api()->get_connector()->is_connected())
throw new \Bridge_Exception_ApiConnectorNotConnected ();
throw new \Bridge_Exception_ApiConnectorNotConnected ("Bridge API Connector is not connected");
return;
});
@@ -55,7 +55,7 @@ class Bridge implements ControllerProviderInterface
$controllers->post('/manager/'
, function() use ($app, $twig)
{
$route = new RecordHelper\Bridge($app['request']);
$route = new RecordHelper\Bridge($app['Core']);
$appbox = \appbox::get_instance();
$user = \User_Adapter::getInstance($appbox->get_session()->get_usr_id(), $appbox);
@@ -420,7 +420,7 @@ class Bridge implements ControllerProviderInterface
$account = \Bridge_Account::load_account($appbox, $request->get('account_id'));
$app['require_connection']($account);
$route = new RecordHelper\Bridge($request);
$route = new RecordHelper\Bridge($app['Core']);
$route->grep_records($account->get_api()->acceptable_records());
$params = array(
@@ -447,7 +447,7 @@ class Bridge implements ControllerProviderInterface
$account = \Bridge_Account::load_account($appbox, $request->get('account_id'));
$app['require_connection']($account);
$route = new RecordHelper\Bridge($request);
$route = new RecordHelper\Bridge($app['Core']);
$route->grep_records($account->get_api()->acceptable_records());
$connector = $account->get_api()->get_connector();

View File

@@ -30,9 +30,7 @@ class Edit implements ControllerProviderInterface
$controllers->post('/', function() use ($app)
{
$request = $app['request'];
$handler = new RecordHelper\Edit($request);
$handler = new RecordHelper\Edit($app['Core']);
$handler->propose_editing();
@@ -48,7 +46,7 @@ class Edit implements ControllerProviderInterface
$controllers->post('/apply/', function() use ($app)
{
$request = $app['request'];
$editing = new RecordHelper\Edit($request);
$editing = new RecordHelper\Edit($app['Core']);
$editing->execute($request);
$template = 'prod/actions/edit_default.twig';

View File

@@ -43,7 +43,7 @@ class Feed implements ControllerProviderInterface
$user = \User_Adapter::getInstance($appbox->get_session()->get_usr_id(), $appbox);
$feeds = \Feed_Collection::load_all($appbox, $user);
$request = $app['request'];
$publishing = new RecordHelper\Feed($request);
$publishing = new RecordHelper\Feed($app['Core']);
$datas = $twig->render('prod/actions/publish/publish.html', array('publishing' => $publishing, 'feeds' => $feeds));
@@ -71,7 +71,7 @@ class Feed implements ControllerProviderInterface
$entry = \Feed_Entry_Adapter::create($appbox, $feed, $publisher, $title, $subtitle, $author_name, $author_mail);
$publishing = new RecordHelper\Feed($request);
$publishing = new RecordHelper\Feed($app['Core']);
foreach ($publishing->get_elements() as $record)
{

View File

@@ -34,7 +34,7 @@ class MoveCollection implements ControllerProviderInterface
$controllers->post('/', function() use ($app)
{
$request = $app['request'];
$move = new RecordHelper\MoveCollection($request);
$move = new RecordHelper\MoveCollection($app['Core']);
$move->propose();
$template = 'prod/actions/collection_default.twig';
@@ -49,7 +49,7 @@ class MoveCollection implements ControllerProviderInterface
$controllers->post('/apply/', function() use ($app)
{
$request = $app['request'];
$move = new RecordHelper\MoveCollection($request);
$move = new RecordHelper\MoveCollection($app['Core']);
$move->execute($request);
$template = 'prod/actions/collection_submit.twig';

View File

@@ -46,9 +46,8 @@ class WorkZone implements ControllerProviderInterface
, 'srt' => $app['request']->get('sort')
);
$twig->addFilter(array('get_collection_logo' => 'collection::getLogo'));
return new Response($twig->render('prod/baskets.html', $params));
return new Response($twig->render('prod/WorkZone/WorkZone.html.twig', $params));
});
return $controllers;

View File

@@ -20,15 +20,6 @@ use Silex\ControllerProviderInterface;
use Silex\ControllerCollection;
date_default_timezone_set('Europe/Berlin');
require_once dirname(__FILE__) . '/../../../../version.inc';
require_once dirname(__FILE__) . '/../../../../classes/phrasea.class.php';
require_once dirname(__FILE__) . '/../../../../classes/bootstrap.class.php';
require_once dirname(__FILE__) . '/../../../../classes/cache/cacheableInterface.class.php';
require_once dirname(__FILE__) . '/../../../../classes/cache/interface.class.php';
require_once dirname(__FILE__) . '/../../../../classes/cache/nocache.class.php';
require_once dirname(__FILE__) . '/../../../../classes/cache/adapter.class.php';
require_once dirname(__FILE__) . '/../../../../classes/User/Interface.class.php';
require_once dirname(__FILE__) . '/../../../../classes/User/Adapter.class.php';
/**
*
@@ -43,8 +34,6 @@ class Installer implements ControllerProviderInterface
{
$controllers = new ControllerCollection();
$app['available_languages'] = \User_Adapter::detectLanguage(new \Setup_Registry());
$controllers->get('/', function() use ($app)
{
$request = $app['request'];
@@ -89,17 +78,17 @@ class Installer implements ControllerProviderInterface
}
$ld_path = array(dirname(__FILE__) . '/../../../../templates/web');
$loader = new Twig_Loader_Filesystem($ld_path);
$twig = new Twig_Environment($loader);
$ld_path = array(__DIR__ . '/../../../../../templates/web');
$loader = new \Twig_Loader_Filesystem($ld_path);
$twig = new \Twig_Environment($loader);
$html = $twig->render(
'/setup/index.twig'
, array_merge($constraints_coll, array(
'locale' => Session_Handler::get_locale()
, 'available_locales' => $app['available_languages']
, 'version_number' => GV_version
, 'version_name' => GV_version_name
, 'available_locales' => $app['Core']::getAvailableLanguages()
, 'version_number' => $app['Core']['Version']->getNumber()
, 'version_name' => $app['Core']['Version']->getName()
, 'current_servername' => $request->getScheme() . '://' . $request->getHttpHost() . '/'
))
);
@@ -111,12 +100,12 @@ class Installer implements ControllerProviderInterface
{
\phrasea::use_i18n(\Session_Handler::get_locale());
$ld_path = array(dirname(__FILE__) . '/../../../../templates/web');
$ld_path = array(__DIR__ . '/../../../../../templates/web');
$loader = new Twig_Loader_Filesystem($ld_path);
$twig = new Twig_Environment($loader);
$loader = new \Twig_Loader_Filesystem($ld_path);
$twig = new \Twig_Environment($loader);
$twig->addExtension(new Twig_Extensions_Extension_I18n());
$twig->addExtension(new \Twig_Extensions_Extension_I18n());
$request = $app['request'];
@@ -125,14 +114,15 @@ class Installer implements ControllerProviderInterface
{
$warnings[] = _('It is not recommended to install Phraseanet without HTTPS support');
}
$html = $twig->render(
'/setup/step2.twig'
, array(
'locale' => \Session_Handler::get_locale()
, 'available_locales' => $app['available_languages']
, 'available_locales' => $app['Core']::getAvailableLanguages()
, 'available_templates' => \appbox::list_databox_templates()
, 'version_number' => GV_version
, 'version_name' => GV_version_name
, 'version_number' => $app['Core']['Version']->getNumber()
, 'version_name' => $app['Core']['Version']->getName()
, 'warnings' => $warnings
, 'current_servername' => $request->getScheme() . '://' . $request->getHttpHost() . '/'
, 'discovered_binaries' => \setup::discover_binaries()

View File

@@ -25,7 +25,6 @@ use Silex\ControllerCollection;
* @license http://opensource.org/licenses/gpl-3.0 GPLv3
* @link www.phraseanet.com
*/
class Upgrader implements ControllerProviderInterface
{
@@ -34,7 +33,6 @@ class Upgrader implements ControllerProviderInterface
$controllers = new ControllerCollection();
$app['registry'] = new \Setup_Registry();
$app['available_languages'] = \User_Adapter::detectLanguage($app['registry']);
$app['twig'] = function()
{
return new \supertwig();
@@ -51,10 +49,11 @@ class Upgrader implements ControllerProviderInterface
, array(
'locale' => \Session_Handler::get_locale()
, 'upgrade_status' => $upgrade_status
, 'available_locales' => $app['available_languages']
, 'available_locales' => $app['Core']::getAvailableLanguages()
, 'bad_users' => \User_Adapter::get_wrong_email_users(\appbox::get_instance())
, 'version_number' => GV_version
, 'version_name' => GV_version_name)
, 'version_number' => $app['Core']['Version']->getNumber()
, 'version_name' => $app['Core']['Version']->getName()
)
);
ini_set('display_errors', 'on');