Skip to content

Commit

Permalink
closes #155
Browse files Browse the repository at this point in the history
  • Loading branch information
Lincoln Stewart committed Mar 30, 2014
1 parent 874e210 commit fef30f0
Show file tree
Hide file tree
Showing 10 changed files with 100 additions and 8 deletions.
29 changes: 29 additions & 0 deletions app/controllers/source_controller.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# shows and adds sources
class SourceController < ApplicationController
def show
@curriculum = Curricula.find_by_id(params[:id])
@sources = Source.grab_sources_for_curriculum @curriculum
end

def edit
@curriculum = Curricula.find_by_id(params[:id])
@source = Source.new(source_params)
@source.creator = current_user
@source.curricula = @curriculum
if @source.save
flash[:success] = 'Success'
else
flash[:danger] = 'Error! Try submitting again'
end
@sources = Source.grab_sources_for_curriculum @curriculum
respond_to do |format|
format.js
end
end

private

def source_params
params.require(:source).permit(:link, :source_tag)
end
end
10 changes: 8 additions & 2 deletions app/models/source.rb
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,12 @@
# t.datetime "written_at"
# end
class Source < ActiveRecord::Base
belongs_to :curricula, foreign_key: 'curriculum_id'
belongs_to :creator, foreign_key: 'creator_id', class_name: 'User'
belongs_to :curricula
belongs_to :creator, class_name: 'User'

class << self
def grab_sources_for_curriculum(curriculum)
where('sources.curricula_id = ?', curriculum)
end
end
end
4 changes: 1 addition & 3 deletions app/views/curricula/show.html.erb
Original file line number Diff line number Diff line change
Expand Up @@ -87,9 +87,7 @@
</div>

<div class="row" style="padding: 10px;">
<a href='' class="btn btn-success">
Sources
</a>
<%= link_to "Sources", source_show_path(:id => @curriculum.id), class: "btn btn-success" %>
</div>

<div class="row" style="padding: 10px;">
Expand Down
9 changes: 9 additions & 0 deletions app/views/source/_sources.html.erb
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
<% unless @sources.blank? %>
<% @sources.each do |s| %>
<div class="list-group-item">
<a class="list-group-item-heading" href=<%= s.link %>>
<%= s.source_tag %>
</a>
</div>
<% end %>
<% end %>
4 changes: 4 additions & 0 deletions app/views/source/edit.js.erb
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
$('#status').html("<%= escape_javascript(render :partial => 'shared/flash_messages') %>");
$('#source-list').html("<%= escape_javascript(render :partial => 'sources') %>");
$('#source_link').val("");
$('#source_source_tag').val("");
37 changes: 37 additions & 0 deletions app/views/source/show.html.erb
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
<div class="container">
<div class="row">
<div class="col-md-3">
<div id="status">
</div>
<%= form_for :source, :url => source_edit_path(:id => @curriculum.id), :role => "form", :class => "form", :method => :post, :remote => true do |f| %>
<div class="form-group">
<%= f.text_field :link, type: "text", placeholder: "url for source", class: "form-control", :autofocus => true %>
</div>
<div class="form-group">
<%= f.text_field :source_tag, type: "text", placeholder: "tag for source", class: "form-control", :autofocus => true %>
</div>
<div class="form-group">
<%= f.submit "add source", class: "btn btn-primary pull-right" %>
</div>
<% end %>
</div>
<div class="col-md-9">
<div class="panel panel-info">
<div class="panel-heading">
Sources
</div>
<div class="list-group" id="source-list">
<% unless @sources.blank? %>
<% @sources.each do |s| %>
<div class="list-group-item">
<a class="list-group-item-heading" href=<%= s.link %>>
<%= s.source_tag %>
</a>
</div>
<% end %>
<% end %>
</div>
</div>
</div>
</div>
</div>
3 changes: 3 additions & 0 deletions config/routes.rb
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,9 @@

get 'curricula/revert_save/:id/:commit_id', to: 'curricula#revert_save', as: :revert_save

get 'source/show/:id' => 'source#show', as: :source_show
post 'source/edit' => 'source#edit', as: :source_edit

# The priority is based upon order of creation: first created -> highest priority.
# See how all your routes lay out with "rake routes".

Expand Down
4 changes: 2 additions & 2 deletions db/fixtures/user.rb
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@
User.seed do |s|
s.id = 8
s.username = 'lestewar'
s.email = 'lestewar@asu.edu'
s.name = 'Lincoln Stewart'
s.email = 'fsdefes@sef.com'
s.name = 'LES'
s.password = '12345'
end
5 changes: 5 additions & 0 deletions db/migrate/20140329224756_add_link_to_source.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
class AddLinkToSource < ActiveRecord::Migration
def change
add_column :sources, :link, :text
end
end
3 changes: 2 additions & 1 deletion db/schema.rb
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
#
# It's strongly recommended that you check this file into your version control system.

ActiveRecord::Schema.define(version: 20140323212016) do
ActiveRecord::Schema.define(version: 20140329224756) do

create_table "comments", force: true do |t|
t.integer "creator_id", null: false
Expand Down Expand Up @@ -79,6 +79,7 @@
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
t.datetime "written_at"
t.text "link"
end

create_table "user_curriculas", force: true do |t|
Expand Down

0 comments on commit fef30f0

Please sign in to comment.