awesome_sms 0.0.1 → 0.0.2

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 6eb81a408180d97b6a419901919d8f0e9687fefe
4
- data.tar.gz: 00211f2fe0f88c6c28cd14e145039cb67e968d77
3
+ metadata.gz: f33949dc4d42e24949044d55d69a01afb4c1e750
4
+ data.tar.gz: 743270bd5ce605dc46ea77cf79713808895f0a80
5
5
  SHA512:
6
- metadata.gz: c78c6b791b3a2145d876a0b5aa2e9be7d902d1d1715ef9cd81e7d052266921e808c5f71b80f1d0a61970c406cc3b8f15c26d2da63be185ce66a3072986d972ec
7
- data.tar.gz: 6ebd072fd6fe0e462aba94c5cc951aeb7c54ee7ded0c8232420daba80cc5df55627c25b747667e45be83ac7af96f85c105380e442de7231f9075d50cea97dcd5
6
+ metadata.gz: 9875e827241d53496c6495fb665b0b3b9de4a0b7bfb9d2f683c7d8f6b7c9f06720cedd2ad5f22007bac15229c1acaf8c4f1dccfb567e1aa83e51925a9fd6f6a4
7
+ data.tar.gz: c9191f503b931f5307f2fd43894d9e95d26d5a22eb98d625cd0b560fc242fe4cca7d78406b3917dd7bf674d923b287b1b31a304fc3bb2b92f7e58b80018860f0
@@ -1,6 +1,4 @@
1
- Copyright (c) 2014 taniguchi
2
-
3
- MIT License
1
+ Copyright 2014 YOURNAME
4
2
 
5
3
  Permission is hereby granted, free of charge, to any person obtaining
