straker-translations-easy-translation-platform - Version 1.2.1

Version Notes

Initial Stable release

Download this release

Release Info

Developer Chris
Extension straker-translations-easy-translation-platform
Version 1.2.1
Comparing to
See all releases


Code changes from version 1.2.0 to 1.2.1

app/code/community/StrakerTranslations/EasyTranslationPlatform/Block/Adminhtml/Template/Grid/Renderer/Status.php CHANGED
@@ -6,17 +6,12 @@ class StrakerTranslations_EasyTranslationPlatform_Block_Adminhtml_Template_Grid_
6
  if (get_class($row) == get_class(Mage::getModel('strakertranslations_easytranslationplatform/job') )) {
7
  //if status is QUEUED
8
  if ($row->getStatusName() == 'QUEUED') {
9
- $quotes = json_decode($row->getQuote(), true);
10
  $html = $this->__('Waiting for Quote');
11
- if (!empty($quotes) && $row->getStatusId() == 2) {
12
- foreach ($quotes as $quote) {
13
- if ($quote['quote']) {
14
- $html = '<button onclick="viewStrakerQuote('.$row->getId().',\'' . $row->getJobKey() . '\')" style="margin: 5px;" title="View Quote" type="button" style="">'.$this->__('View Quote').'</button>';
15
- break;
16
- }
17
  }
18
  }
19
- }
20
  //else if status is IN_PROGRESS
21
  elseif ($row->getStatusName() == 'IN_PROGRESS') {
22
  $html = $this->__('In Progress');
6
  if (get_class($row) == get_class(Mage::getModel('strakertranslations_easytranslationplatform/job') )) {
7
  //if status is QUEUED
8
  if ($row->getStatusName() == 'QUEUED') {
9
+ $quote = $row->getQuote();
10
  $html = $this->__('Waiting for Quote');
11
+ if ('READY' === $quote && $row->getStatusId() == 2) {
12
+ $html = '<button onclick="viewStrakerQuote('.$row->getId().',\'' . $row->getJobKey() . '\')" style="margin: 5px;" title="View Quote" type="button" style="">'.$this->__('View Quote').'</button>';
 
 
 
 
13
  }
14
  }
 
15
  //else if status is IN_PROGRESS
16
  elseif ($row->getStatusName() == 'IN_PROGRESS') {
17
  $html = $this->__('In Progress');
app/code/community/StrakerTranslations/EasyTranslationPlatform/Model/Job.php CHANGED
@@ -4,7 +4,7 @@
4
  * User: WlliamZhao
5
  * Date: 30/09/15
6
  * Time: 4:37 PM
7
- */
8
  class StrakerTranslations_EasyTranslationPlatform_Model_Job extends Mage_Core_Model_Abstract
9
  {
10
  protected $_attributes = array();
@@ -19,11 +19,11 @@ class StrakerTranslations_EasyTranslationPlatform_Model_Job extends Mage_Core_Mo
19
  protected function addProductAttributes($productAttributeIds){
20
 
21
  foreach ($productAttributeIds as $productAttributeId) {
22
- $this->_attributes[] =
23
  Mage::getModel('strakertranslations_easytranslationplatform/product_attributes')
24
- ->setJobId($this->getId())
25
- ->setAttributeId((int) $productAttributeId)
26
- ->save();
27
  }
28
  return $this;
29
  }
@@ -31,7 +31,7 @@ class StrakerTranslations_EasyTranslationPlatform_Model_Job extends Mage_Core_Mo
31
 
32
  protected function addProductIds($productIds){
33
 
34
- $writeConnection = Mage::getSingleton('core/resource')->getConnection('core_write');
35
 
36
  $query = 'INSERT INTO `'.Mage::getSingleton('core/resource')->getTableName('strakertranslations_easytranslationplatform/job_product').'` (`product_id`, `job_id`) VALUES ';
37
  $queryVals = array();
@@ -48,7 +48,7 @@ class StrakerTranslations_EasyTranslationPlatform_Model_Job extends Mage_Core_Mo
48
  protected function addProductTranslateOriginal($productAttributeId, $productCollection){
49
 
50
 
51
- $writeConnection = Mage::getSingleton('core/resource')->getConnection('core_write');
52
 
53
  $query = 'INSERT INTO `'.Mage::getSingleton('core/resource')->getTableName('strakertranslations_easytranslationplatform/product_translate').'` (`job_id`, `product_id`, `attribute_id`, `original`) VALUES ';
54
  $queryVals = array();
@@ -66,10 +66,10 @@ class StrakerTranslations_EasyTranslationPlatform_Model_Job extends Mage_Core_Mo
66
 
67
  foreach ($categoryAttributeIds as $categoryAttributeId) {
68
  $this->_attributes[] =
69
- Mage::getModel('strakertranslations_easytranslationplatform/category_attributes')
70
- ->setJobId($this->getId())
71
- ->setAttributeId((int) $categoryAttributeId)
72
- ->save();
73
  }
74
  return $this;
75
  }
@@ -77,7 +77,7 @@ class StrakerTranslations_EasyTranslationPlatform_Model_Job extends Mage_Core_Mo
77
 
78
  protected function addCategoryIds($categoryIds){
79
 
80
- $writeConnection = Mage::getSingleton('core/resource')->getConnection('core_write');
81
 
82
  $query = 'INSERT INTO `'.Mage::getSingleton('core/resource')->getTableName('strakertranslations_easytranslationplatform/job_category').'` (`category_id`, `job_id`) VALUES ';
83
  $queryVals = array();
@@ -94,7 +94,7 @@ class StrakerTranslations_EasyTranslationPlatform_Model_Job extends Mage_Core_Mo
94
  protected function addCategoryTranslateOriginal($categoryAttributeId, $categoryCollection){
95
 
96
 
97
- $writeConnection = Mage::getSingleton('core/resource')->getConnection('core_write');
98
 
99
  $query = 'INSERT INTO `'.Mage::getSingleton('core/resource')->getTableName('strakertranslations_easytranslationplatform/category_translate').'` (`job_id`, `category_id`, `attribute_id`, `original`) VALUES ';
100
  $queryVals = array();
@@ -109,22 +109,22 @@ class StrakerTranslations_EasyTranslationPlatform_Model_Job extends Mage_Core_Mo
109
  }
110
 
111
  public function array_to_xml( $data, &$xml_data ) {
112
- foreach( $data as $key => $value ) {
113
- if( is_array($value) ) {
114
- if( is_numeric($key) ){
115
- $key = 'item'.$key; //dealing with <0/>..<n/> issues
 
 
 
 
 
116
  }
117
- $subnode = $xml_data->addChild($key);
118
- $this->array_to_xml($value, $subnode);
119
- } else {
120
- $xml_data->addChild("$key",htmlspecialchars("$value"));
121
  }
122
  }
123
- }
124
 
125
  protected function addAttributeTranslateOriginal($attributeData){
126
 
127
- $writeConnection = Mage::getSingleton('core/resource')->getConnection('core_write');
128
 
129
  $query = 'INSERT INTO `'.Mage::getSingleton('core/resource')->getTableName('strakertranslations_easytranslationplatform/straker_attribute_translate').'` (`job_id`, `attribute_id`, `original`) VALUES ';
130
  $queryVals = array();
@@ -138,9 +138,9 @@ class StrakerTranslations_EasyTranslationPlatform_Model_Job extends Mage_Core_Mo
138
 
139
  if ($translate['option'] ){
140
  $attributeOptioinCollection = Mage::getModel('eav/entity_attribute_option')
141
- ->getCollection()
142
- ->setStoreFilter($this->getSourceStore())
143
- ->setAttributeFilter($attributeId);
144
 
145
  foreach ($attributeOptioinCollection as $attributeOptioin) {
146
  $original['option']['id_'.$attributeOptioin->getoptionId()] = $attributeOptioin->getValue();
@@ -172,7 +172,7 @@ class StrakerTranslations_EasyTranslationPlatform_Model_Job extends Mage_Core_Mo
172
  protected function addAttributeIds($attributeData){
173
 
174
 
175
- $writeConnection = Mage::getSingleton('core/resource')->getConnection('core_write');
176
 
177
  $query = 'INSERT INTO `'.Mage::getSingleton('core/resource')->getTableName('strakertranslations_easytranslationplatform/job_attribute').'` (`attribute_id`, `translate_lable`, `translate_option`, `job_id` ) VALUES ';
178
  $queryVals = array();
@@ -225,7 +225,7 @@ class StrakerTranslations_EasyTranslationPlatform_Model_Job extends Mage_Core_Mo
225
  $productCollection->addFieldToFilter('entity_id', array('in'=> $_productIds));
226
 
227
  foreach ( $productAttributeIds as $productAttributeId){
228
- $this->addProductTranslateOriginal($productAttributeId, $productCollection);
229
  }
230
  }
231
  return $this;
@@ -294,7 +294,7 @@ class StrakerTranslations_EasyTranslationPlatform_Model_Job extends Mage_Core_Mo
294
 
295
  $_xml = '<?xml version="1.0" encoding="utf-8"?><root>';
296
 
297
- $productTranslateCollection = Mage::getModel('strakertranslations_easytranslationplatform/product_translate')->getCollection();
298
  $productTranslateCollection->addFieldToFilter('job_id',$this->getId());
299
 
300
  $attributeFrontLabel = array();
@@ -302,7 +302,7 @@ class StrakerTranslations_EasyTranslationPlatform_Model_Job extends Mage_Core_Mo
302
  foreach ($productTranslateCollection as $productTranslate ){
303
  if (!isset($attributeFrontLabel[$productTranslate->getAttributeId()])){
304
  $attributeFrontLabel[$productTranslate->getAttributeId()] =
305
- Mage::getModel('eav/entity_attribute')->load($productTranslate->getAttributeId())->getFrontendLabel();
306
  }
307
 
308
  $_xml .= '<data name="' .$this->getTypeId(). '_' . $this->getStoreId().'_'. $productTranslate->getAttributeId().'_'. $productTranslate->getProductId().'" ' ;
@@ -331,7 +331,7 @@ class StrakerTranslations_EasyTranslationPlatform_Model_Job extends Mage_Core_Mo
331
  foreach ($categoryTranslateCollection as $categoryTranslate ){
332
  if (!isset($attributeFrontLabel[$categoryTranslate->getAttributeId()])){
333
  $attributeFrontLabel[$categoryTranslate->getAttributeId()] =
334
- Mage::getModel('eav/entity_attribute')->load($categoryTranslate->getAttributeId())->getFrontendLabel();
335
  }
336
 
337
  $_xml .= '<data name="' .$this->getTypeId(). '_' . $this->getStoreId().'_'. $categoryTranslate->getAttributeId().'_'. $categoryTranslate->getCategoryId().'" ' ;
@@ -431,8 +431,8 @@ class StrakerTranslations_EasyTranslationPlatform_Model_Job extends Mage_Core_Mo
431
  //product
432
  $this->setTypeId(1);
433
  $this->addProducts($productAttributeIds, $productIds)
434
- ->_createProductTranslateFile()
435
- ->_summitJob();
436
  return $this;
437
  }
438
 
@@ -441,8 +441,8 @@ class StrakerTranslations_EasyTranslationPlatform_Model_Job extends Mage_Core_Mo
441
  //category
442
  $this->setTypeId(3);
443
  $this->addCategories($categoryAttributeIds, $categoryIds)
444
- ->_createCategoryTranslateFile()
445
- ->_summitJob();
446
  return $this;
447
  }
448
 
@@ -451,8 +451,8 @@ class StrakerTranslations_EasyTranslationPlatform_Model_Job extends Mage_Core_Mo
451
  //category
452
  $this->setTypeId(4);
453
  $this->addAttributes($attributeData)
454
- ->_createAttributeTranslateFile()
455
- ->_summitJob();
456
  return $this;
457
  }
458
 
@@ -462,12 +462,18 @@ class StrakerTranslations_EasyTranslationPlatform_Model_Job extends Mage_Core_Mo
462
  $request = array();
463
  $request['job_key'] = $this->getJobKey();
464
  $api = $this->_getApi();
465
- $response = $api->getQuote($request);
466
- $quote = json_encode($response->quote);
467
 
468
- if($quote && $quote != $this->getQuote()){
469
- $this->setQuote($quote)->save();
470
- return true;
 
 
 
 
 
 
 
471
  }
472
  }
473
  return false;
@@ -475,7 +481,7 @@ class StrakerTranslations_EasyTranslationPlatform_Model_Job extends Mage_Core_Mo
475
  }
476
 
477
  public function updateTranslation(){
478
-
479
  if ($this->getJobKey()){
480
  $request = array();
481
  $request['job_key'] = $this->getJobKey();
@@ -489,14 +495,22 @@ class StrakerTranslations_EasyTranslationPlatform_Model_Job extends Mage_Core_Mo
489
 
490
  if ($jobStatusId && $job->status <> $this->getStatusName()) {
491
  $this->setStatusId($jobStatusId)->save();
 
492
  }
493
 
494
  if ($job->tj_number && $job->tj_number <> $this->getTjNumber()) {
495
  $this->setTjNumber($job->tj_number)->save();
 
496
  }
497
 
498
  if ($job->workflow && $job->workflow <> $this->getWorkFlow()) {
499
  $this->setWorkFlow($job->workflow)->save();
 
 
 
 
 
 
500
  }
501
  }
502
 
@@ -504,8 +518,8 @@ class StrakerTranslations_EasyTranslationPlatform_Model_Job extends Mage_Core_Mo
504
 
505
  if ($file->download_url && !$this->getDownloadUrl()) {
506
  $this->setDownloadUrl($file->download_url)->save();
507
-
508
  $this->_importTranslation();
 
509
  }
510
  }
511
  }
@@ -518,8 +532,7 @@ class StrakerTranslations_EasyTranslationPlatform_Model_Job extends Mage_Core_Mo
518
  }
519
 
520
  }
521
- return false;
522
-
523
  }
524
 
525
  protected function _getApi(){
@@ -570,7 +583,7 @@ class StrakerTranslations_EasyTranslationPlatform_Model_Job extends Mage_Core_Mo
570
  $this->array_to_xml($_translationValue,$xml);
571
  $value = (string) $xml->asXML();
572
  }
573
-
574
 
575
  $_entityTranslation = Mage::getModel('strakertranslations_easytranslationplatform/'.$this->_getType().'_translate')->load($content_id);
576
  $_entityTranslation->setTranslate($value);
@@ -611,7 +624,7 @@ class StrakerTranslations_EasyTranslationPlatform_Model_Job extends Mage_Core_Mo
611
  }
612
 
613
  $updatedIds = array();
614
- $writeConnection = Mage::getSingleton('core/resource')->getConnection('core_write');
615
 
616
  foreach ($collection as $translation) {
617
  $translation->setStoreId($this->getStoreId())->importTranslation();
@@ -676,5 +689,7 @@ class StrakerTranslations_EasyTranslationPlatform_Model_Job extends Mage_Core_Mo
676
 
677
  }
678
 
679
-
 
 
680
  }
4
  * User: WlliamZhao
5
  * Date: 30/09/15
6
  * Time: 4:37 PM
7
+ */
8
  class StrakerTranslations_EasyTranslationPlatform_Model_Job extends Mage_Core_Model_Abstract
9
  {
10
  protected $_attributes = array();
19
  protected function addProductAttributes($productAttributeIds){
20
 
21
  foreach ($productAttributeIds as $productAttributeId) {
22
+ $this->_attributes[] =
23
  Mage::getModel('strakertranslations_easytranslationplatform/product_attributes')
24
+ ->setJobId($this->getId())
25
+ ->setAttributeId((int) $productAttributeId)
26
+ ->save();
27
  }
28
  return $this;
29
  }
31
 
32
  protected function addProductIds($productIds){
33
 
34
+ $writeConnection = $this->getWriteAdapter();
35
 
36
  $query = 'INSERT INTO `'.Mage::getSingleton('core/resource')->getTableName('strakertranslations_easytranslationplatform/job_product').'` (`product_id`, `job_id`) VALUES ';
37
  $queryVals = array();
48
  protected function addProductTranslateOriginal($productAttributeId, $productCollection){
49
 
50
 
51
+ $writeConnection = $this->getWriteAdapter();
52
 
53
  $query = 'INSERT INTO `'.Mage::getSingleton('core/resource')->getTableName('strakertranslations_easytranslationplatform/product_translate').'` (`job_id`, `product_id`, `attribute_id`, `original`) VALUES ';
54
  $queryVals = array();
66
 
67
  foreach ($categoryAttributeIds as $categoryAttributeId) {
68
  $this->_attributes[] =
69
+ Mage::getModel('strakertranslations_easytranslationplatform/category_attributes')
70
+ ->setJobId($this->getId())
71
+ ->setAttributeId((int) $categoryAttributeId)
72
+ ->save();
73
  }
74
  return $this;
75
  }
77
 
78
  protected function addCategoryIds($categoryIds){
79
 
80
+ $writeConnection = $this->getWriteAdapter();
81
 
82
  $query = 'INSERT INTO `'.Mage::getSingleton('core/resource')->getTableName('strakertranslations_easytranslationplatform/job_category').'` (`category_id`, `job_id`) VALUES ';
83
  $queryVals = array();
94
  protected function addCategoryTranslateOriginal($categoryAttributeId, $categoryCollection){
95
 
96
 
97
+ $writeConnection = $this->getWriteAdapter();
98
 
99
  $query = 'INSERT INTO `'.Mage::getSingleton('core/resource')->getTableName('strakertranslations_easytranslationplatform/category_translate').'` (`job_id`, `category_id`, `attribute_id`, `original`) VALUES ';
100
  $queryVals = array();
109
  }
110
 
111
  public function array_to_xml( $data, &$xml_data ) {
112
+ foreach( $data as $key => $value ) {
113
+ if( is_array($value) ) {
114
+ if( is_numeric($key) ){
115
+ $key = 'item'.$key; //dealing with <0/>..<n/> issues
116
+ }
117
+ $subnode = $xml_data->addChild($key);
118
+ $this->array_to_xml($value, $subnode);
119
+ } else {
120
+ $xml_data->addChild("$key",htmlspecialchars("$value"));
121
  }
 
 
 
 
122
  }
123
  }
 
124
 
125
  protected function addAttributeTranslateOriginal($attributeData){
126
 
127
+ $writeConnection = $this->getWriteAdapter();
128
 
129
  $query = 'INSERT INTO `'.Mage::getSingleton('core/resource')->getTableName('strakertranslations_easytranslationplatform/straker_attribute_translate').'` (`job_id`, `attribute_id`, `original`) VALUES ';
130
  $queryVals = array();
138
 
139
  if ($translate['option'] ){
140
  $attributeOptioinCollection = Mage::getModel('eav/entity_attribute_option')
141
+ ->getCollection()
142
+ ->setStoreFilter($this->getSourceStore())
143
+ ->setAttributeFilter($attributeId);
144
 
145
  foreach ($attributeOptioinCollection as $attributeOptioin) {
146
  $original['option']['id_'.$attributeOptioin->getoptionId()] = $attributeOptioin->getValue();
172
  protected function addAttributeIds($attributeData){
173
 
174
 
175
+ $writeConnection = $this->getWriteAdapter();
176
 
177
  $query = 'INSERT INTO `'.Mage::getSingleton('core/resource')->getTableName('strakertranslations_easytranslationplatform/job_attribute').'` (`attribute_id`, `translate_lable`, `translate_option`, `job_id` ) VALUES ';
178
  $queryVals = array();
225
  $productCollection->addFieldToFilter('entity_id', array('in'=> $_productIds));
226
 
227
  foreach ( $productAttributeIds as $productAttributeId){
228
+ $this->addProductTranslateOriginal($productAttributeId, $productCollection);
229
  }
230
  }
231
  return $this;
294
 
295
  $_xml = '<?xml version="1.0" encoding="utf-8"?><root>';
296
 
297
+ $productTranslateCollection = Mage::getModel('strakertranslations_easytranslationplatform/product_translate')->getCollection($this->getWriteAdapter());
298
  $productTranslateCollection->addFieldToFilter('job_id',$this->getId());
299
 
300
  $attributeFrontLabel = array();
302
  foreach ($productTranslateCollection as $productTranslate ){
303
  if (!isset($attributeFrontLabel[$productTranslate->getAttributeId()])){
304
  $attributeFrontLabel[$productTranslate->getAttributeId()] =
305
+ Mage::getModel('eav/entity_attribute')->load($productTranslate->getAttributeId())->getFrontendLabel();
306
  }
307
 
308
  $_xml .= '<data name="' .$this->getTypeId(). '_' . $this->getStoreId().'_'. $productTranslate->getAttributeId().'_'. $productTranslate->getProductId().'" ' ;
331
  foreach ($categoryTranslateCollection as $categoryTranslate ){
332
  if (!isset($attributeFrontLabel[$categoryTranslate->getAttributeId()])){
333
  $attributeFrontLabel[$categoryTranslate->getAttributeId()] =
334
+ Mage::getModel('eav/entity_attribute')->load($categoryTranslate->getAttributeId())->getFrontendLabel();
335
  }
336
 
337
  $_xml .= '<data name="' .$this->getTypeId(). '_' . $this->getStoreId().'_'. $categoryTranslate->getAttributeId().'_'. $categoryTranslate->getCategoryId().'" ' ;
431
  //product
432
  $this->setTypeId(1);
433
  $this->addProducts($productAttributeIds, $productIds)
434
+ ->_createProductTranslateFile()
435
+ ->_summitJob();
436
  return $this;
437
  }
438
 
441
  //category
442
  $this->setTypeId(3);
443
  $this->addCategories($categoryAttributeIds, $categoryIds)
444
+ ->_createCategoryTranslateFile()
445
+ ->_summitJob();
446
  return $this;
447
  }
448
 
451
  //category
452
  $this->setTypeId(4);
453
  $this->addAttributes($attributeData)
454
+ ->_createAttributeTranslateFile()
455
+ ->_summitJob();
456
  return $this;
457
  }
458
 
462
  $request = array();
463
  $request['job_key'] = $this->getJobKey();
464
  $api = $this->_getApi();
465
+ $response = $api->getTranslation($request);
 
466
 
467
+ if ($response->job) {
468
+ foreach ($response->job as $job){
469
+ if ($job->token == $this->getId()) {
470
+ $quote = $job->quotation;
471
+ if ($quote && $quote != $this->getQuote()) {
472
+ $this->setQuote($quote)->save();
473
+ return true;
474
+ }
475
+ }
476
+ }
477
  }
478
  }
479
  return false;
481
  }
482
 
483
  public function updateTranslation(){
484
+ $updateFlag = false;
485
  if ($this->getJobKey()){
486
  $request = array();
487
  $request['job_key'] = $this->getJobKey();
495
 
496
  if ($jobStatusId && $job->status <> $this->getStatusName()) {
497
  $this->setStatusId($jobStatusId)->save();
498
+ $updateFlag = true;
499
  }
500
 
501
  if ($job->tj_number && $job->tj_number <> $this->getTjNumber()) {
502
  $this->setTjNumber($job->tj_number)->save();
503
+ $updateFlag = true;
504
  }
505
 
506
  if ($job->workflow && $job->workflow <> $this->getWorkFlow()) {
507
  $this->setWorkFlow($job->workflow)->save();
508
+ $updateFlag = true;
509
+ }
510
+
511
+ if ($job->quotation && $job->quotation <> $this->getQuote()) {
512
+ $this->setQuote($job->quotation)->save();
513
+ $updateFlag = true;
514
  }
515
  }
516
 
518
 
519
  if ($file->download_url && !$this->getDownloadUrl()) {
520
  $this->setDownloadUrl($file->download_url)->save();
 
521
  $this->_importTranslation();
522
+ $updateFlag = true;
523
  }
524
  }
525
  }
532
  }
533
 
534
  }
535
+ return $updateFlag;
 
536
  }
