simple_showcase_admin 0.0.3 → 0.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -29,24 +29,21 @@ module SimpleShowcaseAdmin
29
29
  def update
30
30
  @category = SimpleShowcaseAdmin::Category.find(params[:id])
31
31
  if @category.update_attributes(params[:category])
32
- redirect_to category_path(@category), notice: 'Successfully updated catagory'
32
+ redirect_to category_path(@category), notice: 'Successfully updated category'
33
33
  else
34
34
  render :edit
35
35
  end
36
36
  end
37
37
 
38
38
  def destroy
39
- @catagory = SimpleShowcaseAdmin::Category.find(params[:id])
40
- @catagory.destroy
39
+ @category = SimpleShowcaseAdmin::Category.find(params[:id])
40
+ @category.destroy
41
41
  redirect_to categories_path
42
42
  end
43
43
 
44
44
  def sort
45
45
  @category = SimpleShowcaseAdmin::Category.find(params[:id])
46
-
47
46
  @category.row_order_position = params[:row_order_position]
48
- puts "\n\n\n\n\n@category"
49
- puts @category.inspect
50
47
  @category.save!
51
48
 
52
49
  render nothing: true
@@ -0,0 +1,52 @@
1
+ module SimpleShowcaseAdmin
2
+ class PagesController < SimpleShowcaseAdmin::ApplicationController
3
+ def index
4
+ @pages = SimpleShowcaseAdmin::Page.rank(:row_order).page(params[:page]).per(10)
5
+ end
6
+
7
+ def new
8
+ @page = SimpleShowcaseAdmin::Page.new
9
+ end
10
+
11
+ def edit
12
+ @page = SimpleShowcaseAdmin::Page.find(params[:id])
13
+ end
14
+
15
+ def show
16
+ @page = SimpleShowcaseAdmin::Page.find(params[:id])
17
+ end
18
+
19
+ def create
20
+ @page = SimpleShowcaseAdmin::Page.new(params[:page])
21
+ if @page.save
22
+ redirect_to [ @page], notice: 'Successfully created new page'
23
+ else
24
+ render :new
25
+ end
26
+ end
27
+
28
+ def update
29
+ @page = SimpleShowcaseAdmin::Page.find(params[:id])
30
+ if @page.update_attributes(params[:page])
31
+ redirect_to page_path(@page), notice: 'Successfully updated page'
32
+ else
33
+ render :edit
34
+ end
35
+ end
36
+
37
+ def destroy
38
+ @page = SimpleShowcaseAdmin::Page.find(params[:id])
39
+ @page.destroy
40
+ redirect_to pages_path
41
+ end
42
+
43
+ def sort
44
+ @page = SimpleShowcaseAdmin::Page.find(params[:id])
45
+
46
+ @page.row_order_position = params[:row_order_position]
47
+ @page.save!
48
+
49
+ render nothing: true
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,28 @@
1
+ require 'friendly_id'
2
+ require 'redcarpet'
3
+
4
+ module SimpleShowcaseAdmin
5
+ class Page < ActiveRecord::Base
6
+ attr_accessible :text, :rendered_text, :title, :slug, :row_order_position
7
+
8
+ extend FriendlyId
9
+ friendly_id :title, use: :slugged
10
+
11
+ include RankedModel
12
+ ranks :row_order
13
+
14
+ validates_presence_of :title
15
+
16
+ before_save :render_body
17
+
18
+ private
19
+
20
+ def render_body
21
+ renderer = Redcarpet::Render::HTML.new
22
+ extensions = {filter_html: false, safe_links_only: true, hard_wrap: true, autolink: true, no_intra_emphasis: true}
23
+ redcarpet = Redcarpet::Markdown.new(renderer, extensions)
24
+ self.rendered_text = redcarpet.render self.text
25
+ end
26
+ end
27
+ end
28
+
@@ -16,12 +16,23 @@
16
16
  = link_to "Categories <b class='caret'></b>".html_safe, '#', :class => 'dropdown-toggle', "data-toggle" => "dropdown"
17
17
  %ul.dropdown-menu
18
18
  - if SimpleShowcaseAdmin::Category.all.count > 0
19
- %li= link_to 'Manage Categories', [ :categories]
19
+ %li= link_to 'Manage Categories', [:categories]
20
20
  %li.divider
21
21
  - else
22
- %li= link_to 'Create a Category', [:new, :category]
22
+ %li= link_to 'Create a Category', [:new, :category]
23
23
  - SimpleShowcaseAdmin::Category.all.each do |c|
