├── l10n ├── .gitkeep ├── my.json ├── ms_MY.json ├── an.json ├── az.json ├── hy.json ├── ia.json ├── kab.json ├── kn.json ├── lb.json ├── my.js ├── ps.json ├── ta.json ├── tk.json ├── bn_BD.json ├── ur_PK.json ├── an.js ├── az.js ├── hy.js ├── ia.js ├── kn.js ├── lb.js ├── ms_MY.js ├── ps.js ├── ta.js ├── bn_BD.js ├── kab.js ├── km.json ├── tk.js ├── ur_PK.js ├── mn.json ├── nn_NO.json ├── km.js ├── lo.json ├── mn.js ├── nn_NO.js ├── cy_GB.json ├── lo.js ├── cy_GB.js ├── gd.json ├── es_AR.json ├── bs.json ├── uz.json ├── ka.json ├── sr@latin.json ├── eo.json ├── es_AR.js ├── gd.js ├── bs.js ├── si.json ├── sr@latin.js ├── id.json ├── ka.js ├── uz.js ├── af.json ├── eo.js ├── si.js ├── sq.json ├── id.js ├── af.js ├── et_EE.json ├── ka_GE.json ├── sq.js ├── es_419.json ├── es_NI.json ├── es_PA.json ├── es_PE.json ├── es_PR.json ├── es_PY.json ├── es_UY.json ├── mk.json ├── et_EE.js ├── ka_GE.js ├── es_419.js ├── es_CL.json ├── es_CO.json ├── es_CR.json ├── es_DO.json ├── es_GT.json ├── es_HN.json ├── es_MX.json ├── es_NI.js ├── es_PA.js ├── es_PE.js ├── es_PR.js ├── es_PY.js ├── es_SV.json ├── es_UY.js ├── mk.js ├── es_CL.js ├── es_CO.js ├── es_CR.js ├── es_DO.js ├── es_GT.js ├── es_HN.js ├── es_MX.js ├── es_SV.js ├── be.json ├── be.js ├── br.json ├── ast.json ├── br.js ├── ast.js ├── oc.json ├── oc.js ├── sv.json ├── sv.js ├── zh_CN.json ├── zh_HK.json ├── zh_TW.json ├── zh_CN.js ├── zh_HK.js ├── zh_TW.js ├── ko.json ├── ko.js ├── ja.json ├── ja.js ├── th.json ├── he.json ├── fa.json ├── th.js ├── en_GB.json ├── he.js ├── lv.json ├── fa.js ├── vi.json ├── en_GB.js ├── lv.js ├── ar.json ├── ug.json ├── fi.json ├── nl.json ├── vi.js ├── da.json ├── ar.js ├── ug.js ├── fi.js ├── nl.js ├── da.js ├── nb.json ├── tr.json ├── hu.json ├── nb.js ├── pt_PT.json ├── bg.json ├── el.json ├── de.json ├── es.json ├── eu.json ├── sr.json ├── tr.js ├── de_DE.json ├── hu.js ├── pt_PT.js ├── bg.js ├── el.js ├── ga.json ├── pt_BR.json ├── ro.json ├── de.js ├── es.js ├── eu.js ├── gl.json ├── sr.js ├── de_DE.js ├── sw.json ├── ca.json ├── ga.js ├── pt_BR.js ├── ro.js ├── sk.json ├── es_EC.json ├── is.json ├── gl.js ├── it.json ├── sc.json ├── sw.js ├── ca.js ├── sk.js ├── es_EC.js ├── hr.json ├── is.js ├── it.js ├── sc.js ├── hr.js ├── cs.json ├── sl.json ├── cs.js ├── fr.json ├── sl.js ├── fr.js ├── pl.json ├── lt_LT.json ├── pl.js ├── lt_LT.js ├── ru.json ├── ru.js ├── uk.json └── uk.js ├── screenshots ├── menu.png ├── scan.png ├── show.png └── result.png ├── AUTHORS.md ├── css └── style.css ├── phpunit.xml ├── phpunit.integration.xml ├── .tx └── config ├── tests ├── bootstrap.php ├── integration │ └── AppTest.php └── unit │ └── controller │ └── PageControllerTest.php ├── templates └── optionsdialog.html ├── appinfo ├── autoload.php ├── routes.php ├── info.xml └── app.php ├── TODO.md ├── .github └── ISSUE_TEMPLATE │ ├── feature_request.md │ └── bug_report.md ├── .ci └── release_app.sh ├── controller └── scannercontroller.php ├── lib └── Storage │ └── ScannerStorage.php ├── README.md ├── js └── menu.js └── Makefile /l10n/.gitkeep: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /screenshots/menu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-alfred/nextcloud-scanner/HEAD/screenshots/menu.png -------------------------------------------------------------------------------- /screenshots/scan.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-alfred/nextcloud-scanner/HEAD/screenshots/scan.png -------------------------------------------------------------------------------- /screenshots/show.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-alfred/nextcloud-scanner/HEAD/screenshots/show.png -------------------------------------------------------------------------------- /screenshots/result.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/e-alfred/nextcloud-scanner/HEAD/screenshots/result.png -------------------------------------------------------------------------------- /AUTHORS.md: -------------------------------------------------------------------------------- 1 | # Authors 2 | 3 | * Greg Sutcliffe: 4 | * e-alfred 5 | * Biont 6 | -------------------------------------------------------------------------------- /l10n/my.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Success" : "အောင်မြင်သည်" 3 | },"pluralForm" :"nplurals=1; plural=0;" 4 | } -------------------------------------------------------------------------------- /l10n/ms_MY.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "No" : "No", 3 | "Yes" : "Yes" 4 | },"pluralForm" :"nplurals=1; plural=0;" 5 | } -------------------------------------------------------------------------------- /l10n/an.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "No" : "No", 3 | "Yes" : "Si" 4 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 5 | } -------------------------------------------------------------------------------- /l10n/az.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "No" : "No", 3 | "Yes" : "Yes" 4 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 5 | } -------------------------------------------------------------------------------- /l10n/hy.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "No" : "No", 3 | "Yes" : "Yes" 4 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 5 | } -------------------------------------------------------------------------------- /l10n/ia.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "No" : "No", 3 | "Yes" : "Si" 4 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 5 | } -------------------------------------------------------------------------------- /l10n/kab.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "No" : "Uhu", 3 | "Yes" : "Ih" 4 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 5 | } -------------------------------------------------------------------------------- /l10n/kn.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "No" : "No", 3 | "Yes" : "Yes" 4 | },"pluralForm" :"nplurals=2; plural=(n > 1);" 5 | } -------------------------------------------------------------------------------- /l10n/lb.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "No" : "No", 3 | "Yes" : "Yes" 4 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 5 | } -------------------------------------------------------------------------------- /l10n/my.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Success" : "အောင်မြင်သည်" 5 | }, 6 | "nplurals=1; plural=0;"); 7 | -------------------------------------------------------------------------------- /l10n/ps.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "No" : "نه", 3 | "Yes" : "هو" 4 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 5 | } -------------------------------------------------------------------------------- /l10n/ta.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "No" : "No", 3 | "Yes" : "Yes" 4 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 5 | } -------------------------------------------------------------------------------- /l10n/tk.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "No" : "Ýok", 3 | "Yes" : "Hawa" 4 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 5 | } -------------------------------------------------------------------------------- /css/style.css: -------------------------------------------------------------------------------- 1 | .icon-filetype-scanner.svg { 2 | background-image: url("../img/scanner.svg"); 3 | background-size: 16px; 4 | } 5 | -------------------------------------------------------------------------------- /l10n/bn_BD.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "No" : "No", 3 | "Yes" : "Yes" 4 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 5 | } -------------------------------------------------------------------------------- /l10n/ur_PK.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "No" : "No", 3 | "Yes" : "Yes" 4 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 5 | } -------------------------------------------------------------------------------- /l10n/an.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "No" : "No", 5 | "Yes" : "Si" 6 | }, 7 | "nplurals=2; plural=(n != 1);"); 8 | -------------------------------------------------------------------------------- /l10n/az.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "No" : "No", 5 | "Yes" : "Yes" 6 | }, 7 | "nplurals=2; plural=(n != 1);"); 8 | -------------------------------------------------------------------------------- /l10n/hy.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "No" : "No", 5 | "Yes" : "Yes" 6 | }, 7 | "nplurals=2; plural=(n != 1);"); 8 | -------------------------------------------------------------------------------- /l10n/ia.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "No" : "No", 5 | "Yes" : "Si" 6 | }, 7 | "nplurals=2; plural=(n != 1);"); 8 | -------------------------------------------------------------------------------- /l10n/kn.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "No" : "No", 5 | "Yes" : "Yes" 6 | }, 7 | "nplurals=2; plural=(n > 1);"); 8 | -------------------------------------------------------------------------------- /l10n/lb.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "No" : "No", 5 | "Yes" : "Yes" 6 | }, 7 | "nplurals=2; plural=(n != 1);"); 8 | -------------------------------------------------------------------------------- /l10n/ms_MY.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "No" : "No", 5 | "Yes" : "Yes" 6 | }, 7 | "nplurals=1; plural=0;"); 8 | -------------------------------------------------------------------------------- /l10n/ps.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "No" : "نه", 5 | "Yes" : "هو" 6 | }, 7 | "nplurals=2; plural=(n != 1);"); 8 | -------------------------------------------------------------------------------- /l10n/ta.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "No" : "No", 5 | "Yes" : "Yes" 6 | }, 7 | "nplurals=2; plural=(n != 1);"); 8 | -------------------------------------------------------------------------------- /l10n/bn_BD.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "No" : "No", 5 | "Yes" : "Yes" 6 | }, 7 | "nplurals=2; plural=(n != 1);"); 8 | -------------------------------------------------------------------------------- /l10n/kab.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "No" : "Uhu", 5 | "Yes" : "Ih" 6 | }, 7 | "nplurals=2; plural=(n != 1);"); 8 | -------------------------------------------------------------------------------- /l10n/km.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Color" : "ព័ណ៌", 3 | "No" : "No", 4 | "Yes" : "Yes" 5 | },"pluralForm" :"nplurals=1; plural=0;" 6 | } -------------------------------------------------------------------------------- /l10n/tk.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "No" : "Ýok", 5 | "Yes" : "Hawa" 6 | }, 7 | "nplurals=2; plural=(n != 1);"); 8 | -------------------------------------------------------------------------------- /l10n/ur_PK.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "No" : "No", 5 | "Yes" : "Yes" 6 | }, 7 | "nplurals=2; plural=(n != 1);"); 8 | -------------------------------------------------------------------------------- /l10n/mn.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Color" : "Өнгө", 3 | "No" : "Үгүй", 4 | "Yes" : "Тийм" 5 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 6 | } -------------------------------------------------------------------------------- /l10n/nn_NO.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Color" : "Farge", 3 | "No" : "Nei", 4 | "Yes" : "Ja" 5 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 6 | } -------------------------------------------------------------------------------- /l10n/km.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Color" : "ព័ណ៌", 5 | "No" : "No", 6 | "Yes" : "Yes" 7 | }, 8 | "nplurals=1; plural=0;"); 9 | -------------------------------------------------------------------------------- /l10n/lo.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "No" : "ບໍ່", 3 | "Yes" : "ແມ່ນແລ້ວ", 4 | "Success" : "ຄວາມສໍາເລັດ" 5 | },"pluralForm" :"nplurals=1; plural=0;" 6 | } -------------------------------------------------------------------------------- /l10n/mn.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Color" : "Өнгө", 5 | "No" : "Үгүй", 6 | "Yes" : "Тийм" 7 | }, 8 | "nplurals=2; plural=(n != 1);"); 9 | -------------------------------------------------------------------------------- /l10n/nn_NO.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Color" : "Farge", 5 | "No" : "Nei", 6 | "Yes" : "Ja" 7 | }, 8 | "nplurals=2; plural=(n != 1);"); 9 | -------------------------------------------------------------------------------- /l10n/cy_GB.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "No" : "No", 3 | "Yes" : "Iawn" 4 | },"pluralForm" :"nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;" 5 | } -------------------------------------------------------------------------------- /l10n/lo.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "No" : "ບໍ່", 5 | "Yes" : "ແມ່ນແລ້ວ", 6 | "Success" : "ຄວາມສໍາເລັດ" 7 | }, 8 | "nplurals=1; plural=0;"); 9 | -------------------------------------------------------------------------------- /l10n/cy_GB.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "No" : "No", 5 | "Yes" : "Iawn" 6 | }, 7 | "nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;"); 8 | -------------------------------------------------------------------------------- /l10n/gd.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "No" : "Chan eil", 3 | "Yes" : "Tha" 4 | },"pluralForm" :"nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;" 5 | } -------------------------------------------------------------------------------- /l10n/es_AR.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Color" : "Color", 3 | "No" : "No", 4 | "Yes" : "Si" 5 | },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 6 | } -------------------------------------------------------------------------------- /l10n/bs.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "No" : "No", 3 | "Yes" : "Yes" 4 | },"pluralForm" :"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);" 5 | } -------------------------------------------------------------------------------- /l10n/uz.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Mode" : "Rejim", 3 | "Color" : "Rang", 4 | "No" : "No", 5 | "Yes" : "Yes", 6 | "Success" : "Success" 7 | },"pluralForm" :"nplurals=1; plural=0;" 8 | } -------------------------------------------------------------------------------- /l10n/ka.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Color" : "Color", 3 | "No" : "No", 4 | "Yes" : "Yes", 5 | "File already exists" : "File already exists" 6 | },"pluralForm" :"nplurals=2; plural=(n!=1);" 7 | } -------------------------------------------------------------------------------- /l10n/sr@latin.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "No" : "No", 3 | "Yes" : "Yes" 4 | },"pluralForm" :"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);" 5 | } -------------------------------------------------------------------------------- /l10n/eo.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Color" : "Koloro", 3 | "No" : "No", 4 | "Yes" : "Yes", 5 | "File already exists" : "La dosiero jam ekzistas" 6 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 7 | } -------------------------------------------------------------------------------- /l10n/es_AR.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Color" : "Color", 5 | "No" : "No", 6 | "Yes" : "Si" 7 | }, 8 | "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 9 | -------------------------------------------------------------------------------- /l10n/gd.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "No" : "Chan eil", 5 | "Yes" : "Tha" 6 | }, 7 | "nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : (n > 2 && n < 20) ? 2 : 3;"); 8 | -------------------------------------------------------------------------------- /l10n/bs.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "No" : "No", 5 | "Yes" : "Yes" 6 | }, 7 | "nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"); 8 | -------------------------------------------------------------------------------- /l10n/si.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "No" : "නැහැ", 3 | "Yes" : "ඔව්", 4 | "File already exists" : "ගොනුව දැනටමත් පවතී", 5 | "Success" : "සාර්ථකයි" 6 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 7 | } -------------------------------------------------------------------------------- /l10n/sr@latin.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "No" : "No", 5 | "Yes" : "Yes" 6 | }, 7 | "nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"); 8 | -------------------------------------------------------------------------------- /l10n/id.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Color" : "Warna", 3 | "No" : "Tidak", 4 | "Yes" : "Ya", 5 | "File already exists" : "Berkas sudah ada", 6 | "Success" : "Berhasil" 7 | },"pluralForm" :"nplurals=1; plural=0;" 8 | } -------------------------------------------------------------------------------- /l10n/ka.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Color" : "Color", 5 | "No" : "No", 6 | "Yes" : "Yes", 7 | "File already exists" : "File already exists" 8 | }, 9 | "nplurals=2; plural=(n!=1);"); 10 | -------------------------------------------------------------------------------- /l10n/uz.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Mode" : "Rejim", 5 | "Color" : "Rang", 6 | "No" : "No", 7 | "Yes" : "Yes", 8 | "Success" : "Success" 9 | }, 10 | "nplurals=1; plural=0;"); 11 | -------------------------------------------------------------------------------- /phpunit.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | ./tests/unit 5 | 6 | 7 | -------------------------------------------------------------------------------- /l10n/af.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Color" : "Kleur", 3 | "No" : "Nee", 4 | "Yes" : "Ja", 5 | "File already exists" : "Lêer bestaan reeds", 6 | "Success" : "Sukses" 7 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 8 | } -------------------------------------------------------------------------------- /l10n/eo.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Color" : "Koloro", 5 | "No" : "No", 6 | "Yes" : "Yes", 7 | "File already exists" : "La dosiero jam ekzistas" 8 | }, 9 | "nplurals=2; plural=(n != 1);"); 10 | -------------------------------------------------------------------------------- /l10n/si.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "No" : "නැහැ", 5 | "Yes" : "ඔව්", 6 | "File already exists" : "ගොනුව දැනටමත් පවතී", 7 | "Success" : "සාර්ථකයි" 8 | }, 9 | "nplurals=2; plural=(n != 1);"); 10 | -------------------------------------------------------------------------------- /l10n/sq.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Color" : "Ngjyrë ", 3 | "No" : "Jo", 4 | "Yes" : "Yes", 5 | "File already exists" : "Skedari ekziston tashmë", 6 | "Success" : "Sukses" 7 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 8 | } -------------------------------------------------------------------------------- /phpunit.integration.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | ./tests/integration 5 | 6 | 7 | -------------------------------------------------------------------------------- /l10n/id.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Color" : "Warna", 5 | "No" : "Tidak", 6 | "Yes" : "Ya", 7 | "File already exists" : "Berkas sudah ada", 8 | "Success" : "Berhasil" 9 | }, 10 | "nplurals=1; plural=0;"); 11 | -------------------------------------------------------------------------------- /l10n/af.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Color" : "Kleur", 5 | "No" : "Nee", 6 | "Yes" : "Ja", 7 | "File already exists" : "Lêer bestaan reeds", 8 | "Success" : "Sukses" 9 | }, 10 | "nplurals=2; plural=(n != 1);"); 11 | -------------------------------------------------------------------------------- /l10n/et_EE.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Mode" : "Režiim", 3 | "Color" : "Värv", 4 | "No" : "Ei", 5 | "Yes" : "Jah", 6 | "File already exists" : "Fail on juba olemas", 7 | "Success" : "Valmis" 8 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 9 | } -------------------------------------------------------------------------------- /l10n/ka_GE.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Mode" : "რეჟიმი", 3 | "Color" : "ფერი", 4 | "No" : "არა", 5 | "Yes" : "კი", 6 | "File already exists" : "ფაილი უკვე არსებობს", 7 | "Success" : "წარმატება" 8 | },"pluralForm" :"nplurals=2; plural=(n!=1);" 9 | } -------------------------------------------------------------------------------- /l10n/sq.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Color" : "Ngjyrë ", 5 | "No" : "Jo", 6 | "Yes" : "Yes", 7 | "File already exists" : "Skedari ekziston tashmë", 8 | "Success" : "Sukses" 9 | }, 10 | "nplurals=2; plural=(n != 1);"); 11 | -------------------------------------------------------------------------------- /l10n/es_419.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Color" : "Color", 3 | "No" : "No", 4 | "Yes" : "Sí", 5 | "File already exists" : "El archivo ya existe", 6 | "Success" : "Éxito" 7 | },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 8 | } -------------------------------------------------------------------------------- /l10n/es_NI.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Color" : "Color", 3 | "No" : "No", 4 | "Yes" : "Sí", 5 | "File already exists" : "El archivo ya existe", 6 | "Success" : "Éxito" 7 | },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 8 | } -------------------------------------------------------------------------------- /l10n/es_PA.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Color" : "Color", 3 | "No" : "No", 4 | "Yes" : "Sí", 5 | "File already exists" : "El archivo ya existe", 6 | "Success" : "Éxito" 7 | },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 8 | } -------------------------------------------------------------------------------- /l10n/es_PE.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Color" : "Color", 3 | "No" : "No", 4 | "Yes" : "Sí", 5 | "File already exists" : "El archivo ya existe", 6 | "Success" : "Éxito" 7 | },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 8 | } -------------------------------------------------------------------------------- /l10n/es_PR.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Color" : "Color", 3 | "No" : "No", 4 | "Yes" : "Sí", 5 | "File already exists" : "El archivo ya existe", 6 | "Success" : "Éxito" 7 | },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 8 | } -------------------------------------------------------------------------------- /l10n/es_PY.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Color" : "Color", 3 | "No" : "No", 4 | "Yes" : "Sí", 5 | "File already exists" : "El archivo ya existe", 6 | "Success" : "Éxito" 7 | },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 8 | } -------------------------------------------------------------------------------- /l10n/es_UY.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Color" : "Color", 3 | "No" : "No", 4 | "Yes" : "Sí", 5 | "File already exists" : "El archivo ya existe", 6 | "Success" : "Éxito" 7 | },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 8 | } -------------------------------------------------------------------------------- /l10n/mk.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Mode" : "Мод", 3 | "Color" : "Боја", 4 | "No" : "No", 5 | "Yes" : "Yes", 6 | "File already exists" : "Датотека веќе постои", 7 | "Success" : "Успешно" 8 | },"pluralForm" :"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;" 9 | } -------------------------------------------------------------------------------- /l10n/et_EE.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Mode" : "Režiim", 5 | "Color" : "Värv", 6 | "No" : "Ei", 7 | "Yes" : "Jah", 8 | "File already exists" : "Fail on juba olemas", 9 | "Success" : "Valmis" 10 | }, 11 | "nplurals=2; plural=(n != 1);"); 12 | -------------------------------------------------------------------------------- /l10n/ka_GE.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Mode" : "რეჟიმი", 5 | "Color" : "ფერი", 6 | "No" : "არა", 7 | "Yes" : "კი", 8 | "File already exists" : "ფაილი უკვე არსებობს", 9 | "Success" : "წარმატება" 10 | }, 11 | "nplurals=2; plural=(n!=1);"); 12 | -------------------------------------------------------------------------------- /l10n/es_419.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Color" : "Color", 5 | "No" : "No", 6 | "Yes" : "Sí", 7 | "File already exists" : "El archivo ya existe", 8 | "Success" : "Éxito" 9 | }, 10 | "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 11 | -------------------------------------------------------------------------------- /l10n/es_CL.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Mode" : "Modo", 3 | "Color" : "Color", 4 | "No" : "No", 5 | "Yes" : "Sí", 6 | "File already exists" : "El archivo ya existe", 7 | "Success" : "Éxito" 8 | },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 9 | } -------------------------------------------------------------------------------- /l10n/es_CO.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Mode" : "Modo", 3 | "Color" : "Color", 4 | "No" : "No", 5 | "Yes" : "Sí", 6 | "File already exists" : "El archivo ya existe", 7 | "Success" : "Éxito" 8 | },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 9 | } -------------------------------------------------------------------------------- /l10n/es_CR.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Mode" : "Modo", 3 | "Color" : "Color", 4 | "No" : "No", 5 | "Yes" : "Sí", 6 | "File already exists" : "El archivo ya existe", 7 | "Success" : "Éxito" 8 | },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 9 | } -------------------------------------------------------------------------------- /l10n/es_DO.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Mode" : "Modo", 3 | "Color" : "Color", 4 | "No" : "No", 5 | "Yes" : "Sí", 6 | "File already exists" : "El archivo ya existe", 7 | "Success" : "Éxito" 8 | },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 9 | } -------------------------------------------------------------------------------- /l10n/es_GT.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Mode" : "Modo", 3 | "Color" : "Color", 4 | "No" : "No", 5 | "Yes" : "Sí", 6 | "File already exists" : "El archivo ya existe", 7 | "Success" : "Éxito" 8 | },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 9 | } -------------------------------------------------------------------------------- /l10n/es_HN.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Mode" : "Modo", 3 | "Color" : "Color", 4 | "No" : "No", 5 | "Yes" : "Sí", 6 | "File already exists" : "El archivo ya existe", 7 | "Success" : "Éxito" 8 | },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 9 | } -------------------------------------------------------------------------------- /l10n/es_MX.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Mode" : "Modo", 3 | "Color" : "Color", 4 | "No" : "No", 5 | "Yes" : "Sí", 6 | "File already exists" : "El archivo ya existe", 7 | "Success" : "Éxito" 8 | },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 9 | } -------------------------------------------------------------------------------- /l10n/es_NI.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Color" : "Color", 5 | "No" : "No", 6 | "Yes" : "Sí", 7 | "File already exists" : "El archivo ya existe", 8 | "Success" : "Éxito" 9 | }, 10 | "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 11 | -------------------------------------------------------------------------------- /l10n/es_PA.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Color" : "Color", 5 | "No" : "No", 6 | "Yes" : "Sí", 7 | "File already exists" : "El archivo ya existe", 8 | "Success" : "Éxito" 9 | }, 10 | "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 11 | -------------------------------------------------------------------------------- /l10n/es_PE.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Color" : "Color", 5 | "No" : "No", 6 | "Yes" : "Sí", 7 | "File already exists" : "El archivo ya existe", 8 | "Success" : "Éxito" 9 | }, 10 | "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 11 | -------------------------------------------------------------------------------- /l10n/es_PR.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Color" : "Color", 5 | "No" : "No", 6 | "Yes" : "Sí", 7 | "File already exists" : "El archivo ya existe", 8 | "Success" : "Éxito" 9 | }, 10 | "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 11 | -------------------------------------------------------------------------------- /l10n/es_PY.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Color" : "Color", 5 | "No" : "No", 6 | "Yes" : "Sí", 7 | "File already exists" : "El archivo ya existe", 8 | "Success" : "Éxito" 9 | }, 10 | "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 11 | -------------------------------------------------------------------------------- /l10n/es_SV.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Mode" : "Modo", 3 | "Color" : "Color", 4 | "No" : "No", 5 | "Yes" : "Sí", 6 | "File already exists" : "El archivo ya existe", 7 | "Success" : "Éxito" 8 | },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 9 | } -------------------------------------------------------------------------------- /l10n/es_UY.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Color" : "Color", 5 | "No" : "No", 6 | "Yes" : "Sí", 7 | "File already exists" : "El archivo ya existe", 8 | "Success" : "Éxito" 9 | }, 10 | "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 11 | -------------------------------------------------------------------------------- /l10n/mk.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Mode" : "Мод", 5 | "Color" : "Боја", 6 | "No" : "No", 7 | "Yes" : "Yes", 8 | "File already exists" : "Датотека веќе постои", 9 | "Success" : "Успешно" 10 | }, 11 | "nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;"); 12 | -------------------------------------------------------------------------------- /l10n/es_CL.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Mode" : "Modo", 5 | "Color" : "Color", 6 | "No" : "No", 7 | "Yes" : "Sí", 8 | "File already exists" : "El archivo ya existe", 9 | "Success" : "Éxito" 10 | }, 11 | "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 12 | -------------------------------------------------------------------------------- /l10n/es_CO.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Mode" : "Modo", 5 | "Color" : "Color", 6 | "No" : "No", 7 | "Yes" : "Sí", 8 | "File already exists" : "El archivo ya existe", 9 | "Success" : "Éxito" 10 | }, 11 | "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 12 | -------------------------------------------------------------------------------- /l10n/es_CR.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Mode" : "Modo", 5 | "Color" : "Color", 6 | "No" : "No", 7 | "Yes" : "Sí", 8 | "File already exists" : "El archivo ya existe", 9 | "Success" : "Éxito" 10 | }, 11 | "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 12 | -------------------------------------------------------------------------------- /l10n/es_DO.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Mode" : "Modo", 5 | "Color" : "Color", 6 | "No" : "No", 7 | "Yes" : "Sí", 8 | "File already exists" : "El archivo ya existe", 9 | "Success" : "Éxito" 10 | }, 11 | "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 12 | -------------------------------------------------------------------------------- /l10n/es_GT.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Mode" : "Modo", 5 | "Color" : "Color", 6 | "No" : "No", 7 | "Yes" : "Sí", 8 | "File already exists" : "El archivo ya existe", 9 | "Success" : "Éxito" 10 | }, 11 | "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 12 | -------------------------------------------------------------------------------- /l10n/es_HN.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Mode" : "Modo", 5 | "Color" : "Color", 6 | "No" : "No", 7 | "Yes" : "Sí", 8 | "File already exists" : "El archivo ya existe", 9 | "Success" : "Éxito" 10 | }, 11 | "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 12 | -------------------------------------------------------------------------------- /l10n/es_MX.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Mode" : "Modo", 5 | "Color" : "Color", 6 | "No" : "No", 7 | "Yes" : "Sí", 8 | "File already exists" : "El archivo ya existe", 9 | "Success" : "Éxito" 10 | }, 11 | "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 12 | -------------------------------------------------------------------------------- /l10n/es_SV.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Mode" : "Modo", 5 | "Color" : "Color", 6 | "No" : "No", 7 | "Yes" : "Sí", 8 | "File already exists" : "El archivo ya existe", 9 | "Success" : "Éxito" 10 | }, 11 | "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 12 | -------------------------------------------------------------------------------- /l10n/be.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "No" : "Не", 3 | "Yes" : "Так", 4 | "File already exists" : "Файл ужо існуе", 5 | "Success" : "Поспех" 6 | },"pluralForm" :"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);" 7 | } -------------------------------------------------------------------------------- /.tx/config: -------------------------------------------------------------------------------- 1 | [main] 2 | host = https://www.transifex.com 3 | lang_map = bg_BG: bg, cs_CZ: cs, fi_FI: fi, hu_HU: hu, nb_NO: nb, sk_SK: sk, th_TH: th, ja_JP: ja 4 | 5 | [o:nextcloud:p:nextcloud:r:scanner] 6 | file_filter = translationfiles//scanner.po 7 | source_file = translationfiles/templates/scanner.pot 8 | source_lang = en 9 | type = PO 10 | 11 | -------------------------------------------------------------------------------- /l10n/be.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "No" : "Не", 5 | "Yes" : "Так", 6 | "File already exists" : "Файл ужо існуе", 7 | "Success" : "Поспех" 8 | }, 9 | "nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"); 10 | -------------------------------------------------------------------------------- /tests/bootstrap.php: -------------------------------------------------------------------------------- 1 | 9 | * @copyright Greg Sutcliffe 2016 10 | */ 11 | 12 | require_once __DIR__ . '/../../../tests/bootstrap.php'; 13 | require_once __DIR__ . '/../appinfo/autoload.php'; -------------------------------------------------------------------------------- /templates/optionsdialog.html: -------------------------------------------------------------------------------- 1 |
2 |