537
 
538
  protected function _getApi(){
583
  $this->array_to_xml($_translationValue,$xml);
584
  $value = (string) $xml->asXML();
585
  }
586
+
587
 
588
  $_entityTranslation = Mage::getModel('strakertranslations_easytranslationplatform/'.$this->_getType().'_translate')->load($content_id);
589
  $_entityTranslation->setTranslate($value);
624
  }
625
 
626
  $updatedIds = array();
627
+ $writeConnection = $this->getWriteAdapter();
628
 
629
  foreach ($collection as $translation) {
630
  $translation->setStoreId($this->getStoreId())->importTranslation();
689
 
690
  }
691
 
692
+ protected function getWriteAdapter(){
693
+ return Mage::getSingleton('core/resource')->getConnection('core_write');
694
+ }
695
  }
app/code/community/StrakerTranslations/EasyTranslationPlatform/controllers/Adminhtml/Straker/JobController.php CHANGED
@@ -20,10 +20,12 @@ Class StrakerTranslations_EasyTranslationPlatform_Adminhtml_Straker_JobControlle
20
  //todo refresh all jobs that is waiting on a quote. This should be refactored into different process.
21
  $collection = Mage::getModel('strakertranslations_easytranslationplatform/job')
22
  ->getCollection()
23
- ->addFieldToFilter('status_id', 2)
24
- ->addFieldToFilter('quote', array('null' => true));
25
  foreach($collection as $job){
26
- $job->updateQuote();
 
 
 
27
  }
