From 81cbf2b9404352af13affe8f0f633cdc40cd0494 Mon Sep 17 00:00:00 2001 From: Andreas Stephanides Date: Mon, 22 Jul 2013 14:37:49 +0200 Subject: [PATCH] Page Model/Controller entfernt, Migration --- app/controllers/page_controller.rb | 57 ---------------------- app/controllers/pages_controller.rb | 65 ------------------------- app/helpers/lvas_helper.rb | 2 +- app/helpers/neuigkeiten_helper.rb | 2 +- app/models/lva.rb | 42 +++++++++------- app/models/page.rb | 75 ----------------------------- app/views/home/dev.html.erb | 2 +- app/views/pages/_form.haml | 23 --------- app/views/pages/_form.html.erb | 12 ----- app/views/pages/_index.haml | 3 -- app/views/pages/_item.haml | 0 app/views/pages/_page.haml | 7 --- app/views/pages/destroy.js.erb | 5 -- app/views/pages/edit.haml | 2 - app/views/pages/edit.html.erb | 2 - app/views/pages/new.haml | 2 - app/views/pages/show.haml | 15 ------ app/views/pages/show.html.erb | 8 --- db/schema.rb | 14 +----- 19 files changed, 29 insertions(+), 309 deletions(-) delete mode 100644 app/controllers/page_controller.rb delete mode 100644 app/controllers/pages_controller.rb delete mode 100644 app/models/page.rb delete mode 100644 app/views/pages/_form.haml delete mode 100644 app/views/pages/_form.html.erb delete mode 100644 app/views/pages/_index.haml delete mode 100644 app/views/pages/_item.haml delete mode 100644 app/views/pages/_page.haml delete mode 100644 app/views/pages/destroy.js.erb delete mode 100644 app/views/pages/edit.haml delete mode 100644 app/views/pages/edit.html.erb delete mode 100644 app/views/pages/new.haml delete mode 100644 app/views/pages/show.haml delete mode 100644 app/views/pages/show.html.erb diff --git a/app/controllers/page_controller.rb b/app/controllers/page_controller.rb deleted file mode 100644 index ce30434..0000000 --- a/app/controllers/page_controller.rb +++ /dev/null @@ -1,57 +0,0 @@ -class PagesController < ApplicationController - - layout :get_layout - - before_filter :find_page, :except => [:new, :show, :create] - before_filter :find_body, :only => [:edit] - - def new - @page = Page.new - end - - def edit - end - - def show - @page = Page.find(params[:id] || Page.welcome) - end - - def create - @page = Page.new(params[:page]) - if @page.save - flash[:notice] = "Successfully created page." - redirect_to @page - else - render :action => 'new' - end - end - - def update - if @page.update_attributes(params[:page]) - flash[:notice] = "Successfully updated page." - redirect_to @page - else - render :action => 'edit' - end - end - - def destroy - @page.destroy - flash[:notice] = "Successfully destroyed page." - end - - def preview - render :text => @page.preview(params[:data]) - end - - private - - def find_page - @page = Page.find(params[:id]) - end - - def find_body - @page.body = params[:page][:body] rescue @page.raw_content - end - -end diff --git a/app/controllers/pages_controller.rb b/app/controllers/pages_controller.rb deleted file mode 100644 index 565fdb6..0000000 --- a/app/controllers/pages_controller.rb +++ /dev/null @@ -1,65 +0,0 @@ -class PagesController < ApplicationController - - before_filter :find_page, :except => [:new, :show, :create] - before_filter :find_body, :only => [:edit] - - def new - @page = Page.new - @page.name=params[:name] - end - - def edit - end - - def show - if params[:id].to_i >0 - @page = Page.find(params[:id] || Page.welcome) - else - id=Page.find_id(params[:id]) - if id.nil? - redirect_to url_for(:path_only=>true,:controller=>"pages",:action=>"new", :name=>params[:id]) - else - @page =Page.find(Page.find_id(params[:id])) - end - end - end - - def create - @page = Page.new(params[:page]) - if @page.save - flash[:notice] = "Successfully created page." - redirect_to @page - else - render :action => 'new' - end - end - - def update - if @page.update_attributes(params[:page]) - flash[:notice] = "Successfully updated page." - redirect_to @page - else - render :action => 'edit' - end - end - - def destroy - @page.destroy - flash[:notice] = "Successfully destroyed page." - end - - def preview - render :text => @page.preview(params[:data]) - end - - private - - def find_page - @page = Page.find(params[:id]) - end - - def find_body - @page.body = params[:page][:body] rescue @page.raw_content - end - -end diff --git a/app/helpers/lvas_helper.rb b/app/helpers/lvas_helper.rb index f38e5b0..5947c23 100644 --- a/app/helpers/lvas_helper.rb +++ b/app/helpers/lvas_helper.rb @@ -1,2 +1,2 @@ -module LvasHelper +module LvasHelper # :nodoc: end diff --git a/app/helpers/neuigkeiten_helper.rb b/app/helpers/neuigkeiten_helper.rb index e6cb104..545ebc9 100644 --- a/app/helpers/neuigkeiten_helper.rb +++ b/app/helpers/neuigkeiten_helper.rb @@ -1,2 +1,2 @@ -module NeuigkeitenHelper +module NeuigkeitenHelper # :nodoc: end diff --git a/app/models/lva.rb b/app/models/lva.rb index 0f5d940..e79b1d7 100644 --- a/app/models/lva.rb +++ b/app/models/lva.rb @@ -1,3 +1,8 @@ +## +# Author:: Andreas Stephanides +# License:: GPL +# Dieses Model repräsentiert eine LVA. Die notwendigen Informationen können mit TISS (dem Online System der TU Wien) synchronisiert werden + class Lva < ActiveRecord::Base has_paper_trail # Versionsver attr_accessible :desc, :ects, :lvanr, :name, :stunden, :modul_ids @@ -6,10 +11,12 @@ class Lva < ActiveRecord::Base translates :desc, :fallbacks_for_empty_translations => true has_many :beispiele , :class_name => "Beispiel" after_initialize :load_tissdata +## +# Lade den Hash aus TISS und speichere diesen in @hash +# def hash url= "https://tiss.tuwien.ac.at/api/course/"+ self.lvanr.to_s+"-2012W" @hash=Hash.from_xml(open(url).read) - end def objective @@ -21,23 +28,24 @@ class Lva < ActiveRecord::Base def person @person end - private + +private - def load_tissdata - url= "https://tiss.tuwien.ac.at/api/course/"+ self.lvanr.to_s+"-2012W" - begin - @hash=Hash.from_xml(open(url).read)["tuvienna"] - @person=[] - if @hash["course"]["lecturers"]["oid"].is_a? String - @person = @hash["course"]["lecturers"]["oid"] - else - @hash["course"]["lecturers"]["oid"].each do |pid| - @person << Hash.from_xml(open("https://tiss.tuwien.ac.at/adressbuch/adressbuch/person_via_oid/" + pid.to_s + ".xml").read)["tuvienna"]["person"] - end - end - rescue OpenURI::HTTPError => e - end - end +def load_tissdata + url= "https://tiss.tuwien.ac.at/api/course/"+ self.lvanr.to_s+"-2012W" + begin + @hash=Hash.from_xml(open(url).read)["tuvienna"] + @person=[] + if @hash["course"]["lecturers"]["oid"].is_a? String + @person = @hash["course"]["lecturers"]["oid"] + else + @hash["course"]["lecturers"]["oid"].each do |pid| + @person << Hash.from_xml(open("https://tiss.tuwien.ac.at/adressbuch/adressbuch/person_via_oid/" + pid.to_s + ".xml").read)["tuvienna"]["person"] + end + end + rescue OpenURI::HTTPError => e + end +end diff --git a/app/models/page.rb b/app/models/page.rb deleted file mode 100644 index 67145ca..0000000 --- a/app/models/page.rb +++ /dev/null @@ -1,75 +0,0 @@ -class Page < ActiveRecord::Base - - acts_as_nested_set - - # Temporarily hard coded - FORMAT = :textile - WIKI = Rails.root.join("db", "wiki.git") - - - before_create :create_page - before_update :update_page - before_destroy :delete_page - attr_accessible :body, :name, :change_comment - attr_accessor :body, :change_comment - - def content - page.formatted_data - end - - def raw_content - page.raw_data - end - - def self.welcome - Page.first(:conditions => {:name => 'Welcome'}) - end - - def author - page.version.author.name.gsub(/<>/, '') - end - - def date - page.version.authored_date - end - - def preview(data) - wiki.preview_page('Preview', data, FORMAT).formatted_data - end - def self.find_id(nme) - p=Page.first(:conditions=> {:name=>nme}) - if p.nil? - pg=wiki.page(nme) - if !pg.nil? - p=Page.new(:name=>nme,:body=>pg.raw_data) - end - end - p - end - - private - - def self.wiki - @@golum ||= Gollum::Wiki.new(WIKI, :base_path =>"/pages",) - end - def wiki - @@golum ||= Gollum::Wiki.new(WIKI, :base_path =>"/pages") - end - def page - wiki.page(self.name) - end - - - def create_page - wiki.write_page(name, FORMAT, body || '', {:message => self.change_comment, :name => 'tester', :author => 'tester'}) - end - - def update_page - wiki.update_page(page, name, FORMAT, body || self.raw_content, {:message => self.change_comment, :name => 'tester', :author => 'tester'}) - end - - def delete_page - wiki.delete_page(page, COMMIT) - end - -end diff --git a/app/views/home/dev.html.erb b/app/views/home/dev.html.erb index c74d910..1e9d341 100644 --- a/app/views/home/dev.html.erb +++ b/app/views/home/dev.html.erb @@ -27,4 +27,4 @@

