class Bhf::EmbedEntriesController < Bhf::EntriesController def new @form_url = bhf_entry_embed_index_path(@platform.name, @model.get_embedded_parent(params[:entry_id])) render 'bhf/entries/new', ({:layout => 'bhf/quick_edit'} if @quick_edit) || {} end def edit @form_url = bhf_entry_embed_path(@platform.name, @model.get_embedded_parent(params[:entry_id]), @object) render 'bhf/entries/edit', ({:layout => 'bhf/quick_edit'} if @quick_edit) || {} end def create before_save if @object.save manage_many_to_many after_save edit_path = edit_bhf_entry_embed_path(@platform.name, @model.get_embedded_parent(params[:entry_id]), @object) if @quick_edit render :json => object_to_bhf_display_hash.merge(:edit_path => edit_path), :status => :ok else redirect_back_or_default(edit_path, :notice => set_message('create.success', @model)) end else @form_url = bhf_entry_embed_index_path(@platform.name, @model.get_embedded_parent(params[:entry_id])) r_settings = {:status => :unprocessable_entity} r_settings[:layout] = 'bhf/quick_edit' if @quick_edit render 'bhf/entries/new', r_settings end end def update before_save if @object.update_attributes(params[@model_sym]) manage_many_to_many after_save if @quick_edit render :json => object_to_bhf_display_hash, :status => :ok else redirect_back_or_default(edit_bhf_entry_embed_path(@platform.name, @model.get_embedded_parent(params[:entry_id]), @object), :notice => set_message('update.success', @model)) end else @form_url = bhf_entry_embed_path(@platform.name, @model.get_embedded_parent(params[:entry_id]), @object) r_settings = {:status => :unprocessable_entity} r_settings[:layout] = 'bhf/quick_edit' if @quick_edit render 'bhf/entries/edit', r_settings end end private def load_object @object = @model.bhf_find_embed(params[:entry_id], params[:id]) after_load end def load_new_object @object = @model.bhf_new_embed(params[:entry_id], params[@model_sym]) after_load end end