Browse Source

Moved db access to model.

Martin Edenhofer 11 years ago
parent
commit
0bf90f17b6
2 changed files with 25 additions and 23 deletions
  1. 2 23
      app/controllers/translations_controller.rb
  2. 23 0
      app/models/translation.rb

+ 2 - 23
app/controllers/translations_controller.rb

@@ -5,28 +5,7 @@ class TranslationsController < ApplicationController
 
   # GET /translations/:lang
   def load
-    translations = Translation.where( :locale => params[:locale] )
-
-    list = []
-    translations.each { |item|
-      data = [
-        item.id,
-        item.source,
-        item.target,
-      ]
-      list.push data
-    }
-
-    timestamp_map_default = 'yyyy-mm-dd HH:MM'
-    timestamp_map = {
-      :de => 'dd.mm.yyyy HH:MM',
-    }
-    timestamp = timestamp_map[ params[:locale].to_sym ] || timestamp_map_default
-
-    render :json => {
-      :list            => list,
-      :timestampFormat => timestamp,
-    }
+    render :json => Translation.list( params[:locale] )
   end
 
   # GET /translations
@@ -53,4 +32,4 @@ class TranslationsController < ApplicationController
   def destroy
     model_destory_render(Translation, params)
   end
-end
+end

+ 23 - 0
app/models/translation.rb

@@ -3,6 +3,29 @@
 class Translation < ApplicationModel
   before_create :set_initial
 
+  def self.list(locale)
+    translations = Translation.where( :locale => locale )
+    list = []
+    translations.each { |item|
+      data = [
+        item.id,
+        item.source,
+        item.target,
+      ]
+      list.push data
+    }
+
+    timestamp_map_default = 'yyyy-mm-dd HH:MM'
+    timestamp_map = {
+      :de => 'dd.mm.yyyy HH:MM',
+    }
+    timestamp = timestamp_map[ locale.to_sym ] || timestamp_map_default
+    return {
+      :list            => list,
+      :timestampFormat => timestamp,
+    }
+  end
+
   def self.translate(locale, string)
 
     # translate string