summaryrefslogtreecommitdiffstats
path: root/src/scanner-session/scannersession.vala
diff options
context:
space:
mode:
Diffstat (limited to 'src/scanner-session/scannersession.vala')
-rw-r--r--src/scanner-session/scannersession.vala22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/scanner-session/scannersession.vala b/src/scanner-session/scannersession.vala
index eeb02e3..23db939 100644
--- a/src/scanner-session/scannersession.vala
+++ b/src/scanner-session/scannersession.vala
@@ -78,6 +78,28 @@ public class ScannerSessionImplementation {
return true;
}
+ private ScannerSessionCodeType getCodeType(string scannerdata){
+ if(scannerdata.has_prefix("USER ")){
+ return ScannerSessionCodeType.USER;
+ } else if(scannerdata == "GUEST") {
+ return ScannerSessionCodeType.GUEST;
+ } else if(scannerdata == "UNDO") {
+ return ScannerSessionCodeType.UNDO;
+ } else if(scannerdata == "LOGOUT") {
+ return ScannerSessionCodeType.LOGOUT;
+ } else {
+ //Handle EAN Code
+ uint64 id = 0;
+ scannerdata.scanf("%llu", out id);
+
+ /* check if scannerdata has valid format */
+ if(scannerdata != "%llu".printf(id) && scannerdata != "%08llu".printf(id) && scannerdata != "%013llu".printf(id)) {
+ return ScannerSessionCodeType.UNKNOWN;
+ }
+ return ScannerSessionCodeType.EAN;
+ }
+ }
+
private void play_audio(AudioType audioType){
switch (audioType) {
case AudioType.ERROR: