documents
This commit is contained in:
71
app/controllers/documents_controller.rb
Normal file
71
app/controllers/documents_controller.rb
Normal file
@@ -0,0 +1,71 @@
|
||||
class DocumentsController < ApplicationController
|
||||
|
||||
load_and_authorize_resource
|
||||
def index
|
||||
respond_to do |format|
|
||||
format.html {redirect_to rubriken_path}
|
||||
end
|
||||
end
|
||||
def new
|
||||
@document=Document.new
|
||||
@document.parent=params[:parent_typ].constantize.find(params[:parent_id])
|
||||
@document.typ = 1
|
||||
respond_to do |format|
|
||||
format.js
|
||||
end
|
||||
end
|
||||
def edit
|
||||
@document = Document.find(params[:id])
|
||||
respond_to do |format|
|
||||
format.js
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
def create
|
||||
@document = Document.new(params[:document])
|
||||
|
||||
respond_to do |format|
|
||||
if @document.save
|
||||
# format.html { redirect_to @document, notice: 'Document was successfully created.' }
|
||||
#format.json { render json: @document, status: :created, location: @document }
|
||||
format.js
|
||||
else
|
||||
# format.html { render action: "new" }
|
||||
# format.json { render json: @document.errors, status: :unprocessable_entity }
|
||||
format.js { render action: "new" }
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def update
|
||||
@document = Document.find(params[:id])
|
||||
|
||||
respond_to do |format|
|
||||
if @document.update_attributes(params[:document])
|
||||
format.html { redirect_to @document, notice: 'Document was successfully updated.' }
|
||||
format.json { head :no_content }
|
||||
format.js
|
||||
else
|
||||
# format.html { render action: "edit" }
|
||||
# format.json { render json: @document.errors, status: :unprocessable_entity }
|
||||
format.js { render action: "edit"}
|
||||
end
|
||||
end
|
||||
end
|
||||
def destroy
|
||||
logger.info("-------------delete------------------")
|
||||
@document = Document.find(params[:id])
|
||||
@document_id = params[:id]
|
||||
@object=@document.object
|
||||
@document.destroy
|
||||
|
||||
respond_to do |format|
|
||||
#format.html { redirect_to @object}
|
||||
#format.json { head :no_content }
|
||||
format.js
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
end
|
||||
3
app/models/document.rb
Normal file
3
app/models/document.rb
Normal file
@@ -0,0 +1,3 @@
|
||||
class Document < ActiveRecord::Base
|
||||
attr_accessible :etherpadkey, :name, :parent, :text, :typ
|
||||
end
|
||||
8
app/views/documents/_document.html.erb
Normal file
8
app/views/documents/_document.html.erb
Normal file
@@ -0,0 +1,8 @@
|
||||
<div class="contentbox" id="document_<%= document.id%>">
|
||||
<% image_tag("/iconnavy/time.png") %>
|
||||
<% fa_icon("calendar 2x") %>
|
||||
|
||||
<%= document.title %>
|
||||
<%= link_to "edit", edit_document_path(document),:remote=>true if can? :edit, document %>
|
||||
<%= link_to 'Delete', document, method: :delete, data: { confirm: 'Are you sure?' } , remote: true if can? :delete, document %>
|
||||
</div>
|
||||
15
app/views/documents/_nested_form.html.erb
Normal file
15
app/views/documents/_nested_form.html.erb
Normal file
@@ -0,0 +1,15 @@
|
||||
<%= fa_icon("calendar 2x") %>
|
||||
<p id="notice"><%= notice %></p>
|
||||
|
||||
<%= semantic_form_for @calentry, :remote=>true, :html=>{:class=>"inline"} do |f| %>
|
||||
|
||||
<%= f.input :start, :as => :datetimepicker %>
|
||||
<%= f.input :dauer , :as => :string, :append=>"h" %>
|
||||
<%= f.input :object_id , :as => :hidden %>
|
||||
<%= f.input :object_type , :as => :hidden %>
|
||||
<%= f.input :typ , :as => :hidden %>
|
||||
|
||||
|
||||
<%= f.action :submit, :as => :input_ %>
|
||||
|
||||
<% end %>
|
||||
1
app/views/documents/destroy.js.erb
Normal file
1
app/views/documents/destroy.js.erb
Normal file
@@ -0,0 +1 @@
|
||||
$("#document_<%= @document_id %>").remove();
|
||||
6
app/views/documents/edit.js.erb
Normal file
6
app/views/documents/edit.js.erb
Normal file
@@ -0,0 +1,6 @@
|
||||
|
||||
$("#document_<%= @document.id %>").html("<%=escape_javascript( render :partial=>"nested_form" ,:object=>@document)%>");
|
||||
|
||||
|
||||
|
||||
|
||||
3
app/views/documents/new.js.erb
Normal file
3
app/views/documents/new.js.erb
Normal file
@@ -0,0 +1,3 @@
|
||||
$("#document_new").replaceWith("<div id=\"document_new\"><%=escape_javascript( render :partial=>"nested_form" ,:object=>@document) %></div>");
|
||||
|
||||
|
||||
1
app/views/documents/update.js.erb
Normal file
1
app/views/documents/update.js.erb
Normal file
@@ -0,0 +1 @@
|
||||
$("#document_<%= @document.id %>").replaceWith("<%=escape_javascript( render :partial=>"document", :object=>@document)%>");
|
||||
13
db/migrate/20141119200355_create_documents.rb
Normal file
13
db/migrate/20141119200355_create_documents.rb
Normal file
@@ -0,0 +1,13 @@
|
||||
class CreateDocuments < ActiveRecord::Migration
|
||||
def change
|
||||
create_table :documents do |t|
|
||||
t.integer :typ
|
||||
t.string :name
|
||||
t.text :text
|
||||
t.string :etherpadkey
|
||||
t.references{polymorphic} :parent
|
||||
|
||||
t.timestamps
|
||||
end
|
||||
end
|
||||
end
|
||||
10
spec/factories/documents.rb
Normal file
10
spec/factories/documents.rb
Normal file
@@ -0,0 +1,10 @@
|
||||
FactoryGirl.define do
|
||||
factory :document do
|
||||
typ 1
|
||||
name "MyString"
|
||||
text "MyText"
|
||||
etherpadkey "MyString"
|
||||
parent ""
|
||||
end
|
||||
|
||||
end
|
||||
5
spec/models/document_spec.rb
Normal file
5
spec/models/document_spec.rb
Normal file
@@ -0,0 +1,5 @@
|
||||
require 'rails_helper'
|
||||
|
||||
RSpec.describe Document, :type => :model do
|
||||
pending "add some examples to (or delete) #{__FILE__}"
|
||||
end
|
||||
Reference in New Issue
Block a user