</div> </div> <?php $content = ob_get_contents(); ob_clean(); ?> <?php $currentFileName = basename($_SERVER['PHP_SELF']); $currentFolder = substr($_SERVER['REQUEST_URI'], 0, strlen($_SERVER['REQUEST_URI']) - strlen($currentFileName)); //echo "Current folder: ".$currentFolder."<br>"; //Specify the ABSOLUTE URL to the php file that will create the ClientPrintJob object echo WebClientPrint::createScript(Utils::getRoot() . $currentFolder . 'DemoPrintFileProcess.php'); ?> <script type="text/javascript"> $("#ddlFileType").change(function () { var s = $("#ddlFileType option:selected").text(); if (s == 'DOC') $("#ifPreview").attr("src", "http://docs.google.com/gview?url=http://webclientprintphp.azurewebsites.net/files/LoremIpsum.doc&embedded=true"); if (s == 'PDF') $("#ifPreview").attr("src", "http://docs.google.com/gview?url=http://webclientprintphp.azurewebsites.net/files/LoremIpsum.pdf&embedded=true"); if (s == 'TXT') $("#ifPreview").attr("src", "http://docs.google.com/gview?url=http://webclientprintphp.azurewebsites.net/files/LoremIpsum.txt&embedded=true"); if (s == 'TIF') $("#ifPreview").attr("src", "http://docs.google.com/gview?url=http://webclientprintphp.azurewebsites.net/files/patent2pages.tif&embedded=true"); if (s == 'XLS')
public static function processRequest($data) { $PING = 'wcppping'; $SID = 'sid'; $HAS_WCPP = 'wcppInstalled'; $GEN_WCP_SCRIPT_VERSION = 'v2.0.0.0'; $GEN_WCP_SCRIPT_URL = 'u'; $GEN_DETECT_WCPP_SCRIPT = 'd'; $WCP_SCRIPT_AXD_GET_PRINTERS = 'getPrinters'; $WCPP_SET_PRINTERS = 'printers'; $WCP_SCRIPT_AXD_GET_WCPPVERSION = 'getWcppVersion'; $WCPP_SET_VERSION = 'wcppVer'; $wcpUrl = Utils::getRoot() . $_SERVER['REQUEST_URI']; $wcpUrl = substr($wcpUrl, 0, strpos($wcpUrl, '.php?') + 4); parse_str($data, $qs); if (isset($qs[$SID])) { if (isset($qs[$PING])) { if (isset($qs[$WCPP_SET_VERSION])) { self::cacheAdd($qs[$SID], self::WCP_CACHE_WCPP_VER, $qs[$WCPP_SET_VERSION]); } else { self::cacheAdd($qs[$SID], self::WCP_CACHE_WCPP_VER, '1.0.0.0'); } } else { if (isset($qs[$WCPP_SET_PRINTERS])) { self::cacheAdd($qs[$SID], self::WCP_CACHE_PRINTERS, strlen($qs[$WCPP_SET_PRINTERS]) > 0 ? base64_decode($qs[$WCPP_SET_PRINTERS]) : ''); } else { if (strpos($data, $WCP_SCRIPT_AXD_GET_PRINTERS) > 0) { ob_start(); ob_clean(); header('Content-type: text/plain'); echo self::cacheGet($qs[$SID], self::WCP_CACHE_PRINTERS); } else { if (isset($qs[$WCPP_SET_VERSION])) { if (strlen($qs[$WCPP_SET_VERSION]) > 0) { self::cacheAdd($qs[$SID], self::WCP_CACHE_WCPP_VER, $qs[$WCPP_SET_VERSION]); } } else { if (strpos($data, $WCP_SCRIPT_AXD_GET_WCPPVERSION) > 0) { ob_start(); ob_clean(); header('Content-type: text/plain'); echo self::cacheGet($qs[$SID], self::WCP_CACHE_WCPP_VER); } else { ob_start(); ob_clean(); header('Content-type: text/plain'); echo self::cacheGet($qs[$SID], self::WCP_CACHE_WCPP_INSTALLED); } } } } } } else { if (isset($qs[$GEN_DETECT_WCPP_SCRIPT])) { $curSID = $qs[$GEN_DETECT_WCPP_SCRIPT]; $onSuccessScript = 'wcppDetectOnSuccess(data);'; $onFailureScript = 'wcppDetectOnFailure();'; $dynamicIframeId = 'i' . substr(uniqid(), 0, 3); $absoluteWcpAxd = $wcpUrl . '?' . self::WCP . '&' . $SID . '=' . $curSID; $s1 = 'dmFyIGpzV0NQUD0oZnVuY3Rpb24oKXt2YXIgc2V0WFhYLU5FTy1IVE1MLUlELVhYWD1mdW5jdGlvbigpe2lmKHdpbmRvdy5jaHJvbWUpeyQoJyNYWFgtTkVPLUhUTUwtSUQtWFhYJykuYXR0cignaHJlZicsJ3dlYmNsaWVudHByaW50OicrYXJndW1lbnRzWzBdKTt2YXIgYT0kKCdhI1hYWC1ORU8tSFRNTC1JRC1YWFgnKVswXTt2YXIgZXZPYmo9ZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ01vdXNlRXZlbnRzJyk7ZXZPYmouaW5pdEV2ZW50KCdjbGljaycsdHJ1ZSx0cnVlKTthLmRpc3BhdGNoRXZlbnQoZXZPYmopfWVsc2V7JCgnI1hYWC1ORU8tSFRNTC1JRC1YWFgnKS5hdHRyKCdzcmMnLCd3ZWJjbGllbnRwcmludDonK2FyZ3VtZW50c1swXSl9fTtyZXR1cm57aW5pdDpmdW5jdGlvbigpe2lmKHdpbmRvdy5jaHJvbWUpeyQoJzxhIC8+Jyx7aWQ6J1hYWC1ORU8tSFRNTC1JRC1YWFgnfSkuYXBwZW5kVG8oJ2JvZHknKX1lbHNleyQoJzxpZnJhbWUgLz4nLHtuYW1lOidYWFgtTkVPLUhUTUwtSUQtWFhYJyxpZDonWFhYLU5FTy1IVE1MLUlELVhYWCcsd2lkdGg6JzEnLGhlaWdodDonMScsc3R5bGU6J3Zpc2liaWxpdHk6aGlkZGVuO3Bvc2l0aW9uOmFic29sdXRlJ30pLmFwcGVuZFRvKCdib2R5Jyl9fSxwaW5nOmZ1bmN0aW9uKCl7c2V0WFhYLU5FTy1IVE1MLUlELVhYWCgnWFhYLU5FTy1QSU5HLVVSTC1YWFgnKyhhcmd1bWVudHMubGVuZ3RoPT0xPycmJythcmd1bWVudHNbMF06JycpKTt2YXIgZGVsYXlfbXM9KHR5cGVvZiB3Y3BwUGluZ0RlbGF5X21zPT09J3VuZGVmaW5lZCcpPzEwMDAwOndjcHBQaW5nRGVsYXlfbXM7c2V0VGltZW91dChmdW5jdGlvbigpeyQuZ2V0KCdYWFgtTkVPLVVTRVItSEFTLVdDUFAtWFhYJyxmdW5jdGlvbihkYXRhKXtpZihkYXRhIT0nZicpe1hYWC1ORU8tT04tU1VDQ0VTUy1TQ1JJUFQtWFhYfWVsc2V7WFhYLU5FTy1PTi1GQUlMVVJFLVNDUklQVC1YWFh9fSl9LGRlbGF5X21zKX19fSkoKTsgJChkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24oKXtqc1dDUFAuaW5pdCgpO2lmKHdjcHBQaW5nTm93KWpzV0NQUC5waW5nKCk7fSk7'; $s2 = base64_decode($s1); $s2 = str_replace('XXX-NEO-HTML-ID-XXX', $dynamicIframeId, $s2); $s2 = str_replace('XXX-NEO-PING-URL-XXX', $absoluteWcpAxd . '&' . $PING, $s2); $s2 = str_replace('XXX-NEO-USER-HAS-WCPP-XXX', $absoluteWcpAxd, $s2); $s2 = str_replace('XXX-NEO-ON-SUCCESS-SCRIPT-XXX', $onSuccessScript, $s2); $s2 = str_replace('XXX-NEO-ON-FAILURE-SCRIPT-XXX', $onFailureScript, $s2); ob_start(); ob_clean(); header('Content-type: application/javascript'); echo $s2; } else { if (isset($qs[$GEN_WCP_SCRIPT_URL])) { $clientPrintJobUrl = base64_decode($qs[$GEN_WCP_SCRIPT_URL]); if (strpos($clientPrintJobUrl, '?') > 0) { $clientPrintJobUrl .= '&'; } else { $clientPrintJobUrl .= '?'; } $clientPrintJobUrl .= self::CLIENT_PRINT_JOB; $absoluteWcpAxd = $wcpUrl; $wcppGetPrintersParam = '-getPrinters:' . $absoluteWcpAxd . '?' . self::WCP . '&' . $SID . '='; $wcpHandlerGetPrinters = $absoluteWcpAxd . '?' . self::WCP . '&' . $WCP_SCRIPT_AXD_GET_PRINTERS . '&' . $SID . '='; $wcppGetWcppVerParam = '-getWcppVersion:' . $absoluteWcpAxd . '?' . self::WCP . '&' . $SID . '='; $wcpHandlerGetWcppVer = $absoluteWcpAxd . '?' . self::WCP . '&' . $WCP_SCRIPT_AXD_GET_WCPPVERSION . '&' . $SID . '='; $s1 = 'dmFyIGpzV2ViQ2xpZW50UHJpbnQ9KGZ1bmN0aW9uKCl7dmFyIHNldEE9ZnVuY3Rpb24oKXt2YXIgZV9pZD0naWRfJytuZXcgRGF0ZSgpLmdldFRpbWUoKTtpZih3aW5kb3cuY2hyb21lKXskKCdib2R5JykuYXBwZW5kKCc8YSBpZD0iJytlX2lkKyciPjwvYT4nKTskKCcjJytlX2lkKS5hdHRyKCdocmVmJywnd2ViY2xpZW50cHJpbnQ6Jythcmd1bWVudHNbMF0pO3ZhciBhPSQoJ2EjJytlX2lkKVswXTt2YXIgZXZPYmo9ZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ01vdXNlRXZlbnRzJyk7ZXZPYmouaW5pdEV2ZW50KCdjbGljaycsdHJ1ZSx0cnVlKTthLmRpc3BhdGNoRXZlbnQoZXZPYmopfWVsc2V7JCgnYm9keScpLmFwcGVuZCgnPGlmcmFtZSBuYW1lPSInK2VfaWQrJyIgaWQ9IicrZV9pZCsnIiB3aWR0aD0iMSIgaGVpZ2h0PSIxIiBzdHlsZT0idmlzaWJpbGl0eTpoaWRkZW47cG9zaXRpb246YWJzb2x1dGUiIC8+Jyk7JCgnIycrZV9pZCkuYXR0cignc3JjJywnd2ViY2xpZW50cHJpbnQ6Jythcmd1bWVudHNbMF0pfXNldFRpbWVvdXQoZnVuY3Rpb24oKXskKCcjJytlX2lkKS5yZW1vdmUoKX0sNTAwMCl9O3JldHVybntwcmludDpmdW5jdGlvbigpe3NldEEoJ1VSTF9QUklOVF9KT0InKyhhcmd1bWVudHMubGVuZ3RoPT0xPycmJythcmd1bWVudHNbMF06JycpKX0sZ2V0UHJpbnRlcnM6ZnVuY3Rpb24oKXtzZXRBKCdVUkxfV0NQX0FYRF9XSVRIX0dFVF9QUklOVEVSU19DT01NQU5EJyskKCcjc2lkJykudmFsKCkpO3ZhciBkZWxheV9tcz0odHlwZW9mIHdjcHBHZXRQcmludGVyc0RlbGF5X21zPT09J3VuZGVmaW5lZCcpPzEwMDAwOndjcHBHZXRQcmludGVyc0RlbGF5X21zO3NldFRpbWVvdXQoZnVuY3Rpb24oKXskLmdldCgnVVJMX1dDUF9BWERfR0VUX1BSSU5URVJTJyskKCcjc2lkJykudmFsKCksZnVuY3Rpb24oZGF0YSl7aWYoZGF0YS5sZW5ndGg+MCl7d2NwR2V0UHJpbnRlcnNPblN1Y2Nlc3MoZGF0YSl9ZWxzZXt3Y3BHZXRQcmludGVyc09uRmFpbHVyZSgpfX0pfSxkZWxheV9tcyl9LGdldFdjcHBWZXI6ZnVuY3Rpb24oKXtzZXRBKCdVUkxfV0NQX0FYRF9XSVRIX0dFVF9XQ1BQVkVSU0lPTl9DT01NQU5EJyskKCcjc2lkJykudmFsKCkpO3ZhciBkZWxheV9tcz0odHlwZW9mIHdjcHBHZXRWZXJEZWxheV9tcz09PSd1bmRlZmluZWQnKT8xMDAwMDp3Y3BwR2V0VmVyRGVsYXlfbXM7c2V0VGltZW91dChmdW5jdGlvbigpeyQuZ2V0KCdVUkxfV0NQX0FYRF9HRVRfV0NQUFZFUlNJT04nKyQoJyNzaWQnKS52YWwoKSxmdW5jdGlvbihkYXRhKXtpZihkYXRhLmxlbmd0aD4wKXt3Y3BHZXRXY3BwVmVyT25TdWNjZXNzKGRhdGEpfWVsc2V7d2NwR2V0V2NwcFZlck9uRmFpbHVyZSgpfX0pfSxkZWxheV9tcyl9LHNlbmQ6ZnVuY3Rpb24oKXtzZXRBLmFwcGx5KHRoaXMsYXJndW1lbnRzKX19fSkoKTs='; $s2 = base64_decode($s1); $s2 = str_replace('URL_PRINT_JOB', $clientPrintJobUrl, $s2); $s2 = str_replace('URL_WCP_AXD_WITH_GET_PRINTERS_COMMAND', $wcppGetPrintersParam, $s2); $s2 = str_replace('URL_WCP_AXD_GET_PRINTERS', $wcpHandlerGetPrinters, $s2); $s2 = str_replace('URL_WCP_AXD_WITH_GET_WCPPVERSION_COMMAND', $wcppGetWcppVerParam, $s2); $s2 = str_replace('URL_WCP_AXD_GET_WCPPVERSION', $wcpHandlerGetWcppVer, $s2); ob_start(); ob_clean(); header('Content-type: application/javascript'); echo $s2; } } } }