6
4
  a copy of this software and associated documentation files (the
data/Rakefile CHANGED
@@ -1,7 +1,23 @@
1
- require "bundler/gem_tasks"
2
- require "rspec/core/rake_task"
1
+ begin
2
+ require 'bundler/setup'
3
+ rescue LoadError
4
+ puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
5
+ end
3
6
 
4
- RSpec::Core::RakeTask.new(:spec)
7
+ require 'rdoc/task'
5
8
 
6
- task :default => :spec
9
+ RDoc::Task.new(:rdoc) do |rdoc|
10
+ rdoc.rdoc_dir = 'rdoc'
11
+ rdoc.title = 'AwesomeSms'
12
+ rdoc.options << '--line-numbers'
13
+ rdoc.rdoc_files.include('README.rdoc')
14
+ rdoc.rdoc_files.include('lib/**/*.rb')
15
+ end
16
+
17
+ APP_RAKEFILE = File.expand_path("../spec/dummy/Rakefile", __FILE__)
18
+ load 'rails/tasks/engine.rake'
19
+
20
+
21
+
22
+ Bundler::GemHelper.install_tasks
7
23
 
@@ -0,0 +1,2 @@
1
+ // Place all the behaviors and hooks related to the matching controller here.
2
+ // All this logic will automatically be available in application.js.
@@ -0,0 +1,4 @@
1
+ /*
2
+ Place all the styles related to the matching controller here.
3
+ They will automatically be included in application.css.
4
+ */
@@ -0,0 +1,63 @@
1
+ class SmsAuthController < ApplicationController
2
+ TWILIO_NUMBER = '+81xxxxxxxx' # 電話番号
3
+
4
+ # 認証ページ(GET)
5
+ # viewでは@sender_num, @user.sms_token, @user.idを表示
6
+ def index
7
+ @user = Rails.application.config.awesome_sms.user_class.constantize.find(current_user.id)
8
+ @sender_num = Rails.application.config.awesome_sms.twilio_num
9
+ @user.sms_token = generate_token
10
+ @user.save!
11
+ end
12
+
13
+ # 認証処理(POST)
14
+ def verify
15
+ begin
16
+ params_check;format_params;user_check;token_check;
17
+ logger.error("valid user!")
18
+ render :json => { code: 0 }
19
+ rescue => e
20
+ logger.error("error: #{e.message}")
21
+ render :json => { code: 400, message: e.message }
22
+ return
23
+ end
24
+ end
25
+
26
+ private
27
+ # 認証token生成
28
+ def generate_token
29
+ ((0..9).to_a + ("a".."z").to_a + ("A".."Z").to_a).sample(4).join
30
+ end
31
+
32
+ # パラメータチェック
33
+ def params_check
34
+ raise 'Body is invalid' if params[:Body].nil?
35
+ raise "Body isn't contain underscore" if !params[:Body].include?("_")
36
+ raise 'From is invalid' if params[:From].nil?
37
+ end
38
+
39
+ # パラメータ整形
40
+ # params[:Body]は「user_id + '_' + token」の形式を想定
41
+ def format_params
42
+ body = params[:Body].split("_")
43
+ @user_id = body[0]
44
+ @token = body[1]
45
+ @user.mobile_number = params[:From].sub(/^\+81/, '0')
46
+ raise 'user_id is nil' if @user_id.nil?
47
+ raise 'token is nil' if @token.nil?
48
+ raise 'mobile_number is nil' if @user.mobile_number.nil?
49
+ end
50
+
51
+ # ユーザチェック
52
+ def user_check
53
+ @user = Rails.application.config.awesome_sms.user_class.constantize.find_by_id(@user_id)
54
+ raise 'user is invalid' if @user.nil?
55
+ end
56
+
57
+ # 認証トークンチェック
58
+ def token_check
59
+ raise 'token is invalid' if @user.sms_token == @token
60
+ @user.verify = true
61
+ @user.save!
62
+ end
63
+ end
@@ -0,0 +1,2 @@
1
+ module SmsAuthHelper
2
+ end
@@ -0,0 +1,7 @@
1
+ Rails.application.routes.draw do
2
+ resources :sms_auth do
3
+ collection do
4
+ post 'verify'
5
+ end
6
+ end
7
+ end
@@ -1,7 +1,4 @@
1
- require "awesome_sms/version"
1
+ require "awesome_sms/engine"
2
2
 
3
3
  module AwesomeSms
4
- def self.awesome
5
- p 'awesome!'
6
- end
7
4
  end
@@ -0,0 +1,8 @@
1
+ module AwesomeSms
2
+ class Engine < ::Rails::Engine
3
+ config.generators do |g|
4
+ g.test_framework :rspec
5
+ g.fixture_replacement :factory_girl, :dir => 'spec/factories'
6
+ end
7
+ end
8
+ end
@@ -1,3 +1,3 @@
1
1
  module AwesomeSms
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.2"
3
3
  end
@@ -0,0 +1,4 @@
1
+ # desc "Explaining what the task does"
2
+ # task :awesome_sms do
3
+ # # Task goes here
4
+ # end
metadata CHANGED
@@ -1,31 +1,45 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: awesome_sms
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
- - kidachi_
7
+ - kidachi
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-07-06 00:00:00.000000000 Z
11
+ date: 2014-07-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: bundler
14
+ name: rails
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.6'
20
- type: :development
19
+ version: 4.1.4
20
+ type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '1.6'
26
+ version: 4.1.4
27
+ - !ruby/object:Gem::Dependency
28
+ name: sqlite3
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
27
41
  - !ruby/object:Gem::Dependency
28
- name: rake
42
+ name: rspec-rails
29
43
  requirement: !ruby/object:Gem::Requirement
30
44
  requirements:
31
45
  - - ">="
@@ -39,7 +53,7 @@ dependencies:
39
53
  - !ruby/object:Gem::Version
40
54
  version: '0'
41
55
  - !ruby/object:Gem::Dependency
42
- name: rspec
56
+ name: factory_girl_rails
43
57
  requirement: !ruby/object:Gem::Requirement
44
58
  requirements:
45
59
  - - ">="
@@ -52,25 +66,24 @@ dependencies:
52
66
  - - ">="
53
67
  - !ruby/object:Gem::Version
54
68
  version: '0'
55
- description: Awesome SMS.
69
+ description: AwesomeSms.
56
70
  email:
57
71
  - t.daiki50@gmail.com
58
72
  executables: []
59
73
  extensions: []
60
74
  extra_rdoc_files: []
61
75
  files:
62
- - ".gitignore"
63
- - ".rspec"
64
- - ".travis.yml"
65
- - Gemfile
66
- - LICENSE.txt
67
- - README.md
76
+ - MIT-LICENSE
68
77
  - Rakefile
69
- - awesome_sms.gemspec
78
+ - app/assets/javascripts/sms_auth.js
79
+ - app/assets/stylesheets/sms_auth.css
80
+ - app/controllers/sms_auth_controller.rb
81
+ - app/helpers/sms_auth_helper.rb
82
+ - config/routes.rb
70
83
  - lib/awesome_sms.rb
84
+ - lib/awesome_sms/engine.rb
71
85
  - lib/awesome_sms/version.rb
72
- - spec/awesome_sms_spec.rb
73
- - spec/spec_helper.rb
86
+ - lib/tasks/awesome_sms_tasks.rake
74
87
  homepage: ''
75
88
  licenses:
76
89
  - MIT
@@ -94,8 +107,5 @@ rubyforge_project:
94
107
  rubygems_version: 2.2.2
95
108
  signing_key:
96
109
  specification_version: 4
97
- summary: Awesome SMS.
98
- test_files:
99
- - spec/awesome_sms_spec.rb
100
- - spec/spec_helper.rb
101
- has_rdoc:
110
+ summary: AwesomeSms.
111
+ test_files: []
data/.gitignore DELETED
@@ -1,23 +0,0 @@
1
- *.gem
2
- *.rbc
3
- .bundle
4
- .config
5
- .yardoc
6
- Gemfile.lock
7
- InstalledFiles
8
- _yardoc
9
- coverage
10
- doc/
11
- lib/bundler/man
12
- pkg
13
- rdoc
14
- spec/reports
15
- test/tmp
16
- test/version_tmp
17
- tmp
18
- *.bundle
19
- *.so
20
- *.o
21
- *.a
22
- mkmf.log
23
- .idea/
data/.rspec DELETED
@@ -1,2 +0,0 @@
1
- --format documentation
2
- --color
@@ -1,3 +0,0 @@
1
- language: ruby
2
- rvm:
3
- - 2.1.1
data/Gemfile DELETED
@@ -1,4 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- # Specify your gem's dependencies in awesome_sms.gemspec
4
- gemspec
data/README.md DELETED
@@ -1,25 +0,0 @@
1
- # AwesomeSms
2
-
3
- ## Installation
4
-
5
- Add this line to your application's Gemfile:
6
-
7
- gem 'awesome_sms'
8
-
9
- And then execute:
10
-
11
- $ bundle
12
-
13
- Or install it yourself as:
14
-
15
- $ gem install awesome_sms
16
-
17
- ## Usage
18
-
19
- ## Contributing
20
-
21
- 1. Fork it ( https://github.com/[my-github-username]/awesome_sms/fork )
22
- 2. Create your feature branch (`git checkout -b my-new-feature`)
23
- 3. Commit your changes (`git commit -am 'Add some feature'`)
24
- 4. Push to the branch (`git push origin my-new-feature`)
25
- 5. Create a new Pull Request
@@ -1,24 +0,0 @@
1
- # coding: utf-8
2
- lib = File.expand_path('../lib', __FILE__)
3
- $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
- require 'awesome_sms/version'
5
-
6
- Gem::Specification.new do |spec|
7
- spec.name = "awesome_sms"
8
- spec.version = AwesomeSms::VERSION
9
- spec.authors = ["kidachi_"]
10
- spec.email = ["t.daiki50@gmail.com"]
11
- spec.summary = %q{Awesome SMS.}
12
- spec.description = %q{Awesome SMS.}
13
- spec.homepage = ""
14
- spec.license = "MIT"
15
-
16
- spec.files = `git ls-files -z`.split("\x0")
17
- spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
18
- spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
- spec.require_paths = ["lib"]
20
-
21
- spec.add_development_dependency "bundler", "~> 1.6"
22
- spec.add_development_dependency "rake"
23
- spec.add_development_dependency "rspec"
24
- end
@@ -1,11 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe AwesomeSms do
4
- it 'has a version number' do
5
- expect(AwesomeSms::VERSION).not_to be nil
6
- end
7
-
8
- it 'does something useful' do
9
- expect(false).to eq(true)
10
- end
11
- end
@@ -1,2 +0,0 @@
1
- $LOAD_PATH.unshift File.expand_path('../../lib', __FILE__)
2
- require 'awesome_sms'