\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
''\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
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