{message}

3 |
4 | 7 | 15 |
16 |
17 | -------------------------------------------------------------------------------- /l10n/br.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Mode" : "Mod", 3 | "Color" : "Liv", 4 | "No" : "Nan", 5 | "Yes" : "Ya", 6 | "Success" : "Graet" 7 | },"pluralForm" :"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);" 8 | } -------------------------------------------------------------------------------- /l10n/ast.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Mode" : "Mou", 3 | "Color" : "Color", 4 | "Greyscale" : "Escala de buxos", 5 | "Resolution" : "Resolución", 6 | "Scan Options" : "Opciones del escanéu", 7 | "Scan started." : "Anicióse l'escanéu.", 8 | "Scan complete" : "Completóse l'escanéu", 9 | "No" : "Non", 10 | "Yes" : "Sí", 11 | "File already exists" : "El ficheru yá esiste", 12 | "Scanner" : "Escáner" 13 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 14 | } -------------------------------------------------------------------------------- /l10n/br.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Mode" : "Mod", 5 | "Color" : "Liv", 6 | "No" : "Nan", 7 | "Yes" : "Ya", 8 | "Success" : "Graet" 9 | }, 10 | "nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);"); 11 | -------------------------------------------------------------------------------- /l10n/ast.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Mode" : "Mou", 5 | "Color" : "Color", 6 | "Greyscale" : "Escala de buxos", 7 | "Resolution" : "Resolución", 8 | "Scan Options" : "Opciones del escanéu", 9 | "Scan started." : "Anicióse l'escanéu.", 10 | "Scan complete" : "Completóse l'escanéu", 11 | "No" : "Non", 12 | "Yes" : "Sí", 13 | "File already exists" : "El ficheru yá esiste", 14 | "Scanner" : "Escáner" 15 | }, 16 | "nplurals=2; plural=(n != 1);"); 17 | -------------------------------------------------------------------------------- /appinfo/autoload.php: -------------------------------------------------------------------------------- 1 | 9 | * @copyright Greg Sutcliffe 2016 10 | */ 11 | 12 | namespace OCA\Scanner\AppInfo; 13 | 14 | use OCP\AppFramework\App; 15 | 16 | /** 17 | * Additional autoloader registration, e.g. registering composer autoloaders 18 | */ 19 | // require_once __DIR__ . '/../vendor/autoload.php'; -------------------------------------------------------------------------------- /TODO.md: -------------------------------------------------------------------------------- 1 | # TODO 2 | 3 | ## Bugs / immediate stuff 4 | 5 | * Add an spinner to show a scan in progress 6 | * Figure out how to refresh the file view 7 | * See if there's a PHP way to stream directly from stdout and not use a tmpfile 8 | * Add some error handling 9 | * Add some tests 10 | 11 | ## Roadmap 12 | 13 | * Add settings to control colour, resoultion, device url 14 | * Possibly make these show up in a JS popup per scan (with defaults) 15 | * Combine scanned pages into single PDF doc 16 | * Clientside scanning sent via file upload? 17 | * (is it worth it? client could scan locally and then upload themselves...) 18 | -------------------------------------------------------------------------------- /l10n/oc.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Numerizar imatge", 3 | "Mode" : "Mòde", 4 | "Color" : "Color", 5 | "Greyscale" : "Nivèls de gris", 6 | "Resolution" : "Resolucion", 7 | "Scan Options" : "Opcions de numerizacion", 8 | "Scan aborted." : "Numerizacion arrestada.", 9 | "Scan started." : "Numerizacion lançada.", 10 | "Scan complete" : "Numerizacion acabada", 11 | "No" : "Non", 12 | "Yes" : "Òc", 13 | "File already exists" : "Lo fichièr existís ja", 14 | "Success" : "Succès", 15 | "Scanner" : "Numerizador" 16 | },"pluralForm" :"nplurals=2; plural=(n > 1);" 17 | } -------------------------------------------------------------------------------- /l10n/oc.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Numerizar imatge", 5 | "Mode" : "Mòde", 6 | "Color" : "Color", 7 | "Greyscale" : "Nivèls de gris", 8 | "Resolution" : "Resolucion", 9 | "Scan Options" : "Opcions de numerizacion", 10 | "Scan aborted." : "Numerizacion arrestada.", 11 | "Scan started." : "Numerizacion lançada.", 12 | "Scan complete" : "Numerizacion acabada", 13 | "No" : "Non", 14 | "Yes" : "Òc", 15 | "File already exists" : "Lo fichièr existís ja", 16 | "Success" : "Succès", 17 | "Scanner" : "Numerizador" 18 | }, 19 | "nplurals=2; plural=(n > 1);"); 20 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature_request.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Feature request 3 | about: Suggest an idea for this project 4 | title: '' 5 | labels: '' 6 | assignees: '' 7 | 8 | --- 9 | 10 | **Is your feature request related to a problem? Please describe.** 11 | A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] 12 | 13 | **Describe the solution you'd like** 14 | A clear and concise description of what you want to happen. 15 | 16 | **Describe alternatives you've considered** 17 | A clear and concise description of any alternative solutions or features you've considered. 18 | 19 | **Additional context** 20 | Add any other context or screenshots about the feature request here. 21 | -------------------------------------------------------------------------------- /appinfo/routes.php: -------------------------------------------------------------------------------- 1 | 9 | * @copyright Greg Sutcliffe 2016 10 | */ 11 | 12 | /** 13 | * Create your routes in here. The name is the lowercase name of the controller 14 | * without the controller part, the stuff after the hash is the method. 15 | * e.g. page#index -> OCA\Scanner\Controller\PageController->index() 16 | * 17 | * The controller class has to be registered in the application.php file since 18 | * it's instantiated in there 19 | */ 20 | return [ 21 | 'routes' => [ 22 | ['name' => 'scanner#scan', 'url' => '/scan', 'verb' => 'POST'], 23 | ] 24 | ]; 25 | -------------------------------------------------------------------------------- /l10n/sv.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Analyserar bild", 3 | "Mode" : "Läge", 4 | "Color" : "Färg", 5 | "Greyscale" : "Gråskala", 6 | "Resolution" : "Upplösning", 7 | "Please adjust scan parameters" : "Vänligen ändra scanningsinställningarna", 8 | "Scan Options" : "Analysalternativ", 9 | "Scan aborted." : "Analys avbruten.", 10 | "Scan started." : "Analys startad.", 11 | "Scan complete" : "Skanning slutförd", 12 | "No" : "Nej", 13 | "Yes" : "Ja", 14 | "File already exists" : "Filen finns redan", 15 | "Something went wrong while attempting to scan" : "Något blev fel vid scanningen", 16 | "Success" : "Lyckades", 17 | "Scanner" : "Scanner", 18 | "Scanner app for Nextcloud using the SANE framework" : "Scannerappen för Nextcloud använder SANE ramverket " 19 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 20 | } -------------------------------------------------------------------------------- /l10n/sv.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Analyserar bild", 5 | "Mode" : "Läge", 6 | "Color" : "Färg", 7 | "Greyscale" : "Gråskala", 8 | "Resolution" : "Upplösning", 9 | "Please adjust scan parameters" : "Vänligen ändra scanningsinställningarna", 10 | "Scan Options" : "Analysalternativ", 11 | "Scan aborted." : "Analys avbruten.", 12 | "Scan started." : "Analys startad.", 13 | "Scan complete" : "Skanning slutförd", 14 | "No" : "Nej", 15 | "Yes" : "Ja", 16 | "File already exists" : "Filen finns redan", 17 | "Something went wrong while attempting to scan" : "Något blev fel vid scanningen", 18 | "Success" : "Lyckades", 19 | "Scanner" : "Scanner", 20 | "Scanner app for Nextcloud using the SANE framework" : "Scannerappen för Nextcloud använder SANE ramverket " 21 | }, 22 | "nplurals=2; plural=(n != 1);"); 23 | -------------------------------------------------------------------------------- /l10n/zh_CN.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "扫描图片", 3 | "Mode" : "模式", 4 | "Color" : "颜色", 5 | "Greyscale" : "灰阶", 6 | "Lineart" : "艺术线条", 7 | "Resolution" : "解析度", 8 | "Please adjust scan parameters" : "请调整扫描参数", 9 | "Scan Options" : "扫描选项", 10 | "Scan aborted." : "扫描失败中止。", 11 | "Scan started." : "扫描开始。", 12 | "Scan complete" : "扫描完成", 13 | "No" : "否", 14 | "Yes" : "是", 15 | "File already exists" : "文件已存在", 16 | "Something went wrong while attempting to scan" : "尝试扫描时出错", 17 | "Success" : "成功", 18 | "Scanner" : "扫描仪", 19 | "Scanner app for Nextcloud using the SANE framework" : "支持SANE框架协议的Nextcloud扫描应用", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "提供从网络和本地扫描仪获取图像的能力。您需要一个工作正常的SANE配置和一个支持的扫描仪。请查阅readme文件以了解如何在您的系统上设置此应用。" 21 | },"pluralForm" :"nplurals=1; plural=0;" 22 | } -------------------------------------------------------------------------------- /l10n/zh_HK.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "掃描圖像", 3 | "Mode" : "模式", 4 | "Color" : "色彩", 5 | "Greyscale" : "灰階", 6 | "Lineart" : "線條藝術", 7 | "Resolution" : "解析度", 8 | "Please adjust scan parameters" : "請調整掃描參數", 9 | "Scan Options" : "掃描選項", 10 | "Scan aborted." : "掃描中止", 11 | "Scan started." : "開始掃描", 12 | "Scan complete" : "掃描完成", 13 | "No" : "否", 14 | "Yes" : "是", 15 | "File already exists" : "檔案已存在", 16 | "Something went wrong while attempting to scan" : "掃描時發生錯誤", 17 | "Success" : "成功", 18 | "Scanner" : "掃描器", 19 | "Scanner app for Nextcloud using the SANE framework" : "掃描器應用程式使用 SANE 架構", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "這個應用程式讓您能夠從網路中上傳掃描文件,或使用電腦上傳掃描文件。\n您必須有設定好並支援 SANE 架構的掃描器\n請查看 readme 文件了解如何設定此應用程式。" 21 | },"pluralForm" :"nplurals=1; plural=0;" 22 | } -------------------------------------------------------------------------------- /l10n/zh_TW.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "掃描影像", 3 | "Mode" : "模式", 4 | "Color" : "色彩", 5 | "Greyscale" : "灰階", 6 | "Lineart" : "線條藝術", 7 | "Resolution" : "解析度", 8 | "Please adjust scan parameters" : "請調整掃描參數", 9 | "Scan Options" : "掃描選項", 10 | "Scan aborted." : "掃描中止", 11 | "Scan started." : "開始掃描", 12 | "Scan complete" : "掃描完成", 13 | "No" : "否", 14 | "Yes" : "是", 15 | "File already exists" : "檔案已存在", 16 | "Something went wrong while attempting to scan" : "掃描時發生錯誤", 17 | "Success" : "成功", 18 | "Scanner" : "掃描器", 19 | "Scanner app for Nextcloud using the SANE framework" : "使用 SANE 框架的 Nextcloud 掃描應用程式", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "讓 Nextcloud 新增從網路或本機掃描器取得影像的功能。您必須有可運作的 SANE 設定與受支援的掃描器。請見讀我檔案來了解如何在您的系統上設定此應用程式。" 21 | },"pluralForm" :"nplurals=1; plural=0;" 22 | } -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/bug_report.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Bug report 3 | about: Create a report to help us improve 4 | title: '' 5 | labels: '' 6 | assignees: '' 7 | 8 | --- 9 | 10 | **Describe the bug** 11 | A clear and concise description of what the bug is. 12 | 13 | **To Reproduce** 14 | Steps to reproduce the behavior: 15 | 1. Go to '...' 16 | 2. Click on '....' 17 | 3. Scroll down to '....' 18 | 4. See error 19 | 20 | **Expected behavior** 21 | A clear and concise description of what you expected to happen. 22 | 23 | **Screenshots** 24 | If applicable, add screenshots to help explain your problem. 25 | 26 | **Desktop (please complete the following information):** 27 | - OS: [e.g. iOS] 28 | - Browser [e.g. chrome, safari] 29 | - Version [e.g. 22] 30 | 31 | **Smartphone (please complete the following information):** 32 | - Device: [e.g. iPhone6] 33 | - OS: [e.g. iOS8.1] 34 | - Browser [e.g. stock browser, safari] 35 | - Version [e.g. 22] 36 | 37 | **Additional context** 38 | Add any other context about the problem here. 39 | -------------------------------------------------------------------------------- /l10n/zh_CN.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "扫描图片", 5 | "Mode" : "模式", 6 | "Color" : "颜色", 7 | "Greyscale" : "灰阶", 8 | "Lineart" : "艺术线条", 9 | "Resolution" : "解析度", 10 | "Please adjust scan parameters" : "请调整扫描参数", 11 | "Scan Options" : "扫描选项", 12 | "Scan aborted." : "扫描失败中止。", 13 | "Scan started." : "扫描开始。", 14 | "Scan complete" : "扫描完成", 15 | "No" : "否", 16 | "Yes" : "是", 17 | "File already exists" : "文件已存在", 18 | "Something went wrong while attempting to scan" : "尝试扫描时出错", 19 | "Success" : "成功", 20 | "Scanner" : "扫描仪", 21 | "Scanner app for Nextcloud using the SANE framework" : "支持SANE框架协议的Nextcloud扫描应用", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "提供从网络和本地扫描仪获取图像的能力。您需要一个工作正常的SANE配置和一个支持的扫描仪。请查阅readme文件以了解如何在您的系统上设置此应用。" 23 | }, 24 | "nplurals=1; plural=0;"); 25 | -------------------------------------------------------------------------------- /l10n/zh_HK.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "掃描圖像", 5 | "Mode" : "模式", 6 | "Color" : "色彩", 7 | "Greyscale" : "灰階", 8 | "Lineart" : "線條藝術", 9 | "Resolution" : "解析度", 10 | "Please adjust scan parameters" : "請調整掃描參數", 11 | "Scan Options" : "掃描選項", 12 | "Scan aborted." : "掃描中止", 13 | "Scan started." : "開始掃描", 14 | "Scan complete" : "掃描完成", 15 | "No" : "否", 16 | "Yes" : "是", 17 | "File already exists" : "檔案已存在", 18 | "Something went wrong while attempting to scan" : "掃描時發生錯誤", 19 | "Success" : "成功", 20 | "Scanner" : "掃描器", 21 | "Scanner app for Nextcloud using the SANE framework" : "掃描器應用程式使用 SANE 架構", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "這個應用程式讓您能夠從網路中上傳掃描文件,或使用電腦上傳掃描文件。\n您必須有設定好並支援 SANE 架構的掃描器\n請查看 readme 文件了解如何設定此應用程式。" 23 | }, 24 | "nplurals=1; plural=0;"); 25 | -------------------------------------------------------------------------------- /tests/integration/AppTest.php: -------------------------------------------------------------------------------- 1 | 9 | * @copyright Greg Sutcliffe 2016 10 | */ 11 | 12 | use OCP\AppFramework\App; 13 | use Test\TestCase; 14 | 15 | 16 | /** 17 | * This test shows how to make a small Integration Test. Query your class 18 | * directly from the container, only pass in mocks if needed and run your tests 19 | * against the database 20 | */ 21 | class AppTest extends TestCase { 22 | 23 | private $container; 24 | 25 | public function setUp() { 26 | parent::setUp(); 27 | $app = new App('scanner'); 28 | $this->container = $app->getContainer(); 29 | } 30 | 31 | public function testAppInstalled() { 32 | $appManager = $this->container->query('OCP\App\IAppManager'); 33 | $this->assertTrue($appManager->isInstalled('scanner')); 34 | } 35 | 36 | } -------------------------------------------------------------------------------- /l10n/zh_TW.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "掃描影像", 5 | "Mode" : "模式", 6 | "Color" : "色彩", 7 | "Greyscale" : "灰階", 8 | "Lineart" : "線條藝術", 9 | "Resolution" : "解析度", 10 | "Please adjust scan parameters" : "請調整掃描參數", 11 | "Scan Options" : "掃描選項", 12 | "Scan aborted." : "掃描中止", 13 | "Scan started." : "開始掃描", 14 | "Scan complete" : "掃描完成", 15 | "No" : "否", 16 | "Yes" : "是", 17 | "File already exists" : "檔案已存在", 18 | "Something went wrong while attempting to scan" : "掃描時發生錯誤", 19 | "Success" : "成功", 20 | "Scanner" : "掃描器", 21 | "Scanner app for Nextcloud using the SANE framework" : "使用 SANE 框架的 Nextcloud 掃描應用程式", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "讓 Nextcloud 新增從網路或本機掃描器取得影像的功能。您必須有可運作的 SANE 設定與受支援的掃描器。請見讀我檔案來了解如何在您的系統上設定此應用程式。" 23 | }, 24 | "nplurals=1; plural=0;"); 25 | -------------------------------------------------------------------------------- /l10n/ko.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "그림 스캔", 3 | "Mode" : "모드", 4 | "Color" : "색", 5 | "Greyscale" : "그레이스케일", 6 | "Lineart" : "라인아트", 7 | "Resolution" : "해상도", 8 | "Please adjust scan parameters" : "스캔 인자를 조정해 주세요.", 9 | "Scan Options" : "스캔 옵션", 10 | "Scan aborted." : "스캔이 중단되었습니다.", 11 | "Scan started." : "스캔을 시작했습니다.", 12 | "Scan complete" : "스캔 완료", 13 | "No" : "아니요", 14 | "Yes" : "예", 15 | "File already exists" : "파일이 이미 존재함", 16 | "Something went wrong while attempting to scan" : "스캔을 시도하는 중 오류 발생", 17 | "Success" : "성공", 18 | "Scanner" : "스캐너", 19 | "Scanner app for Nextcloud using the SANE framework" : "SANE 프레임워크를 사용하는 Nextcloud 스캐너 앱", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "네트워크 스캐너 및 로컬 스캐너에서 그림을 스캔할 수 있습니다. SANE을 지원하는 스캐너가 필요합니다. 이 앱의 문서를 참조하여 시스템에 설치하는 방법을 알아 보십시오." 21 | },"pluralForm" :"nplurals=1; plural=0;" 22 | } -------------------------------------------------------------------------------- /l10n/ko.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "그림 스캔", 5 | "Mode" : "모드", 6 | "Color" : "색", 7 | "Greyscale" : "그레이스케일", 8 | "Lineart" : "라인아트", 9 | "Resolution" : "해상도", 10 | "Please adjust scan parameters" : "스캔 인자를 조정해 주세요.", 11 | "Scan Options" : "스캔 옵션", 12 | "Scan aborted." : "스캔이 중단되었습니다.", 13 | "Scan started." : "스캔을 시작했습니다.", 14 | "Scan complete" : "스캔 완료", 15 | "No" : "아니요", 16 | "Yes" : "예", 17 | "File already exists" : "파일이 이미 존재함", 18 | "Something went wrong while attempting to scan" : "스캔을 시도하는 중 오류 발생", 19 | "Success" : "성공", 20 | "Scanner" : "스캐너", 21 | "Scanner app for Nextcloud using the SANE framework" : "SANE 프레임워크를 사용하는 Nextcloud 스캐너 앱", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "네트워크 스캐너 및 로컬 스캐너에서 그림을 스캔할 수 있습니다. SANE을 지원하는 스캐너가 필요합니다. 이 앱의 문서를 참조하여 시스템에 설치하는 방법을 알아 보십시오." 23 | }, 24 | "nplurals=1; plural=0;"); 25 | -------------------------------------------------------------------------------- /l10n/ja.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "スキャン画像", 3 | "Mode" : "モード", 4 | "Color" : "色", 5 | "Greyscale" : "グレースケール", 6 | "Lineart" : "線画", 7 | "Resolution" : "解像度", 8 | "Please adjust scan parameters" : "スキャンパラメーターを調整してください", 9 | "Scan Options" : "スキャンオプション", 10 | "Scan aborted." : "スキャンを中止しました。", 11 | "Scan started." : "スキャンを開始しました。", 12 | "Scan complete" : "スキャン完了", 13 | "No" : "いいえ", 14 | "Yes" : "はい", 15 | "File already exists" : "ファイルはすでに存在します", 16 | "Something went wrong while attempting to scan" : "スキャンする間に何か問題が発生しました", 17 | "Success" : "完了", 18 | "Scanner" : "スキャナー", 19 | "Scanner app for Nextcloud using the SANE framework" : "SANEフレームワークを利用したNextcloud向けスキャナーアプリ", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "ネットワーク対応またはローカルのスキャナーから画像を取得できる機能を追加しました。SANEの動作設定ならびにサポートされたスキャナが必要です。コンピュータ上にある、このアプリのセットアップ方法に関するreadmeを参照してください。" 21 | },"pluralForm" :"nplurals=1; plural=0;" 22 | } -------------------------------------------------------------------------------- /l10n/ja.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "スキャン画像", 5 | "Mode" : "モード", 6 | "Color" : "色", 7 | "Greyscale" : "グレースケール", 8 | "Lineart" : "線画", 9 | "Resolution" : "解像度", 10 | "Please adjust scan parameters" : "スキャンパラメーターを調整してください", 11 | "Scan Options" : "スキャンオプション", 12 | "Scan aborted." : "スキャンを中止しました。", 13 | "Scan started." : "スキャンを開始しました。", 14 | "Scan complete" : "スキャン完了", 15 | "No" : "いいえ", 16 | "Yes" : "はい", 17 | "File already exists" : "ファイルはすでに存在します", 18 | "Something went wrong while attempting to scan" : "スキャンする間に何か問題が発生しました", 19 | "Success" : "完了", 20 | "Scanner" : "スキャナー", 21 | "Scanner app for Nextcloud using the SANE framework" : "SANEフレームワークを利用したNextcloud向けスキャナーアプリ", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "ネットワーク対応またはローカルのスキャナーから画像を取得できる機能を追加しました。SANEの動作設定ならびにサポートされたスキャナが必要です。コンピュータ上にある、このアプリのセットアップ方法に関するreadmeを参照してください。" 23 | }, 24 | "nplurals=1; plural=0;"); 25 | -------------------------------------------------------------------------------- /.ci/release_app.sh: -------------------------------------------------------------------------------- 1 | #! /bin/bash 2 | 3 | set -u 4 | set -e 5 | 6 | if [ -z ${1} ]; then 7 | echo "Release version (arg1) not set !" 8 | exit 1; 9 | fi 10 | 11 | SRC_DIR=`dirname $0`"/.." 12 | RELEASE_VERSION=${1} 13 | echo "Release version set to ${RELEASE_VERSION}" 14 | 15 | sed -ri 's/(.*)(.+)<\/version>/\1'${RELEASE_VERSION}'<\/version>/g' ${SRC_DIR}/appinfo/info.xml 16 | git commit -am "Release "${RELEASE_VERSION} 17 | git tag ${RELEASE_VERSION} 18 | git push 19 | git push --tags 20 | # Wait a second for Github to ingest our data 21 | sleep 1 22 | cd /tmp 23 | rm -Rf scanner-packaging && mkdir scanner-packaging && cd scanner-packaging 24 | 25 | # Download the git file from github 26 | wget https://github.com/e-alfred/nextcloud-scanner/archive/${RELEASE_VERSION}.tar.gz 27 | tar xzf ${RELEASE_VERSION}.tar.gz 28 | mv nextcloud-scanner-${RELEASE_VERSION} scanner 29 | 30 | # Drop unneeded files 31 | rm -Rf \ 32 | scanner/js/devel \ 33 | scanner/gulpfile.js \ 34 | scanner/package.json \ 35 | scanner/.ci \ 36 | scanner/.tx \ 37 | scanner/doc 38 | 39 | tar cfz scanner-${RELEASE_VERSION}.tar.gz scanner 40 | echo "Release version "${RELEASE_VERSION}" is now ready." 41 | -------------------------------------------------------------------------------- /appinfo/info.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | scanner 4 | Scanner 5 | Scanner app for Nextcloud using the SANE framework 6 | Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system. 7 | AGPL 8 | Greg Sutcliffe 9 | e-alfred 10 | Biont 11 | 0.2.3 12 | Scanner 13 | tools 14 | https://github.com/e-alfred/nextcloud-scanner 15 | https://github.com/e-alfred/nextcloud-scanner/issues 16 | https://github.com/e-alfred/nextcloud-scanner/ 17 | https://github.com/e-alfred/nextcloud-scanner/raw/master/screenshots/menu.png 18 | https://github.com/e-alfred/nextcloud-scanner 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /l10n/th.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "สแกนรูปภาพ", 3 | "Mode" : "โหมด", 4 | "Color" : "สี", 5 | "Greyscale" : "ขาวดำ", 6 | "Lineart" : "ลายเส้น", 7 | "Resolution" : "ความละเอียด", 8 | "Please adjust scan parameters" : "กรุณาปรับค่าการสแกน", 9 | "Scan Options" : "ตัวเลือกการสแกน", 10 | "Scan aborted." : "ยกเลิกการสแกนแล้ว", 11 | "Scan started." : "เริ่มการสแกนแล้ว", 12 | "Scan complete" : "สแกนเรียบร้อย", 13 | "No" : "ไม่ใช่", 14 | "Yes" : "ใช่", 15 | "File already exists" : "มีไฟล์นี้อยู่แล้ว", 16 | "Something went wrong while attempting to scan" : "เกิดข้อผิดพลาดขณะพยายามสแกน", 17 | "Success" : "เสร็จสิ้น", 18 | "Scanner" : "เครื่องสแกน", 19 | "Scanner app for Nextcloud using the SANE framework" : "แอปเครื่องสแกนสำหรับ Nextcloud ที่ใช้เฟรมเวิร์ก SANE", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "เพิ่มความสามารถในการรับภาพจากเครื่องสแกนที่เปิดใช้งานเครือข่ายหรือเครื่องสแกนในพื้นที่ คุณต้องมีการกำหนดค่า SANE ที่ใช้งานได้และเครื่องสแกนที่รองรับ โปรดอ่าน readme สำหรับวิธีตั้งค่าแอปนี้ในระบบของคุณ" 21 | },"pluralForm" :"nplurals=1; plural=0;" 22 | } -------------------------------------------------------------------------------- /l10n/he.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "סריקת תמונה", 3 | "Mode" : "מצב", 4 | "Color" : "צבע", 5 | "Greyscale" : "גווני אפור", 6 | "Lineart" : "אומנות בקווים", 7 | "Resolution" : "רזולוציה", 8 | "Please adjust scan parameters" : "נא להתאים את משתני הסריקה", 9 | "Scan Options" : "אפשרויות סריקה", 10 | "Scan aborted." : "הסריקה בוטלה.", 11 | "Scan started." : "הסריקה החלה.", 12 | "Scan complete" : "הסריקה הושלמה", 13 | "No" : "לא", 14 | "Yes" : "כן", 15 | "File already exists" : "הקובץ כבר קיים", 16 | "Something went wrong while attempting to scan" : "משהו השתבש במהלך ניסיון הסריקה", 17 | "Success" : "הצלחה", 18 | "Scanner" : "סורק", 19 | "Scanner app for Nextcloud using the SANE framework" : "יישומון ריקה ל־Nextcloud בעזרת תשתית SANE", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "היישומון מוסיף את האפשרות לקבל תמונות מסורק מחובר לרשת או מקומי. נדרשת תצורה עובדת של SANE וסורק נתמך. נא לעיין בקובץ הפירוט (README) על אופן הגדרת היישומון הזה במערכת שלך." 21 | },"pluralForm" :"nplurals=3; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: 2;" 22 | } -------------------------------------------------------------------------------- /tests/unit/controller/PageControllerTest.php: -------------------------------------------------------------------------------- 1 | 9 | * @copyright Greg Sutcliffe 2016 10 | */ 11 | 12 | namespace OCA\Scanner\Controller; 13 | 14 | use PHPUnit_Framework_TestCase; 15 | 16 | use OCP\AppFramework\Http\TemplateResponse; 17 | 18 | 19 | class PageControllerTest extends PHPUnit_Framework_TestCase { 20 | 21 | private $controller; 22 | private $userId = 'john'; 23 | 24 | public function setUp() { 25 | $request = $this->getMockBuilder('OCP\IRequest')->getMock(); 26 | 27 | $this->controller = new PageController( 28 | 'scanner', $request, $this->userId 29 | ); 30 | } 31 | 32 | 33 | public function testIndex() { 34 | $result = $this->controller->index(); 35 | 36 | $this->assertEquals(['user' => 'john'], $result->getParams()); 37 | $this->assertEquals('main', $result->getTemplateName()); 38 | $this->assertTrue($result instanceof TemplateResponse); 39 | } 40 | 41 | 42 | public function testEcho() { 43 | $result = $this->controller->doEcho('hi'); 44 | $this->assertEquals(['echo' => 'hi'], $result->getData()); 45 | } 46 | 47 | 48 | } -------------------------------------------------------------------------------- /l10n/fa.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "اسکن تصویر", 3 | "Mode" : "حالت", 4 | "Color" : "رنگ", 5 | "Greyscale" : "Greyscale", 6 | "Lineart" : "خطی", 7 | "Resolution" : "وضوح", 8 | "Please adjust scan parameters" : "لطفا پارامترهای اسکن را تنظیم کنید", 9 | "Scan Options" : "گزینه های اسکن", 10 | "Scan aborted." : "اسکن متوقف شد", 11 | "Scan started." : "اسکن شروع شد", 12 | "Scan complete" : "اسکن کامل کردن", 13 | "No" : "نه", 14 | "Yes" : "بله", 15 | "File already exists" : "فایل از قبل موجود میباشد", 16 | "Something went wrong while attempting to scan" : "هنگام تلاش برای اسکن ، مشکلی پیش آمد", 17 | "Success" : "موفقیت", 18 | "Scanner" : "اسکنر", 19 | "Scanner app for Nextcloud using the SANE framework" : "برنامه اسکنر برای نکست کلود با استفاده از چارچوب SANE", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "توانایی به دست آوردن تصاویر را از یک اسکنر فعال شده در شبکه یا محلی افزودن. شما به یک تنظیمات SANE در حال کار و یک اسکنر پیکربندی نیاز دارید. لطفاً به خواندن روش تنظیم این برنامه در سیستم خود مراجعه کنید." 21 | },"pluralForm" :"nplurals=2; plural=(n > 1);" 22 | } -------------------------------------------------------------------------------- /l10n/th.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "สแกนรูปภาพ", 5 | "Mode" : "โหมด", 6 | "Color" : "สี", 7 | "Greyscale" : "ขาวดำ", 8 | "Lineart" : "ลายเส้น", 9 | "Resolution" : "ความละเอียด", 10 | "Please adjust scan parameters" : "กรุณาปรับค่าการสแกน", 11 | "Scan Options" : "ตัวเลือกการสแกน", 12 | "Scan aborted." : "ยกเลิกการสแกนแล้ว", 13 | "Scan started." : "เริ่มการสแกนแล้ว", 14 | "Scan complete" : "สแกนเรียบร้อย", 15 | "No" : "ไม่ใช่", 16 | "Yes" : "ใช่", 17 | "File already exists" : "มีไฟล์นี้อยู่แล้ว", 18 | "Something went wrong while attempting to scan" : "เกิดข้อผิดพลาดขณะพยายามสแกน", 19 | "Success" : "เสร็จสิ้น", 20 | "Scanner" : "เครื่องสแกน", 21 | "Scanner app for Nextcloud using the SANE framework" : "แอปเครื่องสแกนสำหรับ Nextcloud ที่ใช้เฟรมเวิร์ก SANE", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "เพิ่มความสามารถในการรับภาพจากเครื่องสแกนที่เปิดใช้งานเครือข่ายหรือเครื่องสแกนในพื้นที่ คุณต้องมีการกำหนดค่า SANE ที่ใช้งานได้และเครื่องสแกนที่รองรับ โปรดอ่าน readme สำหรับวิธีตั้งค่าแอปนี้ในระบบของคุณ" 23 | }, 24 | "nplurals=1; plural=0;"); 25 | -------------------------------------------------------------------------------- /l10n/en_GB.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Scan Image", 3 | "Mode" : "Mode", 4 | "Color" : "Colour", 5 | "Greyscale" : "Greyscale", 6 | "Lineart" : "Lineart", 7 | "Resolution" : "Resolution", 8 | "Please adjust scan parameters" : "Please adjust scan parameters", 9 | "Scan Options" : "Scan Options", 10 | "Scan aborted." : "Scan aborted.", 11 | "Scan started." : "Scan started.", 12 | "Scan complete" : "Scan complete", 13 | "No" : "No", 14 | "Yes" : "Yes", 15 | "File already exists" : "File already exists", 16 | "Something went wrong while attempting to scan" : "Something went wrong while attempting to scan", 17 | "Success" : "Success", 18 | "Scanner" : "Scanner", 19 | "Scanner app for Nextcloud using the SANE framework" : "Scanner app for Nextcloud using the SANE framework", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." 21 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 22 | } -------------------------------------------------------------------------------- /l10n/he.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "סריקת תמונה", 5 | "Mode" : "מצב", 6 | "Color" : "צבע", 7 | "Greyscale" : "גווני אפור", 8 | "Lineart" : "אומנות בקווים", 9 | "Resolution" : "רזולוציה", 10 | "Please adjust scan parameters" : "נא להתאים את משתני הסריקה", 11 | "Scan Options" : "אפשרויות סריקה", 12 | "Scan aborted." : "הסריקה בוטלה.", 13 | "Scan started." : "הסריקה החלה.", 14 | "Scan complete" : "הסריקה הושלמה", 15 | "No" : "לא", 16 | "Yes" : "כן", 17 | "File already exists" : "הקובץ כבר קיים", 18 | "Something went wrong while attempting to scan" : "משהו השתבש במהלך ניסיון הסריקה", 19 | "Success" : "הצלחה", 20 | "Scanner" : "סורק", 21 | "Scanner app for Nextcloud using the SANE framework" : "יישומון ריקה ל־Nextcloud בעזרת תשתית SANE", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "היישומון מוסיף את האפשרות לקבל תמונות מסורק מחובר לרשת או מקומי. נדרשת תצורה עובדת של SANE וסורק נתמך. נא לעיין בקובץ הפירוט (README) על אופן הגדרת היישומון הזה במערכת שלך." 23 | }, 24 | "nplurals=3; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: 2;"); 25 | -------------------------------------------------------------------------------- /l10n/lv.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Skanēt Attēlu", 3 | "Mode" : "Režīms", 4 | "Color" : "Krāsa", 5 | "Greyscale" : "Pelēktoņu", 6 | "Lineart" : "Lineārs", 7 | "Resolution" : "Izšķirtspēja", 8 | "Please adjust scan parameters" : "Lūdzu pielāgojiet skanēšanas parametrus", 9 | "Scan Options" : "Skanēšanas Ozcijas", 10 | "Scan aborted." : "Skanēšana pārtraukta.", 11 | "Scan started." : "Skanēšana sākta.", 12 | "Scan complete" : "Skanēšana pabeigta.", 13 | "No" : "Nē", 14 | "Yes" : "Jā", 15 | "File already exists" : "Datne jau pastāv", 16 | "Something went wrong while attempting to scan" : "Skanēšanas laikā gadījusies kļūda", 17 | "Scanner" : "Skaners", 18 | "Scanner app for Nextcloud using the SANE framework" : "Nextcloud skanēšanas aplikācija, izmantojot SANE", 19 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Pievieno iespēju iegūt attēlus no tīkla vai vietēja skenera. Ir nepieciešams konfigurēts SANE un atbalstīts skeneris. Lūgums apskatīt \"readme\" datni, kā sitēmā uzstādīt šo lietotni." 20 | },"pluralForm" :"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);" 21 | } -------------------------------------------------------------------------------- /l10n/fa.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "اسکن تصویر", 5 | "Mode" : "حالت", 6 | "Color" : "رنگ", 7 | "Greyscale" : "Greyscale", 8 | "Lineart" : "خطی", 9 | "Resolution" : "وضوح", 10 | "Please adjust scan parameters" : "لطفا پارامترهای اسکن را تنظیم کنید", 11 | "Scan Options" : "گزینه های اسکن", 12 | "Scan aborted." : "اسکن متوقف شد", 13 | "Scan started." : "اسکن شروع شد", 14 | "Scan complete" : "اسکن کامل کردن", 15 | "No" : "نه", 16 | "Yes" : "بله", 17 | "File already exists" : "فایل از قبل موجود میباشد", 18 | "Something went wrong while attempting to scan" : "هنگام تلاش برای اسکن ، مشکلی پیش آمد", 19 | "Success" : "موفقیت", 20 | "Scanner" : "اسکنر", 21 | "Scanner app for Nextcloud using the SANE framework" : "برنامه اسکنر برای نکست کلود با استفاده از چارچوب SANE", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "توانایی به دست آوردن تصاویر را از یک اسکنر فعال شده در شبکه یا محلی افزودن. شما به یک تنظیمات SANE در حال کار و یک اسکنر پیکربندی نیاز دارید. لطفاً به خواندن روش تنظیم این برنامه در سیستم خود مراجعه کنید." 23 | }, 24 | "nplurals=2; plural=(n > 1);"); 25 | -------------------------------------------------------------------------------- /l10n/vi.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Quét hình ảnh", 3 | "Mode" : "Chế độ", 4 | "Color" : "Màu sắc", 5 | "Greyscale" : "Đen trắng", 6 | "Lineart" : "Đường kẻ", 7 | "Resolution" : "Độ phân giải", 8 | "Please adjust scan parameters" : "Vui lòng điều chỉnh tham số quét", 9 | "Scan Options" : "Tùy chọn quét", 10 | "Scan aborted." : "Đã hủy quét.", 11 | "Scan started." : "Đã bắt đầu quét.", 12 | "Scan complete" : "Quét hoàn tất", 13 | "No" : "Không", 14 | "Yes" : "Đồng ý", 15 | "File already exists" : "Tệp đã tồn tại", 16 | "Something went wrong while attempting to scan" : "Có gì đó xảy ra khi thử quét", 17 | "Success" : "Thành công", 18 | "Scanner" : "Máy quét", 19 | "Scanner app for Nextcloud using the SANE framework" : "Ứng dụng máy quét cho Nextcloud sử dụng framework SANE", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Thêm khả năng lấy hình ảnh từ một máy quét có mạng hoặc cục bộ. Bạn cần có một thiết lập SANE đang hoạt động và một máy quét được hỗ trợ. Vui lòng xem tệp readme để đọc cách thiết lập ứng dụng này trên hệ thống của bạn. " 21 | },"pluralForm" :"nplurals=1; plural=0;" 22 | } -------------------------------------------------------------------------------- /l10n/en_GB.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Scan Image", 5 | "Mode" : "Mode", 6 | "Color" : "Colour", 7 | "Greyscale" : "Greyscale", 8 | "Lineart" : "Lineart", 9 | "Resolution" : "Resolution", 10 | "Please adjust scan parameters" : "Please adjust scan parameters", 11 | "Scan Options" : "Scan Options", 12 | "Scan aborted." : "Scan aborted.", 13 | "Scan started." : "Scan started.", 14 | "Scan complete" : "Scan complete", 15 | "No" : "No", 16 | "Yes" : "Yes", 17 | "File already exists" : "File already exists", 18 | "Something went wrong while attempting to scan" : "Something went wrong while attempting to scan", 19 | "Success" : "Success", 20 | "Scanner" : "Scanner", 21 | "Scanner app for Nextcloud using the SANE framework" : "Scanner app for Nextcloud using the SANE framework", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." 23 | }, 24 | "nplurals=2; plural=(n != 1);"); 25 | -------------------------------------------------------------------------------- /l10n/lv.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Skanēt Attēlu", 5 | "Mode" : "Režīms", 6 | "Color" : "Krāsa", 7 | "Greyscale" : "Pelēktoņu", 8 | "Lineart" : "Lineārs", 9 | "Resolution" : "Izšķirtspēja", 10 | "Please adjust scan parameters" : "Lūdzu pielāgojiet skanēšanas parametrus", 11 | "Scan Options" : "Skanēšanas Ozcijas", 12 | "Scan aborted." : "Skanēšana pārtraukta.", 13 | "Scan started." : "Skanēšana sākta.", 14 | "Scan complete" : "Skanēšana pabeigta.", 15 | "No" : "Nē", 16 | "Yes" : "Jā", 17 | "File already exists" : "Datne jau pastāv", 18 | "Something went wrong while attempting to scan" : "Skanēšanas laikā gadījusies kļūda", 19 | "Scanner" : "Skaners", 20 | "Scanner app for Nextcloud using the SANE framework" : "Nextcloud skanēšanas aplikācija, izmantojot SANE", 21 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Pievieno iespēju iegūt attēlus no tīkla vai vietēja skenera. Ir nepieciešams konfigurēts SANE un atbalstīts skeneris. Lūgums apskatīt \"readme\" datni, kā sitēmā uzstādīt šo lietotni." 22 | }, 23 | "nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);"); 24 | -------------------------------------------------------------------------------- /l10n/ar.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "مسح الصورة", 3 | "Mode" : "الطراز", 4 | "Color" : "اللون", 5 | "Greyscale" : "تدرّج رمادي", 6 | "Lineart" : "الخط", 7 | "Resolution" : "التّباين", 8 | "Please adjust scan parameters" : "يرجى ضبط مُعامِلات المسح", 9 | "Scan Options" : "خيارات المسح", 10 | "Scan aborted." : "أجهض المسح.", 11 | "Scan started." : "بدء المسح.", 12 | "Scan complete" : "تم المسح", 13 | "No" : "لا", 14 | "Yes" : "نعم", 15 | "File already exists" : "الملف موجود مسبقاً", 16 | "Something went wrong while attempting to scan" : "حدث خطأ ما عند محاولة المسح", 17 | "Success" : "نجاح", 18 | "Scanner" : "الماسح", 19 | "Scanner app for Nextcloud using the SANE framework" : "تطبيق مسح ضوئي Scanner لنكست كلاود باستخدام إطار العمل SANE", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "يُمكّنك من الحصول على صور من ماسحة ضوئية محليّة أو شبكيّة؛ لكنه يستلزم تهيئة مُسبقة لـ SANE و ماسحة ضوئية مدعومة. رجاءً، أنظر ملف readme للمزيد حول كيفية إعداد هذا التطبيق على جهازك." 21 | },"pluralForm" :"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;" 22 | } -------------------------------------------------------------------------------- /l10n/ug.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "رەسىمنى سايىلەش", 3 | "Mode" : "Mode", 4 | "Color" : "رەڭ", 5 | "Greyscale" : "Greyscale", 6 | "Lineart" : "Lineart", 7 | "Resolution" : "قارار", 8 | "Please adjust scan parameters" : "سايىلەش پارامېتىرلىرىنى تەڭشەڭ", 9 | "Scan Options" : "سايىلەش تاللانمىلىرى", 10 | "Scan aborted." : "سايىلەش ئەمەلدىن قالدۇرۇلدى.", 11 | "Scan started." : "سايىلەش باشلاندى.", 12 | "Scan complete" : "سىكانىرلاش تاماملاندى", 13 | "No" : "No", 14 | "Yes" : "Yes", 15 | "File already exists" : "ھۆججەت مەۋجۇت", 16 | "Something went wrong while attempting to scan" : "سايىلىماقچى بولغاندا خاتالىق كۆرۈلدى", 17 | "Success" : "مۇۋەپپەقىيەت", 18 | "Scanner" : "سايىلىغۇچ", 19 | "Scanner app for Nextcloud using the SANE framework" : "SANE رامكىسىنى ئىشلىتىپ Nextcloud نىڭ سايىلىغۇچ دېتالى", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "تور قوزغىتىلغان ياكى يەرلىك سايىلىغۇچتىن رەسىمگە ئېرىشىش ئىقتىدارىنى قوشىدۇ. سىزگە ئىشلەيدىغان SANE سەپلىمىسى ۋە قوللايدىغان سايىلىغۇچ لازىم. بۇ ئەپنى سىستېمىڭىزدا قانداق تەڭشەش توغرىسىدىكى ئوقۇشلۇقنى كۆرۈڭ." 21 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 22 | } -------------------------------------------------------------------------------- /l10n/fi.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Skannaa kuva", 3 | "Mode" : "Tila", 4 | "Color" : "Väri", 5 | "Greyscale" : "Harmaasävy", 6 | "Lineart" : "Viivapiirros", 7 | "Resolution" : "Resoluutio", 8 | "Please adjust scan parameters" : "Säädä skannauksen parametrejä", 9 | "Scan Options" : "Skannausvalinnat", 10 | "Scan aborted." : "Skannaus peruttu.", 11 | "Scan started." : "Skannaus aloitettu.", 12 | "Scan complete" : "Skannaus valmistui", 13 | "No" : "Ei", 14 | "Yes" : "Kyllä", 15 | "File already exists" : "Tiedosto on jo olemassa", 16 | "Something went wrong while attempting to scan" : "Jokin meni vikaan skannausta yrittäessä", 17 | "Success" : "Onnistui", 18 | "Scanner" : "Skanneri", 19 | "Scanner app for Nextcloud using the SANE framework" : "Skannerisovellus Nextcloudille SANE-kehystä hyödyntäen", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Lisää toiminnon kuvien hankkimiseen paikallisilta tai verkkoon kytketyiltä skannereilta. Tarvitset toimivan SANE-määrityksen ja tuetun skannerin. Ohjeet sovelluksen asentamiseen järjestelmääsi löydät readmesta." 21 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 22 | } -------------------------------------------------------------------------------- /l10n/nl.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Afbeelding scannen", 3 | "Mode" : "Modus", 4 | "Color" : "Kleur", 5 | "Greyscale" : "Grijswaarden", 6 | "Lineart" : "Lijntekeningen", 7 | "Resolution" : "Resolutie", 8 | "Please adjust scan parameters" : "Verander de scan parametes", 9 | "Scan Options" : "Scan opties", 10 | "Scan aborted." : "Scan afgebroken.", 11 | "Scan started." : "Scan gestart.", 12 | "Scan complete" : "Scan gereed", 13 | "No" : "Nee", 14 | "Yes" : "Ja", 15 | "File already exists" : "Bestand bestaat al", 16 | "Something went wrong while attempting to scan" : "Er ging iets mis tijdens een poging om te scannen", 17 | "Success" : "Geslaagd", 18 | "Scanner" : "Scanner", 19 | "Scanner app for Nextcloud using the SANE framework" : "Scanner app voor NextCloud op basis van het SANE raamwerk", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Functionaliteit om afbeeldingen van een lokale of netwerkscanner toe te voegen. Er is een werkende SANE configuratie en ondersteunde scanner nodig. Lees de readme hoe de app geactiveerd moet worden op het systeem." 21 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 22 | } -------------------------------------------------------------------------------- /l10n/vi.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Quét hình ảnh", 5 | "Mode" : "Chế độ", 6 | "Color" : "Màu sắc", 7 | "Greyscale" : "Đen trắng", 8 | "Lineart" : "Đường kẻ", 9 | "Resolution" : "Độ phân giải", 10 | "Please adjust scan parameters" : "Vui lòng điều chỉnh tham số quét", 11 | "Scan Options" : "Tùy chọn quét", 12 | "Scan aborted." : "Đã hủy quét.", 13 | "Scan started." : "Đã bắt đầu quét.", 14 | "Scan complete" : "Quét hoàn tất", 15 | "No" : "Không", 16 | "Yes" : "Đồng ý", 17 | "File already exists" : "Tệp đã tồn tại", 18 | "Something went wrong while attempting to scan" : "Có gì đó xảy ra khi thử quét", 19 | "Success" : "Thành công", 20 | "Scanner" : "Máy quét", 21 | "Scanner app for Nextcloud using the SANE framework" : "Ứng dụng máy quét cho Nextcloud sử dụng framework SANE", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Thêm khả năng lấy hình ảnh từ một máy quét có mạng hoặc cục bộ. Bạn cần có một thiết lập SANE đang hoạt động và một máy quét được hỗ trợ. Vui lòng xem tệp readme để đọc cách thiết lập ứng dụng này trên hệ thống của bạn. " 23 | }, 24 | "nplurals=1; plural=0;"); 25 | -------------------------------------------------------------------------------- /l10n/da.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Skan billede", 3 | "Mode" : "Mode", 4 | "Color" : "Farve", 5 | "Greyscale" : "Gråtoner", 6 | "Lineart" : "Lineær", 7 | "Resolution" : "Opløsning", 8 | "Please adjust scan parameters" : "Juster venligst skan konfigurationer", 9 | "Scan Options" : "Skan indstillinger", 10 | "Scan aborted." : "Skanning afbrudt.", 11 | "Scan started." : "Skanning startet.", 12 | "Scan complete" : "Skanning fuldført", 13 | "No" : "Nej", 14 | "Yes" : "Ja", 15 | "File already exists" : "Fil findes allerede", 16 | "Something went wrong while attempting to scan" : "Der skete en fejl i forsøg på skanning", 17 | "Success" : "Succes", 18 | "Scanner" : "Skanner", 19 | "Scanner app for Nextcloud using the SANE framework" : "Skanner app for Nextcloud med brug af SANE konfiguration", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Tilføjer muligheden for at anskaffe billeder fra en netværk-tilsluttet eller lokal skanner. Du skal bruge en gyldig SANE konfiguration og en understyttet skanner. Se venligst manualen for opsætning af denne app på dit system." 21 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 22 | } -------------------------------------------------------------------------------- /l10n/ar.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "مسح الصورة", 5 | "Mode" : "الطراز", 6 | "Color" : "اللون", 7 | "Greyscale" : "تدرّج رمادي", 8 | "Lineart" : "الخط", 9 | "Resolution" : "التّباين", 10 | "Please adjust scan parameters" : "يرجى ضبط مُعامِلات المسح", 11 | "Scan Options" : "خيارات المسح", 12 | "Scan aborted." : "أجهض المسح.", 13 | "Scan started." : "بدء المسح.", 14 | "Scan complete" : "تم المسح", 15 | "No" : "لا", 16 | "Yes" : "نعم", 17 | "File already exists" : "الملف موجود مسبقاً", 18 | "Something went wrong while attempting to scan" : "حدث خطأ ما عند محاولة المسح", 19 | "Success" : "نجاح", 20 | "Scanner" : "الماسح", 21 | "Scanner app for Nextcloud using the SANE framework" : "تطبيق مسح ضوئي Scanner لنكست كلاود باستخدام إطار العمل SANE", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "يُمكّنك من الحصول على صور من ماسحة ضوئية محليّة أو شبكيّة؛ لكنه يستلزم تهيئة مُسبقة لـ SANE و ماسحة ضوئية مدعومة. رجاءً، أنظر ملف readme للمزيد حول كيفية إعداد هذا التطبيق على جهازك." 23 | }, 24 | "nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;"); 25 | -------------------------------------------------------------------------------- /l10n/ug.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "رەسىمنى سايىلەش", 5 | "Mode" : "Mode", 6 | "Color" : "رەڭ", 7 | "Greyscale" : "Greyscale", 8 | "Lineart" : "Lineart", 9 | "Resolution" : "قارار", 10 | "Please adjust scan parameters" : "سايىلەش پارامېتىرلىرىنى تەڭشەڭ", 11 | "Scan Options" : "سايىلەش تاللانمىلىرى", 12 | "Scan aborted." : "سايىلەش ئەمەلدىن قالدۇرۇلدى.", 13 | "Scan started." : "سايىلەش باشلاندى.", 14 | "Scan complete" : "سىكانىرلاش تاماملاندى", 15 | "No" : "No", 16 | "Yes" : "Yes", 17 | "File already exists" : "ھۆججەت مەۋجۇت", 18 | "Something went wrong while attempting to scan" : "سايىلىماقچى بولغاندا خاتالىق كۆرۈلدى", 19 | "Success" : "مۇۋەپپەقىيەت", 20 | "Scanner" : "سايىلىغۇچ", 21 | "Scanner app for Nextcloud using the SANE framework" : "SANE رامكىسىنى ئىشلىتىپ Nextcloud نىڭ سايىلىغۇچ دېتالى", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "تور قوزغىتىلغان ياكى يەرلىك سايىلىغۇچتىن رەسىمگە ئېرىشىش ئىقتىدارىنى قوشىدۇ. سىزگە ئىشلەيدىغان SANE سەپلىمىسى ۋە قوللايدىغان سايىلىغۇچ لازىم. بۇ ئەپنى سىستېمىڭىزدا قانداق تەڭشەش توغرىسىدىكى ئوقۇشلۇقنى كۆرۈڭ." 23 | }, 24 | "nplurals=2; plural=(n != 1);"); 25 | -------------------------------------------------------------------------------- /l10n/fi.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Skannaa kuva", 5 | "Mode" : "Tila", 6 | "Color" : "Väri", 7 | "Greyscale" : "Harmaasävy", 8 | "Lineart" : "Viivapiirros", 9 | "Resolution" : "Resoluutio", 10 | "Please adjust scan parameters" : "Säädä skannauksen parametrejä", 11 | "Scan Options" : "Skannausvalinnat", 12 | "Scan aborted." : "Skannaus peruttu.", 13 | "Scan started." : "Skannaus aloitettu.", 14 | "Scan complete" : "Skannaus valmistui", 15 | "No" : "Ei", 16 | "Yes" : "Kyllä", 17 | "File already exists" : "Tiedosto on jo olemassa", 18 | "Something went wrong while attempting to scan" : "Jokin meni vikaan skannausta yrittäessä", 19 | "Success" : "Onnistui", 20 | "Scanner" : "Skanneri", 21 | "Scanner app for Nextcloud using the SANE framework" : "Skannerisovellus Nextcloudille SANE-kehystä hyödyntäen", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Lisää toiminnon kuvien hankkimiseen paikallisilta tai verkkoon kytketyiltä skannereilta. Tarvitset toimivan SANE-määrityksen ja tuetun skannerin. Ohjeet sovelluksen asentamiseen järjestelmääsi löydät readmesta." 23 | }, 24 | "nplurals=2; plural=(n != 1);"); 25 | -------------------------------------------------------------------------------- /l10n/nl.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Afbeelding scannen", 5 | "Mode" : "Modus", 6 | "Color" : "Kleur", 7 | "Greyscale" : "Grijswaarden", 8 | "Lineart" : "Lijntekeningen", 9 | "Resolution" : "Resolutie", 10 | "Please adjust scan parameters" : "Verander de scan parametes", 11 | "Scan Options" : "Scan opties", 12 | "Scan aborted." : "Scan afgebroken.", 13 | "Scan started." : "Scan gestart.", 14 | "Scan complete" : "Scan gereed", 15 | "No" : "Nee", 16 | "Yes" : "Ja", 17 | "File already exists" : "Bestand bestaat al", 18 | "Something went wrong while attempting to scan" : "Er ging iets mis tijdens een poging om te scannen", 19 | "Success" : "Geslaagd", 20 | "Scanner" : "Scanner", 21 | "Scanner app for Nextcloud using the SANE framework" : "Scanner app voor NextCloud op basis van het SANE raamwerk", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Functionaliteit om afbeeldingen van een lokale of netwerkscanner toe te voegen. Er is een werkende SANE configuratie en ondersteunde scanner nodig. Lees de readme hoe de app geactiveerd moet worden op het systeem." 23 | }, 24 | "nplurals=2; plural=(n != 1);"); 25 | -------------------------------------------------------------------------------- /l10n/da.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Skan billede", 5 | "Mode" : "Mode", 6 | "Color" : "Farve", 7 | "Greyscale" : "Gråtoner", 8 | "Lineart" : "Lineær", 9 | "Resolution" : "Opløsning", 10 | "Please adjust scan parameters" : "Juster venligst skan konfigurationer", 11 | "Scan Options" : "Skan indstillinger", 12 | "Scan aborted." : "Skanning afbrudt.", 13 | "Scan started." : "Skanning startet.", 14 | "Scan complete" : "Skanning fuldført", 15 | "No" : "Nej", 16 | "Yes" : "Ja", 17 | "File already exists" : "Fil findes allerede", 18 | "Something went wrong while attempting to scan" : "Der skete en fejl i forsøg på skanning", 19 | "Success" : "Succes", 20 | "Scanner" : "Skanner", 21 | "Scanner app for Nextcloud using the SANE framework" : "Skanner app for Nextcloud med brug af SANE konfiguration", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Tilføjer muligheden for at anskaffe billeder fra en netværk-tilsluttet eller lokal skanner. Du skal bruge en gyldig SANE konfiguration og en understyttet skanner. Se venligst manualen for opsætning af denne app på dit system." 23 | }, 24 | "nplurals=2; plural=(n != 1);"); 25 | -------------------------------------------------------------------------------- /l10n/nb.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Skann bilde", 3 | "Mode" : "Modus", 4 | "Color" : "Farge", 5 | "Greyscale" : "Gråskala", 6 | "Lineart" : "Blyantkunst", 7 | "Resolution" : "Oppløsning", 8 | "Please adjust scan parameters" : "Vennligst juster skanneparametrene", 9 | "Scan Options" : "Alternativer for skanning", 10 | "Scan aborted." : "Skanning avbrutt.", 11 | "Scan started." : "Skanning startet.", 12 | "Scan complete" : "Skanning fullført", 13 | "No" : "Nei", 14 | "Yes" : "Ja", 15 | "File already exists" : "Filen finnes allerede", 16 | "Something went wrong while attempting to scan" : "Noe gikk galt under forsøket på å skanne", 17 | "Success" : "Vellykket", 18 | "Scanner" : "Skanner", 19 | "Scanner app for Nextcloud using the SANE framework" : "Skannerapp for Nextcloud ved hjelp av SANE-rammeverket", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Legger til muligheten til å hente bilder fra en nettverksaktivert eller lokal skanner. Du trenger en fungerende SANE-konfigurasjon og en støttet skanner. Vennligst se lesmeg om hvordan du konfigurerer denne appen på systemet ditt." 21 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 22 | } -------------------------------------------------------------------------------- /l10n/tr.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Görsel Tara", 3 | "Mode" : "Kip", 4 | "Color" : "Renk", 5 | "Greyscale" : "Gri tonlamalı", 6 | "Lineart" : "Tonlamasız çizim", 7 | "Resolution" : "Çözünürlük", 8 | "Please adjust scan parameters" : "Lütfen tarama ayarlarını yapın", 9 | "Scan Options" : "Tarama Ayarları", 10 | "Scan aborted." : "Tarama iptal edildi.", 11 | "Scan started." : "Tarama başlatıldı.", 12 | "Scan complete" : "Tarama tamamlandı", 13 | "No" : "Hayır", 14 | "Yes" : "Evet", 15 | "File already exists" : "Dosya zaten var", 16 | "Something went wrong while attempting to scan" : "Taranmaya çalışılırken bir şeyler ters gitti", 17 | "Success" : "Tamamlandı", 18 | "Scanner" : "Tarayıcı", 19 | "Scanner app for Nextcloud using the SANE framework" : "SANE çatısını kullanan tarayıcı uygulaması", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Ağa bağlı ya da yerel bir tarayıcıdan görselleri tarayabilme özelliğini ekler. Çalışan bir SANE yapılandırması ve desteklenen bir tarayıcı gereklidir. Bu uygulamanın sisteminize nasıl kurulacağı ile ilgili bilgi almak için readme dosyasına bakabilirsiniz." 21 | },"pluralForm" :"nplurals=2; plural=(n > 1);" 22 | } -------------------------------------------------------------------------------- /l10n/hu.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Kép szkennelése", 3 | "Mode" : "Mód", 4 | "Color" : "Színes", 5 | "Greyscale" : "Szürkeárnyalatos", 6 | "Lineart" : "Vonalábra", 7 | "Resolution" : "Felbontás", 8 | "Please adjust scan parameters" : "Módosítsa a szkennelési paramétereket", 9 | "Scan Options" : "Szkennelési beállítások", 10 | "Scan aborted." : "Szkennelés megszakítva.", 11 | "Scan started." : "Szkennelés elindítva.", 12 | "Scan complete" : "Szkennelés kész", 13 | "No" : "Nem", 14 | "Yes" : "Igen", 15 | "File already exists" : "A fájl már létezik", 16 | "Something went wrong while attempting to scan" : "Hiba történt a szkennelés kísérlete során", 17 | "Success" : "Sikerült", 18 | "Scanner" : "Szkenner", 19 | "Scanner app for Nextcloud using the SANE framework" : "Szkenner alkalmazás a Nextcloudhoz a SANE keretrendszer használatával", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Lehetővé teszi, hogy képeket olvasson be egy hálózati vagy helyi szkennerből. Egy működő SANE konfigurációra és egy támogatott nyomtatóra van szüksége. Olvassa el a leírást az alkalmazás beállításáról a rendszerén." 21 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 22 | } -------------------------------------------------------------------------------- /l10n/nb.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Skann bilde", 5 | "Mode" : "Modus", 6 | "Color" : "Farge", 7 | "Greyscale" : "Gråskala", 8 | "Lineart" : "Blyantkunst", 9 | "Resolution" : "Oppløsning", 10 | "Please adjust scan parameters" : "Vennligst juster skanneparametrene", 11 | "Scan Options" : "Alternativer for skanning", 12 | "Scan aborted." : "Skanning avbrutt.", 13 | "Scan started." : "Skanning startet.", 14 | "Scan complete" : "Skanning fullført", 15 | "No" : "Nei", 16 | "Yes" : "Ja", 17 | "File already exists" : "Filen finnes allerede", 18 | "Something went wrong while attempting to scan" : "Noe gikk galt under forsøket på å skanne", 19 | "Success" : "Vellykket", 20 | "Scanner" : "Skanner", 21 | "Scanner app for Nextcloud using the SANE framework" : "Skannerapp for Nextcloud ved hjelp av SANE-rammeverket", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Legger til muligheten til å hente bilder fra en nettverksaktivert eller lokal skanner. Du trenger en fungerende SANE-konfigurasjon og en støttet skanner. Vennligst se lesmeg om hvordan du konfigurerer denne appen på systemet ditt." 23 | }, 24 | "nplurals=2; plural=(n != 1);"); 25 | -------------------------------------------------------------------------------- /l10n/pt_PT.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Digitalizar Imagem", 3 | "Color" : "Cor", 4 | "Please adjust scan parameters" : "Por favor, ajuste os parâmetros da digitalização", 5 | "Scan Options" : "Opções de Digitalização", 6 | "Scan aborted." : "Digitalização abortada.", 7 | "Scan started." : "Digitalização iniciada.", 8 | "Scan complete" : "Digitalização concluída", 9 | "No" : "Não", 10 | "Yes" : "Sim", 11 | "File already exists" : "O ficheiro já existe", 12 | "Something went wrong while attempting to scan" : "Ocorreu algo de errado quando tentava digitalizar", 13 | "Success" : "Sucesso", 14 | "Scanner" : "Digitalizador", 15 | "Scanner app for Nextcloud using the SANE framework" : "Aplicação de digitalização para NEXTCLOUD que utiliza a estrutura SANE", 16 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Adiciona a possibilidade de digitalizar imagens de um digitalizador local ou com endereço de rede. Precisa de uma configuração SANE funcional e um digitalizador suportado. Por favor, consulte o ficheiro README para saber como configurar esta aplicação no seu sistema." 17 | },"pluralForm" :"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 18 | } -------------------------------------------------------------------------------- /l10n/bg.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Сканиране на изображение", 3 | "Mode" : "Режим", 4 | "Color" : "Цвят", 5 | "Greyscale" : "Сива скала", 6 | "Lineart" : "Чисто черно-бяло", 7 | "Resolution" : "Резолюция", 8 | "Please adjust scan parameters" : "Моля, коригирайте параметрите на сканиране", 9 | "Scan Options" : "Опции за сканиране", 10 | "Scan aborted." : "Сканирането е прекратено.", 11 | "Scan started." : "Сканирането започна.", 12 | "Scan complete" : "Сканирането завърши", 13 | "No" : "Не", 14 | "Yes" : "Да", 15 | "File already exists" : "Файлът вече съществува", 16 | "Something went wrong while attempting to scan" : "Нещо се обърка при опит за сканиране", 17 | "Success" : "Успех", 18 | "Scanner" : "Скенер", 19 | "Scanner app for Nextcloud using the SANE framework" : "Скенер приложение за Nextcloud, използващо рамка SANE", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Добавя възможност за получаване на изображения от мрежов или локален скенер. Имате нужда от работеща SANE конфигурация и поддържан скенер. Моля, вижте readme/прочети ме/ за това как да настроите това приложение на вашата система." 21 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 22 | } -------------------------------------------------------------------------------- /l10n/el.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Σάρωση εικόνας", 3 | "Mode" : "Κατάσταση", 4 | "Color" : "Χρώμα", 5 | "Greyscale" : "Ασπρόμαυρο", 6 | "Lineart" : "Σκίτσο", 7 | "Resolution" : "Ανάλυση", 8 | "Please adjust scan parameters" : "Παρακαλούμε προσαρμόστε τις ρυθμίσεις σάρωσης", 9 | "Scan Options" : "Ρυθμίσεις σάρωσης", 10 | "Scan aborted." : "Η σάρωση ακυρώθηκε.", 11 | "Scan started." : "Η σάρωση ξεκίνησε.", 12 | "Scan complete" : "Η σάρωση ολοκληρώθηκε", 13 | "No" : "Όχι", 14 | "Yes" : "Ναι", 15 | "File already exists" : "Το αρχείο υπάρχει ήδη", 16 | "Something went wrong while attempting to scan" : "Κάτι πήγε στραβά κατά την προσπάθεια σάρωσης", 17 | "Success" : "Επιτυχία", 18 | "Scanner" : "Σαρωτής", 19 | "Scanner app for Nextcloud using the SANE framework" : "Εφαρμογή Σαρωτή για το Nextcloud με χρήση του SANE", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Προσθέτει την δυνατότητα να συλλέγει εικόνες από έναν δικτυακό ή τοπικό σαρωτή. Χρειάζεστε μια λειτουργική σύνθεση SANE και έναν υποστηριζόμενο σαρωτή. Παρακαλώ δείτε την τεκμηρίωση για το πως θα εγκαταστήσετε την εφαρμογή αυτή στο σύστημά σας." 21 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 22 | } -------------------------------------------------------------------------------- /l10n/de.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Bild scannen", 3 | "Mode" : "Modus", 4 | "Color" : "Farbe", 5 | "Greyscale" : "Graustufen", 6 | "Lineart" : "Linienart", 7 | "Resolution" : "Auflösung", 8 | "Please adjust scan parameters" : "Bitte die Scan-Parameter anpassen", 9 | "Scan Options" : "Scan-Optionen", 10 | "Scan aborted." : "Scan abgebrochen.", 11 | "Scan started." : "Scan gestartet.", 12 | "Scan complete" : "Scan abgeschlossen", 13 | "No" : "Nein", 14 | "Yes" : "Ja", 15 | "File already exists" : "Datei bereits vorhanden", 16 | "Something went wrong while attempting to scan" : "Beim Versuch, einen Scan durchzuführen, ist etwas schief gelaufen", 17 | "Success" : "Erfolgreich", 18 | "Scanner" : "Scanner", 19 | "Scanner app for Nextcloud using the SANE framework" : "Scanner-App für Nextcloud verwendet das SANE-Framework", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Bietet die Möglichkeit, Bilder von einem netzwerkfähigen oder lokalen Scanner zu erfassen. Du benötigst eine funktionierende SANE-Konfiguration und einen unterstützten Scanner. Bitte das Readme lesen, wie du diese App auf deinem System einrichtest." 21 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 22 | } -------------------------------------------------------------------------------- /l10n/es.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Escanear imagen", 3 | "Mode" : "Modo", 4 | "Color" : "Color", 5 | "Greyscale" : "Escala de grises", 6 | "Lineart" : "Arte lineal", 7 | "Resolution" : "Resolución", 8 | "Please adjust scan parameters" : "Por favor, ajusta los parámetros del escáner", 9 | "Scan Options" : "Opciones de escaneado", 10 | "Scan aborted." : "Escáner cancelado.", 11 | "Scan started." : "Escáner iniciado.", 12 | "Scan complete" : "Escáner completado.", 13 | "No" : "No", 14 | "Yes" : "Sí", 15 | "File already exists" : "El archivo ya existe", 16 | "Something went wrong while attempting to scan" : "Algo ha ido mal al intentar escanear", 17 | "Success" : "Éxito", 18 | "Scanner" : "Escáner", 19 | "Scanner app for Nextcloud using the SANE framework" : "App de escáner para Nextcloud usando la infraestructura SANE", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Añade la capacidad de adquirir imágenes desde un escáner local o en red. Necesitas un escáner soportado y una buena configuración de SANE. Por favor, mira el readme sobre cómo configurar esta app en tu sistema." 21 | },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 22 | } -------------------------------------------------------------------------------- /l10n/eu.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Eskaneatu irudia", 3 | "Mode" : "Modua", 4 | "Color" : "Kolorea", 5 | "Greyscale" : "Grisa eskala", 6 | "Lineart" : "Lineart", 7 | "Resolution" : "Bereizmena", 8 | "Please adjust scan parameters" : "Mesedez, egokitu eskaneatze parametroak", 9 | "Scan Options" : "Eskanerarren aukerak", 10 | "Scan aborted." : "Eskaneatzea bertan behera utzita.", 11 | "Scan started." : "Eskaneatzen hasi da.", 12 | "Scan complete" : "Eskaneatzea burututa", 13 | "No" : "Ez", 14 | "Yes" : "Bai", 15 | "File already exists" : "Badago fitxategia dagoeneko", 16 | "Something went wrong while attempting to scan" : "Zerbait gaizki joan zen eskaneatzen saiatzean", 17 | "Success" : "Arrakasta", 18 | "Scanner" : "Eskanerra", 19 | "Scanner app for Nextcloud using the SANE framework" : "Nextcloud eskaner aplikazioa SANE markoa erabiliz", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Sarean gaitutako edo eskaner lokal bateko irudiak eskuratzeko gaitasuna gehitzen du. Lanean dabilen SANE konfigurazioa eta onartzen duen eskanerra behar dituzu. Ikusi IrakHau aplikazio hau zure sisteman nola konfiguratzeko." 21 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 22 | } -------------------------------------------------------------------------------- /l10n/sr.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Скенирај слику", 3 | "Mode" : "Режим", 4 | "Color" : "Боја", 5 | "Greyscale" : "Нијансе сиве", 6 | "Lineart" : "Цртеж", 7 | "Resolution" : "Резолуција", 8 | "Please adjust scan parameters" : "Подесите параметре скенирања", 9 | "Scan Options" : "Опције скенирања", 10 | "Scan aborted." : "Скенирање прекинуто.", 11 | "Scan started." : "Скенирање започето.", 12 | "Scan complete" : "Скенирање готово", 13 | "No" : "Не", 14 | "Yes" : "Да", 15 | "File already exists" : "Фајл већ постоји", 16 | "Something went wrong while attempting to scan" : "Нешто је пошло наопако при покушају скенирања", 17 | "Success" : "Успешно", 18 | "Scanner" : "Скенер", 19 | "Scanner app for Nextcloud using the SANE framework" : "Скенер апликација за Некстклауд користећи „SANE“ радни оквир", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Додаје могућност скенирања слика са мрежног или локалног скенера. Потребна вам је исправна „SANE“ поставка и подржани скенер. Погледајте „readme“ фајл како да подесите ову апликацију на вашем систему." 21 | },"pluralForm" :"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);" 22 | } -------------------------------------------------------------------------------- /l10n/tr.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Görsel Tara", 5 | "Mode" : "Kip", 6 | "Color" : "Renk", 7 | "Greyscale" : "Gri tonlamalı", 8 | "Lineart" : "Tonlamasız çizim", 9 | "Resolution" : "Çözünürlük", 10 | "Please adjust scan parameters" : "Lütfen tarama ayarlarını yapın", 11 | "Scan Options" : "Tarama Ayarları", 12 | "Scan aborted." : "Tarama iptal edildi.", 13 | "Scan started." : "Tarama başlatıldı.", 14 | "Scan complete" : "Tarama tamamlandı", 15 | "No" : "Hayır", 16 | "Yes" : "Evet", 17 | "File already exists" : "Dosya zaten var", 18 | "Something went wrong while attempting to scan" : "Taranmaya çalışılırken bir şeyler ters gitti", 19 | "Success" : "Tamamlandı", 20 | "Scanner" : "Tarayıcı", 21 | "Scanner app for Nextcloud using the SANE framework" : "SANE çatısını kullanan tarayıcı uygulaması", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Ağa bağlı ya da yerel bir tarayıcıdan görselleri tarayabilme özelliğini ekler. Çalışan bir SANE yapılandırması ve desteklenen bir tarayıcı gereklidir. Bu uygulamanın sisteminize nasıl kurulacağı ile ilgili bilgi almak için readme dosyasına bakabilirsiniz." 23 | }, 24 | "nplurals=2; plural=(n > 1);"); 25 | -------------------------------------------------------------------------------- /l10n/de_DE.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Bild scannen", 3 | "Mode" : "Modus", 4 | "Color" : "Farbe", 5 | "Greyscale" : "Graustufen", 6 | "Lineart" : "Linienart", 7 | "Resolution" : "Auflösung", 8 | "Please adjust scan parameters" : "Bitte die Scan-Parameter anpassen", 9 | "Scan Options" : "Scan-Optionen", 10 | "Scan aborted." : "Scan abgebrochen.", 11 | "Scan started." : "Scan gestartet.", 12 | "Scan complete" : "Scan abgeschlossen", 13 | "No" : "Nein", 14 | "Yes" : "Ja", 15 | "File already exists" : "Datei bereits vorhanden", 16 | "Something went wrong while attempting to scan" : "Beim Versuch, einen Scan durchzuführen, ist etwas schief gelaufen", 17 | "Success" : "Erfolgreich", 18 | "Scanner" : "Scanner", 19 | "Scanner app for Nextcloud using the SANE framework" : "Scanner-App für Nextcloud verwendet das SANE-Framework", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Bietet die Möglichkeit, Bilder von einem netzwerkfähigen oder lokalen Scanner zu erfassen. Sie benötigen eine funktionierende SANE-Konfiguration und einen unterstützten Scanner. Bitte das Readme lesen, wie Sie diese App auf Ihrem System einrichten." 21 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 22 | } -------------------------------------------------------------------------------- /l10n/hu.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Kép szkennelése", 5 | "Mode" : "Mód", 6 | "Color" : "Színes", 7 | "Greyscale" : "Szürkeárnyalatos", 8 | "Lineart" : "Vonalábra", 9 | "Resolution" : "Felbontás", 10 | "Please adjust scan parameters" : "Módosítsa a szkennelési paramétereket", 11 | "Scan Options" : "Szkennelési beállítások", 12 | "Scan aborted." : "Szkennelés megszakítva.", 13 | "Scan started." : "Szkennelés elindítva.", 14 | "Scan complete" : "Szkennelés kész", 15 | "No" : "Nem", 16 | "Yes" : "Igen", 17 | "File already exists" : "A fájl már létezik", 18 | "Something went wrong while attempting to scan" : "Hiba történt a szkennelés kísérlete során", 19 | "Success" : "Sikerült", 20 | "Scanner" : "Szkenner", 21 | "Scanner app for Nextcloud using the SANE framework" : "Szkenner alkalmazás a Nextcloudhoz a SANE keretrendszer használatával", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Lehetővé teszi, hogy képeket olvasson be egy hálózati vagy helyi szkennerből. Egy működő SANE konfigurációra és egy támogatott nyomtatóra van szüksége. Olvassa el a leírást az alkalmazás beállításáról a rendszerén." 23 | }, 24 | "nplurals=2; plural=(n != 1);"); 25 | -------------------------------------------------------------------------------- /l10n/pt_PT.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Digitalizar Imagem", 5 | "Color" : "Cor", 6 | "Please adjust scan parameters" : "Por favor, ajuste os parâmetros da digitalização", 7 | "Scan Options" : "Opções de Digitalização", 8 | "Scan aborted." : "Digitalização abortada.", 9 | "Scan started." : "Digitalização iniciada.", 10 | "Scan complete" : "Digitalização concluída", 11 | "No" : "Não", 12 | "Yes" : "Sim", 13 | "File already exists" : "O ficheiro já existe", 14 | "Something went wrong while attempting to scan" : "Ocorreu algo de errado quando tentava digitalizar", 15 | "Success" : "Sucesso", 16 | "Scanner" : "Digitalizador", 17 | "Scanner app for Nextcloud using the SANE framework" : "Aplicação de digitalização para NEXTCLOUD que utiliza a estrutura SANE", 18 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Adiciona a possibilidade de digitalizar imagens de um digitalizador local ou com endereço de rede. Precisa de uma configuração SANE funcional e um digitalizador suportado. Por favor, consulte o ficheiro README para saber como configurar esta aplicação no seu sistema." 19 | }, 20 | "nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 21 | -------------------------------------------------------------------------------- /l10n/bg.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Сканиране на изображение", 5 | "Mode" : "Режим", 6 | "Color" : "Цвят", 7 | "Greyscale" : "Сива скала", 8 | "Lineart" : "Чисто черно-бяло", 9 | "Resolution" : "Резолюция", 10 | "Please adjust scan parameters" : "Моля, коригирайте параметрите на сканиране", 11 | "Scan Options" : "Опции за сканиране", 12 | "Scan aborted." : "Сканирането е прекратено.", 13 | "Scan started." : "Сканирането започна.", 14 | "Scan complete" : "Сканирането завърши", 15 | "No" : "Не", 16 | "Yes" : "Да", 17 | "File already exists" : "Файлът вече съществува", 18 | "Something went wrong while attempting to scan" : "Нещо се обърка при опит за сканиране", 19 | "Success" : "Успех", 20 | "Scanner" : "Скенер", 21 | "Scanner app for Nextcloud using the SANE framework" : "Скенер приложение за Nextcloud, използващо рамка SANE", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Добавя възможност за получаване на изображения от мрежов или локален скенер. Имате нужда от работеща SANE конфигурация и поддържан скенер. Моля, вижте readme/прочети ме/ за това как да настроите това приложение на вашата система." 23 | }, 24 | "nplurals=2; plural=(n != 1);"); 25 | -------------------------------------------------------------------------------- /l10n/el.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Σάρωση εικόνας", 5 | "Mode" : "Κατάσταση", 6 | "Color" : "Χρώμα", 7 | "Greyscale" : "Ασπρόμαυρο", 8 | "Lineart" : "Σκίτσο", 9 | "Resolution" : "Ανάλυση", 10 | "Please adjust scan parameters" : "Παρακαλούμε προσαρμόστε τις ρυθμίσεις σάρωσης", 11 | "Scan Options" : "Ρυθμίσεις σάρωσης", 12 | "Scan aborted." : "Η σάρωση ακυρώθηκε.", 13 | "Scan started." : "Η σάρωση ξεκίνησε.", 14 | "Scan complete" : "Η σάρωση ολοκληρώθηκε", 15 | "No" : "Όχι", 16 | "Yes" : "Ναι", 17 | "File already exists" : "Το αρχείο υπάρχει ήδη", 18 | "Something went wrong while attempting to scan" : "Κάτι πήγε στραβά κατά την προσπάθεια σάρωσης", 19 | "Success" : "Επιτυχία", 20 | "Scanner" : "Σαρωτής", 21 | "Scanner app for Nextcloud using the SANE framework" : "Εφαρμογή Σαρωτή για το Nextcloud με χρήση του SANE", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Προσθέτει την δυνατότητα να συλλέγει εικόνες από έναν δικτυακό ή τοπικό σαρωτή. Χρειάζεστε μια λειτουργική σύνθεση SANE και έναν υποστηριζόμενο σαρωτή. Παρακαλώ δείτε την τεκμηρίωση για το πως θα εγκαταστήσετε την εφαρμογή αυτή στο σύστημά σας." 23 | }, 24 | "nplurals=2; plural=(n != 1);"); 25 | -------------------------------------------------------------------------------- /l10n/ga.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Scan Íomhá", 3 | "Mode" : "Mód", 4 | "Color" : "Dath", 5 | "Greyscale" : "Scála Liath", 6 | "Lineart" : "Líneart", 7 | "Resolution" : "Rún", 8 | "Please adjust scan parameters" : "Le do thoil a choigeartú paraiméadair scanadh", 9 | "Scan Options" : "Roghanna Scan", 10 | "Scan aborted." : "Cuireadh deireadh leis an scanadh.", 11 | "Scan started." : "Thosaigh an scanadh.", 12 | "Scan complete" : "Scanadh críochnaithe", 13 | "No" : "Níl", 14 | "Yes" : "Tá", 15 | "File already exists" : "Tá an comhad ann cheana féin", 16 | "Something went wrong while attempting to scan" : "Tharla earráid agus iarracht á déanamh scanadh", 17 | "Success" : "Rath", 18 | "Scanner" : "Scanóir", 19 | "Scanner app for Nextcloud using the SANE framework" : "Aip scanóir do Nextcloud ag baint úsáide as an gcreat SANE", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Cuireann sé leis an gcumas íomhánna a fháil ó scanóir líonra-chumasaithe nó áitiúil. Teastaíonn cumraíocht SANE oibre agus scanóir tacaithe uait. Féach ar an readme maidir le conas an aip seo a shocrú ar do chóras." 21 | },"pluralForm" :"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);" 22 | } -------------------------------------------------------------------------------- /l10n/pt_BR.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Escanear Imagem", 3 | "Mode" : "Modo", 4 | "Color" : "Cor", 5 | "Greyscale" : "Escala de cinza", 6 | "Lineart" : "Lineart", 7 | "Resolution" : "Resolução", 8 | "Please adjust scan parameters" : "Ajuste os parâmetros de escaneamento", 9 | "Scan Options" : "Opções de Escaneamento", 10 | "Scan aborted." : "Escaneamento abortado.", 11 | "Scan started." : "Escaneamento iniciado.", 12 | "Scan complete" : "Escaneamento completo", 13 | "No" : "Não", 14 | "Yes" : "Sim", 15 | "File already exists" : "Arquivo já existe", 16 | "Something went wrong while attempting to scan" : "Algo deu errado ao tentar escanear", 17 | "Success" : "Sucesso", 18 | "Scanner" : "Escaneador", 19 | "Scanner app for Nextcloud using the SANE framework" : "Aplicativo de escaneamento para o Nextcloud usando o framework SANE", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Adiciona a capacidade de adquirir imagens de um scanner local ou em rede. Você precisa de uma configuração SANE funcional e um scanner suportado. Leia o readme sobre como configurar este aplicativo." 21 | },"pluralForm" :"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 22 | } -------------------------------------------------------------------------------- /l10n/ro.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Scanează Imagine", 3 | "Mode" : "Mod", 4 | "Color" : "Culoare", 5 | "Greyscale" : "Nuanțe de gri", 6 | "Lineart" : "Linii de artă", 7 | "Resolution" : "Rezoluție", 8 | "Please adjust scan parameters" : "Te rog ajustează parametrii de scanare", 9 | "Scan Options" : "Opțiuni Scanare", 10 | "Scan aborted." : "Scanare întreruptă.", 11 | "Scan started." : "Scanare pornită.", 12 | "Scan complete" : "Scanare completă", 13 | "No" : "Nu", 14 | "Yes" : "a", 15 | "File already exists" : "Fișierul există deja", 16 | "Something went wrong while attempting to scan" : "Ceva n-a mers bine când am încercat să scanez", 17 | "Success" : "Succes", 18 | "Scanner" : "Scanner", 19 | "Scanner app for Nextcloud using the SANE framework" : "Aplicație Scanner pentru Nextcloud folosind structura SANE", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Adaugă abilitatea obținerii de imagini din scannere locale sau din rețea. Ai nevoie de o configurație funcțională SANE si un scanner suportat. Te rog să citesti manualul pentru configurarea acestei aplicații pe sistemul tău." 21 | },"pluralForm" :"nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));" 22 | } -------------------------------------------------------------------------------- /l10n/de.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Bild scannen", 5 | "Mode" : "Modus", 6 | "Color" : "Farbe", 7 | "Greyscale" : "Graustufen", 8 | "Lineart" : "Linienart", 9 | "Resolution" : "Auflösung", 10 | "Please adjust scan parameters" : "Bitte die Scan-Parameter anpassen", 11 | "Scan Options" : "Scan-Optionen", 12 | "Scan aborted." : "Scan abgebrochen.", 13 | "Scan started." : "Scan gestartet.", 14 | "Scan complete" : "Scan abgeschlossen", 15 | "No" : "Nein", 16 | "Yes" : "Ja", 17 | "File already exists" : "Datei bereits vorhanden", 18 | "Something went wrong while attempting to scan" : "Beim Versuch, einen Scan durchzuführen, ist etwas schief gelaufen", 19 | "Success" : "Erfolgreich", 20 | "Scanner" : "Scanner", 21 | "Scanner app for Nextcloud using the SANE framework" : "Scanner-App für Nextcloud verwendet das SANE-Framework", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Bietet die Möglichkeit, Bilder von einem netzwerkfähigen oder lokalen Scanner zu erfassen. Du benötigst eine funktionierende SANE-Konfiguration und einen unterstützten Scanner. Bitte das Readme lesen, wie du diese App auf deinem System einrichtest." 23 | }, 24 | "nplurals=2; plural=(n != 1);"); 25 | -------------------------------------------------------------------------------- /l10n/es.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Escanear imagen", 5 | "Mode" : "Modo", 6 | "Color" : "Color", 7 | "Greyscale" : "Escala de grises", 8 | "Lineart" : "Arte lineal", 9 | "Resolution" : "Resolución", 10 | "Please adjust scan parameters" : "Por favor, ajusta los parámetros del escáner", 11 | "Scan Options" : "Opciones de escaneado", 12 | "Scan aborted." : "Escáner cancelado.", 13 | "Scan started." : "Escáner iniciado.", 14 | "Scan complete" : "Escáner completado.", 15 | "No" : "No", 16 | "Yes" : "Sí", 17 | "File already exists" : "El archivo ya existe", 18 | "Something went wrong while attempting to scan" : "Algo ha ido mal al intentar escanear", 19 | "Success" : "Éxito", 20 | "Scanner" : "Escáner", 21 | "Scanner app for Nextcloud using the SANE framework" : "App de escáner para Nextcloud usando la infraestructura SANE", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Añade la capacidad de adquirir imágenes desde un escáner local o en red. Necesitas un escáner soportado y una buena configuración de SANE. Por favor, mira el readme sobre cómo configurar esta app en tu sistema." 23 | }, 24 | "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 25 | -------------------------------------------------------------------------------- /l10n/eu.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Eskaneatu irudia", 5 | "Mode" : "Modua", 6 | "Color" : "Kolorea", 7 | "Greyscale" : "Grisa eskala", 8 | "Lineart" : "Lineart", 9 | "Resolution" : "Bereizmena", 10 | "Please adjust scan parameters" : "Mesedez, egokitu eskaneatze parametroak", 11 | "Scan Options" : "Eskanerarren aukerak", 12 | "Scan aborted." : "Eskaneatzea bertan behera utzita.", 13 | "Scan started." : "Eskaneatzen hasi da.", 14 | "Scan complete" : "Eskaneatzea burututa", 15 | "No" : "Ez", 16 | "Yes" : "Bai", 17 | "File already exists" : "Badago fitxategia dagoeneko", 18 | "Something went wrong while attempting to scan" : "Zerbait gaizki joan zen eskaneatzen saiatzean", 19 | "Success" : "Arrakasta", 20 | "Scanner" : "Eskanerra", 21 | "Scanner app for Nextcloud using the SANE framework" : "Nextcloud eskaner aplikazioa SANE markoa erabiliz", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Sarean gaitutako edo eskaner lokal bateko irudiak eskuratzeko gaitasuna gehitzen du. Lanean dabilen SANE konfigurazioa eta onartzen duen eskanerra behar dituzu. Ikusi IrakHau aplikazio hau zure sisteman nola konfiguratzeko." 23 | }, 24 | "nplurals=2; plural=(n != 1);"); 25 | -------------------------------------------------------------------------------- /l10n/gl.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Escanear imaxe", 3 | "Mode" : "Modo", 4 | "Color" : "Cor", 5 | "Greyscale" : "Escala de grises", 6 | "Lineart" : "Arte lineal", 7 | "Resolution" : "Resolución", 8 | "Please adjust scan parameters" : "Axuste os parámetros de escaneamento", 9 | "Scan Options" : "Opcións de escaneamento", 10 | "Scan aborted." : "Interrompeuse o escaneamento.", 11 | "Scan started." : "Comezou o escaneamento.", 12 | "Scan complete" : "Completouse o escaneamento.", 13 | "No" : "Non", 14 | "Yes" : "Si", 15 | "File already exists" : "O ficheiro xa existe", 16 | "Something went wrong while attempting to scan" : "Algo foi mal tentando escanear", 17 | "Success" : "Correcto", 18 | "Scanner" : "Escáner", 19 | "Scanner app for Nextcloud using the SANE framework" : "Aplicación de escaneamento para Nextcloud empregando o marco de traballo do SANE", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Engade a posibilidade de obter imaxes desde un escáner activado na rede ou en local. Necesita unha configuración SANE funcional e un escáner compatíbel. Consulte o ficheiro «léeme» sobre como configurar esta aplicación no seu sistema." 21 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 22 | } -------------------------------------------------------------------------------- /l10n/sr.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Скенирај слику", 5 | "Mode" : "Режим", 6 | "Color" : "Боја", 7 | "Greyscale" : "Нијансе сиве", 8 | "Lineart" : "Цртеж", 9 | "Resolution" : "Резолуција", 10 | "Please adjust scan parameters" : "Подесите параметре скенирања", 11 | "Scan Options" : "Опције скенирања", 12 | "Scan aborted." : "Скенирање прекинуто.", 13 | "Scan started." : "Скенирање започето.", 14 | "Scan complete" : "Скенирање готово", 15 | "No" : "Не", 16 | "Yes" : "Да", 17 | "File already exists" : "Фајл већ постоји", 18 | "Something went wrong while attempting to scan" : "Нешто је пошло наопако при покушају скенирања", 19 | "Success" : "Успешно", 20 | "Scanner" : "Скенер", 21 | "Scanner app for Nextcloud using the SANE framework" : "Скенер апликација за Некстклауд користећи „SANE“ радни оквир", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Додаје могућност скенирања слика са мрежног или локалног скенера. Потребна вам је исправна „SANE“ поставка и подржани скенер. Погледајте „readme“ фајл како да подесите ову апликацију на вашем систему." 23 | }, 24 | "nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"); 25 | -------------------------------------------------------------------------------- /l10n/de_DE.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Bild scannen", 5 | "Mode" : "Modus", 6 | "Color" : "Farbe", 7 | "Greyscale" : "Graustufen", 8 | "Lineart" : "Linienart", 9 | "Resolution" : "Auflösung", 10 | "Please adjust scan parameters" : "Bitte die Scan-Parameter anpassen", 11 | "Scan Options" : "Scan-Optionen", 12 | "Scan aborted." : "Scan abgebrochen.", 13 | "Scan started." : "Scan gestartet.", 14 | "Scan complete" : "Scan abgeschlossen", 15 | "No" : "Nein", 16 | "Yes" : "Ja", 17 | "File already exists" : "Datei bereits vorhanden", 18 | "Something went wrong while attempting to scan" : "Beim Versuch, einen Scan durchzuführen, ist etwas schief gelaufen", 19 | "Success" : "Erfolgreich", 20 | "Scanner" : "Scanner", 21 | "Scanner app for Nextcloud using the SANE framework" : "Scanner-App für Nextcloud verwendet das SANE-Framework", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Bietet die Möglichkeit, Bilder von einem netzwerkfähigen oder lokalen Scanner zu erfassen. Sie benötigen eine funktionierende SANE-Konfiguration und einen unterstützten Scanner. Bitte das Readme lesen, wie Sie diese App auf Ihrem System einrichten." 23 | }, 24 | "nplurals=2; plural=(n != 1);"); 25 | -------------------------------------------------------------------------------- /l10n/sw.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Changanua picha", 3 | "Mode" : "Hali", 4 | "Color" : "Rangi", 5 | "Greyscale" : "Greyscale", 6 | "Lineart" : "Lineart", 7 | "Resolution" : "Azimio", 8 | "Please adjust scan parameters" : "Tafadhali rekebisha vigezo vya kuchanganua", 9 | "Scan Options" : "Chaguzi za Kuchanganua", 10 | "Scan aborted." : "Uchanganuzi umesitishwa.", 11 | "Scan started." : "Uchanganuzi umeanza.", 12 | "Scan complete" : "Uchanganuzi umekamilika", 13 | "No" : "Hapana", 14 | "Yes" : "Ndiyo", 15 | "File already exists" : "Faili lipo tayari", 16 | "Something went wrong while attempting to scan" : "Kuna tatizo lililotokea wakati wa kujaribu kuchanganua", 17 | "Success" : "Mafanikio", 18 | "Scanner" : "Kichanganuzi", 19 | "Scanner app for Nextcloud using the SANE framework" : "Programu ya Kichanganuzi cha Nextcloud inayotumia mfumo wa SANE", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Inaongeza uwezo wa kupata picha kutoka kwa kichanganuzi kilichowezeshwa na mtandao au cha ndani. Unahitaji usanidi wa SANE unaofanya kazi na kichanganuzi kinachotumika. Tafadhali tazama somo la jinsi ya kusanidi programu hii kwenye mfumo wako." 21 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 22 | } -------------------------------------------------------------------------------- /l10n/ca.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Escaneja Imatge", 3 | "Mode" : "Mode", 4 | "Color" : "Color", 5 | "Greyscale" : "Escala de grisos", 6 | "Lineart" : "Lineart", 7 | "Resolution" : "Resolució", 8 | "Please adjust scan parameters" : "Si us plau, ajusteu els paràmetres de l'escaneig", 9 | "Scan Options" : "Opcions d'Escaneig", 10 | "Scan aborted." : "Escaneig avortat.", 11 | "Scan started." : "Escaneig engegat.", 12 | "Scan complete" : "Escaneig completat", 13 | "No" : "No", 14 | "Yes" : "Sí", 15 | "File already exists" : "El fitxer ja existeix", 16 | "Something went wrong while attempting to scan" : "Alguna cosa ha anat malament mentre es provava d'escanejar", 17 | "Success" : "Èxit", 18 | "Scanner" : "Escàner", 19 | "Scanner app for Nextcloud using the SANE framework" : "L'aplicació Escàner per a Nextcloud utilitza el marc de treball SANE", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Incorpora la capacitat d'adquirir imatges des d'un escàner activat per a xarxa o local. Necessiteu una configuració SANE funcional i un escàner compatible. Si us plau, consulteu el fitxer 'readme' sobre com configurar aquesta aplicació al vostre sistema." 21 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 22 | } -------------------------------------------------------------------------------- /l10n/ga.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Scan Íomhá", 5 | "Mode" : "Mód", 6 | "Color" : "Dath", 7 | "Greyscale" : "Scála Liath", 8 | "Lineart" : "Líneart", 9 | "Resolution" : "Rún", 10 | "Please adjust scan parameters" : "Le do thoil a choigeartú paraiméadair scanadh", 11 | "Scan Options" : "Roghanna Scan", 12 | "Scan aborted." : "Cuireadh deireadh leis an scanadh.", 13 | "Scan started." : "Thosaigh an scanadh.", 14 | "Scan complete" : "Scanadh críochnaithe", 15 | "No" : "Níl", 16 | "Yes" : "Tá", 17 | "File already exists" : "Tá an comhad ann cheana féin", 18 | "Something went wrong while attempting to scan" : "Tharla earráid agus iarracht á déanamh scanadh", 19 | "Success" : "Rath", 20 | "Scanner" : "Scanóir", 21 | "Scanner app for Nextcloud using the SANE framework" : "Aip scanóir do Nextcloud ag baint úsáide as an gcreat SANE", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Cuireann sé leis an gcumas íomhánna a fháil ó scanóir líonra-chumasaithe nó áitiúil. Teastaíonn cumraíocht SANE oibre agus scanóir tacaithe uait. Féach ar an readme maidir le conas an aip seo a shocrú ar do chóras." 23 | }, 24 | "nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);"); 25 | -------------------------------------------------------------------------------- /l10n/pt_BR.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Escanear Imagem", 5 | "Mode" : "Modo", 6 | "Color" : "Cor", 7 | "Greyscale" : "Escala de cinza", 8 | "Lineart" : "Lineart", 9 | "Resolution" : "Resolução", 10 | "Please adjust scan parameters" : "Ajuste os parâmetros de escaneamento", 11 | "Scan Options" : "Opções de Escaneamento", 12 | "Scan aborted." : "Escaneamento abortado.", 13 | "Scan started." : "Escaneamento iniciado.", 14 | "Scan complete" : "Escaneamento completo", 15 | "No" : "Não", 16 | "Yes" : "Sim", 17 | "File already exists" : "Arquivo já existe", 18 | "Something went wrong while attempting to scan" : "Algo deu errado ao tentar escanear", 19 | "Success" : "Sucesso", 20 | "Scanner" : "Escaneador", 21 | "Scanner app for Nextcloud using the SANE framework" : "Aplicativo de escaneamento para o Nextcloud usando o framework SANE", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Adiciona a capacidade de adquirir imagens de um scanner local ou em rede. Você precisa de uma configuração SANE funcional e um scanner suportado. Leia o readme sobre como configurar este aplicativo." 23 | }, 24 | "nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 25 | -------------------------------------------------------------------------------- /l10n/ro.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Scanează Imagine", 5 | "Mode" : "Mod", 6 | "Color" : "Culoare", 7 | "Greyscale" : "Nuanțe de gri", 8 | "Lineart" : "Linii de artă", 9 | "Resolution" : "Rezoluție", 10 | "Please adjust scan parameters" : "Te rog ajustează parametrii de scanare", 11 | "Scan Options" : "Opțiuni Scanare", 12 | "Scan aborted." : "Scanare întreruptă.", 13 | "Scan started." : "Scanare pornită.", 14 | "Scan complete" : "Scanare completă", 15 | "No" : "Nu", 16 | "Yes" : "a", 17 | "File already exists" : "Fișierul există deja", 18 | "Something went wrong while attempting to scan" : "Ceva n-a mers bine când am încercat să scanez", 19 | "Success" : "Succes", 20 | "Scanner" : "Scanner", 21 | "Scanner app for Nextcloud using the SANE framework" : "Aplicație Scanner pentru Nextcloud folosind structura SANE", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Adaugă abilitatea obținerii de imagini din scannere locale sau din rețea. Ai nevoie de o configurație funcțională SANE si un scanner suportat. Te rog să citesti manualul pentru configurarea acestei aplicații pe sistemul tău." 23 | }, 24 | "nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));"); 25 | -------------------------------------------------------------------------------- /l10n/sk.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Skenovať obrázok", 3 | "Mode" : "Režim", 4 | "Color" : "Farba", 5 | "Greyscale" : "Odtiene šedej", 6 | "Lineart" : "Čiarové umenie", 7 | "Resolution" : "Rozlíšenie", 8 | "Please adjust scan parameters" : "Upravte parametre skenovania", 9 | "Scan Options" : "Možnosti skenovania", 10 | "Scan aborted." : "Skenovanie bolo prerušené.", 11 | "Scan started." : "Skenovanie začalo.", 12 | "Scan complete" : "Skenovanie bolo dokončené", 13 | "No" : "Nie", 14 | "Yes" : "Áno", 15 | "File already exists" : "Súbor už existuje", 16 | "Something went wrong while attempting to scan" : "Pri pokuse o skenovanie sa niečo pokazilo", 17 | "Success" : "Úspešné", 18 | "Scanner" : "Skener", 19 | "Scanner app for Nextcloud using the SANE framework" : "Aplikácia Skener pre Nextcloud pomocou knižnice SANE", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Pridáva možnosť získavať obrázky zo sieťového alebo lokálneho skenera. Potrebujete funkčnú konfiguráciu SANE a podporovaný skener. Prečítajte si „readme” o tom, ako nastaviť túto aplikáciu vo vašom systéme." 21 | },"pluralForm" :"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);" 22 | } -------------------------------------------------------------------------------- /l10n/es_EC.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Escanear imagen", 3 | "Mode" : "Modo", 4 | "Color" : "Color", 5 | "Greyscale" : "Escala de grises", 6 | "Lineart" : "Líneas", 7 | "Resolution" : "Resolución", 8 | "Please adjust scan parameters" : "Por favor, ajusta los parámetros de escaneo", 9 | "Scan Options" : "Opciones de escaneo", 10 | "Scan aborted." : "Escaneo abortado", 11 | "Scan started." : "Escaneo iniciado", 12 | "Scan complete" : "Escaneo completo", 13 | "No" : "No", 14 | "Yes" : "Sí", 15 | "File already exists" : "El archivo ya existe", 16 | "Something went wrong while attempting to scan" : "Algo salió mal al intentar escanear", 17 | "Success" : "Éxito", 18 | "Scanner" : "Escáner", 19 | "Scanner app for Nextcloud using the SANE framework" : "Aplicación de escáner para Nextcloud que utiliza el marco de trabajo SANE", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Agrega la capacidad de adquirir imágenes de un escáner habilitado para redes o local. Necesitas una configuración SANE funcional y un escáner compatible. Consulta el archivo README para aprender cómo configurar esta aplicación en tu sistema." 21 | },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 22 | } -------------------------------------------------------------------------------- /l10n/is.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Skanna mynd", 3 | "Mode" : "Hamur", 4 | "Color" : "Litur", 5 | "Greyscale" : "Grátóna", 6 | "Lineart" : "Útlínumyndir", 7 | "Resolution" : "Upplausn", 8 | "Please adjust scan parameters" : "Breyttu stillingum fyrir skönnunina", 9 | "Scan Options" : "Valkostir skönnunar", 10 | "Scan aborted." : "Hætt var við skönnun.", 11 | "Scan started." : "Skönnun hafin.", 12 | "Scan complete" : "Skönnun lokið", 13 | "No" : "Nei", 14 | "Yes" : "Já", 15 | "File already exists" : "Skrá er þegar til staðar", 16 | "Something went wrong while attempting to scan" : "Eitthvað fór úrskeiðis þegar reynt var að skanna", 17 | "Success" : "Tókst", 18 | "Scanner" : "Skanni", 19 | "Scanner app for Nextcloud using the SANE framework" : "Skönnunarforrit fyrir Nextcloud sem styðst við SANE-kerfið", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Bætir við eiginleikanum að geta skannað myndir á nettengdumskanna eða skanna sem tengdur er beint við tölvuna. Þú þarft að vera með SANE-uppsetningu sem virkar og skanna sem er studdur. Skoðaðu readme-skrána til að sjá hvernig eigi að setja þennan hugbúnað upp á tölvunni þinni." 21 | },"pluralForm" :"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);" 22 | } -------------------------------------------------------------------------------- /l10n/gl.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Escanear imaxe", 5 | "Mode" : "Modo", 6 | "Color" : "Cor", 7 | "Greyscale" : "Escala de grises", 8 | "Lineart" : "Arte lineal", 9 | "Resolution" : "Resolución", 10 | "Please adjust scan parameters" : "Axuste os parámetros de escaneamento", 11 | "Scan Options" : "Opcións de escaneamento", 12 | "Scan aborted." : "Interrompeuse o escaneamento.", 13 | "Scan started." : "Comezou o escaneamento.", 14 | "Scan complete" : "Completouse o escaneamento.", 15 | "No" : "Non", 16 | "Yes" : "Si", 17 | "File already exists" : "O ficheiro xa existe", 18 | "Something went wrong while attempting to scan" : "Algo foi mal tentando escanear", 19 | "Success" : "Correcto", 20 | "Scanner" : "Escáner", 21 | "Scanner app for Nextcloud using the SANE framework" : "Aplicación de escaneamento para Nextcloud empregando o marco de traballo do SANE", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Engade a posibilidade de obter imaxes desde un escáner activado na rede ou en local. Necesita unha configuración SANE funcional e un escáner compatíbel. Consulte o ficheiro «léeme» sobre como configurar esta aplicación no seu sistema." 23 | }, 24 | "nplurals=2; plural=(n != 1);"); 25 | -------------------------------------------------------------------------------- /l10n/it.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Scansione immagine", 3 | "Mode" : "Modalità", 4 | "Color" : "Colore", 5 | "Greyscale" : "Scala di grigi", 6 | "Lineart" : "Lineart", 7 | "Resolution" : "Risoluzione", 8 | "Please adjust scan parameters" : "Regola i parametri di scansione", 9 | "Scan Options" : "Opzioni di scansione", 10 | "Scan aborted." : "Scansione interrotta", 11 | "Scan started." : "Scansione avviata.", 12 | "Scan complete" : "Scansione completata", 13 | "No" : "No", 14 | "Yes" : "Sì", 15 | "File already exists" : "Il file esiste già", 16 | "Something went wrong while attempting to scan" : "Qualcosa non ha funzionato durante il tentativo di scansione", 17 | "Success" : "Successo", 18 | "Scanner" : "Scanner", 19 | "Scanner app for Nextcloud using the SANE framework" : "Applicazione Scanner per Nextcloud che utilizza l'infrastruttura SANE", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Aggiunge la capacità di acquisire immagini da uno scanner di rete o locale. Ti serve una configurazione SANE funzionante e uno scanner supportato. Leggi il Readme per sapere come configurare questa applicazione sul tuo sistema." 21 | },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 22 | } -------------------------------------------------------------------------------- /l10n/sc.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Iscansione immàgine", 3 | "Mode" : "Modalidade", 4 | "Color" : "Colore", 5 | "Greyscale" : "Iscala de canos", 6 | "Lineart" : "Lineart", 7 | "Resolution" : "Risolutzione", 8 | "Please adjust scan parameters" : "Règula is paràmetros de iscansione", 9 | "Scan Options" : "Sèberos de iscansione", 10 | "Scan aborted." : "Iscansione firmada.", 11 | "Scan started." : "Iscansione aviada.", 12 | "Scan complete" : "iscansione cumpletada", 13 | "No" : "No", 14 | "Yes" : "Si", 15 | "File already exists" : "S'archìviu b'est giai", 16 | "Something went wrong while attempting to scan" : "Calicuna cosa non b'at funtzionadu in su primu tentativu de iscansione", 17 | "Success" : "Sutzessu", 18 | "Scanner" : "Iscanner", 19 | "Scanner app for Nextcloud using the SANE framework" : "Aplicatzione Iscanner pro Nextcloud chi impreat s'infrastrutura SANE", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Agiunghe sa capatzidade de achirire immàgines dae unu iscanner de rete o locale. Ti serbit una cunfiguratzione SANE chi funtzionet e un'iscanner suportadu. Leghe su Readme pro ischire comente cunfigurare custa aplicatzione in su sistema tuo." 21 | },"pluralForm" :"nplurals=2; plural=(n != 1);" 22 | } -------------------------------------------------------------------------------- /l10n/sw.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Changanua picha", 5 | "Mode" : "Hali", 6 | "Color" : "Rangi", 7 | "Greyscale" : "Greyscale", 8 | "Lineart" : "Lineart", 9 | "Resolution" : "Azimio", 10 | "Please adjust scan parameters" : "Tafadhali rekebisha vigezo vya kuchanganua", 11 | "Scan Options" : "Chaguzi za Kuchanganua", 12 | "Scan aborted." : "Uchanganuzi umesitishwa.", 13 | "Scan started." : "Uchanganuzi umeanza.", 14 | "Scan complete" : "Uchanganuzi umekamilika", 15 | "No" : "Hapana", 16 | "Yes" : "Ndiyo", 17 | "File already exists" : "Faili lipo tayari", 18 | "Something went wrong while attempting to scan" : "Kuna tatizo lililotokea wakati wa kujaribu kuchanganua", 19 | "Success" : "Mafanikio", 20 | "Scanner" : "Kichanganuzi", 21 | "Scanner app for Nextcloud using the SANE framework" : "Programu ya Kichanganuzi cha Nextcloud inayotumia mfumo wa SANE", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Inaongeza uwezo wa kupata picha kutoka kwa kichanganuzi kilichowezeshwa na mtandao au cha ndani. Unahitaji usanidi wa SANE unaofanya kazi na kichanganuzi kinachotumika. Tafadhali tazama somo la jinsi ya kusanidi programu hii kwenye mfumo wako." 23 | }, 24 | "nplurals=2; plural=(n != 1);"); 25 | -------------------------------------------------------------------------------- /l10n/ca.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Escaneja Imatge", 5 | "Mode" : "Mode", 6 | "Color" : "Color", 7 | "Greyscale" : "Escala de grisos", 8 | "Lineart" : "Lineart", 9 | "Resolution" : "Resolució", 10 | "Please adjust scan parameters" : "Si us plau, ajusteu els paràmetres de l'escaneig", 11 | "Scan Options" : "Opcions d'Escaneig", 12 | "Scan aborted." : "Escaneig avortat.", 13 | "Scan started." : "Escaneig engegat.", 14 | "Scan complete" : "Escaneig completat", 15 | "No" : "No", 16 | "Yes" : "Sí", 17 | "File already exists" : "El fitxer ja existeix", 18 | "Something went wrong while attempting to scan" : "Alguna cosa ha anat malament mentre es provava d'escanejar", 19 | "Success" : "Èxit", 20 | "Scanner" : "Escàner", 21 | "Scanner app for Nextcloud using the SANE framework" : "L'aplicació Escàner per a Nextcloud utilitza el marc de treball SANE", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Incorpora la capacitat d'adquirir imatges des d'un escàner activat per a xarxa o local. Necessiteu una configuració SANE funcional i un escàner compatible. Si us plau, consulteu el fitxer 'readme' sobre com configurar aquesta aplicació al vostre sistema." 23 | }, 24 | "nplurals=2; plural=(n != 1);"); 25 | -------------------------------------------------------------------------------- /l10n/sk.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Skenovať obrázok", 5 | "Mode" : "Režim", 6 | "Color" : "Farba", 7 | "Greyscale" : "Odtiene šedej", 8 | "Lineart" : "Čiarové umenie", 9 | "Resolution" : "Rozlíšenie", 10 | "Please adjust scan parameters" : "Upravte parametre skenovania", 11 | "Scan Options" : "Možnosti skenovania", 12 | "Scan aborted." : "Skenovanie bolo prerušené.", 13 | "Scan started." : "Skenovanie začalo.", 14 | "Scan complete" : "Skenovanie bolo dokončené", 15 | "No" : "Nie", 16 | "Yes" : "Áno", 17 | "File already exists" : "Súbor už existuje", 18 | "Something went wrong while attempting to scan" : "Pri pokuse o skenovanie sa niečo pokazilo", 19 | "Success" : "Úspešné", 20 | "Scanner" : "Skener", 21 | "Scanner app for Nextcloud using the SANE framework" : "Aplikácia Skener pre Nextcloud pomocou knižnice SANE", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Pridáva možnosť získavať obrázky zo sieťového alebo lokálneho skenera. Potrebujete funkčnú konfiguráciu SANE a podporovaný skener. Prečítajte si „readme” o tom, ako nastaviť túto aplikáciu vo vašom systéme." 23 | }, 24 | "nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);"); 25 | -------------------------------------------------------------------------------- /l10n/es_EC.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Escanear imagen", 5 | "Mode" : "Modo", 6 | "Color" : "Color", 7 | "Greyscale" : "Escala de grises", 8 | "Lineart" : "Líneas", 9 | "Resolution" : "Resolución", 10 | "Please adjust scan parameters" : "Por favor, ajusta los parámetros de escaneo", 11 | "Scan Options" : "Opciones de escaneo", 12 | "Scan aborted." : "Escaneo abortado", 13 | "Scan started." : "Escaneo iniciado", 14 | "Scan complete" : "Escaneo completo", 15 | "No" : "No", 16 | "Yes" : "Sí", 17 | "File already exists" : "El archivo ya existe", 18 | "Something went wrong while attempting to scan" : "Algo salió mal al intentar escanear", 19 | "Success" : "Éxito", 20 | "Scanner" : "Escáner", 21 | "Scanner app for Nextcloud using the SANE framework" : "Aplicación de escáner para Nextcloud que utiliza el marco de trabajo SANE", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Agrega la capacidad de adquirir imágenes de un escáner habilitado para redes o local. Necesitas una configuración SANE funcional y un escáner compatible. Consulta el archivo README para aprender cómo configurar esta aplicación en tu sistema." 23 | }, 24 | "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 25 | -------------------------------------------------------------------------------- /l10n/hr.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Skeniraj sliku", 3 | "Mode" : "Način rada", 4 | "Color" : "Boja", 5 | "Greyscale" : "Sivi tonovi", 6 | "Lineart" : "Crtež", 7 | "Resolution" : "Razlučivost", 8 | "Please adjust scan parameters" : "Prilagodite parametre skeniranja", 9 | "Scan Options" : "Mogućnosti skeniranja", 10 | "Scan aborted." : "Skeniranje je prekinuto.", 11 | "Scan started." : "Skeniranje je pokrenuto.", 12 | "Scan complete" : "Skeniranje je dovršeno", 13 | "No" : "Ne", 14 | "Yes" : "Da", 15 | "File already exists" : "Datoteka već postoji", 16 | "Something went wrong while attempting to scan" : "Došlo je do pogreške pri pokušaju skeniranja", 17 | "Success" : "Uspjeh", 18 | "Scanner" : "Skener", 19 | "Scanner app for Nextcloud using the SANE framework" : "Aplikacija skenera za Nextcloud s programskim sučeljem SANE", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Dodaje mogućnost dohvaćanja slika s mrežnog ili lokalnog skenera. Potrebna vam je pravilna konfiguracija programskog sučelja SANE i podržani skener. Pogledajte datoteku readme o načinu postavljanja ove aplikacije u sustavu." 21 | },"pluralForm" :"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;" 22 | } -------------------------------------------------------------------------------- /l10n/is.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Skanna mynd", 5 | "Mode" : "Hamur", 6 | "Color" : "Litur", 7 | "Greyscale" : "Grátóna", 8 | "Lineart" : "Útlínumyndir", 9 | "Resolution" : "Upplausn", 10 | "Please adjust scan parameters" : "Breyttu stillingum fyrir skönnunina", 11 | "Scan Options" : "Valkostir skönnunar", 12 | "Scan aborted." : "Hætt var við skönnun.", 13 | "Scan started." : "Skönnun hafin.", 14 | "Scan complete" : "Skönnun lokið", 15 | "No" : "Nei", 16 | "Yes" : "Já", 17 | "File already exists" : "Skrá er þegar til staðar", 18 | "Something went wrong while attempting to scan" : "Eitthvað fór úrskeiðis þegar reynt var að skanna", 19 | "Success" : "Tókst", 20 | "Scanner" : "Skanni", 21 | "Scanner app for Nextcloud using the SANE framework" : "Skönnunarforrit fyrir Nextcloud sem styðst við SANE-kerfið", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Bætir við eiginleikanum að geta skannað myndir á nettengdumskanna eða skanna sem tengdur er beint við tölvuna. Þú þarft að vera með SANE-uppsetningu sem virkar og skanna sem er studdur. Skoðaðu readme-skrána til að sjá hvernig eigi að setja þennan hugbúnað upp á tölvunni þinni." 23 | }, 24 | "nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);"); 25 | -------------------------------------------------------------------------------- /l10n/it.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Scansione immagine", 5 | "Mode" : "Modalità", 6 | "Color" : "Colore", 7 | "Greyscale" : "Scala di grigi", 8 | "Lineart" : "Lineart", 9 | "Resolution" : "Risoluzione", 10 | "Please adjust scan parameters" : "Regola i parametri di scansione", 11 | "Scan Options" : "Opzioni di scansione", 12 | "Scan aborted." : "Scansione interrotta", 13 | "Scan started." : "Scansione avviata.", 14 | "Scan complete" : "Scansione completata", 15 | "No" : "No", 16 | "Yes" : "Sì", 17 | "File already exists" : "Il file esiste già", 18 | "Something went wrong while attempting to scan" : "Qualcosa non ha funzionato durante il tentativo di scansione", 19 | "Success" : "Successo", 20 | "Scanner" : "Scanner", 21 | "Scanner app for Nextcloud using the SANE framework" : "Applicazione Scanner per Nextcloud che utilizza l'infrastruttura SANE", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Aggiunge la capacità di acquisire immagini da uno scanner di rete o locale. Ti serve una configurazione SANE funzionante e uno scanner supportato. Leggi il Readme per sapere come configurare questa applicazione sul tuo sistema." 23 | }, 24 | "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 25 | -------------------------------------------------------------------------------- /l10n/sc.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Iscansione immàgine", 5 | "Mode" : "Modalidade", 6 | "Color" : "Colore", 7 | "Greyscale" : "Iscala de canos", 8 | "Lineart" : "Lineart", 9 | "Resolution" : "Risolutzione", 10 | "Please adjust scan parameters" : "Règula is paràmetros de iscansione", 11 | "Scan Options" : "Sèberos de iscansione", 12 | "Scan aborted." : "Iscansione firmada.", 13 | "Scan started." : "Iscansione aviada.", 14 | "Scan complete" : "iscansione cumpletada", 15 | "No" : "No", 16 | "Yes" : "Si", 17 | "File already exists" : "S'archìviu b'est giai", 18 | "Something went wrong while attempting to scan" : "Calicuna cosa non b'at funtzionadu in su primu tentativu de iscansione", 19 | "Success" : "Sutzessu", 20 | "Scanner" : "Iscanner", 21 | "Scanner app for Nextcloud using the SANE framework" : "Aplicatzione Iscanner pro Nextcloud chi impreat s'infrastrutura SANE", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Agiunghe sa capatzidade de achirire immàgines dae unu iscanner de rete o locale. Ti serbit una cunfiguratzione SANE chi funtzionet e un'iscanner suportadu. Leghe su Readme pro ischire comente cunfigurare custa aplicatzione in su sistema tuo." 23 | }, 24 | "nplurals=2; plural=(n != 1);"); 25 | -------------------------------------------------------------------------------- /appinfo/app.php: -------------------------------------------------------------------------------- 1 | 9 | * @copyright Greg Sutcliffe 2016 10 | */ 11 | 12 | namespace OCA\Scanner\AppInfo; 13 | 14 | use OCP\AppFramework\App; 15 | use \OCA\Scanner\Storage\ScannerStorage; 16 | 17 | require_once __DIR__ . '/autoload.php'; 18 | 19 | class Application extends App { 20 | 21 | public function __construct(array $urlParams=array()){ 22 | parent::__construct('scanner', $urlParams); 23 | 24 | $container = $this->getContainer(); 25 | 26 | /** 27 | * Storage Layer 28 | */ 29 | $container->registerService('ScannerStorage', function($c) { 30 | return new ScannerStorage($c->query('UserStorage'), $c->query('L10N')); 31 | }); 32 | 33 | $container->registerService('UserStorage', function($c) { 34 | return $c->query('ServerContainer')->getUserFolder(); 35 | }); 36 | 37 | $container->registerService('L10N', function($c) { 38 | return $c->query('ServerContainer')->getL10N($c->query('AppName')); 39 | }); 40 | 41 | } 42 | } 43 | 44 | $eventDispatcher = \OC::$server->getEventDispatcher(); 45 | $eventDispatcher->addListener('OCA\Files::loadAdditionalScripts', function() { 46 | script('scanner', 'menu'); // adds js/script.js 47 | style('scanner', 'style'); // adds js/script.js 48 | }); 49 | -------------------------------------------------------------------------------- /l10n/hr.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Skeniraj sliku", 5 | "Mode" : "Način rada", 6 | "Color" : "Boja", 7 | "Greyscale" : "Sivi tonovi", 8 | "Lineart" : "Crtež", 9 | "Resolution" : "Razlučivost", 10 | "Please adjust scan parameters" : "Prilagodite parametre skeniranja", 11 | "Scan Options" : "Mogućnosti skeniranja", 12 | "Scan aborted." : "Skeniranje je prekinuto.", 13 | "Scan started." : "Skeniranje je pokrenuto.", 14 | "Scan complete" : "Skeniranje je dovršeno", 15 | "No" : "Ne", 16 | "Yes" : "Da", 17 | "File already exists" : "Datoteka već postoji", 18 | "Something went wrong while attempting to scan" : "Došlo je do pogreške pri pokušaju skeniranja", 19 | "Success" : "Uspjeh", 20 | "Scanner" : "Skener", 21 | "Scanner app for Nextcloud using the SANE framework" : "Aplikacija skenera za Nextcloud s programskim sučeljem SANE", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Dodaje mogućnost dohvaćanja slika s mrežnog ili lokalnog skenera. Potrebna vam je pravilna konfiguracija programskog sučelja SANE i podržani skener. Pogledajte datoteku readme o načinu postavljanja ove aplikacije u sustavu." 23 | }, 24 | "nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;"); 25 | -------------------------------------------------------------------------------- /l10n/cs.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Naskenovat obrázek", 3 | "Mode" : "Režim", 4 | "Color" : "Barevně", 5 | "Greyscale" : "Stupně šedi", 6 | "Lineart" : "Čárová grafika", 7 | "Resolution" : "Rozlišení", 8 | "Please adjust scan parameters" : "Dolaďte parametry skenování", 9 | "Scan Options" : "Předvolby skenování", 10 | "Scan aborted." : "Skenování přerušeno.", 11 | "Scan started." : "Skenování zahájeno.", 12 | "Scan complete" : "Skenování dokončeno", 13 | "No" : "Ne", 14 | "Yes" : "Ano", 15 | "File already exists" : "Soubor už existuje", 16 | "Something went wrong while attempting to scan" : "Při pokusu o skenování se něco pokazilo", 17 | "Success" : "Úspěch", 18 | "Scanner" : "Skener", 19 | "Scanner app for Nextcloud using the SANE framework" : "Aplikace pro skenování obrázků do Nexcloud pomocí aplikačního rámce (framework) SANE", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Přidává možnost získávat obrázky ze síťového skeneru, nebo toho připojeného přímo k počítači. K tomu je zapotřebí mít funkční nastavení SANE a podporovaný model skeneru. To, jak si tuto aplikaci nastavit, naleznete v návodu (readme)." 21 | },"pluralForm" :"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;" 22 | } -------------------------------------------------------------------------------- /l10n/sl.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Zaženi optični bralnik", 3 | "Mode" : "Način", 4 | "Color" : "Barva", 5 | "Greyscale" : "Sivine", 6 | "Lineart" : "Črtni izris", 7 | "Resolution" : "Ločljivost", 8 | "Please adjust scan parameters" : "Prilagoditev parametrov bralnika", 9 | "Scan Options" : "Možnosti optičnega bralnika", 10 | "Scan aborted." : "Optično branje je prekinjeno.", 11 | "Scan started." : "Optično branje je začeto.", 12 | "Scan complete" : "Optično branje je končano.", 13 | "No" : "Ne", 14 | "Yes" : "Da", 15 | "File already exists" : "Datoteka s tem imenom že obstaja.", 16 | "Something went wrong while attempting to scan" : "Med poskusom optičnega branja je prišlo do napake.", 17 | "Success" : "Uspešno končano", 18 | "Scanner" : "Optični bralnik", 19 | "Scanner app for Nextcloud using the SANE framework" : "Program za optično branje s podporo okolja SANE", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Program omogoča optično branje slikovnega materiala prek omrežnega ali krajevnega optičnega bralnika. Program zahteva delujočo namestitev SANE in podprto vrsto bralnika. Več podrobnosti o programu je na voljo v datoteki readme." 21 | },"pluralForm" :"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);" 22 | } -------------------------------------------------------------------------------- /l10n/cs.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Naskenovat obrázek", 5 | "Mode" : "Režim", 6 | "Color" : "Barevně", 7 | "Greyscale" : "Stupně šedi", 8 | "Lineart" : "Čárová grafika", 9 | "Resolution" : "Rozlišení", 10 | "Please adjust scan parameters" : "Dolaďte parametry skenování", 11 | "Scan Options" : "Předvolby skenování", 12 | "Scan aborted." : "Skenování přerušeno.", 13 | "Scan started." : "Skenování zahájeno.", 14 | "Scan complete" : "Skenování dokončeno", 15 | "No" : "Ne", 16 | "Yes" : "Ano", 17 | "File already exists" : "Soubor už existuje", 18 | "Something went wrong while attempting to scan" : "Při pokusu o skenování se něco pokazilo", 19 | "Success" : "Úspěch", 20 | "Scanner" : "Skener", 21 | "Scanner app for Nextcloud using the SANE framework" : "Aplikace pro skenování obrázků do Nexcloud pomocí aplikačního rámce (framework) SANE", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Přidává možnost získávat obrázky ze síťového skeneru, nebo toho připojeného přímo k počítači. K tomu je zapotřebí mít funkční nastavení SANE a podporovaný model skeneru. To, jak si tuto aplikaci nastavit, naleznete v návodu (readme)." 23 | }, 24 | "nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"); 25 | -------------------------------------------------------------------------------- /l10n/fr.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Scanner une image", 3 | "Mode" : "Mode", 4 | "Color" : "Couleur", 5 | "Greyscale" : "Niveaux de gris", 6 | "Lineart" : "Dessin au trait", 7 | "Resolution" : "Résolution", 8 | "Please adjust scan parameters" : "Veuillez ajuster les paramètres de scan", 9 | "Scan Options" : "Options de numérisation", 10 | "Scan aborted." : "Scan annulé.", 11 | "Scan started." : "Scan démarré.", 12 | "Scan complete" : "Scan terminé", 13 | "No" : "Non", 14 | "Yes" : "Oui", 15 | "File already exists" : "Le fichier existe déjà", 16 | "Something went wrong while attempting to scan" : "Quelque chose s'est mal passé en essayant de numériser", 17 | "Success" : "Succès", 18 | "Scanner" : "Numériseur", 19 | "Scanner app for Nextcloud using the SANE framework" : "Application de scan pour Nextcloud utilisant le framework SANE", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Ajoute la possibilité d'acquérir des images à partir d'un numériseur réseau ou local. Vous avez besoin d'une configuration SANE fonctionnelle et d'un numériseur pris en charge. Veuillez consulter le fichier readme pour savoir comment configurer cette application sur votre système." 21 | },"pluralForm" :"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" 22 | } -------------------------------------------------------------------------------- /l10n/sl.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Zaženi optični bralnik", 5 | "Mode" : "Način", 6 | "Color" : "Barva", 7 | "Greyscale" : "Sivine", 8 | "Lineart" : "Črtni izris", 9 | "Resolution" : "Ločljivost", 10 | "Please adjust scan parameters" : "Prilagoditev parametrov bralnika", 11 | "Scan Options" : "Možnosti optičnega bralnika", 12 | "Scan aborted." : "Optično branje je prekinjeno.", 13 | "Scan started." : "Optično branje je začeto.", 14 | "Scan complete" : "Optično branje je končano.", 15 | "No" : "Ne", 16 | "Yes" : "Da", 17 | "File already exists" : "Datoteka s tem imenom že obstaja.", 18 | "Something went wrong while attempting to scan" : "Med poskusom optičnega branja je prišlo do napake.", 19 | "Success" : "Uspešno končano", 20 | "Scanner" : "Optični bralnik", 21 | "Scanner app for Nextcloud using the SANE framework" : "Program za optično branje s podporo okolja SANE", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Program omogoča optično branje slikovnega materiala prek omrežnega ali krajevnega optičnega bralnika. Program zahteva delujočo namestitev SANE in podprto vrsto bralnika. Več podrobnosti o programu je na voljo v datoteki readme." 23 | }, 24 | "nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"); 25 | -------------------------------------------------------------------------------- /l10n/fr.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Scanner une image", 5 | "Mode" : "Mode", 6 | "Color" : "Couleur", 7 | "Greyscale" : "Niveaux de gris", 8 | "Lineart" : "Dessin au trait", 9 | "Resolution" : "Résolution", 10 | "Please adjust scan parameters" : "Veuillez ajuster les paramètres de scan", 11 | "Scan Options" : "Options de numérisation", 12 | "Scan aborted." : "Scan annulé.", 13 | "Scan started." : "Scan démarré.", 14 | "Scan complete" : "Scan terminé", 15 | "No" : "Non", 16 | "Yes" : "Oui", 17 | "File already exists" : "Le fichier existe déjà", 18 | "Something went wrong while attempting to scan" : "Quelque chose s'est mal passé en essayant de numériser", 19 | "Success" : "Succès", 20 | "Scanner" : "Numériseur", 21 | "Scanner app for Nextcloud using the SANE framework" : "Application de scan pour Nextcloud utilisant le framework SANE", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Ajoute la possibilité d'acquérir des images à partir d'un numériseur réseau ou local. Vous avez besoin d'une configuration SANE fonctionnelle et d'un numériseur pris en charge. Veuillez consulter le fichier readme pour savoir comment configurer cette application sur votre système." 23 | }, 24 | "nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); 25 | -------------------------------------------------------------------------------- /l10n/pl.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Skanuj obraz", 3 | "Mode" : "Tryb", 4 | "Color" : "Kolor", 5 | "Greyscale" : "Skala szarości", 6 | "Lineart" : "Grafika liniowa", 7 | "Resolution" : "Rozdzielczość", 8 | "Please adjust scan parameters" : "Dostosuj parametry skanowania", 9 | "Scan Options" : "Opcje skanowania", 10 | "Scan aborted." : "Skanowanie przerwane.", 11 | "Scan started." : "Rozpoczęto skanowanie.", 12 | "Scan complete" : "Skanowanie zakończone", 13 | "No" : "Nie", 14 | "Yes" : "Tak", 15 | "File already exists" : "Plik już istnieje", 16 | "Something went wrong while attempting to scan" : "Coś poszło nie tak podczas próby skanowania", 17 | "Success" : "Powiodło się", 18 | "Scanner" : "Skaner", 19 | "Scanner app for Nextcloud using the SANE framework" : "Aplikacja skanera dla Nextcloud przy użyciu platformy SANE", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Dodaje możliwość pobierania obrazów ze skanera sieciowego lub lokalnego. Potrzebujesz działającej konfiguracji SANE i obsługiwanego skanera. Zobacz plik \"readme\", w jaki sposób skonfigurować tę aplikację w swoim systemie." 21 | },"pluralForm" :"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);" 22 | } -------------------------------------------------------------------------------- /l10n/lt_LT.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Skenuoti paveikslą", 3 | "Mode" : "Veiksena", 4 | "Color" : "Spalva", 5 | "Greyscale" : "Pilkumo tonai", 6 | "Lineart" : "Linijinis", 7 | "Resolution" : "Raiška", 8 | "Please adjust scan parameters" : "Suderinkite skenavimo parametrus", 9 | "Scan Options" : "Skenavimo parinktys", 10 | "Scan aborted." : "Skenavimas nutrauktas.", 11 | "Scan started." : "Skenavimas pradėtas.", 12 | "Scan complete" : "Skenavimas užbaigtas", 13 | "No" : "Ne", 14 | "Yes" : "Taip", 15 | "File already exists" : "Failas jau yra", 16 | "Something went wrong while attempting to scan" : "Bandant skenuoti, kažkas nutiko", 17 | "Success" : "Pavyko", 18 | "Scanner" : "Skeneris", 19 | "Scanner app for Nextcloud using the SANE framework" : "Skenerio programėlė skirta Nextcloud, naudojanti SANE karkasą", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Prideda galimybę gauti paveikslus iš prijungto prie tinklo ar vietinio skenerio. Jums reikia veikiančios SANE konfigūracijos ir palaikomo skenerio. Išsamesnei informacijai apie tai, kaip nusistatyti šią programėlę savo sistemoje, žiūrėkite \"readme\" failą." 21 | },"pluralForm" :"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);" 22 | } -------------------------------------------------------------------------------- /l10n/pl.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Skanuj obraz", 5 | "Mode" : "Tryb", 6 | "Color" : "Kolor", 7 | "Greyscale" : "Skala szarości", 8 | "Lineart" : "Grafika liniowa", 9 | "Resolution" : "Rozdzielczość", 10 | "Please adjust scan parameters" : "Dostosuj parametry skanowania", 11 | "Scan Options" : "Opcje skanowania", 12 | "Scan aborted." : "Skanowanie przerwane.", 13 | "Scan started." : "Rozpoczęto skanowanie.", 14 | "Scan complete" : "Skanowanie zakończone", 15 | "No" : "Nie", 16 | "Yes" : "Tak", 17 | "File already exists" : "Plik już istnieje", 18 | "Something went wrong while attempting to scan" : "Coś poszło nie tak podczas próby skanowania", 19 | "Success" : "Powiodło się", 20 | "Scanner" : "Skaner", 21 | "Scanner app for Nextcloud using the SANE framework" : "Aplikacja skanera dla Nextcloud przy użyciu platformy SANE", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Dodaje możliwość pobierania obrazów ze skanera sieciowego lub lokalnego. Potrzebujesz działającej konfiguracji SANE i obsługiwanego skanera. Zobacz plik \"readme\", w jaki sposób skonfigurować tę aplikację w swoim systemie." 23 | }, 24 | "nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);"); 25 | -------------------------------------------------------------------------------- /l10n/lt_LT.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Skenuoti paveikslą", 5 | "Mode" : "Veiksena", 6 | "Color" : "Spalva", 7 | "Greyscale" : "Pilkumo tonai", 8 | "Lineart" : "Linijinis", 9 | "Resolution" : "Raiška", 10 | "Please adjust scan parameters" : "Suderinkite skenavimo parametrus", 11 | "Scan Options" : "Skenavimo parinktys", 12 | "Scan aborted." : "Skenavimas nutrauktas.", 13 | "Scan started." : "Skenavimas pradėtas.", 14 | "Scan complete" : "Skenavimas užbaigtas", 15 | "No" : "Ne", 16 | "Yes" : "Taip", 17 | "File already exists" : "Failas jau yra", 18 | "Something went wrong while attempting to scan" : "Bandant skenuoti, kažkas nutiko", 19 | "Success" : "Pavyko", 20 | "Scanner" : "Skeneris", 21 | "Scanner app for Nextcloud using the SANE framework" : "Skenerio programėlė skirta Nextcloud, naudojanti SANE karkasą", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Prideda galimybę gauti paveikslus iš prijungto prie tinklo ar vietinio skenerio. Jums reikia veikiančios SANE konfigūracijos ir palaikomo skenerio. Išsamesnei informacijai apie tai, kaip nusistatyti šią programėlę savo sistemoje, žiūrėkite \"readme\" failą." 23 | }, 24 | "nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);"); 25 | -------------------------------------------------------------------------------- /l10n/ru.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Сканировать изображение", 3 | "Mode" : "Режим сканирования", 4 | "Color" : "Цветной", 5 | "Greyscale" : "Оттенки серого", 6 | "Lineart" : "Черно-белый", 7 | "Resolution" : "Разрешение", 8 | "Please adjust scan parameters" : "Пожалуйста, настройте параметры сканирования", 9 | "Scan Options" : "Настройки сканирования", 10 | "Scan aborted." : "Сканирование прервано.", 11 | "Scan started." : "Сканирование запущено.", 12 | "Scan complete" : "Сканирование завершено", 13 | "No" : "Нет", 14 | "Yes" : "Да", 15 | "File already exists" : "Файл уже существует", 16 | "Something went wrong while attempting to scan" : "Что-то пошло не так при попытке сканирования", 17 | "Success" : "Выполнено", 18 | "Scanner" : "Сканер", 19 | "Scanner app for Nextcloud using the SANE framework" : "Приложение сканера для Nextcloud с использованием фреймворка SANE", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Добавляет возможность получения изображений с сетевого или локального сканера. Вам нужна рабочая конфигурация SANE и поддерживаемый сканер. Пожалуйста, ознакомьтесь с инструкциями настройки этого приложение в вашей системе." 21 | },"pluralForm" :"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);" 22 | } -------------------------------------------------------------------------------- /l10n/ru.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Сканировать изображение", 5 | "Mode" : "Режим сканирования", 6 | "Color" : "Цветной", 7 | "Greyscale" : "Оттенки серого", 8 | "Lineart" : "Черно-белый", 9 | "Resolution" : "Разрешение", 10 | "Please adjust scan parameters" : "Пожалуйста, настройте параметры сканирования", 11 | "Scan Options" : "Настройки сканирования", 12 | "Scan aborted." : "Сканирование прервано.", 13 | "Scan started." : "Сканирование запущено.", 14 | "Scan complete" : "Сканирование завершено", 15 | "No" : "Нет", 16 | "Yes" : "Да", 17 | "File already exists" : "Файл уже существует", 18 | "Something went wrong while attempting to scan" : "Что-то пошло не так при попытке сканирования", 19 | "Success" : "Выполнено", 20 | "Scanner" : "Сканер", 21 | "Scanner app for Nextcloud using the SANE framework" : "Приложение сканера для Nextcloud с использованием фреймворка SANE", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Добавляет возможность получения изображений с сетевого или локального сканера. Вам нужна рабочая конфигурация SANE и поддерживаемый сканер. Пожалуйста, ознакомьтесь с инструкциями настройки этого приложение в вашей системе." 23 | }, 24 | "nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"); 25 | -------------------------------------------------------------------------------- /l10n/uk.json: -------------------------------------------------------------------------------- 1 | { "translations": { 2 | "Scan Image" : "Просканувати картинку", 3 | "Mode" : "Режим", 4 | "Color" : "Колір", 5 | "Greyscale" : "Відтінки сірого", 6 | "Lineart" : "Лінійний", 7 | "Resolution" : "Роздільна здатність", 8 | "Please adjust scan parameters" : "Будь ласка налаштуйте параметри сканування", 9 | "Scan Options" : "Опції сканування", 10 | "Scan aborted." : "Сканування скасовано.", 11 | "Scan started." : "Розпочато сканування", 12 | "Scan complete" : "Сканування завершено", 13 | "No" : "Ні", 14 | "Yes" : "Так", 15 | "File already exists" : "Файл вже існує", 16 | "Something went wrong while attempting to scan" : "Щось пішло не так під час спроби сканування", 17 | "Success" : "Успіх", 18 | "Scanner" : "Сканер", 19 | "Scanner app for Nextcloud using the SANE framework" : "Застосунок Nextcloud для сканування з використанням інтерфейсу SANE", 20 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Додає можливість сканування зображень з мережевих або локальних сканерів. Для його роботи вам потрібне правильно налаштоване середовище SANE, а також сумісний сканер. Будь ласка, ознайомтеся з інструкцією з налаштування застосунку у вашій системі." 21 | },"pluralForm" :"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);" 22 | } -------------------------------------------------------------------------------- /l10n/uk.js: -------------------------------------------------------------------------------- 1 | OC.L10N.register( 2 | "scanner", 3 | { 4 | "Scan Image" : "Просканувати картинку", 5 | "Mode" : "Режим", 6 | "Color" : "Колір", 7 | "Greyscale" : "Відтінки сірого", 8 | "Lineart" : "Лінійний", 9 | "Resolution" : "Роздільна здатність", 10 | "Please adjust scan parameters" : "Будь ласка налаштуйте параметри сканування", 11 | "Scan Options" : "Опції сканування", 12 | "Scan aborted." : "Сканування скасовано.", 13 | "Scan started." : "Розпочато сканування", 14 | "Scan complete" : "Сканування завершено", 15 | "No" : "Ні", 16 | "Yes" : "Так", 17 | "File already exists" : "Файл вже існує", 18 | "Something went wrong while attempting to scan" : "Щось пішло не так під час спроби сканування", 19 | "Success" : "Успіх", 20 | "Scanner" : "Сканер", 21 | "Scanner app for Nextcloud using the SANE framework" : "Застосунок Nextcloud для сканування з використанням інтерфейсу SANE", 22 | "Adds the ability to acquire images from a network-enabled or local scanner. You need a working SANE configuration and a supported scanner. Please see the readme on how to set up this app on your system." : "Додає можливість сканування зображень з мережевих або локальних сканерів. Для його роботи вам потрібне правильно налаштоване середовище SANE, а також сумісний сканер. Будь ласка, ознайомтеся з інструкцією з налаштування застосунку у вашій системі." 23 | }, 24 | "nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);"); 25 | -------------------------------------------------------------------------------- /controller/scannercontroller.php: -------------------------------------------------------------------------------- 1 | 9 | * @copyright Greg Sutcliffe 2016 10 | */ 11 | 12 | namespace OCA\Scanner\Controller; 13 | 14 | use OCA\Scanner\Storage\ScannerStorage; 15 | use OCA\Scanner\Storage\StorageException; 16 | use OCP\AppFramework\Controller; 17 | use OCP\AppFramework\Http; 18 | use OCP\AppFramework\Http\DataResponse; 19 | use OCP\Files\GenericFileException; 20 | use OCP\Files\NotPermittedException; 21 | use OCP\IRequest; 22 | 23 | class ScannerController extends Controller { 24 | 25 | private $userId; 26 | /** 27 | * @var ScannerStorage 28 | */ 29 | private $storage; 30 | 31 | public function __construct( 32 | $AppName, 33 | IRequest $request, 34 | ScannerStorage $ScannerStorage, 35 | $UserId 36 | ) { 37 | parent::__construct($AppName, $request); 38 | $this->storage = $ScannerStorage; 39 | $this->userId = $UserId; 40 | } 41 | 42 | /** 43 | * Simply method that posts back the payload of the request 44 | * 45 | * @NoAdminRequired 46 | * @param $filename 47 | * @param $dir 48 | * @param $scanOptions 49 | * @return DataResponse 50 | */ 51 | public function scan($filename, $dir, $scanOptions) { 52 | $status = Http::STATUS_OK; 53 | $result = 'result'; 54 | $path = $dir . '/' . $filename; 55 | $mode = (int)$scanOptions['mode']; 56 | $resolution = (int)$scanOptions['resolution']; 57 | try { 58 | $result = $this->storage->scanFile($path, $mode, $resolution); 59 | $status = Http::STATUS_OK; 60 | } catch (StorageException $e) { 61 | } catch (GenericFileException $e) { 62 | } catch (NotPermittedException $e) { 63 | $result = $e->getMessage(); 64 | $status = Http::STATUS_BAD_REQUEST; 65 | } 66 | return new DataResponse(['result' => $result], $status); 67 | } 68 | 69 | 70 | } 71 | -------------------------------------------------------------------------------- /lib/Storage/ScannerStorage.php: -------------------------------------------------------------------------------- 1 | 9 | * @copyright Greg Sutcliffe 2016 10 | */ 11 | 12 | namespace OCA\Scanner\Storage; 13 | 14 | use Exception; 15 | use OC\Files\Node\LazyUserFolder; 16 | use OCP\Files\GenericFileException; 17 | use OCP\Files\NotPermittedException; 18 | use \OCP\IL10N; 19 | 20 | class StorageException extends Exception { 21 | } 22 | 23 | class ScannerStorage { 24 | 25 | private $trans; 26 | 27 | private $storage; 28 | private $modes = [ 29 | 0 => 'Color', 30 | 1 => 'Gray', 31 | 2 => 'Lineart' 32 | ]; 33 | 34 | public function __construct(LazyUserFolder $storage, IL10N $trans) { 35 | $this->storage = $storage; 36 | $this->trans = $trans; 37 | } 38 | 39 | public function getLanguageCode() { 40 | return $this->trans->getLanguageCode(); 41 | } 42 | 43 | /** 44 | * @param $name 45 | * @param string $mode 46 | * @param int $resolution 47 | * @return string 48 | * @throws GenericFileException 49 | * @throws NotPermittedException 50 | * @throws StorageException 51 | */ 52 | public function scanFile($name, $mode = 0, $resolution = 300) { 53 | if ($this->storage->nodeExists($name)) { 54 | // TODO: This can happen because we don't refresh the file listing 55 | throw new StorageException($this->trans->t('File already exists')); 56 | } 57 | $file = $this->storage->newFile($name); 58 | // TODO: There's probably a way to stream this without the tempfile 59 | exec( 60 | "sudo scanimage --mode {$this->modes[$mode]} --resolution {$resolution} -x 215 -y 297| pnmtojpeg > /tmp/img", 61 | $output, 62 | $status 63 | ); 64 | if ($status) { 65 | throw new StorageException($this->trans->t('Something went wrong while attempting to scan')); 66 | } 67 | $data = file_get_contents('/tmp/img'); 68 | $file->putContent($data); 69 | return $this->trans->t('Success'); 70 | } 71 | 72 | } 73 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Scanner - Scan images directly into NextCloud 2 | 3 | **Scanner** is a NextCloud app which adds the ability to scan images from a 4 | local or network-available scanner (via the SANE tools) directly into 5 | Nextcloud. 6 | 7 | ## Installation 8 | 9 | * Place the code in [your nextcloud folder]/apps/scanner 10 | * Make sure you have `scanimage` and `pnmtojpeg` binaries available 11 | * On Debian, these are provided by the `sane-utils` and `netpbm` packages 12 | * Ensure executing `scanimage -L` on your NextCloud server returns the correct scanner 13 | * Configuring SANE is beyond this README, but: 14 | * For scanners shared by another host, add the hostname to /etc/sane.d/net.conf 15 | * Make sure scanimage can be executed by the user that runs your webserver (for example www-data or apache) 16 | * You can add this line to your /etc/sudoers file (change the user to the corresponding one running the webserver): 17 | `www-data ALL = (root) NOPASSWD: /usr/bin/scanimage` 18 | 19 | ## Configuration 20 | 21 | Currently **Scanner** has no settings, so there is no in-app configuration. 22 | 23 | ## Usage 24 | 25 | **Scanner** adds a new menu entry to the **Files** menu: 26 | 27 | ![](./screenshots/menu.png) 28 | 29 | Selecting this will allow you to specify a filename as usual (default `scan.jpg`): 30 | 31 | ![](./screenshots/scan.png) 32 | 33 | The app will then call `scanimage` to get a scan, and save the resulting image with the specified filename: 34 | 35 | ![](./screenshots/result.png) 36 | ![](./screenshots/show.png) 37 | 38 | ## Known Issues 39 | 40 | * Only the default scanner is used for `scanimage` 41 | * If you have more than one scanner, scanimage will only use the first 42 | 43 | More issues / roadmap details can be found in the [TODO](TODO.md) file 44 | 45 | ## License / Copyright 46 | 47 | Copyright (c) 2016 Greg Sutcliffe (Original author) 48 | Copyright (c) 2016 e-alfred 49 | 50 | This program is free software: you can redistribute it and/or modify 51 | it under the terms of the GNU Affero General Public License as published by 52 | the Free Software Foundation, either version 3 of the License, or 53 | (at your option) any later version. 54 | 55 | This program is distributed in the hope that it will be useful, 56 | but WITHOUT ANY WARRANTY; without even the implied warranty of 57 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 58 | GNU Affero General Public License for more details. 59 | 60 | You should have received a copy of the GNU Affero General Public License 61 | along with this program. If not, see . 62 | 63 | ### Extra files 64 | 65 | Scanner logo obtained from 66 | [Wikimedia Commons](https://commons.wikimedia.org/wiki/File:Gnome-dev-scanner.svg) 67 | (LGPL) 68 | -------------------------------------------------------------------------------- /js/menu.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Nextcloud - scanner 3 | * 4 | * This file is licensed under the Affero General Public License version 3 or 5 | * later. See the COPYING file. 6 | * 7 | * @author Greg Sutcliffe 8 | * @copyright Greg Sutcliffe 2016 9 | */ 10 | 11 | var ScannerMenuPlugin = { 12 | attach: function (menu) { 13 | var plugin = this; 14 | var fileList = menu.fileList; 15 | 16 | menu.addMenuEntry({ 17 | id: 'scanner', 18 | displayName: t('scanner', 'Scan Image'), 19 | templateName: 'scan.jpg', 20 | iconClass: 'icon-filetype-scanner', 21 | fileType: 'file', 22 | actionHandler: function (name) { 23 | plugin.scanOptionsModal(t('scanner', 'Mode'), t('scanner', 'Color'), t('scanner', 'Greyscale'), t('scanner', 'Lineart'), t('scanner', 'Resolution'), t('scanner', 'Please adjust scan parameters'), t('scanner', 'Scan Options'), function (result, formData) { 24 | if (!result) { 25 | OC.Notification.showTemporary(t('scanner', 'Scan aborted.')); 26 | return; 27 | } 28 | var dir = fileList.getCurrentDirectory(); 29 | OC.Notification.showTemporary(t('scanner', 'Scan started.')); 30 | $.ajax({ 31 | url: OC.generateUrl('/apps/scanner/scan'), 32 | async: true, 33 | type: 'POST', 34 | data: { 35 | filename: name, 36 | dir: dir, 37 | scanOptions: formData 38 | }, 39 | success: function (data) { 40 | fileList.changeDirectory(dir, true, true); 41 | OC.Notification.showTemporary(t('scanner', 'Scan complete')); 42 | }, 43 | error: function (data) { 44 | OC.Notification.showTemporary(data.result); 45 | } 46 | }); 47 | }); 48 | 49 | } 50 | }); 51 | }, 52 | 53 | getTemplate: function (tplFile) { 54 | var defer = $.Deferred(); 55 | var self = this; 56 | $.get(OC.filePath('scanner', 'templates', tplFile), function (tmpl) { 57 | self.$messageTemplate = $(tmpl); 58 | defer.resolve(self.$messageTemplate); 59 | }) 60 | .fail(function (jqXHR, textStatus, errorThrown) { 61 | defer.reject(jqXHR.status, errorThrown); 62 | }); 63 | return defer.promise(); 64 | }, 65 | 66 | scanOptionsModal: function (mode, color, greyscale, lineart, resolution, text, title, callback, modal) { 67 | var plugin = this; 68 | return $.when(this.getTemplate('optionsdialog.html')).then(function ($tmpl) { 69 | var dialogName = 'oc-dialog-' + OC.dialogs.dialogsCounter + '-content'; 70 | var dialogId = '#' + dialogName; 71 | var $dlg = $tmpl.octemplate({ 72 | dialog_name: dialogName, 73 | title: title, 74 | message: text, 75 | resolution: resolution, 76 | mode: mode, 77 | color: color, 78 | greyscale: greyscale, 79 | lineart: lineart, 80 | type: 'notice' 81 | }); 82 | if (modal === undefined) { 83 | modal = false; 84 | } 85 | $('body').append($dlg); 86 | 87 | // wrap callback in _.once(): 88 | // only call callback once and not twice (button handler and close 89 | // event) but call it for the close event, if ESC or the x is hit 90 | if (callback !== undefined) { 91 | callback = _.once(callback); 92 | } 93 | 94 | var buttonlist = [{ 95 | text: t('scanner', 'No'), 96 | click: function () { 97 | if (callback !== undefined) { 98 | callback(false, plugin.formArrayToObject($('form', $dlg).serializeArray())); 99 | } 100 | $(dialogId).ocdialog('close'); 101 | } 102 | }, { 103 | text: t('scanner', 'Yes'), 104 | click: function () { 105 | if (callback !== undefined) { 106 | callback(true, plugin.formArrayToObject($('form', $dlg).serializeArray())); 107 | } 108 | $(dialogId).ocdialog('close'); 109 | }, 110 | defaultButton: true 111 | } 112 | ]; 113 | 114 | $(dialogId).ocdialog({ 115 | closeOnEscape: true, 116 | modal: modal, 117 | buttons: buttonlist, 118 | close: function () { 119 | // callback is already fired if Yes/No is clicked directly 120 | if (callback !== undefined) { 121 | callback(false, plugin.formArrayToObject($('form', $dlg).serializeArray())); 122 | } 123 | } 124 | }); 125 | OC.dialogs.dialogsCounter++; 126 | }); 127 | }, 128 | formArrayToObject: function (formArray) { 129 | 130 | var returnArray = {}; 131 | for (var i = 0; i < formArray.length; i++) { 132 | returnArray[formArray[i]['name']] = formArray[i]['value']; 133 | } 134 | return returnArray; 135 | } 136 | }; 137 | OC.Plugins.register('OCA.Files.NewFileMenu', ScannerMenuPlugin); 138 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | # This file is licensed under the Affero General Public License version 3 or 2 | # later. See the COPYING file. 3 | # @author Bernhard Posselt 4 | # @copyright Bernhard Posselt 2016 5 | 6 | # Generic Makefile for building and packaging a Nextcloud app which uses npm and 7 | # Composer. 8 | # 9 | # Dependencies: 10 | # * make 11 | # * which 12 | # * curl: used if phpunit and composer are not installed to fetch them from the web 13 | # * tar: for building the archive 14 | # * npm: for building and testing everything JS 15 | # 16 | # If no composer.json is in the app root directory, the Composer step 17 | # will be skipped. The same goes for the package.json which can be located in 18 | # the app root or the js/ directory. 19 | # 20 | # The npm command by launches the npm build script: 21 | # 22 | # npm run build 23 | # 24 | # The npm test command launches the npm test script: 25 | # 26 | # npm run test 27 | # 28 | # The idea behind this is to be completely testing and build tool agnostic. All 29 | # build tools and additional package managers should be installed locally in 30 | # your project, since this won't pollute people's global namespace. 31 | # 32 | # The following npm scripts in your package.json install and update the bower 33 | # and npm dependencies and use gulp as build system (notice how everything is 34 | # run from the node_modules folder): 35 | # 36 | # "scripts": { 37 | # "test": "node node_modules/gulp-cli/bin/gulp.js karma", 38 | # "prebuild": "npm install && node_modules/bower/bin/bower install && node_modules/bower/bin/bower update", 39 | # "build": "node node_modules/gulp-cli/bin/gulp.js" 40 | # }, 41 | 42 | app_name=$(notdir $(CURDIR)) 43 | build_tools_directory=$(CURDIR)/build/tools 44 | source_build_directory=$(CURDIR)/build/artifacts/source 45 | source_package_name=$(source_build_directory)/$(app_name) 46 | appstore_build_directory=$(CURDIR)/build/artifacts/appstore 47 | appstore_package_name=$(appstore_build_directory)/$(app_name) 48 | npm=$(shell which npm 2> /dev/null) 49 | composer=$(shell which composer 2> /dev/null) 50 | 51 | all: build 52 | 53 | # Fetches the PHP and JS dependencies and compiles the JS. If no composer.json 54 | # is present, the composer step is skipped, if no package.json or js/package.json 55 | # is present, the npm step is skipped 56 | .PHONY: build 57 | build: 58 | ifneq (,$(wildcard $(CURDIR)/composer.json)) 59 | make composer 60 | endif 61 | ifneq (,$(wildcard $(CURDIR)/package.json)) 62 | make npm 63 | endif 64 | ifneq (,$(wildcard $(CURDIR)/js/package.json)) 65 | make npm 66 | endif 67 | 68 | # Installs and updates the composer dependencies. If composer is not installed 69 | # a copy is fetched from the web 70 | .PHONY: composer 71 | composer: 72 | ifeq (, $(composer)) 73 | @echo "No composer command available, downloading a copy from the web" 74 | mkdir -p $(build_tools_directory) 75 | curl -sS https://getcomposer.org/installer | php 76 | mv composer.phar $(build_tools_directory) 77 | php $(build_tools_directory)/composer.phar install --prefer-dist 78 | php $(build_tools_directory)/composer.phar update --prefer-dist 79 | else 80 | composer install --prefer-dist 81 | composer update --prefer-dist 82 | endif 83 | 84 | # Installs npm dependencies 85 | .PHONY: npm 86 | npm: 87 | ifeq (,$(wildcard $(CURDIR)/package.json)) 88 | cd js && $(npm) run build 89 | else 90 | npm run build 91 | endif 92 | 93 | # Removes the appstore build 94 | .PHONY: clean 95 | clean: 96 | rm -rf ./build 97 | 98 | # Same as clean but also removes dependencies installed by composer, bower and 99 | # npm 100 | .PHONY: distclean 101 | distclean: clean 102 | rm -rf vendor 103 | rm -rf node_modules 104 | rm -rf js/vendor 105 | rm -rf js/node_modules 106 | 107 | # Builds the source and appstore package 108 | .PHONY: dist 109 | dist: 110 | make source 111 | make appstore 112 | 113 | # Builds the source package 114 | .PHONY: source 115 | source: 116 | rm -rf $(source_build_directory) 117 | mkdir -p $(source_build_directory) 118 | tar cvzf $(source_package_name).tar.gz ../$(app_name) \ 119 | --exclude-vcs \ 120 | --exclude="../$(app_name)/build" \ 121 | --exclude="../$(app_name)/js/node_modules" \ 122 | --exclude="../$(app_name)/node_modules" \ 123 | --exclude="../$(app_name)/*.log" \ 124 | --exclude="../$(app_name)/js/*.log" \ 125 | 126 | # Builds the source package for the app store, ignores php and js tests 127 | .PHONY: appstore 128 | appstore: 129 | rm -rf $(appstore_build_directory) 130 | mkdir -p $(appstore_build_directory) 131 | tar cvzf $(appstore_package_name).tar.gz ../$(app_name) \ 132 | --exclude-vcs \ 133 | --exclude="../$(app_name)/build" \ 134 | --exclude="../$(app_name)/tests" \ 135 | --exclude="../$(app_name)/Makefile" \ 136 | --exclude="../$(app_name)/*.log" \ 137 | --exclude="../$(app_name)/phpunit*xml" \ 138 | --exclude="../$(app_name)/composer.*" \ 139 | --exclude="../$(app_name)/js/node_modules" \ 140 | --exclude="../$(app_name)/js/tests" \ 141 | --exclude="../$(app_name)/js/test" \ 142 | --exclude="../$(app_name)/js/*.log" \ 143 | --exclude="../$(app_name)/js/package.json" \ 144 | --exclude="../$(app_name)/js/bower.json" \ 145 | --exclude="../$(app_name)/js/karma.*" \ 146 | --exclude="../$(app_name)/js/protractor.*" \ 147 | --exclude="../$(app_name)/package.json" \ 148 | --exclude="../$(app_name)/bower.json" \ 149 | --exclude="../$(app_name)/karma.*" \ 150 | --exclude="../$(app_name)/protractor\.*" \ 151 | --exclude="../$(app_name)/.*" \ 152 | --exclude="../$(app_name)/js/.*" \ 153 | 154 | # Command for running JS and PHP tests. Works for package.json files in the js/ 155 | # and root directory. If phpunit is not installed systemwide, a copy is fetched 156 | # from the internet 157 | .PHONY: test 158 | test: 159 | ifneq (,$(wildcard $(CURDIR)/js/package.json)) 160 | cd js && $(npm) run test 161 | endif 162 | ifneq (,$(wildcard $(CURDIR)/package.json)) 163 | $(npm) run test 164 | endif 165 | ifeq (, $(shell which phpunit 2> /dev/null)) 166 | @echo "No phpunit command available, downloading a copy from the web" 167 | mkdir -p $(build_tools_directory) 168 | curl -sSL https://phar.phpunit.de/phpunit.phar -o $(build_tools_directory)/phpunit.phar 169 | php $(build_tools_directory)/phpunit.phar -c phpunit.xml 170 | php $(build_tools_directory)/phpunit.phar -c phpunit.integration.xml 171 | else 172 | phpunit -c phpunit.xml --coverage-clover build/php-unit.clover 173 | phpunit -c phpunit.integration.xml --coverage-clover build/php-unit.clover 174 | endif --------------------------------------------------------------------------------