xref: /plan9-contrib/sys/lib/lp/spooler/mhcc (revision 219b2ee8daee37f4aad58d63f21287faa8e4ffdc)
13e12c5d1SDavid du Colombier#!/bin/rc
23e12c5d1SDavid du Colombier# send PostScript jobs to the spooler in the MHCC
33e12c5d1SDavid du Colombier# Request is made for bin and account numbers for each file (for typing pool).
43e12c5d1SDavid du Colombier
53e12c5d1SDavid du Colombierif (! ~ $DEBUG '') flag x +
63e12c5d1SDavid du ColombierFONTLIST=lw+
73e12c5d1SDavid du Colombierif (test -r /sys/lib/postscript/font/$LPDEST) FONTLIST=$LPDEST
83e12c5d1SDavid du Colombier
93e12c5d1SDavid du Colombierswitch ($LPCLASS) {
103e12c5d1SDavid du Colombiercase *duplex*;	DUPLEX=-s2
113e12c5d1SDavid du Colombiercase '';	DUPLEX=''
123e12c5d1SDavid du Colombier}
133e12c5d1SDavid du ColombierHOLE=''
143e12c5d1SDavid du ColombierSTAPLE='-KSTAPLES\ n'
15bd389b36SDavid du ColombierTRAY=''
16bd389b36SDavid du Colombier
17bd389b36SDavid du Colombierif (~ $IBIN vg view viewgr*;)	$VGS=-fvg
18bd389b36SDavid du Colombierif (~ $IBIN *hole*)		HOLE=-fhole
193e12c5d1SDavid du Colombierif (~ $IBIN *staple*)		STAPLE=''
203e12c5d1SDavid du Colombierif (~ $IBIN *simplex*)		DUPLEX=''
21bd389b36SDavid du Colombierif (~ $IBIN *11x17* *ledger*)	TRAY='-KTRAY\ 11x17tray'
22bd389b36SDavid du Colombier
233e12c5d1SDavid du Colombierif (~ $LAND '' -pport) LAND=-pport
243e12c5d1SDavid du Colombierif not LAND=-pland
253e12c5d1SDavid du Colombieri=0
263e12c5d1SDavid du Colombierif (~ $#* 0) *=''
273e12c5d1SDavid du Colombierfor (j) {
283e12c5d1SDavid du Colombier	i=`{echo $i + 1 | hoc}
293e12c5d1SDavid du Colombier# check access to the file so that you know that a failure in the
303e12c5d1SDavid du Colombier# processing is a drastic error which will cause an exit from lp.
313e12c5d1SDavid du Colombier
323e12c5d1SDavid du Colombier	if (~ $j '' || test -f $j) {
333e12c5d1SDavid du Colombier		while (~ $#ACCOUNT 0 || ~ $ACCOUNT '' *0000) {
343e12c5d1SDavid du Colombier			echo -n 'account=' >/dev/cons
353e12c5d1SDavid du Colombier			ACCOUNT = (`{read</dev/cons})
363e12c5d1SDavid du Colombier		}
373e12c5d1SDavid du Colombier		while (~ $#BIN 0 || ~ $BIN '' *000) {
383e12c5d1SDavid du Colombier			echo -n 'bin=' >/dev/cons
393e12c5d1SDavid du Colombier			BIN = (`{read</dev/cons})
403e12c5d1SDavid du Colombier		}
413e12c5d1SDavid du Colombier		switch ($j) {
423e12c5d1SDavid du Colombier		case '';	@{ bind -b $LPLIB/process /bin; $LPPROC } |
433e12c5d1SDavid du Colombier				/sys/lib/postscript/bin/$cputype/download -f -H/sys/lib/postscript/font -mfontmap -p$FONTLIST |
44bd389b36SDavid du Colombier				{echo -K'ACCTNUM\ '$ACCOUNT -K'BIN\ '$BIN -d$LPDEST -c$COPIES -lpostscript $VGS $HOLE $STAPLE $DUPLEX $LAND $TRAY -u$LPUSERID -j$LPMACHID$pid.$i
45*219b2ee8SDavid du Colombier				 cat} | lpsend.rc $DEST_HOST
463e12c5d1SDavid du Colombier		case *;		@{ bind -b $LPLIB/process /bin; $LPPROC } < $j |
473e12c5d1SDavid du Colombier				/sys/lib/postscript/bin/$cputype/download -f -H/sys/lib/postscript/font -mfontmap -p$FONTLIST |
48bd389b36SDavid du Colombier				{echo -K'ACCTNUM\ '$ACCOUNT -K'BIN\ '$BIN -d$LPDEST -c$COPIES -lpostscript $VGS $HOLE $STAPLE $DUPLEX $LAND $TRAY -u$LPUSERID -j$LPMACHID$pid.$i
49*219b2ee8SDavid du Colombier				 cat $j} | lpsend.rc $DEST_HOST
503e12c5d1SDavid du Colombier		}
513e12c5d1SDavid du Colombier	}
523e12c5d1SDavid du Colombier}
53