diff --git a/app/assets/stylesheets/themes/blue2/application.css.scss b/app/assets/stylesheets/themes/blue2/application.css.scss index 773d11f..f7ad6bc 100755 --- a/app/assets/stylesheets/themes/blue2/application.css.scss +++ b/app/assets/stylesheets/themes/blue2/application.css.scss @@ -126,6 +126,6 @@ $box-background: white; @import 'extra'; body { -background: url('http://www.fet.at/stvn.jpg') fixed no-repeat; +background: $color_schema_1_dark; background-size:100%; } diff --git a/app/controllers/meetingtyps_controller.rb b/app/controllers/meetingtyps_controller.rb index b8884a1..885292d 100644 --- a/app/controllers/meetingtyps_controller.rb +++ b/app/controllers/meetingtyps_controller.rb @@ -1,2 +1,76 @@ class MeetingtypsController < ApplicationController + load_and_authorize_resource + def index + @meetingtyps=Meetingtyp.all + end + def show + redirect_to action: :index + end + def edit + @meetingtyp = Meetingtyp.find(params[:id]) + end + def new + @meetingtyp=Meetingtyp.new + end + def create_protocol_and_agenda + @meetingtyp = Meetingtyp.find(params[:id]) + if @meetingtyp.agenda.nil? + d=Document.new + d.typ=11 + d.name="Agendavorlage" + d.save + @meetingtyp.agenda=d + end + if @meetingtyp.protocol.nil? + d=Document.new + d.typ=10 + d.name="Protokollvorlage" + d.save + @meetingtyp.protocol=d + end + redirect_to action: :index + end + + + def create + @meetingtyp = Meetingtyp.new(params[:meetingtyp]) + @meetingtyp.assign_attributes(params[:meetingtyp]) + + respond_to do |format| + if @meetingtyp.save + format.html { redirect_to @meetingtyp, notice: 'Meeting was successfully created.' } + #format.json { render json: @meeting, status: :created, location: @meeting } + format.js + else + format.html { render action: "new" } + # format.json { render json: @meeting.errors, status: :unprocessable_entity } + format.js { render action: "new" } + end + end + end + +def update + @meetingtyp = Meetingtyp.find(params[:id]) + respond_to do |format| + if @meetingtyp.update_attributes(params[:meetingtyp]) + format.html { redirect_to @meetingtyp, notice: 'Meeting was successfully updated.' } + # format.json { head :no_content } + format.js + else + format.html { render action: "edit" } + # format.json { render json: @meeting.errors, status: :unprocessable_entity } + format.js { render action: "edit" } + end + end + end + def destroy + @meetingtyp = Meeting.find(params[:id]) + @meetingtyp.destroy + respond_to do |format| + format.html { redirect_to action: :index} + end + end + + + end diff --git a/app/models/meeting.rb b/app/models/meeting.rb index d86a024..cd174bc 100644 --- a/app/models/meeting.rb +++ b/app/models/meeting.rb @@ -50,26 +50,32 @@ class Meeting < ActiveRecord::Base end def create_protocol if self.protocol.nil? - d=Document.new - d.typ=10 + d=Document.new + d.typ=10 d.name="Protokoll" - d.save - self.protocol=d - end + unless self.meetingtyp.protocol.nil? + d.text=self.meetingtyp.protocol.text + end + d.save + self.protocol=d + end end def create_calentry if self.calentry.nil? -ce =Calentry.new -ce.typ=2 -self.calentry=ce -end -end + ce =Calentry.new + ce.typ=2 + self.calentry=ce + end + end def create_agenda if self.agenda.nil? d=Document.new d.typ=11 d.name="Agenda" + unless self.meetingtyp.agenda.nil? + d.text=self.meetingtyp.agenda.text + end d.save self.agenda=d end diff --git a/app/models/meetingtyp.rb b/app/models/meetingtyp.rb index 24760f0..bcbdd19 100644 --- a/app/models/meetingtyp.rb +++ b/app/models/meetingtyp.rb @@ -1,7 +1,12 @@ class Meetingtyp < ActiveRecord::Base - attr_accessible :agendaintern, :desc, :name, :protocolintern + attr_accessible :agendaintern, :desc, :name, :protocolintern, :rubrik_id belongs_to :rubrik validate :rubrik, :presence=>true has_many :meetings has_one :calendar, through: :rubrik + has_one :protocol, :class_name=>'Document', :conditions=>{:typ=>10}, :as=>:parent + has_one :agenda , :as=>:parent, :conditions=>{:typ=>11}, :class_name=>'Document' +def text +self.name +end end diff --git a/app/models/neuigkeit.rb b/app/models/neuigkeit.rb index caeec97..198ca66 100755 --- a/app/models/neuigkeit.rb +++ b/app/models/neuigkeit.rb @@ -33,7 +33,7 @@ class Neuigkeit < ActiveRecord::Base scope :intern, ->{includes(:rubrik).where("rubriken.public"=>false)} # scope :search, ->(query) {where("text like ? or title like ?", "%#{query}%", "%#{query}%")} - LINKTYPES=["Thema", "Gallery", "Lva","Studium","Fetprofile", "Gremium"] + LINKTYPES=["Thema", "Themengruppe", "Gallery", "Lva","Studium","Fetprofile", "Gremium"] accepts_nested_attributes_for :calentries, :allow_destroy=>true , :reject_if=> lambda{|a| a[:start].blank?} before_validation :sanitize diff --git a/app/views/meetings/_nested_form.html.erb b/app/views/meetings/_nested_form.html.erb index db36946..34e18c9 100644 --- a/app/views/meetings/_nested_form.html.erb +++ b/app/views/meetings/_nested_form.html.erb @@ -9,7 +9,7 @@ <%= f.semantic_fields_for :calentry, @meeting.calentry do |ff| %> <%= ff.input :start, :as => :datetimepicker %> <%= ff.input :ende, :as => :datetimepicker %> - <%= ff.input :typ %> + <%= ff.input :typ, :as=>:hidden %> <% ff.input :object_id, :as=>:hidden %> <% ff.input :object_type %> @@ -20,4 +20,4 @@ <%= f.action :submit, :as => :input_ %> <% end %> -<%= @meeting.calentry.to_yaml %> + diff --git a/app/views/meetings/edit.js.erb b/app/views/meetings/edit.js.erb index 773307c..82bdcc9 100644 --- a/app/views/meetings/edit.js.erb +++ b/app/views/meetings/edit.js.erb @@ -1,4 +1,6 @@ $("#<%= @meeting.divid %>").html("<%=escape_javascript( render :partial=>"nested_form" ,:object=>@meeting)%>"); + $('.datetimepicker').datetimepicker({format: 'd.m.Y H:i', startDate: (!($(this).attr("value")==undefined))? $(this).attr("value"): ""}) + diff --git a/app/views/meetings/new.js.erb b/app/views/meetings/new.js.erb index a580664..d9e3c2d 100644 --- a/app/views/meetings/new.js.erb +++ b/app/views/meetings/new.js.erb @@ -1,3 +1,5 @@ $("#<%= Meeting.new_divid_for(@parent) %>").replaceWith("
\"><%=escape_javascript( render :partial=>"nested_form" ,:object=>@meeting) %>
"); + $('.datetimepicker').datetimepicker({format: 'd.m.Y H:i', startDate: (!($(this).attr("value")==undefined))? $(this).attr("value"): ""}) + \ No newline at end of file diff --git a/app/views/meetingtyps/_form.html.erb b/app/views/meetingtyps/_form.html.erb new file mode 100644 index 0000000..5a21d57 --- /dev/null +++ b/app/views/meetingtyps/_form.html.erb @@ -0,0 +1,12 @@ +<%= semantic_form_for [@meetingtyp] do |f| %> + <%= f.inputs do %> + <%= f.input :name, :placeholder=> "Name" %> + <%= f.input :rubrik %> + <%= f.input :agendaintern %> + <%= f.input :protocolintern %> + <% end %> + <%= f.actions do %> + <%= f.action :submit, :as => :input %> + <% end %> + +<% end %> diff --git a/app/views/meetingtyps/_meetingtyp.html.erb b/app/views/meetingtyps/_meetingtyp.html.erb new file mode 100644 index 0000000..6c04789 --- /dev/null +++ b/app/views/meetingtyps/_meetingtyp.html.erb @@ -0,0 +1,5 @@ +<%= meetingtyp.name %> <%= link_to "edit", edit_meetingtyp_path(meetingtyp) %> + +<%= link_to "create" , create_protocol_and_agenda_meetingtyp_path(meetingtyp) %> +<%= render meetingtyp.protocol unless meetingtyp.protocol.nil? %> +<%= render meetingtyp.agenda unless meetingtyp.agenda.nil? %> diff --git a/app/views/meetingtyps/edit.html.erb b/app/views/meetingtyps/edit.html.erb new file mode 100644 index 0000000..e0f80e7 --- /dev/null +++ b/app/views/meetingtyps/edit.html.erb @@ -0,0 +1 @@ +<%= render "form" %> diff --git a/app/views/meetingtyps/index.html.erb b/app/views/meetingtyps/index.html.erb new file mode 100644 index 0000000..63111f1 --- /dev/null +++ b/app/views/meetingtyps/index.html.erb @@ -0,0 +1,6 @@ + +<%= link_to "New" , new_meetingtyp_path %> diff --git a/app/views/meetingtyps/new.html.erb b/app/views/meetingtyps/new.html.erb new file mode 100644 index 0000000..e0f80e7 --- /dev/null +++ b/app/views/meetingtyps/new.html.erb @@ -0,0 +1 @@ +<%= render "form" %> diff --git a/app/views/themengruppen/_nlink.html.erb b/app/views/themengruppen/_nlink.html.erb index 35f5eab..777aa78 100644 --- a/app/views/themengruppen/_nlink.html.erb +++ b/app/views/themengruppen/_nlink.html.erb @@ -1 +1,14 @@ -

<%= nlink.title %>

+<% themengruppe=nlink %> +

+ <% unless themengruppe.icon.nil? or themengruppe.icon.empty? %> + <% end %> + + <%= themengruppe.title%>

+

+ <%= if themengruppe.text.split.size > Themengruppe::WORD_COUNT + themengruppe.text.split[0..Themengruppe::WORD_COUNT].join(" ") + " ..." + else + themengruppe.text + end%> +

+ diff --git a/config/routes.rb b/config/routes.rb index 0273519..e8887d9 100755 --- a/config/routes.rb +++ b/config/routes.rb @@ -181,7 +181,11 @@ end - resources :meetingtyps + resources :meetingtyps do + member do + get :create_protocol_and_agenda + end + end end end root :to => 'home#index'