Refactor supplier settings
This commit is contained in:
@@ -1,2 +1,4 @@
|
||||
--color --format Fuubar
|
||||
--format html
|
||||
--out coverage/rspec_results.html
|
||||
-r turnip/rspec
|
||||
|
||||
@@ -65,7 +65,7 @@ gem 'rqrcode'
|
||||
gem 'mini_magick'
|
||||
|
||||
#gem 'geokit'
|
||||
#gem 'iso_country_codes'
|
||||
gem 'iso_country_codes'
|
||||
#gem "less-rails-bootstrap-devise", :git => 'git://github.com/bigbento/less-rails-bootstrap-devise.git'
|
||||
|
||||
# To use ActiveModel has_secure_password
|
||||
|
||||
@@ -221,6 +221,7 @@ GEM
|
||||
hike (1.2.3)
|
||||
http_parser.rb (0.6.0)
|
||||
i18n (0.6.11)
|
||||
iso_country_codes (0.4.3)
|
||||
jquery-rails (3.1.1)
|
||||
railties (>= 3.0, < 5.0)
|
||||
thor (>= 0.14, < 2.0)
|
||||
@@ -435,6 +436,7 @@ DEPENDENCIES
|
||||
font-awesome-rails
|
||||
foundation-rails
|
||||
fuubar
|
||||
iso_country_codes
|
||||
jquery-rails
|
||||
jquery-ui-rails
|
||||
js-routes
|
||||
|
||||
@@ -1,4 +1,15 @@
|
||||
Qsupplier.App.ApplicationController = Ember.Controller.extend
|
||||
init: ->
|
||||
#@set 'supplier', @store.createRecord('supplier', name: 'kkkl')
|
||||
@set 'supplier', @store.find('supplier', 'current')
|
||||
#success = (supplier)=>
|
||||
## A supplier record with id current and with the content of the returned supplier is created
|
||||
## at the moment remove the dummy supplier, this should be resolved by Ember eventually
|
||||
#if error_supplier = @store.all('supplier').findBy('id', 'current')
|
||||
#error_supplier.eraseRecord()
|
||||
#@set 'supplier', supplier
|
||||
|
||||
#error = (emberError)=>
|
||||
#if error_supplier = @store.all('supplier').findBy('id', 'current')
|
||||
#error_supplier.eraseRecord()
|
||||
#@set 'supplier', null
|
||||
#@store.find('supplier', 'current').then success, error
|
||||
@set 'supplier', @store.find('supplier', supplier_id)
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
Qsupplier.App.SettingsController = Ember.ObjectController.extend
|
||||
needs: ['application']
|
||||
model: (-> @get('controllers.application.supplier')).property('controllers.application.supplier')
|
||||
time_zones: (-> window.time_zones ).property()
|
||||
countries: (-> window.countries ).property()
|
||||
editIensProfile: (-> @get('model.country') is 'Netherlands' ).property('model.country')
|
||||
actions:
|
||||
saveSettings: ->
|
||||
@get('model').save()
|
||||
@@ -1,3 +1,15 @@
|
||||
attr = DS.attr
|
||||
Qsupplier.App.Supplier = DS.Model.extend
|
||||
name: attr 'string'
|
||||
email: attr 'string'
|
||||
time_zone: attr 'string'
|
||||
address: attr 'string'
|
||||
house_number: attr 'number'
|
||||
house_number_addition: attr 'string'
|
||||
postal_code: attr 'string'
|
||||
city: attr 'string'
|
||||
country: attr 'string'
|
||||
facebook_promotion_url: attr 'string'
|
||||
iens_profile: attr 'string'
|
||||
lat: attr 'number'
|
||||
lng: attr 'number'
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
DS.Model.reopen
|
||||
created_at: DS.attr('date')
|
||||
updated_at: DS.attr('date')
|
||||
eraseRecord: ->
|
||||
@clearRelationships()
|
||||
@transitionTo('deleted.saved')
|
||||
DS.Model.reopenClass
|
||||
findCached: (id)->
|
||||
return null unless id
|
||||
|
||||
@@ -10,4 +10,5 @@ Qsupplier.App.Router.map ->
|
||||
@resource 'section', path: ':section_id'
|
||||
@resource 'lists', ->
|
||||
@resource 'list', path: ':list_id'
|
||||
@route 'settings'
|
||||
#@resource 'lists', queryParams: ['state']
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
Qsupplier.App.SettingsRoute = Ember.Route.extend
|
||||
model: ->
|
||||
Em.RSVP.hash
|
||||
supplier: @controllerFor('application').get('supplier')
|
||||
setupController: (controller, model)->
|
||||
#controller.set 'model', controller.get('controllers.application.supplier')
|
||||
controller.set 'model', model.supplier
|
||||
@@ -0,0 +1,40 @@
|
||||
h2 These are Ember settings
|
||||
.form-row
|
||||
.form-label: label=t 'attributes.supplier.name'
|
||||
.form-field: Ember.TextField valueBinding="controller.model.name"
|
||||
.form-row
|
||||
.form-label: label=t 'attributes.supplier.email'
|
||||
.form-field: Qsupplier.App.EmailField valueBinding="controller.model.email"
|
||||
/input.location_picker name="location" type="text" valueBinding="location"
|
||||
/.form-row
|
||||
.location_picker_map
|
||||
= image_tag 'supplier/settings/location-balloon.png'
|
||||
/.form-row
|
||||
.form-label: label=t 'attributes.supplier.time_zone'
|
||||
.form-field: Ember.Select content=time_zones optionValuePath="content.name" optionLabelPath="content.formatted" valueBinding="controller.model.time_zone"
|
||||
.form-row
|
||||
.form-label: label=t 'attributes.supplier.address'
|
||||
.form-field.full
|
||||
.row
|
||||
.large-8.medium-8.columns: Ember.TextField valueBinding="controller.model.address"
|
||||
.large-1.show-for-large-up.columns
|
||||
.large-2.medium-2.small-3.columns: Qsupplier.App.NumberField valueBinding="controller.model.house_number"
|
||||
.large-1.medium-2.small-2.columns: Ember.TextField valueBinding="controller.model.house_number_addition"
|
||||
.form-row
|
||||
.form-label: label=t 'attributes.supplier.postal_code'
|
||||
.form-field: Ember.TextField valueBinding="controller.model.postal_code"
|
||||
.form-row
|
||||
.form-label: label=t 'attributes.supplier.city'
|
||||
.form-field: Ember.TextField valueBinding="controller.model.city"
|
||||
.form-row
|
||||
.form-label: label=t 'attributes.supplier.country'
|
||||
.form-field: Ember.Select content=countries optionValuePath="content.name" optionLabelPath="content.name" valueBinding="controller.model.country"
|
||||
if editIensProfile
|
||||
.form-row
|
||||
.form-label: label=t 'attributes.supplier.iens_profile'
|
||||
.form-field
|
||||
Qsupplier.App.NumberField valueBinding="controller.model.iens_profile"
|
||||
= image_tag 'supplier/settings/iens-example.png'
|
||||
span=t "settings.reviews.explanation"
|
||||
.form-row.form-actions
|
||||
button.button{action 'saveSettings'} Save settings
|
||||
@@ -0,0 +1,14 @@
|
||||
Qsupplier.App.ApplicationView = Ember.View.extend
|
||||
didInsertElement: ->
|
||||
selector_mappings =
|
||||
'.top-menu-root': '/'
|
||||
'.top-menu-lists': 'lists'
|
||||
'.top-menu-sections': 'sections'
|
||||
'.top-menu-lists': 'lists'
|
||||
'.supplier-settings-link': 'settings'
|
||||
|
||||
for selector, route of selector_mappings
|
||||
do (selector, route)=>
|
||||
$(selector).click (e)=>
|
||||
e.preventDefault()
|
||||
@get('controller').transitionToRoute route
|
||||
@@ -0,0 +1,3 @@
|
||||
Qsupplier.App.EmailField = Ember.TextField.extend
|
||||
type: 'email'
|
||||
#attributeBindings: ['min', 'max', 'step']
|
||||
@@ -0,0 +1,90 @@
|
||||
Qsupplier.App.SettingsView = Ember.View.extend
|
||||
templateName: 'settings'
|
||||
didInsertElement: ->
|
||||
return
|
||||
|
||||
iconBase = 'https://maps.google.com/mapfiles/kml/'
|
||||
#location_input = @$('.location_picker')
|
||||
#map_div = $('<div>').addClass("location_picker_map")
|
||||
map_div = @$('.location_picker_map')
|
||||
|
||||
#location_input.before(map_div)
|
||||
#this.parentNode.insertBefore(map_div, this)
|
||||
#location_input.hide()
|
||||
|
||||
#lat = 52.07436798080633
|
||||
#lng = 4.316811561584473
|
||||
#if @get('controller.location') and @get('controller.location').split(',').length == 2
|
||||
#values = @get('controller.location').split(',')
|
||||
#lat = values[0]
|
||||
#lng = values[1]
|
||||
lat = @get('controller.model.lat')
|
||||
lng = @get('controller.model.lng')
|
||||
center = new google.maps.LatLng(lat,lng)
|
||||
mapOptions =
|
||||
zoom: 15
|
||||
center: center
|
||||
mapTypeId: google.maps.MapTypeId.ROADMAP,
|
||||
zoomControl: true
|
||||
zoomControlOptions:
|
||||
style: google.maps.ZoomControlStyle.SMALL
|
||||
mapTypeControl: false
|
||||
panControl: false
|
||||
scaleControl: false
|
||||
streetViewControl: false
|
||||
|
||||
map = new google.maps.Map(map_div.get(0), mapOptions)
|
||||
marker = new google.maps.Marker(
|
||||
position: center
|
||||
map: map
|
||||
title: 'Location'
|
||||
icon: '/assets/icons/maps_location.png'
|
||||
)
|
||||
google.maps.event.addListener(map, 'click', (point)=>
|
||||
marker.setPosition(point.latLng)
|
||||
#location_input.val point.latLng.lat() + ','+ point.latLng.lng()
|
||||
@set 'controller.model.lat', point.latLng.lat()
|
||||
@set 'controller.model.lng', point.latLng.lng()
|
||||
)
|
||||
|
||||
search_field = $('<input type="text">')
|
||||
search_field.addClass('location_picker_search')
|
||||
autocomplete = new google.maps.places.Autocomplete(search_field.get(0))
|
||||
autocomplete.bindTo('bounds', map)
|
||||
search_field.keypress( (e) ->
|
||||
if e.which == 13
|
||||
e.preventDefault()
|
||||
)
|
||||
window.autocomplete = autocomplete
|
||||
map_div.before(search_field)
|
||||
infowindow = new google.maps.InfoWindow()
|
||||
search_marker = new google.maps.Marker({map: map, icon: iconBase + 'shapes/placemark_circle.png'})
|
||||
google.maps.event.addListener autocomplete, 'place_changed', ->
|
||||
infowindow.close()
|
||||
search_marker.setVisible(false)
|
||||
place = autocomplete.getPlace()
|
||||
return unless place.geometry
|
||||
#if place.geometry.viewport
|
||||
# map.fitBounds(place.geometry.viewport)
|
||||
#else
|
||||
map.setCenter(place.geometry.location)
|
||||
map.setZoom(17)
|
||||
image =
|
||||
url: place.icon
|
||||
size: new google.maps.Size(71, 71)
|
||||
origin: new google.maps.Point(0, 0)
|
||||
anchor: new google.maps.Point(17, 34)
|
||||
scaledSize: new google.maps.Size(35, 35)
|
||||
#search_marker.setIcon(image)
|
||||
search_marker.setPosition(place.geometry.location)
|
||||
search_marker.setVisible(true)
|
||||
|
||||
address = ''
|
||||
if place.address_components
|
||||
address = [
|
||||
(place.address_components[0] && place.address_components[0].short_name || ''),
|
||||
(place.address_components[1] && place.address_components[1].short_name || ''),
|
||||
(place.address_components[2] && place.address_components[2].short_name || '')
|
||||
].join(' ')
|
||||
infowindow.setContent('<div><strong>' + place.name + '</strong><br>' + address + '</div>')
|
||||
infowindow.open(map, search_marker)
|
||||
@@ -23,6 +23,8 @@ $.extend($translations.nl, <%= I18n.t('supplier', locale: :nl).to_json %>);
|
||||
String.prototype.capitalize = function() {
|
||||
return this.charAt(0).toUpperCase() + this.slice(1);
|
||||
}
|
||||
window.time_zones = <%= ActiveSupport::TimeZone.all.map{|tz| {name: tz.name, formatted: "GMT#{tz.formatted_offset} #{tz.name}"}}.to_json.html_safe %>;
|
||||
window.countries = <%= IsoCountryCodes.all.map{|cc| {name: cc.name}}.to_json.html_safe %>;
|
||||
|
||||
var path_mapping = {
|
||||
user_root: '/user',
|
||||
|
||||
@@ -40,7 +40,26 @@ $ ->
|
||||
|
||||
setupTranslations()
|
||||
|
||||
# GOOGLE LOCATION PICKER
|
||||
|
||||
$('.toggle-side-menu,.side-menu').click ->
|
||||
menu = $('aside.side-menu')
|
||||
toggle = $('.toggle-side-menu')
|
||||
if menu.is(':visible')
|
||||
menu.animate left: -255, -> $(@).hide()
|
||||
toggle.animate left: 0, -> $(@).removeClass('open')
|
||||
else
|
||||
menu.show().animate left: 0
|
||||
toggle.animate left: 222 - 30, -> $(@).addClass('open')
|
||||
|
||||
$('[data-boolean]').each ->
|
||||
$(@).addClass(if $(@).data('boolean') then 'boolean-true' else 'boolean-false')
|
||||
|
||||
# Hide alert boxes on click
|
||||
$(document).on 'click', '.general-alerts .alert-box', -> $(@).slideUp()
|
||||
|
||||
$(document).on 'click', '.supplier-is-closed', -> $(@).slideUp()
|
||||
# GOOGLE LOCATION PICKER
|
||||
###
|
||||
$("input.location_picker").each (i)->
|
||||
#return if typeof(google) == 'undefined'
|
||||
iconBase = 'https://maps.google.com/mapfiles/kml/'
|
||||
@@ -124,21 +143,4 @@ $ ->
|
||||
infowindow.setContent('<div><strong>' + place.name + '</strong><br>' + address + '</div>')
|
||||
infowindow.open(map, search_marker)
|
||||
# end google location map
|
||||
|
||||
$('.toggle-side-menu,.side-menu').click ->
|
||||
menu = $('aside.side-menu')
|
||||
toggle = $('.toggle-side-menu')
|
||||
if menu.is(':visible')
|
||||
menu.animate left: -255, -> $(@).hide()
|
||||
toggle.animate left: 0, -> $(@).removeClass('open')
|
||||
else
|
||||
menu.show().animate left: 0
|
||||
toggle.animate left: 222 - 30, -> $(@).addClass('open')
|
||||
|
||||
$('[data-boolean]').each ->
|
||||
$(@).addClass(if $(@).data('boolean') then 'boolean-true' else 'boolean-false')
|
||||
|
||||
# Hide alert boxes on click
|
||||
$(document).on 'click', '.general-alerts .alert-box', -> $(@).slideUp()
|
||||
|
||||
$(document).on 'click', '.supplier-is-closed', -> $(@).slideUp()
|
||||
###
|
||||
|
||||
@@ -2,5 +2,5 @@ DS.Model.reopen
|
||||
created_at: DS.attr('date')
|
||||
updated_at: DS.attr('date')
|
||||
eraseRecord: ->
|
||||
@clearRelationships();
|
||||
@transitionTo('deleted.saved');
|
||||
@clearRelationships()
|
||||
@transitionTo('deleted.saved')
|
||||
|
||||
@@ -11,3 +11,6 @@ aside.side-menu
|
||||
list-style: none
|
||||
a
|
||||
color: white
|
||||
.supplier-close-shop
|
||||
+alert($bg: $alert-color, $radius: true)
|
||||
padding: 3px
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
@import ./qdashboard
|
||||
@import ./qdisplays
|
||||
@import ./form_actions
|
||||
@import ./qforms
|
||||
@import ./components/*
|
||||
@import ./menu_main
|
||||
@import ./menu_side
|
||||
@import ./qsections
|
||||
|
||||
+6
@@ -15,8 +15,14 @@
|
||||
@media #{$large-up}
|
||||
+grid-column($columns: 3, $last-column:true)
|
||||
&.full
|
||||
@media #{$small-only}
|
||||
+grid-column($columns:10, $center:true, $last-column:true)
|
||||
@media #{$medium-only}
|
||||
+grid-column($columns:6, $last-column:true)
|
||||
@media #{$large-up}
|
||||
+grid-column($columns: 9, $last-column:true)
|
||||
&.form-actions
|
||||
padding-top: 12px
|
||||
body
|
||||
label
|
||||
&.number
|
||||
@@ -12,18 +12,24 @@ class SupplierController < ApplicationController
|
||||
end
|
||||
|
||||
def current
|
||||
respond_to do |format|
|
||||
format.json { render json: {supplier: current_supplier.as_json} }
|
||||
end
|
||||
render json: SupplierSupplierSerializer.new(current_supplier).as_json
|
||||
end
|
||||
|
||||
# POST /supplier/settings
|
||||
def update
|
||||
@supplier = current_supplier
|
||||
if current_supplier.update_attributes(supplier_params)
|
||||
redirect_to supplier_root_path
|
||||
else
|
||||
render action: :edit
|
||||
respond_to do |format|
|
||||
format.html do
|
||||
if current_supplier.update_attributes(supplier_params)
|
||||
redirect_to supplier_root_path
|
||||
else
|
||||
render action: :edit
|
||||
end
|
||||
end
|
||||
format.json do
|
||||
current_supplier.update_attributes(supplier_params)
|
||||
render nothing: true
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -119,6 +125,29 @@ class SupplierController < ApplicationController
|
||||
private
|
||||
|
||||
def supplier_params
|
||||
params.require(:supplier).permit(:name, :email, :open, :time_zone, :night_offset, :location, :lat, :lng, :offer_wifi, :wifi_ssid, :wifi_type, :wifi_password, :iens_profile)
|
||||
params.require(:supplier).permit(
|
||||
:name,
|
||||
:email,
|
||||
:open,
|
||||
:time_zone,
|
||||
:night_offset,
|
||||
:location,
|
||||
:lat,
|
||||
:lng,
|
||||
:offer_wifi,
|
||||
:wifi_ssid,
|
||||
:wifi_type,
|
||||
:wifi_password,
|
||||
:iens_profile,
|
||||
:address,
|
||||
:house_number,
|
||||
:house_number_addition,
|
||||
:postal_code,
|
||||
:city,
|
||||
:country,
|
||||
:facebook_promotion_url,
|
||||
:created_at,
|
||||
:updated_at
|
||||
)
|
||||
end
|
||||
end
|
||||
|
||||
@@ -10,10 +10,17 @@ class Supplier
|
||||
property :open, type: :boolean, default: false
|
||||
property :time_zone, default: 'UTC'
|
||||
property :night_offset, type: Fixnum, default: 0 # Minutes
|
||||
property :address
|
||||
property :house_number
|
||||
property :house_number_addition
|
||||
property :postal_code
|
||||
property :city
|
||||
property :country, default: 'Netherlands'
|
||||
property :facebook_promotion_url
|
||||
|
||||
#LOCATION
|
||||
property :lat, type: Float, default: 52.08062426379751
|
||||
property :lng, type: Float, default: 4.312562942504883
|
||||
property :lat, type: Float #, default: 52.08062426379751
|
||||
property :lng, type: Float #, default: 4.312562942504883
|
||||
|
||||
#WIFI
|
||||
property :offer_wifi
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
class SupplierSupplierSerializer < Qwaiter::Serializer
|
||||
self.root = :supplier
|
||||
attributes :extended_version, :open, :name
|
||||
attributes :extended_version, :open, :name, :lat, :lng, :email, :time_zone, :address, :house_number, :house_number_addition, :postal_code, :city, :country,
|
||||
:facebook_promotion_url, :iens_profile
|
||||
|
||||
def extended_version
|
||||
false
|
||||
|
||||
@@ -15,6 +15,9 @@ html lang="en"
|
||||
= render 'suppliers/application/head'
|
||||
= javascript_include_tag "supplier/foundation1/application"
|
||||
= yield :head
|
||||
= javascript_include_tag "https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false&libraries=places&language=#{I18n.locale}"
|
||||
javascript:
|
||||
supplier_id="#{current_supplier.id}";
|
||||
|
||||
body
|
||||
= render 'suppliers/application/top_menu'
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
- content_for :head do
|
||||
= javascript_include_tag "https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false&libraries=places&language=#{I18n.locale}"
|
||||
= javascript_include_tag 'supplier/app/application'
|
||||
|
||||
= form_for @supplier, url: supplier_update_settings_path, html: {class: 'form-horizontal'} do |f|
|
||||
/= form_for @supplier, url: supplier_update_settings_path, html: {class: 'form-horizontal'} do |f|
|
||||
= render 'suppliers/application/error_messages', target: current_supplier
|
||||
.control-group class=(@supplier.errors[:name].any? ? 'error' : nil)
|
||||
= f.label :name, class: 'control-label'
|
||||
|
||||
@@ -5,12 +5,12 @@ header.top-menu
|
||||
section.main-buttons
|
||||
//li= link_to t('supplier.menu.active_orders', orders: Order.model_name.human_plural), supplier_active_orders_path
|
||||
//li= link_to t('supplier.menu.active_lists', lists: List.model_name.human_plural), supplier_active_lists_path
|
||||
= link_to image_tag('icons/logo-small.png'), supplier_root_path
|
||||
= link_to ProductCategory.model_name.human_plural, suppliers_product_categories_path, data: {t: 'models.plural.product_category'}
|
||||
= link_to Product.model_name.human_plural, suppliers_products_path, data: {t: 'models.plural.product'}
|
||||
= link_to Section.model_name.human_plural, suppliers_sections_path, data: {t: 'models.plural.section'}
|
||||
= link_to Table.model_name.human_plural, suppliers_tables_path, data: {t: 'models.plural.table'}
|
||||
= link_to List.model_name.human_plural, suppliers_lists_path, data: {t: 'models.plural.list'}
|
||||
= link_to image_tag('icons/logo-small.png'), supplier_root_path, class: 'top-menu-root'
|
||||
= link_to ProductCategory.model_name.human_plural, suppliers_product_categories_path, data: {t: 'models.plural.product_category'}, class: 'top-menu-product_categories'
|
||||
= link_to Product.model_name.human_plural, suppliers_products_path, data: {t: 'models.plural.product'}, class: 'top-menu-products'
|
||||
= link_to Section.model_name.human_plural, suppliers_sections_path, data: {t: 'models.plural.section'}, class: 'top-menu-sections'
|
||||
= link_to Table.model_name.human_plural, suppliers_tables_path, data: {t: 'models.plural.table'}, class: 'top-menu-tables'
|
||||
= link_to List.model_name.human_plural, suppliers_lists_path, data: {t: 'models.plural.list'}, class: 'top-menu-lists'
|
||||
section.extra-info
|
||||
.supplier-info-row
|
||||
.supplier-name= current_supplier.name.presence || current_supplier.email
|
||||
@@ -29,9 +29,9 @@ aside.side-menu
|
||||
- if current_supplier.open?
|
||||
li
|
||||
= form_tag supplier_mark_as_closed_path do
|
||||
= submit_tag t('supplier.close'), class: [:btn, 'btn-danger'], onClick: %|$(this).parents('form').submit()|
|
||||
li= link_to 'Settings', supplier_settings_path
|
||||
li= link_to 'Logout', destroy_supplier_session_path, method: :delete
|
||||
= submit_tag t('supplier.close'), class: 'supplier-close-shop', onClick: %|$(this).parents('form').submit()|
|
||||
li= link_to 'Settings', supplier_settings_path, class: 'supplier-settings-link'
|
||||
li= link_to 'Logout', destroy_supplier_session_path, method: :delete, class: 'supplier-sign-out-link'
|
||||
/.navbar.navbar-fixed-top.navbar-inverse
|
||||
.navbar-inner
|
||||
.container
|
||||
|
||||
@@ -4,6 +4,9 @@ h2= t('devise.sessions.title')
|
||||
= f.row :email do
|
||||
.form-label= f.label :email
|
||||
.form-field= f.email_field :email
|
||||
= f.row :email do
|
||||
.form-label= f.label :password, class: 'control-label'
|
||||
.form-field= f.password_field :password
|
||||
.form-row
|
||||
= f.label :remember_me do
|
||||
= f.check_box :remember_me
|
||||
|
||||
@@ -86,7 +86,7 @@ en:
|
||||
settings:
|
||||
reviews:
|
||||
title: Reviews
|
||||
explanation: Fill in your Iens id. You can find this id in the web location of your profile
|
||||
explanation: Fill in your Iens id. You can find this id in the web location of your page
|
||||
product_category:
|
||||
week_days:
|
||||
abbreviation:
|
||||
|
||||
@@ -86,7 +86,7 @@ nl:
|
||||
settings:
|
||||
reviews:
|
||||
title: Reviews
|
||||
explanation: Vul hier je iens id in. Deze kan je halen uit de url van je iens profiel
|
||||
explanation: Vul hier je iens id in. Deze kan je halen uit de url van je iens pagina
|
||||
product_category:
|
||||
week_days:
|
||||
abbreviation:
|
||||
|
||||
@@ -83,6 +83,8 @@ Qwaiter::Application.routes.draw do
|
||||
|
||||
|
||||
get '/supplier/suppliers/current' => 'supplier#current' #ember
|
||||
get '/supplier/suppliers/:id' => 'supplier#current' #ember
|
||||
put '/supplier/suppliers/:id' => 'supplier#update' #ember
|
||||
|
||||
#match '/show_products' => 'dashboard#show_products', as: :user_products
|
||||
# GENERAL
|
||||
|
||||
@@ -125,6 +125,15 @@ RSpec.configure do |config|
|
||||
Capybara.session_name = :default
|
||||
end
|
||||
|
||||
config.after :suite do
|
||||
rspec_outfile = Rails.root.join('coverage/rspec_results.html')
|
||||
result = File.read rspec_outfile
|
||||
replacement = %|<body><div><a href="index.html" style="padding:4px 8px;background-color:#393;color:white;font-weight:bold;border:2px #050 outset">Coverage</a></div>|
|
||||
result.gsub! /<body>/, replacement
|
||||
File.open(rspec_outfile, 'w'){|f| f.puts result}
|
||||
`open #{rspec_outfile}`
|
||||
end
|
||||
|
||||
# If true, the base class of anonymous controllers will be inferred
|
||||
# automatically. This will be the default behavior in future versions of
|
||||
# rspec-rails.
|
||||
|
||||
Reference in New Issue
Block a user