Permalink
Browse files

Merge branch 'master' of github.com:sendagayarb/mokmok_2012-05-07

  • Loading branch information...
2 parents 57bdc56 + 980a751 commit 11ad475896ccfe8aeaffc94de775f954f308185b @srck srck committed May 9, 2012
Showing with 276 additions and 247 deletions.
  1. +13 −4 README.md
  2. +11 −0 fukajun/README.md
  3. +27 −0 fukajun/member_template/README.md
  4. +54 −0 ir3/README.md
  5. +17 −2 ogawaso/memo.md
  6. +2 −0 ogawaso/omniauth_study/.gitignore
  7. +3 −0 ogawaso/omniauth_study/Gemfile
  8. +3 −0 ogawaso/omniauth_study/app/assets/javascripts/sessions.js.coffee
  9. +3 −0 ogawaso/omniauth_study/app/assets/javascripts/top.js.coffee
  10. +3 −0 ogawaso/omniauth_study/app/assets/stylesheets/sessions.css.scss
  11. +3 −0 ogawaso/omniauth_study/app/assets/stylesheets/top.css.scss
  12. +14 −0 ogawaso/omniauth_study/app/controllers/application_controller.rb
  13. +18 −0 ogawaso/omniauth_study/app/controllers/sessions_controller.rb
  14. +4 −0 ogawaso/omniauth_study/app/controllers/top_controller.rb
  15. +2 −0 ogawaso/omniauth_study/app/helpers/sessions_helper.rb
  16. +2 −0 ogawaso/omniauth_study/app/helpers/top_helper.rb
  17. +15 −0 ogawaso/omniauth_study/app/models/user.rb
  18. +6 −0 ogawaso/omniauth_study/app/views/layouts/application.html.erb
  19. +1 −0 ogawaso/omniauth_study/app/views/top/index.html.erb
  20. +3 −0 ogawaso/omniauth_study/config/initializers/local_setting_sample.rb
  21. +5 −0 ogawaso/omniauth_study/config/initializers/omniauth.rb
  22. +8 −0 ogawaso/omniauth_study/config/routes.rb
  23. +13 −0 ogawaso/omniauth_study/db/migrate/20120507112233_create_users.rb
  24. +0 −241 ogawaso/omniauth_study/public/index.html
  25. +15 −0 ogawaso/omniauth_study/test/fixtures/users.yml
  26. +7 −0 ogawaso/omniauth_study/test/functional/sessions_controller_test.rb
  27. +9 −0 ogawaso/omniauth_study/test/functional/top_controller_test.rb
  28. +4 −0 ogawaso/omniauth_study/test/unit/helpers/sessions_helper_test.rb
  29. +4 −0 ogawaso/omniauth_study/test/unit/helpers/top_helper_test.rb
  30. +7 −0 ogawaso/omniauth_study/test/unit/user_test.rb
