Merge branch 'master' of https://github.com/Inachos/fetsite into testgallery

Conflicts:
	app/views/layouts/application.html.erb
This commit is contained in:
Andreas Stephanides
2015-01-15 15:40:36 +01:00
56 changed files with 1154 additions and 125 deletions

1
.gitignore vendored
View File

@@ -39,3 +39,4 @@ console
*# *#
Gemfile.lock Gemfile.lock
/config/database.yml /config/database.yml
/config/start_topic.yml

View File

@@ -91,7 +91,7 @@ gem "simple_calendar", "~> 0.1.9"
gem 'rmagick' gem 'rmagick'
gem 'bootstrap-addons-rails' gem 'bootstrap-addons-rails'
gem "jquery-fileupload-rails" gem "jquery-fileupload-rails", "0.4.1"
gem "jquery-ui-rails","~> 4.1.1" gem "jquery-ui-rails","~> 4.1.1"
gem "font-awesome-rails" gem "font-awesome-rails"
gem "jquery-datetimepicker-rails" gem "jquery-datetimepicker-rails"
@@ -116,3 +116,6 @@ gem 'sitemap_generator'
gem 'whenever' gem 'whenever'
gem 'yaml_db' gem 'yaml_db'
gem 'etherpad-lite' gem 'etherpad-lite'
# Image gallery
gem 'blueimp-gallery'

View File

@@ -23,11 +23,10 @@
//= require bootstrap //= require bootstrap
//= require bootstrap/colorpicker //= require bootstrap/colorpicker
//= require bootstrap/datepicker //= require bootstrap/datepicker
//= require bootstrap/load-image.min
//= require bootstrap/image-gallery.min
//= require jquery-fileupload //= require jquery-fileupload
// require jquery.remotipart // require jquery.remotipart
//= require jquery.datetimepicker //= require jquery.datetimepicker
//= require blueimp-gallery-all
function insertAttachment(url,name) { function insertAttachment(url,name) {
var ext = url.split('.').pop().toLowerCase(); var ext = url.split('.').pop().toLowerCase();

View File

@@ -0,0 +1,3 @@
# Place all the behaviors and hooks related to the matching controller here.
# All this logic will automatically be available in application.js.
# You can use CoffeeScript in this file: http://jashkenas.github.com/coffee-script/

View File

@@ -0,0 +1,3 @@
# Place all the behaviors and hooks related to the matching controller here.
# All this logic will automatically be available in application.js.
# You can use CoffeeScript in this file: http://jashkenas.github.com/coffee-script/

View File

@@ -8,7 +8,6 @@
* *
* You're free to add application-wide styles to this file and they'll appear at the top of the * You're free to add application-wide styles to this file and they'll appear at the top of the
* compiled file, but it's generally better to create a new file per style scope. * compiled file, but it's generally better to create a new file per style scope.
*
*= require_self *= require_self
* require_tree . * require_tree .
*= require 'calendars' *= require 'calendars'
@@ -145,3 +144,5 @@ div.contentbox
min-width:100%; min-width:100%;
background:44F; background:44F;
} }
@import 'galleries';

View File

@@ -0,0 +1,3 @@
// Place all the styles related to the Fetmeetings controller here.
// They will automatically be included in application.css.
// You can use Sass (SCSS) here: http://sass-lang.com/

View File

@@ -0,0 +1,3 @@
// Place all the styles related to the Fetmeetingtops controller here.
// They will automatically be included in application.css.
// You can use Sass (SCSS) here: http://sass-lang.com/

View File

