summaryrefslogtreecommitdiff
path: root/app/controllers
diff options
context:
space:
mode:
authorStefan Wintermeyer <stefan.wintermeyer@amooma.de>2013-06-04 15:06:50 +0200
committerStefan Wintermeyer <stefan.wintermeyer@amooma.de>2013-06-04 15:06:50 +0200
commit87cf6e55f76901c340ec99cf216637a2b9672cc2 (patch)
tree8f500293a84151d177a64e3ca892eb13cd20b8f4 /app/controllers
parent26456e2298376ceb5bc3d7978d7c0aa146e44039 (diff)
JSON API for PagerGroup (new)
Diffstat (limited to 'app/controllers')
-rw-r--r--app/controllers/api/v1/pager_groups_controller.rb47
-rw-r--r--app/controllers/pager_groups_controller.rb4
2 files changed, 50 insertions, 1 deletions
diff --git a/app/controllers/api/v1/pager_groups_controller.rb b/app/controllers/api/v1/pager_groups_controller.rb
new file mode 100644
index 0000000..6db9b90
--- /dev/null
+++ b/app/controllers/api/v1/pager_groups_controller.rb
@@ -0,0 +1,47 @@
+module Api
+ module V1
+ class PagerGroupsController < ApplicationController
+ respond_to :json
+
+ def index
+ # if params[:ids]
+ # @sip_accounts = SipAccount.where(:id => params[:ids])
+ # else
+ # @sip_accounts = SipAccount.all
+ # end
+ @pager_groups = PagerGroup.all
+
+ respond_with @pager_groups
+ end
+
+ def show
+ @pager_group = PagerGroup.find(params[:id])
+
+ respond_with @pager_group
+ end
+
+
+ def new
+ if params[:sip_account_id] && SipAccount.find(params[:sip_account_id])
+ @pager_group = SipAccount.find(params[:sip_account_id]).pager_groups.new
+ @pager_group.callback_url = params[:callback_url]
+ @pager_group.pager_group_destination_ids = params[:pager_group_destination_ids]
+ if @pager_group.save
+ respond_with @pager_group
+ end
+ end
+
+ end
+
+ def create
+ @pager_group = PagerGroup.new(params[:pager_group])
+ if @pager_group.save
+ redirect_to @pager_group, :notice => t('pager_groups.controller.successfuly_created')
+ else
+ render :new
+ end
+ end
+
+ end
+ end
+end
diff --git a/app/controllers/pager_groups_controller.rb b/app/controllers/pager_groups_controller.rb
index 4fa21c2..3b145b1 100644
--- a/app/controllers/pager_groups_controller.rb
+++ b/app/controllers/pager_groups_controller.rb
@@ -1,6 +1,8 @@
class PagerGroupsController < ApplicationController
+ load_resource :sip_account
+ load_resource :pager_group, :through => :sip_account
+
def index
- @pager_groups = PagerGroup.all
end
def show