first commit
This commit is contained in:
231
apps/update/lib/dataMigration/stPositioningPlugin.php
Normal file
231
apps/update/lib/dataMigration/stPositioningPlugin.php
Normal file
@@ -0,0 +1,231 @@
|
||||
<?php
|
||||
class stUpdatePositioningPlugin
|
||||
{
|
||||
protected $msg = '';
|
||||
|
||||
protected $title = '';
|
||||
|
||||
protected $langs = array();
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$databaseManager = new sfDatabaseManager();
|
||||
$databaseManager->initialize();
|
||||
|
||||
$this->langs = LanguagePeer::doSelectLanguages();
|
||||
}
|
||||
|
||||
public function productUpdate($step)
|
||||
{
|
||||
sfLoader::loadPluginConfig();
|
||||
$c = new Criteria();
|
||||
$c->setOffset($step);
|
||||
$c->setLimit(20);
|
||||
stPropelSeoUrlBehavior::configuration(array('auto_generate_url'=>true));
|
||||
|
||||
$objects = ProductPeer::doSelect($c);
|
||||
foreach ($objects as $object) {
|
||||
foreach ($this->langs as $lang) {
|
||||
$object->setCulture($lang->getOriginalLanguage());
|
||||
try {
|
||||
$object->save();
|
||||
} catch (Exception $e) {
|
||||
}
|
||||
}
|
||||
}
|
||||
$this->title = sfContext::getInstance()->getI18N()->__('Aktualizacja produktów', array(), 'stPositioningBackend');
|
||||
return ($step+count($objects));
|
||||
}
|
||||
|
||||
public function categoryUpdate($step)
|
||||
{
|
||||
sfLoader::loadPluginConfig();
|
||||
$c = new Criteria();
|
||||
$c->setOffset($step);
|
||||
$c->setLimit(20);
|
||||
stPropelSeoUrlBehavior::configuration(array('auto_generate_url'=>true));
|
||||
|
||||
$objects = CategoryPeer::doSelect($c);
|
||||
foreach ($objects as $object) {
|
||||
foreach ($this->langs as $lang) {
|
||||
$object->setCulture($lang->getOriginalLanguage());
|
||||
try {
|
||||
$object->save();
|
||||
} catch (Exception $e) {
|
||||
}
|
||||
}
|
||||
}
|
||||
$this->title = sfContext::getInstance()->getI18N()->__('Aktualizacja kategorii', array(), 'stPositioningBackend');
|
||||
return ($step+count($objects));
|
||||
}
|
||||
|
||||
public function productGroupUpdate($step)
|
||||
{
|
||||
sfLoader::loadPluginConfig();
|
||||
$c = new Criteria();
|
||||
$c->setOffset($step);
|
||||
$c->setLimit(1);
|
||||
stPropelSeoUrlBehavior::configuration(array('auto_generate_url'=>true));
|
||||
|
||||
|
||||
$object = ProductGroupPeer::doSelectOne($c);
|
||||
if (is_object($object)) {
|
||||
try {
|
||||
foreach ($this->langs as $lang) {
|
||||
$object->setCulture($lang->getOriginalLanguage());
|
||||
$object->save();
|
||||
}
|
||||
} catch (Exception $e) {
|
||||
}
|
||||
}
|
||||
$this->title = sfContext::getInstance()->getI18N()->__('Aktualizacja grup produktów', array(), 'stPositioningBackend');
|
||||
return $step+1;
|
||||
}
|
||||
|
||||
public function webpageUpdate($step)
|
||||
{
|
||||
sfLoader::loadPluginConfig();
|
||||
$c = new Criteria();
|
||||
$c->setOffset($step);
|
||||
$c->setLimit(1);
|
||||
stPropelSeoUrlBehavior::configuration(array('auto_generate_url'=>true));
|
||||
|
||||
$object = WebpagePeer::doSelectOne($c);
|
||||
if (is_object($object)) {
|
||||
try {
|
||||
foreach ($this->langs as $lang) {
|
||||
$object->setCulture($lang->getOriginalLanguage());
|
||||
$object->save();
|
||||
}
|
||||
} catch (Exception $e) {
|
||||
}
|
||||
}
|
||||
$this->title = sfContext::getInstance()->getI18N()->__('Aktualizacja stron www', array(), 'stPositioningBackend');
|
||||
return $step+1;
|
||||
}
|
||||
|
||||
/**
|
||||
* Generowanie linków dla producenta po aktualizacji
|
||||
*/
|
||||
public function producerUpdate($step)
|
||||
{
|
||||
sfLoader::loadPluginConfig();
|
||||
$c = new Criteria();
|
||||
$c->setOffset($step);
|
||||
$c->setLimit(20);
|
||||
stPropelSeoUrlBehavior::configuration(array('auto_generate_url'=>true));
|
||||
|
||||
$objects = ProducerPeer::doSelect($c);
|
||||
foreach ($objects as $object) {
|
||||
foreach ($this->langs as $lang) {
|
||||
$object->setCulture($lang->getOriginalLanguage());
|
||||
try {
|
||||
$object->save();
|
||||
} catch (Exception $e) {
|
||||
}
|
||||
}
|
||||
}
|
||||
$this->title = sfContext::getInstance()->getI18N()->__('Aktualizacja producentów', array(), 'stPositioningBackend');
|
||||
return ($step+count($objects));
|
||||
}
|
||||
|
||||
/**
|
||||
* Generowanie linków dla bloga po aktualizacji
|
||||
*/
|
||||
public function blogUpdate($step)
|
||||
{
|
||||
sfLoader::loadPluginConfig();
|
||||
$c = new Criteria();
|
||||
$c->setOffset($step);
|
||||
$c->setLimit(20);
|
||||
stPropelSeoUrlBehavior::configuration(array('auto_generate_url'=>true));
|
||||
|
||||
$objects = BlogrPeer::doSelect($c);
|
||||
foreach ($objects as $object) {
|
||||
foreach ($this->langs as $lang) {
|
||||
$object->setCulture($lang->getOriginalLanguage());
|
||||
try {
|
||||
$object->save();
|
||||
} catch (Exception $e) {
|
||||
}
|
||||
}
|
||||
}
|
||||
$this->title = sfContext::getInstance()->getI18N()->__('Aktualizacja bloga', array(), 'stPositioningBackend');
|
||||
return ($step+count($objects));
|
||||
}
|
||||
|
||||
public function getMessage()
|
||||
{
|
||||
return $this->msg;
|
||||
}
|
||||
|
||||
public function getTitle()
|
||||
{
|
||||
return $this->title;
|
||||
}
|
||||
|
||||
public function init()
|
||||
{
|
||||
$i18n = sfContext::getInstance()->getI18N();
|
||||
switch (sfContext::getInstance()->getRequest()->getParameterHolder()->get('name')) {
|
||||
case "stPositioning_ProductUpdate" :
|
||||
$this->title = $i18n->__('Aktualizacja produktów', array(), 'stPositioningBackend');
|
||||
break;
|
||||
case "stPositioning_CategoryUpdate" :
|
||||
$this->title = $i18n->__('Aktualizacja kategorii', array(), 'stPositioningBackend');
|
||||
break;
|
||||
case "stPositioning_ProductGroupUpdate" :
|
||||
$this->title = $i18n->__('Aktualizacja grup produktów', array(), 'stPositioningBackend');
|
||||
break;
|
||||
case "stPositioning_WebpageUpdate" :
|
||||
$this->title = $i18n->__('Aktualizacja stron www', array(), 'stPositioningBackend');
|
||||
break;
|
||||
case "stPositioning_BlogUpdate" :
|
||||
$this->title = $i18n->__('Aktualizacja bloga', array(), 'stPositioningBackend');
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
public function close()
|
||||
{
|
||||
$i18n = sfContext::getInstance()->getI18N();
|
||||
switch (sfContext::getInstance()->getRequest()->getParameterHolder()->get('name')) {
|
||||
case "stPositioning_ProductUpdate" :
|
||||
$this->title = $i18n->__('Aktualizacja produktów', array(), 'stPositioningBackend');
|
||||
touch(sfConfig::get('sf_log_dir').DIRECTORY_SEPARATOR.'stPositioning_ProductUpdate.log');
|
||||
break;
|
||||
case "stPositioning_CategoryUpdate" :
|
||||
$this->title = $i18n->__('Aktualizacja kategorii', array(), 'stPositioningBackend');
|
||||
touch(sfConfig::get('sf_log_dir').DIRECTORY_SEPARATOR.'stPositioning_CategoryUpdate.log');
|
||||
break;
|
||||
case "stPositioning_ProductGroupUpdate" :
|
||||
$this->title = $i18n->__('Aktualizacja grup produktów', array(), 'stPositioningBackend');
|
||||
touch(sfConfig::get('sf_log_dir').DIRECTORY_SEPARATOR.'stPositioning_ProductGroupUpdate.log');
|
||||
break;
|
||||
case "stPositioning_WebpageUpdate" :
|
||||
$this->title = $i18n->__('Aktualizacja stron www', array(), 'stPositioningBackend');
|
||||
touch(sfConfig::get('sf_log_dir').DIRECTORY_SEPARATOR.'stPositioning_WebpageUpdate.log');
|
||||
break;
|
||||
case "stPositioning_BlogUpdate" :
|
||||
$this->title = $i18n->__('Aktualizacja bloga', array(), 'stPositioningBackend');
|
||||
touch(sfConfig::get('sf_log_dir').DIRECTORY_SEPARATOR.'stPositioning_BlogUpdate.log');
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
public static function postInstall(sfEvent $event) {
|
||||
sfLoader::loadHelpers('stProgressBar');
|
||||
sfLoader::loadHelpers('Partial');
|
||||
$event->getSubject()->msg .= progress_bar('stPositioning_ProductUpdate', 'stUpdatePositioningPlugin', 'productUpdate', ProductPeer::doCount(new Criteria()));
|
||||
$event->getSubject()->msg .= progress_bar('stPositioning_CategoryUpdate', 'stUpdatePositioningPlugin', 'categoryUpdate', CategoryPeer::doCount(new Criteria()));
|
||||
$event->getSubject()->msg .= progress_bar('stPositioning_ProductGroupUpdate', 'stUpdatePositioningPlugin', 'productGroupUpdate', ProductGroupPeer::doCount(new Criteria()));
|
||||
$event->getSubject()->msg .= progress_bar('stPositioning_WebpageUpdate', 'stUpdatePositioningPlugin', 'webpageUpdate', WebpagePeer::doCount(new Criteria()));
|
||||
$event->getSubject()->msg .= progress_bar('stPositioning_BlogUpdate', 'stUpdatePositioningPlugin', 'blogUpdate', BlogPeer::doCount(new Criteria()));
|
||||
}
|
||||
|
||||
public static function postInstallProducer(sfEvent $event) {
|
||||
sfLoader::loadHelpers('stProgressBar');
|
||||
sfLoader::loadHelpers('Partial');
|
||||
$event->getSubject()->msg .= progress_bar('stPositioning_ProducerUpdate', 'stUpdatePositioningPlugin', 'producerUpdate', ProducerPeer::doCount(new Criteria()));
|
||||
}
|
||||
}
|
||||
87
apps/update/lib/dataMigration/stUserFix.php
Normal file
87
apps/update/lib/dataMigration/stUserFix.php
Normal file
@@ -0,0 +1,87 @@
|
||||
<?php
|
||||
class stUserFixUpdate
|
||||
{
|
||||
public function fixTable($step)
|
||||
{
|
||||
return $step + $this->executeFixUser($step);
|
||||
}
|
||||
|
||||
public static function postInstall(sfEvent $event)
|
||||
{
|
||||
$databaseManager = new sfDatabaseManager();
|
||||
$databaseManager->initialize();
|
||||
|
||||
sfLoader::loadHelpers('stProgressBar');
|
||||
sfLoader::loadHelpers('Partial');
|
||||
$event->getSubject()->msg .= progress_bar('stUserFixData', 'stUserFixUpdate', 'fixTable', sfGuardUserPeer::doCount(new Criteria()));
|
||||
}
|
||||
|
||||
public function executeFixUser($step)
|
||||
{
|
||||
|
||||
$databaseManager = new sfDatabaseManager();
|
||||
$databaseManager->initialize();
|
||||
|
||||
$c = new Criteria();
|
||||
$c->setLimit(10);
|
||||
$c->setOffset($step);
|
||||
$users = sfGuardUserPeer::doSelect($c);
|
||||
|
||||
|
||||
foreach ($users as $user)
|
||||
{
|
||||
if($user->getHashCode()=="")
|
||||
{
|
||||
|
||||
$HashCode = md5(microtime().$user->getUsername());
|
||||
$user->setHashCode($HashCode);
|
||||
$user->save();
|
||||
}
|
||||
|
||||
$c = new Criteria();
|
||||
$c->add(UserDataPeer::SF_GUARD_USER_ID, $user->getId());
|
||||
$c->add(UserDataPeer::IS_BILLING, null);
|
||||
UserDataPeer::doDelete($c);
|
||||
|
||||
$c = new Criteria();
|
||||
$c->add(UserDataPeer::SF_GUARD_USER_ID, $user->getId());
|
||||
$c->add(UserDataPeer::IS_BILLING, 1);
|
||||
$userDataBilling = UserDataPeer::doSelectOne($c);
|
||||
|
||||
if($userDataBilling)
|
||||
{
|
||||
$c = new Criteria();
|
||||
$c->add(UserDataPeer::SF_GUARD_USER_ID, $user->getId());
|
||||
$c->add(UserDataPeer::IS_BILLING, "");
|
||||
$userDataDelivery = UserDataPeer::doSelectOne($c);
|
||||
|
||||
if(!$userDataDelivery)
|
||||
{
|
||||
$userData = new UserData();
|
||||
$userData->setSfGuardUserId($user->getId());
|
||||
$userData->setIsBilling(0);
|
||||
$userData->setIsDefault(1);
|
||||
|
||||
$userData->setName($userDataBilling->getName());
|
||||
$userData->setSurname($userDataBilling->getSurname());
|
||||
$userData->setStreet($userDataBilling->getStreet());
|
||||
$userData->setHouse($userDataBilling->getHouse());
|
||||
$userData->setFlat($userDataBilling->getFlat());
|
||||
$userData->setCode($userDataBilling->getCode());
|
||||
$userData->setTown($userDataBilling->getTown());
|
||||
$userData->setCountriesId($userDataBilling->getCountriesId());
|
||||
$userData->setPhone($userDataBilling->getPhone());
|
||||
$userData->setCompany($userDataBilling->getCompany());
|
||||
|
||||
$userData->save();
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return count($users);
|
||||
|
||||
}
|
||||
}
|
||||
?>
|
||||
Reference in New Issue
Block a user