@@ -2,39 +2,6 @@
// They will automatically be included in application.css. // They will automatically be included in application.css.
// You can use Sass (SCSS) here: http://sass-lang.com/ // You can use Sass (SCSS) here: http://sass-lang.com/
//.modal.fade {
// top: -25%;
// transition: opacity 0.3s linear 0s, top 0.3s ease-out 0s;
//}
//.modal-gallery {
// max-height: none;
// outline: medium none;
// width: auto;
//}
//.modal {
// color: #333333;
//}
//.hide {
// display: none;
//}
//.modal {
//background-clip: padding-box;
// background-color: #FFFFFF;
// border: 1px solid rgba(0, 0, 0, 0.3);
//border-radius: 6px 6px 6px 6px;
// box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
// left: 50%;
// margin-left: -280px;
// outline: medium none;
// position: fixed;
// top: 10%;;
// z-index: 1050;
//}
//.fade {
// opacity: 0;
// transition: opacity 0.15s linear 0s;
//}
div.gallery-block div.gallery-block
{ {
padding: 10px; padding: 10px;

View File

@@ -1,3 +1,6 @@
@import 'blueimp-gallery-all';
h1 { h1 {
font-size: 23px font-size: 23px
} }

View File

@@ -15,7 +15,6 @@
*= require jquery.datetimepicker *= require jquery.datetimepicker
*= require jquery.ui.dialog *= require jquery.ui.dialog
* require 'bootstrap' * require 'bootstrap'
* require 'neuigkeiten' * require 'neuigkeiten'
*/ */

View File

@@ -0,0 +1,84 @@
class FetmeetingsController < ApplicationController
# GET /fetmeetings
# GET /fetmeetings.json
def index
@fetmeetings = Fetmeeting.all
respond_to do |format|
format.html # index.html.erb
format.json { render json: @fetmeetings }
end
end
# GET /fetmeetings/1
# GET /fetmeetings/1.json
def show
@fetmeeting = Fetmeeting.find(params[:id])
respond_to do |format|
format.html # show.html.erb
format.json { render json: @fetmeeting }
end
end
# GET /fetmeetings/new
# GET /fetmeetings/new.json
def new
@fetmeeting = Fetmeeting.new
@fetmeeting.calentry=Calentry.new(typ: 0, object: @fetmeetings)
respond_to do |format|
format.html # new.html.erb
format.json { render json: @fetmeeting }
end
end
# GET /fetmeetings/1/edit
def edit
@fetmeeting = Fetmeeting.find(params[:id])
end
# POST /fetmeetings
# POST /fetmeetings.json
def create
@fetmeeting = Fetmeeting.new(params[:fetmeeting])
respond_to do |format|
if @fetmeeting.save
format.html { redirect_to @fetmeeting, notice: 'Fetmeeting was successfully created.' }
format.json { render json: @fetmeeting, status: :created, location: @fetmeeting }
else
format.html { render action: "new" }
format.json { render json: @fetmeeting.errors, status: :unprocessable_entity }
end
end
end
# PUT /fetmeetings/1
# PUT /fetmeetings/1.json
def update
@fetmeeting = Fetmeeting.find(params[:id])
respond_to do |format|
if @fetmeeting.update_attributes(params[:fetmeeting])
format.html { redirect_to @fetmeeting, notice: 'Fetmeeting was successfully updated.' }
format.json { head :no_content }
else
format.html { render action: "edit" }
format.json { render json: @fetmeeting.errors, status: :unprocessable_entity }
end
end
end
# DELETE /fetmeetings/1
# DELETE /fetmeetings/1.json
def destroy
@fetmeeting = Fetmeeting.find(params[:id])
@fetmeeting.destroy
respond_to do |format|
format.html { redirect_to fetmeetings_url }
format.json { head :no_content }
end
end
end

View File

@@ -0,0 +1,83 @@
class FetmeetingtopsController < ApplicationController
# GET /fetmeetingtops
# GET /fetmeetingtops.json
def index
@fetmeetingtops = Fetmeetingtop.all
respond_to do |format|
format.html # index.html.erb
format.json { render json: @fetmeetingtops }
end
end
# GET /fetmeetingtops/1
# GET /fetmeetingtops/1.json
def show
@fetmeetingtop = Fetmeetingtop.find(params[:id])
respond_to do |format|
format.html # show.html.erb
format.json { render json: @fetmeetingtop }
end
end
# GET /fetmeetingtops/new
# GET /fetmeetingtops/new.json
def new
@fetmeetingtop = Fetmeetingtop.new
respond_to do |format|
format.html # new.html.erb
format.json { render json: @fetmeetingtop }
end
end
# GET /fetmeetingtops/1/edit
def edit
@fetmeetingtop = Fetmeetingtop.find(params[:id])
end
# POST /fetmeetingtops
# POST /fetmeetingtops.json
def create
@fetmeetingtop = Fetmeetingtop.new(params[:fetmeetingtop])
respond_to do |format|
if @fetmeetingtop.save
format.html { redirect_to @fetmeetingtop, notice: 'Fetmeetingtop was successfully created.' }
format.json { render json: @fetmeetingtop, status: :created, location: @fetmeetingtop }
else
format.html { render action: "new" }
format.json { render json: @fetmeetingtop.errors, status: :unprocessable_entity }
end
end
end
# PUT /fetmeetingtops/1
# PUT /fetmeetingtops/1.json
def update
@fetmeetingtop = Fetmeetingtop.find(params[:id])
respond_to do |format|
if @fetmeetingtop.update_attributes(params[:fetmeetingtop])
format.html { redirect_to @fetmeetingtop, notice: 'Fetmeetingtop was successfully updated.' }
format.json { head :no_content }
else
format.html { render action: "edit" }
format.json { render json: @fetmeetingtop.errors, status: :unprocessable_entity }
end
end
end
# DELETE /fetmeetingtops/1
# DELETE /fetmeetingtops/1.json
def destroy
@fetmeetingtop = Fetmeetingtop.find(params[:id])
@fetmeetingtop.destroy
respond_to do |format|
format.html { redirect_to fetmeetingtops_url }
format.json { head :no_content }
end
end
end

View File

@@ -2,8 +2,12 @@ class HomeController < ApplicationController
def index def index
@beispiele = Beispiel.last([Beispiel.count, 3].min) @beispiele = Beispiel.last([Beispiel.count, 3].min)
@neuigkeiten = Neuigkeit.recent @neuigkeiten = Neuigkeit.recent
if Thema.count>0
t=YAML.load_file("#{::Rails.root.to_s}/config/start_topic.yml") t=YAML.load_file("#{::Rails.root.to_s}/config/start_topic.yml")
@starttopic= @themen = Thema.where(:id=>t).first @starttopic= @themen = Thema.where(:id=>t).first
else
@starttopic=@themen = nil
end
end end
def dev def dev

View File

@@ -1,4 +1,5 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
class NeuigkeitenController < ApplicationController class NeuigkeitenController < ApplicationController
before_filter :load_toolbar_elements, :only=>[:show,:find_link] before_filter :load_toolbar_elements, :only=>[:show,:find_link]
before_filter :load_toolbar_elements_edit, :only=>[:edit] before_filter :load_toolbar_elements_edit, :only=>[:edit]

View File

@@ -0,0 +1,2 @@
module FetmeetingsHelper
end

View File

@@ -0,0 +1,2 @@
module FetmeetingtopsHelper
end

11
app/models/fetmeeting.rb Normal file
View File

@@ -0,0 +1,11 @@
class Fetmeeting < ActiveRecord::Base
attr_accessible :tnlist, :typ, :calentry_attributes
has_many :fetmeetingtops
validates :typ, presence: true
validates :calentry, presence: true
has_one :calentry , as: :object
accepts_nested_attributes_for :calentry
def public
true
end
end

View File

@@ -0,0 +1,7 @@
class Fetmeetingtop < ActiveRecord::Base
attr_accessible :discussion, :ersteller, :fetmeeting_id, :text, :title
belongs_to :fetmeeting
validates :fetmeeting, presence: true
validates :title, presence: true , length:{minimum: 4}
validates :ersteller, presence: true
end

View File

@@ -0,0 +1,14 @@
<%= semantic_form_for @fetmeeting do |f| %>
<%= f.inputs do %>
<%= f.input :tnlist %>
<%= f.input :typ %>
<%= f.semantic_fields_for :calentry , @fetmeeting.calentry do |calentry| %>
<%= render 'calentries/nested_fields', :f => calentry %>
<% end %>
<% end %>
<%= f.actions do %>
<%= f.action :submit, :as => :input %>
<% end %>
<% end %>

View File

@@ -0,0 +1,6 @@
<h1>Editing fetmeeting</h1>
<%= render 'form' %>
<%= link_to 'Show', @fetmeeting %> |
<%= link_to 'Back', fetmeetings_path %>

View File

@@ -0,0 +1,25 @@
<h1>Listing fetmeetings</h1>
<table>
<tr>
<th>Tnlist</th>
<th>Typ</th>
<th></th>
<th></th>
<th></th>
</tr>
<% @fetmeetings.each do |fetmeeting| %>
<tr>
<td><%= fetmeeting.tnlist %></td>
<td><%= fetmeeting.typ %></td>
<td><%= link_to 'Show', fetmeeting %></td>
<td><%= link_to 'Edit', edit_fetmeeting_path(fetmeeting) %></td>
<td><%= link_to 'Destroy', fetmeeting, method: :delete, data: { confirm: 'Are you sure?' } %></td>
</tr>
<% end %>
</table>
<br />
<%= link_to 'New Fetmeeting', new_fetmeeting_path %>

View File

@@ -0,0 +1,5 @@
<h1>New fetmeeting</h1>
<%= render 'form' %>
<%= link_to 'Back', fetmeetings_path %>

View File

@@ -0,0 +1,20 @@
<p id="notice"><%= notice %></p>
<p>
<b>Tnlist:</b>
<%= @fetmeeting.tnlist %>
</p>
<p>
<b>Typ:</b>
<%= @fetmeeting.typ %>
</p>
<p>
<ul>
<% @fetmeeting.fetmeetingtops.each do |top|%>
<li><%= render top %></li>
<% end %>
</ul>
</p>
<%= link_to 'Edit', edit_fetmeeting_path(@fetmeeting) %> |
<%= link_to 'Back', fetmeetings_path %>

View File

@@ -0,0 +1 @@
<%= fetmeetingtop.title %> (<i><%= fetmeetingtop.ersteller %></i>)

View File

@@ -0,0 +1,14 @@
<%= semantic_form_for @fetmeetingtop do |f| %>
<%= f.inputs do %>
<%= f.input :title %>
<%= f.input :text %>
<%= f.input :discussion , as: :tinymce_text %>
<%= f.input :ersteller %>
<%= f.input :fetmeeting_id %>
<% end %>
<%= f.actions do %>
<%= f.action :submit, :as => :input %>
<% end %>
<% end %>
<%= tinymce %>

View File

@@ -0,0 +1,6 @@
<h1>Editing fetmeetingtop</h1>
<%= render 'form' %>
<%= link_to 'Show', @fetmeetingtop %> |
<%= link_to 'Back', fetmeetingtops_path %>

View File

@@ -0,0 +1,31 @@
<h1>Listing fetmeetingtops</h1>
<table>
<tr>
<th>Title</th>
<th>Text</th>
<th>Discussion</th>
<th>Ersteller</th>
<th>Fetmeeting</th>
<th></th>
<th></th>
<th></th>
</tr>
<% @fetmeetingtops.each do |fetmeetingtop| %>
<tr>
<td><%= fetmeetingtop.title %></td>
<td><%= fetmeetingtop.text %></td>
<td><%= fetmeetingtop.discussion %></td>
<td><%= fetmeetingtop.ersteller %></td>
<td><%= fetmeetingtop.fetmeeting_id %></td>
<td><%= link_to 'Show', fetmeetingtop %></td>
<td><%= link_to 'Edit', edit_fetmeetingtop_path(fetmeetingtop) %></td>
<td><%= link_to 'Destroy', fetmeetingtop, method: :delete, data: { confirm: 'Are you sure?' } %></td>
</tr>
<% end %>
</table>
<br />
<%= link_to 'New Fetmeetingtop', new_fetmeetingtop_path %>

View File

@@ -0,0 +1,5 @@
<h1>New fetmeetingtop</h1>
<%= render 'form' %>
<%= link_to 'Back', fetmeetingtops_path %>

View File

@@ -0,0 +1,30 @@
<p id="notice"><%= notice %></p>
<p>
<b>Title:</b>
<%= @fetmeetingtop.title %>
</p>
<p>
<b>Text:</b>
<%= @fetmeetingtop.text %>
</p>
<p>
<b>Discussion:</b>
<%= @fetmeetingtop.discussion %>
</p>
<p>
<b>Ersteller:</b>
<%= @fetmeetingtop.ersteller %>
</p>
<p>
<b>Fetmeeting:</b>
<%= @fetmeetingtop.fetmeeting_id %>
</p>
<%= link_to 'Edit', edit_fetmeetingtop_path(@fetmeetingtop) %> |
<%= link_to 'Back', fetmeetingtops_path %>

View File

@@ -39,45 +39,51 @@
<div style="clear:both"></div> <div style="clear:both"></div>
<div class="fluid-row" style="margin:20px">
<!-- modal-gallery is the modal dialog used for the image gallery -->
<div id="modal-gallery" class="modal hide fade modal-gallery modal-fullscreen modal-loading" tabindex="-1">
<div class="modal-header">
<a class="close" data-dismiss="modal">&times;</a>
<h3 class="modal-title"></h3>
</div>
<div class="modal-body"><div class="modal-image"></div></div>
<div class="modal-footer">
<a class="btn btn-info modal-prev"><i class="icon-arrow-left icon-white"></i></a>
<a class="btn btn-primary modal-next"><i class="icon-arrow-right icon-white"></i></a>
<a class="btn btn-success modal-play modal-slideshow" data-slideshow="5000"><i class="icon-play icon-white"></i> <%=I18n.t('fotos.slideshow')%></a>
<a class="btn modal-download" target="_blank"><i class="icon-download"></i> Download</a>
</div>
</div>
<div id="gallery" data-toggle="modal-gallery" data-target="#modal-gallery"> <!-- The Bootstrap Image Gallery lightbox, should be a child element of the document body -->
<div id="blueimp-gallery" class="blueimp-gallery blueimp-gallery-controls">
<!-- The container for the modal slides -->
<div class="slides"></div>
<!-- Controls for the borderless lightbox -->
<h3 class="title"></h3>
<a class="prev"></a>
<a class="next"></a>
<a class="close">×</a>
<a class="play-pause"></a>
<ol class="indicator"></ol>
<!-- The modal dialog, which will be used to wrap the lightbox content -->
<div class="modal fade">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" aria-hidden="true">&times;</button>
<h4 class="modal-title"></h4>
</div>
<div class="modal-body next"></div>
<div class="modal-footer">
<button type="button" class="btn btn-default pull-left prev">
<i class="glyphicon glyphicon-chevron-left"></i>
Previous
</button>
<button type="button" class="btn btn-primary next">
Next
<i class="glyphicon glyphicon-chevron-right"></i>
</button>
</div>
</div>
</div>
</div>
</div>
<div id="links">
<% @fotos.each_index do |i| %> <% @fotos.each_index do |i| %>
<% f= @fotos[i] %> <% f= @fotos[i] %>
<a href="<%= f.datei.resized.url%>" title="<%=f.title%>" data-gallery="gallery"> <a href="<%= f.datei.resized.url%>" title="<%=f.title%>" data-gallery>
<%=image_tag(f.datei.thumb.url,{:class=>"img-polaroid img-rounded"}) if @showind.include? i %></a> <%=image_tag(f.datei.thumb.url,{:class=>"img-polaroid img-rounded"}) if @showind.include? i %></a>
<% end %> <% end %>
</div> </div>
</div>
<%= render 'layouts/pretty_toolbar' %> <%= render 'layouts/pretty_toolbar' %>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>
<script src="js/bootstrap.js"></script>
<script src="js/load-image.js"></script>
<script src="js/bootstrap-image-gallery.js"></script>
<script type="text/javascript">
$('#modal-gallery.fade').css('top', '50%');
</script>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="//blueimp.github.io/Gallery/js/jquery.blueimp-gallery.min.js"></script>
<script src="js/bootstrap-image-gallery.min.js"></script>

View File

@@ -44,3 +44,5 @@ de:
adresse_text: "Gußhausstraße 25-27<br>1220 Wien" adresse_text: "Gußhausstraße 25-27<br>1220 Wien"
service_text: "Für individuelle Beratung und alle sonstigen Angelegenheiten stehen wir mit unserem Servicedienst während der Vorlesungszeit jenen <b>Mo-Fr von 9 bis 15 Uhr</b> zur Verfügung. Außerhalb dieser Zeiten ist oft trotzdem jemand auf der Fachschaft der dir weiterhelfen kann." service_text: "Für individuelle Beratung und alle sonstigen Angelegenheiten stehen wir mit unserem Servicedienst während der Vorlesungszeit jenen <b>Mo-Fr von 9 bis 15 Uhr</b> zur Verfügung. Außerhalb dieser Zeiten ist oft trotzdem jemand auf der Fachschaft der dir weiterhelfen kann."
telefon_text: "Telefon: +43 2241341 <br> Skype: <br><b>E-Mail: service@fet.at</b>" telefon_text: "Telefon: +43 2241341 <br> Skype: <br><b>E-Mail: service@fet.at</b>"
search:
no_results_for: "Es wurden keine Einträge gefunden für"

View File

@@ -1,5 +1,9 @@
Fetsite::Application.routes.draw do
Fetsite::Application.routes.draw do
resources :fetmeetingtops
resources :fetmeetings
themes_for_rails themes_for_rails

View File

@@ -0,0 +1,10 @@
class CreateFetmeetings < ActiveRecord::Migration
def change
create_table :fetmeetings do |t|
t.text :tnlist
t.integer :typ
t.timestamps
end
end
end

View File

@@ -0,0 +1,13 @@
class CreateFetmeetingtops < ActiveRecord::Migration
def change
create_table :fetmeetingtops do |t|
t.string :title
t.text :text
t.text :discussion
t.string :ersteller
t.integer :fetmeeting_id
t.timestamps
end
end
end

View File

@@ -0,0 +1,160 @@
require 'spec_helper'
# This spec was generated by rspec-rails when you ran the scaffold generator.
# It demonstrates how one might use RSpec to specify the controller code that
# was generated by Rails when you ran the scaffold generator.
#
# It assumes that the implementation code is generated by the rails scaffold
# generator. If you are using any extension libraries to generate different
# controller code, this generated spec may or may not pass.
#
# It only uses APIs available in rails and/or rspec-rails. There are a number
# of tools you can use to make these specs even more expressive, but we're
# sticking to rails and rspec-rails APIs to keep things simple and stable.
#
# Compared to earlier versions of this generator, there is very limited use of
# stubs and message expectations in this spec. Stubs are only used when there
# is no simpler way to get a handle on the object needed for the example.
# Message expectations are only used when there is no simpler way to specify
# that an instance is receiving a specific message.
describe FetmeetingsController do
# This should return the minimal set of attributes required to create a valid
# Fetmeeting. As you add validations to Fetmeeting, be sure to
# adjust the attributes here as well.
let(:valid_attributes) { { "tnlist" => "MyText" } }
# This should return the minimal set of values that should be in the session
# in order to pass any filters (e.g. authentication) defined in
# FetmeetingsController. Be sure to keep this updated too.
let(:valid_session) { {} }
describe "GET index" do
it "assigns all fetmeetings as @fetmeetings" do
fetmeeting = Fetmeeting.create! valid_attributes
get :index, {}, valid_session
assigns(:fetmeetings).should eq([fetmeeting])
end
end
describe "GET show" do
it "assigns the requested fetmeeting as @fetmeeting" do
fetmeeting = Fetmeeting.create! valid_attributes
get :show, {:id => fetmeeting.to_param}, valid_session
assigns(:fetmeeting).should eq(fetmeeting)
end
end
describe "GET new" do
it "assigns a new fetmeeting as @fetmeeting" do
get :new, {}, valid_session
assigns(:fetmeeting).should be_a_new(Fetmeeting)
end
end
describe "GET edit" do
it "assigns the requested fetmeeting as @fetmeeting" do
fetmeeting = Fetmeeting.create! valid_attributes
get :edit, {:id => fetmeeting.to_param}, valid_session
assigns(:fetmeeting).should eq(fetmeeting)
end
end
describe "POST create" do
describe "with valid params" do
it "creates a new Fetmeeting" do
expect {
post :create, {:fetmeeting => valid_attributes}, valid_session
}.to change(Fetmeeting, :count).by(1)
end
it "assigns a newly created fetmeeting as @fetmeeting" do
post :create, {:fetmeeting => valid_attributes}, valid_session
assigns(:fetmeeting).should be_a(Fetmeeting)
assigns(:fetmeeting).should be_persisted
end
it "redirects to the created fetmeeting" do
post :create, {:fetmeeting => valid_attributes}, valid_session
response.should redirect_to(Fetmeeting.last)
end
end
describe "with invalid params" do
it "assigns a newly created but unsaved fetmeeting as @fetmeeting" do
# Trigger the behavior that occurs when invalid params are submitted
Fetmeeting.any_instance.stub(:save).and_return(false)
post :create, {:fetmeeting => { "tnlist" => "invalid value" }}, valid_session
assigns(:fetmeeting).should be_a_new(Fetmeeting)
end
it "re-renders the 'new' template" do
# Trigger the behavior that occurs when invalid params are submitted
Fetmeeting.any_instance.stub(:save).and_return(false)
post :create, {:fetmeeting => { "tnlist" => "invalid value" }}, valid_session
response.should render_template("new")
end
end
end
describe "PUT update" do
describe "with valid params" do
it "updates the requested fetmeeting" do
fetmeeting = Fetmeeting.create! valid_attributes
# Assuming there are no other fetmeetings in the database, this
# specifies that the Fetmeeting created on the previous line
# receives the :update_attributes message with whatever params are
# submitted in the request.
Fetmeeting.any_instance.should_receive(:update_attributes).with({ "tnlist" => "MyText" })
put :update, {:id => fetmeeting.to_param, :fetmeeting => { "tnlist" => "MyText" }}, valid_session
end
it "assigns the requested fetmeeting as @fetmeeting" do
fetmeeting = Fetmeeting.create! valid_attributes
put :update, {:id => fetmeeting.to_param, :fetmeeting => valid_attributes}, valid_session
assigns(:fetmeeting).should eq(fetmeeting)
end
it "redirects to the fetmeeting" do
fetmeeting = Fetmeeting.create! valid_attributes
put :update, {:id => fetmeeting.to_param, :fetmeeting => valid_attributes}, valid_session
response.should redirect_to(fetmeeting)
end
end
describe "with invalid params" do
it "assigns the fetmeeting as @fetmeeting" do
fetmeeting = Fetmeeting.create! valid_attributes
# Trigger the behavior that occurs when invalid params are submitted
Fetmeeting.any_instance.stub(:save).and_return(false)
put :update, {:id => fetmeeting.to_param, :fetmeeting => { "tnlist" => "invalid value" }}, valid_session
assigns(:fetmeeting).should eq(fetmeeting)
end
it "re-renders the 'edit' template" do
fetmeeting = Fetmeeting.create! valid_attributes
# Trigger the behavior that occurs when invalid params are submitted
Fetmeeting.any_instance.stub(:save).and_return(false)
put :update, {:id => fetmeeting.to_param, :fetmeeting => { "tnlist" => "invalid value" }}, valid_session
response.should render_template("edit")
end
end
end
describe "DELETE destroy" do
it "destroys the requested fetmeeting" do
fetmeeting = Fetmeeting.create! valid_attributes
expect {
delete :destroy, {:id => fetmeeting.to_param}, valid_session
}.to change(Fetmeeting, :count).by(-1)
end
it "redirects to the fetmeetings list" do
fetmeeting = Fetmeeting.create! valid_attributes
delete :destroy, {:id => fetmeeting.to_param}, valid_session
response.should redirect_to(fetmeetings_url)
end
end
end

View File

@@ -0,0 +1,160 @@
require 'spec_helper'
# This spec was generated by rspec-rails when you ran the scaffold generator.
# It demonstrates how one might use RSpec to specify the controller code that
# was generated by Rails when you ran the scaffold generator.
#
# It assumes that the implementation code is generated by the rails scaffold
# generator. If you are using any extension libraries to generate different
# controller code, this generated spec may or may not pass.
#
# It only uses APIs available in rails and/or rspec-rails. There are a number
# of tools you can use to make these specs even more expressive, but we're
# sticking to rails and rspec-rails APIs to keep things simple and stable.
#
# Compared to earlier versions of this generator, there is very limited use of
# stubs and message expectations in this spec. Stubs are only used when there
# is no simpler way to get a handle on the object needed for the example.
# Message expectations are only used when there is no simpler way to specify
# that an instance is receiving a specific message.
describe FetmeetingtopsController do
# This should return the minimal set of attributes required to create a valid
# Fetmeetingtop. As you add validations to Fetmeetingtop, be sure to
# adjust the attributes here as well.
let(:valid_attributes) { { "title" => "MyString" } }
# This should return the minimal set of values that should be in the session
# in order to pass any filters (e.g. authentication) defined in
# FetmeetingtopsController. Be sure to keep this updated too.
let(:valid_session) { {} }
describe "GET index" do
it "assigns all fetmeetingtops as @fetmeetingtops" do
fetmeetingtop = Fetmeetingtop.create! valid_attributes
get :index, {}, valid_session
assigns(:fetmeetingtops).should eq([fetmeetingtop])
end
end
describe "GET show" do
it "assigns the requested fetmeetingtop as @fetmeetingtop" do
fetmeetingtop = Fetmeetingtop.create! valid_attributes
get :show, {:id => fetmeetingtop.to_param}, valid_session
assigns(:fetmeetingtop).should eq(fetmeetingtop)
end
end
describe "GET new" do
it "assigns a new fetmeetingtop as @fetmeetingtop" do
get :new, {}, valid_session
assigns(:fetmeetingtop).should be_a_new(Fetmeetingtop)
end
end
describe "GET edit" do
it "assigns the requested fetmeetingtop as @fetmeetingtop" do
fetmeetingtop = Fetmeetingtop.create! valid_attributes
get :edit, {:id => fetmeetingtop.to_param}, valid_session
assigns(:fetmeetingtop).should eq(fetmeetingtop)
end
end
describe "POST create" do
describe "with valid params" do
it "creates a new Fetmeetingtop" do
expect {
post :create, {:fetmeetingtop => valid_attributes}, valid_session
}.to change(Fetmeetingtop, :count).by(1)
end
it "assigns a newly created fetmeetingtop as @fetmeetingtop" do
post :create, {:fetmeetingtop => valid_attributes}, valid_session
assigns(:fetmeetingtop).should be_a(Fetmeetingtop)
assigns(:fetmeetingtop).should be_persisted
end
it "redirects to the created fetmeetingtop" do
post :create, {:fetmeetingtop => valid_attributes}, valid_session
response.should redirect_to(Fetmeetingtop.last)
end
end
describe "with invalid params" do
it "assigns a newly created but unsaved fetmeetingtop as @fetmeetingtop" do
# Trigger the behavior that occurs when invalid params are submitted
Fetmeetingtop.any_instance.stub(:save).and_return(false)
post :create, {:fetmeetingtop => { "title" => "invalid value" }}, valid_session
assigns(:fetmeetingtop).should be_a_new(Fetmeetingtop)
end
it "re-renders the 'new' template" do
# Trigger the behavior that occurs when invalid params are submitted
Fetmeetingtop.any_instance.stub(:save).and_return(false)
post :create, {:fetmeetingtop => { "title" => "invalid value" }}, valid_session
response.should render_template("new")
end
end
end
describe "PUT update" do
describe "with valid params" do
it "updates the requested fetmeetingtop" do
fetmeetingtop = Fetmeetingtop.create! valid_attributes
# Assuming there are no other fetmeetingtops in the database, this
# specifies that the Fetmeetingtop created on the previous line
# receives the :update_attributes message with whatever params are
# submitted in the request.
Fetmeetingtop.any_instance.should_receive(:update_attributes).with({ "title" => "MyString" })
put :update, {:id => fetmeetingtop.to_param, :fetmeetingtop => { "title" => "MyString" }}, valid_session
end
it "assigns the requested fetmeetingtop as @fetmeetingtop" do
fetmeetingtop = Fetmeetingtop.create! valid_attributes
put :update, {:id => fetmeetingtop.to_param, :fetmeetingtop => valid_attributes}, valid_session
assigns(:fetmeetingtop).should eq(fetmeetingtop)
end
it "redirects to the fetmeetingtop" do
fetmeetingtop = Fetmeetingtop.create! valid_attributes
put :update, {:id => fetmeetingtop.to_param, :fetmeetingtop => valid_attributes}, valid_session
response.should redirect_to(fetmeetingtop)
end
end
describe "with invalid params" do
it "assigns the fetmeetingtop as @fetmeetingtop" do
fetmeetingtop = Fetmeetingtop.create! valid_attributes
# Trigger the behavior that occurs when invalid params are submitted
Fetmeetingtop.any_instance.stub(:save).and_return(false)
put :update, {:id => fetmeetingtop.to_param, :fetmeetingtop => { "title" => "invalid value" }}, valid_session
assigns(:fetmeetingtop).should eq(fetmeetingtop)
end
it "re-renders the 'edit' template" do
fetmeetingtop = Fetmeetingtop.create! valid_attributes
# Trigger the behavior that occurs when invalid params are submitted
Fetmeetingtop.any_instance.stub(:save).and_return(false)
put :update, {:id => fetmeetingtop.to_param, :fetmeetingtop => { "title" => "invalid value" }}, valid_session
response.should render_template("edit")
end
end
end
describe "DELETE destroy" do
it "destroys the requested fetmeetingtop" do
fetmeetingtop = Fetmeetingtop.create! valid_attributes
expect {
delete :destroy, {:id => fetmeetingtop.to_param}, valid_session
}.to change(Fetmeetingtop, :count).by(-1)
end
it "redirects to the fetmeetingtops list" do
fetmeetingtop = Fetmeetingtop.create! valid_attributes
delete :destroy, {:id => fetmeetingtop.to_param}, valid_session
response.should redirect_to(fetmeetingtops_url)
end
end
end

View File

@@ -0,0 +1,8 @@
# Read about factories at https://github.com/thoughtbot/factory_girl
FactoryGirl.define do
factory :fetmeeting do
tnlist "MyText"
typ 1
end
end

View File

@@ -0,0 +1,11 @@
# Read about factories at https://github.com/thoughtbot/factory_girl
FactoryGirl.define do
factory :fetmeetingtop do
title "MyString"
text "MyText"
discussion "MyText"
ersteller "MyString"
fetmeeting_id 1
end
end

View File

@@ -0,0 +1,15 @@
require 'spec_helper'
# Specs in this file have access to a helper object that includes
# the FetmeetingsHelper. For example:
#
# describe FetmeetingsHelper do
# describe "string concat" do
# it "concats two strings with spaces" do
# expect(helper.concat_strings("this","that")).to eq("this that")
# end
# end
# end
describe FetmeetingsHelper do
pending "add some examples to (or delete) #{__FILE__}"
end

View File

@@ -0,0 +1,15 @@
require 'spec_helper'
# Specs in this file have access to a helper object that includes
# the FetmeetingtopsHelper. For example:
#
# describe FetmeetingtopsHelper do
# describe "string concat" do
# it "concats two strings with spaces" do
# expect(helper.concat_strings("this","that")).to eq("this that")
# end
# end
# end
describe FetmeetingtopsHelper do
pending "add some examples to (or delete) #{__FILE__}"
end

View File

@@ -0,0 +1,5 @@
require 'spec_helper'
describe Fetmeeting do
pending "add some examples to (or delete) #{__FILE__}"
end

View File

@@ -0,0 +1,5 @@
require 'spec_helper'
describe Fetmeetingtop do
pending "add some examples to (or delete) #{__FILE__}"
end

View File

@@ -0,0 +1,11 @@
require 'spec_helper'
describe "Fetmeetings" do
describe "GET /fetmeetings" do
it "works! (now write some real specs)" do
# Run the generator again with the --webrat flag if you want to use webrat methods/matchers
get fetmeetings_path
response.status.should be(200)
end
end
end

View File

@@ -0,0 +1,11 @@
require 'spec_helper'
describe "Fetmeetingtops" do
describe "GET /fetmeetingtops" do
it "works! (now write some real specs)" do
# Run the generator again with the --webrat flag if you want to use webrat methods/matchers
get fetmeetingtops_path
response.status.should be(200)
end
end
end

View File

@@ -0,0 +1,35 @@
require "spec_helper"
describe FetmeetingsController do
describe "routing" do
it "routes to #index" do
get("/fetmeetings").should route_to("fetmeetings#index")
end
it "routes to #new" do
get("/fetmeetings/new").should route_to("fetmeetings#new")
end
it "routes to #show" do
get("/fetmeetings/1").should route_to("fetmeetings#show", :id => "1")
end
it "routes to #edit" do
get("/fetmeetings/1/edit").should route_to("fetmeetings#edit", :id => "1")
end
it "routes to #create" do
post("/fetmeetings").should route_to("fetmeetings#create")
end
it "routes to #update" do
put("/fetmeetings/1").should route_to("fetmeetings#update", :id => "1")
end
it "routes to #destroy" do
delete("/fetmeetings/1").should route_to("fetmeetings#destroy", :id => "1")
end
end
end

View File

@@ -0,0 +1,35 @@
require "spec_helper"
describe FetmeetingtopsController do
describe "routing" do
it "routes to #index" do
get("/fetmeetingtops").should route_to("fetmeetingtops#index")
end
it "routes to #new" do
get("/fetmeetingtops/new").should route_to("fetmeetingtops#new")
end
it "routes to #show" do
get("/fetmeetingtops/1").should route_to("fetmeetingtops#show", :id => "1")
end
it "routes to #edit" do
get("/fetmeetingtops/1/edit").should route_to("fetmeetingtops#edit", :id => "1")
end
it "routes to #create" do
post("/fetmeetingtops").should route_to("fetmeetingtops#create")
end
it "routes to #update" do
put("/fetmeetingtops/1").should route_to("fetmeetingtops#update", :id => "1")
end
it "routes to #destroy" do
delete("/fetmeetingtops/1").should route_to("fetmeetingtops#destroy", :id => "1")
end
end
end

View File

@@ -0,0 +1,20 @@
require 'spec_helper'
describe "fetmeetings/edit" do
before(:each) do
@fetmeeting = assign(:fetmeeting, stub_model(Fetmeeting,
:tnlist => "MyText",
:typ => 1
))
end
it "renders the edit fetmeeting form" do
render
# Run the generator again with the --webrat flag if you want to use webrat matchers
assert_select "form[action=?][method=?]", fetmeeting_path(@fetmeeting), "post" do
assert_select "textarea#fetmeeting_tnlist[name=?]", "fetmeeting[tnlist]"
assert_select "input#fetmeeting_typ[name=?]", "fetmeeting[typ]"
end
end
end

View File

@@ -0,0 +1,23 @@
require 'spec_helper'
describe "fetmeetings/index" do
before(:each) do
assign(:fetmeetings, [
stub_model(Fetmeeting,
:tnlist => "MyText",
:typ => 1
),
stub_model(Fetmeeting,
:tnlist => "MyText",
:typ => 1
)
])
end
it "renders a list of fetmeetings" do
render
# Run the generator again with the --webrat flag if you want to use webrat matchers
assert_select "tr>td", :text => "MyText".to_s, :count => 2
assert_select "tr>td", :text => 1.to_s, :count => 2
end
end

View File

@@ -0,0 +1,20 @@
require 'spec_helper'
describe "fetmeetings/new" do
before(:each) do
assign(:fetmeeting, stub_model(Fetmeeting,
:tnlist => "MyText",
:typ => 1
).as_new_record)
end
it "renders new fetmeeting form" do
render
# Run the generator again with the --webrat flag if you want to use webrat matchers
assert_select "form[action=?][method=?]", fetmeetings_path, "post" do
assert_select "textarea#fetmeeting_tnlist[name=?]", "fetmeeting[tnlist]"
assert_select "input#fetmeeting_typ[name=?]", "fetmeeting[typ]"
end
end
end

View File

@@ -0,0 +1,17 @@
require 'spec_helper'
describe "fetmeetings/show" do
before(:each) do
@fetmeeting = assign(:fetmeeting, stub_model(Fetmeeting,
:tnlist => "MyText",
:typ => 1
))
end
it "renders attributes in <p>" do
render
# Run the generator again with the --webrat flag if you want to use webrat matchers
rendered.should match(/MyText/)
rendered.should match(/1/)
end
end

View File

@@ -0,0 +1,26 @@
require 'spec_helper'
describe "fetmeetingtops/edit" do
before(:each) do
@fetmeetingtop = assign(:fetmeetingtop, stub_model(Fetmeetingtop,
:title => "MyString",
:text => "MyText",
:discussion => "MyText",
:ersteller => "MyString",
:fetmeeting_id => 1
))
end
it "renders the edit fetmeetingtop form" do
render
# Run the generator again with the --webrat flag if you want to use webrat matchers
assert_select "form[action=?][method=?]", fetmeetingtop_path(@fetmeetingtop), "post" do
assert_select "input#fetmeetingtop_title[name=?]", "fetmeetingtop[title]"
assert_select "textarea#fetmeetingtop_text[name=?]", "fetmeetingtop[text]"
assert_select "textarea#fetmeetingtop_discussion[name=?]", "fetmeetingtop[discussion]"
assert_select "input#fetmeetingtop_ersteller[name=?]", "fetmeetingtop[ersteller]"
assert_select "input#fetmeetingtop_fetmeeting_id[name=?]", "fetmeetingtop[fetmeeting_id]"
end
end
end

View File

@@ -0,0 +1,32 @@
require 'spec_helper'
describe "fetmeetingtops/index" do
before(:each) do
assign(:fetmeetingtops, [
stub_model(Fetmeetingtop,
:title => "Title",
:text => "MyText",
:discussion => "MyText",
:ersteller => "Ersteller",
:fetmeeting_id => 1
),
stub_model(Fetmeetingtop,
:title => "Title",
:text => "MyText",
:discussion => "MyText",
:ersteller => "Ersteller",
:fetmeeting_id => 1
)
])
end
it "renders a list of fetmeetingtops" do
render
# Run the generator again with the --webrat flag if you want to use webrat matchers
assert_select "tr>td", :text => "Title".to_s, :count => 2
assert_select "tr>td", :text => "MyText".to_s, :count => 2
assert_select "tr>td", :text => "MyText".to_s, :count => 2
assert_select "tr>td", :text => "Ersteller".to_s, :count => 2
assert_select "tr>td", :text => 1.to_s, :count => 2
end
end

View File

@@ -0,0 +1,26 @@
require 'spec_helper'
describe "fetmeetingtops/new" do
before(:each) do
assign(:fetmeetingtop, stub_model(Fetmeetingtop,
:title => "MyString",
:text => "MyText",
:discussion => "MyText",
:ersteller => "MyString",
:fetmeeting_id => 1
).as_new_record)
end
it "renders new fetmeetingtop form" do
render
# Run the generator again with the --webrat flag if you want to use webrat matchers
assert_select "form[action=?][method=?]", fetmeetingtops_path, "post" do
assert_select "input#fetmeetingtop_title[name=?]", "fetmeetingtop[title]"
assert_select "textarea#fetmeetingtop_text[name=?]", "fetmeetingtop[text]"
assert_select "textarea#fetmeetingtop_discussion[name=?]", "fetmeetingtop[discussion]"
assert_select "input#fetmeetingtop_ersteller[name=?]", "fetmeetingtop[ersteller]"
assert_select "input#fetmeetingtop_fetmeeting_id[name=?]", "fetmeetingtop[fetmeeting_id]"
end
end
end

View File

@@ -0,0 +1,23 @@
require 'spec_helper'
describe "fetmeetingtops/show" do
before(:each) do
@fetmeetingtop = assign(:fetmeetingtop, stub_model(Fetmeetingtop,
:title => "Title",
:text => "MyText",
:discussion => "MyText",
:ersteller => "Ersteller",
:fetmeeting_id => 1
))
end
it "renders attributes in <p>" do
render
# Run the generator again with the --webrat flag if you want to use webrat matchers
rendered.should match(/Title/)
rendered.should match(/MyText/)
rendered.should match(/MyText/)
rendered.should match(/Ersteller/)
rendered.should match(/1/)
end
end