send page start
This commit is contained in:
		| @@ -30,6 +30,10 @@ Metrics/LineLength: | ||||
|     - lib/tasks/**/* | ||||
|     - test/test_helper.rb | ||||
|  | ||||
| Metrics/AbcSize: | ||||
|   Exclude: | ||||
|     - db/migrate/**/* | ||||
|  | ||||
| Style/ClassAndModuleChildren: | ||||
|   Exclude: | ||||
|     - test/test_helper.rb | ||||
|   | ||||
							
								
								
									
										11
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										11
									
								
								README.md
									
									
									
									
									
								
							| @@ -14,15 +14,8 @@ A simple api to send sms messages with [twillio](https://www.twilio.com/). | ||||
|  | ||||
| ## TODO | ||||
|  | ||||
| * lookup child | ||||
| * lookup parent | ||||
| * lookup child by parent | ||||
| * lookup parent by child | ||||
| * add parent | ||||
| * add child | ||||
| * edit parent | ||||
| * edit child | ||||
| * page parent | ||||
| * page person | ||||
| * active class on main navs | ||||
| * sorcery or a lower oauth solution | ||||
| * application log | ||||
| * app version file - milestone 0.9.0 | ||||
|   | ||||
							
								
								
									
										10
									
								
								app/assets/javascripts/main.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								app/assets/javascripts/main.js
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,10 @@ | ||||
| function getPersonPhone(id, collection){ | ||||
|   for(var i = 0; i < collection.length; i++){ | ||||
|     if(collection[i].id == id){ | ||||
|       return collection[i].phone; | ||||
|     } | ||||
|   } | ||||
| } | ||||
|  | ||||
| $( document ).ready(function() { | ||||
| }); | ||||
| @@ -64,3 +64,40 @@ body { | ||||
|     } | ||||
|   } | ||||
| } | ||||
|  | ||||
|  | ||||
| form { | ||||
|   width: 100%; | ||||
|   * { | ||||
|     font-size: 14px; | ||||
|     line-height: 1.6em; | ||||
|   } | ||||
|  | ||||
|   label { | ||||
|     display: inline-block; | ||||
|     margin: 0.6em 0 0; | ||||
|     width: 100%; | ||||
|  | ||||
|     &:after { | ||||
|       content: ": "; | ||||
|     } | ||||
|   } | ||||
|  | ||||
|   input { | ||||
|     display: block; | ||||
|     margin: 0 0 0.6em; | ||||
|     padding: 5px; | ||||
|   } | ||||
|  | ||||
|   [type=submit]{ | ||||
|     margin: 0.6em 0; | ||||
|   } | ||||
|  | ||||
|   textarea{ | ||||
|     height: 5em; | ||||
|     max-width: 300px; | ||||
|     padding: 15px; | ||||
|     width: calc(100% - 30px); | ||||
|   } | ||||
|  | ||||
| } | ||||
|   | ||||
| @@ -4,4 +4,10 @@ class ApplicationController < ActionController::Base | ||||
|   protect_from_forgery with: :exception | ||||
|  | ||||
|   respond_to :html, :json | ||||
|  | ||||
|   def current_user | ||||
|     # temp | ||||
|     Person.new(id: 9999) | ||||
|   end | ||||
|   helper_method :current_user | ||||
| end | ||||
|   | ||||
| @@ -4,7 +4,15 @@ class PagesController < ApplicationController | ||||
|     respond_with @pages | ||||
|   end | ||||
|  | ||||
|   def page; end | ||||
|   def page | ||||
|     @page = Page.new | ||||
|     person = Person.find(params[:id]) | ||||
|     @people = Person.pageable | ||||
|  | ||||
|     return if person.nil? | ||||
|     @page.person_id = person.id | ||||
|     @page.to = person.phone | ||||
|   end | ||||
|  | ||||
|   def send_page | ||||
|   end | ||||
|   | ||||
| @@ -15,6 +15,8 @@ class Person < ActiveRecord::Base | ||||
|       .uniq | ||||
|   } | ||||
|  | ||||
|   scope :pageable, -> { where('phone is not NULL').order(:first_name) } | ||||
|  | ||||
|   scope :staff, -> { where(staff: true) } | ||||
|  | ||||
|   scope :admins, -> { where(admin: true) } | ||||
|   | ||||
| @@ -1,2 +1,22 @@ | ||||
| %p send page form | ||||
| %p active class on main navs | ||||
| = form_for :page do |f| | ||||
|   = f.hidden_field :user_id, value: current_user.id | ||||
|  | ||||
|   = f.label :person_id | ||||
|   = f.select :person_id, options_from_collection_for_select(@people, :id, :name, @page.person_id) | ||||
|  | ||||
|   = f.label :to | ||||
|   = f.phone_field :to | ||||
|  | ||||
|   = f.label :message | ||||
|   = f.text_area :message | ||||
|  | ||||
|   = f.submit 'Send Page' | ||||
|  | ||||
| :javascript | ||||
|   var people = #{@people.to_json}; | ||||
|   $('#page_person_id').on('change', function(){ | ||||
|     $('#page_to').val( getPersonPhone($(this).val(), people) ); | ||||
|   }); | ||||
|  | ||||
|   console.log(people); | ||||
|  | ||||
|   | ||||
| @@ -2,7 +2,7 @@ | ||||
|  | ||||
| - @parents.each do |parent| | ||||
|   %ul | ||||
|     %li= parent.name | ||||
|     %li #{parent.name} #{page_link(parent)} | ||||
|     %li= number_to_phone parent.phone | ||||
|     %li= mail_to parent.email | ||||
|     %li Children: | ||||
|   | ||||
| @@ -1,5 +1,5 @@ | ||||
| class Init < ActiveRecord::Migration | ||||
|   def up | ||||
|   def change | ||||
|     create_table :people do |t| | ||||
|       t.string :first_name | ||||
|       t.string :last_name | ||||
| @@ -21,5 +21,14 @@ class Init < ActiveRecord::Migration | ||||
|  | ||||
|     add_index :people, :phone | ||||
|     add_index :parenthoods, [:person_id, :child_id], name: 'parentship' | ||||
|  | ||||
|     create_table :pages do |t| | ||||
|       t.integer :user_id | ||||
|       t.integer :person_id | ||||
|       t.string :to | ||||
|       t.string :message | ||||
|       t.string :status | ||||
|       t.timestamps null: false | ||||
|     end | ||||
|   end | ||||
| end | ||||
|   | ||||
| @@ -1,12 +0,0 @@ | ||||
| class CreatePages < ActiveRecord::Migration | ||||
|   def change | ||||
|     create_table :pages do |t| | ||||
|       t.integer :user_id | ||||
|       t.integer :person_id | ||||
|       t.string :phone | ||||
|       t.string :message | ||||
|       t.string :status | ||||
|       t.timestamps null: false | ||||
|     end | ||||
|   end | ||||
| end | ||||
| @@ -11,7 +11,7 @@ | ||||
| # | ||||
| # It's strongly recommended that you check this file into your version control system. | ||||
|  | ||||
| ActiveRecord::Schema.define(version: 20150913220116) do | ||||
| ActiveRecord::Schema.define(version: 20150904033833) do | ||||
|  | ||||
|   create_table "children", force: :cascade do |t| | ||||
|     t.string "first_name", limit: 255 | ||||
| @@ -21,7 +21,6 @@ ActiveRecord::Schema.define(version: 20150913220116) do | ||||
|   create_table "pages", force: :cascade do |t| | ||||
|     t.integer  "user_id",    limit: 4 | ||||
|     t.integer  "person_id",  limit: 4 | ||||
|     t.string   "phone",      limit: 255 | ||||
|     t.string   "to",         limit: 255 | ||||
|     t.string   "message",    limit: 255 | ||||
|     t.string   "status",     limit: 255 | ||||
|   | ||||
							
								
								
									
										26
									
								
								test/fixtures/pages.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										26
									
								
								test/fixtures/pages.yml
									
									
									
									
										vendored
									
									
								
							| @@ -1,7 +1,7 @@ | ||||
