Add changes

This commit is contained in:
Alfred Egger 2019-06-13 18:05:32 +02:00
parent 62803f0e13
commit 7ecc711e8a
2 changed files with 12 additions and 36 deletions

View file

@ -76,7 +76,7 @@
}
var url = OC.generateUrl('/apps/printer/printfile'),
data = {source: fileInfo.getFullPath(), type: orientation},
data = {source: fileInfo.getFullPath(), orientation: orientation},
_self = this;
$.ajax({
type: 'GET',
@ -104,10 +104,10 @@
msg = data.msg;
}
msg += '<br><br><a id="reload-checksum" class="icon icon-history" style="display:block" href=""></a>';
msg += '<br><br><a id="reload-print" class="icon icon-history" style="display:block" href=""></a>';
this.delegateEvents({
'click #reload-checksum': '_onReloadEvent'
'click #reload-print': '_onReloadEvent'
});
this.$el.find('.get-print').html(msg);
@ -133,7 +133,7 @@
ev.preventDefault();
this._renderSelectList(this.$el);
this.delegateEvents({
'change #choose-algorithm': '_onChangeEvent'
'change #choose-orientation': '_onChangeEvent'
});
}

View file

@ -27,16 +27,18 @@ class PrinterController extends Controller {
* @param (string) $orientation - Orientation of printed file
*/
public function printfile($source, $orientation) {
if(!$this->checkAlgorithmType($type)) {
if($orientation == "landscape") {
shell_exec('lpr ' . $source);
return new JSONResponse(
array(
'response' => 'error',
'msg' => $this->language->t('Print failed!')
'response' => 'success',
'msg' => $this->language->t('Print succeeded!')
)
);
}
if($hash = $this->getHash($source, $type)){
if($orientation == "portrait"){
shell_exec('lpr -o orientation-requested=4 ' . $source);
return new JSONResponse(
array(
'response' => 'success',
@ -47,35 +49,9 @@ class PrinterController extends Controller {
return new JSONResponse(
array(
'response' => 'error',
'msg' => $this->language->t('File to print not found.')
'msg' => $this->language->t('Print failed')
)
);
};
}
protected function getHash($source, $type) {
if($info = Filesystem::getLocalFile($source)) {
return hash_file($type, $info);
}
return false;
}
protected function checkAlgorithmType($type) {
$list_algos = hash_algos();
return in_array($type, $this->getAllowedAlgorithmTypes()) && in_array($type, $list_algos);
}
protected function getAllowedAlgorithmTypes() {
return array(
'md5',
'sha1',
'sha256',
'sha384',
'sha512',
'crc32'
);
}
}
}