24
- %li= link_to c.category, [ c]
24
+ %li= link_to c.category, [c]
25
+ %ul.nav
26
+ %li.dropdown
27
+ = link_to "Pages <b class='caret'></b>".html_safe, '#', :class => 'dropdown-toggle', "data-toggle" => "dropdown"
28
+ %ul.dropdown-menu
29
+ - if SimpleShowcaseAdmin::Page.all.count > 0
30
+ %li= link_to 'Manage Pages', [:pages]
31
+ %li.divider
32
+ - else
33
+ %li= link_to 'Create a Page', [:new, :page]
34
+ - SimpleShowcaseAdmin::Page.all.each do |p|
35
+ %li= link_to p.title, [p]
25
36
 
26
37
  - if SimpleShowcaseAdmin::Config.featured_image and !featured_photo_exists
27
38
  %li.warning.label.label-important(rel="popover" data-content="You can select an image to be featured by editing a product and selecting 'Featured?' for one of the associated images." data-original-title="Please Select An Image To Be Featured.")
@@ -0,0 +1,10 @@
1
+ %h1 Edit page
2
+ %br
3
+ %br
4
+ = simple_form_for(@page, :html => {:multipart => true, :class => 'form-horizontal'}, :url => page_path(@page)) do |f|
5
+ = f.error_notification
6
+ = f.input :title, input_html: { class: "span6" }
7
+ = f.input :text, input_html: { class: "span6" }
8
+ .form-actions
9
+ = f.button :submit, 'Save', :class => 'btn-primary'
10
+ = link_to 'Cancel', categories_path, class: 'btn'
@@ -0,0 +1,26 @@
1
+ %h1 Listing pages
2
+
3
+ = link_to 'New page', new_page_path, :class => 'btn-primary btn pull-right'
4
+
5
+ %br
6
+ %br
7
+
8
+ = paginate @pages
9
+
10
+ %table.table.table-bordered.table-striped#sortable{:data => {update_url: sort_pages_path}}
11
+ %thead
12
+ %tr
13
+ %th page
14
+ %th &nbsp
15
+
16
+ %tbody
17
+ - @pages.each do |page|
18
+ %tr{data: {item_id: "#{page.id}"}, class: 'item'}
19
+ %td= page.title
20
+ %td
21
+ = link_to 'View', page_path(page), :class => 'btn'
22
+ = link_to 'Edit', edit_page_path(page), :class => 'btn btn-primary'
23
+ = link_to 'Delete', page_path(page), :confirm => 'Are you sure?', :method => :delete, :class => 'btn btn-danger'
24
+
25
+ = paginate @pages
26
+
@@ -0,0 +1,10 @@
1
+ %h1 New Page
2
+ %br
3
+ %br
4
+ = simple_form_for([@page], :html => {:multipart => true, :class => 'form-horizontal'}) do |f|
5
+ = f.error_notification
6
+ = f.input :title, input_html: { class: "span6" }
7
+ = f.input :text, input_html: { class: "span6" }
8
+ .form-actions
9
+ = f.button :submit, 'Save', :class => 'btn-primary'
10
+ = link_to 'Cancel', pages_path, class: 'btn'
@@ -0,0 +1,23 @@
1
+ %h1 #{@page.title.titleize} Page
2
+
3
+ %br
4
+ %br
5
+
6
+ %table.table.table-bordered.table-striped
7
+ %thead
8
+ %tr
9
+ %th page
10
+ %th Date Created
11
+ %th &nbsp
12
+
13
+ %tbody
14
+ %tr
15
+ %td= @page.title
16
+ %td=l @page.created_at
17
+ %td
18
+ = link_to 'Edit', edit_page_path(@page), :class => 'btn btn-primary'
19
+ = link_to 'Delete', page_path(@page), :confirm => 'Are you sure?', :method => :delete, :class => 'btn btn-danger'
20
+
21
+ %br
22
+ %br
23
+
data/config/routes.rb CHANGED
@@ -10,6 +10,10 @@ SimpleShowcaseAdmin::Engine.routes.draw do
10
10
  post :sort, on: :collection
11
11
  end
12
12
  end
13
+ resources :pages do
14
+ post :sort, on: :collection
15
+ end
16
+
13
17
  resources :details
14
18
  resources :sessions
15
19
  resources :password_resets, path: 'password-reset', as: 'password_resets'
@@ -0,0 +1,13 @@
1
+ class CreateSimpleShowcaseAdminPages < ActiveRecord::Migration
2
+ def change
3
+ create_table :simple_showcase_admin_pages do |t|
4
+ t.text :text
5
+ t.string :title
6
+ t.string :slug
7
+ t.integer :row_order
8
+
9
+ t.timestamps
10
+ end
11
+ add_index :simple_showcase_admin_pages, :slug
12
+ end
13
+ end
@@ -0,0 +1,5 @@
1
+ class AddRenderedTextToSimpleShowcaseAdminPages < ActiveRecord::Migration
2
+ def change
3
+ add_column :simple_showcase_admin_pages, :rendered_text, :text
4
+ end
5
+ end
@@ -1,3 +1,3 @@
1
1
  module SimpleShowcaseAdmin
