Commit 8f091499 authored by Galen Evilla's avatar Galen Evilla

trial

parent 5a9c12b3
# See https://help.github.com/articles/ignoring-files for more about ignoring files.
#
# If you find yourself ignoring temporary files generated by your text editor
# or operating system, you probably want to add a global ignore instead:
# git config --global core.excludesfile '~/.gitignore_global'
# Ignore bundler config.
/.bundle
# Ignore the default SQLite database.
/db/*.sqlite3
/db/*.sqlite3-journal
# Ignore all logfiles and tempfiles.
/log/*
/tmp/*
!/log/.keep
!/tmp/.keep
# Ignore Byebug command history file.
.byebug_history
source 'https://rubygems.org'
# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '~> 5.0.0'
# Use sqlite3 as the database for Active Record
gem 'sqlite3'
# Use Puma as the app server
gem 'puma', '~> 3.0'
# Use SCSS for stylesheets
gem 'sass-rails', '~> 5.0'
gem 'bootstrap-sass'
gem 'autoprefixer-rails'
# Use Uglifier as compressor for JavaScript assets
gem 'uglifier', '>= 1.3.0'
# Use CoffeeScript for .coffee assets and views
gem 'coffee-rails', '~> 4.2'
# See https://github.com/rails/execjs#readme for more supported runtimes
# gem 'therubyracer', platforms: :ruby
# Use jquery as the JavaScript library
gem 'jquery-rails'
# Turbolinks makes navigating your web application faster. Read more: https://github.com/turbolinks/turbolinks
gem 'turbolinks', '~> 5'
# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
gem 'jbuilder', '~> 2.5'
gem 'sdoc', '~> 0.4.0', group: :doc
# Use Redis adapter to run Action Cable in production
# gem 'redis', '~> 3.0'
# Use ActiveModel has_secure_password
# gem 'bcrypt', '~> 3.1.7'
# Use Capistrano for deployment
# gem 'capistrano-rails', group: :development
group :development, :test do
# Call 'byebug' anywhere in the code to stop execution and get a debugger console
gem 'byebug', platform: :mri
end
group :development do
# Access an IRB console on exception pages or by using <%= console %> anywhere in the code.
gem 'web-console'
end
# Windows does not include zoneinfo files, so bundle the tzinfo-data gem
gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]
gem 'devise'
gem 'simple_form'
\ No newline at end of file
GEM
remote: https://rubygems.org/
specs:
actioncable (5.0.0)
actionpack (= 5.0.0)
nio4r (~> 1.2)
websocket-driver (~> 0.6.1)
actionmailer (5.0.0)
actionpack (= 5.0.0)
actionview (= 5.0.0)
activejob (= 5.0.0)
mail (~> 2.5, >= 2.5.4)
rails-dom-testing (~> 2.0)
actionpack (5.0.0)
actionview (= 5.0.0)
activesupport (= 5.0.0)
rack (~> 2.0)
rack-test (~> 0.6.3)
rails-dom-testing (~> 2.0)
rails-html-sanitizer (~> 1.0, >= 1.0.2)
actionview (5.0.0)
activesupport (= 5.0.0)
builder (~> 3.1)
erubis (~> 2.7.0)
rails-dom-testing (~> 2.0)
rails-html-sanitizer (~> 1.0, >= 1.0.2)
activejob (5.0.0)
activesupport (= 5.0.0)
globalid (>= 0.3.6)
activemodel (5.0.0)
activesupport (= 5.0.0)
activerecord (5.0.0)
activemodel (= 5.0.0)
activesupport (= 5.0.0)
arel (~> 7.0)
activesupport (5.0.0)
concurrent-ruby (~> 1.0, >= 1.0.2)
i18n (~> 0.7)
minitest (~> 5.1)
tzinfo (~> 1.1)
arel (7.0.0)
autoprefixer-rails (6.3.6.2)
execjs
bcrypt (3.1.11-x86-mingw32)
bootstrap-sass (3.3.6)
autoprefixer-rails (>= 5.2.1)
sass (>= 3.3.4)
builder (3.2.2)
coffee-rails (4.2.1)
coffee-script (>= 2.2.0)
railties (>= 4.0.0, < 5.2.x)
coffee-script (2.4.1)
coffee-script-source
execjs
coffee-script-source (1.10.0)
concurrent-ruby (1.0.2)
debug_inspector (0.0.2)
devise (4.2.0)
bcrypt (~> 3.0)
orm_adapter (~> 0.1)
railties (>= 4.1.0, < 5.1)
responders
warden (~> 1.2.3)
erubis (2.7.0)
execjs (2.7.0)
globalid (0.3.6)
activesupport (>= 4.1.0)
i18n (0.7.0)
jbuilder (2.5.0)
activesupport (>= 3.0.0, < 5.1)
multi_json (~> 1.2)
jquery-rails (4.1.1)
rails-dom-testing (>= 1, < 3)
railties (>= 4.2.0)
thor (>= 0.14, < 2.0)
json (1.8.3)
loofah (2.0.3)
nokogiri (>= 1.5.9)
mail (2.6.4)
mime-types (>= 1.16, < 4)
method_source (0.8.2)
mime-types (3.1)
mime-types-data (~> 3.2015)
mime-types-data (3.2016.0521)
mini_portile2 (2.1.0)
minitest (5.9.0)
multi_json (1.12.1)
nio4r (1.2.1)
nokogiri (1.6.8-x86-mingw32)
mini_portile2 (~> 2.1.0)
pkg-config (~> 1.1.7)
orm_adapter (0.5.0)
pkg-config (1.1.7)
puma (3.5.0)
rack (2.0.1)
rack-test (0.6.3)
rack (>= 1.0)
rails (5.0.0)
actioncable (= 5.0.0)
actionmailer (= 5.0.0)
actionpack (= 5.0.0)
actionview (= 5.0.0)
activejob (= 5.0.0)
activemodel (= 5.0.0)
activerecord (= 5.0.0)
activesupport (= 5.0.0)
bundler (>= 1.3.0, < 2.0)
railties (= 5.0.0)
sprockets-rails (>= 2.0.0)
rails-dom-testing (2.0.1)
activesupport (>= 4.2.0, < 6.0)
nokogiri (~> 1.6.0)
rails-html-sanitizer (1.0.3)
loofah (~> 2.0)
railties (5.0.0)
actionpack (= 5.0.0)
activesupport (= 5.0.0)
method_source
rake (>= 0.8.7)
thor (>= 0.18.1, < 2.0)
rake (11.2.2)
rdoc (4.2.2)
json (~> 1.4)
responders (2.2.0)
railties (>= 4.2.0, < 5.1)
sass (3.4.22)
sass-rails (5.0.5)
railties (>= 4.0.0, < 6)
sass (~> 3.1)
sprockets (>= 2.8, < 4.0)
sprockets-rails (>= 2.0, < 4.0)
tilt (>= 1.1, < 3)
sdoc (0.4.1)
json (~> 1.7, >= 1.7.7)
rdoc (~> 4.0)
simple_form (3.2.1)
actionpack (> 4, < 5.1)
activemodel (> 4, < 5.1)
sprockets (3.6.3)
concurrent-ruby (~> 1.0)
rack (> 1, < 3)
sprockets-rails (3.1.1)
actionpack (>= 4.0)
activesupport (>= 4.0)
sprockets (>= 3.0.0)
sqlite3 (1.3.11-x86-mingw32)
thor (0.19.1)
thread_safe (0.3.5)
tilt (2.0.5)
turbolinks (5.0.0)
turbolinks-source (~> 5)
turbolinks-source (5.0.0)
tzinfo (1.2.2)
thread_safe (~> 0.1)
tzinfo-data (1.2016.6)
tzinfo (>= 1.0.0)
uglifier (3.0.0)
execjs (>= 0.3.0, < 3)
warden (1.2.6)
rack (>= 1.0)
web-console (3.3.1)
actionview (>= 5.0)
activemodel (>= 5.0)
debug_inspector
railties (>= 5.0)
websocket-driver (0.6.4)
websocket-extensions (>= 0.1.0)
websocket-extensions (0.1.2)
PLATFORMS
x86-mingw32
DEPENDENCIES
autoprefixer-rails
bootstrap-sass
byebug
coffee-rails (~> 4.2)
devise
jbuilder (~> 2.5)
jquery-rails
puma (~> 3.0)
rails (~> 5.0.0)
sass-rails (~> 5.0)
sdoc (~> 0.4.0)
simple_form
sqlite3
turbolinks (~> 5)
tzinfo-data
uglifier (>= 1.3.0)
web-console
BUNDLED WITH
1.10.4
# README
This README would normally document whatever steps are necessary to get the
application up and running.
Things you may want to cover:
* Ruby version
* System dependencies
* Configuration
* Database creation
* Database initialization
* How to run the test suite
* Services (job queues, cache servers, search engines, etc.)
* Deployment instructions
* ...
# Add your own tasks in files placed in lib/tasks ending in .rake,
# for example lib/tasks/capistrano.rake, and they will automatically be available to Rake.
require_relative 'config/application'
Rails.application.load_tasks
//= link_tree ../images
//= link_directory ../javascripts .js
//= link_directory ../stylesheets .css
// This is a manifest file that'll be compiled into application.js, which will include all the files
// listed below.
//
// Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts,
// or any plugin's vendor/assets/javascripts directory can be referenced here using a relative path.
//
// It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
// compiled file. JavaScript code in this file should be added after the last require_* statement.
//
// Read Sprockets README (https://github.com/rails/sprockets#sprockets-directives) for details
// about supported directives.
//
//= require jquery
//= require jquery_ujs
//= require turbolinks
//= require bootstrap-sprockets
//= require_tree .
// Action Cable provides the framework to deal with WebSockets in Rails.
// You can generate new channels where WebSocket features live using the rails generate channel command.
//
//= require action_cable
//= require_self
//= require_tree ./channels
(function() {
this.App || (this.App = {});
App.cable = ActionCable.createConsumer();
}).call(this);
@import "bootstrap-sprockets";
@import "bootstrap";
@import "ver1.css.scss"
\ No newline at end of file
.box{
width: 400px;
height: 300px;
background-color: white;
border: none;
padding: 10px;
float: left;
}
table {
width: 100%;
padding-left: 10px;
padding-right: 10px;
}
th {
height: 50px;
padding-left: 10px;
}
td {
padding-left: 10px;
}
.index{
padding-left: 50px;
padding-right: 20px;
}
ul.nav navbar-nav navbar-right{
padding-top: 20px;
}
\ No newline at end of file
module ApplicationCable
class Channel < ActionCable::Channel::Base
end
end
module ApplicationCable
class Connection < ActionCable::Connection::Base
end
end
class AboutController < ApplicationController
def index
render "pages/about.html.erb"
end
def evilla
render "/about/evilla.html.erb"
end
def gomez
render "/about/gomez.html.erb"
end
def guian
render "/about/guian.html.erb"
end
def principe
render "/about/principe.html.erb"
end
end
module Admin
class CandidatesController < ApplicationController
def index
@positions = Position.all
render "admin/candidates/index.html.erb"
end
def new
@candidate = Candidate.new
render "admin/candidates/new.html.erb"
end
def edit
@candidate = Candidate.find(params[:id])
end
def update
@candidate = Candidate.find(params[:id])
if @candidate.update(candidate_params())
redirect_to admin_candidates_path(@candidate.id)
else
render "admin/candidates/edit.html.erb"
end
end
def destroy
@candidate = Candidate.find(params[:id])
@candidate.votes.each do |v|
v.destroy!
end
@candidate.destroy!
redirect_to admin_candidates_path
end
def create
@candidate = Candidate.new(candidate_params())
if @candidate.save
redirect_to admin_candidate_path(@candidate.id)
else
render "admin/candidates/new.html.erb"
end
end
def show
@candidate = Candidate.find(params[:id])
render "admin/candidates/show.html.erb"
end
def candidate_params
params.require(:candidate).permit!
end
end
end
\ No newline at end of file
module Admin
class PositionsController < ApplicationController
def index
@positions = Position.all
render "admin/positions/index.html.erb"
end
def new
@position = Position.new
render "admin/positions/new.html.erb"
end
def edit
@position = Position.find(params[:id])
end
def update
@position = Position.find(params[:id])
if @position.update(position_params())
redirect_to admin_positions_path(@position.id), notice: 'Success!'
else
render "admin/position/edit.html.erb"
end
end
def destroy
@candidate = Position.find(params[:id])
@candidate.destroy!
redirect_to admin_positions_path, notice: 'Position and its candidates are deleted!'
end
def create
@position = Position.new(position_params())
if @position.save
redirect_to admin_position_path(@position.id), notice: 'Success!'
else
render "admin/positions/new.html.erb"
end
end
def show
@position = Position.find(params[:id])
render "admin/positions/show.html.erb"
end
def position_params
params.require(:position).permit!
end
end
end
\ No newline at end of file
class ApplicationController < ActionController::Base
before_action :configure_devise_permitted_parameters, if: :devise_controller?
protect_from_forgery with: :exception
protected
def configure_devise_permitted_parameters
devise_parameter_sanitizer.permit(:sign_up, keys: [:first_name, :last_name, :birthday, :gender])
end
end
\ No newline at end of file
class PagesController < ApplicationController
def index
@users = User.all
@votes = Vote.all
@candidates = Candidate.all
@positions = Position.all
render "pages/index.html.erb"
end
end
\ No newline at end of file
module Users
class UsersController < ApplicationController
before_action :authenticate_user!
def index
@positions = Position.all
@candidates = Candidate.all
@votes = Vote.all
render "pages/profile.html.erb"
end
end
end
class UsersController < ApplicationController
before_filter :authenticate_user!
before_filter :admin_only, :except => :show
def index
@users = User.all
end
def show
@user = User.find(params[:id])
unless current_user.admin?
unless @user == current_user
redirect_to :back, :alert => "Access denied."
end
end
end
def update
@user = User.find(params[:id])
if @user.update_attributes(secure_params)
redirect_to users_path, :notice => "User updated."
else
redirect_to users_path, :alert => "Unable to update user."
end
end
def destroy
user = User.find(params[:id])
user.destroy
redirect_to users_path, :notice => "User deleted."
end
private
def admin_only
unless current_user.admin?
redirect_to root_path, :alert => "Access denied."
end
end
def secure_params
params.require(:user).permit(:role)
end
end
\ No newline at end of file
module Voting
class VotesController < ApplicationController
before_action :authenticate_user!
def index
@positions = Position.all
@candidates = Candidate.all
@votes = Vote.all
render "voting/votes/index.html.erb"
end
def edit
@post = Post.find(params[:id])
end
def update
@post = Post.find(params[:id])
if @post.update(post_params())
redirect_to admin_post_path(@post.id)
else
render "admin/posts/edit.html.erb"
end
end
def new
voted_for = false
@pos = params[:id]
Position.find(@pos).candidates.each do |c|
c.votes.each do |v|
if current_user.id == v.user_id
voted_for = true
end
end
end
if voted_for == false
@votes= Vote.all
@vote = Vote.new
render "voting/votes/new.html.erb"
else
redirect_to voting_votes_path
end
end
def create
@vote = current_user.votes.build(vote_params())
if @vote.save
redirect_to voting_votes_path(@vote.id)
else
render "voting/votes/new.html.erb"
end
end
def vote_params
params.require(:vote).permit!
end
end
end
\ No newline at end of file
class ApplicationJob < ActiveJob::Base
end
class ApplicationMailer < ActionMailer::Base
default from: 'from@example.com'
layout 'mailer'
end
class ApplicationRecord < ActiveRecord::Base
self.abstract_class = true
end
class Candidate < ApplicationRecord
belongs_to :position
has_many :votes, dependent: :destroy
accepts_nested_attributes_for :votes
validates :last_name, presence: true
validates :first_name, presence: true
def full_name
"#{ self.first_name } #{ self.last_name }"
end
#def male_votes
# votes.select { |vote| vote.user.gender == 'male' }
#end
#def female_votes
# votes.select { |vote| vote.user.gender == 'female' }
#end
end
class Position < ApplicationRecord
has_many :candidates, dependent: :destroy
accepts_nested_attributes_for :candidates
validates :name, presence: true, uniqueness: {case_sensitive: false}
end
class User < ApplicationRecord
enum role: {voter: 0, admin: 1}
after_initialize :set_default_role, :if => :new_record?
def set_default_role
self.role ||= :voter
end
has_many :votes, dependent: :destroy
devise :database_authenticatable, :registerable,
:recoverable, :rememberable, :trackable, :validatable
#def did_vote?(candidate)
# similar_votes = votes.select { |vote| vote.candidate == candidate }
# similar_votes.size > 0
#end
def full_name
"#{self.first_name} #{self.last_name}"
end
end
class Vote < ApplicationRecord
belongs_to :user
belongs_to :candidate
end
<% provide(:about, "active") %>
<% provide(:title, "About") %>
<div class="container">
<div class="row">
</div>
<div class="col-md-2">
</div>
<div class="col-md-4">
<h1 class="heading">Galen Solo E. Evilla</h1>
<div class="row">
<p>&emsp;<b>What do you want to be when you grow up?</b>
<br>
<i>&emsp;&emsp;Insert Answer Here</i>
<br>
&emsp;<b>Happy ka ba kay Sir Happy?</b>
<br>
<i>&emsp;&emsp;Insert Answer Here</i>
<br>
&emsp;<b>Kapag nagluto si Sir Happy, Happy Meal ba tawag dun?</b>
<br>
<i>&emsp;&emsp;Insert Answer Here</i>
<br>
&emsp;<b>Expected grade sa MIS21?</b>
<br>
<i>&emsp;&emsp;Insert Answer Here</i>
<br>
&emsp;<b>Ano ang favorite final fantasy mo? </b>
<br>
<i>&emsp;&emsp;Insert Answer Here)</i>
<br>
&emsp;<b>(For the purposes of being in this institution, the question was censored)</b>
<br>
<i>&emsp;&emsp;Insert Answer Here</i>
</p>
</div>
</div>
<div class="col-md-4">
<%=image_tag("evilla.jpg")%>
</div>
<div class="col-md-2">
</div>
</div>
</div>
</div>
</div>
<hr>
<div class="about">
<div class ="row">
<center>
<h3>The Developers</h3>
<h5>
<a href="/about/evilla">Evilla, Galen Solo E.</a>
<a href="/about/gomez">Gomez, Feliz Marie B.</a>
<a href="/about/guian">Guian, April D.</a>
<a href="/about/principe">Principe, Jasmine Nicole G.</a>
</h5>
</center>
<hr>
</div>
</div>
</div>
</div>
</div>
<% provide(:about, "active") %>
<% provide(:title, "About") %>
<div class="container">
<div class="row">
</div>
<div class="col-md-2">
</div>
<div class="col-md-4">
<h1 class="heading">Feliz Marie B. Gomez</h1>
<div class="row">
<p>&emsp;<b>What do you want to be when you grow up?</b>
<br>
<i>&emsp;&emsp;Tall</i>
<br>
&emsp;<b>Happy ka ba kay Sir Happy?</b>
<br>
<i>&emsp;&emsp;Yes!</i>
<br>
&emsp;<b>Kapag nagluto si Sir Happy, Happy Meal ba tawag dun?</b>
<br>
<i>&emsp;&emsp;Eyyyy, witty</i>
<br>
&emsp;<b>Expected grade sa MIS21?</b>
<br>
<i>&emsp;&emsp;D (basta kapag major subjects, i wants the D hehe)</i>
<br>
&emsp;<b>Ano ang favorite final fantasy mo? </b>
<br>
<i>&emsp;&emsp;<strike>69</strike>. Final Fantasy 6 at Final Fantasy 9 ;)</i>
<br>
&emsp;<b>(For the purposes of being in this institution, the question was censored)</b>
<br>
<i>&emsp;&emsp;AY GRABE SIYA HAHAHAHA</i>
</p>
</div>
</div>
<div class="col-md-4">
<%=image_tag("gomez.jpg")%>
</div>
<div class="col-md-2">
</div>
</div>
</div>
</div>
</div>
<hr>
<div class="about">
<div class ="row">
<center>
<h3>The Developers</h3>
<h5>
<a href="/about/evilla">Evilla, Galen Solo E.</a>
<a href="/about/gomez">Gomez, Feliz Marie B.</a>
<a href="/about/guian">Guian, April D.</a>
<a href="/about/principe">Principe, Jasmine Nicole G.</a>
</h5>
</center>
<hr>
</div>
</div>
</div>
</div>
</div>
<% provide(:about, "active") %>
<% provide(:title, "About") %>
<div class="container">
<div class="row">
</div>
<div class="col-md-2">
</div>
<div class="col-md-4">
<h1 class="heading">April D. Guian</h1>
<div class="row">
<p>&emsp;<b>What do you want to be when you grow up?</b>
<br>
<i>&emsp;&emsp;Insert Answer Here</i>
<br>
&emsp;<b>Happy ka ba kay Sir Happy?</b>
<br>
<i>&emsp;&emsp;Insert Answer Here</i>
<br>
&emsp;<b>Kapag nagluto si Sir Happy, Happy Meal ba tawag dun?</b>
<br>
<i>&emsp;&emsp;Insert Answer Here</i>
<br>
&emsp;<b>Expected grade sa MIS21?</b>
<br>
<i>&emsp;&emsp;Insert Answer Here</i>
<br>
&emsp;<b>Ano ang favorite final fantasy mo? </b>
<br>
<i>&emsp;&emsp;Insert Answer Here)</i>
<br>
&emsp;<b>(For the purposes of being in this institution, the question was censored)</b>
<br>
<i>&emsp;&emsp;Insert Answer Here</i>
</p>
</div>
</div>
<div class="col-md-4">
<%=image_tag("guian.jpeg")%>
</div>
<div class="col-md-2">
</div>
</div>
</div>
</div>
</div>
<hr>
<div class="about">
<div class ="row">
<center>
<h3>The Developers</h3>
<h5>
<a href="/about/evilla">Evilla, Galen Solo E.</a>
<a href="/about/gomez">Gomez, Feliz Marie B.</a>
<a href="/about/guian">Guian, April D.</a>
<a href="/about/principe">Principe, Jasmine Nicole G.</a>
</h5>
</center>
<hr>
</div>
</div>
</div>
</div>
</div>
<% provide(:about, "active") %>
<% provide(:title, "About") %>
<div class="container">
<div class="row">
</div>
<div class="col-md-2">
</div>
<div class="col-md-4">
<h1 class="heading">Jasmine Nicole G. Principe</h1>
<div class="row">
<p>&emsp;<b>What do you want to be when you grow up?</b>
<br>
<i>&emsp;&emsp;Rich</i>
<br>
&emsp;<b>Happy ka ba kay Sir Happy?</b>
<br>
<i>&emsp;&emsp;Happy!!</i>
<br>
&emsp;<b>Kapag nagluto si Sir Happy, Happy Meal ba tawag dun?</b>
<br>
<i>&emsp;&emsp;Buti pa yung meal, happy</i>
<br>
&emsp;<b>Expected grade sa MIS21?</b>
<br>
<i>&emsp;&emsp;B HAHAHA jk pls</i>
<br>
&emsp;<b>Ano ang favorite final fantasy mo? </b>
<br>
<i>&emsp;&emsp;GTA lang alam ko</i>
<br>
&emsp;<b>(For the purposes of being in this institution, the question was censored)</b>
<br>
<i>&emsp;&emsp;**toot**</i>
</p>
</div> </div>
<div class="col-md-4">
<%=image_tag("principe.jpg")%>
</div>
<div class="col-md-2">
</div>
</div>
</div>
</div>
</div>
<hr>
<div class="about">
<div class ="row">
<center>
<h3>The Developers</h3>
<h5>
<a href="/about/evilla">Evilla, Galen Solo E.</a>
<a href="/about/gomez">Gomez, Feliz Marie B.</a>
<a href="/about/guian">Guian, April D.</a>
<a href="/about/principe">Principe, Jasmine Nicole G.</a>
</h5>
</center>
<hr>
</div>
</div>
</div>
</div>
</div>
<%= simple_form_for([:admin, @candidate]) do |f| %>
<%= f.input :first_name, label: 'First Name: '%>
<%= f.input :last_name, label: 'Last Name: '%>
<%= f.input :slogan, label: 'Slogan: '%>
<%= f.association :position, label: 'Position: '%>
<%= f.submit %>
<% end %>
<% provide(:candidate, "active") %>
<% provide(:title, "Edit Candidate" ) %>
<h1>Edit Candidate's Information</h1>
<%= render partial: "form" %>
<%= link_to "Back to Candidates", admin_candidates_path %>
\ No newline at end of file
<% provide(:candidate, "active") %>
<% provide(:title, "Candidates") %>
<div class ="container">
<div class="row">
<div class="col-md-12">
<center>
<h1>Candidates</h1>
<%=link_to "Add a candidate", new_admin_candidate_path%>
</center>
<%@positions.each do |p|%>
<hr>
<h1><center><%=p.name%></center></h1>
<table class="table table-hover">
<thead>
<th><center>Name</center></th>
<th><center>Slogan</center></th>
</thead>
<%p.candidates.each do |c|%>
<tr>
<td>
<center>
<%=link_to c.full_name, admin_candidate_path(c.id)%>
</center>
</td>
<td>
<center><%=c.slogan%></center>
</td>
</tr>
<%end%>
</table>
<%end%>
</div>
</div>
</div>
<% provide(:candidate, "active") %>
<% provide(:title, "New Candidate" ) %>
<h1>New Candidate</h1>
<%= render partial: "form" %>
<% provide(:candidate, "active") %>
<% provide(:title, "#{@candidate.full_name}" ) %>
<h1>Name of the Candidate: <%= @candidate.full_name%></h1>
<%=link_to "Edit", edit_admin_candidate_path(@candidate.id)%>
<br>
<%=link_to "Delete", admin_candidate_path(@candidate.id), method: :delete%>
<br>
<h3>Position: <%= @candidate.position.name %></h3>
<%
m=0
f=0
l=0
@candidate.votes.each do |v|
if v.user != nil
if v.user.gender=="Male"
m=m+1
else
if v.user.gender=="Female"
f=f+1
else
l=l+1
end
end
end
%>
<%end%>
<hr>
<h3>Slogan: <%= @candidate.slogan%></h3>
<hr>
<table width="100%">
<h4>Gender of Voters</h4>
<tr>
<th>Male Voters</th>
<th>Female Voters</th>
<th>LGBT Voters</th>
<th>Total Votes</th>
</tr>
<tr>
<td><%= m%> <progress value="<%= m%>" max="<%= @candidate.votes.count %>" > </td>
<td><%= f%> <progress value="<%= f%>" max="<%= @candidate.votes.count %>" ></td>
<td><%= l%> <progress value="<%= l%>" max="<%= @candidate.votes.count %>" ></td>
<td><%= @candidate.votes.count %></td>
</tr>
</table>
<hr>
<h3>Voters who voted for <%= @candidate.full_name%></h3>
<ul>
<li>
<% @candidate.votes.each do |v|%>
<%= "#{v.user.full_name}"%>
<p>
Comments: <%=v.comment%>
</p>
</li>
<%end%>
</ul>
<hr>
<%= link_to "Back to Candidates", admin_candidates_path %>
\ No newline at end of file
<%= simple_form_for([:admin, @position]) do |f| %>
<%= f.input :name, label: 'Position Name: ' %>
<%= f.submit %>
<% end %>
<% provide(:position, "active") %>
<% provide(:title, "Edit Position" ) %>
<h1>Edit Position</h1>
<%= render partial: "form" %>
<%= link_to "Back to Candidates", admin_candidates_path %>
\ No newline at end of file
<% provide(:position, "active") %>
<% provide(:title, "Positions") %>
<h1>Positions</h1>
<%=link_to "Add New Position", new_admin_position_path%>
<hr>
<% @positions.each do |p| %>
<h2><%= link_to p.name, admin_position_path(p.id) %></h2>
<ul>
<% p.candidates.each do |c|%>
<li><%=link_to c.full_name, admin_candidate_path(c.id)%></li>
<% end %>
</ul>
<% end %>
\ No newline at end of file
<% provide(:position, "active") %>
<% provide(:title, "New Position" ) %>
<h1>New Position</h1>
<%= render partial: "form" %>
<% provide(:position, "active") %>
<% provide(:title, "#{@position.name}" ) %>
<h1><%= @position.name%></h1>
<%=link_to "Edit", edit_admin_position_path(@position.id)%>
<br>
<%=link_to "Delete", admin_position_path(@position.id), method: :delete%>
<br>
<hr>
<h2>Candidates for <%=@position.name%></h2>
<ul>
<%@position.candidates.each do |c|%>
<li><%=link_to c.full_name, admin_candidate_path(c.id)%></li>
<%end%>
</ul>
<%= link_to "<Back to Positions", admin_positions_path %>
\ No newline at end of file
<h2>Resend confirmation instructions</h2>
<%= simple_form_for(resource, as: resource_name, url: confirmation_path(resource_name), html: { method: :post }) do |f| %>
<%= f.error_notification %>
<%= f.full_error :confirmation_token %>
<div class="form-inputs">
<%= f.input :email, required: true, autofocus: true %>
</div>
<div class="form-actions">
<%= f.button :submit, "Resend confirmation instructions" %>
</div>
<% end %>
<%= render "devise/shared/links" %>
<p>Welcome <%= @email %>!</p>
<p>You can confirm your account email through the link below:</p>
<p><%= link_to 'Confirm my account', confirmation_url(@resource, confirmation_token: @token) %></p>
<p>Hello <%= @resource.email %>!</p>
<p>We're contacting you to notify you that your password has been changed.</p>
<p>Hello <%= @resource.email %>!</p>
<p>Someone has requested a link to change your password. You can do this through the link below.</p>
<p><%= link_to 'Change my password', edit_password_url(@resource, reset_password_token: @token) %></p>
<p>If you didn't request this, please ignore this email.</p>
<p>Your password won't change until you access the link above and create a new one.</p>
<p>Hello <%= @resource.email %>!</p>
<p>Your account has been locked due to an excessive number of unsuccessful sign in attempts.</p>
<p>Click the link below to unlock your account:</p>
<p><%= link_to 'Unlock my account', unlock_url(@resource, unlock_token: @token) %></p>
<h2>Change your password</h2>
<%= simple_form_for(resource, as: resource_name, url: password_path(resource_name), html: { method: :put }) do |f| %>
<%= f.error_notification %>
<%= f.input :reset_password_token, as: :hidden %>
<%= f.full_error :reset_password_token %>
<div class="form-inputs">
<%= f.input :password, label: "New password", required: true, autofocus: true, hint: ("#{@minimum_password_length} characters minimum" if @minimum_password_length) %>
<%= f.input :password_confirmation, label: "Confirm your new password", required: true %>
</div>
<div class="form-actions">
<%= f.button :submit, "Change my password" %>
</div>
<% end %>
<%= render "devise/shared/links" %>
<h2>Forgot your password?</h2>
<%= simple_form_for(resource, as: resource_name, url: password_path(resource_name), html: { method: :post }) do |f| %>
<%= f.error_notification %>
<div class="form-inputs">
<%= f.input :email, required: true, autofocus: true %>
</div>
<div class="form-actions">
<%= f.button :submit, "Send me reset password instructions" %>
</div>
<% end %>
<%= render "devise/shared/links" %>
<div class="authform">
<h2>Edit <%= resource_name.to_s.humanize %></h2>
<%= simple_form_for(resource, as: resource_name, url: registration_path(resource_name), html: { method: :put, :role => 'form' }) do |f| %>
<%= f.error_notification %>
<div class="form-inputs">
<%= f.input :first_name, required: true, autofocus: true %>
<%= f.input :last_name, required: true %>
<%= f.input :birthday, :end_year => Date.today.year - 18, :start_year => 1920, :order => [ :day, :month, :year], required: true %>
<%= f.input :gender, as: :select, collection: ["Male", "Female", "LGBT"], required: true %>
<%= f.input :email, required: true %>
<% if devise_mapping.confirmable? && resource.pending_reconfirmation? %>
<p>Currently waiting confirmation for: <%= resource.unconfirmed_email %></p>
<% end %>
<%= f.input :password, autocomplete: "off", hint: "leave it blank if you don't want to change it", required: false %>
<%= f.input :password_confirmation, required: false %>
<%= f.input :current_password, hint: "we need your current password to confirm your changes", required: true %>
</div>
<div class="form-actions">
<%= f.button :submit, "Update" %>
</div>
<% end %>
<h3>Cancel my account</h3>
<p>Unhappy? <%= link_to "Cancel my account", registration_path(resource_name), data: { confirm: "Are you sure?" }, method: :delete %></p>
<%= link_to "Back", :back %>
</div>
\ No newline at end of file
<h2>Sign up</h2>
<%= simple_form_for(resource, as: resource_name, url: registration_path(resource_name), :html => { :role => 'form'}) do |f| %>
<%= f.error_notification %>
<div class="form-inputs">
<%= f.input :first_name, required: true, autofocus: true %>
<%= f.input :last_name, required: true %>
<%=
f.input :birthday, :start_year => Date.today.year - 18, :end_year => 1920, :order => [ :day, :month, :year], :required => true
%>
<%= f.input :gender, as: :select, collection: ["Male", "Female", "LGBT"], required: true %>
<%= f.input :email, required: true %>
<%= f.input :password, required: true, hint: ("#{@minimum_password_length} characters minimum" if @minimum_password_length) %>
<%= f.input :password_confirmation, required: true %>
</div>
<div class="form-actions">
<%= f.button :submit, "Sign up" %>
</div>
<% end %>
<%= render "devise/shared/links" %>
<h2>Log in</h2>
<%= simple_form_for(resource, as: resource_name, url: session_path(resource_name)) do |f| %>
<div class="form-inputs">
<%= f.input :email, required: false, autofocus: true %>
<%= f.input :password, required: false %>
<%= f.input :remember_me, as: :boolean if devise_mapping.rememberable? %>
</div>
<div class="form-actions">
<%= f.button :submit, "Log in" %>
</div>
<% end %>
<%= render "devise/shared/links" %>
<%- if controller_name != 'sessions' %>
<%= link_to "Log in", new_session_path(resource_name) %><br />
<% end -%>
<%- if devise_mapping.registerable? && controller_name != 'registrations' %>
<%= link_to "Sign up", new_registration_path(resource_name) %><br />
<% end -%>
<%- if devise_mapping.recoverable? && controller_name != 'passwords' && controller_name != 'registrations' %>
<%= link_to "Forgot your password?", new_password_path(resource_name) %><br />
<% end -%>
<%- if devise_mapping.confirmable? && controller_name != 'confirmations' %>
<%= link_to "Didn't receive confirmation instructions?", new_confirmation_path(resource_name) %><br />
<% end -%>
<%- if devise_mapping.lockable? && resource_class.unlock_strategy_enabled?(:email) && controller_name != 'unlocks' %>
<%= link_to "Didn't receive unlock instructions?", new_unlock_path(resource_name) %><br />
<% end -%>
<%- if devise_mapping.omniauthable? %>
<%- resource_class.omniauth_providers.each do |provider| %>
<%= link_to "Sign in with #{OmniAuth::Utils.camelize(provider)}", omniauth_authorize_path(resource_name, provider) %><br />
<% end -%>
<% end -%>
<h2>Resend unlock instructions</h2>
<%= simple_form_for(resource, as: resource_name, url: unlock_path(resource_name), html: { method: :post }) do |f| %>
<%= f.error_notification %>
<%= f.full_error :unlock_token %>
<div class="form-inputs">
<%= f.input :email, required: true, autofocus: true %>
</div>
<div class="form-actions">
<%= f.button :submit, "Resend unlock instructions" %>
</div>
<% end %>
<%= render "devise/shared/links" %>
<nav class="navbar navbar-default" role="navigation">
<div class="container">
<!-- Brand and toggle get grouped for better mobile display -->
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" ><b>Halalan PH</b></a>
</div>
<!-- Collect the nav links, forms, and other content for toggling -->
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<ul class="nav navbar-nav">
<li class="<%= yield(:home) %>" ><%= link_to "Home", root_path %></li>
<li class="<%= yield(:about) %>" ><%= link_to "About", about_path %></li>
<li class="<%= yield(:candidate) %>" ><%= link_to "Candidates", admin_candidates_path %></li>
<li class="<%= yield(:position) %>" ><%= link_to "Positions", admin_positions_path %></li>
</ul>
<ul class="nav navbar-nav navbar-right">
<%if user_signed_in?%>
<li class="<%= yield(:vote) %>" ><a href="/voting/votes">Vote now</a></li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Hello, <%= current_user.first_name%>!<b class="caret"></b></a>
<ul class="dropdown-menu">
<li> <a href="/profile">My Profile</a></li>
<li><%= link_to "Logout", destroy_user_session_path, method: :delete %></li>
</u1>
</li>
<%else%>
<li><%= link_to "Log-in", new_user_session_path %></li>
<li><%= link_to "Register", new_user_registration_path %></li>
<%end%>
</ul>
</div><!-- /.navbar-collapse -->
</div><!-- /.container-fluid -->
</nav>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<title><%= yield(:title) %> | Halalan PH</title>
<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track' => true %>
<%= javascript_include_tag 'application', 'data-turbolinks-track' => true %>
<%= csrf_meta_tags %>
</head>
<body>
<%= render '/layouts/navbar' %>
<%= yield %>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style>
/* Email styles need to be inline */
</style>
</head>
<body>
<%= yield %>
</body>
</html>
<% provide(:about, "active") %>
<% provide(:title, "About") %>
<div class="container">
<div class="row">
<div class="col-md-7">
<h1 class="heading">About The Developers</h1>
<h3><a href="/about/evilla">Evilla, Galen Solo E.</a></h3>
<h3><a href="/about/gomez">Gomez, Feliz Marie B.</a></h3>
<h3><a href="/about/guian">Guian, April D.</a></h3>
<h3><a href="/about/principe">Principe, Jasmine Nicole G.</a></h3>
</div>
<% provide(:home, "active") %>
<% provide(:title, "Home") %>
<div class ="container">
<div class="row">
<div class="col-md-12">
<% if user_signed_in? %>
<% case current_user.role %>
<% when 'voter' %>
<h3>Welcome, <%= current_user.first_name%>! </h3>
<% when 'admin' %>
<h3>Welcome, Administrator</h3>
<% end %>
<% else %>
<h3>Welcome</h3>
<% end %>
<h1><center>Current Vote Tally</center></h1>
<hr>
<%@positions.each do |p|%>
<h4><center><%=p.name%></center></h4>
<table class="table table-hover">
<thead>
<th width ="40%"><center>Name</center></th>
<th><center>Votes</center></th>
</thead>
<%total = 0%>
<%p.candidates.each do |c|%>
<%total = total+c.votes.count%>
<%end%>
<%p.candidates.each do |c|%>
<tr>
<td>
<center>
<%=link_to c.full_name, admin_candidate_path(c.id)%>
</center>
</td>
<td>
<center>
<%=c.votes.count%> votes | <progress value="<%=c.votes.count%>" max="<%=@users.count%>">
</center>
</td>
</tr>
<%end%>
</table>
<%end%>
</div>
</div>
</div>
\ No newline at end of file
<h2>Hey <%=current_user.first_name%>!</h2>
<br>
You Voted for:
<br>
<ul>
<%current_user.votes.each do |v|%>
<li>
<%="#{v.candidate.position.name}: #{v.candidate.full_name}"%>
<p>
Comments: <%=v.comment%>
</p>
</li>
<%end%>
</ul>
\ No newline at end of file
<td>
<%= link_to user.email, user %>
</td>
<td>
<%= form_for(user) do |f| %>
<%= f.select(:role, User.roles.keys.map {|role| [role.titleize,role]}) %>
<%= f.submit 'Change Role', :class => 'button-xs' %>
<% end %>
</td>
<td>
<%= link_to("Delete user", user_path(user), :data => { :confirm => "Are you sure?" }, :method => :delete, :class => 'button-xs') unless user == current_user %>
</td>
\ No newline at end of file
<div class="container">
<div class="row">
<h3>Users</h3>
<div class="column">
<table class="table">
<tbody>
<% @users.each do |user| %>
<tr>
<%= render user %>
</tr>
<% end %>
</tbody>
</table>
</div>
</div>
</div>
\ No newline at end of file
<h3>User</h3>
<p>Name: <%= @user.name if @user.name %></p>
<p>Email: <%= @user.email if @user.email %></p>
<%
if @pos == nil
@pos = 0..99
else
end
%>
<%= simple_form_for([:voting, @vote]) do |f| %>
I cast my vote for
<%= f.association :candidate, collection: Candidate.where(position_id:@pos), label_method: :full_name, value_method: :id %>
<%= f.input :comment, label: 'Comment:'%>
<%= f.submit label: 'Cast Vote' %>
<% end %>
<% provide(:vote, "active") %>
<% provide(:title, "Vote now!") %>
<h1><center>VOTES</center></h1>
<hr>
<h2><center>Hello, <%= current_user.full_name %>!</center></h2>
<h4>Vote now for:</h4>
<ul>
<%@positions.each do |p|%>
<li><%=p.name%><br>
<%voted_for = false%>
<% p.candidates.each do |c|%>
<%c.votes.each do |v|%>
<%if v.user_id == current_user.id%>
You have already voted for <%= v.candidate.full_name%>
<%voted_for = true%>
<% end %>
<%end%>
<% end %>
</ol>
<%if !voted_for%>
<%=link_to "Vote for a #{p.name}", "/voting/new/#{p.id}" %>
<%else%>
<%end%>
</li>
<%end%>
</ul>
<hr>
<br>
\ No newline at end of file
<% provide(:vote, "active") %>
<% provide(:title, "Vote") %>
<h1>Vote</h1>
<%= render partial: "form" %>
<%= link_to "Back to Votes", voting_votes_path %>
#!/usr/bin/env ruby.exe
ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', __FILE__)
load Gem.bin_path('bundler', 'bundle')
#!/usr/bin/env ruby.exe
APP_PATH = File.expand_path('../config/application', __dir__)
require_relative '../config/boot'
require 'rails/commands'
#!/usr/bin/env ruby.exe
require_relative '../config/boot'
require 'rake'
Rake.application.run
#!/usr/bin/env ruby.exe
require 'pathname'
require 'fileutils'
include FileUtils
# path to your application root.
APP_ROOT = Pathname.new File.expand_path('../../', __FILE__)
def system!(*args)
system(*args) || abort("\n== Command #{args} failed ==")
end
chdir APP_ROOT do
# This script is a starting point to setup your application.
# Add necessary setup steps to this file.
puts '== Installing dependencies =='
system! 'gem install bundler --conservative'
system('bundle check') || system!('bundle install')
# puts "\n== Copying sample files =="
# unless File.exist?('config/database.yml')
# cp 'config/database.yml.sample', 'config/database.yml'
# end
puts "\n== Preparing database =="
system! 'bin/rails db:setup'
puts "\n== Removing old logs and tempfiles =="
system! 'bin/rails log:clear tmp:clear'
puts "\n== Restarting application server =="
system! 'bin/rails restart'
end
#!/usr/bin/env ruby.exe
require 'pathname'
require 'fileutils'
include FileUtils
# path to your application root.
APP_ROOT = Pathname.new File.expand_path('../../', __FILE__)
def system!(*args)
system(*args) || abort("\n== Command #{args} failed ==")
end
chdir APP_ROOT do
# This script is a way to update your development environment automatically.
# Add necessary update steps to this file.
puts '== Installing dependencies =='
system! 'gem install bundler --conservative'
system('bundle check') || system!('bundle install')
puts "\n== Updating database =="
system! 'bin/rails db:migrate'
puts "\n== Removing old logs and tempfiles =="
system! 'bin/rails log:clear tmp:clear'
puts "\n== Restarting application server =="
system! 'bin/rails restart'
end
# This file is used by Rack-based servers to start the application.
require_relative 'config/environment'
run Rails.application
require_relative 'boot'
require 'rails/all'
# Require the gems listed in Gemfile, including any gems
# you've limited to :test, :development, or :production.
Bundler.require(*Rails.groups)
module Halalan
class Application < Rails::Application
# Settings in config/environments/* take precedence over those specified here.
# Application configuration should go into files in config/initializers
# -- all .rb files in that directory are automatically loaded.
end
end
ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../Gemfile', __dir__)
require 'bundler/setup' # Set up gems listed in the Gemfile.
development:
adapter: async
test:
adapter: async
production:
adapter: redis
url: redis://localhost:6379/1
# SQLite version 3.x
# gem install sqlite3
#
# Ensure the SQLite 3 gem is defined in your Gemfile
# gem 'sqlite3'
#
default: &default
adapter: sqlite3
pool: 5
timeout: 5000
development:
<<: *default
database: db/development.sqlite3
# Warning: The database defined as "test" will be erased and
# re-generated from your development database when you run "rake".
# Do not set this db to the same as development or production.
test:
<<: *default
database: db/test.sqlite3
production:
<<: *default
database: db/production.sqlite3
# Load the Rails application.
require_relative 'application'
# Initialize the Rails application.
Rails.application.initialize!
Rails.application.configure do
# Settings specified here will take precedence over those in config/application.rb.
# In the development environment your application's code is reloaded on
# every request. This slows down response time but is perfect for development
# since you don't have to restart the web server when you make code changes.
config.cache_classes = false
# Do not eager load code on boot.
config.eager_load = false
# Show full error reports.
config.consider_all_requests_local = true
# Enable/disable caching. By default caching is disabled.
if Rails.root.join('tmp/caching-dev.txt').exist?
config.action_controller.perform_caching = true
config.cache_store = :memory_store
config.public_file_server.headers = {
'Cache-Control' => 'public, max-age=172800'
}
else
config.action_controller.perform_caching = false
config.cache_store = :null_store
end
# Don't care if the mailer can't send.
config.action_mailer.raise_delivery_errors = false
config.action_mailer.perform_caching = false
# Print deprecation notices to the Rails logger.
config.active_support.deprecation = :log
# Raise an error on page load if there are pending migrations.
config.active_record.migration_error = :page_load
# Debug mode disables concatenation and preprocessing of assets.
# This option may cause significant delays in view rendering with a large
# number of complex assets.
config.assets.debug = true
# Suppress logger output for asset requests.
config.assets.quiet = true
# Raises error for missing translations
# config.action_view.raise_on_missing_translations = true
# Use an evented file watcher to asynchronously detect changes in source code,
# routes, locales, etc. This feature depends on the listen gem.
# config.file_watcher = ActiveSupport::EventedFileUpdateChecker
end
Rails.application.configure do
# Settings specified here will take precedence over those in config/application.rb.
# Code is not reloaded between requests.
config.cache_classes = true
# Eager load code on boot. This eager loads most of Rails and
# your application in memory, allowing both threaded web servers
# and those relying on copy on write to perform better.
# Rake tasks automatically ignore this option for performance.
config.eager_load = true
# Full error reports are disabled and caching is turned on.
config.consider_all_requests_local = false
config.action_controller.perform_caching = true
# Disable serving static files from the `/public` folder by default since
# Apache or NGINX already handles this.
config.public_file_server.enabled = ENV['RAILS_SERVE_STATIC_FILES'].present?
# Compress JavaScripts and CSS.
config.assets.js_compressor = :uglifier
# config.assets.css_compressor = :sass
# Do not fallback to assets pipeline if a precompiled asset is missed.
config.assets.compile = false
# `config.assets.precompile` and `config.assets.version` have moved to config/initializers/assets.rb
# Enable serving of images, stylesheets, and JavaScripts from an asset server.
# config.action_controller.asset_host = 'http://assets.example.com'
# Specifies the header that your server uses for sending files.
# config.action_dispatch.x_sendfile_header = 'X-Sendfile' # for Apache
# config.action_dispatch.x_sendfile_header = 'X-Accel-Redirect' # for NGINX
# Mount Action Cable outside main process or domain
# config.action_cable.mount_path = nil
# config.action_cable.url = 'wss://example.com/cable'
# config.action_cable.allowed_request_origins = [ 'http://example.com', /http:\/\/example.*/ ]
# Force all access to the app over SSL, use Strict-Transport-Security, and use secure cookies.
# config.force_ssl = true
# Use the lowest log level to ensure availability of diagnostic information
# when problems arise.
config.log_level = :debug
# Prepend all log lines with the following tags.
config.log_tags = [ :request_id ]
# Use a different cache store in production.
# config.cache_store = :mem_cache_store
# Use a real queuing backend for Active Job (and separate queues per environment)
# config.active_job.queue_adapter = :resque
# config.active_job.queue_name_prefix = "Halalan_#{Rails.env}"
config.action_mailer.perform_caching = false
# Ignore bad email addresses and do not raise email delivery errors.
# Set this to true and configure the email server for immediate delivery to raise delivery errors.
# config.action_mailer.raise_delivery_errors = false
# Enable locale fallbacks for I18n (makes lookups for any locale fall back to
# the I18n.default_locale when a translation cannot be found).
config.i18n.fallbacks = true
# Send deprecation notices to registered listeners.
config.active_support.deprecation = :notify
# Use default logging formatter so that PID and timestamp are not suppressed.
config.log_formatter = ::Logger::Formatter.new
# Use a different logger for distributed setups.
# require 'syslog/logger'
# config.logger = ActiveSupport::TaggedLogging.new(Syslog::Logger.new 'app-name')
if ENV["RAILS_LOG_TO_STDOUT"].present?
logger = ActiveSupport::Logger.new(STDOUT)
logger.formatter = config.log_formatter
config.logger = ActiveSupport::TaggedLogging.new(logger)
end
# Do not dump schema after migrations.
config.active_record.dump_schema_after_migration = false
end
Rails.application.configure do
# Settings specified here will take precedence over those in config/application.rb.
# The test environment is used exclusively to run your application's
# test suite. You never need to work with it otherwise. Remember that
# your test database is "scratch space" for the test suite and is wiped
# and recreated between test runs. Don't rely on the data there!
config.cache_classes = true
# Do not eager load code on boot. This avoids loading your whole application
# just for the purpose of running a single test. If you are using a tool that
# preloads Rails for running tests, you may have to set it to true.
config.eager_load = false
# Configure public file server for tests with Cache-Control for performance.
config.public_file_server.enabled = true
config.public_file_server.headers = {
'Cache-Control' => 'public, max-age=3600'
}
# Show full error reports and disable caching.
config.consider_all_requests_local = true
config.action_controller.perform_caching = false
# Raise exceptions instead of rendering exception templates.
config.action_dispatch.show_exceptions = false
# Disable request forgery protection in test environment.
config.action_controller.allow_forgery_protection = false
config.action_mailer.perform_caching = false
# Tell Action Mailer not to deliver emails to the real world.
# The :test delivery method accumulates sent emails in the
# ActionMailer::Base.deliveries array.
config.action_mailer.delivery_method = :test
# Print deprecation notices to the stderr.
config.active_support.deprecation = :stderr
# Raises error for missing translations
# config.action_view.raise_on_missing_translations = true
end
# Be sure to restart your server when you modify this file.
# ApplicationController.renderer.defaults.merge!(
# http_host: 'example.org',
# https: false
# )
# Be sure to restart your server when you modify this file.
# Version of your assets, change this if you want to expire all your assets.
Rails.application.config.assets.version = '1.0'
# Add additional assets to the asset load path
# Rails.application.config.assets.paths << Emoji.images_path
# Precompile additional assets.
# application.js, application.css, and all non-JS/CSS in app/assets folder are already added.
# Rails.application.config.assets.precompile += %w( search.js )
# Be sure to restart your server when you modify this file.
# You can add backtrace silencers for libraries that you're using but don't wish to see in your backtraces.
# Rails.backtrace_cleaner.add_silencer { |line| line =~ /my_noisy_library/ }
# You can also remove all the silencers if you're trying to debug a problem that might stem from framework code.
# Rails.backtrace_cleaner.remove_silencers!
# Be sure to restart your server when you modify this file.
# Specify a serializer for the signed and encrypted cookie jars.
# Valid options are :json, :marshal, and :hybrid.
Rails.application.config.action_dispatch.cookies_serializer = :json
This diff is collapsed.
# Be sure to restart your server when you modify this file.
# Configure sensitive parameters which will be filtered from the log file.
Rails.application.config.filter_parameters += [:password]
# Be sure to restart your server when you modify this file.
# Add new inflection rules using the following format. Inflections
# are locale specific, and you may define rules for as many different
# locales as you wish. All of these examples are active by default:
# ActiveSupport::Inflector.inflections(:en) do |inflect|
# inflect.plural /^(ox)$/i, '\1en'
# inflect.singular /^(ox)en/i, '\1'
# inflect.irregular 'person', 'people'
# inflect.uncountable %w( fish sheep )
# end
# These inflection rules are supported but not enabled by default:
# ActiveSupport::Inflector.inflections(:en) do |inflect|
# inflect.acronym 'RESTful'
# end
# Be sure to restart your server when you modify this file.
# Add new mime types for use in respond_to blocks:
# Mime::Type.register "text/richtext", :rtf
# Be sure to restart your server when you modify this file.
#
# This file contains migration options to ease your Rails 5.0 upgrade.
#
# Read the Rails 5.0 release notes for more info on each option.
# Enable per-form CSRF tokens. Previous versions had false.
Rails.application.config.action_controller.per_form_csrf_tokens = true
# Enable origin-checking CSRF mitigation. Previous versions had false.
Rails.application.config.action_controller.forgery_protection_origin_check = true
# Make Ruby 2.4 preserve the timezone of the receiver when calling `to_time`.
# Previous versions had false.
ActiveSupport.to_time_preserves_timezone = true
# Require `belongs_to` associations by default. Previous versions had false.
Rails.application.config.active_record.belongs_to_required_by_default = true
# Do not halt callback chains when a callback returns false. Previous versions had true.
ActiveSupport.halt_callback_chains_on_return_false = false
# Configure SSL options to enable HSTS with subdomains. Previous versions had false.
Rails.application.config.ssl_options = { hsts: { subdomains: true } }
# Be sure to restart your server when you modify this file.
Rails.application.config.session_store :cookie_store, key: '_Halalan_session'
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment