oxen_printer 0.0.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +15 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +22 -0
- data/README.md +31 -0
- data/Rakefile +8 -0
- data/app/controllers/oxen/print_jobs_controller.rb +10 -0
- data/app/controllers/oxen/printers_controller.rb +33 -0
- data/app/jobs/background_printer_job.rb +14 -0
- data/app/models/ox_print_job.rb +47 -0
- data/app/models/ox_printable.rb +17 -0
- data/app/models/ox_printer.rb +36 -0
- data/app/policies/oxen/print_job_policy.rb +51 -0
- data/app/views/oxen/print_jobs/_form.html.haml +45 -0
- data/app/views/oxen/print_jobs/_print_job.html.haml +3 -0
- data/app/views/oxen/print_jobs/_print_jobs.html.haml +11 -0
- data/app/views/oxen/print_jobs/_printer_print_job.html.haml +12 -0
- data/app/views/oxen/print_jobs/_printer_print_jobs.html.haml +11 -0
- data/app/views/oxen/print_jobs/_show.html.haml +0 -0
- data/app/views/oxen/printers/_account_printer.html.haml +11 -0
- data/app/views/oxen/printers/_account_printers.html.haml +14 -0
- data/app/views/oxen/printers/_form.html.haml +31 -0
- data/app/views/oxen/printers/_new.html.haml +68 -0
- data/app/views/oxen/printers/_printer.html.haml +3 -0
- data/app/views/oxen/printers/_printers.html.haml +11 -0
- data/app/views/oxen/printers/_user_printer.html.haml +18 -0
- data/app/views/oxen/printers/_user_printers.html.haml +14 -0
- data/app/views/oxen/printers/create.html.haml +5 -0
- data/bin/rails +12 -0
- data/config/locales/da.yml +7 -0
- data/config/routes.rb +47 -0
- data/lib/action_printer.rb +90 -0
- data/lib/c4_label_print_provider.rb +215 -0
- data/lib/generators/printer/install_generator.rb +14 -0
- data/lib/generators/printer/printer_generator.rb +27 -0
- data/lib/generators/printer/templates/print_job.rb +21 -0
- data/lib/generators/printer/templates/printable.rb +13 -0
- data/lib/generators/printer/templates/printer.rb +15 -0
- data/lib/java_pdf/LICENSE +71 -0
- data/lib/java_pdf/LICENSE-LGPL-2.1.txt +504 -0
- data/lib/java_pdf/LICENSE-W3C-TEST +28 -0
- data/lib/java_pdf/README +92 -0
- data/lib/java_pdf/about.jar +0 -0
- data/lib/java_pdf/barbecue-1.5-beta1.jar +0 -0
- data/lib/java_pdf/barcodeprinter.jar +0 -0
- data/lib/java_pdf/browser.jar +0 -0
- data/lib/java_pdf/core-renderer-minimal.jar +0 -0
- data/lib/java_pdf/core-renderer.jar +0 -0
- data/lib/java_pdf/docbook.jar +0 -0
- data/lib/java_pdf/iText-2.0.8.jar +0 -0
- data/lib/java_pdf/itext-paulo-155.jar +0 -0
- data/lib/java_pdf/lib/LICENSE +71 -0
- data/lib/java_pdf/lib/LICENSE-LGPL-2.1.txt +504 -0
- data/lib/java_pdf/lib/LICENSE-W3C-TEST +28 -0
- data/lib/java_pdf/lib/README +92 -0
- data/lib/java_pdf/lib/core-renderer-minimal.jar +0 -0
- data/lib/java_pdf/lib/core-renderer.jar +0 -0
- data/lib/java_pdf/lib/iText-2.0.8.jar +0 -0
- data/lib/java_pdf/lib/itext-paulo-155.jar +0 -0
- data/lib/java_pdf/lib/minium.jar +0 -0
- data/lib/java_pdf/minium.jar +0 -0
- data/lib/java_pdf/pd4ml_demo.jar +0 -0
- data/lib/java_pdf/ss_css2.jar +0 -0
- data/lib/java_pdf/svg.jar +0 -0
- data/lib/oxen_printer.rb +8 -0
- data/lib/oxen_printer/cab_printer.rb +101 -0
- data/lib/oxen_printer/csv_printer.rb +12 -0
- data/lib/oxen_printer/engine.rb +19 -0
- data/lib/oxen_printer/html_printer.rb +12 -0
- data/lib/oxen_printer/label_printer.rb +12 -0
- data/lib/oxen_printer/pdf_printer.rb +66 -0
- data/lib/oxen_printer/version.rb +3 -0
- data/lib/print_drivers.rb +94 -0
- data/lib/print_engine.rb +135 -0
- data/lib/tasks/oxen_printer_tasks.rake +4 -0
- data/oxen_printer.gemspec +25 -0
- metadata +163 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: c8b8e99849e31af9b25993ea35b7733e77fe7dae
|
4
|
+
data.tar.gz: 1a157f785dacf2ceb2a0af3c2233e5f7b64f2e81
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 4e327c1dc8249c157df3b6107c7407487aa1c781aa7b36718541ff66f8b411b15c91d60d9831fe3e7a2a7b5f47c4fafaa63cec436f5369df77603bf72cbc7a65
|
7
|
+
data.tar.gz: 2cf69fb037bba5aa9dda1ad2570e56f0487479b2bfe80a747216c737b5043d24471b22bd7da9894e8abdac538a05433d487a03a5c9109ece52ac9f03d53c3f79
|
data/.gitignore
ADDED
data/Gemfile
ADDED
data/LICENSE.txt
ADDED
@@ -0,0 +1,22 @@
|
|
1
|
+
Copyright (c) 2015 Walther H Diechmann
|
2
|
+
|
3
|
+
MIT License
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
6
|
+
a copy of this software and associated documentation files (the
|
7
|
+
"Software"), to deal in the Software without restriction, including
|
8
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
9
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
10
|
+
permit persons to whom the Software is furnished to do so, subject to
|
11
|
+
the following conditions:
|
12
|
+
|
13
|
+
The above copyright notice and this permission notice shall be
|
14
|
+
included in all copies or substantial portions of the Software.
|
15
|
+
|
16
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
17
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
18
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
19
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
20
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
21
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
22
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.md
ADDED
@@ -0,0 +1,31 @@
|
|
1
|
+
# OxenPrinter
|
2
|
+
|
3
|
+
TODO: Write a gem description
|
4
|
+
|
5
|
+
## Installation
|
6
|
+
|
7
|
+
Add this line to your application's Gemfile:
|
8
|
+
|
9
|
+
```ruby
|
10
|
+
gem 'oxen_printer'
|
11
|
+
```
|
12
|
+
|
13
|
+
And then execute:
|
14
|
+
|
15
|
+
$ bundle
|
16
|
+
|
17
|
+
Or install it yourself as:
|
18
|
+
|
19
|
+
$ gem install oxen_printer
|
20
|
+
|
21
|
+
## Usage
|
22
|
+
|
23
|
+
TODO: Write usage instructions here
|
24
|
+
|
25
|
+
## Contributing
|
26
|
+
|
27
|
+
1. Fork it ( https://github.com/[my-github-username]/oxen_printer/fork )
|
28
|
+
2. Create your feature branch (`git checkout -b my-new-feature`)
|
29
|
+
3. Commit your changes (`git commit -am 'Add some feature'`)
|
30
|
+
4. Push to the branch (`git push origin my-new-feature`)
|
31
|
+
5. Create a new Pull Request
|
data/Rakefile
ADDED
@@ -0,0 +1,10 @@
|
|
1
|
+
class Oxen::PrintJobsController < AbstractResourcesController
|
2
|
+
private
|
3
|
+
# Never trust parameters from the scary internet, only allow the white list through.
|
4
|
+
# "printer"=>{"name"=>"Label", "cups_printer"=>"havehuset_label", "command"=>"lp %2 %3", "paper"=>"A4", "active"=>"1"}}
|
5
|
+
def resource_params
|
6
|
+
params[:print_job][:account_id] = current_user.admin? ? params[:parent_id] : current_user.account.id
|
7
|
+
params.require(:print_job).permit(:account_id, :printer_id, :printed_by_id, :printed_by_type, :view_template_path, :name, :printing_class, :print_driver, :print_format, :state, :paper, :copies, :print_sql)
|
8
|
+
end
|
9
|
+
|
10
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
class Oxen::PrintersController < AbstractResourcesController
|
2
|
+
|
3
|
+
def update
|
4
|
+
authorize resource
|
5
|
+
flash[:notice] = t('.success.updated', resource: resource_class.to_s ) if resource.update_attributes(resource_params) && update_parenthood
|
6
|
+
respond_with resource, location: "/admin/accounts/#{resource.account.id}"
|
7
|
+
rescue Exception => e
|
8
|
+
scoop_from_error e
|
9
|
+
end
|
10
|
+
|
11
|
+
|
12
|
+
private
|
13
|
+
|
14
|
+
def set_fab_button_options
|
15
|
+
|
16
|
+
opt = { items: {}}
|
17
|
+
case params[:action]
|
18
|
+
when 'edit','update'; opt[:items].merge! list: { ajax: 'get', icon: 'list', class: 'blue', url: "/admin/accounts/#{resource.account.id}" }
|
19
|
+
when 'show'; opt[:items].merge! list: { ajax: 'get', icon: 'list', class: 'blue', url: "/admin/accounts/#{resource.account.id}" }
|
20
|
+
when 'index'; opt[:items].merge! list: { ajax: 'get', icon: 'list', class: 'blue', url: "/admin/accounts/#{resource.account.id}" }
|
21
|
+
end
|
22
|
+
|
23
|
+
@fab_button_options = opt
|
24
|
+
end
|
25
|
+
|
26
|
+
# Never trust parameters from the scary internet, only allow the white list through.
|
27
|
+
# "printer"=>{"name"=>"Label", "cups_printer"=>"havehuset_label", "command"=>"lp %2 %3", "paper"=>"A4", "active"=>"1"}}
|
28
|
+
def resource_params
|
29
|
+
params[:printer][:account_id] = current_user.admin? ? params[:parent_id] : current_user.account.id
|
30
|
+
params.require(:printer).permit(:account_id, :active, :name, :cups_printer, :command, :paper)
|
31
|
+
end
|
32
|
+
|
33
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
class BackgroundPrinterJob < OxJob
|
2
|
+
queue_as :printing
|
3
|
+
|
4
|
+
# [#<PrintJob id: 28, account_id: 1, printer_id: 7, printed_by_id: 1, printed_by_type: "User", view_template_path: "/record.html.haml",
|
5
|
+
# name: "Account print at 13-10-2015", printing_class: "Account", print_driver: "pdf", print_format: "sheet", state: "drafted",
|
6
|
+
# paper: "A4", copies: 1, print_sql: "SELECT `accounts`.* FROM `accounts` WHERE (`accoun...", created_at: "2015-10-13 14:19:10",
|
7
|
+
# updated_at: "2015-10-13 14:19:10">, {:queue=>"printing", :account_id=>1}, {:account_id=>1}
|
8
|
+
# ]
|
9
|
+
def perform job, *args
|
10
|
+
job.update_column :state, I18n.t( "#{job.class.to_s.underscore.pluralize}.performing")
|
11
|
+
job.perform args
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
@@ -0,0 +1,47 @@
|
|
1
|
+
# encoding: UTF-8
|
2
|
+
#/* - - - - - - - - - - - - - - - - - - - - -
|
3
|
+
#
|
4
|
+
# Title : WEB Appliances Crest Inc, Web Form Framework
|
5
|
+
# Author : Enrique Phillips
|
6
|
+
# URL : http://www.wac.bz
|
7
|
+
#
|
8
|
+
#- - - - - - - - - - - - - - - - - - - - - */
|
9
|
+
|
10
|
+
require 'print_drivers'
|
11
|
+
|
12
|
+
# The <b>PrintJob</b> model holds all relevant information in regards to the PrintJob
|
13
|
+
# It is possible to create a PrintJob for any other model that needs to be able to print.
|
14
|
+
class OxPrintJob < AbstractResource
|
15
|
+
self.table_name = 'print_jobs'
|
16
|
+
establish_connection ((Rails.env=="development") ? :dev_oxen_tables : :oxen_tables )
|
17
|
+
|
18
|
+
has_paper_trail
|
19
|
+
|
20
|
+
validates :name, presence: true
|
21
|
+
|
22
|
+
belongs_to :printer
|
23
|
+
belongs_to :account
|
24
|
+
belongs_to :printed_by, polymorphic: true
|
25
|
+
|
26
|
+
include Exceptions
|
27
|
+
include PrintDrivers
|
28
|
+
|
29
|
+
# has_paper_trail :ignore => [:state, :cups_state]
|
30
|
+
|
31
|
+
scope :stated, ->(pap) { where(state: pap) }
|
32
|
+
scope :queued, ->{ where(print_jobs.state >> ['processing','printing']) }
|
33
|
+
|
34
|
+
# Temporary attribute for the print_job object to hold the instanciated printer (PdfPrinter, HtmlPrinter, CsvPrinter etc.)
|
35
|
+
attr_accessor :action_printer, :snap_shot, :download
|
36
|
+
|
37
|
+
#
|
38
|
+
# enabling background printing - via OxJob & ActiveJob & DelayedJob
|
39
|
+
def perform *args
|
40
|
+
context = args[0].delete(:context)
|
41
|
+
if !download
|
42
|
+
print_with rendered_on(args)
|
43
|
+
else
|
44
|
+
send_with( rendered_on(args), context) if context
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
class OxPrintable < AbstractResource
|
2
|
+
self.table_name = 'printables'
|
3
|
+
establish_connection ((Rails.env=="development") ? :dev_oxen_tables : :oxen_tables )
|
4
|
+
|
5
|
+
has_paper_trail
|
6
|
+
|
7
|
+
belongs_to :account
|
8
|
+
belongs_to :printer
|
9
|
+
belongs_to :printable, polymorphic: true
|
10
|
+
|
11
|
+
before_save :set_account
|
12
|
+
|
13
|
+
def set_account
|
14
|
+
self.account = printer.account
|
15
|
+
end
|
16
|
+
|
17
|
+
end
|
@@ -0,0 +1,36 @@
|
|
1
|
+
class OxPrinter < AbstractResource
|
2
|
+
self.table_name = 'printers'
|
3
|
+
establish_connection ((Rails.env=="development") ? :dev_oxen_tables : :oxen_tables )
|
4
|
+
|
5
|
+
attr_accessor :snap_shot
|
6
|
+
|
7
|
+
has_paper_trail
|
8
|
+
|
9
|
+
has_many :printables, foreign_key: 'printer_id', dependent: :destroy
|
10
|
+
has_many :users, through: :printables, source: :printable, source_type: 'User'
|
11
|
+
|
12
|
+
validates :name, presence: true
|
13
|
+
|
14
|
+
scope :active, -> { where(active: true) }
|
15
|
+
scope :preferred_printer, ->{ where("printables.preferred=1")}
|
16
|
+
scope :on_paper, -> (pap){ where(paper: pap )}
|
17
|
+
|
18
|
+
def list_title
|
19
|
+
name
|
20
|
+
end
|
21
|
+
|
22
|
+
def preferred? parent
|
23
|
+
printables.where(printable: parent).first.preferred?
|
24
|
+
end
|
25
|
+
|
26
|
+
def prefer parent
|
27
|
+
parent.printables.each{ |p| p.update_columns(preferred: false) }
|
28
|
+
printables.where(printable: parent).first.update_columns( preferred: true )
|
29
|
+
end
|
30
|
+
|
31
|
+
def defer parent
|
32
|
+
printables.where(printable: parent).first.update_columns( preferred: false )
|
33
|
+
end
|
34
|
+
|
35
|
+
|
36
|
+
end
|
@@ -0,0 +1,51 @@
|
|
1
|
+
module Oxen
|
2
|
+
class PrintJobPolicy < AbstractResourcePolicy
|
3
|
+
|
4
|
+
class Scope < Scope
|
5
|
+
def resolve
|
6
|
+
if current_user.nil?
|
7
|
+
super
|
8
|
+
elsif current_user.admin?
|
9
|
+
scope.all
|
10
|
+
else
|
11
|
+
scope.where(id: current_user.account.id)
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
15
|
+
|
16
|
+
|
17
|
+
|
18
|
+
def new?
|
19
|
+
current_user.admin?
|
20
|
+
end
|
21
|
+
|
22
|
+
def index?
|
23
|
+
@current_user.admin? || @current_user.account_admin?
|
24
|
+
end
|
25
|
+
|
26
|
+
def create?
|
27
|
+
@current_user.admin?
|
28
|
+
end
|
29
|
+
|
30
|
+
def show?
|
31
|
+
@current_user.admin? or @current_user.account==@model
|
32
|
+
end
|
33
|
+
|
34
|
+
def edit?
|
35
|
+
@current_user.admin? or @current_user.account==@model
|
36
|
+
end
|
37
|
+
|
38
|
+
def update?
|
39
|
+
@current_user.admin? or @current_user.account==@model
|
40
|
+
end
|
41
|
+
|
42
|
+
def destroy?
|
43
|
+
@current_user.admin?
|
44
|
+
end
|
45
|
+
|
46
|
+
def print?
|
47
|
+
@current_user.admin? || @current_user.account_admin?
|
48
|
+
end
|
49
|
+
|
50
|
+
end
|
51
|
+
end
|
@@ -0,0 +1,45 @@
|
|
1
|
+
= simple_form_for(resource) do |f|
|
2
|
+
= f.error_notification
|
3
|
+
|
4
|
+
.form-inputs
|
5
|
+
-# - if current_user.admin? and params[:controller] =~ /service/
|
6
|
+
-# / %input{ name: 'parent_id', collection: policy_scope(Account), class: :validate}
|
7
|
+
-# - else
|
8
|
+
%input{ type: :hidden, name: 'parent', value: 'Account' }
|
9
|
+
%input{ type: :hidden, name: 'parent_id', value: f.object.account.id }
|
10
|
+
|
11
|
+
.row
|
12
|
+
= f.input :printer, required: true, disabled: @disabled
|
13
|
+
|
14
|
+
.row
|
15
|
+
= f.input :printed_by_id, required: true, disabled: @disabled
|
16
|
+
|
17
|
+
.row
|
18
|
+
= f.input :printed_by_type, required: true, disabled: @disabled
|
19
|
+
|
20
|
+
.row
|
21
|
+
= f.input :view_template_path, required: true, disabled: @disabled
|
22
|
+
|
23
|
+
.row
|
24
|
+
= f.input :name, required: true, disabled: @disabled
|
25
|
+
|
26
|
+
.row
|
27
|
+
= f.input :printing_class, required: true, disabled: @disabled
|
28
|
+
|
29
|
+
.row
|
30
|
+
= f.input :print_driver, required: true, disabled: @disabled
|
31
|
+
|
32
|
+
.row
|
33
|
+
= f.input :print_format, required: true, disabled: @disabled
|
34
|
+
|
35
|
+
.row
|
36
|
+
= f.input :state, required: true, disabled: @disabled
|
37
|
+
|
38
|
+
.row
|
39
|
+
= f.input :paper, required: true, disabled: @disabled
|
40
|
+
|
41
|
+
.row
|
42
|
+
= f.input :copies, required: true, disabled: @disabled
|
43
|
+
|
44
|
+
.row
|
45
|
+
= f.input :print_sql, required: true, disabled: @disabled
|
@@ -0,0 +1,11 @@
|
|
1
|
+
.row
|
2
|
+
.col.s12
|
3
|
+
%table.responsive-table.hoverable.striped.resources_table
|
4
|
+
%thead
|
5
|
+
%tr
|
6
|
+
%th{ :"data-field"=>"name"}= t('.name')
|
7
|
+
%th= t(:delete)
|
8
|
+
|
9
|
+
%tbody#printers.resources_list
|
10
|
+
- resources.each do |print_job|
|
11
|
+
= render partial: 'print_job', locals: { resource: print_job }
|
@@ -0,0 +1,12 @@
|
|
1
|
+
%tr{ id: "tr-#{print_job.id}"}
|
2
|
+
%td= link_to parent.name, parent
|
3
|
+
%td= link_to print_job.name, print_job
|
4
|
+
%td= show_resource_delete_icon print_job, '/admin/print_jobs'
|
5
|
+
-# - if parent? && parent_name == 'users'
|
6
|
+
-# %td
|
7
|
+
-# - if user.printers.include? printer
|
8
|
+
-# = link_to detach_url( user,printer), class: 'attached green-text', title: t('detach_printers') do
|
9
|
+
-# %i.material-icons layers
|
10
|
+
-# - else
|
11
|
+
-# = link_to attach_url( user,printer), class: 'detached red-text', title: t('attach_printers') do
|
12
|
+
-# %i.material-icons layers_clear
|
@@ -0,0 +1,11 @@
|
|
1
|
+
.row{ style: "margin-top: 60px"}
|
2
|
+
.col.s12{ style: "height: 250px; overflow: scroll"}
|
3
|
+
%table.responsive-table.hoverable.striped.resources_table
|
4
|
+
%thead
|
5
|
+
%tr
|
6
|
+
%th{ :"data-field"=>"name"}= t('.name')
|
7
|
+
%th= t(:delete)
|
8
|
+
|
9
|
+
%tbody#account_printers.resources_list
|
10
|
+
- resource.print_jobs.each do |print_job|
|
11
|
+
= render partial: 'oxen/print_jobs/printer_print_job', locals: { print_job: print_job, parent: resource, parent_id: resource.id }
|
File without changes
|
@@ -0,0 +1,11 @@
|
|
1
|
+
%tr{ id: "tr-#{printer.id}"}
|
2
|
+
%td= link_to printer.name, printer
|
3
|
+
%td= show_resource_delete_icon printer, '/admin/printers'
|
4
|
+
-# - if parent? && parent_name == 'users'
|
5
|
+
-# %td
|
6
|
+
-# - if user.printers.include? printer
|
7
|
+
-# = link_to detach_url( user,printer), class: 'attached green-text', title: t('detach_printers') do
|
8
|
+
-# %i.material-icons layers
|
9
|
+
-# - else
|
10
|
+
-# = link_to attach_url( user,printer), class: 'detached red-text', title: t('attach_printers') do
|
11
|
+
-# %i.material-icons layers_clear
|
@@ -0,0 +1,14 @@
|
|
1
|
+
.row
|
2
|
+
.col.s12{ style: "height: 250px; overflow: scroll"}
|
3
|
+
%table.responsive-table.hoverable.striped.resources_table
|
4
|
+
%thead
|
5
|
+
%tr
|
6
|
+
%th{ :"data-field"=>"name"}= t('.name')
|
7
|
+
%th= t(:delete)
|
8
|
+
|
9
|
+
- if parent?
|
10
|
+
%th= t('attach_detach_printer')
|
11
|
+
|
12
|
+
%tbody#account_printers.resources_list
|
13
|
+
- resource.printers.each do |printer|
|
14
|
+
= render partial: 'printers/account_printer', locals: { printer: printer, parent: resource, parent_id: resource.id }
|
@@ -0,0 +1,31 @@
|
|
1
|
+
= simple_form_for(resource) do |f|
|
2
|
+
= f.error_notification
|
3
|
+
|
4
|
+
.form-inputs
|
5
|
+
-# - if current_user.admin? and params[:controller] =~ /service/
|
6
|
+
-# / %input{ name: 'parent_id', collection: policy_scope(Account), class: :validate}
|
7
|
+
-# - else
|
8
|
+
%input{ type: :hidden, name: 'parent', value: 'Account' }
|
9
|
+
%input{ type: :hidden, name: 'parent_id', value: f.object.account.id }
|
10
|
+
|
11
|
+
.row
|
12
|
+
= f.input :name
|
13
|
+
|
14
|
+
.row
|
15
|
+
= f.input :cups_printer, placeholder: t('.cups_printer'), required: true, disabled: @disabled
|
16
|
+
|
17
|
+
.row
|
18
|
+
= f.input :command, placeholder: t('.cups_cmd'), required: true, disabled: @disabled
|
19
|
+
|
20
|
+
.row
|
21
|
+
= f.input :paper, placeholder: t('.paper')'Angiv papirtypen, exvis: Letter, A4', required: true, disabled: @disabled
|
22
|
+
|
23
|
+
.row
|
24
|
+
.input-field.col.s4
|
25
|
+
%label{ style: "margin-top: -20px"}= t('.service_active')
|
26
|
+
.switch
|
27
|
+
%label
|
28
|
+
= t(:passive)
|
29
|
+
=f.check_box :active, disabled: @disabled
|
30
|
+
%span.lever
|
31
|
+
= t(:active)
|