Blame view

protected/components/MissingTranslationEventHandler.php 1.18 KB
a1684257   Administrator   first commit
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
  <?php
  
  
  class MissingTranslationEventHandler
  {
      /**
       * @param CMissingTranslationEvent $event
       * @return void
       */
      public function missingTranslation($event)
      {
  
          $model = SourceMessage::model()->find(
              'category = :category and message COLLATE utf8_bin like :message COLLATE utf8_bin',  //case sensitive like
              array(
                  ':category' => $event->category,
                  ':message' => $event->message,
              ));
  
  
          if ($model === null) {
              $model = new SourceMessage();
              $model->category = $event->category;
              $model->message = $event->message;
              $model->save();
  // migration from old message source
  
  //        /**
  //         * @var CPhpMessageSource $oldOne
  //         */
  //        $oldOne = Yii::app()->oldOne;
  //        foreach (Yii::app()->params['languages'] as $lang) {
  //            $tr = new Message();
  //            $tr->id = $model->id;
  //            $tr->language = $lang;
  //            $tr->translation = $oldOne->translate($event->category, $event->message, $lang);
  //            if ($tr->translation != $event->message)
  //                $tr->save();
  //        }
          }
  
      }
  }