Added administrator preferred locale (see issue #183)
This commit is contained in:
@@ -46,6 +46,7 @@ class Administrator extends BaseAction implements EventSubscriberInterface
|
|||||||
->setLogin($event->getLogin())
|
->setLogin($event->getLogin())
|
||||||
->setPassword($event->getPassword())
|
->setPassword($event->getPassword())
|
||||||
->setProfileId($event->getProfile())
|
->setProfileId($event->getProfile())
|
||||||
|
->setLocale($event->getLocale())
|
||||||
;
|
;
|
||||||
|
|
||||||
$administrator->save();
|
$administrator->save();
|
||||||
@@ -66,6 +67,7 @@ class Administrator extends BaseAction implements EventSubscriberInterface
|
|||||||
->setLastname($event->getLastname())
|
->setLastname($event->getLastname())
|
||||||
->setLogin($event->getLogin())
|
->setLogin($event->getLogin())
|
||||||
->setProfileId($event->getProfile())
|
->setProfileId($event->getProfile())
|
||||||
|
->setLocale($event->getLocale())
|
||||||
;
|
;
|
||||||
|
|
||||||
if ('' !== $event->getPassword()) {
|
if ('' !== $event->getPassword()) {
|
||||||
|
|||||||
@@ -62,6 +62,13 @@ class CreateAdminUser extends ContainerAwareCommand
|
|||||||
'User last name',
|
'User last name',
|
||||||
null
|
null
|
||||||
)
|
)
|
||||||
|
->addOption(
|
||||||
|
"locale",
|
||||||
|
null,
|
||||||
|
InputOption::VALUE_OPTIONAL,
|
||||||
|
'Preferred locale (default: en_US)',
|
||||||
|
null
|
||||||
|
)
|
||||||
->addOption(
|
->addOption(
|
||||||
'password',
|
'password',
|
||||||
null,
|
null,
|
||||||
@@ -122,6 +129,7 @@ class CreateAdminUser extends ContainerAwareCommand
|
|||||||
$admin->setLogin($input->getOption("login_name") ?: $this->enterData($dialog, $output, "Admin login name : ", "Please enter a login name."));
|
$admin->setLogin($input->getOption("login_name") ?: $this->enterData($dialog, $output, "Admin login name : ", "Please enter a login name."));
|
||||||
$admin->setFirstname($input->getOption("first_name") ?: $this->enterData($dialog, $output, "User first name : ", "Please enter user first name."));
|
$admin->setFirstname($input->getOption("first_name") ?: $this->enterData($dialog, $output, "User first name : ", "Please enter user first name."));
|
||||||
$admin->setLastname($input->getOption("last_name") ?: $this->enterData($dialog, $output, "User last name : ", "Please enter user last name."));
|
$admin->setLastname($input->getOption("last_name") ?: $this->enterData($dialog, $output, "User last name : ", "Please enter user last name."));
|
||||||
|
$admin->setLocale($input->getOption("locale") ?: 'en_US');
|
||||||
|
|
||||||
do {
|
do {
|
||||||
$password = $input->getOption("password") ?: $this->enterData($dialog, $output, "Password : ", "Please enter a password.", true);
|
$password = $input->getOption("password") ?: $this->enterData($dialog, $output, "Password : ", "Please enter a password.", true);
|
||||||
|
|||||||
@@ -66,6 +66,7 @@ class AdministratorController extends AbstractCrudController
|
|||||||
$event->setLastname($formData['lastname']);
|
$event->setLastname($formData['lastname']);
|
||||||
$event->setPassword($formData['password']);
|
$event->setPassword($formData['password']);
|
||||||
$event->setProfile($formData['profile'] ? : null);
|
$event->setProfile($formData['profile'] ? : null);
|
||||||
|
$event->setLocale($formData['locale']);
|
||||||
|
|
||||||
return $event;
|
return $event;
|
||||||
}
|
}
|
||||||
@@ -80,6 +81,7 @@ class AdministratorController extends AbstractCrudController
|
|||||||
$event->setLastname($formData['lastname']);
|
$event->setLastname($formData['lastname']);
|
||||||
$event->setPassword($formData['password']);
|
$event->setPassword($formData['password']);
|
||||||
$event->setProfile($formData['profile'] ? : null);
|
$event->setProfile($formData['profile'] ? : null);
|
||||||
|
$event->setLocale($formData['locale']);
|
||||||
|
|
||||||
return $event;
|
return $event;
|
||||||
}
|
}
|
||||||
@@ -108,6 +110,7 @@ class AdministratorController extends AbstractCrudController
|
|||||||
'lastname' => $object->getLastname(),
|
'lastname' => $object->getLastname(),
|
||||||
'login' => $object->getLogin(),
|
'login' => $object->getLogin(),
|
||||||
'profile' => $object->getProfileId(),
|
'profile' => $object->getProfileId(),
|
||||||
|
'locale' => $object->getLocale()
|
||||||
);
|
);
|
||||||
|
|
||||||
// Setup the object form
|
// Setup the object form
|
||||||
|
|||||||
@@ -26,8 +26,11 @@ namespace Thelia\Controller\Admin;
|
|||||||
use Thelia\Form\AdminLogin;
|
use Thelia\Form\AdminLogin;
|
||||||
use Thelia\Core\Security\Authentication\AdminUsernamePasswordFormAuthenticator;
|
use Thelia\Core\Security\Authentication\AdminUsernamePasswordFormAuthenticator;
|
||||||
use Thelia\Form\Exception\FormValidationException;
|
use Thelia\Form\Exception\FormValidationException;
|
||||||
|
use Thelia\Model\Admin;
|
||||||
use Thelia\Model\AdminLog;
|
use Thelia\Model\AdminLog;
|
||||||
use Thelia\Core\Security\Exception\AuthenticationException;
|
use Thelia\Core\Security\Exception\AuthenticationException;
|
||||||
|
use Thelia\Model\Lang;
|
||||||
|
use Thelia\Model\LangQuery;
|
||||||
use Thelia\Tools\URL;
|
use Thelia\Tools\URL;
|
||||||
use Thelia\Tools\Redirect;
|
use Thelia\Tools\Redirect;
|
||||||
use Thelia\Core\Event\TheliaEvents;
|
use Thelia\Core\Event\TheliaEvents;
|
||||||
@@ -56,8 +59,11 @@ class SessionController extends BaseAdminController
|
|||||||
// Update the cookie
|
// Update the cookie
|
||||||
$this->createAdminRememberMeCookie($user);
|
$this->createAdminRememberMeCookie($user);
|
||||||
|
|
||||||
|
$this->applyUserLocale($user);
|
||||||
|
|
||||||
// Render the home page
|
// Render the home page
|
||||||
return $this->render("home");
|
return $this->render("home");
|
||||||
|
|
||||||
} catch (TokenAuthenticationException $ex) {
|
} catch (TokenAuthenticationException $ex) {
|
||||||
$this->adminLogAppend("admin", "LOGIN", "Token based authentication failed.");
|
$this->adminLogAppend("admin", "LOGIN", "Token based authentication failed.");
|
||||||
|
|
||||||
@@ -69,6 +75,18 @@ class SessionController extends BaseAdminController
|
|||||||
return $this->render("login");
|
return $this->render("login");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected function applyUserLocale(Admin $user) {
|
||||||
|
|
||||||
|
// Set the current language according to Admin locale preference
|
||||||
|
$locale = $user->getLocale();
|
||||||
|
|
||||||
|
if (null === $lang = LangQuery::create()->findOneByLocale($locale)) {
|
||||||
|
$lang = Lang::getDefaultLanguage();
|
||||||
|
}
|
||||||
|
|
||||||
|
$this->getSession()->setLang($lang);
|
||||||
|
}
|
||||||
|
|
||||||
public function checkLogoutAction()
|
public function checkLogoutAction()
|
||||||
{
|
{
|
||||||
$this->dispatch(TheliaEvents::ADMIN_LOGOUT);
|
$this->dispatch(TheliaEvents::ADMIN_LOGOUT);
|
||||||
@@ -102,6 +120,8 @@ class SessionController extends BaseAdminController
|
|||||||
// Log authentication success
|
// Log authentication success
|
||||||
AdminLog::append("admin", "LOGIN", "Authentication successful", $request, $user, false);
|
AdminLog::append("admin", "LOGIN", "Authentication successful", $request, $user, false);
|
||||||
|
|
||||||
|
$this->applyUserLocale($user);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* FIXME: we have tou find a way to send cookie
|
* FIXME: we have tou find a way to send cookie
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -35,6 +35,7 @@ class AdministratorEvent extends ActionEvent
|
|||||||
protected $login = null;
|
protected $login = null;
|
||||||
protected $password = null;
|
protected $password = null;
|
||||||
protected $profile = null;
|
protected $profile = null;
|
||||||
|
protected $locale = null;
|
||||||
|
|
||||||
public function __construct(Admin $administrator = null)
|
public function __construct(Admin $administrator = null)
|
||||||
{
|
{
|
||||||
@@ -117,4 +118,15 @@ class AdministratorEvent extends ActionEvent
|
|||||||
{
|
{
|
||||||
return $this->profile;
|
return $this->profile;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function setLocale($locale)
|
||||||
|
{
|
||||||
|
$this->locale = $locale;
|
||||||
|
return $this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getLocale()
|
||||||
|
{
|
||||||
|
return $this->locale;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -89,6 +89,7 @@ class Admin extends BaseLoop implements PropelSearchLoopInterface
|
|||||||
->set("FIRSTNAME",$admin->getFirstname())
|
->set("FIRSTNAME",$admin->getFirstname())
|
||||||
->set("LASTNAME",$admin->getLastname())
|
->set("LASTNAME",$admin->getLastname())
|
||||||
->set("LOGIN",$admin->getLogin())
|
->set("LOGIN",$admin->getLogin())
|
||||||
|
->set("LOCALE",$admin->getLocale())
|
||||||
;
|
;
|
||||||
|
|
||||||
$loopResult->addRow($loopResultRow);
|
$loopResult->addRow($loopResultRow);
|
||||||
|
|||||||
@@ -27,6 +27,7 @@ use Symfony\Component\Validator\Constraints\NotBlank;
|
|||||||
use Symfony\Component\Validator\ExecutionContextInterface;
|
use Symfony\Component\Validator\ExecutionContextInterface;
|
||||||
use Thelia\Core\Translation\Translator;
|
use Thelia\Core\Translation\Translator;
|
||||||
use Thelia\Model\AdminQuery;
|
use Thelia\Model\AdminQuery;
|
||||||
|
use Thelia\Model\LangQuery;
|
||||||
use Thelia\Model\ProfileQuery;
|
use Thelia\Model\ProfileQuery;
|
||||||
|
|
||||||
class AdministratorCreationForm extends BaseForm
|
class AdministratorCreationForm extends BaseForm
|
||||||
@@ -100,9 +101,35 @@ class AdministratorCreationForm extends BaseForm
|
|||||||
),
|
),
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
->add(
|
||||||
|
'locale',
|
||||||
|
"choice",
|
||||||
|
array(
|
||||||
|
"choices" => $this->getLocaleList(),
|
||||||
|
"constraints" => array(
|
||||||
|
new Constraints\NotBlank(),
|
||||||
|
),
|
||||||
|
"label" => Translator::getInstance()->trans('Preferred locale'),
|
||||||
|
"label_attr" => array(
|
||||||
|
"for" => "locale"
|
||||||
|
),
|
||||||
|
)
|
||||||
|
)
|
||||||
;
|
;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected function getLocaleList() {
|
||||||
|
$locales = array();
|
||||||
|
|
||||||
|
$list = LangQuery::create()->find();
|
||||||
|
|
||||||
|
foreach($list as $item) {
|
||||||
|
$locales[$item->getLocale()] = $item->getLocale();
|
||||||
|
}
|
||||||
|
|
||||||
|
return $locales;
|
||||||
|
}
|
||||||
|
|
||||||
public function verifyPasswordField($value, ExecutionContextInterface $context)
|
public function verifyPasswordField($value, ExecutionContextInterface $context)
|
||||||
{
|
{
|
||||||
$data = $context->getRoot()->getData();
|
$data = $context->getRoot()->getData();
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ class Admin extends BaseAdmin implements UserInterface
|
|||||||
{
|
{
|
||||||
$profileId = $this->getProfileId();
|
$profileId = $this->getProfileId();
|
||||||
|
|
||||||
if( null === $profileId ) {
|
if( null === $profileId || 0 === $profileId ) {
|
||||||
return AdminResources::SUPERADMINISTRATOR;
|
return AdminResources::SUPERADMINISTRATOR;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -92,6 +92,12 @@ abstract class Admin implements ActiveRecordInterface
|
|||||||
*/
|
*/
|
||||||
protected $password;
|
protected $password;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The value for the locale field.
|
||||||
|
* @var string
|
||||||
|
*/
|
||||||
|
protected $locale;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The value for the algo field.
|
* The value for the algo field.
|
||||||
* @var string
|
* @var string
|
||||||
@@ -465,6 +471,17 @@ abstract class Admin implements ActiveRecordInterface
|
|||||||
return $this->password;
|
return $this->password;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the [locale] column value.
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public function getLocale()
|
||||||
|
{
|
||||||
|
|
||||||
|
return $this->locale;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get the [algo] column value.
|
* Get the [algo] column value.
|
||||||
*
|
*
|
||||||
@@ -679,6 +696,27 @@ abstract class Admin implements ActiveRecordInterface
|
|||||||
return $this;
|
return $this;
|
||||||
} // setPassword()
|
} // setPassword()
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set the value of [locale] column.
|
||||||
|
*
|
||||||
|
* @param string $v new value
|
||||||
|
* @return \Thelia\Model\Admin The current object (for fluent API support)
|
||||||
|
*/
|
||||||
|
public function setLocale($v)
|
||||||
|
{
|
||||||
|
if ($v !== null) {
|
||||||
|
$v = (string) $v;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($this->locale !== $v) {
|
||||||
|
$this->locale = $v;
|
||||||
|
$this->modifiedColumns[AdminTableMap::LOCALE] = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
return $this;
|
||||||
|
} // setLocale()
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Set the value of [algo] column.
|
* Set the value of [algo] column.
|
||||||
*
|
*
|
||||||
@@ -860,25 +898,28 @@ abstract class Admin implements ActiveRecordInterface
|
|||||||
$col = $row[TableMap::TYPE_NUM == $indexType ? 5 + $startcol : AdminTableMap::translateFieldName('Password', TableMap::TYPE_PHPNAME, $indexType)];
|
$col = $row[TableMap::TYPE_NUM == $indexType ? 5 + $startcol : AdminTableMap::translateFieldName('Password', TableMap::TYPE_PHPNAME, $indexType)];
|
||||||
$this->password = (null !== $col) ? (string) $col : null;
|
$this->password = (null !== $col) ? (string) $col : null;
|
||||||
|
|
||||||
$col = $row[TableMap::TYPE_NUM == $indexType ? 6 + $startcol : AdminTableMap::translateFieldName('Algo', TableMap::TYPE_PHPNAME, $indexType)];
|
$col = $row[TableMap::TYPE_NUM == $indexType ? 6 + $startcol : AdminTableMap::translateFieldName('Locale', TableMap::TYPE_PHPNAME, $indexType)];
|
||||||
|
$this->locale = (null !== $col) ? (string) $col : null;
|
||||||
|
|
||||||
|
$col = $row[TableMap::TYPE_NUM == $indexType ? 7 + $startcol : AdminTableMap::translateFieldName('Algo', TableMap::TYPE_PHPNAME, $indexType)];
|
||||||
$this->algo = (null !== $col) ? (string) $col : null;
|
$this->algo = (null !== $col) ? (string) $col : null;
|
||||||
|
|
||||||
$col = $row[TableMap::TYPE_NUM == $indexType ? 7 + $startcol : AdminTableMap::translateFieldName('Salt', TableMap::TYPE_PHPNAME, $indexType)];
|
$col = $row[TableMap::TYPE_NUM == $indexType ? 8 + $startcol : AdminTableMap::translateFieldName('Salt', TableMap::TYPE_PHPNAME, $indexType)];
|
||||||
$this->salt = (null !== $col) ? (string) $col : null;
|
$this->salt = (null !== $col) ? (string) $col : null;
|
||||||
|
|
||||||
$col = $row[TableMap::TYPE_NUM == $indexType ? 8 + $startcol : AdminTableMap::translateFieldName('RememberMeToken', TableMap::TYPE_PHPNAME, $indexType)];
|
$col = $row[TableMap::TYPE_NUM == $indexType ? 9 + $startcol : AdminTableMap::translateFieldName('RememberMeToken', TableMap::TYPE_PHPNAME, $indexType)];
|
||||||
$this->remember_me_token = (null !== $col) ? (string) $col : null;
|
$this->remember_me_token = (null !== $col) ? (string) $col : null;
|
||||||
|
|
||||||
$col = $row[TableMap::TYPE_NUM == $indexType ? 9 + $startcol : AdminTableMap::translateFieldName('RememberMeSerial', TableMap::TYPE_PHPNAME, $indexType)];
|
$col = $row[TableMap::TYPE_NUM == $indexType ? 10 + $startcol : AdminTableMap::translateFieldName('RememberMeSerial', TableMap::TYPE_PHPNAME, $indexType)];
|
||||||
$this->remember_me_serial = (null !== $col) ? (string) $col : null;
|
$this->remember_me_serial = (null !== $col) ? (string) $col : null;
|
||||||
|
|
||||||
$col = $row[TableMap::TYPE_NUM == $indexType ? 10 + $startcol : AdminTableMap::translateFieldName('CreatedAt', TableMap::TYPE_PHPNAME, $indexType)];
|
$col = $row[TableMap::TYPE_NUM == $indexType ? 11 + $startcol : AdminTableMap::translateFieldName('CreatedAt', TableMap::TYPE_PHPNAME, $indexType)];
|
||||||
if ($col === '0000-00-00 00:00:00') {
|
if ($col === '0000-00-00 00:00:00') {
|
||||||
$col = null;
|
$col = null;
|
||||||
}
|
}
|
||||||
$this->created_at = (null !== $col) ? PropelDateTime::newInstance($col, null, '\DateTime') : null;
|
$this->created_at = (null !== $col) ? PropelDateTime::newInstance($col, null, '\DateTime') : null;
|
||||||
|
|
||||||
$col = $row[TableMap::TYPE_NUM == $indexType ? 11 + $startcol : AdminTableMap::translateFieldName('UpdatedAt', TableMap::TYPE_PHPNAME, $indexType)];
|
$col = $row[TableMap::TYPE_NUM == $indexType ? 12 + $startcol : AdminTableMap::translateFieldName('UpdatedAt', TableMap::TYPE_PHPNAME, $indexType)];
|
||||||
if ($col === '0000-00-00 00:00:00') {
|
if ($col === '0000-00-00 00:00:00') {
|
||||||
$col = null;
|
$col = null;
|
||||||
}
|
}
|
||||||
@@ -891,7 +932,7 @@ abstract class Admin implements ActiveRecordInterface
|
|||||||
$this->ensureConsistency();
|
$this->ensureConsistency();
|
||||||
}
|
}
|
||||||
|
|
||||||
return $startcol + 12; // 12 = AdminTableMap::NUM_HYDRATE_COLUMNS.
|
return $startcol + 13; // 13 = AdminTableMap::NUM_HYDRATE_COLUMNS.
|
||||||
|
|
||||||
} catch (Exception $e) {
|
} catch (Exception $e) {
|
||||||
throw new PropelException("Error populating \Thelia\Model\Admin object", 0, $e);
|
throw new PropelException("Error populating \Thelia\Model\Admin object", 0, $e);
|
||||||
@@ -1145,6 +1186,9 @@ abstract class Admin implements ActiveRecordInterface
|
|||||||
if ($this->isColumnModified(AdminTableMap::PASSWORD)) {
|
if ($this->isColumnModified(AdminTableMap::PASSWORD)) {
|
||||||
$modifiedColumns[':p' . $index++] = '`PASSWORD`';
|
$modifiedColumns[':p' . $index++] = '`PASSWORD`';
|
||||||
}
|
}
|
||||||
|
if ($this->isColumnModified(AdminTableMap::LOCALE)) {
|
||||||
|
$modifiedColumns[':p' . $index++] = '`LOCALE`';
|
||||||
|
}
|
||||||
if ($this->isColumnModified(AdminTableMap::ALGO)) {
|
if ($this->isColumnModified(AdminTableMap::ALGO)) {
|
||||||
$modifiedColumns[':p' . $index++] = '`ALGO`';
|
$modifiedColumns[':p' . $index++] = '`ALGO`';
|
||||||
}
|
}
|
||||||
@@ -1192,6 +1236,9 @@ abstract class Admin implements ActiveRecordInterface
|
|||||||
case '`PASSWORD`':
|
case '`PASSWORD`':
|
||||||
$stmt->bindValue($identifier, $this->password, PDO::PARAM_STR);
|
$stmt->bindValue($identifier, $this->password, PDO::PARAM_STR);
|
||||||
break;
|
break;
|
||||||
|
case '`LOCALE`':
|
||||||
|
$stmt->bindValue($identifier, $this->locale, PDO::PARAM_STR);
|
||||||
|
break;
|
||||||
case '`ALGO`':
|
case '`ALGO`':
|
||||||
$stmt->bindValue($identifier, $this->algo, PDO::PARAM_STR);
|
$stmt->bindValue($identifier, $this->algo, PDO::PARAM_STR);
|
||||||
break;
|
break;
|
||||||
@@ -1291,21 +1338,24 @@ abstract class Admin implements ActiveRecordInterface
|
|||||||
return $this->getPassword();
|
return $this->getPassword();
|
||||||
break;
|
break;
|
||||||
case 6:
|
case 6:
|
||||||
return $this->getAlgo();
|
return $this->getLocale();
|
||||||
break;
|
break;
|
||||||
case 7:
|
case 7:
|
||||||
return $this->getSalt();
|
return $this->getAlgo();
|
||||||
break;
|
break;
|
||||||
case 8:
|
case 8:
|
||||||
return $this->getRememberMeToken();
|
return $this->getSalt();
|
||||||
break;
|
break;
|
||||||
case 9:
|
case 9:
|
||||||
return $this->getRememberMeSerial();
|
return $this->getRememberMeToken();
|
||||||
break;
|
break;
|
||||||
case 10:
|
case 10:
|
||||||
return $this->getCreatedAt();
|
return $this->getRememberMeSerial();
|
||||||
break;
|
break;
|
||||||
case 11:
|
case 11:
|
||||||
|
return $this->getCreatedAt();
|
||||||
|
break;
|
||||||
|
case 12:
|
||||||
return $this->getUpdatedAt();
|
return $this->getUpdatedAt();
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
@@ -1343,12 +1393,13 @@ abstract class Admin implements ActiveRecordInterface
|
|||||||
$keys[3] => $this->getLastname(),
|
$keys[3] => $this->getLastname(),
|
||||||
$keys[4] => $this->getLogin(),
|
$keys[4] => $this->getLogin(),
|
||||||
$keys[5] => $this->getPassword(),
|
$keys[5] => $this->getPassword(),
|
||||||
$keys[6] => $this->getAlgo(),
|
$keys[6] => $this->getLocale(),
|
||||||
$keys[7] => $this->getSalt(),
|
$keys[7] => $this->getAlgo(),
|
||||||
$keys[8] => $this->getRememberMeToken(),
|
$keys[8] => $this->getSalt(),
|
||||||
$keys[9] => $this->getRememberMeSerial(),
|
$keys[9] => $this->getRememberMeToken(),
|
||||||
$keys[10] => $this->getCreatedAt(),
|
$keys[10] => $this->getRememberMeSerial(),
|
||||||
$keys[11] => $this->getUpdatedAt(),
|
$keys[11] => $this->getCreatedAt(),
|
||||||
|
$keys[12] => $this->getUpdatedAt(),
|
||||||
);
|
);
|
||||||
$virtualColumns = $this->virtualColumns;
|
$virtualColumns = $this->virtualColumns;
|
||||||
foreach ($virtualColumns as $key => $virtualColumn) {
|
foreach ($virtualColumns as $key => $virtualColumn) {
|
||||||
@@ -1412,21 +1463,24 @@ abstract class Admin implements ActiveRecordInterface
|
|||||||
$this->setPassword($value);
|
$this->setPassword($value);
|
||||||
break;
|
break;
|
||||||
case 6:
|
case 6:
|
||||||
$this->setAlgo($value);
|
$this->setLocale($value);
|
||||||
break;
|
break;
|
||||||
case 7:
|
case 7:
|
||||||
$this->setSalt($value);
|
$this->setAlgo($value);
|
||||||
break;
|
break;
|
||||||
case 8:
|
case 8:
|
||||||
$this->setRememberMeToken($value);
|
$this->setSalt($value);
|
||||||
break;
|
break;
|
||||||
case 9:
|
case 9:
|
||||||
$this->setRememberMeSerial($value);
|
$this->setRememberMeToken($value);
|
||||||
break;
|
break;
|
||||||
case 10:
|
case 10:
|
||||||
$this->setCreatedAt($value);
|
$this->setRememberMeSerial($value);
|
||||||
break;
|
break;
|
||||||
case 11:
|
case 11:
|
||||||
|
$this->setCreatedAt($value);
|
||||||
|
break;
|
||||||
|
case 12:
|
||||||
$this->setUpdatedAt($value);
|
$this->setUpdatedAt($value);
|
||||||
break;
|
break;
|
||||||
} // switch()
|
} // switch()
|
||||||
@@ -1459,12 +1513,13 @@ abstract class Admin implements ActiveRecordInterface
|
|||||||
if (array_key_exists($keys[3], $arr)) $this->setLastname($arr[$keys[3]]);
|
if (array_key_exists($keys[3], $arr)) $this->setLastname($arr[$keys[3]]);
|
||||||
if (array_key_exists($keys[4], $arr)) $this->setLogin($arr[$keys[4]]);
|
if (array_key_exists($keys[4], $arr)) $this->setLogin($arr[$keys[4]]);
|
||||||
if (array_key_exists($keys[5], $arr)) $this->setPassword($arr[$keys[5]]);
|
if (array_key_exists($keys[5], $arr)) $this->setPassword($arr[$keys[5]]);
|
||||||
if (array_key_exists($keys[6], $arr)) $this->setAlgo($arr[$keys[6]]);
|
if (array_key_exists($keys[6], $arr)) $this->setLocale($arr[$keys[6]]);
|
||||||
if (array_key_exists($keys[7], $arr)) $this->setSalt($arr[$keys[7]]);
|
if (array_key_exists($keys[7], $arr)) $this->setAlgo($arr[$keys[7]]);
|
||||||
if (array_key_exists($keys[8], $arr)) $this->setRememberMeToken($arr[$keys[8]]);
|
if (array_key_exists($keys[8], $arr)) $this->setSalt($arr[$keys[8]]);
|
||||||
if (array_key_exists($keys[9], $arr)) $this->setRememberMeSerial($arr[$keys[9]]);
|
if (array_key_exists($keys[9], $arr)) $this->setRememberMeToken($arr[$keys[9]]);
|
||||||
if (array_key_exists($keys[10], $arr)) $this->setCreatedAt($arr[$keys[10]]);
|
if (array_key_exists($keys[10], $arr)) $this->setRememberMeSerial($arr[$keys[10]]);
|
||||||
if (array_key_exists($keys[11], $arr)) $this->setUpdatedAt($arr[$keys[11]]);
|
if (array_key_exists($keys[11], $arr)) $this->setCreatedAt($arr[$keys[11]]);
|
||||||
|
if (array_key_exists($keys[12], $arr)) $this->setUpdatedAt($arr[$keys[12]]);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -1482,6 +1537,7 @@ abstract class Admin implements ActiveRecordInterface
|
|||||||
if ($this->isColumnModified(AdminTableMap::LASTNAME)) $criteria->add(AdminTableMap::LASTNAME, $this->lastname);
|
if ($this->isColumnModified(AdminTableMap::LASTNAME)) $criteria->add(AdminTableMap::LASTNAME, $this->lastname);
|
||||||
if ($this->isColumnModified(AdminTableMap::LOGIN)) $criteria->add(AdminTableMap::LOGIN, $this->login);
|
if ($this->isColumnModified(AdminTableMap::LOGIN)) $criteria->add(AdminTableMap::LOGIN, $this->login);
|
||||||
if ($this->isColumnModified(AdminTableMap::PASSWORD)) $criteria->add(AdminTableMap::PASSWORD, $this->password);
|
if ($this->isColumnModified(AdminTableMap::PASSWORD)) $criteria->add(AdminTableMap::PASSWORD, $this->password);
|
||||||
|
if ($this->isColumnModified(AdminTableMap::LOCALE)) $criteria->add(AdminTableMap::LOCALE, $this->locale);
|
||||||
if ($this->isColumnModified(AdminTableMap::ALGO)) $criteria->add(AdminTableMap::ALGO, $this->algo);
|
if ($this->isColumnModified(AdminTableMap::ALGO)) $criteria->add(AdminTableMap::ALGO, $this->algo);
|
||||||
if ($this->isColumnModified(AdminTableMap::SALT)) $criteria->add(AdminTableMap::SALT, $this->salt);
|
if ($this->isColumnModified(AdminTableMap::SALT)) $criteria->add(AdminTableMap::SALT, $this->salt);
|
||||||
if ($this->isColumnModified(AdminTableMap::REMEMBER_ME_TOKEN)) $criteria->add(AdminTableMap::REMEMBER_ME_TOKEN, $this->remember_me_token);
|
if ($this->isColumnModified(AdminTableMap::REMEMBER_ME_TOKEN)) $criteria->add(AdminTableMap::REMEMBER_ME_TOKEN, $this->remember_me_token);
|
||||||
@@ -1556,6 +1612,7 @@ abstract class Admin implements ActiveRecordInterface
|
|||||||
$copyObj->setLastname($this->getLastname());
|
$copyObj->setLastname($this->getLastname());
|
||||||
$copyObj->setLogin($this->getLogin());
|
$copyObj->setLogin($this->getLogin());
|
||||||
$copyObj->setPassword($this->getPassword());
|
$copyObj->setPassword($this->getPassword());
|
||||||
|
$copyObj->setLocale($this->getLocale());
|
||||||
$copyObj->setAlgo($this->getAlgo());
|
$copyObj->setAlgo($this->getAlgo());
|
||||||
$copyObj->setSalt($this->getSalt());
|
$copyObj->setSalt($this->getSalt());
|
||||||
$copyObj->setRememberMeToken($this->getRememberMeToken());
|
$copyObj->setRememberMeToken($this->getRememberMeToken());
|
||||||
@@ -1652,6 +1709,7 @@ abstract class Admin implements ActiveRecordInterface
|
|||||||
$this->lastname = null;
|
$this->lastname = null;
|
||||||
$this->login = null;
|
$this->login = null;
|
||||||
$this->password = null;
|
$this->password = null;
|
||||||
|
$this->locale = null;
|
||||||
$this->algo = null;
|
$this->algo = null;
|
||||||
$this->salt = null;
|
$this->salt = null;
|
||||||
$this->remember_me_token = null;
|
$this->remember_me_token = null;
|
||||||
|
|||||||
@@ -27,6 +27,7 @@ use Thelia\Model\Map\AdminTableMap;
|
|||||||
* @method ChildAdminQuery orderByLastname($order = Criteria::ASC) Order by the lastname column
|
* @method ChildAdminQuery orderByLastname($order = Criteria::ASC) Order by the lastname column
|
||||||
* @method ChildAdminQuery orderByLogin($order = Criteria::ASC) Order by the login column
|
* @method ChildAdminQuery orderByLogin($order = Criteria::ASC) Order by the login column
|
||||||
* @method ChildAdminQuery orderByPassword($order = Criteria::ASC) Order by the password column
|
* @method ChildAdminQuery orderByPassword($order = Criteria::ASC) Order by the password column
|
||||||
|
* @method ChildAdminQuery orderByLocale($order = Criteria::ASC) Order by the locale column
|
||||||
* @method ChildAdminQuery orderByAlgo($order = Criteria::ASC) Order by the algo column
|
* @method ChildAdminQuery orderByAlgo($order = Criteria::ASC) Order by the algo column
|
||||||
* @method ChildAdminQuery orderBySalt($order = Criteria::ASC) Order by the salt column
|
* @method ChildAdminQuery orderBySalt($order = Criteria::ASC) Order by the salt column
|
||||||
* @method ChildAdminQuery orderByRememberMeToken($order = Criteria::ASC) Order by the remember_me_token column
|
* @method ChildAdminQuery orderByRememberMeToken($order = Criteria::ASC) Order by the remember_me_token column
|
||||||
@@ -40,6 +41,7 @@ use Thelia\Model\Map\AdminTableMap;
|
|||||||
* @method ChildAdminQuery groupByLastname() Group by the lastname column
|
* @method ChildAdminQuery groupByLastname() Group by the lastname column
|
||||||
* @method ChildAdminQuery groupByLogin() Group by the login column
|
* @method ChildAdminQuery groupByLogin() Group by the login column
|
||||||
* @method ChildAdminQuery groupByPassword() Group by the password column
|
* @method ChildAdminQuery groupByPassword() Group by the password column
|
||||||
|
* @method ChildAdminQuery groupByLocale() Group by the locale column
|
||||||
* @method ChildAdminQuery groupByAlgo() Group by the algo column
|
* @method ChildAdminQuery groupByAlgo() Group by the algo column
|
||||||
* @method ChildAdminQuery groupBySalt() Group by the salt column
|
* @method ChildAdminQuery groupBySalt() Group by the salt column
|
||||||
* @method ChildAdminQuery groupByRememberMeToken() Group by the remember_me_token column
|
* @method ChildAdminQuery groupByRememberMeToken() Group by the remember_me_token column
|
||||||
@@ -64,6 +66,7 @@ use Thelia\Model\Map\AdminTableMap;
|
|||||||
* @method ChildAdmin findOneByLastname(string $lastname) Return the first ChildAdmin filtered by the lastname column
|
* @method ChildAdmin findOneByLastname(string $lastname) Return the first ChildAdmin filtered by the lastname column
|
||||||
* @method ChildAdmin findOneByLogin(string $login) Return the first ChildAdmin filtered by the login column
|
* @method ChildAdmin findOneByLogin(string $login) Return the first ChildAdmin filtered by the login column
|
||||||
* @method ChildAdmin findOneByPassword(string $password) Return the first ChildAdmin filtered by the password column
|
* @method ChildAdmin findOneByPassword(string $password) Return the first ChildAdmin filtered by the password column
|
||||||
|
* @method ChildAdmin findOneByLocale(string $locale) Return the first ChildAdmin filtered by the locale column
|
||||||
* @method ChildAdmin findOneByAlgo(string $algo) Return the first ChildAdmin filtered by the algo column
|
* @method ChildAdmin findOneByAlgo(string $algo) Return the first ChildAdmin filtered by the algo column
|
||||||
* @method ChildAdmin findOneBySalt(string $salt) Return the first ChildAdmin filtered by the salt column
|
* @method ChildAdmin findOneBySalt(string $salt) Return the first ChildAdmin filtered by the salt column
|
||||||
* @method ChildAdmin findOneByRememberMeToken(string $remember_me_token) Return the first ChildAdmin filtered by the remember_me_token column
|
* @method ChildAdmin findOneByRememberMeToken(string $remember_me_token) Return the first ChildAdmin filtered by the remember_me_token column
|
||||||
@@ -77,6 +80,7 @@ use Thelia\Model\Map\AdminTableMap;
|
|||||||
* @method array findByLastname(string $lastname) Return ChildAdmin objects filtered by the lastname column
|
* @method array findByLastname(string $lastname) Return ChildAdmin objects filtered by the lastname column
|
||||||
* @method array findByLogin(string $login) Return ChildAdmin objects filtered by the login column
|
* @method array findByLogin(string $login) Return ChildAdmin objects filtered by the login column
|
||||||
* @method array findByPassword(string $password) Return ChildAdmin objects filtered by the password column
|
* @method array findByPassword(string $password) Return ChildAdmin objects filtered by the password column
|
||||||
|
* @method array findByLocale(string $locale) Return ChildAdmin objects filtered by the locale column
|
||||||
* @method array findByAlgo(string $algo) Return ChildAdmin objects filtered by the algo column
|
* @method array findByAlgo(string $algo) Return ChildAdmin objects filtered by the algo column
|
||||||
* @method array findBySalt(string $salt) Return ChildAdmin objects filtered by the salt column
|
* @method array findBySalt(string $salt) Return ChildAdmin objects filtered by the salt column
|
||||||
* @method array findByRememberMeToken(string $remember_me_token) Return ChildAdmin objects filtered by the remember_me_token column
|
* @method array findByRememberMeToken(string $remember_me_token) Return ChildAdmin objects filtered by the remember_me_token column
|
||||||
@@ -171,7 +175,7 @@ abstract class AdminQuery extends ModelCriteria
|
|||||||
*/
|
*/
|
||||||
protected function findPkSimple($key, $con)
|
protected function findPkSimple($key, $con)
|
||||||
{
|
{
|
||||||
$sql = 'SELECT `ID`, `PROFILE_ID`, `FIRSTNAME`, `LASTNAME`, `LOGIN`, `PASSWORD`, `ALGO`, `SALT`, `REMEMBER_ME_TOKEN`, `REMEMBER_ME_SERIAL`, `CREATED_AT`, `UPDATED_AT` FROM `admin` WHERE `ID` = :p0';
|
$sql = 'SELECT `ID`, `PROFILE_ID`, `FIRSTNAME`, `LASTNAME`, `LOGIN`, `PASSWORD`, `LOCALE`, `ALGO`, `SALT`, `REMEMBER_ME_TOKEN`, `REMEMBER_ME_SERIAL`, `CREATED_AT`, `UPDATED_AT` FROM `admin` WHERE `ID` = :p0';
|
||||||
try {
|
try {
|
||||||
$stmt = $con->prepare($sql);
|
$stmt = $con->prepare($sql);
|
||||||
$stmt->bindValue(':p0', $key, PDO::PARAM_INT);
|
$stmt->bindValue(':p0', $key, PDO::PARAM_INT);
|
||||||
@@ -460,6 +464,35 @@ abstract class AdminQuery extends ModelCriteria
|
|||||||
return $this->addUsingAlias(AdminTableMap::PASSWORD, $password, $comparison);
|
return $this->addUsingAlias(AdminTableMap::PASSWORD, $password, $comparison);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Filter the query on the locale column
|
||||||
|
*
|
||||||
|
* Example usage:
|
||||||
|
* <code>
|
||||||
|
* $query->filterByLocale('fooValue'); // WHERE locale = 'fooValue'
|
||||||
|
* $query->filterByLocale('%fooValue%'); // WHERE locale LIKE '%fooValue%'
|
||||||
|
* </code>
|
||||||
|
*
|
||||||
|
* @param string $locale The value to use as filter.
|
||||||
|
* Accepts wildcards (* and % trigger a LIKE)
|
||||||
|
* @param string $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL
|
||||||
|
*
|
||||||
|
* @return ChildAdminQuery The current query, for fluid interface
|
||||||
|
*/
|
||||||
|
public function filterByLocale($locale = null, $comparison = null)
|
||||||
|
{
|
||||||
|
if (null === $comparison) {
|
||||||
|
if (is_array($locale)) {
|
||||||
|
$comparison = Criteria::IN;
|
||||||
|
} elseif (preg_match('/[\%\*]/', $locale)) {
|
||||||
|
$locale = str_replace('*', '%', $locale);
|
||||||
|
$comparison = Criteria::LIKE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return $this->addUsingAlias(AdminTableMap::LOCALE, $locale, $comparison);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Filter the query on the algo column
|
* Filter the query on the algo column
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -58,7 +58,7 @@ class AdminTableMap extends TableMap
|
|||||||
/**
|
/**
|
||||||
* The total number of columns
|
* The total number of columns
|
||||||
*/
|
*/
|
||||||
const NUM_COLUMNS = 12;
|
const NUM_COLUMNS = 13;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The number of lazy-loaded columns
|
* The number of lazy-loaded columns
|
||||||
@@ -68,7 +68,7 @@ class AdminTableMap extends TableMap
|
|||||||
/**
|
/**
|
||||||
* The number of columns to hydrate (NUM_COLUMNS - NUM_LAZY_LOAD_COLUMNS)
|
* The number of columns to hydrate (NUM_COLUMNS - NUM_LAZY_LOAD_COLUMNS)
|
||||||
*/
|
*/
|
||||||
const NUM_HYDRATE_COLUMNS = 12;
|
const NUM_HYDRATE_COLUMNS = 13;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* the column name for the ID field
|
* the column name for the ID field
|
||||||
@@ -100,6 +100,11 @@ class AdminTableMap extends TableMap
|
|||||||
*/
|
*/
|
||||||
const PASSWORD = 'admin.PASSWORD';
|
const PASSWORD = 'admin.PASSWORD';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* the column name for the LOCALE field
|
||||||
|
*/
|
||||||
|
const LOCALE = 'admin.LOCALE';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* the column name for the ALGO field
|
* the column name for the ALGO field
|
||||||
*/
|
*/
|
||||||
@@ -142,12 +147,12 @@ class AdminTableMap extends TableMap
|
|||||||
* e.g. self::$fieldNames[self::TYPE_PHPNAME][0] = 'Id'
|
* e.g. self::$fieldNames[self::TYPE_PHPNAME][0] = 'Id'
|
||||||
*/
|
*/
|
||||||
protected static $fieldNames = array (
|
protected static $fieldNames = array (
|
||||||
self::TYPE_PHPNAME => array('Id', 'ProfileId', 'Firstname', 'Lastname', 'Login', 'Password', 'Algo', 'Salt', 'RememberMeToken', 'RememberMeSerial', 'CreatedAt', 'UpdatedAt', ),
|
self::TYPE_PHPNAME => array('Id', 'ProfileId', 'Firstname', 'Lastname', 'Login', 'Password', 'Locale', 'Algo', 'Salt', 'RememberMeToken', 'RememberMeSerial', 'CreatedAt', 'UpdatedAt', ),
|
||||||
self::TYPE_STUDLYPHPNAME => array('id', 'profileId', 'firstname', 'lastname', 'login', 'password', 'algo', 'salt', 'rememberMeToken', 'rememberMeSerial', 'createdAt', 'updatedAt', ),
|
self::TYPE_STUDLYPHPNAME => array('id', 'profileId', 'firstname', 'lastname', 'login', 'password', 'locale', 'algo', 'salt', 'rememberMeToken', 'rememberMeSerial', 'createdAt', 'updatedAt', ),
|
||||||
self::TYPE_COLNAME => array(AdminTableMap::ID, AdminTableMap::PROFILE_ID, AdminTableMap::FIRSTNAME, AdminTableMap::LASTNAME, AdminTableMap::LOGIN, AdminTableMap::PASSWORD, AdminTableMap::ALGO, AdminTableMap::SALT, AdminTableMap::REMEMBER_ME_TOKEN, AdminTableMap::REMEMBER_ME_SERIAL, AdminTableMap::CREATED_AT, AdminTableMap::UPDATED_AT, ),
|
self::TYPE_COLNAME => array(AdminTableMap::ID, AdminTableMap::PROFILE_ID, AdminTableMap::FIRSTNAME, AdminTableMap::LASTNAME, AdminTableMap::LOGIN, AdminTableMap::PASSWORD, AdminTableMap::LOCALE, AdminTableMap::ALGO, AdminTableMap::SALT, AdminTableMap::REMEMBER_ME_TOKEN, AdminTableMap::REMEMBER_ME_SERIAL, AdminTableMap::CREATED_AT, AdminTableMap::UPDATED_AT, ),
|
||||||
self::TYPE_RAW_COLNAME => array('ID', 'PROFILE_ID', 'FIRSTNAME', 'LASTNAME', 'LOGIN', 'PASSWORD', 'ALGO', 'SALT', 'REMEMBER_ME_TOKEN', 'REMEMBER_ME_SERIAL', 'CREATED_AT', 'UPDATED_AT', ),
|
self::TYPE_RAW_COLNAME => array('ID', 'PROFILE_ID', 'FIRSTNAME', 'LASTNAME', 'LOGIN', 'PASSWORD', 'LOCALE', 'ALGO', 'SALT', 'REMEMBER_ME_TOKEN', 'REMEMBER_ME_SERIAL', 'CREATED_AT', 'UPDATED_AT', ),
|
||||||
self::TYPE_FIELDNAME => array('id', 'profile_id', 'firstname', 'lastname', 'login', 'password', 'algo', 'salt', 'remember_me_token', 'remember_me_serial', 'created_at', 'updated_at', ),
|
self::TYPE_FIELDNAME => array('id', 'profile_id', 'firstname', 'lastname', 'login', 'password', 'locale', 'algo', 'salt', 'remember_me_token', 'remember_me_serial', 'created_at', 'updated_at', ),
|
||||||
self::TYPE_NUM => array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, )
|
self::TYPE_NUM => array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, )
|
||||||
);
|
);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -157,12 +162,12 @@ class AdminTableMap extends TableMap
|
|||||||
* e.g. self::$fieldKeys[self::TYPE_PHPNAME]['Id'] = 0
|
* e.g. self::$fieldKeys[self::TYPE_PHPNAME]['Id'] = 0
|
||||||
*/
|
*/
|
||||||
protected static $fieldKeys = array (
|
protected static $fieldKeys = array (
|
||||||
self::TYPE_PHPNAME => array('Id' => 0, 'ProfileId' => 1, 'Firstname' => 2, 'Lastname' => 3, 'Login' => 4, 'Password' => 5, 'Algo' => 6, 'Salt' => 7, 'RememberMeToken' => 8, 'RememberMeSerial' => 9, 'CreatedAt' => 10, 'UpdatedAt' => 11, ),
|
self::TYPE_PHPNAME => array('Id' => 0, 'ProfileId' => 1, 'Firstname' => 2, 'Lastname' => 3, 'Login' => 4, 'Password' => 5, 'Locale' => 6, 'Algo' => 7, 'Salt' => 8, 'RememberMeToken' => 9, 'RememberMeSerial' => 10, 'CreatedAt' => 11, 'UpdatedAt' => 12, ),
|
||||||
self::TYPE_STUDLYPHPNAME => array('id' => 0, 'profileId' => 1, 'firstname' => 2, 'lastname' => 3, 'login' => 4, 'password' => 5, 'algo' => 6, 'salt' => 7, 'rememberMeToken' => 8, 'rememberMeSerial' => 9, 'createdAt' => 10, 'updatedAt' => 11, ),
|
self::TYPE_STUDLYPHPNAME => array('id' => 0, 'profileId' => 1, 'firstname' => 2, 'lastname' => 3, 'login' => 4, 'password' => 5, 'locale' => 6, 'algo' => 7, 'salt' => 8, 'rememberMeToken' => 9, 'rememberMeSerial' => 10, 'createdAt' => 11, 'updatedAt' => 12, ),
|
||||||
self::TYPE_COLNAME => array(AdminTableMap::ID => 0, AdminTableMap::PROFILE_ID => 1, AdminTableMap::FIRSTNAME => 2, AdminTableMap::LASTNAME => 3, AdminTableMap::LOGIN => 4, AdminTableMap::PASSWORD => 5, AdminTableMap::ALGO => 6, AdminTableMap::SALT => 7, AdminTableMap::REMEMBER_ME_TOKEN => 8, AdminTableMap::REMEMBER_ME_SERIAL => 9, AdminTableMap::CREATED_AT => 10, AdminTableMap::UPDATED_AT => 11, ),
|
self::TYPE_COLNAME => array(AdminTableMap::ID => 0, AdminTableMap::PROFILE_ID => 1, AdminTableMap::FIRSTNAME => 2, AdminTableMap::LASTNAME => 3, AdminTableMap::LOGIN => 4, AdminTableMap::PASSWORD => 5, AdminTableMap::LOCALE => 6, AdminTableMap::ALGO => 7, AdminTableMap::SALT => 8, AdminTableMap::REMEMBER_ME_TOKEN => 9, AdminTableMap::REMEMBER_ME_SERIAL => 10, AdminTableMap::CREATED_AT => 11, AdminTableMap::UPDATED_AT => 12, ),
|
||||||
self::TYPE_RAW_COLNAME => array('ID' => 0, 'PROFILE_ID' => 1, 'FIRSTNAME' => 2, 'LASTNAME' => 3, 'LOGIN' => 4, 'PASSWORD' => 5, 'ALGO' => 6, 'SALT' => 7, 'REMEMBER_ME_TOKEN' => 8, 'REMEMBER_ME_SERIAL' => 9, 'CREATED_AT' => 10, 'UPDATED_AT' => 11, ),
|
self::TYPE_RAW_COLNAME => array('ID' => 0, 'PROFILE_ID' => 1, 'FIRSTNAME' => 2, 'LASTNAME' => 3, 'LOGIN' => 4, 'PASSWORD' => 5, 'LOCALE' => 6, 'ALGO' => 7, 'SALT' => 8, 'REMEMBER_ME_TOKEN' => 9, 'REMEMBER_ME_SERIAL' => 10, 'CREATED_AT' => 11, 'UPDATED_AT' => 12, ),
|
||||||
self::TYPE_FIELDNAME => array('id' => 0, 'profile_id' => 1, 'firstname' => 2, 'lastname' => 3, 'login' => 4, 'password' => 5, 'algo' => 6, 'salt' => 7, 'remember_me_token' => 8, 'remember_me_serial' => 9, 'created_at' => 10, 'updated_at' => 11, ),
|
self::TYPE_FIELDNAME => array('id' => 0, 'profile_id' => 1, 'firstname' => 2, 'lastname' => 3, 'login' => 4, 'password' => 5, 'locale' => 6, 'algo' => 7, 'salt' => 8, 'remember_me_token' => 9, 'remember_me_serial' => 10, 'created_at' => 11, 'updated_at' => 12, ),
|
||||||
self::TYPE_NUM => array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, )
|
self::TYPE_NUM => array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, )
|
||||||
);
|
);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -187,6 +192,7 @@ class AdminTableMap extends TableMap
|
|||||||
$this->addColumn('LASTNAME', 'Lastname', 'VARCHAR', true, 100, null);
|
$this->addColumn('LASTNAME', 'Lastname', 'VARCHAR', true, 100, null);
|
||||||
$this->addColumn('LOGIN', 'Login', 'VARCHAR', true, 100, null);
|
$this->addColumn('LOGIN', 'Login', 'VARCHAR', true, 100, null);
|
||||||
$this->addColumn('PASSWORD', 'Password', 'VARCHAR', true, 128, null);
|
$this->addColumn('PASSWORD', 'Password', 'VARCHAR', true, 128, null);
|
||||||
|
$this->addColumn('LOCALE', 'Locale', 'VARCHAR', true, 45, null);
|
||||||
$this->addColumn('ALGO', 'Algo', 'VARCHAR', false, 128, null);
|
$this->addColumn('ALGO', 'Algo', 'VARCHAR', false, 128, null);
|
||||||
$this->addColumn('SALT', 'Salt', 'VARCHAR', false, 128, null);
|
$this->addColumn('SALT', 'Salt', 'VARCHAR', false, 128, null);
|
||||||
$this->addColumn('REMEMBER_ME_TOKEN', 'RememberMeToken', 'VARCHAR', false, 255, null);
|
$this->addColumn('REMEMBER_ME_TOKEN', 'RememberMeToken', 'VARCHAR', false, 255, null);
|
||||||
@@ -360,6 +366,7 @@ class AdminTableMap extends TableMap
|
|||||||
$criteria->addSelectColumn(AdminTableMap::LASTNAME);
|
$criteria->addSelectColumn(AdminTableMap::LASTNAME);
|
||||||
$criteria->addSelectColumn(AdminTableMap::LOGIN);
|
$criteria->addSelectColumn(AdminTableMap::LOGIN);
|
||||||
$criteria->addSelectColumn(AdminTableMap::PASSWORD);
|
$criteria->addSelectColumn(AdminTableMap::PASSWORD);
|
||||||
|
$criteria->addSelectColumn(AdminTableMap::LOCALE);
|
||||||
$criteria->addSelectColumn(AdminTableMap::ALGO);
|
$criteria->addSelectColumn(AdminTableMap::ALGO);
|
||||||
$criteria->addSelectColumn(AdminTableMap::SALT);
|
$criteria->addSelectColumn(AdminTableMap::SALT);
|
||||||
$criteria->addSelectColumn(AdminTableMap::REMEMBER_ME_TOKEN);
|
$criteria->addSelectColumn(AdminTableMap::REMEMBER_ME_TOKEN);
|
||||||
@@ -373,6 +380,7 @@ class AdminTableMap extends TableMap
|
|||||||
$criteria->addSelectColumn($alias . '.LASTNAME');
|
$criteria->addSelectColumn($alias . '.LASTNAME');
|
||||||
$criteria->addSelectColumn($alias . '.LOGIN');
|
$criteria->addSelectColumn($alias . '.LOGIN');
|
||||||
$criteria->addSelectColumn($alias . '.PASSWORD');
|
$criteria->addSelectColumn($alias . '.PASSWORD');
|
||||||
|
$criteria->addSelectColumn($alias . '.LOCALE');
|
||||||
$criteria->addSelectColumn($alias . '.ALGO');
|
$criteria->addSelectColumn($alias . '.ALGO');
|
||||||
$criteria->addSelectColumn($alias . '.SALT');
|
$criteria->addSelectColumn($alias . '.SALT');
|
||||||
$criteria->addSelectColumn($alias . '.REMEMBER_ME_TOKEN');
|
$criteria->addSelectColumn($alias . '.REMEMBER_ME_TOKEN');
|
||||||
|
|||||||
@@ -978,6 +978,7 @@ CREATE TABLE `admin`
|
|||||||
`lastname` VARCHAR(100) NOT NULL,
|
`lastname` VARCHAR(100) NOT NULL,
|
||||||
`login` VARCHAR(100) NOT NULL,
|
`login` VARCHAR(100) NOT NULL,
|
||||||
`password` VARCHAR(128) NOT NULL,
|
`password` VARCHAR(128) NOT NULL,
|
||||||
|
`locale` VARCHAR(45) NOT NULL,
|
||||||
`algo` VARCHAR(128),
|
`algo` VARCHAR(128),
|
||||||
`salt` VARCHAR(128),
|
`salt` VARCHAR(128),
|
||||||
`remember_me_token` VARCHAR(255),
|
`remember_me_token` VARCHAR(255),
|
||||||
@@ -1085,7 +1086,7 @@ CREATE TABLE `coupon`
|
|||||||
`id` INTEGER NOT NULL AUTO_INCREMENT,
|
`id` INTEGER NOT NULL AUTO_INCREMENT,
|
||||||
`code` VARCHAR(45) NOT NULL,
|
`code` VARCHAR(45) NOT NULL,
|
||||||
`type` VARCHAR(255) NOT NULL,
|
`type` VARCHAR(255) NOT NULL,
|
||||||
`serialized_effects` TEXT NOT NULL,
|
`serialized_effects` LONGTEXT NOT NULL,
|
||||||
`is_enabled` TINYINT(1) NOT NULL,
|
`is_enabled` TINYINT(1) NOT NULL,
|
||||||
`expiration_date` DATETIME NOT NULL,
|
`expiration_date` DATETIME NOT NULL,
|
||||||
`max_usage` INTEGER NOT NULL,
|
`max_usage` INTEGER NOT NULL,
|
||||||
@@ -2394,7 +2395,7 @@ CREATE TABLE `coupon_version`
|
|||||||
`id` INTEGER NOT NULL,
|
`id` INTEGER NOT NULL,
|
||||||
`code` VARCHAR(45) NOT NULL,
|
`code` VARCHAR(45) NOT NULL,
|
||||||
`type` VARCHAR(255) NOT NULL,
|
`type` VARCHAR(255) NOT NULL,
|
||||||
`serialized_effects` TEXT NOT NULL,
|
`serialized_effects` LONGTEXT NOT NULL,
|
||||||
`is_enabled` TINYINT(1) NOT NULL,
|
`is_enabled` TINYINT(1) NOT NULL,
|
||||||
`expiration_date` DATETIME NOT NULL,
|
`expiration_date` DATETIME NOT NULL,
|
||||||
`max_usage` INTEGER NOT NULL,
|
`max_usage` INTEGER NOT NULL,
|
||||||
|
|||||||
@@ -43,7 +43,7 @@ if exist local\config\database.yml (
|
|||||||
echo [INFO] Activating Delivery Module(s)
|
echo [INFO] Activating Delivery Module(s)
|
||||||
php Thelia module:activate Colissimo
|
php Thelia module:activate Colissimo
|
||||||
|
|
||||||
echo "[INFO] Activating Payment Module(s)"
|
echo [INFO] Activating Payment Module(s)
|
||||||
php Thelia module:activate Cheque
|
php Thelia module:activate Cheque
|
||||||
|
|
||||||
echo [SUCCESS] Reset done
|
echo [SUCCESS] Reset done
|
||||||
|
|||||||
@@ -39,6 +39,7 @@
|
|||||||
<th>{intl l="Login"}</th>
|
<th>{intl l="Login"}</th>
|
||||||
<th>{intl l="First Name"}</th>
|
<th>{intl l="First Name"}</th>
|
||||||
<th>{intl l="Last Name"}</th>
|
<th>{intl l="Last Name"}</th>
|
||||||
|
<th>{intl l="Locale"}</th>
|
||||||
<th>{intl l="Profile"}</th>
|
<th>{intl l="Profile"}</th>
|
||||||
<th class="col-md-1">{intl l="Actions"}</th>
|
<th class="col-md-1">{intl l="Actions"}</th>
|
||||||
</tr>
|
</tr>
|
||||||
@@ -51,6 +52,7 @@
|
|||||||
<td data-field-class="js-login">{$LOGIN}</td>
|
<td data-field-class="js-login">{$LOGIN}</td>
|
||||||
<td data-field-class="js-firstname">{$FIRSTNAME}</td>
|
<td data-field-class="js-firstname">{$FIRSTNAME}</td>
|
||||||
<td data-field-class="js-lastname">{$LASTNAME}</td>
|
<td data-field-class="js-lastname">{$LASTNAME}</td>
|
||||||
|
<td data-field-class="js-locale">{$LOCALE}</td>
|
||||||
<td data-field-class="js-profile" data-value="{$PROFILE}">
|
<td data-field-class="js-profile" data-value="{$PROFILE}">
|
||||||
{if $PROFILE}
|
{if $PROFILE}
|
||||||
{loop type="profile" name="admin-profile" id=$PROFILE}
|
{loop type="profile" name="admin-profile" id=$PROFILE}
|
||||||
@@ -149,6 +151,19 @@
|
|||||||
</div>
|
</div>
|
||||||
{/form_field}
|
{/form_field}
|
||||||
|
|
||||||
|
{form_field form=$form field='locale'}
|
||||||
|
<div class="form-group {if $error}has-error{/if}">
|
||||||
|
<label for="{$label_attr.for}" class="control-label">{intl l=$label} : </label>
|
||||||
|
|
||||||
|
<select id="{$label_attr.for}" name="{$name}" required="required" data-toggle="selectpicker">
|
||||||
|
{loop name='lang-admin' type="lang"}
|
||||||
|
<option value="{$LOCALE}">{$LOCALE}: {$TITLE}</option>
|
||||||
|
{/loop}
|
||||||
|
</select>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
{/form_field}
|
||||||
|
|
||||||
{form_field form=$form field='profile'}
|
{form_field form=$form field='profile'}
|
||||||
<div class="form-group {if $error}has-error{/if}">
|
<div class="form-group {if $error}has-error{/if}">
|
||||||
<label for="{$label_attr.for}" class="control-label">{intl l=$label} : </label>
|
<label for="{$label_attr.for}" class="control-label">{intl l=$label} : </label>
|
||||||
@@ -240,6 +255,19 @@
|
|||||||
</div>
|
</div>
|
||||||
{/form_field}
|
{/form_field}
|
||||||
|
|
||||||
|
{form_field form=$form field='locale'}
|
||||||
|
<div class="form-group {if $error}has-error{/if}">
|
||||||
|
<label for="{$label_attr.for}" class="control-label">{intl l=$label}: </label>
|
||||||
|
|
||||||
|
<select id="{$label_attr.for}" name="{$name}" required="required" data-toggle="selectpicker">
|
||||||
|
{loop name='lang-admin' type="lang"}
|
||||||
|
<option value="{$LOCALE}" {if $LOCALE == $value}selected="selected"{/if}>{$LOCALE}: {$TITLE}</option>
|
||||||
|
{/loop}
|
||||||
|
</select>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
{/form_field}
|
||||||
|
|
||||||
{form_field form=$form field='profile'}
|
{form_field form=$form field='profile'}
|
||||||
<div class="form-group {if $error}has-error{/if}">
|
<div class="form-group {if $error}has-error{/if}">
|
||||||
<label for="{$label_attr.for}" class="control-label">{intl l=$label} : </label>
|
<label for="{$label_attr.for}" class="control-label">{intl l=$label} : </label>
|
||||||
@@ -265,7 +293,7 @@
|
|||||||
file = "includes/generic-create-dialog.html"
|
file = "includes/generic-create-dialog.html"
|
||||||
|
|
||||||
dialog_id = "administrator_update_dialog"
|
dialog_id = "administrator_update_dialog"
|
||||||
dialog_title = {intl l="Update a new administrator"}
|
dialog_title = {intl l="Update an administrator"}
|
||||||
dialog_body = {$smarty.capture.administrator_update_dialog nofilter}
|
dialog_body = {$smarty.capture.administrator_update_dialog nofilter}
|
||||||
|
|
||||||
dialog_ok_label = {intl l="Update"}
|
dialog_ok_label = {intl l="Update"}
|
||||||
|
|||||||
@@ -92,6 +92,10 @@ $website_url = preg_replace("#/install/[a-z](.*)#" ,'', $url);
|
|||||||
<label for="admin_password_verif"><?php echo $trans->trans('Administrator password verification :'); ?></label>
|
<label for="admin_password_verif"><?php echo $trans->trans('Administrator password verification :'); ?></label>
|
||||||
<input id="admin_password_verif" class="form-control" type="password" name="admin_password_verif" value="" required>
|
<input id="admin_password_verif" class="form-control" type="password" name="admin_password_verif" value="" required>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="admin_locale"><?php echo $trans->trans('Administrator preferred locale :'); ?></label>
|
||||||
|
<input id="admin_locale" class="form-control" type="password" name="admin_locale" value="" required>
|
||||||
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label for="email_contact"><?php echo $trans->trans('Contact email :'); ?></label>
|
<label for="email_contact"><?php echo $trans->trans('Contact email :'); ?></label>
|
||||||
<input id="email_contact" class="form-control" type="text" name="store_email" placeholder="foo@bar.com" value="" required>
|
<input id="email_contact" class="form-control" type="text" name="store_email" placeholder="foo@bar.com" value="" required>
|
||||||
|
|||||||
@@ -33,6 +33,7 @@ if($_SESSION['install']['step'] == 5) {
|
|||||||
->setPassword($_POST['admin_password'])
|
->setPassword($_POST['admin_password'])
|
||||||
->setFirstname('admin')
|
->setFirstname('admin')
|
||||||
->setLastname('admin')
|
->setLastname('admin')
|
||||||
|
->setLocale(empty($_POST['admin_locale']) ? 'en_US' : $_POST['admin_locale'])
|
||||||
->save();
|
->save();
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user