diff options
Diffstat (limited to 'app')
21 files changed, 190 insertions, 0 deletions
diff --git a/app/controllers/pager_group_destinations_controller.rb b/app/controllers/pager_group_destinations_controller.rb new file mode 100644 index 0000000..655054a --- /dev/null +++ b/app/controllers/pager_group_destinations_controller.rb @@ -0,0 +1,41 @@ +class PagerGroupDestinationsController < ApplicationController + def index + @pager_group_destinations = PagerGroupDestination.all + end + + def show + @pager_group_destination = PagerGroupDestination.find(params[:id]) + end + + def new + @pager_group_destination = PagerGroupDestination.new + end + + def create + @pager_group_destination = PagerGroupDestination.new(params[:pager_group_destination]) + if @pager_group_destination.save + redirect_to @pager_group_destination, :notice => t('pager_group_destinations.controller.successfuly_created') + else + render :new + end + end + + def edit + @pager_group_destination = PagerGroupDestination.find(params[:id]) + end + + def update + @pager_group_destination = PagerGroupDestination.find(params[:id]) + if @pager_group_destination.update_attributes(params[:pager_group_destination]) + redirect_to @pager_group_destination, :notice => t('pager_group_destinations.controller.successfuly_updated') + else + render :edit + end + end + + def destroy + @pager_group_destination = PagerGroupDestination.find(params[:id]) + @pager_group_destination.destroy + redirect_to pager_group_destinations_url, :notice => t('pager_group_destinations.controller.successfuly_destroyed') + end +end diff --git a/app/controllers/pager_groups_controller.rb b/app/controllers/pager_groups_controller.rb new file mode 100644 index 0000000..4fa21c2 --- /dev/null +++ b/app/controllers/pager_groups_controller.rb @@ -0,0 +1,41 @@ +class PagerGroupsController < ApplicationController + def index + @pager_groups = PagerGroup.all + end + + def show + @pager_group = PagerGroup.find(params[:id]) + end + + def new + @pager_group = PagerGroup.new + 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 + + def edit + @pager_group = PagerGroup.find(params[:id]) + end + + def update + @pager_group = PagerGroup.find(params[:id]) + if @pager_group.update_attributes(params[:pager_group]) + redirect_to @pager_group, :notice => t('pager_groups.controller.successfuly_updated') + else + render :edit + end + end + + def destroy + @pager_group = PagerGroup.find(params[:id]) + @pager_group.destroy + redirect_to pager_groups_url, :notice => t('pager_groups.controller.successfuly_destroyed') + end +end diff --git a/app/helpers/pager_group_destinations_helper.rb b/app/helpers/pager_group_destinations_helper.rb new file mode 100644 index 0000000..46436dd --- /dev/null +++ b/app/helpers/pager_group_destinations_helper.rb @@ -0,0 +1,2 @@ +module PagerGroupDestinationsHelper +end diff --git a/app/helpers/pager_groups_helper.rb b/app/helpers/pager_groups_helper.rb new file mode 100644 index 0000000..ac8d9fb --- /dev/null +++ b/app/helpers/pager_groups_helper.rb @@ -0,0 +1,2 @@ +module PagerGroupsHelper +end diff --git a/app/models/pager_group.rb b/app/models/pager_group.rb new file mode 100644 index 0000000..861377f --- /dev/null +++ b/app/models/pager_group.rb @@ -0,0 +1,8 @@ +class PagerGroup < ActiveRecord::Base + attr_accessible :sip_account_id, :callback_url + + has_many :pager_group_destinations, :dependent => :destroy + belongs_to :sip_account + + validates_presence_of :sip_account_id +end diff --git a/app/models/pager_group_destination.rb b/app/models/pager_group_destination.rb new file mode 100644 index 0000000..333d10f --- /dev/null +++ b/app/models/pager_group_destination.rb @@ -0,0 +1,8 @@ +class PagerGroupDestination < ActiveRecord::Base + attr_accessible :pager_group_id, :sip_account_id + + belongs_to :pager_group + + validates_presence_of :pager_group_id + validates_presence_of :sip_account_id +end diff --git a/app/models/sip_account.rb b/app/models/sip_account.rb index 77fe87a..e4ecfc4 100644 --- a/app/models/sip_account.rb +++ b/app/models/sip_account.rb @@ -46,6 +46,8 @@ class SipAccount < ActiveRecord::Base has_many :voicemail_accounts, :as => :voicemail_accountable, :dependent => :destroy belongs_to :voicemail_account + has_many :pager_groups, :dependent => :destroy + # Delegations: # delegate :host, :to => :sip_domain, :allow_nil => true diff --git a/app/views/pager_group_destinations/_form.html.haml b/app/views/pager_group_destinations/_form.html.haml new file mode 100644 index 0000000..80cb7bb --- /dev/null +++ b/app/views/pager_group_destinations/_form.html.haml @@ -0,0 +1,7 @@ += simple_form_for(@pager_group_destination) do |f| + = f.error_notification + + = render "form_core", :f => f + + .form-actions + = f.button :submit, conditional_t('pager_group_destinations.form.submit') diff --git a/app/views/pager_group_destinations/_form_core.html.haml b/app/views/pager_group_destinations/_form_core.html.haml new file mode 100644 index 0000000..2adae24 --- /dev/null +++ b/app/views/pager_group_destinations/_form_core.html.haml @@ -0,0 +1,3 @@ +.inputs + = f.input :pager_group_id, :label => t('pager_group_destinations.form.pager_group_id.label'), :hint => conditional_hint('pager_group_destinations.form.pager_group_id.hint') + = f.input :sip_account_id, :label => t('pager_group_destinations.form.sip_account_id.label'), :hint => conditional_hint('pager_group_destinations.form.sip_account_id.hint') diff --git a/app/views/pager_group_destinations/_index_core.html.haml b/app/views/pager_group_destinations/_index_core.html.haml new file mode 100644 index 0000000..78bf3e5 --- /dev/null +++ b/app/views/pager_group_destinations/_index_core.html.haml @@ -0,0 +1,11 @@ +%table.table.table-striped + %tr + %th= t('pager_group_destinations.index.pager_group_id') + %th= t('pager_group_destinations.index.sip_account_id') + + + - for pager_group_destination in pager_group_destinations + %tr + %td= pager_group_destination.pager_group_id + %td= pager_group_destination.sip_account_id + =render :partial => 'shared/index_view_edit_destroy_part', :locals => {:child => pager_group_destination}
\ No newline at end of file diff --git a/app/views/pager_group_destinations/edit.html.haml b/app/views/pager_group_destinations/edit.html.haml new file mode 100644 index 0000000..4086329 --- /dev/null +++ b/app/views/pager_group_destinations/edit.html.haml @@ -0,0 +1,3 @@ +- content_for :title, t("pager_group_destinations.edit.page_title") + += render "form"
\ No newline at end of file diff --git a/app/views/pager_group_destinations/index.html.haml b/app/views/pager_group_destinations/index.html.haml new file mode 100644 index 0000000..8072fb7 --- /dev/null +++ b/app/views/pager_group_destinations/index.html.haml @@ -0,0 +1,6 @@ +- content_for :title, t("pager_group_destinations.index.page_title") + +- if @pager_group_destinations && @pager_group_destinations.count > 0 + = render "index_core", :pager_group_destinations => @pager_group_destinations + += render :partial => 'shared/create_link', :locals => {:child_class => PagerGroupDestination}
\ No newline at end of file diff --git a/app/views/pager_group_destinations/new.html.haml b/app/views/pager_group_destinations/new.html.haml new file mode 100644 index 0000000..346911c --- /dev/null +++ b/app/views/pager_group_destinations/new.html.haml @@ -0,0 +1,3 @@ +- content_for :title, t("pager_group_destinations.new.page_title") + += render "form"
\ No newline at end of file diff --git a/app/views/pager_group_destinations/show.html.haml b/app/views/pager_group_destinations/show.html.haml new file mode 100644 index 0000000..4bc3adb --- /dev/null +++ b/app/views/pager_group_destinations/show.html.haml @@ -0,0 +1,10 @@ +- content_for :title, t("pager_group_destinations.show.page_title") + +%p + %strong= t('pager_group_destinations.show.pager_group_id') + ":" + = @pager_group_destination.pager_group_id +%p + %strong= t('pager_group_destinations.show.sip_account_id') + ":" + = @pager_group_destination.sip_account_id + += render :partial => 'shared/show_edit_destroy_part', :locals => { :child => @pager_group_destination }
\ No newline at end of file diff --git a/app/views/pager_groups/_form.html.haml b/app/views/pager_groups/_form.html.haml new file mode 100644 index 0000000..a9d5782 --- /dev/null +++ b/app/views/pager_groups/_form.html.haml @@ -0,0 +1,7 @@ += simple_form_for(@pager_group) do |f| + = f.error_notification + + = render "form_core", :f => f + + .form-actions + = f.button :submit, conditional_t('pager_groups.form.submit') diff --git a/app/views/pager_groups/_form_core.html.haml b/app/views/pager_groups/_form_core.html.haml new file mode 100644 index 0000000..eeb23d2 --- /dev/null +++ b/app/views/pager_groups/_form_core.html.haml @@ -0,0 +1,3 @@ +.inputs + = f.input :sip_account_id, :label => t('pager_groups.form.sip_account_id.label'), :hint => conditional_hint('pager_groups.form.sip_account_id.hint') + = f.input :callback_url, :label => t('pager_groups.form.callback_url.label'), :hint => conditional_hint('pager_groups.form.callback_url.hint') diff --git a/app/views/pager_groups/_index_core.html.haml b/app/views/pager_groups/_index_core.html.haml new file mode 100644 index 0000000..9515bcf --- /dev/null +++ b/app/views/pager_groups/_index_core.html.haml @@ -0,0 +1,11 @@ +%table.table.table-striped + %tr + %th= t('pager_groups.index.sip_account_id') + %th= t('pager_groups.index.callback_url') + + + - for pager_group in pager_groups + %tr + %td= pager_group.sip_account_id + %td= pager_group.callback_url + =render :partial => 'shared/index_view_edit_destroy_part', :locals => {:child => pager_group}
\ No newline at end of file diff --git a/app/views/pager_groups/edit.html.haml b/app/views/pager_groups/edit.html.haml new file mode 100644 index 0000000..ec71984 --- /dev/null +++ b/app/views/pager_groups/edit.html.haml @@ -0,0 +1,3 @@ +- content_for :title, t("pager_groups.edit.page_title") + += render "form"
\ No newline at end of file diff --git a/app/views/pager_groups/index.html.haml b/app/views/pager_groups/index.html.haml new file mode 100644 index 0000000..455e90e --- /dev/null +++ b/app/views/pager_groups/index.html.haml @@ -0,0 +1,6 @@ +- content_for :title, t("pager_groups.index.page_title") + +- if @pager_groups && @pager_groups.count > 0 + = render "index_core", :pager_groups => @pager_groups + += render :partial => 'shared/create_link', :locals => {:child_class => PagerGroup}
\ No newline at end of file diff --git a/app/views/pager_groups/new.html.haml b/app/views/pager_groups/new.html.haml new file mode 100644 index 0000000..fbb6ac3 --- /dev/null +++ b/app/views/pager_groups/new.html.haml @@ -0,0 +1,3 @@ +- content_for :title, t("pager_groups.new.page_title") + += render "form"
\ No newline at end of file diff --git a/app/views/pager_groups/show.html.haml b/app/views/pager_groups/show.html.haml new file mode 100644 index 0000000..5e0a8c7 --- /dev/null +++ b/app/views/pager_groups/show.html.haml @@ -0,0 +1,10 @@ +- content_for :title, t("pager_groups.show.page_title") + +%p + %strong= t('pager_groups.show.sip_account_id') + ":" + = @pager_group.sip_account_id +%p + %strong= t('pager_groups.show.callback_url') + ":" + = @pager_group.callback_url + += render :partial => 'shared/show_edit_destroy_part', :locals => { :child => @pager_group }
\ No newline at end of file |