28
 
29
  $this->_title($this->__('Straker Translations'))
@@ -43,40 +45,11 @@ Class StrakerTranslations_EasyTranslationPlatform_Adminhtml_Straker_JobControlle
43
  return false;
44
  }
45
 
46
-
47
- switch ($job->getStatusName()){
48
-
49
- Case 'QUEUED' :
50
-
51
- if ($job->getPaymentStatus()){
52
- if( $job->updateTranslation() ){
53
- Mage::getSingleton('core/session')->addSuccess($this->__('Job %s has been updated.', $job->getId()));
54
- }
55
- } else {
56
-
57
- if($job->updatePayment()){
58
- if( $job->updateTranslation() ){
59
- Mage::getSingleton('core/session')->addSuccess($this->__('Job %s has been updated.', $job->getId()));
60
- }
61
-
62
- }elseif($job->updateQuote()){
63
- Mage::getSingleton('core/session')->addSuccess($this->__('Job %s has been updated.', $job->getId()));
64
- }
65
-
66
- }
67
-
68
- $this->_redirect('*/*/');
69
- return;
70
- break;
71
-
72
- default:
73
- if( $job->updateTranslation() ){
74
- Mage::getSingleton('core/session')->addSuccess($this->__('Job %s has been updated.', $job->getId()));
75
- }
76
- $this->_redirect('*/*/');
77
- return;
78
-
79
  }
 
 
