Multilang: EN and ES cultures support
This commit is contained in:
@@ -6,6 +6,10 @@ include_once "ui.php";
|
|||||||
include_once "console.php";
|
include_once "console.php";
|
||||||
include_once "scanner.php";
|
include_once "scanner.php";
|
||||||
|
|
||||||
|
include_once "multilang.php";
|
||||||
|
MultiLang::LoadFile("ui");
|
||||||
|
|
||||||
|
|
||||||
function RenderDocument($filePath){
|
function RenderDocument($filePath){
|
||||||
$render="";
|
$render="";
|
||||||
if($filePath!=null){
|
if($filePath!=null){
|
||||||
@@ -13,12 +17,12 @@ function RenderDocument($filePath){
|
|||||||
$filePathFixed=htmlentities($filePath,ENT_HTML5, "UTF-8");
|
$filePathFixed=htmlentities($filePath,ENT_HTML5, "UTF-8");
|
||||||
$filenameFixed=htmlentities($filename,ENT_HTML5, "UTF-8");
|
$filenameFixed=htmlentities($filename,ENT_HTML5, "UTF-8");
|
||||||
$render.='<div><a href="'.$filePathFixed.'" class="button" download="'.$filenameFixed.'">'.
|
$render.='<div><a href="'.$filePathFixed.'" class="button" download="'.$filenameFixed.'">'.
|
||||||
'Download</a></div>'."\n";
|
MultiLang::GetString("Download").'</a></div>'."\n";
|
||||||
$render.='<iframe src="'.$filePathFixed.'" '.
|
$render.='<iframe src="'.$filePathFixed.'" '.
|
||||||
'class="previewDoc" ></iframe>';
|
'class="previewDoc" ></iframe>';
|
||||||
}else{
|
}else{
|
||||||
$render.='<div><button class="button" disabled="disabled">'.
|
$render.='<div><button class="button" disabled="disabled">'.
|
||||||
'Download</button></div>'."\n";
|
MultiLang::GetString("Download").'</button></div>'."\n";
|
||||||
$render.='<iframe src="about:blank" '.
|
$render.='<iframe src="about:blank" '.
|
||||||
'class="previewDoc" ></iframe>';
|
'class="previewDoc" ></iframe>';
|
||||||
}
|
}
|
||||||
@@ -55,19 +59,19 @@ if(RequestParm("btnScan",false)){
|
|||||||
|
|
||||||
// Render Form
|
// Render Form
|
||||||
$formFields="";
|
$formFields="";
|
||||||
$formFields.=RenderFieldInfo("Scanner",$Scanner["ScanModel"]);
|
$formFields.=RenderFieldInfo(MultiLang::GetString("Scanner"),$Scanner["ScanModel"]);
|
||||||
$formFields.=RenderFieldCombo("Resolution","ddlResolution",$Resolutions,$Resolution);
|
$formFields.=RenderFieldCombo(MultiLang::GetString("Resolution"),"ddlResolution",$Resolutions,$Resolution);
|
||||||
$formFields.=RenderFieldCombo("Format","ddlFormat",$Formats,$Format);
|
$formFields.=RenderFieldCombo(MultiLang::GetString("Format"),"ddlFormat",$Formats,$Format);
|
||||||
$formFields.=RenderFieldCombo("Size","ddlSize",$Sizes,$Size);
|
$formFields.=RenderFieldCombo(MultiLang::GetString("Size"),"ddlSize",$Sizes,$Size);
|
||||||
//$formFields.=RenderFieldCheckText("Cropping","chkCrop",$Crop,"txtCropFuzz",$CropFuzz);
|
//$formFields.=RenderFieldCheckText("Cropping","chkCrop",$Crop,"txtCropFuzz",$CropFuzz);
|
||||||
$formFields.=RenderFieldButton("","btnScan","Scan","var elem=document.getElementById('divLoadBack');elem.style.display='';");
|
$formFields.=RenderFieldButton("","btnScan",MultiLang::GetString("Scan"),"var elem=document.getElementById('divLoadBack');elem.style.display='';");
|
||||||
$formFields.=RenderHidden("hidScanDevice",$Scanner["ScanDevice"]);
|
$formFields.=RenderHidden("hidScanDevice",$Scanner["ScanDevice"]);
|
||||||
$formFields.=RenderHidden("hidScanModel",$Scanner["ScanModel"]);
|
$formFields.=RenderHidden("hidScanModel",$Scanner["ScanModel"]);
|
||||||
$columns="";
|
$columns="";
|
||||||
$columns.=renderDiv("divColLeft",$formFields);
|
$columns.=renderDiv("divColLeft",$formFields);
|
||||||
$columns.=renderDiv("divColRight",RenderDocument($DestFile));
|
$columns.=renderDiv("divColRight",RenderDocument($DestFile));
|
||||||
$columns.=RenderCommandLog();
|
$columns.=RenderCommandLog();
|
||||||
$columns.=RenderDiv("divLoadBack",RenderDiv("divLoading","Loading","divLoading"),"divLoadBack","display:none;");
|
$columns.=RenderDiv("divLoadBack",RenderDiv("divLoading",MultiLang::GetString("Loading"),"divLoading"),"divLoadBack","display:none;");
|
||||||
echo RenderForm("frmMain",$columns);
|
echo RenderForm("frmMain",$columns);
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
58
code/multilang.php
Normal file
58
code/multilang.php
Normal file
@@ -0,0 +1,58 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
######################################################
|
||||||
|
## Copyright (c) 2015 Valeriano Alfonso ##
|
||||||
|
######################################################
|
||||||
|
|
||||||
|
|
||||||
|
################################
|
||||||
|
# MultiLang
|
||||||
|
#
|
||||||
|
class MultiLang {
|
||||||
|
public static $defaultLang="en";
|
||||||
|
|
||||||
|
private static $literals=array();
|
||||||
|
public static function GetString($string){
|
||||||
|
if(!isset(self::$literals[$string])) { return $string; }
|
||||||
|
return self::$literals[$string];
|
||||||
|
}
|
||||||
|
|
||||||
|
private static function LoadFileLang($file,$lang){
|
||||||
|
$fullFilename="literals/".$file.".".$lang.".json";
|
||||||
|
if(file_exists($fullFilename)){
|
||||||
|
$fileContents=@file_get_contents($fullFilename);
|
||||||
|
$newLiterals=json_decode($fileContents,true);
|
||||||
|
if(is_array($newLiterals)){
|
||||||
|
self::$literals=array_merge(self::$literals,$newLiterals);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function LoadFile($file="text"){
|
||||||
|
$lang=self::GetUserLang();
|
||||||
|
if(!self::LoadFileLang($file,$lang)){
|
||||||
|
self::LoadFileLang($file,self::$defaultLang);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private static $lang=null;
|
||||||
|
|
||||||
|
public static function GetUserLang(){
|
||||||
|
if(self::$lang!=null){ return self::$lang; }
|
||||||
|
$lang = isset($_COOKIE['lang']) ? $_COOKIE['lang'] : "";
|
||||||
|
if ($lang == "") {
|
||||||
|
if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])){
|
||||||
|
$lang = $_SERVER['HTTP_ACCEPT_LANGUAGE'];
|
||||||
|
} else {
|
||||||
|
$lang = self::$defaultLang;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$lang = substr($lang, 0, 2);
|
||||||
|
self::$lang = $lang;
|
||||||
|
return $lang;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
################################
|
||||||
10
literals/ui.en.json
Normal file
10
literals/ui.en.json
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
{
|
||||||
|
"Download": "Download",
|
||||||
|
"Scanner": "Scanner",
|
||||||
|
"Resolution": "Resolution",
|
||||||
|
"Format": "Format",
|
||||||
|
"Size": "Size",
|
||||||
|
"Scan": "Scan",
|
||||||
|
"Loading": "Loading",
|
||||||
|
"": ""
|
||||||
|
}
|
||||||
10
literals/ui.es.json
Normal file
10
literals/ui.es.json
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
{
|
||||||
|
"Download": "Descargar",
|
||||||
|
"Scanner": "Escaner",
|
||||||
|
"Resolution": "Resolucion",
|
||||||
|
"Format": "Formato",
|
||||||
|
"Size": "Tamaño",
|
||||||
|
"Scan": "Escanear",
|
||||||
|
"Loading": "Cargando",
|
||||||
|
"": ""
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user