- @fire(params)\r
- \r
- hoge: () ->\r
- names = _.map Manifest.manifest().controllers, (controller_manifest, controller_name) ->\r
- c = Pettanr[Pettanr.camelize(controller_name) + 'Controller']\r
- controller = new c\r
- _.map controller_manifest.actions, (action_manifest, action_name) ->\r
- {\r
- event_name: controller_name + '_' + action_name, \r
- controller: controller,\r
- controller_name: controller_name,\r
- action_manifest: action_manifest,\r
- action_name: action_name\r
- }\r
- _this = this\r
- _.each _.flatten(names), (status) ->\r
- _status = status\r
- switch status.action_manifest.type\r
- when 'list'\r
- e = status.event_name\r
- e_f = e + '_format'\r
- _this[e] = (queryString) ->\r
- params = _this.parse_query_string(query_string)\r
- console.log(params)\r
- _status.controller[_status.action_name](params)\r
- c = _status.controller_name\r
- a = _status.action_name\r
- c_a_url = c + '/' + a\r
- _this.route(c_a_url, e)\r
- r = r + '?*queryString'\r
- _this.route(r, _status.event_name)\r
- if _status.action_name == 'index'\r
- r = _status.controller_name + '/'\r
- _this.route(r, _status.event_name)\r
- when 'show'\r
- e = status.event_name\r
- e_f = e + '_format'\r
- _this[e] = (id, query_string) ->\r
- params = _this.parse_query_string(query_string)\r
- t = id.split('.')\r
- if t.length > 1\r
- params['format'] = t[1]\r
- id = t[0]\r
- console.log(id)\r
- console.log(params)\r
- _status.controller[_status.action_name](id, params)\r
- _this[e_f] = (id, format, query_string) ->\r
- params = _this.parse_query_string(query_string)\r
- params['format'] = format\r
- console.log(id)\r
- console.log(params)\r
- _status.controller[_status.action_name](id, params)\r
- c = _status.controller_name\r
- a = _status.action_name\r
- q = '?*query_string'\r
- i = '\/([0-9]+)'\r
- c_id_a_url = c + '/:id/' + a\r
- c_id_a_f_url = c + '/:id/' + a + '.:format'\r
- c_id_a_q_url = c_id_a_url + q\r
- c_id_a_q_url = c_id_a_url + '.:format' + q\r
- _this.route(c_id_a_q_url, e_f)\r
- _this.route(c_id_a_q_url, e)\r
- _this.route(c_id_a_f_url, e_f)\r
- _this.route(c_id_a_url, e)\r
- if a == 'show'\r
- c_id_url = c + '/:id'\r
- c_id_q_url = c_id_url + q\r
- _this.route(c_id_q_url, e)\r
- _this.route(c_id_url, e)\r
+ params\r
+ \r
+ # controller/id/action case\r
+ # ex) scrolls/3/edit\r
+ c_i_a: (controller, id, action, query_string, form) ->\r
+ params = @c_i_a_params(controller, id, action, query_string)\r
+ @trigger('go', params, form)\r
+ \r
+ c_i_a_params: (controller, id, action, query_string) ->\r
+ params = @parse_query_string(query_string)\r
+ params['controller'] = controller\r
+ params['format'] = 'html'\r
+ t = id.split('.')\r
+ if t.length > 1\r
+ params['format'] = t[1]\r
+ id = t[0]\r
+ t = action.split('.')\r
+ if t.length > 1\r
+ params['format'] = t[1]\r
+ action = t[0]\r
+ if Pettanr.is_number(action)\r
+ params['action'] = id\r
+ params['id'] = action\r
+ else\r
+ params['action'] = action\r
+ params['id'] = id\r
+ params\r
+ \r
+ # controller and id case\r
+ # ex) scrolls/3\r
+ c_i: (controller, id, query_string, form) ->\r
+ params = @c_i_params(controller, id, query_string)\r
+ @trigger('go', params, form)\r
+ \r
+ c_i_params: (controller, id, query_string) ->\r
+ params = @parse_query_string(query_string)\r
+ params['controller'] = controller\r
+ params['format'] = 'html'\r
+ t = id.split('.')\r
+ if t.length > 1\r
+ params['format'] = t[1]\r
+ id = t[0]\r
+ if Pettanr.is_number(id)\r
+ params['action'] = 'show'\r
+ params['id'] = id\r
+ else\r
+ if id\r
+ params['action'] = id\r
+ else\r
+ params['action'] = 'index'\r
+ params\r
+ \r
+ # controller only case\r
+ # ex) scrolls\r
+ c: (controller, query_string, form) ->\r
+ params = @c_params(controller, query_string)\r
+ @trigger('go', params, form)\r
+ \r
+ c_params: (controller, query_string) ->\r
+ params = @parse_query_string(query_string)\r
+ params['controller'] = controller\r
+ params['format'] = 'html'\r
+ params['action'] = 'index'\r
+ params\r
+ \r
+ top_a: (action, query_string, form) ->\r
+ params = @users_a_params(action, query_string)\r
+ @trigger('go', params, form)\r
+ \r
+ top_a_params: (action, query_string) ->\r
+ params = @parse_query_string(query_string)\r
+ params['controller'] = 'top'\r
+ params['format'] = 'html'\r
+ params['action'] = action\r
+ params\r
+ \r
+ home_a: (action, query_string, form) ->\r
+ params = @home_a_params(action, query_string)\r
+ @trigger('go', params, form)\r
+ \r
+ home_a_params: (action, query_string) ->\r
+ params = @parse_query_string(query_string)\r
+ params['controller'] = 'home'\r
+ params['format'] = 'html'\r
+ params['action'] = action\r
+ params\r
+ \r
+ user_sessions_a: (action, query_string, form) ->\r
+ params = @user_sessions_a_params(action, query_string)\r
+ @trigger('go', params, form)\r
+ \r
+ user_sessions_a_params: (action, query_string) ->\r
+ params = @parse_query_string(query_string)\r
+ params['controller'] = 'user_sessions'\r
+ params['format'] = 'html'\r
+ params['action'] = action\r
+ params\r
+ \r
+ users_a: (action, query_string, form) ->\r
+ params = @users_a_params(action, query_string)\r
+ @trigger('go', params, form)\r
+ \r
+ users_a_params: (action, query_string) ->\r
+ params = @parse_query_string(query_string)\r
+ params['controller'] = 'users'\r
+ params['format'] = 'html'\r
+ params['action'] = action\r
+ params\r