2
- VERSION = "0.0.3"
2
+ VERSION = "0.0.4"
3
3
  end
@@ -0,0 +1,13 @@
1
+ # Read about fixtures at http://api.rubyonrails.org/classes/ActiveRecord/Fixtures.html
2
+
3
+ one:
4
+ text: MyText
5
+ title: MyString
6
+ slug: MyString
7
+ row_order: 1
8
+
9
+ two:
10
+ text: MyText
11
+ title: MyString
12
+ slug: MyString
13
+ row_order: 1
@@ -0,0 +1,9 @@
1
+ require 'test_helper'
2
+
3
+ module SimpleShowcaseAdmin
4
+ class PageTest < ActiveSupport::TestCase
5
+ # test "the truth" do
6
+ # assert true
7
+ # end
8
+ end
9
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: simple_showcase_admin
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.4
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-11-21 00:00:00.000000000 Z
12
+ date: 2013-11-22 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rails
@@ -363,6 +363,7 @@ files:
363
363
  - app/controllers/simple_showcase_admin/categories_controller.rb
364
364
  - app/controllers/simple_showcase_admin/details_controller.rb
365
365
  - app/controllers/simple_showcase_admin/items_controller.rb
366
+ - app/controllers/simple_showcase_admin/pages_controller.rb
366
367
  - app/controllers/simple_showcase_admin/password_resets_controller.rb
367
368
  - app/controllers/simple_showcase_admin/sessions_controller.rb
368
369
  - app/helpers/simple_showcase_admin/application_helper.rb
@@ -370,6 +371,7 @@ files:
370
371
  - app/mailers/simple_showcase_admin/user_mailer.rb
371
372
  - app/models/simple_showcase_admin/category.rb
372
373
  - app/models/simple_showcase_admin/item.rb
374
+ - app/models/simple_showcase_admin/page.rb
373
375
  - app/models/simple_showcase_admin/photo.rb
374
376
  - app/models/simple_showcase_admin/user.rb
375
377
  - app/uploaders/image_uploader.rb
@@ -385,6 +387,10 @@ files:
385
387
  - app/views/simple_showcase_admin/items/index.html.haml
386
388
  - app/views/simple_showcase_admin/items/new.html.haml
387
389
  - app/views/simple_showcase_admin/items/show.html.haml
390
+ - app/views/simple_showcase_admin/pages/edit.html.haml
391
+ - app/views/simple_showcase_admin/pages/index.html.haml
392
+ - app/views/simple_showcase_admin/pages/new.html.haml
393
+ - app/views/simple_showcase_admin/pages/show.html.haml
388
394
  - app/views/simple_showcase_admin/password_resets/edit.html.haml
389
395
  - app/views/simple_showcase_admin/password_resets/new.html.haml
390
396
  - app/views/simple_showcase_admin/sessions/new.html.haml
@@ -408,6 +414,8 @@ files:
408
414
  - db/migrate/014_add_landscape_to_photos.rb
409
415
  - db/migrate/015_add_row_order_to_category.rb
410
416
  - db/migrate/016_add_row_order_to_items.rb
417
+ - db/migrate/017_create_simple_showcase_admin_pages.rb
418
+ - db/migrate/018_add_rendered_text_to_simple_showcase_admin_pages.rb
411
419
  - lib/generators/simple_showcase_admin/install_generator.rb
412
420
  - lib/simple_showcase_admin/configuration.rb
413
421
  - lib/simple_showcase_admin/engine.rb
@@ -445,9 +453,11 @@ files:
445
453
  - test/dummy/Rakefile
446
454
  - test/dummy/README.rdoc
447
455
  - test/dummy/script/rails
456
+ - test/fixtures/simple_showcase_admin/pages.yml
448
457
  - test/integration/navigation_test.rb
449
458
  - test/simple_showcase_admin_test.rb
450
459
  - test/test_helper.rb
460
+ - test/unit/simple_showcase_admin/page_test.rb
451
461
  homepage:
452
462
  licenses: []
453
463
  post_install_message:
@@ -501,6 +511,8 @@ test_files:
501
511
  - test/dummy/Rakefile
502
512
  - test/dummy/README.rdoc
503
513
  - test/dummy/script/rails
514
+ - test/fixtures/simple_showcase_admin/pages.yml
504
515
  - test/integration/navigation_test.rb
505
516
  - test/simple_showcase_admin_test.rb
506
517
  - test/test_helper.rb
518
+ - test/unit/simple_showcase_admin/page_test.rb