<%= link_to "Neuigkeiten", rubriken_path %>

Wiki

-

<%= link_to "Wiki", page_path(Page.find(1)) %>

+

diff --git a/app/views/pages/_form.haml b/app/views/pages/_form.haml deleted file mode 100644 index 6a8275e..0000000 --- a/app/views/pages/_form.haml +++ /dev/null @@ -1,23 +0,0 @@ -= form_for(@page) do |f| - - %p - = f.label :name - = f.text_field :name - - %p - - unless @page.new_record? - = link_to 'Edit mode', '#', :id => 'write' - = link_to 'Preview mode', preview_page_path(@page), :id => 'preview' - #write_area - = f.textile_editor :body - #preview_area.hide - - %p - = f.label 'Describe this change (optional)' - = f.text_field :change_comment - - .actions - = f.submit - = cancel_link - - = raw(textile_editor_initialize(:framework => :jquery)) diff --git a/app/views/pages/_form.html.erb b/app/views/pages/_form.html.erb deleted file mode 100644 index 5271781..0000000 --- a/app/views/pages/_form.html.erb +++ /dev/null @@ -1,12 +0,0 @@ -<%= tinymce_assets %> -<%= semantic_form_for @page do |f| %> -<%= f.inputs do %> - <%= f.input :name %> - <%= f.input :body, :as=>:text,:input_html=>{:style=>"width:100%;font-familiy:Times New Roman;"} %> - <%= f.input :change_comment %> -<% end %> -<%= tinymce %> -<%= f.actions do %> - <%= f.action :submit, :as =>:input %> -<% end %> -<% end %> diff --git a/app/views/pages/_index.haml b/app/views/pages/_index.haml deleted file mode 100644 index 6ffeca6..0000000 --- a/app/views/pages/_index.haml +++ /dev/null @@ -1,3 +0,0 @@ -%h3 Table of contents - -%ul#pages_list= render Page.root diff --git a/app/views/pages/_item.haml b/app/views/pages/_item.haml deleted file mode 100644 index e69de29..0000000 diff --git a/app/views/pages/_page.haml b/app/views/pages/_page.haml deleted file mode 100644 index ba75eed..0000000 --- a/app/views/pages/_page.haml +++ /dev/null @@ -1,7 +0,0 @@ -%li{:id => dom_id(page), :class => "level_#{page.level}"} - - = link_to page.name, page_path(page) - = link_to '(Add)', new_page_path, :rel => dom_id(page) - - - unless page.children.empty? - %ul= render page.children \ No newline at end of file diff --git a/app/views/pages/destroy.js.erb b/app/views/pages/destroy.js.erb deleted file mode 100644 index a8858b0..0000000 --- a/app/views/pages/destroy.js.erb +++ /dev/null @@ -1,5 +0,0 @@ -<% unless @page.errors.any? -%> - $("#flash_notice").html("<%= escape_javascript(flash[:notice])%>"); - $("#flash_notice").show(300); - $("#<%= dom_id(@page)%>").fadeOut('fast'); -<% end -%> \ No newline at end of file diff --git a/app/views/pages/edit.haml b/app/views/pages/edit.haml deleted file mode 100644 index 55bac9e..0000000 --- a/app/views/pages/edit.haml +++ /dev/null @@ -1,2 +0,0 @@ -%h1="Editing page \"#{@page.name}\"" -= render 'form' \ No newline at end of file diff --git a/app/views/pages/edit.html.erb b/app/views/pages/edit.html.erb deleted file mode 100644 index 8f09a3e..0000000 --- a/app/views/pages/edit.html.erb +++ /dev/null @@ -1,2 +0,0 @@ -

