OSDN Git Service

add scroll player
[pettanr/pettanr.git] / app / assets / javascripts / manifest / controller / action / base.js.coffee
index a2dfa15..f5d74b7 100644 (file)
@@ -2,13 +2,35 @@ class Manifest.ControllerModule.ActionModule.Base extends ManifestBase.TypeNameA
   \r
   set_default: () ->\r
     super()\r
-    @args.item_name ||= @parent.item_name  # not parent.name. follow singularized name\r
+    @args.item_name ||= Manifest.manifest().singularize(@parent.name)\r
     @args.param_id ||= 'prefix'\r
     \r
   init: () ->\r
     super()\r
+    @action_name = @name\r
+    @alias = @args.alias\r
     @item_name = @args.item_name\r
     @param_id = @args.param_id\r
+    # source manifest of alias manifest\r
+    @original = @args.original\r
+  \r
+  a_arg_names: () ->\r
+    []\r
+  \r
+  b_arg_names: () ->\r
+    ['item_name', 'param_id']\r
+  \r
+  controller: () ->\r
+    @parent\r
+  \r
+  alias_action: () ->\r
+    s = @alias.split('.')\r
+    c = Manifest.manifest().controllers[s[0]]\r
+    c.actions[s[1]]\r
+  \r
+  path_name: () ->\r
+    @parent.name\r
+    #Manifest.manifest().pluralize(@item_name)\r
   \r
   encode_query: (params) ->\r
     q = []\r
@@ -20,9 +42,15 @@ class Manifest.ControllerModule.ActionModule.Base extends ManifestBase.TypeNameA
       ''\r
   \r
   encode_url: (action_name, params) ->\r
-    c = @parent.name\r
-    a = if action_name != 'index'\r
+    controller_name = @path_name()\r
+    c = controller_name\r
+    a = if action_name == 'index' or action_name == 'show' or action_name == 'destroy'\r
+      ''\r
+    else\r
       '/' + action_name\r
+    # f = if params['format']   # json request? so bad. html request as get rest api\r
+    f = if params['format'] == 'prof'\r
+      '.' + params['format']\r
     else\r
       ''\r
     i = if params['id']\r
@@ -32,11 +60,11 @@ class Manifest.ControllerModule.ActionModule.Base extends ManifestBase.TypeNameA
     q = @encode_query(params)\r
     switch @param_id\r
       when 'prefix'\r
-        c + i + a + q\r
+        c + i + a + f + q\r
       when 'suffix'\r
-        c + a + i + q\r
+        c + a + i + f + q\r
       else\r
-        c + a + q\r
+        c + a + f + q\r
   \r
   url: (params) ->\r
     @encode_url(@name, params)\r