View
@@ -1,5 +1,7 @@
# mokmok_2012-05-07
+![sendagaya.rb logo](http://ppworks.info/images/sendagayarb100x100.png)
+
みんなで集まって、各自自分が勉強したいものとか、作りたいものをやりましょう!
毎回終わりの15分〜30分ぐらいにheroku devcenterの読書会もしようと思ってます。
@@ -8,6 +10,7 @@
* [facebookグループ](https://www.facebook.com/groups/132324356892674)
* [Sendagaya.rb #2](http://www.zusaar.com/event/281003)
+
# KPT
##Keep
* 開催できた。
@@ -21,11 +24,17 @@
* 時間が短い
* もじもじしてしまう
* 気軽なのかエッジなのか分からない
+* 毎回は飲む余裕ない
##Try
-* 最初にheroku devcenterの読書会をやる
- * 小規模でやってみる
+* 19:00〜 heroku devcenterの読書会をやる
+ * 小規模
+ * 任意参加
* 自己紹介を最初にやる
-* 19:00〜
-* 酒飲んでみる?
+* 酒飲んでみる?(自由)
* 初心者向け感を出そう
+* CCレモンを机において写真撮ろう
+
+# togetter
+
+* http://togetter.com/li/299896
View
@@ -0,0 +1,11 @@
+##今日やったこと
+* jewelerを使ったgemの作成
+* とりあえずgemパッケージを作成してインストールできた
+
+##今日学んだこと
+* jewelerを使用すると簡単にgemを作れる
+* 勉強会のやり方、リポジトリ使い方をもう少し考えたい
+
+##今後やりたいこと
+* 引き続きgeneratorの勉強をしたい
+
@@ -0,0 +1,27 @@
+#【モクモクテーマ】モクモクすることを書く
+* コレやります。
+* コレやります。
+
+## 今日の記録
+### 今日できたこと
+* コレやります。
+
+### 今日学んだこと
+* コレやります。
+
+### 今日ハマったこと
+* コレやります。
+ $ pwd
+
+## 個人のKPT
+
+###Keep よかったー
+* コレやります。
+
+###Problem ダメだったー
+* コレやります。
+
+###Try 改善・挑戦するー
+* コレやります。
+
+
View
@@ -0,0 +1,54 @@
+5/7(月) @iR3のもくもく内容
+#【テーマ】
+「たてがき言葉」 4/29(日)に行われた 第2回 デザイナー x エンジニアハッカソン(ハッシュタグ #p4d #p4hack) https://github.com/prog4designer/hackathon2nd/wiki にて実装しようとした「たてがき言葉」http://tate.herokuapp.com の文言が英語になって居る部分を
+i18n を使って日本語化する。
+
+##【具体的な実装】
+https://github.com/ir3/tategaki
+
+参照
+
+##【遭遇した問題・課題など】
+■ 現象 下記エラー発生
+
+```
+ArgumentError (A secret is required to generate an integrity hash for cookie session data. Use config.secret_token = "some secret phrase of at least 30 characters"in config/initializers/secret_token.rb):
+```
+
+◇ 状況
+config/locales/attributes.ja.yml ファイルを作成し、作動させてみた。
+
+◇ 原因
+secret_token.rb の secret_token
+
+```
+Tategaki::Application.config.secret_token = 'xxxxxxx..xxx'
+```
+
+が30桁に足りていないのが疑われたが、問題なく30桁以上あり。
+
+◇ 対策
+結局、再表示要求でエラーは再発せず。
+
+■ タイトルの変換
+app/views/posts/new.html.erb のタイトルを t() を使って
+変数での動的編集可能にし
+
+```
+<h1><%= t('title.new') %></h1>
+
+```
+
+変換辞書として helpers.ja.yml を編集して、タイトルの
+変数newを 日本語変換定義する。
+
+```
+ja:
+ title:
+ new: '新規投稿'
+```
+
+##【まとめ】
+i18n での表示文字の日本語置き換えは、まだ未対応の箇所は残っていますが、一応動きました。
+http://tate.herokuapp.com で 自分のが入力した言葉がWebにて縦書き表示される「たてがき言葉」の日本文化の風味を味わって見てください。
+
View
@@ -1,2 +1,17 @@
-* 以下を参考に写経
-http://change-the-world.heroku.com/26
+# omniauthのお勉強
+* http://change-the-world.heroku.com/26
+を写経
+* twitterでログインまでできた
+* 401エラーではまった
+* https://dev.twitter.com/ settingのCallback URLを適当に設定するのが重要
+
+# 自分のKPT
+## KEEP
+来週の月曜日も参戦したい
+もくもくは集中して作業できてよかった
+
+## PROBLEM
+sinatraとかherokuとかもっとさくさく使えるようになりたいと思った
+
+## TRY
+はまったら、とっとと質問する
@@ -6,9 +6,11 @@
# Ignore bundler config
/.bundle
+/.Gemfile.lock
# Ignore the default SQLite database.
/db/*.sqlite3
+/db/schema.rb
# Ignore all logfiles and tempfiles.
/log/*.log
@@ -7,8 +7,11 @@ gem 'rails', '3.2.3'
gem 'sqlite3'
gem 'omniauth'
+gem 'omniauth-twitter'
+gem 'pry'
+gem 'pry-rails'
# Gems used only for assets and not required
# in production environments by default.
group :assets do
@@ -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/
@@ -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/
@@ -0,0 +1,3 @@
+// Place all the styles related to the sessions controller here.
+// They will automatically be included in application.css.
+// You can use Sass (SCSS) here: http://sass-lang.com/
@@ -0,0 +1,3 @@
+// Place all the styles related to the top controller here.
+// They will automatically be included in application.css.
+// You can use Sass (SCSS) here: http://sass-lang.com/
@@ -1,3 +1,17 @@
class ApplicationController < ActionController::Base
protect_from_forgery
+
+ before_filter :reset_session_expires
+
+ private
+
+ def reset_session_expires
+ request.session_options[:expire_after] = 2.weeks
+ end
+
+ def current_user
+ @current_user ||= User.find_by_id(session[:user_id])
+ end
+
+ helper_method :current_user
end
@@ -0,0 +1,18 @@
+class SessionsController < ApplicationController
+
+ def callback
+ auth = request.env["omniauth.auth"]
+ user = User.where(provider: auth["provider"], uid: auth["uid"]).first || User.create_with_omniauth(auth)
+ session[:user_id] = user.id
+ redirect_to root_url, notice: "login success!"
+ end
+
+ def destroy
+ session[:user_id] = nil
+ redirect_to root_url, notice: "logout"
+ end
+
+ def failure
+ render_text %Q{<span style="color:red;">Auth Failure</span>}
+ end
+end
@@ -0,0 +1,4 @@
+class TopController < ApplicationController
+ def index
+ end
+end
@@ -0,0 +1,2 @@
+module SessionsHelper
+end
@@ -0,0 +1,2 @@
+module TopHelper
+end
@@ -0,0 +1,15 @@
+class User < ActiveRecord::Base
+ attr_accessible :image, :name, :provider, :screen_name, :uid
+
+ def self.create_with_omniauth(auth)
+ user = User.create do |u|
+ u.provider = auth["provider"]
+ u.uid = auth["uid"]
+ if auth["info"].present?
+ u.name = auth["info"]["name"]
+ u.screen_name = auth["info"]["nickname"]
+ u.image = auth["info"]["image"]
+ end
+ end
+ end
+end
@@ -8,6 +8,12 @@
</head>
<body>
+<% if current_user %>
+ <%= current_user.name %> :<%= link_to "logout", logout_path %>
+<% else %>
+ <%= link_to "twitterでlogin", "/auth/twitter" %>
+<% end %>
+<p style="color:green"><%= notice %></p>
<%= yield %>
</body>
@@ -0,0 +1 @@
+<h1>omni auth sample</h1>
@@ -0,0 +1,3 @@
+# -*- coding: utf-8 -*-
+ENV['TWITTER_KEY'] = "hoge"
+ENV['TWITTER_SECRET'] = "hogehoge"
@@ -0,0 +1,5 @@
+# -*- coding: utf-8 -*-
+Rails.application.config.middleware.use OmniAuth::Builder do
+ provider :developer unless Rails.env.production?
+ provider :twitter, ENV['TWITTER_KEY'], ENV['TWITTER_SECRET']
+end
@@ -1,4 +1,12 @@
OmniauthStudy::Application.routes.draw do
+ get "top/index"
+
+ match "/auth/:provider/callback" => "sessions#callback"
+ match "/auth/failure" => "sessions#failure"
+ match "/logout" => "sessions#destroy", :as => :logout
+
+ root :to => "top#index"
+
# The priority is based upon order of creation:
# first created -> highest priority.
@@ -0,0 +1,13 @@
+class CreateUsers < ActiveRecord::Migration
+ def change
+ create_table :users do |t|
+ t.string :provider
+ t.string :uid
+ t.string :name
+ t.string :screen_name
+ t.string :image
+
+ t.timestamps
+ end
+ end
+end
Oops, something went wrong.

0 comments on commit 11ad475

Please sign in to comment.