Edit Form

-<%= render 'form' %> diff --git a/app/views/pages/new.haml b/app/views/pages/new.haml deleted file mode 100644 index 8ce308f..0000000 --- a/app/views/pages/new.haml +++ /dev/null @@ -1,2 +0,0 @@ -%h1 New page -= render 'form' \ No newline at end of file diff --git a/app/views/pages/show.haml b/app/views/pages/show.haml deleted file mode 100644 index 8769ca0..0000000 --- a/app/views/pages/show.haml +++ /dev/null @@ -1,15 +0,0 @@ -%small - = breadcrumbs(@page) - -%h4 - = "#{@page.name}" - = link_to '(Edit)', edit_page_path(@page) - = link_to '(Destroy)', @page, :remote => true, :confirm => 'Are you sure?', :method => :delete - - %small= "Last edited by #{@page.author} #{time_ago_in_words(@page.date)} ago." - -%hr - -= raw(@page.content) - -%hr \ No newline at end of file diff --git a/app/views/pages/show.html.erb b/app/views/pages/show.html.erb deleted file mode 100644 index 7e404ee..0000000 --- a/app/views/pages/show.html.erb +++ /dev/null @@ -1,8 +0,0 @@ -<%= breadcrumbs(@page) %> -

<%= @page.name %>

-<%= raw(@page.content)%> -
-<%= link_to '(Edit)', edit_page_path(@page)%> -<%= link_to '(Destroy)', @page, :remote => true, :confirm => 'Are you sure?', :method => :delete - -%> diff --git a/db/schema.rb b/db/schema.rb index d7773a3..c85213d 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -11,7 +11,7 @@ # # It's strongly recommended to check this file into your version control system. -ActiveRecord::Schema.define(:version => 20130301000000) do +ActiveRecord::Schema.define(:version => 20130214233723) do create_table "beispiel_translations", :force => true do |t| t.string "locale" @@ -120,18 +120,6 @@ ActiveRecord::Schema.define(:version => 20130301000000) do t.datetime "updated_at", :null => false end - create_table "pages", :force => true do |t| - t.string "name" - t.string "url" - t.integer "parent_id" - t.integer "lft" - t.integer "rgt" - t.datetime "created_at", :null => false - t.datetime "updated_at", :null => false - end - - add_index "pages", ["parent_id"], :name => "index_pages_on_parent_id" - create_table "roles", :force => true do |t| t.string "name" t.integer "resource_id"