90 lines
3.4 KiB
Diff
90 lines
3.4 KiB
Diff
|
diff --git a/cgi-bin/admin.c b/cgi-bin/admin.c
|
||
|
index 02b9d9d..669cb65 100644
|
||
|
--- a/cgi-bin/admin.c
|
||
|
+++ b/cgi-bin/admin.c
|
||
|
@@ -619,6 +619,7 @@ do_am_printer(http_t *http, /* I - HTTP connection */
|
||
|
*oldinfo; /* Old printer information */
|
||
|
const cgi_file_t *file; /* Uploaded file, if any */
|
||
|
const char *var; /* CGI variable */
|
||
|
+ char *ppd_name = NULL; /* Pointer to PPD name */
|
||
|
char uri[HTTP_MAX_URI], /* Device or printer URI */
|
||
|
*uriptr, /* Pointer into URI */
|
||
|
evefile[1024] = ""; /* IPP Everywhere PPD file */
|
||
|
@@ -1124,12 +1125,12 @@ do_am_printer(http_t *http, /* I - HTTP connection */
|
||
|
|
||
|
if (!file)
|
||
|
{
|
||
|
- var = cgiGetVariable("PPD_NAME");
|
||
|
- if (!strcmp(var, "everywhere"))
|
||
|
+ ppd_name = cgiGetVariable("PPD_NAME");
|
||
|
+ if (!strcmp(ppd_name, "everywhere"))
|
||
|
get_printer_ppd(cgiGetVariable("DEVICE_URI"), evefile, sizeof(evefile));
|
||
|
- else if (strcmp(var, "__no_change__"))
|
||
|
+ else if (strcmp(ppd_name, "__no_change__"))
|
||
|
ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_NAME, "ppd-name",
|
||
|
- NULL, var);
|
||
|
+ NULL, ppd_name);
|
||
|
}
|
||
|
|
||
|
ippAddString(request, IPP_TAG_PRINTER, IPP_TAG_TEXT, "printer-location",
|
||
|
@@ -1219,7 +1220,7 @@ do_am_printer(http_t *http, /* I - HTTP connection */
|
||
|
|
||
|
cgiCopyTemplateLang("printer-modified.tmpl");
|
||
|
}
|
||
|
- else
|
||
|
+ else if (ppd_name && (strcmp(ppd_name, "everywhere") == 0 || strstr(ppd_name, "driverless")))
|
||
|
{
|
||
|
/*
|
||
|
* Set the printer options...
|
||
|
@@ -1229,6 +1230,16 @@ do_am_printer(http_t *http, /* I - HTTP connection */
|
||
|
do_set_options(http, 0);
|
||
|
return;
|
||
|
}
|
||
|
+ else
|
||
|
+ {
|
||
|
+ /*
|
||
|
+ * If we don't have an everywhere model, show printer-added
|
||
|
+ * template with warning about drivers going away...
|
||
|
+ */
|
||
|
+
|
||
|
+ cgiStartHTML(title);
|
||
|
+ cgiCopyTemplateLang("printer-added.tmpl");
|
||
|
+ }
|
||
|
|
||
|
cgiEndHTML();
|
||
|
}
|
||
|
diff --git a/templates/choose-model.tmpl b/templates/choose-model.tmpl
|
||
|
index e916cf8..9c9b71f 100644
|
||
|
--- a/templates/choose-model.tmpl
|
||
|
+++ b/templates/choose-model.tmpl
|
||
|
@@ -39,7 +39,7 @@
|
||
|
<TD>
|
||
|
<SELECT NAME="PPD_NAME" SIZE="10">
|
||
|
{op=add-printer?:<OPTION VALUE="__no_change__" SELECTED>Current Driver - {current_make_and_model}</OPTION>:}
|
||
|
-{show_ipp_everywhere?<OPTION VALUE="everywhere" SELECTED>{current_make_and_model} - IPP Everywhere ™</OPTION>:}
|
||
|
+{show_ipp_everywhere?<OPTION VALUE="everywhere" SELECTED>{current_make_and_model?{current_make_and_model} -:} IPP Everywhere ™</OPTION>:}
|
||
|
{[ppd_name]<OPTION VALUE="{ppd_name}" {op=modify-printer?:{?current_make_and_model={ppd_make_and_model}?SELECTED:}}>{ppd_make_and_model} ({ppd_natural_language})
|
||
|
}</SELECT>
|
||
|
</TD>
|
||
|
diff --git a/templates/printer-added.tmpl b/templates/printer-added.tmpl
|
||
|
index 0ccf6d3..9ebc835 100644
|
||
|
--- a/templates/printer-added.tmpl
|
||
|
+++ b/templates/printer-added.tmpl
|
||
|
@@ -1,4 +1,15 @@
|
||
|
-<H2 CLASS="title">Add Printer</H2>
|
||
|
+<H2 CLASS="title">Add Printer {printer_name}</H2>
|
||
|
|
||
|
<P>Printer <A HREF="/printers/{printer_name}">{printer_name}</A> has been added
|
||
|
successfully.
|
||
|
+
|
||
|
+<blockquote>
|
||
|
+<b>Note:<b>Printer drivers and raw queues are deprecated and will stop working in a future version of CUPS.
|
||
|
+</blockquote>
|
||
|
+
|
||
|
+<FORM ACTION="admin/" METHOD="POST">
|
||
|
+<INPUT TYPE="HIDDEN" NAME="org.cups.sid" VALUE="{$org.cups.sid}">
|
||
|
+<INPUT TYPE="HIDDEN" NAME="OP" VALUE="set-printer-options">
|
||
|
+<INPUT TYPE="HIDDEN" NAME="printer_name" VALUE="{printer_name}">
|
||
|
+<INPUT TYPE="SUBMIT" VALUE="Set Printer Options">
|
||
|
+</FORM>
|