80
 
81
  }
82
 
20
  //todo refresh all jobs that is waiting on a quote. This should be refactored into different process.
21
  $collection = Mage::getModel('strakertranslations_easytranslationplatform/job')
22
  ->getCollection()
23
+ ->addFieldToFilter('status_id', array('lt' => 4));
 
24
  foreach($collection as $job){
25
+ $job = Mage::getModel('strakertranslations_easytranslationplatform/job')->load($job->getId());
26
+ if ( $job->updateTranslation() ){
27
+ Mage::getSingleton('core/session')->addSuccess($this->__('Job %s has been updated.', $job->getId()));
28
+ }
29
  }
30
 
31
  $this->_title($this->__('Straker Translations'))
45
  return false;
46
  }
47
 
48
+ if( $job->updateTranslation() ){
49
+ Mage::getSingleton('core/session')->addSuccess($this->__('Job %s has been updated.', $job->getId()));
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
50
  }
51
+ $this->_redirect('*/*/');
52
+ return;
53
 
54
  }
55
 
app/code/community/StrakerTranslations/EasyTranslationPlatform/controllers/Adminhtml/Straker/NewController.php CHANGED
@@ -73,6 +73,7 @@ Class StrakerTranslations_EasyTranslationPlatform_Adminhtml_Straker_NewControlle
73
  if($response->access_token && $response->application_key) {
74
  $apiModel->saveAccessToken($response->access_token);
75
  $apiModel->saveAppKey($response->application_key);
 
76
  Mage::getSingleton('adminhtml/session')->addSuccess('Registration success.');
77
  }
78
  elseif($response->magentoMessage){
@@ -105,6 +106,7 @@ Class StrakerTranslations_EasyTranslationPlatform_Adminhtml_Straker_NewControlle
105
  $helper = Mage::helper('strakertranslations_easytranslationplatform');
106
 
107
  if ($helper->saveStoreSetup($data['store'], $data['source'], $data['from'], $data['to']) !== false ){
 
108
  $this->_redirect('*/*/', array('store' => $data['store']));
109
  return;
110
  }
@@ -134,6 +136,7 @@ Class StrakerTranslations_EasyTranslationPlatform_Adminhtml_Straker_NewControlle
134
  foreach (Mage::app()->getStores() as $store) {
135
  $helper->saveStoreSetup($store->getId(), '', '', '');
136
  }
 
137
  $session->addSuccess('Straker Settings has been cleared.');
138
 
139
  } catch (Exception $e) {
73
  if($response->access_token && $response->application_key) {
74
  $apiModel->saveAccessToken($response->access_token);
75
  $apiModel->saveAppKey($response->application_key);
76
+ Mage::app()->getCacheInstance()->cleanType('config');
77
  Mage::getSingleton('adminhtml/session')->addSuccess('Registration success.');
78
  }
79
  elseif($response->magentoMessage){
106
  $helper = Mage::helper('strakertranslations_easytranslationplatform');
107
 
108
  if ($helper->saveStoreSetup($data['store'], $data['source'], $data['from'], $data['to']) !== false ){
109
+ Mage::app()->getCacheInstance()->cleanType('config');
110
  $this->_redirect('*/*/', array('store' => $data['store']));
111
  return;
112
  }
136
  foreach (Mage::app()->getStores() as $store) {
137
  $helper->saveStoreSetup($store->getId(), '', '', '');
138
  }
139
+ Mage::app()->getCacheInstance()->cleanType('config');
140
  $session->addSuccess('Straker Settings has been cleared.');
141
 
142
  } catch (Exception $e) {
app/code/community/StrakerTranslations/EasyTranslationPlatform/etc/config.xml CHANGED
@@ -2,7 +2,7 @@
2
  <config>
3
  <modules>
4
  <StrakerTranslations_EasyTranslationPlatform>
5
- <version>1.2.0</version>
6
  </StrakerTranslations_EasyTranslationPlatform>
7
  </modules>
8
  <global>
2
  <config>
3
  <modules>
4
  <StrakerTranslations_EasyTranslationPlatform>
5
+ <version>1.2.1</version>
6
  </StrakerTranslations_EasyTranslationPlatform>
7
  </modules>
8
  <global>
app/design/adminhtml/default/straker/template/straker/new/attribute/massaction.phtml CHANGED
@@ -194,7 +194,12 @@
194
 
195
  $$('.massaction-checkbox').each(function(element) {
196
  element.observe('click', function(e){
197
- if( typeof(e.target.up('tr').down('.checkbox-option')) !== 'undefined' && !e.target.up('tr').down('.checkbox-option').checked){
 
 
 
 
 
198
  e.target.up('tr').down('.checkbox-option').click();
199
  }
200
  });
@@ -202,7 +207,7 @@
202
 
203
  $$('.checkbox-option').each(function(element) {
204
  element.observe('click', function(e){
205
- if(!e.target.up('tr').down('.massaction-checkbox').checked){
206
  e.target.up('tr').down('.massaction-checkbox').click();
207
  }
208
  });
194
 
195
  $$('.massaction-checkbox').each(function(element) {
196
  element.observe('click', function(e){
197
+ if( typeof(e.target.up('tr').down('.checkbox-option')) !== 'undefined' &&
198
+ (
199
+ (e.target.checked && !e.target.up('tr').down('.checkbox-option').checked)||
200
+ (!e.target.checked && e.target.up('tr').down('.checkbox-option').checked)
201
+ )
202
+ ) {
203
  e.target.up('tr').down('.checkbox-option').click();
204
  }
205
  });
207
 
208
  $$('.checkbox-option').each(function(element) {
209
  element.observe('click', function(e){
210
+ if(e.target.checked && !e.target.up('tr').down('.massaction-checkbox').checked){
211
  e.target.up('tr').down('.massaction-checkbox').click();
212
  }
213
  });
app/design/adminhtml/default/straker/template/straker/new/category/tree.phtml CHANGED
@@ -70,6 +70,9 @@
70
  });
71
  } else {
72
  categoryRemove(node.id);
 
 
 
73
  }
74
  varienElementMethods.setHasChanges(node.getUI().checkbox);
75
  }, tree);
70
  });
71
  } else {
72
  categoryRemove(node.id);
73
+ node.childNodes.each(function(c){
74
+ c.getUI().check(0);
75
+ });
76
  }
77
  varienElementMethods.setHasChanges(node.getUI().checkbox);
78
  }, tree);
