Author: remi Date: 2009-06-19 12:36:12 +0200 (Fri, 19 Jun 2009) New Revision: 4834
Added: software_suite_v3/smart-core/smart-server/trunk/data/web_interface/user_01/css/menu.css software_suite_v3/smart-core/smart-server/trunk/data/web_interface/user_01/js/common.js software_suite_v3/smart-core/smart-server/trunk/data/web_interface/user_01/xsl/index.xsl software_suite_v3/smart-core/smart-server/trunk/resources/07_web_interfaces/01_resourceWIUser01.py Modified: software_suite_v3/smart-core/smart-server/trunk/data/web_interface/user_01/img/menu_center_enable.png software_suite_v3/smart-core/smart-server/trunk/data/web_interface/user_01/img/menu_left_enable.png software_suite_v3/smart-core/smart-server/trunk/data/web_interface/user_01/img/menu_right_enable.png Log: * updated 3 images * added menu interface (http://127.0.0.1:270/user/) Added: software_suite_v3/smart-core/smart-server/trunk/data/web_interface/user_01/css/menu.css =================================================================== --- software_suite_v3/smart-core/smart-server/trunk/data/web_interface/user_01/css/menu.css (rev 0) +++ software_suite_v3/smart-core/smart-server/trunk/data/web_interface/user_01/css/menu.css 2009-06-19 10:36:12 UTC (rev 4834) @@ -0,0 +1,109 @@ +div.ContentView{ + position:absolute; + left:0px; + top:0px; + width:855px; + height:25px; + display:table; + margin-top:85px; + margin-left:50px; + margin-right:50px; + background-color:#EFEFEF; + color:#EFEFEF; +} + +a.menuLeftEnable{ + float:left; + margin-top:0px; + width:171px; + height:65px; + display:table; + line-height:58px; + text-decoration:none; + background-image:url(/data/web_interface/user_01/img/menu_left_enable.png); + font-size:14px; + font-family:Verdana, Bitstream Vera Sans; + color:white; + font-weight:bold; + text-align:center; +} + +a.menuLeftActivate{ + float:left; + margin-top:0px; + width:171px; + height:65px; + display:table; + line-height:58px; + text-decoration:none; + background-image:url(/data/web_interface/user_01/img/menu_left_activate.png); + font-size:14px; + font-family:Verdana, Bitstream Vera Sans; + color:white; + font-weight:bold; + text-align:center; +} + +a.menuCenterEnable{ + float:left; + margin-top:0px; + width:171px; + height:65px; + display:table; + line-height:58px; + text-decoration:none; + background-image:url(/data/web_interface/user_01/img/menu_center_enable.png); + font-size:14px; + font-family:Verdana, Bitstream Vera Sans; + color:white; + font-weight:bold; + text-align:center; +} + +a.menuCenterActivate{ + float:left; + margin-top:0px; + width:171px; + height:65px; + display:table; + line-height:58px; + text-decoration:none; + background-image:url(/data/web_interface/user_01/img/menu_center_activate.png); + font-size:14px; + font-family:Verdana, Bitstream Vera Sans; + color:white; + font-weight:bold; + text-align:center; +} + +a.menuRightEnable{ + float:left; + margin-top:0px; + width:171px; + height:65px; + display:table; + line-height:58px; + text-decoration:none; + background-image:url(/data/web_interface/user_01/img/menu_right_enable.png); + font-size:14px; + font-family:Verdana, Bitstream Vera Sans; + color:white; + font-weight:bold; + text-align:center; +} + +a.menuRightActivate{ + float:left; + margin-top:0px; + width:171px; + height:65px; + display:table; + line-height:58px; + text-decoration:none; + background-image:url(/data/web_interface/user_01/img/menu_right_activate.png); + font-size:14px; + font-family:Verdana, Bitstream Vera Sans; + color:white; + font-weight:bold; + text-align:center; +} \ No newline at end of file Modified: software_suite_v3/smart-core/smart-server/trunk/data/web_interface/user_01/img/menu_center_enable.png =================================================================== (Binary files differ) Modified: software_suite_v3/smart-core/smart-server/trunk/data/web_interface/user_01/img/menu_left_enable.png =================================================================== (Binary files differ) Modified: software_suite_v3/smart-core/smart-server/trunk/data/web_interface/user_01/img/menu_right_enable.png =================================================================== (Binary files differ) Added: software_suite_v3/smart-core/smart-server/trunk/data/web_interface/user_01/js/common.js =================================================================== --- software_suite_v3/smart-core/smart-server/trunk/data/web_interface/user_01/js/common.js (rev 0) +++ software_suite_v3/smart-core/smart-server/trunk/data/web_interface/user_01/js/common.js 2009-06-19 10:36:12 UTC (rev 4834) @@ -0,0 +1,278 @@ +/** + * + */ +function fillHelpBox() +{ + document.getElementById("helpBox").innerHTML = Wiky.toHtml(document.getElementById("req_helpContent").value); +} + +/** + * + */ +function setpng(img) +{ + if (document.all && (IEver=parseFloat(navigator.appVersion.split("MSIE")[1])) && (IEver>=5.5) && (IEver<7) && document.body.filters && img) + { + var imgName = img.src.toUpperCase(); + if (imgName.substring(imgName.length-3,imgName.length) == "PNG") + { + img.outerHTML= "<span "+(img.id?"id='"+img.id+"' ":"")+(img.className?"class='"+img.className+"' ":"")+(img.title?"title=\""+img.title+"\" ":"") + +"style=\"width:"+img.width+"px;height:"+img.height+"px;"+(img.align=="left"?"float:left;":(img.align=="right"?"float:right;":"")) + +(img.parentElement.href?"cursor:hand;":"")+"display:inline-block;"+img.style.cssText+";" + +"filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+img.src+"',sizingMethod='scale');\"></span>"; + } + } +} + +/** + * + */ +function formatValue(value) +{ + value = value.replace(/(\r?\n)/g, '[RETURN]'); + value = value.replace('/\&/g', '&&'); + value = value.replace(/\|/g, '[PIPE]'); + value = value.replace(/\=/g, '[EQUAL]'); + value = value.replace(/\&/g, '[AMP]'); + return value; +} + +/** + * + */ +function computeParameters() +{ + var result = ''; + var elements = document.getElementsByTagName('input'); + for (var i = 0; i < elements.length; i++) + { + var element = elements[i]; + if (element.id.indexOf('req_', 0) == 0) + { + if (element.type == 'checkbox') + { + result += element.id + '=' + element.checked + '|'; + } + else if (element.type == 'radio') + { + if (element.checked) + { + result += element.id + '=' + formatValue(element.value) + '|'; + } + } + else + { + result += element.id + '=' + formatValue(element.value) + '|'; + } + } + } + var elements = document.getElementsByTagName('select'); + for (var i = 0; i < elements.length; i++) + { + var element = elements[i]; + if (element.id.indexOf('req_', 0) == 0) + { + result += element.id + '=' + formatValue(element.value) + '|'; + } + } + var helptext = ""; + if (document.getElementById("req_helpContent") != null) + { + helptext = document.getElementById("req_helpContent").value; + } + result += 'req_helpContent=' + formatValue(helptext) + '|'; + return result; +} + +/** + * + */ +function postRequest(url, values) +{ + var httpRequest = false; + var isIe = false; + var result = new Array(false, ""); + if (window.XMLHttpRequest) + { // Mozilla, Safari,... + httpRequest = new XMLHttpRequest(); + if (httpRequest.overrideMimeType) + { + httpRequest.overrideMimeType('text/xml'); + } + } + else + { + isIe = true; + if (window.ActiveXObject) + { // IE + try + { + httpRequest = new ActiveXObject("Msxml2.XMLHTTP"); + } + catch (e) + { + try + { + httpRequest = new ActiveXObject("Microsoft.XMLHTTP"); + } + catch (e){} + } + } + } + if (!httpRequest) + { + alert('Cannot create XMLHTTP instance'); + return result; + } + var data = ""; + for (var property in values) + { + if (values.hasOwnProperty(property)) + { + if (data.length > 0) + { + data += "&"; + } + data += property + "=" + values[property]; + } + } + httpRequest.open('POST', url, false); + var stateChangeFunction = function() { + if(httpRequest.readyState == 4) + { + if (httpRequest.status == 200) + { + result[0] = true; + result[1] = httpRequest.responseText; + } + } + } + if (isIe) + { + httpRequest.onreadystatechange = stateChangeFunction; + } + else + { + httpRequest.onload = stateChangeFunction; + } + + try + { + httpRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); + httpRequest.send(data); + } + catch (e) + { + return result; + } + return result; +} + +/** + * + */ +function getRequest(url, values) +{ + var httpRequest = false; + var isIe = false; + var result = false; + if (window.XMLHttpRequest) + { // Mozilla, Safari,... + httpRequest = new XMLHttpRequest(); + if (httpRequest.overrideMimeType) + { + httpRequest.overrideMimeType('text/xml'); + } + } + else + { + isIe = true; + if (window.ActiveXObject) + { // IE + try + { + httpRequest = new ActiveXObject("Msxml2.XMLHTTP"); + } + catch (e) + { + try + { + httpRequest = new ActiveXObject("Microsoft.XMLHTTP"); + } + catch (e){} + } + } + } + if (!httpRequest) + { + alert('Cannot create XMLHTTP instance'); + return result; + } + url += "?rndTag=" + Math.random() ; + for (var property in values) + { + if (values.hasOwnProperty(property)) + { + url += "&" + property + "=" + values[property]; + } + } + httpRequest.open('GET', url, false); + var stateChangeFunction = function() { + if(httpRequest.readyState == 4) + { + if (httpRequest.status == 200) + { + result = true; + } + } + } + if (isIe) + { + httpRequest.onreadystatechange = stateChangeFunction; + } + else + { + httpRequest.onload = stateChangeFunction; + } + try + { + httpRequest.send(null); + } + catch (e) + { + return result; + } + return result; +} + +/** + * + */ +function gotoLocation(url, values) +{ + url += "?"; + for (var property in values) + { + if (values.hasOwnProperty(property)) + { + url += property + "=" + values[property] + "&"; + } + } + window.location = url; +} + +/** + * + */ +function showPopup(url, values) +{ + url += "?"; + for (var property in values) + { + if (values.hasOwnProperty(property)) + { + url += property + "=" + values[property] + "&"; + } + } + window.open(url); +} Added: software_suite_v3/smart-core/smart-server/trunk/data/web_interface/user_01/xsl/index.xsl =================================================================== --- software_suite_v3/smart-core/smart-server/trunk/data/web_interface/user_01/xsl/index.xsl (rev 0) +++ software_suite_v3/smart-core/smart-server/trunk/data/web_interface/user_01/xsl/index.xsl 2009-06-19 10:36:12 UTC (rev 4834) @@ -0,0 +1,152 @@ +<?xml version="1.0" encoding="UTF-8"?> +<xsl:stylesheet version="1.0" + xmlns:xsl="http://www.w3.org/1999/XSL/Transform" + xmlns:fo="http://www.w3.org/1999/XSL/Format"> + +<xsl:template match="/"> +<html> + <head> + <LINK href="/data/web_interface/user_01/css/menu.css" rel="stylesheet" type="text/css"/> + <script src="/data/web_interface/user_01/js/common.js" type="text/javascript"/> + <script language="javascript"> + <![CDATA[ + function showContent() + { + var menu = document.getElementById("menu").value; + var menuLeft = document.getElementById("menuLeft"); + var menuCenter1 = document.getElementById("menuCenter1"); + var menuCenter2 = document.getElementById("menuCenter2"); + var menuCenter3 = document.getElementById("menuCenter3"); + var menuRight = document.getElementById("menuRight"); + menuLeft.className = "menuLeftEnable"; + menuCenter1.className = "menuCenterEnable"; + menuCenter2.className = "menuCenterEnable"; + menuCenter3.className = "menuCenterEnable"; + menuRight.className = "menuRightEnable"; + var frameUrl = ""; + if (menu == "livewithtux") + { + menuLeft.className = "menuLeftActivate"; + frameUrl = "/wi_devel/page_livewithtux?uuid=NULL"; + } + else if (menu == "gadgets") + { + menuCenter1.className = "menuCenterActivate"; + frameUrl = "/wi_devel/gadgets?"; + } + else if (menu == "attitunes") + { + menuCenter2.className = "menuCenterActivate"; + frameUrl = "/wi_devel/page_attitunes?"; + } + else if (menu == "tools") + { + menuCenter3.className = "menuCenterActivate"; + frameUrl = "/wi_devel/page_tools?"; + } + else if (menu == "online") + { + menuRight.className = "menuRightActivate"; + frameUrl = "/wi_devel/page_online?"; + } + else + { + menuLeft.className = "menuLeftActivate"; + frameUrl = "/wi_devel/page_livewithtux?uuid=NULL"; + } + frameUrl += "&language=" + document.getElementById('language').value; + frameUrl += "&skin='" + document.getElementById('skin').value + "'"; + var iframe = document.getElementById('ContentIFrame'); + iframe.src = frameUrl; + } + + function gotoMenu(menuName) + { + document.getElementById("menu").value = menuName; + showContent(); + } + ]]> + </script> + </head> + <body bgcolor="#EFEFEF" onLoad="showContent();"> + <!-- SKIN STORAGE --> + <xsl:element name="input"> + <xsl:attribute name="type">hidden</xsl:attribute> + <xsl:attribute name="id">skin</xsl:attribute> + <xsl:attribute name="value"> + <xsl:value-of select="root/skin"/> + </xsl:attribute> + </xsl:element> + + <!-- LANGUAGE STORAGE --> + <xsl:element name="input"> + <xsl:attribute name="type">hidden</xsl:attribute> + <xsl:attribute name="id">language</xsl:attribute> + <xsl:attribute name="value"> + <xsl:value-of select="root/language"/> + </xsl:attribute> + </xsl:element> + + <!-- CURRENT MENU STORAGE --> + <xsl:element name="input"> + <xsl:attribute name="type">hidden</xsl:attribute> + <xsl:attribute name="id">menu</xsl:attribute> + <xsl:attribute name="value"> + <xsl:value-of select="root/menu"/> + </xsl:attribute> + </xsl:element> + + <!-- MAIN DIV FRAMES --> + <div style="position:absolute; + top:0px; + left:0px; + height:65px; + width:855px; + margin-left:50px; + margin-right:50px;"> + <xsl:element name="a"> + <xsl:attribute name="class">menuLeftEnable</xsl:attribute> + <xsl:attribute name="id">menuLeft</xsl:attribute> + <xsl:attribute name="onclick">javascript:gotoMenu('livewithtux');return false;</xsl:attribute> + <xsl:attribute name="href"></xsl:attribute>Live with Tux + </xsl:element> + <xsl:element name="a"> + <xsl:attribute name="class">menuCenterEnable</xsl:attribute> + <xsl:attribute name="id">menuCenter1</xsl:attribute> + <xsl:attribute name="onclick">javascript:gotoMenu('gadgets');return false;</xsl:attribute> + <xsl:attribute name="href"></xsl:attribute>Gadgets + </xsl:element> + <xsl:element name="a"> + <xsl:attribute name="class">menuCenterEnable</xsl:attribute> + <xsl:attribute name="id">menuCenter2</xsl:attribute> + <xsl:attribute name="onclick">javascript:gotoMenu('attitunes');return false;</xsl:attribute> + <xsl:attribute name="href"></xsl:attribute>Attitunes + </xsl:element> + <xsl:element name="a"> + <xsl:attribute name="class">menuCenterEnable</xsl:attribute> + <xsl:attribute name="id">menuCenter3</xsl:attribute> + <xsl:attribute name="onclick">javascript:gotoMenu('tools');return false;</xsl:attribute> + <xsl:attribute name="href"></xsl:attribute>Tools + </xsl:element> + <xsl:element name="a"> + <xsl:attribute name="class">menuRightEnable</xsl:attribute> + <xsl:attribute name="id">menuRight</xsl:attribute> + <xsl:attribute name="onclick">javascript:gotoMenu('online');return false;</xsl:attribute> + <xsl:attribute name="href"></xsl:attribute>Online + </xsl:element> + </div> + <div class="ContentView" id="ContentView"> + <iframe class="ContentIFrame" + id="ContentIFrame" + name="ContentIFrame" + frameborder="0" + scrolling="no" + width="100%" + height="535" + src=""> + </iframe> + </div> + </body> +</html> +</xsl:template> +</xsl:stylesheet> \ No newline at end of file Added: software_suite_v3/smart-core/smart-server/trunk/resources/07_web_interfaces/01_resourceWIUser01.py =================================================================== --- software_suite_v3/smart-core/smart-server/trunk/resources/07_web_interfaces/01_resourceWIUser01.py (rev 0) +++ software_suite_v3/smart-core/smart-server/trunk/resources/07_web_interfaces/01_resourceWIUser01.py 2009-06-19 10:36:12 UTC (rev 4834) @@ -0,0 +1,59 @@ +# ============================================================================== +# Resource : Web Interface - User 01. +# ============================================================================== + +# ------------------------------------------------------------------------------ +# Declaration of the resource "wi_user_01". +# ------------------------------------------------------------------------------ +class TDSResourceWIUser01(TDSResource): + + # -------------------------------------------------------------------------- + # Inherited methods from TDSResource + # -------------------------------------------------------------------------- + + def configure(self): + self.name = "wi_user_01" + self.comment = "Resource to manage the web interface - user 01." + self.fileName = RESOURCE_FILENAME + +# Create an instance of the resource +resourceWIUser01 = TDSResourceWIUser01("resourceWIUser01") +# Register the resource into the resources manager +resourcesManager.addResource(resourceWIUser01) + +# ------------------------------------------------------------------------------ +# Declaration of the service "index". +# ------------------------------------------------------------------------------ +class TDSServiceWIUser01Index(TDSService): + + def configure(self): + self.parametersDict = { + 'language' : 'string', + 'skin' : 'string', + 'menu' : 'string', + } + self.minimalUserLevel = TDS_CLIENT_LEVEL_ANONYMOUS + self.exclusiveExecution = False + self.name = "index" + self.comment = "Show the main user page." + + def execute(self, id, parameters): + headersStruct = self.getDefaultHeadersStruct() + contentStruct = self.getDefaultContentStruct() + contentStruct['root']['result'] = getStrError(E_TDREST_SUCCESS) + language = parameters['language'] + skin = parameters['skin'] + menu = parameters['menu'] + contentStruct['root']['data'] = {} + contentStruct['root']['skin'] = skin + contentStruct['root']['menu'] = menu + contentStruct['root']['language'] = language + self.haveXsl = True + self.xslPath = "/data/web_interface/%s/xsl/index.xsl" % skin + return headersStruct, contentStruct + +# Register the service into the resource +resourceWIUser01.addService(TDSServiceWIUser01Index) +# Bind the resource index url to this service +resourcesManager.addBinding("user", "wi_user_01", "index", "skin=user_01&language=en&menu=livewithtux") +resourcesManager.addBinding("user/index", "wi_user_01", "index", "skin=user_01&language=en&menu=livewithtux") ------------------------------------------------------------------------------ Crystal Reports - New Free Runtime and 30 Day Trial Check out the new simplified licensing option that enables unlimited royalty-free distribution of the report engine for externally facing server and web deployment. http://p.sf.net/sfu/businessobjects _______________________________________________ Tux-droid-svn mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/tux-droid-svn
