class DocumentsController < ApplicationController # require('etherpad-lite') load_and_authorize_resource def index respond_to do |format| format.html {redirect_to rubriken_path} end end def new @document=Document.new @parent=params[:parent_type].constantize.find(params[:parent_id]) @document.parent=@parent @document.typ = 1 respond_to do |format| format.js end end def edit @document = Document.find(params[:id]) @parent=@document.parent respond_to do |format| format.js format.html end end def dump_to_etherpad @document = Document.find(params[:id]) @document.dump_to_etherpad @document.save # author = ether.author('author_1') # pad=group.pad(@document.etherpadkey) # pad.html='
'+@document.text+'
' redirect_to action: :show end def read_from_etherpad @document = Document.find(params[:id]) @document.read_from_etherpad @document.save render :show end def write_etherpad @document = Document.find(params[:id]) ether=Document.ether author = Document.ether.author("fetsite_"+current_user.uid, :name => current_user.text) session[:ep_sessions]={} if session[:ep_sessions].nil? group=@document.ep_group sess = session[:ep_sessions][group.id] ? ether.get_session(session[:ep_sessions][group.id]) : group.create_session(author, 60) if sess.expired? sess.delete sess = group.create_session(author, 60) end session[:ep_sessions][group.id] = sess.id # Set the EtherpadLite session cookie. This will automatically be picked up by the jQuery plugin's iframe. cookies[:sessionID] = {value: sess.id.to_s, domain: %w(.fet.at), expires: 1.hour.from_now} #cookies[:sessionID] = {:value => sess.id} cookies[:sessionID]= {value: sess.id, expires: 1.hour.from_now} # cookies[:sdf]=sess.id # pad=ether.pad(@document.etherpadkey) # redirect_to "http://www.fet.at/etherpad/p/"+@document.ep_pad.id #render :write end def write @document = Document.find(params[:id]) if @document.is_etherpad? && params[:versionid].nil? redirect_to action: :write_etherpad else unless params[:versionid].nil? v=@document.versions.find(params[:versionid]) if v.reify.nil? v=v.next end @document=v.reify end @parent=@document.parent respond_to do |format| format.html end end end def create @document = Document.new(params[:document]) @parent=@document.parent 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]) @parent=@document.parent 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]) @parent=@document.parent @document_id = params[:id] @document.destroy respond_to do |format| #format.html { redirect_to @object} #format.json { head :no_content } format.js end end end