package.xml CHANGED
@@ -1,7 +1,7 @@
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>straker-translations-easy-translation-platform</name>
4
- <version>1.2.0</version>
5
  <stability>stable</stability>
6
  <license uri="http://opensource.org/licenses/osl-3.0.php">OSL</license>
7
  <channel>community</channel>
@@ -10,9 +10,9 @@
10
  <description>Total automation of the translation process, simple installation and setup, quality human translation at cost-effective rates, scalable to more than 80 languages and 1000s of projects and powerful dashboard reporting.</description>
11
  <notes>Initial Stable release</notes>
12
  <authors><author><name>Chris </name><user>Straker_support</user><email>extensions@strakertranslations.com</email></author></authors>
13
- <date>2016-03-02</date>
14
- <time>12:46:12</time>
15
- <contents><target name="magecommunity"><dir name="StrakerTranslations"><dir name="EasyTranslationPlatform"><dir name="Block"><dir name="Adminhtml"><dir name="Job"><dir name="Attribute"><file name="Grid.php" hash="58111da5ce029ff247dc84d0ced569fe"/></dir><file name="Attribute.php" hash="c355f64a030766afcf646b411035f85f"/><dir name="Category"><file name="Grid.php" hash="1ae3bfd56e78e76ba9d48eac508b06bd"/></dir><file name="Category.php" hash="f2c9c52e51b2112f32065beee4c3cafe"/><file name="Grid.php" hash="8872f97732a139ace260973041dfca5a"/><dir name="Product"><file name="Grid.php" hash="3f7ba41da65f9d86e9a103a5050c6a18"/></dir><file name="Product.php" hash="85f95b9ffd2a3f80fb62ad37b3cf11b5"/></dir><file name="Job.php" hash="bf5ad4cd596a3a93a54447ee112c0a23"/><dir name="New"><dir name="Attribute"><dir name="Confirm"><file name="Grid.php" hash="5ab113bb0a3e42ceef939b1b52c36876"/></dir><file name="Confirm.php" hash="d7ed18d35d0df6b899b402beb0800caa"/><file name="Grid.php" hash="77a95f55bcaa1a4e74224e9a8d162b2c"/></dir><file name="Attribute.php" hash="31f61557f7c69d8b90521e60bbb79898"/><dir name="Category"><file name="Attribute.php" hash="b6698a36ee449853edff1815fca6a56f"/><dir name="Confirm"><file name="Grid.php" hash="7914b3ad7b8397623ed6475bb3c6310b"/></dir><file name="Confirm.php" hash="b710371dceb26866857a62f9d19425e7"/><file name="Tree.php" hash="b405b4bf4969812e13d63d752cd89c23"/></dir><dir name="Products"><file name="Attribute.php" hash="4aab6c02b883d138205db19c021dba1f"/><dir name="Confirm"><file name="Grid.php" hash="e35a967bf2e3d9882889a67d7de26e09"/></dir><file name="Confirm.php" hash="d4dddb499ff29d646fcd48246666126a"/><file name="Grid.php" hash="6f7bd418b0d7dc3c30fd2440cdce5143"/></dir><file name="Products.php" hash="cd0c2de765d91c4c7a82cc74bb1797c9"/><file name="Register.php" hash="7f43aee445980708a6cb8510eec21e78"/><file name="Selectstore.php" hash="42553d67a4e14ca8f754ea096ddf9cf6"/><file name="Setupstore.php" hash="bc1ca941654f47f763d0e7605fc7b050"/><file name="Type.php" hash="9552bdb41b0dd5acd20f4e5c5928393a"/></dir><dir name="System"><dir name="Config"><dir name="Form"><file name="Backupbutton.php" hash="8bfae419ddceed0553db1f5dc5322356"/><file name="Button.php" hash="eb5d2544ba93cbcd09e534dc5b81bbc1"/><file name="Restorebutton.php" hash="e98058e6769f5308fa9f48fa19a22704"/><file name="Store.php" hash="5b98d4711b04acbb60d1b7c17405a4a6"/></dir></dir></dir><dir name="Template"><dir name="Grid"><dir name="Renderer"><file name="Action.php" hash="084ee85e3779a0d202594dd3212849d0"/><file name="AttributeOriginalLabel.php" hash="895fdf18d8993d3268d95541cca1a7a3"/><file name="AttributeOriginalOption.php" hash="3cbe41544c9a32a5742950392973a533"/><file name="AttributeTranslateLabel.php" hash="eef210480eea84f5fd69ded360697acf"/><file name="AttributeTranslateOption.php" hash="2393ee81a57d67de08d38c5e81ea9403"/><file name="Backend.php" hash="6ca085c9a5c50e635f8f4aa41d3314e1"/><file name="ConfirmTranslateLabel.php" hash="cb94414d8fb1b214b5149d947984b0b7"/><file name="ConfirmTranslateOptions.php" hash="76791e48c056e42ba1b71ca0b6ef347e"/><file name="Dispute.php" hash="3bae4a4bbf43890a53a8c2698315430e"/><file name="Frontend.php" hash="f1a0c9a0b98e3e16ec28a46c11f3b71f"/><file name="Path.php" hash="5d9e268bde77a5e1d6d435a48d9f60b7"/><file name="Quote.php" hash="728f3e53af9619760a3921993a823ca6"/><file name="Refresh.php" hash="28db5556c4dad64f4d3aa808758673dd"/><file name="Selected.php" hash="88f58ed6edb419d1701a6f6a4955d881"/><file name="Status.php" hash="5a2f7bce9d4a07d342a69d5e7b454ce3"/><file name="TranslateOptions.php" hash="00f1c42c2205f76db4322fa0dbd686f6"/><file name="Translated.php" hash="cda1f5c402ed086974b76ee427c2a23a"/><file name="Update.php" hash="43a114983b2c00af3432e664512b1704"/><file name="Version.php" hash="908c1697bd48848a2ebf00cd38aa8dc1"/></dir></dir></dir></dir></dir><dir name="Helper"><file name="Data.php" hash="be98f30a9ea8975f97f0996cd9a9a932"/></dir><dir name="Model"><file name="Actionlog.php" hash="bd8a61e14712e32937e0622376b07ae7"/><file name="Api.php" hash="28967043b3073fb37fc3cbdc69c3bd99"/><dir name="Attribute"><file name="Translate.php" hash="6ab35279fc74e807e433776d14155a55"/></dir><dir name="Category"><file name="Attributes.php" hash="31639770ebe8f2aa4b320d686786f716"/><file name="Translate.php" hash="63888c2d229d1cc860b2d3555470f597"/></dir><dir name="Job"><file name="Attribute.php" hash="6bc9221934346093ec6054704625808e"/><file name="Category.php" hash="37079e7131a4d10a9577afb499c6d7b6"/><file name="Product.php" hash="9f02ce34f909df6dd26c3414356ad565"/><file name="Status.php" hash="64c766deaf33bd0460c739f04544f8db"/><file name="Type.php" hash="c5010524e83e0c3c56595bcd72bba97d"/></dir><file name="Job.php" hash="ed17c0c4f6e274d8f04807a09e259ec0"/><dir name="Product"><file name="Attributes.php" hash="f8539bb8a73a59017b811bea7d99835b"/><file name="Translate.php" hash="ebe6df5219d4ca3ee71290bf3e1de0da"/></dir><dir name="Resource"><dir name="Actionlog"><file name="Collection.php" hash="a60fb59aa09d55b5e5d4f41d58e20e6f"/></dir><file name="Actionlog.php" hash="5742408ecac5dce23b3492d118d6ca41"/><dir name="Attribute"><dir name="Translate"><file name="Collection.php" hash="dc15902d152cdc907123bbd847bc124a"/></dir><file name="Translate.php" hash="f619af9fb3bb71e346d89a314c1d0a2c"/></dir><dir name="Category"><dir name="Attributes"><file name="Collection.php" hash="d0d1bdb74c8b6d3ebcd00e986bbda5ac"/></dir><file name="Attributes.php" hash="438aefd7fd4768a18dea3835e592d020"/><dir name="Translate"><file name="Collection.php" hash="6f9b263579ba9c988dbf476a9a8d5254"/></dir><file name="Translate.php" hash="3493c3a5f4dff5278e61cf758b58f09e"/></dir><dir name="Job"><dir name="Attribute"><file name="Collection.php" hash="e336ec26c414bdb050ae87d70487349a"/></dir><file name="Attribute.php" hash="6c096169a8867d54b37997312753a94e"/><dir name="Category"><file name="Collection.php" hash="6e29696c703503c821fb4fbeb04f7169"/></dir><file name="Category.php" hash="5cb332770a4600be8d82d5440a42a2a6"/><file name="Collection.php" hash="26b821d388a969c048418254c702767d"/><dir name="Product"><file name="Collection.php" hash="0b333a2caf8977dbc9a8e71e58c54de6"/></dir><file name="Product.php" hash="8b0dfa9ce28bc4292021055f9253ea5d"/><dir name="Status"><file name="Collection.php" hash="84dd6c9d32fda84ea11102692b5359a9"/></dir><file name="Status.php" hash="5e29fbf619c9b1278273266fb2ce2afa"/><dir name="Type"><file name="Collection.php" hash="625b61447aee152376c19f36a347d5d8"/></dir><file name="Type.php" hash="36b8ec250e3bc2377c1fb755459fad95"/></dir><file name="Job.php" hash="e400eedb5cfc3f742e58d567412ae1a0"/><dir name="Product"><dir name="Attributes"><file name="Collection.php" hash="3f479577ce23ba9f264125439c1d1099"/></dir><file name="Attributes.php" hash="93c962dc76384771d9139574796c16b5"/><dir name="Translate"><file name="Collection.php" hash="4dc7e3a0a44edd6acea4b8cf45b40d05"/></dir><file name="Translate.php" hash="f88f7ea6f6e1dfdc55ef648ddea2ca38"/></dir></dir></dir><dir name="controllers"><dir name="Adminhtml"><dir name="Straker"><file name="AttributeController.php" hash="bf7877e6947fefbe1c0dfb6f8c8f8e24"/><file name="CategoryController.php" hash="58081c3b019ea91c05b05970de2a501a"/><file name="JobController.php" hash="1e80dd802e2dd70f246ca4155bc05e14"/><file name="NewController.php" hash="e0f9dea7319a788ae45f7df70e4ccf9f"/><file name="ProductController.php" hash="b0e545070c393d56bf6aed62b236c13d"/></dir></dir><file name="CallbackController.php" hash="c9abd6304f6f071940735a47ab658633"/></dir><dir name="etc"><file name="adminhtml.xml" hash="802ab54b889201efd9318ec11f220f18"/><file name="config.xml" hash="4cedfb3da05c201fb8b139e053797d32"/><file name="system.xml" hash="e047c334b01ea71b3108c02c1c5e7ae5"/></dir><dir name="sql"><dir name="strakertranslations_easytranslationplatform_setup"><file name="mysql4-install-1.0.0.php" hash="bb9810e99580d4a20431cd0cc22f5532"/><file name="mysql4-upgrade-1.0.0-1.1.0.php" hash="eb74b0ba3f3572ffc6dde4ace8d8640c"/><file name="mysql4-upgrade-1.1.0-1.2.0.php" hash="77cd0f3e3f7303b8492504dcb485e268"/></dir></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="straker"><dir name="layout"><file name="straker.xml" hash="dff9e3ff88cf6494676f1be6f9297075"/></dir><dir name="template"><dir name="straker"><dir name="job"><dir name="attribute"><file name="massaction.phtml" hash="1c3b4ce443f6e4086bcc362d43f75354"/></dir><file name="attribute.phtml" hash="e908bcbf0ad1435a35d6009f599c4f77"/><dir name="category"><file name="massaction.phtml" hash="1c3b4ce443f6e4086bcc362d43f75354"/></dir><file name="category.phtml" hash="e908bcbf0ad1435a35d6009f599c4f77"/><dir name="product"><file name="massaction.phtml" hash="1c3b4ce443f6e4086bcc362d43f75354"/></dir><file name="product.phtml" hash="e908bcbf0ad1435a35d6009f599c4f77"/></dir><file name="job.phtml" hash="63c7a5b66b969635ee9996638878d63c"/><dir name="new"><dir name="attribute"><file name="confirm.phtml" hash="c3ac09c8c8fad9370e3ff5d123b8da43"/><file name="massaction.phtml" hash="01ebe5a6214dc13fddec28aaa9dd69bb"/></dir><file name="attribute.phtml" hash="9f327fe0551b9d39e455b361d662ce08"/><dir name="category"><file name="attributes.phtml" hash="c92f98e8397ae9143c17c87e2e468758"/><file name="confirm.phtml" hash="67cd87045de78b34855197267e63aff7"/><file name="tree.phtml" hash="6cdd2bccd0288ced068218624031ddcc"/></dir><file name="confirm.phtml" hash="72552d8f56335eb644a4c0ffe314f12b"/><dir name="products"><file name="attributes.phtml" hash="7e5328f2995d48b9fae436dc7dd7ab34"/><file name="confirm.phtml" hash="134fdca9aed015d6ab28778d523c01d6"/><file name="massaction.phtml" hash="1c3b4ce443f6e4086bcc362d43f75354"/></dir><file name="products.phtml" hash="2930c175307b3178a7b8a6205981cdf2"/><file name="register.phtml" hash="13da4e89dafcdf0508343905121a6ed3"/><file name="selectstore.phtml" hash="59b46141938afec500ce3acf36da5427"/><file name="setupstore.phtml" hash="c3dab5a53f6007ac9608721bd75761bf"/><file name="type.phtml" hash="ab8bd7f6b5945af2e1dd0a9b19f0bfee"/></dir><dir name="system"><dir name="config"><file name="button.phtml" hash="9725dd1eea9e0a5c6ff9a34a31d5e433"/><file name="store.phtml" hash="accefd80ff19bf7c917c923b2aed961c"/></dir></dir></dir></dir></dir></dir></dir></target><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="straker"><dir name="css"><file name="straker.css" hash="57016d58d283fb99ce355e3787c4569f"/><file name="straker.less" hash="c7da66380b98c31653054fd2f27c03c1"/></dir><dir name="images"><dir name="default"><file name="bottom_left.gif" hash="fb99ffa815a8648f95f42698fe5dfaa1"/><file name="bottom_mid.gif" hash="49b9ca7025562ea7f070a9111282364b"/><file name="bottom_right.gif" hash="e46768f632765cd86c5fe5d0166dcf2c"/><file name="bottom_right_resize.gif" hash="1b35a4ec3b734dfe37e31ba87bcc7d99"/><file name="center_left.gif" hash="bd567580b4ee16a7a2734057cfbbe219"/><file name="center_right.gif" hash="eef184d5d89d1710313581a2ccf408e8"/><file name="clear.gif" hash="7af1206eeb0e7834a75e69d70676060d"/><file name="close.gif" hash="8a08f243c37a8e25a88d4ac135b2f07d"/><file name="inspect.gif" hash="aa2a0961067aad5c54b8634919af863b"/><file name="maximize.gif" hash="e73cd71c4979ebeadeb9e27d40a9e8fb"/><file name="minimize.gif" hash="2d2f4b1bd0506f342425f80ab76c49a3"/><file name="overlay.png" hash="536d40e87cda0c7ae7b11f1721aa52d0"/><file name="resize.gif" hash="320f534b5d444b39701e0b679529e779"/><file name="sizer.gif" hash="1b35a4ec3b734dfe37e31ba87bcc7d99"/><file name="top_left.gif" hash="9c5e5920bfc189a45cc618099af93aa8"/><file name="top_mid.gif" hash="a12ff2b944025ad2d127d033dae5e9e1"/><file name="top_right.gif" hash="0cf1ec5b93f8ac8fcce0e2f72cf7f45e"/></dir><file name="magento-banner.jpg" hash="b3105fd2dd00004ab903db4fbb81b61e"/><file name="refresh_32.png" hash="96e793bcbcc2dc48768b8e124beea378"/><file name="straker-translations-logo.png" hash="7cb5e29f562420142f918147d95ed232"/></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="StrakerTranslations_EasyTranslationPlatform.xml" hash="eb61fdaac7559a75e39bc01206165d0c"/></dir></target><target name="mage"><dir name="js"><dir name="straker"><file name="translations.js" hash="af7812040012a3ea23fb2782ca293884"/></dir></dir></target></contents>
16
  <compatible/>