| page01: | ||||
|    user: admin | ||||
|    person: sarah | ||||
|    phone: 5005550006 | ||||
|    to: 5005550006 | ||||
|    message: "Yo! Kid needs help!" | ||||
|    status: 'sent' | ||||
|    created_at: <%= Date.today - 5.days %> | ||||
| @@ -9,7 +9,7 @@ page01: | ||||
| page02: | ||||
|    user: admin | ||||
|    person: sarah | ||||
|    phone: 5005550006 | ||||
|    to: 5005550006 | ||||
|    message: "Yo! Kid needs help!" | ||||
|    status: 'delivered' | ||||
|    created_at: <%= Date.today - 10.days %> | ||||
| @@ -17,7 +17,7 @@ page02: | ||||
| page03: | ||||
|    user: admin | ||||
|    person: marlin | ||||
|    phone: 5005550006 | ||||
|    to: 5005550006 | ||||
|    message: "Yo! Kid needs help!" | ||||
|    status: 'sent' | ||||
|    created_at: <%= Date.today - 0.days %> | ||||
| @@ -25,7 +25,7 @@ page03: | ||||
| page04: | ||||
|    user: admin | ||||
|    person: kimmy | ||||
|    phone: 5005550006 | ||||
|    to: 5005550006 | ||||
|    message: "Yo! Kid needs help!" | ||||
|    status: 'sent' | ||||
|    created_at: <%= Date.today - 1.days %> | ||||
| @@ -33,7 +33,7 @@ page04: | ||||
| page05: | ||||
|    user: admin | ||||
|    person: wanda | ||||
|    phone: 5005550006 | ||||
|    to: 5005550006 | ||||
|    message: "Time to work!" | ||||
|    status: 'sent' | ||||
|    created_at: <%= Date.today - 3.days %> | ||||
| @@ -41,7 +41,7 @@ page05: | ||||
| page06: | ||||
|    user: admin | ||||
|    person: basic | ||||
|    phone: 5005550006 | ||||
|    to: 5005550006 | ||||
|    message: "Yo! Kid needs help!" | ||||
|    status: 'sent' | ||||
|    created_at: <%= Date.today - 2.days %> | ||||
| @@ -49,7 +49,7 @@ page06: | ||||
| page07: | ||||
|    user: admin | ||||
|    person: sarah | ||||
|    phone: 5005550006 | ||||
|    to: 5005550006 | ||||
|    message: "Yo! Kid needs help!" | ||||
|    status: 'sent' | ||||
|    created_at: <%= Date.today - 8.days %> | ||||
| @@ -57,7 +57,7 @@ page07: | ||||
| page08: | ||||
|    user: admin | ||||
|    person: sarah | ||||
|    phone: 5005550006 | ||||
|    to: 5005550006 | ||||
|    message: "Yo! Kid needs help!" | ||||
|    status: 'sent' | ||||
|    created_at: <%= Date.today - 7.days %> | ||||
| @@ -65,7 +65,7 @@ page08: | ||||
| page09: | ||||
|    user: admin | ||||
|    person: sarah | ||||
|    phone: 5005550006 | ||||
|    to: 5005550006 | ||||
|    message: "Yo! Kid needs help!" | ||||
|    status: 'sent' | ||||
|    created_at: <%= Date.today - 1.days %> | ||||
| @@ -73,7 +73,7 @@ page09: | ||||
| page10: | ||||
|    user: admin | ||||
|    person: sarah | ||||
|    phone: 5005550006 | ||||
|    to: 5005550006 | ||||
|    message: "Yo! Kid needs help!" | ||||
|    status: 'sent' | ||||
|    created_at: <%= Date.today - 5.days %> | ||||
| @@ -81,7 +81,7 @@ page10: | ||||
| page11: | ||||
|    user: admin | ||||
|    person: sarah | ||||
|    phone: 5005550006 | ||||
|    to: 5005550006 | ||||
|    message: "Yo! Kid needs help!" | ||||
|    status: 'sent' | ||||
|    created_at: <%= Date.today - 5.days %> | ||||
| @@ -89,7 +89,7 @@ page11: | ||||
| page12: | ||||
|    user: admin | ||||
|    person: sarah | ||||
|    phone: 5005550006 | ||||
|    to: 5005550006 | ||||
|    message: "Yo! Kid needs help!" | ||||
|    status: 'sent' | ||||
|    created_at: <%= Date.today - 1.days %> | ||||
| @@ -97,7 +97,7 @@ page12: | ||||
| page13: | ||||
|    user: admin | ||||
|    person: sarah | ||||
|    phone: 5005550006 | ||||
|    to: 5005550006 | ||||
|    message: "Yo! Kid needs help!" | ||||
|    status: 'sent' | ||||
|    created_at: <%= Date.today - 25.days %> | ||||
|   | ||||
		Reference in New Issue
	
	Block a user