190 <xsl:value-of select="$pathminmax"/> |
190 <xsl:value-of select="$pathminmax"/> |
191 </xsl:message> |
191 </xsl:message> |
192 </xsl:when> |
192 </xsl:when> |
193 </xsl:choose> |
193 </xsl:choose> |
194 <xsl:choose> |
194 <xsl:choose> |
195 <xsl:when test="regexp:test($path,'^\.[a-zA-Z0-9_]+')"> |
195 <xsl:when test="regexp:test($path,'^\.[a-zA-Z0-9_]+$')"> |
196 <xsl:attribute name="type"> |
196 <xsl:attribute name="type"> |
197 <xsl:text>PAGE_LOCAL</xsl:text> |
197 <xsl:text>PAGE_LOCAL</xsl:text> |
198 </xsl:attribute> |
198 </xsl:attribute> |
199 </xsl:when> |
199 </xsl:when> |
200 <xsl:when test="regexp:test($path,'^[a-zA-Z0-9_]+')"> |
200 <xsl:when test="regexp:test($path,'^[a-zA-Z0-9_]+$')"> |
201 <xsl:attribute name="type"> |
201 <xsl:attribute name="type"> |
202 <xsl:text>HMI_LOCAL</xsl:text> |
202 <xsl:text>HMI_LOCAL</xsl:text> |
203 </xsl:attribute> |
203 </xsl:attribute> |
204 </xsl:when> |
204 </xsl:when> |
205 <xsl:otherwise> |
205 <xsl:otherwise> |
231 </xsl:for-each> |
231 </xsl:for-each> |
232 </widget> |
232 </widget> |
233 </xsl:if> |
233 </xsl:if> |
234 </xsl:template> |
234 </xsl:template> |
235 <xsl:variable name="_parsed_widgets"> |
235 <xsl:variable name="_parsed_widgets"> |
|
236 <widget type="VarInitPersistent"> |
|
237 <arg value="0"/> |
|
238 <path value="lang"/> |
|
239 </widget> |
236 <xsl:apply-templates mode="parselabel" select="$hmi_elements"/> |
240 <xsl:apply-templates mode="parselabel" select="$hmi_elements"/> |
237 </xsl:variable> |
241 </xsl:variable> |
238 <xsl:variable name="parsed_widgets" select="exsl:node-set($_parsed_widgets)"/> |
242 <xsl:variable name="parsed_widgets" select="exsl:node-set($_parsed_widgets)"/> |
239 <func:function name="func:widget"> |
243 <func:function name="func:widget"> |
240 <xsl:param name="id"/> |
244 <xsl:param name="id"/> |
970 <xsl:text> |
974 <xsl:text> |
971 </xsl:text> |
975 </xsl:text> |
972 <xsl:variable name="translations" select="ns:GetTranslations($translatable_strings)"/> |
976 <xsl:variable name="translations" select="ns:GetTranslations($translatable_strings)"/> |
973 <xsl:text>var langs = [</xsl:text> |
977 <xsl:text>var langs = [</xsl:text> |
974 <xsl:for-each select="$translations/langs/lang"> |
978 <xsl:for-each select="$translations/langs/lang"> |
|
979 <xsl:text>"</xsl:text> |
975 <xsl:value-of select="."/> |
980 <xsl:value-of select="."/> |
|
981 <xsl:text>"</xsl:text> |
976 <xsl:if test="position()!=last()"> |
982 <xsl:if test="position()!=last()"> |
977 <xsl:text>,</xsl:text> |
983 <xsl:text>,</xsl:text> |
978 </xsl:if> |
984 </xsl:if> |
979 </xsl:for-each> |
985 </xsl:for-each> |
980 <xsl:text>]; |
986 <xsl:text>]; |
981 </xsl:text> |
987 </xsl:text> |
982 <xsl:text>var translations = [ |
988 <xsl:text>var translations = [ |
983 </xsl:text> |
989 </xsl:text> |
984 <xsl:for-each select="$translatable_texts"> |
990 <xsl:for-each select="$translatable_texts"> |
985 <xsl:variable name="n" select="position()"/> |
991 <xsl:variable name="n" select="position()"/> |
986 <xsl:text> ["</xsl:text> |
992 <xsl:variable name="current_id" select="@id"/> |
987 <xsl:value-of select="@id"/> |
993 <xsl:variable name="text_unlinked_uses" select="$result_svg_ns//svg:text[@original = $current_id]/@id"/> |
988 <xsl:text>",[</xsl:text> |
994 <xsl:text> [[</xsl:text> |
|
995 <xsl:for-each select="@id | $text_unlinked_uses"> |
|
996 <xsl:text>id("</xsl:text> |
|
997 <xsl:value-of select="."/> |
|
998 <xsl:text>")</xsl:text> |
|
999 <xsl:if test="position()!=last()"> |
|
1000 <xsl:text>,</xsl:text> |
|
1001 </xsl:if> |
|
1002 </xsl:for-each> |
|
1003 <xsl:text>],[</xsl:text> |
989 <xsl:for-each select="$translations/messages/msgid[$n]/msg"> |
1004 <xsl:for-each select="$translations/messages/msgid[$n]/msg"> |
990 <xsl:text>"</xsl:text> |
1005 <xsl:text>"</xsl:text> |
991 <xsl:for-each select="line"> |
1006 <xsl:for-each select="line"> |
992 <xsl:value-of select="."/> |
1007 <xsl:value-of select="."/> |
993 <xsl:if test="position()!=last()"> |
1008 <xsl:if test="position()!=last()"> |
1124 </xsl:text> |
1139 </xsl:text> |
1125 <xsl:text>var last_remote_index = hmitree_types.length - 1; |
1140 <xsl:text>var last_remote_index = hmitree_types.length - 1; |
1126 </xsl:text> |
1141 </xsl:text> |
1127 <xsl:text>var next_available_index = hmitree_types.length; |
1142 <xsl:text>var next_available_index = hmitree_types.length; |
1128 </xsl:text> |
1143 </xsl:text> |
|
1144 <xsl:text>let cookies = new Map(document.cookie.split("; ").map(s=>s.split("="))); |
|
1145 </xsl:text> |
1129 <xsl:text> |
1146 <xsl:text> |
1130 </xsl:text> |
1147 </xsl:text> |
1131 <xsl:text>const local_defaults = { |
1148 <xsl:text>const local_defaults = { |
1132 </xsl:text> |
1149 </xsl:text> |
1133 <xsl:for-each select="$parsed_widgets/widget[@type = 'VarInit']"> |
1150 <xsl:for-each select="$parsed_widgets/widget[starts-with(@type,'VarInit')]"> |
1134 <xsl:if test="count(path) != 1"> |
1151 <xsl:if test="count(path) != 1"> |
1135 <xsl:message terminate="yes"> |
1152 <xsl:message terminate="yes"> |
1136 <xsl:text>VarInit </xsl:text> |
1153 <xsl:text>VarInit </xsl:text> |
1137 <xsl:value-of select="@id"/> |
1154 <xsl:value-of select="@id"/> |
1138 <xsl:text> must have only one variable given.</xsl:text> |
1155 <xsl:text> must have only one variable given.</xsl:text> |
1143 <xsl:text>VarInit </xsl:text> |
1160 <xsl:text>VarInit </xsl:text> |
1144 <xsl:value-of select="@id"/> |
1161 <xsl:value-of select="@id"/> |
1145 <xsl:text> only applies to HMI variable.</xsl:text> |
1162 <xsl:text> only applies to HMI variable.</xsl:text> |
1146 </xsl:message> |
1163 </xsl:message> |
1147 </xsl:if> |
1164 </xsl:if> |
1148 <xsl:text>"</xsl:text> |
1165 <xsl:text> "</xsl:text> |
1149 <xsl:value-of select="path/@value"/> |
1166 <xsl:value-of select="path/@value"/> |
1150 <xsl:text>":</xsl:text> |
1167 <xsl:text>":</xsl:text> |
1151 <xsl:value-of select="arg[1]/@value"/> |
1168 <xsl:choose> |
|
1169 <xsl:when test="@type = 'VarInitPersistent'"> |
|
1170 <xsl:text>cookies.has("</xsl:text> |
|
1171 <xsl:value-of select="path/@value"/> |
|
1172 <xsl:text>")?cookies.get("</xsl:text> |
|
1173 <xsl:value-of select="path/@value"/> |
|
1174 <xsl:text>"):</xsl:text> |
|
1175 <xsl:value-of select="arg[1]/@value"/> |
|
1176 </xsl:when> |
|
1177 <xsl:otherwise> |
|
1178 <xsl:value-of select="arg[1]/@value"/> |
|
1179 </xsl:otherwise> |
|
1180 </xsl:choose> |
|
1181 <xsl:text> |
|
1182 </xsl:text> |
|
1183 <xsl:if test="position()!=last()"> |
|
1184 <xsl:text>,</xsl:text> |
|
1185 </xsl:if> |
|
1186 </xsl:for-each> |
|
1187 <xsl:text>}; |
|
1188 </xsl:text> |
|
1189 <xsl:text> |
|
1190 </xsl:text> |
|
1191 <xsl:text>const persistent_locals = new Set([ |
|
1192 </xsl:text> |
|
1193 <xsl:for-each select="$parsed_widgets/widget[@type='VarInitPersistent']"> |
|
1194 <xsl:text> "</xsl:text> |
|
1195 <xsl:value-of select="path/@value"/> |
|
1196 <xsl:text>"</xsl:text> |
1152 <xsl:if test="position()!=last()"> |
1197 <xsl:if test="position()!=last()"> |
1153 <xsl:text>,</xsl:text> |
1198 <xsl:text>,</xsl:text> |
1154 </xsl:if> |
1199 </xsl:if> |
1155 <xsl:text> |
1200 <xsl:text> |
1156 </xsl:text> |
1201 </xsl:text> |
1157 </xsl:for-each> |
1202 </xsl:for-each> |
1158 <xsl:text>}; |
1203 <xsl:text>]); |
|
1204 </xsl:text> |
|
1205 <xsl:text>var persistent_indexes = new Map(); |
1159 </xsl:text> |
1206 </xsl:text> |
1160 <xsl:text>var cache = hmitree_types.map(_ignored => undefined); |
1207 <xsl:text>var cache = hmitree_types.map(_ignored => undefined); |
1161 </xsl:text> |
1208 </xsl:text> |
1162 <xsl:text> |
1209 <xsl:text> |
1163 </xsl:text> |
1210 </xsl:text> |
1191 </xsl:text> |
1238 </xsl:text> |
1192 <xsl:text> } |
1239 <xsl:text> } |
1193 </xsl:text> |
1240 </xsl:text> |
1194 <xsl:text> let defaultval = local_defaults[varname]; |
1241 <xsl:text> let defaultval = local_defaults[varname]; |
1195 </xsl:text> |
1242 </xsl:text> |
1196 <xsl:text> if(defaultval != undefined) |
1243 <xsl:text> if(defaultval != undefined) { |
1197 </xsl:text> |
1244 </xsl:text> |
1198 <xsl:text> cache[new_index] = defaultval; |
1245 <xsl:text> cache[new_index] = defaultval; |
|
1246 </xsl:text> |
|
1247 <xsl:text> if(persistent_locals.has(varname)) |
|
1248 </xsl:text> |
|
1249 <xsl:text> persistent_indexes.set(new_index, varname); |
|
1250 </xsl:text> |
|
1251 <xsl:text> } |
1199 </xsl:text> |
1252 </xsl:text> |
1200 <xsl:text> return new_index; |
1253 <xsl:text> return new_index; |
1201 </xsl:text> |
1254 </xsl:text> |
1202 <xsl:text>} |
1255 <xsl:text>} |
1203 </xsl:text> |
1256 </xsl:text> |
1504 </xsl:text> |
1557 </xsl:text> |
1505 <xsl:text> |
1558 <xsl:text> |
1506 </xsl:text> |
1559 </xsl:text> |
1507 <xsl:text> } |
1560 <xsl:text> } |
1508 </xsl:text> |
1561 </xsl:text> |
|
1562 <xsl:text> |
|
1563 </xsl:text> |
|
1564 <xsl:text> activate_activable(eltsub) { |
|
1565 </xsl:text> |
|
1566 <xsl:text> eltsub.inactive.style.display = "none"; |
|
1567 </xsl:text> |
|
1568 <xsl:text> eltsub.active.style.display = ""; |
|
1569 </xsl:text> |
|
1570 <xsl:text> } |
|
1571 </xsl:text> |
|
1572 <xsl:text> |
|
1573 </xsl:text> |
|
1574 <xsl:text> inactivate_activable(eltsub) { |
|
1575 </xsl:text> |
|
1576 <xsl:text> eltsub.active.style.display = "none"; |
|
1577 </xsl:text> |
|
1578 <xsl:text> eltsub.inactive.style.display = ""; |
|
1579 </xsl:text> |
|
1580 <xsl:text> } |
|
1581 </xsl:text> |
1509 <xsl:text>} |
1582 <xsl:text>} |
1510 </xsl:text> |
1583 </xsl:text> |
1511 <xsl:text> |
1584 <xsl:text> |
1512 </xsl:text> |
1585 </xsl:text> |
1513 </xsl:template> |
1586 </xsl:template> |
1514 <xsl:variable name="excluded_types" select="str:split('Page VarInit')"/> |
1587 <xsl:variable name="excluded_types" select="str:split('Page VarInit VarInitPersistent')"/> |
1515 <xsl:key name="TypesKey" match="widget" use="@type"/> |
1588 <xsl:key name="TypesKey" match="widget" use="@type"/> |
1516 <declarations:hmi-classes/> |
1589 <declarations:hmi-classes/> |
1517 <xsl:template match="declarations:hmi-classes"> |
1590 <xsl:template match="declarations:hmi-classes"> |
1518 <xsl:text> |
1591 <xsl:text> |
1519 </xsl:text> |
1592 </xsl:text> |
3822 <xsl:text> b.height.baseVal.value = m.height; |
3895 <xsl:text> b.height.baseVal.value = m.height; |
3823 </xsl:text> |
3896 </xsl:text> |
3824 <xsl:text> } |
3897 <xsl:text> } |
3825 </xsl:text> |
3898 </xsl:text> |
3826 <xsl:text> highlight_selection(){ |
3899 <xsl:text> highlight_selection(){ |
|
3900 </xsl:text> |
|
3901 <xsl:text> if(this.last_selection == undefined) return; |
3827 </xsl:text> |
3902 </xsl:text> |
3828 <xsl:text> let highlighted_row = this.last_selection - this.menu_offset; |
3903 <xsl:text> let highlighted_row = this.last_selection - this.menu_offset; |
3829 </xsl:text> |
3904 </xsl:text> |
3830 <xsl:text> if(highlighted_row < 0) return; |
3905 <xsl:text> if(highlighted_row < 0) return; |
3831 </xsl:text> |
3906 </xsl:text> |
5121 </xsl:text> |
5196 </xsl:text> |
5122 <xsl:text> if(this.Shift_sub && this.shift != this._shift){ |
5197 <xsl:text> if(this.Shift_sub && this.shift != this._shift){ |
5123 </xsl:text> |
5198 </xsl:text> |
5124 <xsl:text> this._shift = this.shift; |
5199 <xsl:text> this._shift = this.shift; |
5125 </xsl:text> |
5200 </xsl:text> |
5126 <xsl:text> (this.shift?widget_active_activable:widget_inactive_activable)(this.Shift_sub); |
5201 <xsl:text> (this.shift?this.activate_activable:this.inactivate_activable)(this.Shift_sub); |
5127 </xsl:text> |
5202 </xsl:text> |
5128 <xsl:text> } |
5203 <xsl:text> } |
5129 </xsl:text> |
5204 </xsl:text> |
5130 <xsl:text> if(this.CapsLock_sub && this.caps != this._caps){ |
5205 <xsl:text> if(this.CapsLock_sub && this.caps != this._caps){ |
5131 </xsl:text> |
5206 </xsl:text> |
5132 <xsl:text> this._caps = this.caps; |
5207 <xsl:text> this._caps = this.caps; |
5133 </xsl:text> |
5208 </xsl:text> |
5134 <xsl:text> (this.caps?widget_active_activable:widget_inactive_activable)(this.CapsLock_sub); |
5209 <xsl:text> (this.caps?this.activate_activable:this.inactivate_activable)(this.CapsLock_sub); |
5135 </xsl:text> |
5210 </xsl:text> |
5136 <xsl:text> } |
5211 <xsl:text> } |
5137 </xsl:text> |
5212 </xsl:text> |
5138 <xsl:text> } |
5213 <xsl:text> } |
5139 </xsl:text> |
5214 </xsl:text> |
6732 </xsl:text> |
6807 </xsl:text> |
6733 <xsl:text>}); |
6808 <xsl:text>}); |
6734 </xsl:text> |
6809 </xsl:text> |
6735 <xsl:text> |
6810 <xsl:text> |
6736 </xsl:text> |
6811 </xsl:text> |
|
6812 <xsl:text>var translated = false; |
|
6813 </xsl:text> |
|
6814 <xsl:text> |
|
6815 </xsl:text> |
|
6816 <xsl:text>function switch_langnum(langnum) { |
|
6817 </xsl:text> |
|
6818 <xsl:text> if(langnum == current_lang) { |
|
6819 </xsl:text> |
|
6820 <xsl:text> return; |
|
6821 </xsl:text> |
|
6822 <xsl:text> } |
|
6823 </xsl:text> |
|
6824 <xsl:text> |
|
6825 </xsl:text> |
|
6826 <xsl:text> if (!translated) { |
|
6827 </xsl:text> |
|
6828 <xsl:text> translated = true; |
|
6829 </xsl:text> |
|
6830 <xsl:text> for (let translation of translations) { |
|
6831 </xsl:text> |
|
6832 <xsl:text> let [objs] = translation; |
|
6833 </xsl:text> |
|
6834 <xsl:text> translation.push(Array.prototype.map.call(objs[0].children, x=>x.textContent).join("\n")); |
|
6835 </xsl:text> |
|
6836 <xsl:text> } |
|
6837 </xsl:text> |
|
6838 <xsl:text> } |
|
6839 </xsl:text> |
|
6840 <xsl:text> |
|
6841 </xsl:text> |
|
6842 <xsl:text> for (let translation of translations) { |
|
6843 </xsl:text> |
|
6844 <xsl:text> let [objs, msgs, orig] = translation; |
|
6845 </xsl:text> |
|
6846 <xsl:text> let msg = langnum == 0 ? orig : msgs[langnum - 1]; |
|
6847 </xsl:text> |
|
6848 <xsl:text> for (let obj of objs) { |
|
6849 </xsl:text> |
|
6850 <xsl:text> msg.split('\n').map((line,i) => {obj.children[i].textContent = line;}); |
|
6851 </xsl:text> |
|
6852 <xsl:text> } |
|
6853 </xsl:text> |
|
6854 <xsl:text> } |
|
6855 </xsl:text> |
|
6856 <xsl:text> current_lang = langnum; |
|
6857 </xsl:text> |
|
6858 <xsl:text>} |
|
6859 </xsl:text> |
|
6860 <xsl:text>var lang_local_index = hmi_local_index("lang"); |
|
6861 </xsl:text> |
|
6862 <xsl:text>subscribers(lang_local_index).add({ |
|
6863 </xsl:text> |
|
6864 <xsl:text> indexes: [lang_local_index], |
|
6865 </xsl:text> |
|
6866 <xsl:text> new_hmi_value: function(index, value, oldval) { |
|
6867 </xsl:text> |
|
6868 <xsl:text> switch_langnum(value); |
|
6869 </xsl:text> |
|
6870 <xsl:text> } |
|
6871 </xsl:text> |
|
6872 <xsl:text>}); |
|
6873 </xsl:text> |
|
6874 <xsl:text>var current_lang = 0; |
|
6875 </xsl:text> |
|
6876 <xsl:text>switch_langnum(cache[lang_local_index]); |
|
6877 </xsl:text> |
6737 <xsl:text> |
6878 <xsl:text> |
6738 </xsl:text> |
6879 </xsl:text> |
6739 <xsl:text>function update_subscriptions() { |
6880 <xsl:text>function update_subscriptions() { |
6740 </xsl:text> |
6881 </xsl:text> |
6741 <xsl:text> let delta = []; |
6882 <xsl:text> let delta = []; |
6810 </xsl:text> |
6951 </xsl:text> |
6811 <xsl:text> if(index > last_remote_index){ |
6952 <xsl:text> if(index > last_remote_index){ |
6812 </xsl:text> |
6953 </xsl:text> |
6813 <xsl:text> updates[index] = value; |
6954 <xsl:text> updates[index] = value; |
6814 </xsl:text> |
6955 </xsl:text> |
|
6956 <xsl:text> |
|
6957 </xsl:text> |
|
6958 <xsl:text> if(persistent_indexes.has(index)){ |
|
6959 </xsl:text> |
|
6960 <xsl:text> let varname = persistent_indexes.get(index); |
|
6961 </xsl:text> |
|
6962 <xsl:text> console.log(varname+"="+value+"; max-age=3153600000"); |
|
6963 </xsl:text> |
|
6964 <xsl:text> document.cookie = varname+"="+value+"; max-age=3153600000"; |
|
6965 </xsl:text> |
|
6966 <xsl:text> } |
|
6967 </xsl:text> |
|
6968 <xsl:text> |
|
6969 </xsl:text> |
|
6970 <xsl:text> |
|
6971 </xsl:text> |
6815 <xsl:text> requestHMIAnimation(); |
6972 <xsl:text> requestHMIAnimation(); |
6816 </xsl:text> |
6973 </xsl:text> |
6817 <xsl:text> return; |
6974 <xsl:text> return; |
6818 </xsl:text> |
6975 </xsl:text> |
6819 <xsl:text> } |
6976 <xsl:text> } |
6928 </xsl:text> |
7085 </xsl:text> |
6929 <xsl:text>} |
7086 <xsl:text>} |
6930 </xsl:text> |
7087 </xsl:text> |
6931 <xsl:text> |
7088 <xsl:text> |
6932 </xsl:text> |
7089 </xsl:text> |
6933 <xsl:text>/* |
|
6934 </xsl:text> |
|
6935 <xsl:text>function change_hmi_value(index, opstr) { |
|
6936 </xsl:text> |
|
6937 <xsl:text> let old_val = cache[index]; |
|
6938 </xsl:text> |
|
6939 <xsl:text> let new_val = eval_operation_string(old_val, opstr); |
|
6940 </xsl:text> |
|
6941 <xsl:text> if(new_val != undefined && old_val != new_val) |
|
6942 </xsl:text> |
|
6943 <xsl:text> send_hmi_value(index, new_val); |
|
6944 </xsl:text> |
|
6945 <xsl:text> // TODO else raise |
|
6946 </xsl:text> |
|
6947 <xsl:text> return new_val; |
|
6948 </xsl:text> |
|
6949 <xsl:text>} |
|
6950 </xsl:text> |
|
6951 <xsl:text>*/ |
|
6952 </xsl:text> |
|
6953 <xsl:text> |
|
6954 </xsl:text> |
|
6955 <xsl:text>var current_visible_page; |
7090 <xsl:text>var current_visible_page; |
6956 </xsl:text> |
7091 </xsl:text> |
6957 <xsl:text>var current_subscribed_page; |
7092 <xsl:text>var current_subscribed_page; |
6958 </xsl:text> |
7093 </xsl:text> |
6959 <xsl:text>var current_page_index; |
7094 <xsl:text>var current_page_index; |
7253 <xsl:text> current_modal = undefined; |
7388 <xsl:text> current_modal = undefined; |
7254 </xsl:text> |
7389 </xsl:text> |
7255 <xsl:text>}; |
7390 <xsl:text>}; |
7256 </xsl:text> |
7391 </xsl:text> |
7257 <xsl:text> |
7392 <xsl:text> |
7258 </xsl:text> |
|
7259 <xsl:text>function widget_active_activable(eltsub) { |
|
7260 </xsl:text> |
|
7261 <xsl:text> if(eltsub.inactive_style === undefined) |
|
7262 </xsl:text> |
|
7263 <xsl:text> eltsub.inactive_style = eltsub.inactive.getAttribute("style"); |
|
7264 </xsl:text> |
|
7265 <xsl:text> eltsub.inactive.setAttribute("style", "display:none"); |
|
7266 </xsl:text> |
|
7267 <xsl:text> if(eltsub.active_style !== undefined) |
|
7268 </xsl:text> |
|
7269 <xsl:text> eltsub.active.setAttribute("style", eltsub.active_style); |
|
7270 </xsl:text> |
|
7271 <xsl:text>}; |
|
7272 </xsl:text> |
|
7273 <xsl:text>function widget_inactive_activable(eltsub) { |
|
7274 </xsl:text> |
|
7275 <xsl:text> if(eltsub.active_style === undefined) |
|
7276 </xsl:text> |
|
7277 <xsl:text> eltsub.active_style = eltsub.active.getAttribute("style"); |
|
7278 </xsl:text> |
|
7279 <xsl:text> eltsub.active.setAttribute("style", "display:none"); |
|
7280 </xsl:text> |
|
7281 <xsl:text> if(eltsub.inactive_style !== undefined) |
|
7282 </xsl:text> |
|
7283 <xsl:text> eltsub.inactive.setAttribute("style", eltsub.inactive_style); |
|
7284 </xsl:text> |
|
7285 <xsl:text>}; |
|
7286 </xsl:text> |
7393 </xsl:text> |
7287 </script> |
7394 </script> |
7288 </body> |
7395 </body> |
7289 </html> |
7396 </html> |
7290 </xsl:template> |
7397 </xsl:template> |