OSDN Git Service

fix editor lock
[pettanr/pettanr.git] / app / assets / javascripts / pettanr / proxy.js.coffee
1 class Pettanr.Proxy\r
2   \r
3   constructor: (options) ->\r
4     @operators = options.operators\r
5     _.extend(this, Backbone.Events)\r
6   \r
7   local_router: (parsed_callback) ->\r
8     local_router = new Pettanr.LocalRouter({operators: @operators})\r
9     @listenTo(local_router, 'go', parsed_callback)\r
10     @listenTo(local_router, 'deny', @deny)\r
11     @listenTo(local_router, 'cancel', @cancel)\r
12     local_router\r
13   \r
14   http_get: (url, form) ->\r
15     @local_router(@get).navigate(url, form)\r
16   \r
17   get: (params, form) ->\r
18     controller = Pettanr.AppController.new2(params, form, @operators)\r
19     @listenTo(controller, 'ready', @ready)\r
20     @listenTo(controller, 'title', @title)\r
21     @listenTo(controller, 'done', @done)\r
22     @listenTo(controller, 'lock', @lock)\r
23     action_name = params['action']\r
24     controller[action_name]()\r
25   \r
26   ready: (view) ->\r
27     @trigger('ready', view)\r
28   \r
29   title: (params, str) ->\r
30     @trigger('title', params, str)\r
31   \r
32   done: (params) ->\r
33     @trigger('done', params)\r
34   \r
35   lock: (params) ->\r
36     @trigger('lock', params)\r
37   \r
38   deny: (params, form, safe_url) ->\r
39     @trigger('deny', params, form, safe_url)\r
40   \r
41   cancel: () ->\r
42     @trigger('cancel')\r
43   \r
44   http_post: (url, form) ->\r
45     @local_router(@post).navigate(url, form)\r
46   \r
47   post: (params, form) ->\r
48     controller = Pettanr.AppController.new2(params, form, @operators)\r
49     @listenTo(controller, 'success', @success)\r
50     @listenTo(controller, 'fail', @fail)\r
51     @listenTo(controller, 'redirect', @redirect)\r
52     @listenTo(controller, 'sign_in', @sign_in)\r
53     @listenTo(controller, 'sign_out', @sign_out)\r
54     action_name = params['action']\r
55     controller[action_name]()\r
56   \r
57   success: (model, response) ->\r
58     @trigger('success', model, response)\r
59   \r
60   fail: (response) ->\r
61     @trigger('fail', response)\r
62   \r
63   redirect: (new_url) ->\r
64     @trigger('redirect', new_url)\r
65   \r
66   sign_in: (user) ->\r
67     @trigger('sign_in', user)\r
68   \r
69   sign_out: () ->\r
70     @trigger('sign_out')\r
71   \r