section improvements, area elements mostly
This commit is contained in:
@@ -52,7 +52,7 @@ class SvgElementClass
|
||||
$(target).css('border', '1px solid black')
|
||||
@compileSource()
|
||||
compileSource: ->
|
||||
source = @text_field.val()
|
||||
return unless source = @text_field.val()
|
||||
results = $(@text_field.data('preview'))
|
||||
window.compiledJS = ''
|
||||
try
|
||||
|
||||
@@ -7,9 +7,11 @@
|
||||
#= require shared-ember-helpers/all
|
||||
#= require ./app
|
||||
#= require_directory ./mixins
|
||||
#= require_directory ./services
|
||||
#= require ./controllers/modals/base_controller
|
||||
#= require ion.sound
|
||||
#= require_tree .
|
||||
|
||||
@$assets_path = '/assets/'
|
||||
@EmberENV = {FEATURES: {'query-params-new': true}}
|
||||
@$days = ['sunday', 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday']
|
||||
|
||||
@@ -0,0 +1,34 @@
|
||||
App.SectionAreaComponent = Ember.Component.extend DragNDrop.Draggable,
|
||||
classNames: ['section-area-container']
|
||||
attributeBindings: ['style']
|
||||
classNameBindings: ['vertical', 'right_half:right-half', 'section_area.rounded:rounded']
|
||||
pixelWidth: Ember.computed 'section_area.width', 'dpm', -> @get('dpm') * @get('section_area.width')
|
||||
pixelHeight: Ember.computed 'section_area.height', 'dpm', -> @get('dpm') * @get('section_area.height')
|
||||
offsetX: Ember.computed.product 'dpm', 'content.position_x'
|
||||
offsetY: Ember.computed.product 'dpm', 'content.position_y'
|
||||
vertical: Ember.computed 'section_area.width', 'section_area.height', 'targetObject.editmode', ->
|
||||
not @get('targetObject.editmode') and @get('section_area.height') > @get('section_area.width')
|
||||
right_half: Ember.computed 'section_area.position_x', 'section_area.width', 'section_area.sectino.width', ->
|
||||
@get('section_area.position_x') + (@get('section_area.width') / 2) > (@get('section_area.section.width') / 2)
|
||||
style: Ember.computed 'offsetX', 'offsetY', 'pixelWidth', 'pixelHeight', ->
|
||||
App.CssObject.create(
|
||||
width: @get('pixelWidth')
|
||||
height: @get('pixelHeight')
|
||||
left: @get('offsetX')
|
||||
top: @get('offsetY')
|
||||
"line-height": @get('pixelHeight')
|
||||
).toString()
|
||||
content: Ember.computed.alias 'section_area'
|
||||
draggable: (-> if @get('targetObject.editmode') then 'true' else 'false' ).property('targetObject.editmode')
|
||||
dpm: Ember.computed.alias 'parentView.dpm'
|
||||
positionChange: (position)->
|
||||
dpm = @get('dpm')
|
||||
return if !dpm or parseFloat(dpm) is 0
|
||||
@get('content').setProperties
|
||||
position_x: position.left / dpm
|
||||
position_y: position.top / dpm
|
||||
click: ->
|
||||
return unless @get('targetObject.editmode')
|
||||
@get('targetObject').modal 'section_area',
|
||||
title_path: 'section_area.modal.title'
|
||||
model: @get('section_area')
|
||||
-14
@@ -19,17 +19,3 @@ App.modals.SectionAddTablesController = App.modals.BaseController.extend
|
||||
#@store.pushPayload 'table', result
|
||||
@store.pushPayload result
|
||||
@send 'close'
|
||||
|
||||
#TODO remove followin code if Ember pushPayload is working
|
||||
#properly with associations
|
||||
section_id = @get('model.id')
|
||||
tables_that_should_be_in_section = @store.all('table').filter((t)->t.get('section.id') == section_id)
|
||||
current_table_ids = @get('model.tables').mapProperty('id')
|
||||
for table in tables_that_should_be_in_section.toArray()
|
||||
@get('model.tables').pushObject(table) unless table.get('id') in current_table_ids
|
||||
#TODO it still does not work for the second client side action,
|
||||
#soo the good old reload for now for the failing case
|
||||
window.location.reload() if result.tables.length != tables_that_should_be_in_section.toArray().length
|
||||
return
|
||||
|
||||
|
||||
|
||||
@@ -9,5 +9,4 @@ App.modals.TableEditController = App.modals.BaseController.extend
|
||||
saveTable: ->
|
||||
#@set 'model.section', @get('selectedSection')
|
||||
@set 'model.section', @get('model.section')
|
||||
#debugger
|
||||
@send 'save'
|
||||
|
||||
@@ -7,6 +7,7 @@ App.SectionController = Ember.ObjectController.extend
|
||||
@set('editmode', false)
|
||||
@get('model').save()
|
||||
@get('model.section_elements').forEach (section_element) -> section_element.save()
|
||||
@get('model.section_areas').forEach (section_area) -> section_area.save()
|
||||
rollbackEditable: ->
|
||||
@get('model').rollback()
|
||||
@get('model.section_elements').forEach (section_element) ->
|
||||
@@ -14,6 +15,11 @@ App.SectionController = Ember.ObjectController.extend
|
||||
section_element.rollback()
|
||||
else
|
||||
section_element.deleteRecord()
|
||||
@get('model.section_areas').forEach (section_area) ->
|
||||
if section_area.get('id')
|
||||
section_area.rollback()
|
||||
else
|
||||
section_area.deleteRecord()
|
||||
@set('editmode', false)
|
||||
addSection: -> @modal 'add_section', model: @get('model')
|
||||
addTables: -> @modal 'section_add_tables', model: @get('model')
|
||||
@@ -28,7 +34,14 @@ App.SectionController = Ember.ObjectController.extend
|
||||
@modal 'add_section_element',
|
||||
model: @get('model')
|
||||
ok: => @send 'makeEditable'
|
||||
removeSectionElement: (section_element)-> section_element.destroy()
|
||||
addSectionArea: ->
|
||||
section_area = @store.createRecord('section-area')
|
||||
section_area.set 'section', @get('model')
|
||||
@modal 'section_area',
|
||||
title_path: 'section_area.add_button'
|
||||
model: section_area
|
||||
ok: => @send 'makeEditable'
|
||||
removeSectionElement: (section_element)-> section_element.destroyRecord()
|
||||
textures: ['wood1', 'wood2']
|
||||
|
||||
sections: (-> @get('controllers.sections.model')).property('controllers.sections.model')
|
||||
|
||||
@@ -2,7 +2,6 @@ App.SectionsIndexController = Ember.ArrayController.extend
|
||||
needs: ['application', 'sections', 'index']
|
||||
sections: (-> @get('controllers.sections.model')).property('controllers.sections.model')
|
||||
sectionQrCodesUrl: ((a,b,c)->
|
||||
debugger
|
||||
Routes.qr_codes_suppliers_tables_path()
|
||||
).property()
|
||||
newPath: Routes.new_suppliers_section_path()
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
Ember.Handlebars.helper 'select-hour', (params..., options)->
|
||||
debugger
|
||||
result = "<select class=\"select-hour\">"
|
||||
result += "<option>#{hour}</option>" for hour in [0..24]
|
||||
result += "</select>"
|
||||
|
||||
@@ -11,8 +11,8 @@ DragNDrop.Draggable = Ember.Mixin.create
|
||||
draggable: 'true'
|
||||
dragStart: (ev)->
|
||||
@set 'content.isDragging', true
|
||||
@set 'controller.isDragging', true
|
||||
@set 'controller.controllers.application.isDragging', true
|
||||
@set 'targetObject.isDragging', true
|
||||
@set 'targetObject.controllers.application.isDragging', true
|
||||
localStorage.setItem('draggingView', @get('elementId'))
|
||||
dataTransfer = ev.originalEvent.dataTransfer
|
||||
#dataTransfer.setData 'Text', @get('elementId')
|
||||
@@ -25,8 +25,8 @@ DragNDrop.Draggable = Ember.Mixin.create
|
||||
pageY: ev.originalEvent.pageY
|
||||
dragEnd: (e)->
|
||||
@set 'content.isDragging', false
|
||||
@set 'controller.isDragging', false
|
||||
@set 'controller.controllers.application.isDragging', false
|
||||
@set 'targetObject.isDragging', false
|
||||
@set 'targetObject.controllers.application.isDragging', false
|
||||
localStorage.removeItem 'draggingView' if localStorage.getItem 'draggingView'
|
||||
|
||||
DragNDrop.Droppable = Ember.Mixin.create
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
attr = DS.attr
|
||||
App.SectionArea = DS.Model.extend Ember.Validations.Mixin,
|
||||
title: attr 'string'
|
||||
width: attr 'number', defaultValue: 2
|
||||
height: attr 'number', defaultValue: 2
|
||||
position_x: attr 'number', defaultValue: 0
|
||||
position_y: attr 'number', defaultValue: 0
|
||||
rounded: attr 'boolean', defaultValue: false
|
||||
section: DS.belongsTo('section')
|
||||
validations:
|
||||
title: {presence: true}
|
||||
@@ -5,3 +5,4 @@ App.Section = DS.Model.extend
|
||||
height: attr 'number'
|
||||
tables: DS.hasMany('table')
|
||||
section_elements: DS.hasMany('section-element')
|
||||
section_areas: DS.hasMany('section-area')
|
||||
|
||||
@@ -45,7 +45,6 @@ DS.Model.reopenClass
|
||||
#relation = relation[0]
|
||||
#if relation.kind == 'belongsTo' and id = attributes["#{relation.name}_id"]
|
||||
#attributes[relation.name] = id unless attributes[relation.name]
|
||||
#debugger if options.debug
|
||||
#belongs_tos[relation.name] = id
|
||||
|
||||
nested_attributes = {}
|
||||
@@ -53,8 +52,6 @@ DS.Model.reopenClass
|
||||
# pushPayload makes association back references, just push not yet 2014-06-27
|
||||
new_record = @store.pushPayload(nested_attributes)
|
||||
|
||||
#debugger if options.debug
|
||||
|
||||
#promises = []
|
||||
#association_names = []
|
||||
#Ember.get(@, 'relationships').forEach (model, relation)=>
|
||||
@@ -64,7 +61,6 @@ DS.Model.reopenClass
|
||||
#promises.push @store.find(relation.name, id)
|
||||
#association_names.push relation.name
|
||||
#Ember.RSVP.all(promises).then (records)->
|
||||
#debugger
|
||||
#for record, i in records
|
||||
##console.log "Setting relation #{relation.name} to #{record.get('id')}"
|
||||
#new_record.set association_names[i], record
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
App.SectionsRoute = Ember.Route.extend
|
||||
beforeModel: ->
|
||||
@store.find 'section-element'
|
||||
@store.find 'section-area'
|
||||
model: -> @store.all 'section'
|
||||
|
||||
# setupController: (controller, collection) ->
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
Ember.computed.product = ->
|
||||
args = []
|
||||
for arg in arguments
|
||||
args.push arg
|
||||
callback = ->
|
||||
product = 1
|
||||
for key in args
|
||||
continue unless typeof(key) is 'string'
|
||||
product *= @get(key) || 0
|
||||
product
|
||||
args.push callback
|
||||
Ember.computed.apply(@, args)
|
||||
@@ -0,0 +1,10 @@
|
||||
App.CssObject = Ember.Object.extend
|
||||
pixel_fields: ['width', 'height', 'left', 'top', 'line-height']
|
||||
isNumeric: /^[-+]?(\d+|\d+\.\d+)$/
|
||||
toString: ->
|
||||
ret = ""
|
||||
for k, v of JSON.parse(JSON.stringify(@))
|
||||
if @pixel_fields.indexOf(k) > -1
|
||||
v = "#{v}px" if @isNumeric.test(v)
|
||||
ret += "#{k}:#{v};"
|
||||
ret
|
||||
@@ -0,0 +1 @@
|
||||
.title= section_area.title
|
||||
@@ -0,0 +1,21 @@
|
||||
.form-row.title
|
||||
.form-label=t 'attributes.section_area.title'
|
||||
.form-field
|
||||
= input valueBinding="model.title"
|
||||
.form-info
|
||||
span.dimension m
|
||||
= errors model.errors.title
|
||||
.form-row.width
|
||||
.form-label=t 'attributes.section_area.width'
|
||||
.form-field= input type="number" valueBinding="model.width"
|
||||
.form-row.height
|
||||
.form-label=t 'attributes.section_area.height'
|
||||
.form-field= input type="number" valueBinding="model.height"
|
||||
.form-row.rounded
|
||||
.form-label= t 'attributes.section_area.rounded'
|
||||
.form-field= view "boolean-switch" value=model.rounded
|
||||
hr
|
||||
button.modal-close{action "close"}=t 'section_area.modal.close_button'
|
||||
button.modal-confirm.right{action "save"} disabled=model.isInvalid
|
||||
=t 'section_area.modal.save_button'
|
||||
button.modal-destroy.right{action "destroy"}= t 'section_area.modal.destroy_button'
|
||||
@@ -19,8 +19,9 @@
|
||||
ul
|
||||
li: a{action "addTables"}: span.section-add-tables-icon=t 'section.add_tables.button_label'
|
||||
li: a{action "arrangeTables"}: span.section-arrange-tables-icon=t 'section.arrange_tables.modal.title'
|
||||
li: a href="{{route 'qr_codes_suppliers_tables_path' section_id=id}}" target="_blank": span.qr-icon=t 'table.print_qr_codes'
|
||||
li: a{action "addSectionElement"}: span.section-add-section-element-icon= t 'section_element.add_button'
|
||||
li: a{action "addSectionArea"}: span.section-add-section-area-icon= t 'section_area.add_button'
|
||||
li: a href="{{route 'qr_codes_suppliers_tables_path' section_id=id}}" target="_blank": span.qr-icon=t 'table.print_qr_codes'
|
||||
li: a.section-destroy{action "destroySection"}: span.section-remove-icon=t 'helpers.links.destroy'
|
||||
a.section-edit-mode-button{ action "makeEditable" }: span
|
||||
= view "section-tables" contentBinding="tables"
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
.table-number= table.number
|
||||
.status-icons
|
||||
unless editmode
|
||||
.status-icons
|
||||
span.needs_payment
|
||||
span.needs_help
|
||||
span.active_order
|
||||
@@ -19,8 +20,3 @@ if table.active_list
|
||||
a{action "editTable" table}: span.fa.fa-lg.fa-wrench
|
||||
each user in table.active_list.users
|
||||
= user.avatar_tag
|
||||
if editmodedisabled
|
||||
.table-settings
|
||||
select
|
||||
option Round
|
||||
option rectangular
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
each element in section_elements
|
||||
view "section-element" content=element
|
||||
each section_element in section_elements
|
||||
view "section-element" content=section_element
|
||||
each section_area in section_areas
|
||||
= section-area section_area=section_area
|
||||
each table in tables
|
||||
= view "section-table" content=table
|
||||
|
||||
@@ -17,6 +17,7 @@ App.SectionElementView = Ember.View.extend DragNDrop.Draggable,
|
||||
return 0 unless dpm = @get('dpm')
|
||||
dpm * (@get('content.position_y') || 0)
|
||||
).property('dpm', 'content.position_y', 'content.rotation')
|
||||
targetObject: Ember.computed.alias 'controller'
|
||||
#myHeight: (-> (@get('dpm') || 0 ) * @get('content.height')).property('dpm', 'content.height')
|
||||
#myWidth: (-> (@get('dpm') || 0 ) * @get('content.width')).property('dpm', 'content.width')
|
||||
|
||||
|
||||
@@ -29,6 +29,7 @@ App.SectionTableView = Ember.View.extend DragNDrop.Draggable,
|
||||
"position:absolute;width:#{@get('myWidth')}px;height:#{@get('myHeight')}px;left:#{@get('offsetX')}px;top:#{@get('offsetY')}px"
|
||||
|
||||
draggable: (-> if @get('controller.editmode') then 'true' else 'false' ).property('controller.editmode')
|
||||
targetObject: Ember.computed.alias 'controller'
|
||||
placeInSection: ->
|
||||
@$el.css 'left', @offsetX()
|
||||
@$el.css 'top', @offsetY()
|
||||
|
||||
@@ -1,21 +1,15 @@
|
||||
#App.SectionView = Ember.View.extend {}
|
||||
#initFoundation: (->
|
||||
#debugger
|
||||
#@$().foundation()
|
||||
#).on('didInsertElement')
|
||||
#didInsertElement: ->
|
||||
#@$().foundation()
|
||||
#debugger
|
||||
#true
|
||||
#$(document).on 'load', '[data-dropdown]', (a,b,c)->
|
||||
#debugger
|
||||
#true
|
||||
#$(document).on 'change', '[data-dropdown]', (a,b,c)->
|
||||
#debugger
|
||||
#true
|
||||
#$(document).on 'ready', '[data-dropdown]', (a,b,c)->
|
||||
#debugger
|
||||
#true
|
||||
#$(document).on 'click', '[data-dropdown]', (a,b,c)->
|
||||
#debugger
|
||||
#true
|
||||
|
||||
@@ -67,6 +67,10 @@
|
||||
@extend .fa, .fa-image
|
||||
span
|
||||
padding-left: 7px
|
||||
span.section-add-section-area-icon
|
||||
@extend .fa, .fa-square
|
||||
span
|
||||
padding-left: 7px
|
||||
input
|
||||
height: auto
|
||||
padding-top: 4px
|
||||
|
||||
@@ -53,8 +53,8 @@ body
|
||||
margin: 0
|
||||
.main-section
|
||||
+panel($bg:rgba(200,200,200,0.9))
|
||||
padding-bottom: 72px
|
||||
padding: 0
|
||||
padding-bottom: 72px
|
||||
margin: 0
|
||||
min-height: 100%
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
@media #{$medium-only}
|
||||
+grid-column($columns:4, $last-column:true)
|
||||
@media #{$large-up}
|
||||
+grid-column($columns: 3, $last-column:true)
|
||||
+grid-column($columns: 4, $last-column:true)
|
||||
&.full
|
||||
@media #{$small-only}
|
||||
+grid-column($columns:10, $center:true, $last-column:true)
|
||||
@@ -27,6 +27,13 @@
|
||||
+grid-column(6)
|
||||
.error
|
||||
color: $alert-color
|
||||
.form-info
|
||||
@media #{$small-only}
|
||||
+grid-column($columns:10, $center:true)
|
||||
@media #{$medium-only}
|
||||
+grid-column($columns:4, $offset:1)
|
||||
@media #{$large-up}
|
||||
+grid-column(3)
|
||||
.error-message
|
||||
color: $alert-color
|
||||
&.form-actions
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
.section-area-container
|
||||
position: absolute
|
||||
background-color: #aaa
|
||||
text-align: center
|
||||
&.rounded
|
||||
border-radius: 999px
|
||||
.title
|
||||
display: inline-block
|
||||
&.vertical
|
||||
.title
|
||||
transform: rotate(270deg)
|
||||
&.right-half
|
||||
.title
|
||||
transform: rotate(90deg)
|
||||
|
||||
@@ -27,7 +27,7 @@ class DashboardController < ApplicationController
|
||||
if Rails.env.test?
|
||||
@tables = Table.all
|
||||
else
|
||||
@tables = List.active.map(&:table) | Supplier.find_by_name('Bora').tables.sample(3)
|
||||
@tables = List.active.map(&:table) | Supplier.find_by_name('Mozo').tables.select{|t| t.number.between? 20, 50}.sample(3)
|
||||
end
|
||||
respond_to do |format|
|
||||
format.html { render layout: 'phone' }
|
||||
|
||||
@@ -0,0 +1,36 @@
|
||||
module Suppliers
|
||||
class SectionAreasController < Suppliers::ApplicationController
|
||||
def index
|
||||
@section_areas = SectionArea.for_supplier(current_supplier)
|
||||
render json: @section_areas, each_serializer: Suppliers::SectionAreaSerializer
|
||||
end
|
||||
|
||||
def create
|
||||
@section_area.supplier = current_supplier
|
||||
if @section_area.save
|
||||
render json: @section_area, serializer: Suppliers::SectionAreaSerializer
|
||||
else
|
||||
render json: {errors: @section.errors}, status: :unprocessable_entity
|
||||
end
|
||||
end
|
||||
|
||||
def update
|
||||
if @section_area.update_attributes section_area_params
|
||||
render json: @section_area, serializer: Suppliers::SectionAreaSerializer
|
||||
else
|
||||
render json: {errors: @section.errors}, status: :unprocessable_entity
|
||||
end
|
||||
end
|
||||
|
||||
def destroy
|
||||
@section_area.destroy
|
||||
head :ok
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def section_area_params
|
||||
params.require(:section_area).permit %i[title width height position_x position_y section_id rounded]
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -22,6 +22,11 @@ module Suppliers
|
||||
end
|
||||
end
|
||||
|
||||
def destroy
|
||||
@section_element.destroy()
|
||||
head :ok
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def section_element_params
|
||||
|
||||
@@ -124,14 +124,16 @@ module Suppliers
|
||||
@section = Section.find_by_supplier_id_and_id!(current_supplier.id, params[:id])
|
||||
number_start = params[:number_start].to_i
|
||||
number_end = params[:number_end].to_i
|
||||
added_tables = []
|
||||
for table_number in number_start..number_end
|
||||
next if table_number.zero?
|
||||
table = Table.new(number: table_number)
|
||||
table.supplier = current_supplier
|
||||
table.section = @section
|
||||
table.save
|
||||
added_tables << table
|
||||
end
|
||||
@section.arrange_tables_in_grid
|
||||
@section.arrange_tables_in_grid added_tables
|
||||
table_json = ActiveModel::ArraySerializer.new(@section.tables, each_serializer: SupplierTableSerializer, root: false).as_json
|
||||
render json: {tables: table_json}
|
||||
end
|
||||
|
||||
@@ -11,6 +11,7 @@ class Section
|
||||
has_many :lists
|
||||
has_many :orders
|
||||
has_many :section_elements
|
||||
has_many :section_areas
|
||||
|
||||
attr_protected :supplier_id
|
||||
|
||||
@@ -99,7 +100,7 @@ class Section
|
||||
@for_tables_as_json = h
|
||||
end
|
||||
|
||||
def arrange_tables_in_grid
|
||||
def arrange_tables_in_grid(tables = self.tables)
|
||||
w = width
|
||||
h = height
|
||||
n = tables.size
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
class SectionArea
|
||||
include SimplyStored::Couch
|
||||
include ActiveModel::SerializerSupport
|
||||
property :title
|
||||
property :width, type: Float, default: 2
|
||||
property :height, type: Float, default: 2
|
||||
property :position_x, type: Float, default: 0
|
||||
property :position_y, type: Float, default: 0
|
||||
property :rounded, type: :boolean, default: false
|
||||
belongs_to :section
|
||||
belongs_to :supplier
|
||||
|
||||
view :by_supplier_id, key: :supplier_id
|
||||
|
||||
def self.for_supplier(supplier)
|
||||
find_all_by_supplier_id(supplier.id)
|
||||
end
|
||||
end
|
||||
@@ -0,0 +1,3 @@
|
||||
class Suppliers::SectionAreaSerializer < Qwaiter::Serializer
|
||||
attributes :title, :width, :height, :position_x, :position_y, :section_id, :rounded
|
||||
end
|
||||
@@ -14,8 +14,9 @@ en:
|
||||
user_feedback: User feedback
|
||||
employee: Employee
|
||||
employee_shift: Shift
|
||||
section_element: Section element
|
||||
svg_element: Svg element
|
||||
section_element: Section element
|
||||
section_area: Section area
|
||||
plural:
|
||||
user: Users
|
||||
supplier: Restaurants
|
||||
@@ -30,8 +31,9 @@ en:
|
||||
user_feedback: User feedbacks
|
||||
employee: Employees
|
||||
employee_shift: Shifts
|
||||
section_element: Section elements
|
||||
svg_element: Svg elements
|
||||
section_element: Section elements
|
||||
section_area: Section areas
|
||||
attributes:
|
||||
product_category:
|
||||
name: Name
|
||||
@@ -117,3 +119,7 @@ en:
|
||||
position_x: X
|
||||
position_y: Y
|
||||
rotation: Angle
|
||||
section_area:
|
||||
title: Title
|
||||
width: Width
|
||||
height: Height
|
||||
|
||||
@@ -13,8 +13,9 @@ nl:
|
||||
join_request: Deelname verzoek
|
||||
employee: Werknemer
|
||||
employee_shift: Shift
|
||||
section_element: Ruimte element
|
||||
svg_element: Svg element
|
||||
section_element: Ruimte element
|
||||
section_area: Ruimte blok
|
||||
plural:
|
||||
user: Gebruikers
|
||||
supplier: Restaurants
|
||||
@@ -28,8 +29,9 @@ nl:
|
||||
join_request: Deelname verzoeken
|
||||
employee: Werknemers
|
||||
employee_shift: Shifts
|
||||
section_element: Ruimte elementen
|
||||
svg_element: Svg element
|
||||
section_element: Ruimte elementen
|
||||
section_area: Ruimte blokken
|
||||
attributes:
|
||||
product_category:
|
||||
name: Naam
|
||||
@@ -116,3 +118,7 @@ nl:
|
||||
position_x: X
|
||||
position_y: Y
|
||||
rotation: Angle
|
||||
section_area:
|
||||
title: Titel
|
||||
width: Breedte
|
||||
height: Hoogte
|
||||
|
||||
@@ -215,3 +215,10 @@ en:
|
||||
add_button: Add ${models.section_element}
|
||||
modal:
|
||||
title: Add ${models.section_element}
|
||||
section_area:
|
||||
add_button: Add ${models.section_area}
|
||||
modal:
|
||||
title: Add ${models.section_area}
|
||||
save_button: Save
|
||||
close_button: Close
|
||||
destroy_button: Delete
|
||||
|
||||
@@ -218,3 +218,7 @@ nl:
|
||||
add_button: ${models.section_element} toevoegen
|
||||
modal:
|
||||
title: ${models.section_element} toevoegen
|
||||
section_area:
|
||||
add_button: ${models.section_area} toevoegen
|
||||
modal:
|
||||
title: ${models.section_area} toevoegen
|
||||
|
||||
+2
-1
@@ -121,8 +121,9 @@ Qwaiter::Application.routes.draw do
|
||||
end
|
||||
end
|
||||
|
||||
resources :section_elements
|
||||
resources :svg_elements, only: [:index, :show]
|
||||
resources :section_elements
|
||||
resources :section_areas
|
||||
resources :tables do
|
||||
collection do
|
||||
get :qr_codes
|
||||
|
||||
@@ -0,0 +1,429 @@
|
||||
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns:ns1="http://sozi.baierouge.fr"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
id="svg3963"
|
||||
sodipodi:docname="New document 2"
|
||||
viewBox="0 0 247.14 407.32"
|
||||
version="1.1"
|
||||
inkscape:version="0.48.0 r9654"
|
||||
>
|
||||
<defs
|
||||
id="defs3965"
|
||||
>
|
||||
<filter
|
||||
id="filter7488"
|
||||
width="1.4366"
|
||||
y="-.10959"
|
||||
x="-.21831"
|
||||
height="1.2192"
|
||||
color-interpolation-filters="sRGB"
|
||||
inkscape:collect="always"
|
||||
>
|
||||
<feGaussianBlur
|
||||
id="feGaussianBlur7490"
|
||||
stdDeviation="7.0059565"
|
||||
inkscape:collect="always"
|
||||
/>
|
||||
</filter
|
||||
>
|
||||
</defs
|
||||
>
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
bordercolor="#666666"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-y="24"
|
||||
fit-margin-left="0"
|
||||
pagecolor="#ffffff"
|
||||
fit-margin-top="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:zoom="0.35"
|
||||
inkscape:window-x="45"
|
||||
inkscape:window-height="728"
|
||||
showgrid="false"
|
||||
borderopacity="1.0"
|
||||
inkscape:current-layer="layer1"
|
||||
inkscape:cx="245.71482"
|
||||
inkscape:cy="-90.625854"
|
||||
fit-margin-right="0"
|
||||
fit-margin-bottom="0"
|
||||
inkscape:window-width="1235"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:document-units="px"
|
||||
/>
|
||||
<g
|
||||
id="layer1"
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
transform="translate(-79.285 -34.417)"
|
||||
>
|
||||
<g
|
||||
id="g3884"
|
||||
transform="matrix(3.8444 0 0 3.8992 983.02 -474.62)"
|
||||
>
|
||||
<g
|
||||
id="g7290"
|
||||
style="opacity:.85646;filter:url(#filter7488);fill:#22241c"
|
||||
transform="matrix(.58099 0 0 .16115 -328.17 169.07)"
|
||||
>
|
||||
<g
|
||||
id="g7292"
|
||||
style="fill:#22241c"
|
||||
transform="matrix(.25045 0 0 .30776 368.12 231.8)"
|
||||
>
|
||||
<path
|
||||
id="path7294"
|
||||
style="fill:#22241c"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m-657.13 371.05c-0.74601 23.684-1.2185 46.666-1.3558 67.468-0.40599 61.49 2.2746 87.055 6.4604 71.371-2.7111 2.1109-4.2486-22.664-3.8253-71.988 0.70331-81.933 6.5544-200.68 13.061-265.03 1.616-15.983 3.1194-27.261 4.46-33.854-1.8758 1.6446-4.2046 13.922-6.7788 37.126-5.1271 46.215-9.7834 123.86-12.021 194.91z"
|
||||
/>
|
||||
<path
|
||||
id="path7296"
|
||||
sodipodi:rx="26.428572"
|
||||
sodipodi:ry="83.571426"
|
||||
style="fill:#22241c"
|
||||
sodipodi:type="arc"
|
||||
d="m-639.74 213.67c-4.2925 44.114-19.082 68.872-33.032 55.299-13.951-13.574-21.78-60.339-17.488-104.45 4.2925-44.114 19.082-68.872 33.032-55.299 12.12 11.792 19.883 49.141 18.498 88.999"
|
||||
sodipodi:open="true"
|
||||
transform="matrix(.59066 .069109 -.11621 .99322 -226.66 22.953)"
|
||||
sodipodi:cy="189.09448"
|
||||
sodipodi:cx="-665"
|
||||
sodipodi:end="6.3925649"
|
||||
sodipodi:start="0.29849893"
|
||||
/>
|
||||
<path
|
||||
id="path7298"
|
||||
style="fill:#22241c"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m-572.41 274.08c-35.63 0.12944-68.593 25.952-79.618 66.062-3.5841 13.039-4.4842 26.28-3.0682 39 15.615-49.25 60.336-84.821 102.58-80.375 38.792 4.082 62.928 39.435 58.497 85.656l-3.1922 18.062c-1.6962 6.5767-3.9057 12.94-6.5703 19.031 4.9388-7.8506 8.8708-16.673 11.529-26.344l3.2077-17.312c4.4305-45.161-19.721-86.264-58.513-99.625-8.269-2.8481-16.633-4.1861-24.856-4.1562z"
|
||||
/>
|
||||
<path
|
||||
id="path7300"
|
||||
style="fill:#22241c"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m-707.81 200.38c23.423 0.12944 45.093 25.952 52.341 66.062 2.3562 13.039 2.9479 26.28 2.017 39-10.265-49.25-39.664-84.821-67.438-80.375-25.501 4.082-41.368 39.435-38.456 85.656l2.0985 18.062c1.1151 6.5767 2.5676 12.94 4.3193 19.031-3.2467-7.8506-5.8316-16.673-7.5791-26.344l-2.1087-17.312c-2.9126-45.161 12.965-86.264 38.466-99.625 5.436-2.8481 10.935-4.1861 16.34-4.1562z"
|
||||
/>
|
||||
<path
|
||||
id="path7302"
|
||||
style="fill:#22241c"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m-673.39 168.33c1.4015 13.985 3.2942 27.379 5.6225 39.299 6.8821 35.234 15.78 47.881 22.673 36.027-5.478 3.1042-11.855-9.897-17.168-38.228-8.8261-47.062-11.381-118.66-5.6993-159.81 1.4112-10.219 3.1764-17.685 5.1866-22.374-3.767 2.2524-7.155 10.866-9.6872 25.863-5.0433 29.869-5.1322 77.269-0.92771 119.22z"
|
||||
/>
|
||||
<path
|
||||
id="path7304"
|
||||
sodipodi:rx="26.428572"
|
||||
sodipodi:ry="83.571426"
|
||||
style="fill:#22241c"
|
||||
sodipodi:type="arc"
|
||||
d="m-639.74 213.67c-4.2925 44.114-19.082 68.872-33.032 55.299-13.951-13.574-21.78-60.339-17.488-104.45 4.2925-44.114 19.082-68.872 33.032-55.299 12.12 11.792 19.883 49.141 18.498 88.999"
|
||||
sodipodi:open="true"
|
||||
transform="matrix(-.46359 .055437 .091208 .79673 -996.37 255.3)"
|
||||
sodipodi:cy="189.09448"
|
||||
sodipodi:cx="-665"
|
||||
sodipodi:end="6.3925649"
|
||||
sodipodi:start="0.29849893"
|
||||
/>
|
||||
<path
|
||||
id="path7306"
|
||||
style="fill:#22241c"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m-702.71 360.38c19.161 0.12944 36.889 25.952 42.818 66.062 1.9275 13.039 2.4115 26.28 1.65 39-8.3975-49.25-32.448-84.821-55.168-80.375-20.862 4.082-33.842 39.435-31.459 85.656l1.7167 18.062c0.9122 6.5767 2.1004 12.94 3.5334 19.031-2.656-7.8506-4.7706-16.673-6.2002-26.344l-1.725-17.312c-2.3826-45.161 10.606-86.264 31.468-99.625 4.447-2.8481 8.9452-4.1861 13.367-4.1562z"
|
||||
/>
|
||||
</g
|
||||
>
|
||||
<g
|
||||
id="g7308"
|
||||
style="fill:#22241c"
|
||||
transform="matrix(.24526 .050711 -.062317 .30139 395.93 270.52)"
|
||||
>
|
||||
<path
|
||||
id="path7310"
|
||||
style="fill:#22241c"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m-657.13 371.05c-0.74601 23.684-1.2185 46.666-1.3558 67.468-0.40599 61.49 2.2746 87.055 6.4604 71.371-2.7111 2.1109-4.2486-22.664-3.8253-71.988 0.70331-81.933 6.5544-200.68 13.061-265.03 1.616-15.983 3.1194-27.261 4.46-33.854-1.8758 1.6446-4.2046 13.922-6.7788 37.126-5.1271 46.215-9.7834 123.86-12.021 194.91z"
|
||||
/>
|
||||
<path
|
||||
id="path7312"
|
||||
sodipodi:rx="26.428572"
|
||||
sodipodi:ry="83.571426"
|
||||
style="fill:#22241c"
|
||||
sodipodi:type="arc"
|
||||
d="m-639.74 213.67c-4.2925 44.114-19.082 68.872-33.032 55.299-13.951-13.574-21.78-60.339-17.488-104.45 4.2925-44.114 19.082-68.872 33.032-55.299 12.12 11.792 19.883 49.141 18.498 88.999"
|
||||
sodipodi:open="true"
|
||||
transform="matrix(.59066 .069109 -.11621 .99322 -226.66 22.953)"
|
||||
sodipodi:cy="189.09448"
|
||||
sodipodi:cx="-665"
|
||||
sodipodi:end="6.3925649"
|
||||
sodipodi:start="0.29849893"
|
||||
/>
|
||||
<path
|
||||
id="path7314"
|
||||
style="fill:#22241c"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m-572.41 274.08c-35.63 0.12944-68.593 25.952-79.618 66.062-3.5841 13.039-4.4842 26.28-3.0682 39 15.615-49.25 60.336-84.821 102.58-80.375 38.792 4.082 62.928 39.435 58.497 85.656l-3.1922 18.062c-1.6962 6.5767-3.9057 12.94-6.5703 19.031 4.9388-7.8506 8.8708-16.673 11.529-26.344l3.2077-17.312c4.4305-45.161-19.721-86.264-58.513-99.625-8.269-2.8481-16.633-4.1861-24.856-4.1562z"
|
||||
/>
|
||||
<path
|
||||
id="path7316"
|
||||
style="fill:#22241c"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m-707.81 200.38c23.423 0.12944 45.093 25.952 52.341 66.062 2.3562 13.039 2.9479 26.28 2.017 39-10.265-49.25-39.664-84.821-67.438-80.375-25.501 4.082-41.368 39.435-38.456 85.656l2.0985 18.062c1.1151 6.5767 2.5676 12.94 4.3193 19.031-3.2467-7.8506-5.8316-16.673-7.5791-26.344l-2.1087-17.312c-2.9126-45.161 12.965-86.264 38.466-99.625 5.436-2.8481 10.935-4.1861 16.34-4.1562z"
|
||||
/>
|
||||
<path
|
||||
id="path7318"
|
||||
style="fill:#22241c"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m-673.39 168.33c1.4015 13.985 3.2942 27.379 5.6225 39.299 6.8821 35.234 15.78 47.881 22.673 36.027-5.478 3.1042-11.855-9.897-17.168-38.228-8.8261-47.062-11.381-118.66-5.6993-159.81 1.4112-10.219 3.1764-17.685 5.1866-22.374-3.767 2.2524-7.155 10.866-9.6872 25.863-5.0433 29.869-5.1322 77.269-0.92771 119.22z"
|
||||
/>
|
||||
<path
|
||||
id="path7320"
|
||||
sodipodi:rx="26.428572"
|
||||
sodipodi:ry="83.571426"
|
||||
style="fill:#22241c"
|
||||
sodipodi:type="arc"
|
||||
d="m-639.74 213.67c-4.2925 44.114-19.082 68.872-33.032 55.299-13.951-13.574-21.78-60.339-17.488-104.45 4.2925-44.114 19.082-68.872 33.032-55.299 12.12 11.792 19.883 49.141 18.498 88.999"
|
||||
sodipodi:open="true"
|
||||
transform="matrix(-.46359 .055437 .091208 .79673 -996.37 255.3)"
|
||||
sodipodi:cy="189.09448"
|
||||
sodipodi:cx="-665"
|
||||
sodipodi:end="6.3925649"
|
||||
sodipodi:start="0.29849893"
|
||||
/>
|
||||
<path
|
||||
id="path7322"
|
||||
style="fill:#22241c"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m-702.71 360.38c19.161 0.12944 36.889 25.952 42.818 66.062 1.9275 13.039 2.4115 26.28 1.65 39-8.3975-49.25-32.448-84.821-55.168-80.375-20.862 4.082-33.842 39.435-31.459 85.656l1.7167 18.062c0.9122 6.5767 2.1004 12.94 3.5334 19.031-2.656-7.8506-4.7706-16.673-6.2002-26.344l-1.725-17.312c-2.3826-45.161 10.606-86.264 31.468-99.625 4.447-2.8481 8.9452-4.1861 13.367-4.1562z"
|
||||
/>
|
||||
</g
|
||||
>
|
||||
</g
|
||||
>
|
||||
<g
|
||||
id="g7247"
|
||||
transform="matrix(.18184 0 0 .20076 -89.903 125.88)"
|
||||
>
|
||||
<path
|
||||
id="path7219"
|
||||
style="fill:#008000"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m-657.13 371.05c-0.74601 23.684-1.2185 46.666-1.3558 67.468-0.40599 61.49 2.2746 87.055 6.4604 71.371-2.7111 2.1109-4.2486-22.664-3.8253-71.988 0.70331-81.933 6.5544-200.68 13.061-265.03 1.616-15.983 3.1194-27.261 4.46-33.854-1.8758 1.6446-4.2046 13.922-6.7788 37.126-5.1271 46.215-9.7834 123.86-12.021 194.91z"
|
||||
/>
|
||||
<path
|
||||
id="path7230"
|
||||
sodipodi:rx="26.428572"
|
||||
sodipodi:ry="83.571426"
|
||||
style="fill:#ffb380"
|
||||
sodipodi:type="arc"
|
||||
d="m-639.74 213.67c-4.2925 44.114-19.082 68.872-33.032 55.299-13.951-13.574-21.78-60.339-17.488-104.45 4.2925-44.114 19.082-68.872 33.032-55.299 12.12 11.792 19.883 49.141 18.498 88.999"
|
||||
sodipodi:open="true"
|
||||
transform="matrix(.59066 .069109 -.11621 .99322 -226.66 22.953)"
|
||||
sodipodi:cy="189.09448"
|
||||
sodipodi:cx="-665"
|
||||
sodipodi:end="6.3925649"
|
||||
sodipodi:start="0.29849893"
|
||||
/>
|
||||
<path
|
||||
id="path7232"
|
||||
style="fill:#338000"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m-572.41 274.08c-35.63 0.12944-68.593 25.952-79.618 66.062-3.5841 13.039-4.4842 26.28-3.0682 39 15.615-49.25 60.336-84.821 102.58-80.375 38.792 4.082 62.928 39.435 58.497 85.656l-3.1922 18.062c-1.6962 6.5767-3.9057 12.94-6.5703 19.031 4.9388-7.8506 8.8708-16.673 11.529-26.344l3.2077-17.312c4.4305-45.161-19.721-86.264-58.513-99.625-8.269-2.8481-16.633-4.1861-24.856-4.1562z"
|
||||
/>
|
||||
<path
|
||||
id="path7237"
|
||||
style="fill:#338000"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m-707.81 200.38c23.423 0.12944 45.093 25.952 52.341 66.062 2.3562 13.039 2.9479 26.28 2.017 39-10.265-49.25-39.664-84.821-67.438-80.375-25.501 4.082-41.368 39.435-38.456 85.656l2.0985 18.062c1.1151 6.5767 2.5676 12.94 4.3193 19.031-3.2467-7.8506-5.8316-16.673-7.5791-26.344l-2.1087-17.312c-2.9126-45.161 12.965-86.264 38.466-99.625 5.436-2.8481 10.935-4.1861 16.34-4.1562z"
|
||||
/>
|
||||
<path
|
||||
id="path7239"
|
||||
style="fill:#008000"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m-673.39 168.33c1.4015 13.985 3.2942 27.379 5.6225 39.299 6.8821 35.234 15.78 47.881 22.673 36.027-5.478 3.1042-11.855-9.897-17.168-38.228-8.8261-47.062-11.381-118.66-5.6993-159.81 1.4112-10.219 3.1764-17.685 5.1866-22.374-3.767 2.2524-7.155 10.866-9.6872 25.863-5.0433 29.869-5.1322 77.269-0.92771 119.22z"
|
||||
/>
|
||||
<path
|
||||
id="path7243"
|
||||
sodipodi:rx="26.428572"
|
||||
sodipodi:ry="83.571426"
|
||||
style="fill:#ffb380"
|
||||
sodipodi:type="arc"
|
||||
d="m-639.74 213.67c-4.2925 44.114-19.082 68.872-33.032 55.299-13.951-13.574-21.78-60.339-17.488-104.45 4.2925-44.114 19.082-68.872 33.032-55.299 12.12 11.792 19.883 49.141 18.498 88.999"
|
||||
sodipodi:open="true"
|
||||
transform="matrix(-.46359 .055437 .091208 .79673 -996.37 255.3)"
|
||||
sodipodi:cy="189.09448"
|
||||
sodipodi:cx="-665"
|
||||
sodipodi:end="6.3925649"
|
||||
sodipodi:start="0.29849893"
|
||||
/>
|
||||
<path
|
||||
id="path7241"
|
||||
style="fill:#338000"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m-702.71 360.38c19.161 0.12944 36.889 25.952 42.818 66.062 1.9275 13.039 2.4115 26.28 1.65 39-8.3975-49.25-32.448-84.821-55.168-80.375-20.862 4.082-33.842 39.435-31.459 85.656l1.7167 18.062c0.9122 6.5767 2.1004 12.94 3.5334 19.031-2.656-7.8506-4.7706-16.673-6.2002-26.344l-1.725-17.312c-2.3826-45.161 10.606-86.264 31.468-99.625 4.447-2.8481 8.9452-4.1861 13.367-4.1562z"
|
||||
/>
|
||||
</g
|
||||
>
|
||||
<path
|
||||
id="path7258"
|
||||
style="fill:#008000"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m-203.22 200.57c-1.2044 4.6315-2.3285 9.1343-3.2942 13.219-2.8545 12.076-3.5339 17.19-2.0789 14.245-0.57829 0.32532 0.2689-4.5964 2.576-14.279 3.8324-16.085 10.247-39.237 14.318-51.674 1.0109-3.0888 1.7889-5.2563 2.326-6.5081-0.40844 0.26129-1.3787 2.598-2.887 7.0748-3.0041 8.9164-7.3463 24.027-10.96 37.922z"
|
||||
/>
|
||||
<path
|
||||
id="path7260"
|
||||
sodipodi:rx="26.428572"
|
||||
sodipodi:ry="83.571426"
|
||||
style="fill:#ffb380"
|
||||
sodipodi:type="arc"
|
||||
d="m-639.74 213.67c-4.2925 44.114-19.082 68.872-33.032 55.299-13.951-13.574-21.78-60.339-17.488-104.45 4.2925-44.114 19.082-68.872 33.032-55.299 12.12 11.792 19.883 49.141 18.498 88.999"
|
||||
sodipodi:open="true"
|
||||
transform="matrix(.10205 .033126 -.065634 .19142 -110.81 146.37)"
|
||||
sodipodi:cy="189.09448"
|
||||
sodipodi:cx="-665"
|
||||
sodipodi:end="6.3925649"
|
||||
sodipodi:start="0.29849893"
|
||||
/>
|
||||
<path
|
||||
id="path7262"
|
||||
style="fill:#338000"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m-183.74 184.31c-6.3505-1.1532-13.389 2.833-17.167 10.354-1.2282 2.445-1.9876 5.0183-2.311 7.5659 5.009-9.166 14.582-14.68 21.904-12.408 6.7231 2.0857 9.4215 9.8346 6.5412 18.775l-1.3857 3.4455c-0.59962 1.2369-1.281 2.4149-2.0311 3.5242 1.2347-1.38 2.3341-2.9845 3.245-4.7978l1.3545-3.2975c2.8324-8.7322 0.39129-17.612-5.9119-21.522-1.3436-0.83348-2.7726-1.3732-4.2381-1.6394z"
|
||||
/>
|
||||
<path
|
||||
id="path7264"
|
||||
style="fill:#338000"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m-204.52 165.34c4.1651 0.80027 6.8556 6.5938 6.3314 14.719-0.17041 2.6415-0.66413 5.2641-1.4054 7.7342 0.40045-10.022-3.2254-17.988-8.3722-18.033-4.7258-0.0411-9.151 6.3845-10.724 15.568l-0.44358 3.6205c-0.099 1.3299-0.12829 2.629-0.0919 3.8844-0.22294-1.6508-0.28406-3.4708-0.15767-5.4299l0.40782-3.4734c1.5247-8.9751 6.2118-16.531 11.357-18.314 1.0969-0.38012 2.1366-0.46127 3.0978-0.2766z"
|
||||
/>
|
||||
<path
|
||||
id="path7266"
|
||||
style="fill:#008000"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m-196.94 160.18c-0.3832 2.7958-0.6522 5.4918-0.77693 7.9122-0.3687 7.1547 0.64358 9.9355 2.4075 7.8329-1.116 0.42907-1.6632-2.3379-1.3275-8.0836 0.55768-9.5443 3.3424-23.706 6.216-31.607 0.71368-1.9624 1.3658-3.3719 1.936-4.2272-0.77272 0.31821-1.7658 1.8997-2.8952 4.7642-2.2495 5.7054-4.4101 15.021-5.5597 23.409z"
|
||||
/>
|
||||
<path
|
||||
id="path7268"
|
||||
sodipodi:rx="26.428572"
|
||||
sodipodi:ry="83.571426"
|
||||
style="fill:#ffb380"
|
||||
sodipodi:type="arc"
|
||||
d="m-639.74 213.67c-4.2925 44.114-19.082 68.872-33.032 55.299-13.951-13.574-21.78-60.339-17.488-104.45 4.2925-44.114 19.082-68.872 33.032-55.299 12.12 11.792 19.883 49.141 18.498 88.999"
|
||||
sodipodi:open="true"
|
||||
transform="matrix(-.085061 -.0044364 -.019808 .15966 -258.39 166.59)"
|
||||
sodipodi:cy="189.09448"
|
||||
sodipodi:cx="-665"
|
||||
sodipodi:end="6.3925649"
|
||||
sodipodi:start="0.29849893"
|
||||
/>
|
||||
<path
|
||||
id="path7270"
|
||||
style="fill:#338000"
|
||||
inkscape:connector-curvature="0"
|
||||
d="m-210.85 196.96c3.4062 0.65929 5.3947 6.3224 4.6356 14.404-0.24675 2.6273-0.75965 5.2464-1.4708 7.722 0.73302-9.9603-1.9403-17.749-6.1873-17.627-3.8996 0.11242-7.8107 6.6335-9.4777 15.799l-0.51156 3.6079c-0.13514 1.3232-0.21148 2.6136-0.23189 3.8584-0.11775-1.6313-0.0951-3.4358 0.0879-5.3843l0.47614-3.4607c1.6191-8.9576 5.7918-16.609 10.111-18.545 0.92075-0.41284 1.7823-0.52709 2.5684-0.37494z"
|
||||
/>
|
||||
</g
|
||||
>
|
||||
</g
|
||||
>
|
||||
<metadata
|
||||
>
|
||||
<rdf:RDF
|
||||
>
|
||||
<cc:Work
|
||||
>
|
||||
<dc:format
|
||||
>image/svg+xml</dc:format
|
||||
>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage"
|
||||
/>
|
||||
<cc:license
|
||||
rdf:resource="http://creativecommons.org/licenses/publicdomain/"
|
||||
/>
|
||||
<dc:publisher
|
||||
>
|
||||
<cc:Agent
|
||||
rdf:about="http://openclipart.org/"
|
||||
>
|
||||
<dc:title
|
||||
>Openclipart</dc:title
|
||||
>
|
||||
</cc:Agent
|
||||
>
|
||||
</dc:publisher
|
||||
>
|
||||
<dc:title
|
||||
>Plant</dc:title
|
||||
>
|
||||
<dc:date
|
||||
>2011-03-07T16:35:20</dc:date
|
||||
>
|
||||
<dc:description
|
||||
>Plant with cobs</dc:description
|
||||
>
|
||||
<dc:source
|
||||
>https://openclipart.org/detail/126049/plant-by-gsagri04</dc:source
|
||||
>
|
||||
<dc:creator
|
||||
>
|
||||
<cc:Agent
|
||||
>
|
||||
<dc:title
|
||||
>gsagri04</dc:title
|
||||
>
|
||||
</cc:Agent
|
||||
>
|
||||
</dc:creator
|
||||
>
|
||||
<dc:subject
|
||||
>
|
||||
<rdf:Bag
|
||||
>
|
||||
<rdf:li
|
||||
>Plant</rdf:li
|
||||
>
|
||||
<rdf:li
|
||||
>cob</rdf:li
|
||||
>
|
||||
<rdf:li
|
||||
>green</rdf:li
|
||||
>
|
||||
<rdf:li
|
||||
>leaf</rdf:li
|
||||
>
|
||||
</rdf:Bag
|
||||
>
|
||||
</dc:subject
|
||||
>
|
||||
</cc:Work
|
||||
>
|
||||
<cc:License
|
||||
rdf:about="http://creativecommons.org/licenses/publicdomain/"
|
||||
>
|
||||
<cc:permits
|
||||
rdf:resource="http://creativecommons.org/ns#Reproduction"
|
||||
/>
|
||||
<cc:permits
|
||||
rdf:resource="http://creativecommons.org/ns#Distribution"
|
||||
/>
|
||||
<cc:permits
|
||||
rdf:resource="http://creativecommons.org/ns#DerivativeWorks"
|
||||
/>
|
||||
</cc:License
|
||||
>
|
||||
</rdf:RDF
|
||||
>
|
||||
</metadata
|
||||
>
|
||||
</svg
|
||||
>
|
||||
|
||||
|
After Width: | Height: | Size: 15 KiB |
Reference in New Issue
Block a user