unit Configuration; interface uses IniFiles; type TConfiguration = class private BaseURL : string; public Sted : String; //Parametere for label print LabelType : integer; XPosRute : integer; YPosRute : integer; FontSizeRute : integer; FontSizeRuteLille : integer; XPosKommentar : integer; YPosKommentar : integer; FontSizeKommentar : integer; XPosBoghandler : integer; YPosBoghandler : integer; FontSizeBoghandler : integer; XPosKoreliste : integer; YPosKoreliste : integer; FontSizeKoreliste : integer; FontSizeKorelisteLille : integer; XPosSorteringsfelt1 : integer; YPosSorteringsfelt1 : integer; FontSizeSorteringsfelt1 : integer; XPosSorteringsfelt2 : integer; YPosSorteringsfelt2 : integer; FontSizeSorteringsfelt2 : integer; XPosSmskode : integer; YPosSmskode : integer; FontSizeSmskode : integer; FarveNormal, FarveReturDAO, FarveReturBoghandler, FarveBudlevering, FarvePakkeshoplevering, FarveReturPakkeshop, FarveIndlevering : String; TitelNormal, TitelReturDAO, TitelReturBoghandler, TitelBudlevering, TitelPakkeshoplevering, TitelReturPakkeshop, TitelIndlevering : String; UrlNormal, UrlReturDAO, UrlReturBoghandler, UrlBudlevering, UrlManglendeScanninger, UrlPakkeshoplevering, UrlReturPakkeshop, UrlPakkeshopManglendeScanninger, UrlPakkeshopManglendeReturScanninger,UrlIndleveringsPakke, UrlIndleveringsPakkeManglendeScanninger,UrlEKLoverforsel, URLOmdirigerTilPakkeshop : String; URLPrintLabel : String; UrlEKLoverforselPakkeshop : String; UrlFindPakketype, UrlSendPrograminfo: String; AlarmLyd : String; ScannetOkLyd : String; ScannetOkStorLyd : String; ScannetOkTilTjekkodeLyd : String; PrinterNavn : String; TjekPrinter : String; SporgEfterBoghandler : String; ScanTjekkode : String; ScanTjekkodeAutomatik : string; TjekUrls : String; TestFunktionen : String; procedure ReadFromInifile( iniFile: TIniFile); function InjectURL(Url : String) : String; end; implementation uses Utils, SysUtils; procedure TConfiguration.ReadFromInifile( iniFile: TIniFile); begin BaseURL := 'http://omdeling.info/'; with iniFile do begin FarveNormal := ReadString('Settings','FarveNormal','D8D8D8'); TitelNormal := ReadString('Settings','TitelNormal','Modtagelse af DAO NAT X-PRESS pakker'); FarveReturDAO := ReadString('Settings','FarveReturDAO','A9F5A9'); TitelReturDAO := ReadString('Settings','TitelReturDAO','Returforsendelse fra DAO'); FarveReturBoghandler := ReadString('Settings','FarveReturBoghandler','F2F5A9'); TitelReturBoghandler := ReadString('Settings','TitelReturBoghandler','Returforsendelse fra boghandler'); FarveBudlevering := ReadString('Settings','FarveBudlevering','2E9AFE'); TitelBudlevering := ReadString('Settings','TitelBudlevering','Modtagelse af DAO DIREKTE pakker'); FarvePakkeshoplevering := ReadString('Settings','FarvePakkeshoplevering','99FFFF'); TitelPakkeshoplevering := ReadString('Settings','TitelPakkeshoplevering','Modtagelse af DAO PAKKESHOP pakker'); FarveReturPakkeshop := ReadString('Settings','FarveReturPakkeshop','99FFCC'); TitelReturPakkeshop := ReadString('Settings','TitelReturPakkeshop','Returforsendelse fra pakkeshop'); FarveIndlevering := ReadString('Settings', 'FarveIndlevering', 'E5B2CB'); TitelIndlevering := ReadString('Settings', 'TitelIndlevering', 'Indleveringskode'); SporgEfterBoghandler := ReadString('Settings','SporgEfterBoghandler','0'); ScanTjekkode := ReadString('Settings','ScanTjekkode','0'); ScanTjekkodeAutomatik := ReadString('Settings','ScanTjekkodeAutomatik','1'); //Scanningtype := ReadString('Settings','Scanningtype','A'); //Scanningstype skal ikke læses fra config //Pakketype := ReadString('Settings','Pakketype','0'); //Pakketype Skal ikke læses fra config TestFunktionen := ReadString('Settings','TestFunktion','0'); AlarmLyd := ReadString('Settings','AlarmLyd','Sounds\Alarm.wav'); ScannetOkLyd := ReadString('Settings','ScannetOkLyd','Sounds\Ok.wav'); ScannetOkStorLyd := ReadString('Settings','ScannetOkStorLyd','Sounds\Ok_stor.wav'); ScannetOkTilTjekkodeLyd := ReadString('Settings','ScannetOkTilTjekkodeLyd','Sounds\Ok_til_tjekkode.wav'); PrinterNavn := ReadString('Settings','PrinterNavn',''); TjekPrinter := ReadString('Settings','TjekPrinter','1'); TjekUrls := ReadString('Settings','TjekUrls','2'); LabelType := ReadInteger('Settings','LabelType',1); if LabelType = 0 then begin XPosRute := ReadInteger('RuteBred','XPos',1); YPosRute := ReadInteger('RuteBred','YPos',1); FontSizeRute := ReadInteger('RuteBred','FontSize',72); FontSizeRuteLille := ReadInteger('RuteBred','FontSizeLille',20); XPosKommentar := ReadInteger('KommentarBred','XPos',1); YPosKommentar := ReadInteger('KommentarBred','YPos',250); FontSizeKommentar := ReadInteger('KommentarBred','FontSize',16); XPosBoghandler := ReadInteger('BoghandlerBred','XPos',1); YPosBoghandler := ReadInteger('BoghandlerBred','YPos',400); FontSizeBoghandler := ReadInteger('BoghandlerBred','FontSize',16); XPosKoreliste := ReadInteger('KorelisteSmal','XPos',1); YPosKoreliste := ReadInteger('KorelisteSmal','YPos',100); FontSizeKoreliste := ReadInteger('KorelisteSmal','FontSize',72); FontSizeKorelisteLille := ReadInteger('KorelisteSmal','FontSizeLille',20); XPosSorteringsfelt1 := ReadInteger('Sorteringsfelt1Smal','XPos',700); YPosSorteringsfelt1 := ReadInteger('Sorteringsfelt1Smal','YPos',100); FontSizeSorteringsfelt1 := ReadInteger('Sorteringsfelt1Smal','FontSize',16); XPosSorteringsfelt2 := ReadInteger('Sorteringsfelt2Smal','XPos',700); YPosSorteringsfelt2 := ReadInteger('Sorteringsfelt2Smal','YPos',150); FontSizeSorteringsfelt2 := ReadInteger('Sorteringsfelt2Smal','FontSize',16); XPosSmskode := ReadInteger('SmskodeSmal','XPos',1); YPosSmskode := ReadInteger('SmskodeSmal','YPos',300); FontSizeSmskode := ReadInteger('SmskodeSmal','FontSize',32); end else begin XPosRute := ReadInteger('RuteSmal','XPos',1); YPosRute := ReadInteger('RuteSmal','YPos',1); FontSizeRute := ReadInteger('RuteSmal','FontSize',72); FontSizeRuteLille := ReadInteger('RuteSmal','FontSizeLille',20); XPosKommentar := ReadInteger('KommentarSmal','XPos',1); YPosKommentar := ReadInteger('KommentarSmal','YPos',250); FontSizeKommentar := ReadInteger('KommentarSmal','FontSize',16); XPosBoghandler := ReadInteger('BoghandlerSmal','XPos',1); YPosBoghandler := ReadInteger('BoghandlerSmal','YPos',400); FontSizeBoghandler := ReadInteger('BoghandlerSmal','FontSize',16); XPosKoreliste := ReadInteger('KorelisteSmal','XPos',1); YPosKoreliste := ReadInteger('KorelisteSmal','YPos',100); FontSizeKoreliste := ReadInteger('KorelisteSmal','FontSize',72); FontSizeKorelisteLille := ReadInteger('KorelisteSmal','FontSizeLille',20); XPosSorteringsfelt1 := ReadInteger('Sorteringsfelt1Smal','XPos',700); YPosSorteringsfelt1 := ReadInteger('Sorteringsfelt1Smal','YPos',100); FontSizeSorteringsfelt1 := ReadInteger('Sorteringsfelt1Smal','FontSize',16); XPosSorteringsfelt2 := ReadInteger('Sorteringsfelt2Smal','XPos',700); YPosSorteringsfelt2 := ReadInteger('Sorteringsfelt2Smal','YPos',150); FontSizeSorteringsfelt2 := ReadInteger('Sorteringsfelt2Smal','FontSize',16); XPosSmskode := ReadInteger('SmskodeSmal','XPos',1); YPosSmskode := ReadInteger('SmskodeSmal','YPos',300); FontSizeSmskode := ReadInteger('SmskodeSmal','FontSize',32); if LabelType = 2 then // test på alm. printer kræver at XY-positionerne ganges med 3 begin XPosRute := XPosRute * 3; YPosRute := YPosRute * 3; XPosKommentar := XPosKommentar * 3; YPosKommentar := YPosKommentar * 3; XPosBoghandler := XPosBoghandler * 3; YPosBoghandler := YPosBoghandler * 3; XPosKoreliste := XPosKoreliste * 3; YPosKoreliste := YPosKoreliste * 3; XPosSorteringsfelt1 := XPosSorteringsfelt1 * 3; YPosSorteringsfelt1 := YPosSorteringsfelt1 * 3; XPosSorteringsfelt2 := XPosSorteringsfelt2 * 3; YPosSorteringsfelt2 := YPosSorteringsfelt2 * 3; XPosSmskode := XPosSmskode * 3; YPosSmskode := YPosSmskode * 3; end; end; end; //With ... do UrlFindPakketype := BaseURL + '/webservices/bogpakkekontrol/FindPakketype.php?stregkode=%s'; UrlFindPakketype := InjectURL(UrlFindPakketype); UrlSendPrograminfo := BaseURL + '/webservices/bogpakkekontrol/SendPrograminfo.php?programnavn=%s&sted=%s&scanningtype=%s&infotype=%s&info=%s'; UrlSendPrograminfo := InjectURL(UrlSendPrograminfo); UrlNormal := BaseURL + '/webservices/bogpakkekontrol/bogpakkekontrol.php?sted=%s&pakkenummer=%s&boghandlernummer=%s&tjekkode=%s'; UrlNormal := InjectURL(UrlNormal); UrlReturDAO := BaseURL + '/webservices/bogpakkekontrol/bogpakkekontrol.php?sted=%s&pakkenummer=%s&boghandlernummer=%s&returpakketype=%s&pakkestorrelse=%s'; UrlReturDAO := InjectURL(UrlReturDAO); UrlReturBoghandler := BaseURL + '/webservices/bogpakkekontrol/bogpakkekontrol.php?sted=%s&pakkenummer=%s&boghandlernummer=%s&returpakketype=%s&pakkestorrelse=%s'; UrlReturBoghandler := InjectURL(UrlReturBoghandler); UrlBudlevering := BaseURL + '/webservices/bogpakkekontrol/bogpakkekontrol.php?sted=%s&pakkenummer=%s&leveringstype=%s&pakkestorrelse=%s'; UrlBudlevering := InjectURL(UrlBudlevering); UrlManglendeScanninger := BaseURL + '/webservices/bogpakkekontrol/bogpakkemanglendescanninger.php?sted=%s&type=%s'; UrlManglendeScanninger := InjectURL(UrlManglendeScanninger); UrlEKLoverforsel := BaseURL + '/webservices/bogpakkekontrol/bogpakkertilekl.php?sted=%s'; UrlEKLoverforsel := InjectURL(UrlEKLoverforsel); UrlEKLoverforselPakkeshop := BaseURL + '/webservices/pakkeshop/pakkertilekl.php?sted=%s'; UrlEKLoverforselPakkeshop := InjectURL(UrlEKLoverforselPakkeshop); UrlPakkeshoplevering := BaseURL + '/webservices/pakkeshop/pakkekontrol.php?sted=%s&stregkode=%s&tjekkode=%s'; UrlPakkeshoplevering := InjectURL(UrlPakkeshoplevering); UrlReturPakkeshop := BaseURL + '/webservices/pakkeshop/returpakkekontrol.php?sted=%s&stregkode=%s'; UrlReturPakkeshop := InjectURL(UrlReturPakkeshop); UrlPakkeshopManglendeScanninger := BaseURL + '/webservices/pakkeshop/pakkemanglendescanninger.php?sted=%s'; UrlPakkeshopManglendeScanninger := InjectURL(UrlPakkeshopManglendeScanninger); UrlPakkeshopManglendeReturScanninger := BaseURL + '/webservices/pakkeshop/pakkemanglendereturscanninger.php?sted=%s'; UrlPakkeshopManglendeReturScanninger := InjectURL(UrlPakkeshopManglendeReturScanninger); UrlIndleveringsPakke := BaseURL + '/webservices/pakkeshop/PakkekontrolIndleveringskode.php?sted=%s&pakkekode=%s'; UrlIndleveringsPakke := InjectURL(UrlIndleveringsPakke); UrlIndleveringsPakkeManglendeScanninger := BaseURL + '/webservices/pakkeshop/IndleveringsPakkeManglendeScanninger.php?sted=%s'; UrlIndleveringsPakkeManglendeScanninger := InjectURL(UrlIndleveringsPakkeManglendeScanninger); URLOmdirigerTilPakkeshop := BaseURL + '/webservices/pakkeshop/PakkeKontrolOmdirigerTilPakkeshop.php?sted=%s&stregkode=%s'; URLOmdirigerTilPakkeshop := InjectURL(URLOmdirigerTilPakkeshop); URLPrintLabel := BaseURL + '/BogpakkeKontrol/PrintLabel.php?stregkode=%s'; URLPrintLabel := InjectURL(URLPrintLabel); //Finally check for files: if not FileExists(AlarmLyd) then begin AlarmLyd := ''; end; if not FileExists(ScannetOkLyd) then begin ScannetOkLyd := ''; end; if not FileExists(ScannetOkStorLyd) then begin ScannetOkStorLyd := ''; end; if not FileExists(ScannetOkTilTjekkodeLyd) then begin ScannetOkTilTjekkodeLyd := ''; end; end; function TConfiguration.InjectURL(Url : String) : String; begin Url := Url + '&ver=' + TUtils.URLEncode( TUtils.Sto_GetFmtFileVersion('')); Url := Url + '&host=' + TUtils.URLEncode( TUtils.GetComputerNameHelper()); Url := Url + '&user=' + TUtils.URLEncode( TUtils.GetCurrentUserName()); Result := Url; end; end.