17
  <dependencies><required><php><min>5.1.0</min><max>6.0.0</max></php></required></dependencies>
18
  </package>
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>straker-translations-easy-translation-platform</name>
4
+ <version>1.2.1</version>
5
  <stability>stable</stability>
6
  <license uri="http://opensource.org/licenses/osl-3.0.php">OSL</license>
7
  <channel>community</channel>
10
  <description>Total automation of the translation process, simple installation and setup, quality human translation at cost-effective rates, scalable to more than 80 languages and 1000s of projects and powerful dashboard reporting.</description>
11
  <notes>Initial Stable release</notes>
12
  <authors><author><name>Chris </name><user>Straker_support</user><email>extensions@strakertranslations.com</email></author></authors>
13
+ <date>2016-03-17</date>
14
+ <time>01:12:06</time>
15
+ <contents><target name="magecommunity"><dir name="StrakerTranslations"><dir name="EasyTranslationPlatform"><dir name="Block"><dir name="Adminhtml"><dir name="Job"><dir name="Attribute"><file name="Grid.php" hash="58111da5ce029ff247dc84d0ced569fe"/></dir><file name="Attribute.php" hash="c355f64a030766afcf646b411035f85f"/><dir name="Category"><file name="Grid.php" hash="1ae3bfd56e78e76ba9d48eac508b06bd"/></dir><file name="Category.php" hash="f2c9c52e51b2112f32065beee4c3cafe"/><file name="Grid.php" hash="8872f97732a139ace260973041dfca5a"/><dir name="Product"><file name="Grid.php" hash="3f7ba41da65f9d86e9a103a5050c6a18"/></dir><file name="Product.php" hash="85f95b9ffd2a3f80fb62ad37b3cf11b5"/></dir><file name="Job.php" hash="bf5ad4cd596a3a93a54447ee112c0a23"/><dir name="New"><dir name="Attribute"><dir name="Confirm"><file name="Grid.php" hash="5ab113bb0a3e42ceef939b1b52c36876"/></dir><file name="Confirm.php" hash="d7ed18d35d0df6b899b402beb0800caa"/><file name="Grid.php" hash="77a95f55bcaa1a4e74224e9a8d162b2c"/></dir><file name="Attribute.php" hash="31f61557f7c69d8b90521e60bbb79898"/><dir name="Category"><file name="Attribute.php" hash="b6698a36ee449853edff1815fca6a56f"/><dir name="Confirm"><file name="Grid.php" hash="7914b3ad7b8397623ed6475bb3c6310b"/></dir><file name="Confirm.php" hash="b710371dceb26866857a62f9d19425e7"/><file name="Tree.php" hash="b405b4bf4969812e13d63d752cd89c23"/></dir><dir name="Products"><file name="Attribute.php" hash="4aab6c02b883d138205db19c021dba1f"/><dir name="Confirm"><file name="Grid.php" hash="e35a967bf2e3d9882889a67d7de26e09"/></dir><file name="Confirm.php" hash="d4dddb499ff29d646fcd48246666126a"/><file name="Grid.php" hash="6f7bd418b0d7dc3c30fd2440cdce5143"/></dir><file name="Products.php" hash="cd0c2de765d91c4c7a82cc74bb1797c9"/><file name="Register.php" hash="7f43aee445980708a6cb8510eec21e78"/><file name="Selectstore.php" hash="42553d67a4e14ca8f754ea096ddf9cf6"/><file name="Setupstore.php" hash="bc1ca941654f47f763d0e7605fc7b050"/><file name="Type.php" hash="9552bdb41b0dd5acd20f4e5c5928393a"/></dir><dir name="System"><dir name="Config"><dir name="Form"><file name="Backupbutton.php" hash="8bfae419ddceed0553db1f5dc5322356"/><file name="Button.php" hash="eb5d2544ba93cbcd09e534dc5b81bbc1"/><file name="Restorebutton.php" hash="e98058e6769f5308fa9f48fa19a22704"/><file name="Store.php" hash="5b98d4711b04acbb60d1b7c17405a4a6"/></dir></dir></dir><dir name="Template"><dir name="Grid"><dir name="Renderer"><file name="Action.php" hash="084ee85e3779a0d202594dd3212849d0"/><file name="AttributeOriginalLabel.php" hash="895fdf18d8993d3268d95541cca1a7a3"/><file name="AttributeOriginalOption.php" hash="3cbe41544c9a32a5742950392973a533"/><file name="AttributeTranslateLabel.php" hash="eef210480eea84f5fd69ded360697acf"/><file name="AttributeTranslateOption.php" hash="2393ee81a57d67de08d38c5e81ea9403"/><file name="Backend.php" hash="6ca085c9a5c50e635f8f4aa41d3314e1"/><file name="ConfirmTranslateLabel.php" hash="cb94414d8fb1b214b5149d947984b0b7"/><file name="ConfirmTranslateOptions.php" hash="76791e48c056e42ba1b71ca0b6ef347e"/><file name="Dispute.php" hash="3bae4a4bbf43890a53a8c2698315430e"/><file name="Frontend.php" hash="f1a0c9a0b98e3e16ec28a46c11f3b71f"/><file name="Path.php" hash="5d9e268bde77a5e1d6d435a48d9f60b7"/><file name="Quote.php" hash="728f3e53af9619760a3921993a823ca6"/><file name="Refresh.php" hash="28db5556c4dad64f4d3aa808758673dd"/><file name="Selected.php" hash="88f58ed6edb419d1701a6f6a4955d881"/><file name="Status.php" hash="40059f5e24d61fdfa13e46c1bf6c9351"/><file name="TranslateOptions.php" hash="00f1c42c2205f76db4322fa0dbd686f6"/><file name="Translated.php" hash="cda1f5c402ed086974b76ee427c2a23a"/><file name="Update.php" hash="43a114983b2c00af3432e664512b1704"/><file name="Version.php" hash="908c1697bd48848a2ebf00cd38aa8dc1"/></dir></dir></dir></dir></dir><dir name="Helper"><file name="Data.php" hash="be98f30a9ea8975f97f0996cd9a9a932"/></dir><dir name="Model"><file name="Actionlog.php" hash="bd8a61e14712e32937e0622376b07ae7"/><file name="Api.php" hash="28967043b3073fb37fc3cbdc69c3bd99"/><dir name="Attribute"><file name="Translate.php" hash="6ab35279fc74e807e433776d14155a55"/></dir><dir name="Category"><file name="Attributes.php" hash="31639770ebe8f2aa4b320d686786f716"/><file name="Translate.php" hash="63888c2d229d1cc860b2d3555470f597"/></dir><dir name="Job"><file name="Attribute.php" hash="6bc9221934346093ec6054704625808e"/><file name="Category.php" hash="37079e7131a4d10a9577afb499c6d7b6"/><file name="Product.php" hash="9f02ce34f909df6dd26c3414356ad565"/><file name="Status.php" hash="64c766deaf33bd0460c739f04544f8db"/><file name="Type.php" hash="c5010524e83e0c3c56595bcd72bba97d"/></dir><file name="Job.php" hash="8a8d9352144d663895d697bc581d208d"/><dir name="Product"><file name="Attributes.php" hash="f8539bb8a73a59017b811bea7d99835b"/><file name="Translate.php" hash="ebe6df5219d4ca3ee71290bf3e1de0da"/></dir><dir name="Resource"><dir name="Actionlog"><file name="Collection.php" hash="a60fb59aa09d55b5e5d4f41d58e20e6f"/></dir><file name="Actionlog.php" hash="5742408ecac5dce23b3492d118d6ca41"/><dir name="Attribute"><dir name="Translate"><file name="Collection.php" hash="dc15902d152cdc907123bbd847bc124a"/></dir><file name="Translate.php" hash="f619af9fb3bb71e346d89a314c1d0a2c"/></dir><dir name="Category"><dir name="Attributes"><file name="Collection.php" hash="d0d1bdb74c8b6d3ebcd00e986bbda5ac"/></dir><file name="Attributes.php" hash="438aefd7fd4768a18dea3835e592d020"/><dir name="Translate"><file name="Collection.php" hash="6f9b263579ba9c988dbf476a9a8d5254"/></dir><file name="Translate.php" hash="3493c3a5f4dff5278e61cf758b58f09e"/></dir><dir name="Job"><dir name="Attribute"><file name="Collection.php" hash="e336ec26c414bdb050ae87d70487349a"/></dir><file name="Attribute.php" hash="6c096169a8867d54b37997312753a94e"/><dir name="Category"><file name="Collection.php" hash="6e29696c703503c821fb4fbeb04f7169"/></dir><file name="Category.php" hash="5cb332770a4600be8d82d5440a42a2a6"/><file name="Collection.php" hash="26b821d388a969c048418254c702767d"/><dir name="Product"><file name="Collection.php" hash="0b333a2caf8977dbc9a8e71e58c54de6"/></dir><file name="Product.php" hash="8b0dfa9ce28bc4292021055f9253ea5d"/><dir name="Status"><file name="Collection.php" hash="84dd6c9d32fda84ea11102692b5359a9"/></dir><file name="Status.php" hash="5e29fbf619c9b1278273266fb2ce2afa"/><dir name="Type"><file name="Collection.php" hash="625b61447aee152376c19f36a347d5d8"/></dir><file name="Type.php" hash="36b8ec250e3bc2377c1fb755459fad95"/></dir><file name="Job.php" hash="e400eedb5cfc3f742e58d567412ae1a0"/><dir name="Product"><dir name="Attributes"><file name="Collection.php" hash="3f479577ce23ba9f264125439c1d1099"/></dir><file name="Attributes.php" hash="93c962dc76384771d9139574796c16b5"/><dir name="Translate"><file name="Collection.php" hash="4dc7e3a0a44edd6acea4b8cf45b40d05"/></dir><file name="Translate.php" hash="f88f7ea6f6e1dfdc55ef648ddea2ca38"/></dir></dir></dir><dir name="controllers"><dir name="Adminhtml"><dir name="Straker"><file name="AttributeController.php" hash="bf7877e6947fefbe1c0dfb6f8c8f8e24"/><file name="CategoryController.php" hash="58081c3b019ea91c05b05970de2a501a"/><file name="JobController.php" hash="babcd1fc9edc21a9f38b2b6d84f5b3d7"/><file name="NewController.php" hash="f6cb7c1cef8ee0fc6b103164233c125a"/><file name="ProductController.php" hash="b0e545070c393d56bf6aed62b236c13d"/></dir></dir><file name="CallbackController.php" hash="c9abd6304f6f071940735a47ab658633"/></dir><dir name="etc"><file name="adminhtml.xml" hash="802ab54b889201efd9318ec11f220f18"/><file name="config.xml" hash="a63d91b90a7a4c9bfc695795bd0f7a45"/><file name="system.xml" hash="e047c334b01ea71b3108c02c1c5e7ae5"/></dir><dir name="sql"><dir name="strakertranslations_easytranslationplatform_setup"><file name="mysql4-install-1.0.0.php" hash="bb9810e99580d4a20431cd0cc22f5532"/><file name="mysql4-upgrade-1.0.0-1.1.0.php" hash="eb74b0ba3f3572ffc6dde4ace8d8640c"/><file name="mysql4-upgrade-1.1.0-1.2.0.php" hash="77cd0f3e3f7303b8492504dcb485e268"/></dir></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="straker"><dir name="layout"><file name="straker.xml" hash="dff9e3ff88cf6494676f1be6f9297075"/></dir><dir name="template"><dir name="straker"><dir name="job"><dir name="attribute"><file name="massaction.phtml" hash="1c3b4ce443f6e4086bcc362d43f75354"/></dir><file name="attribute.phtml" hash="e908bcbf0ad1435a35d6009f599c4f77"/><dir name="category"><file name="massaction.phtml" hash="1c3b4ce443f6e4086bcc362d43f75354"/></dir><file name="category.phtml" hash="e908bcbf0ad1435a35d6009f599c4f77"/><dir name="product"><file name="massaction.phtml" hash="1c3b4ce443f6e4086bcc362d43f75354"/></dir><file name="product.phtml" hash="e908bcbf0ad1435a35d6009f599c4f77"/></dir><file name="job.phtml" hash="63c7a5b66b969635ee9996638878d63c"/><dir name="new"><dir name="attribute"><file name="confirm.phtml" hash="c3ac09c8c8fad9370e3ff5d123b8da43"/><file name="massaction.phtml" hash="9dcf11014c7a598128a64c048e0108cf"/></dir><file name="attribute.phtml" hash="9f327fe0551b9d39e455b361d662ce08"/><dir name="category"><file name="attributes.phtml" hash="c92f98e8397ae9143c17c87e2e468758"/><file name="confirm.phtml" hash="67cd87045de78b34855197267e63aff7"/><file name="tree.phtml" hash="4599d5840d9bdf21cf5c057c6112dfcc"/></dir><file name="confirm.phtml" hash="72552d8f56335eb644a4c0ffe314f12b"/><dir name="products"><file name="attributes.phtml" hash="7e5328f2995d48b9fae436dc7dd7ab34"/><file name="confirm.phtml" hash="134fdca9aed015d6ab28778d523c01d6"/><file name="massaction.phtml" hash="1c3b4ce443f6e4086bcc362d43f75354"/></dir><file name="products.phtml" hash="2930c175307b3178a7b8a6205981cdf2"/><file name="register.phtml" hash="13da4e89dafcdf0508343905121a6ed3"/><file name="selectstore.phtml" hash="59b46141938afec500ce3acf36da5427"/><file name="setupstore.phtml" hash="c3dab5a53f6007ac9608721bd75761bf"/><file name="type.phtml" hash="ab8bd7f6b5945af2e1dd0a9b19f0bfee"/></dir><dir name="system"><dir name="config"><file name="button.phtml" hash="9725dd1eea9e0a5c6ff9a34a31d5e433"/><file name="store.phtml" hash="accefd80ff19bf7c917c923b2aed961c"/></dir></dir></dir></dir></dir></dir></dir></target><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="straker"><dir name="css"><file name="straker.css" hash="57016d58d283fb99ce355e3787c4569f"/><file name="straker.less" hash="c7da66380b98c31653054fd2f27c03c1"/></dir><dir name="images"><dir name="default"><file name="bottom_left.gif" hash="fb99ffa815a8648f95f42698fe5dfaa1"/><file name="bottom_mid.gif" hash="49b9ca7025562ea7f070a9111282364b"/><file name="bottom_right.gif" hash="e46768f632765cd86c5fe5d0166dcf2c"/><file name="bottom_right_resize.gif" hash="1b35a4ec3b734dfe37e31ba87bcc7d99"/><file name="center_left.gif" hash="bd567580b4ee16a7a2734057cfbbe219"/><file name="center_right.gif" hash="eef184d5d89d1710313581a2ccf408e8"/><file name="clear.gif" hash="7af1206eeb0e7834a75e69d70676060d"/><file name="close.gif" hash="8a08f243c37a8e25a88d4ac135b2f07d"/><file name="inspect.gif" hash="aa2a0961067aad5c54b8634919af863b"/><file name="maximize.gif" hash="e73cd71c4979ebeadeb9e27d40a9e8fb"/><file name="minimize.gif" hash="2d2f4b1bd0506f342425f80ab76c49a3"/><file name="overlay.png" hash="536d40e87cda0c7ae7b11f1721aa52d0"/><file name="resize.gif" hash="320f534b5d444b39701e0b679529e779"/><file name="sizer.gif" hash="1b35a4ec3b734dfe37e31ba87bcc7d99"/><file name="top_left.gif" hash="9c5e5920bfc189a45cc618099af93aa8"/><file name="top_mid.gif" hash="a12ff2b944025ad2d127d033dae5e9e1"/><file name="top_right.gif" hash="0cf1ec5b93f8ac8fcce0e2f72cf7f45e"/></dir><file name="magento-banner.jpg" hash="b3105fd2dd00004ab903db4fbb81b61e"/><file name="refresh_32.png" hash="96e793bcbcc2dc48768b8e124beea378"/><file name="straker-translations-logo.png" hash="7cb5e29f562420142f918147d95ed232"/></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="StrakerTranslations_EasyTranslationPlatform.xml" hash="eb61fdaac7559a75e39bc01206165d0c"/></dir></target><target name="mage"><dir name="js"><dir name="straker"><file name="translations.js" hash="af7812040012a3ea23fb2782ca293884"/></dir></dir></target></contents>
16
  <compatible/>
17
  <dependencies><required><php><min>5.1.0</min><max>6.0.0</max></php></required></dependencies>
18
  </package>