Contents of /mcore-src/trunk/mcore-tools/src/modules/lprng/printing.client.class.in
Parent Directory | Revision Log
Revision 1248 -
(show annotations)
(download)
Wed Feb 2 20:20:24 2011 UTC (13 years, 4 months ago) by niro
Original Path: mcore-src/trunk/mcore-tools/daemon/client/include/printing.client.class
File size: 2221 byte(s)
Wed Feb 2 20:20:24 2011 UTC (13 years, 4 months ago) by niro
Original Path: mcore-src/trunk/mcore-tools/daemon/client/include/printing.client.class
File size: 2221 byte(s)
-initial version
1 | # $Id$ |
2 | |
3 | provide lprng |
4 | |
5 | help_printing_addprinter() |
6 | { |
7 | mecho "set printing.addprinter [name] [port] [ip] [share]" |
8 | mecho " adds a new printer" |
9 | mecho " name - name of the printer" |
10 | mecho " port - printing port (lpt1, usb1, com1 ... lptN, usbN, comN" |
11 | mecho " ip - ip of the remote printer - optional" |
12 | mecho " share - share/port name of the remote printer - optional" |
13 | } |
14 | |
15 | set_printing_addprinter() |
16 | { |
17 | local name="$1" |
18 | local port="$2" |
19 | local ip="$3" |
20 | local share="$4" |
21 | |
22 | [[ -z ${name} ]] && help_printing_addprinter && return 1 |
23 | [[ -z ${port} ]] && help_printing_addprinter && return 1 |
24 | |
25 | [[ ! -d /etc/printcap.d ]] && install -d /etc/printcap.d |
26 | |
27 | case ${port} in |
28 | lpt[0-9]*) port="/dev/lp$(( ${port/lpt/}-1 ))" ;; |
29 | com[0-9]*) port="/dev/ttyS$(( ${port/com/}-1 ))" ;; |
30 | usb[0-9]*) port="/dev/usb/lp$(( ${port/usb/}-1 ))" ;; |
31 | #lpd) port="lpd://${ip}/${share}" ;; |
32 | #socket) port="socket://${ip}:${share}" ;; |
33 | esac |
34 | |
35 | CONFIG="/etc/printcap.d/${name}.conf" |
36 | addconfig "${name}|${name}" |
37 | addconfig " :lp=${port}" |
38 | addconfig " :sd=/var/spool/lpd/${name}" |
39 | |
40 | # regenerate printcap |
41 | helper_generate_printcap |
42 | } |
43 | |
44 | help_printing_delprinter() |
45 | { |
46 | mecho "set printing.delprinter [name]" |
47 | mecho " deletes given printer" |
48 | } |
49 | |
50 | set_printing_delprinter() |
51 | { |
52 | local name="$1" |
53 | |
54 | [[ -z ${name} ]] && help_printing_addprinter && return 1 |
55 | |
56 | if [[ -f /etc/printcap.d/${name}.conf ]] |
57 | then |
58 | rm /etc/printcap.d/${name}.conf |
59 | fi |
60 | |
61 | if [[ -d /var/spool/lpd/${name} ]] |
62 | then |
63 | rm -rf /var/spool/lpd/${name} |
64 | fi |
65 | |
66 | # regenerate printcap |
67 | helper_generate_printcap |
68 | } |
69 | |
70 | help_printing_printer() |
71 | { |
72 | mecho "get printing.printer" |
73 | mecho " shows all config/var/spool/lpd/ured printer" |
74 | } |
75 | |
76 | get_printing_printer() |
77 | { |
78 | local i |
79 | local printer |
80 | |
81 | for i in $(find /etc/printcap.d -type f -name \*.conf) |
82 | do |
83 | printer="${printer} $(basename ${i} .conf)" |
84 | done |
85 | |
86 | mecho ${printer} |
87 | } |
88 | |
89 | helper_generate_printcap() |
90 | { |
91 | local i |
92 | |
93 | CONFIG="/etc/printcap" |
94 | clearconfig |
95 | |
96 | for i in $(find /etc/printcap.d -type f -name \*.conf) |
97 | do |
98 | mecho "adding ${i}" |
99 | addconfig "#--- added by mcored ---" |
100 | cat ${i} >> ${CONFIG} |
101 | addconfig "#-----------------------" |
102 | addconfig |
103 | |
104 | # install spooler directories |
105 | install -o lp -g lp -m0700 -d /var/spool/lpd/$(basename ${i} .conf) |
106 | done |
107 | } |