• R/O
  • HTTP
  • SSH
  • HTTPS

コミット

タグ
未設定

よく使われているワード(クリックで追加)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

コミットメタ情報

リビジョン51329f5ce8de435ea1de63035277199531bd1a42 (tree)
日時2013-04-04 00:03:25
作者SHIMADA Keiki <shimada.cake@gmai...>
コミッターSHIMADA Keiki

ログメッセージ

#10 主にslideのshow画面を中心に実装

変更サマリ

差分

--- a/app/assets/javascripts/application.js
+++ b/app/assets/javascripts/application.js
@@ -13,4 +13,3 @@
1313 //= require jquery
1414 //= require jquery_ujs
1515 //= require jquery-ui
16-//= require_tree .
--- /dev/null
+++ b/app/assets/stylesheets/slides.css.scss
@@ -0,0 +1,18 @@
1+// Place all the styles related to the Slides controller here.
2+// They will automatically be included in application.css.
3+// You can use Sass (SCSS) here: http://sass-lang.com/
4+
5+#thumbnail-area {
6+ margin: 10px;
7+ width: 420px;
8+ float: left;
9+ font-size: 12px;
10+}
11+
12+.thumbnail {
13+ margin: 10px;
14+ padding: 3px;
15+ width: 400px;
16+ width: 300px;
17+ border: 1px dashed white;
18+}
--- a/app/controllers/slides_controller.rb
+++ b/app/controllers/slides_controller.rb
@@ -2,8 +2,7 @@ class SlidesController < ApplicationController
22 # GET /slides
33 # GET /slides.json
44 def index
5- @slides = Slide.all
6- @recents = []
5+ @recents = Slide.recents
76
87 respond_to do |format|
98 format.html # index.html.erb
--- a/app/models/slide.rb
+++ b/app/models/slide.rb
@@ -1,3 +1,20 @@
11 class Slide < ActiveRecord::Base
2+ acts_as_paranoid
23 attr_accessible :author, :body, :deleted_at, :title
4+
5+ def pages
6+ normalize_eol(body.to_s).split(/\n{4,}/)
7+ end
8+
9+ def outline
10+ pages.map{ |page| page.gsub(/\n.*/, '') }
11+ end
12+
13+ def self.recents
14+ self.order('updated_at DESC').limit(10)
15+ end
16+
17+ def normalize_eol(str)
18+ str.gsub(/\r\n/,"\n").gsub(/\r/, "\n")
19+ end
320 end
--- a/app/views/layouts/application.html.erb
+++ b/app/views/layouts/application.html.erb
@@ -4,6 +4,7 @@
44 <title><%=h yield(:title) %></title>
55 <%= stylesheet_link_tag "application", :media => "all" %>
66 <%= javascript_include_tag "application" %>
7+ <%= javascript_include_tag params[:controller] %>
78 <%= csrf_meta_tags %>
89 <%= yield :header %>
910 </head>
--- a/app/views/slides/_form.html.erb
+++ b/app/views/slides/_form.html.erb
@@ -23,10 +23,6 @@
2323 <%= f.label :author %><br />
2424 <%= f.text_field :author %>
2525 </div>
26- <div class="field">
27- <%= f.label :deleted_at %><br />
28- <%= f.datetime_select :deleted_at %>
29- </div>
3026 <div class="actions">
3127 <%= f.submit %>
3228 </div>
--- a/app/views/slides/_list.html.erb
+++ b/app/views/slides/_list.html.erb
@@ -1,3 +1,4 @@
1+<%= paginate @slides %>
12 <table>
23 <tr>
34 <th>Id</th>
@@ -8,15 +9,15 @@
89 <th></th>
910 </tr>
1011
11- <%= paginate @slides %>
1212 <% @slides.each do |slide| %>
1313 <tr>
1414 <td><%= slide.id %></td>
15- <td><%= slide.title %></td>
15+ <td><%= link_to slide.title, slide %></td>
1616 <td><%= slide.updated_at %></td>
1717 <td><%= link_to 'Show', slide %></td>
1818 <td><%= link_to 'Edit', edit_slide_path(slide) %></td>
1919 <td><%= link_to 'Destroy', slide, method: :delete, data: { confirm: 'Are you sure?' } %></td>
2020 </tr>
2121 <% end %>
22-</table>
\ No newline at end of file
22+</table>
23+<%= paginate @slides %>
--- a/app/views/slides/show.html.erb
+++ b/app/views/slides/show.html.erb
@@ -1,25 +1,24 @@
11 <p id="notice"><%= notice %></p>
22
3-<p>
4- <b>Title:</b>
5- <%= @slide.title %>
6-</p>
3+<div id="thumbnail-area">
4+<%- @slide.pages.each do |page| -%>
5+<pre class="thumbnail"><%= page %></pre>
6+<%- end -%>
7+</div>
8+<script type="text/javascript">
9+ $('#thumbnail-area').draggable({axis:'y', revert: true, cursor:'move'});
10+</script>
711
8-<p>
9- <b>Body:</b>
10- <%=simple_format @slide.body %>
11-</p>
12-
13-<p>
14- <b>Author:</b>
15- <%= @slide.author %>
16-</p>
17-
18-<p>
19- <b>Deleted at:</b>
20- <%= @slide.deleted_at %>
21-</p>
12+<div id="controll-area">
13+ <p>『 <%= @slide.title %>』</p>
2214
15+<%- @slide.outline.each_with_index do |line, idx| -%>
16+ <p><%= link_to_function(line,
17+ "change_remote(#{idx}, '#{detail_slide_url(@slide)}')",
18+ :id => "change-button-#{idx}",
19+ :class => 'change-button')%></p>
20+<%- end -%>
2321
2422 <%= link_to 'Edit', edit_slide_path(@slide) %> |
2523 <%= link_to 'Back', slides_path %>
24+</div>
--- a/app/views/songs/detail.html.erb
+++ b/app/views/songs/detail.html.erb
@@ -11,9 +11,10 @@
1111
1212 <script type="text/javascript">
1313 $(document).keydown(function(event) {
14- switch(event.keyCode) {
15- case 38: return prev();
16- case 40: return next();
14+ if (event.keyCode == 38) {
15+ return prev();
16+ } else if (event.keyCode == 40) {
17+ return next();
1718 }
1819 });
1920 </script>
\ No newline at end of file
--- a/app/views/songs/show.html.erb
+++ b/app/views/songs/show.html.erb
@@ -4,7 +4,7 @@
44 <div id="boxA">
55 <pre class='small'><%= suppress_ruby @song.words %></pre>
66 <script type="text/javascript">
7- $('pre.small').draggable({axis:'y', cursor:'move'});
7+ $('pre.small').draggable({axis:'y', revert: true, cursor:'move'});
88 </script>
99 </div>
1010
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -1,13 +1,14 @@
11 Ginmaku::Application.routes.draw do
22 resources :slides do
3+ member do
4+ get :detail
5+ end
6+
37 collection do
48 get :list
59 end
610 end
711
8-
9- resources :preaches
10-
1112 resources :songs do
1213 member do
1314 get :detail