summaryrefslogtreecommitdiffstats
path: root/uiframe-iui/src/main/resources/webroot/framework
diff options
context:
space:
mode:
Diffstat (limited to 'uiframe-iui/src/main/resources/webroot/framework')
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/about.html55
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/appRes/i18n/readme.txt38
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/appRes/img/readme.txt31
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/appRes/js/custom-const.js1
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/appRes/js/custom.js1
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/changepwd.html92
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/animate.css3278
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/animate.css.gzbin0 -> 5947 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/changepwd-apk.css84
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/changepwd.css84
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/custom_default.css16
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/login-apk.css183
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/login.css201
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/more-operation.css167
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/ngict-component.css773
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/plugins.css1561
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/plugins.css.gzbin0 -> 6002 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/print.css53
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/print.css.gzbin0 -> 216 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/style-custom.css1510
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/style-custom.css.gzbin0 -> 5338 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/style-ict-bootstrap.css838
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/style-ict.css820
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/style-responsive.css989
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/style.css4715
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/black.css388
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/black.css.gzbin0 -> 1810 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/black_ifrm.css207
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/black_ifrm.css.gzbin0 -> 896 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/blue.css374
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/blue.css.gzbin0 -> 1819 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/blue_ifrm.css207
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/blue_ifrm.css.gzbin0 -> 901 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/brown.css376
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/brown.css.gzbin0 -> 1849 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/brown_ifrm.css207
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/brown_ifrm.css.gzbin0 -> 904 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/grey.css372
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/grey.css.gzbin0 -> 1778 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/grey_ifrm.css209
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/grey_ifrm.css.gzbin0 -> 901 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/light.css479
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/light.css.gzbin0 -> 2139 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/light_ifrm.css207
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/light_ifrm.css.gzbin0 -> 914 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/purple.css375
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/purple.css.gzbin0 -> 1858 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/purple_ifrm.css207
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/purple_ifrm.css.gzbin0 -> 916 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/zteblue.css398
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/zteblue.css.gzbin0 -> 1986 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/zteblue_ifrm.css206
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/zteblue_ifrm.css.gzbin0 -> 915 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight.css435
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight.css.gzbin0 -> 2456 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight2.css505
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight2.css.gzbin0 -> 2163 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight2_ifrm.css229
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight2_ifrm.css.gzbin0 -> 1469 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight3.css497
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight3.css.gzbin0 -> 2354 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight3_ifrm.css220
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight3_ifrm.css.gzbin0 -> 930 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight4.css605
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight4.css.gzbin0 -> 2430 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight4_ifrm.css209
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight4_ifrm.css.gzbin0 -> 1308 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight_ifrm.css228
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight_ifrm.css.gzbin0 -> 1450 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/css/zte-style.css255
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/default.html564
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/i18n/web-framework-i18n-en-US.properties225
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/i18n/web-framework-i18n-zh-CN.properties226
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/i18n/web-framework-integration-i18n-en-US.properties210
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/i18n/web-framework-integration-i18n-zh-CN.properties210
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/i18n/web-portal-login-i18n-en-US.properties49
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/i18n/web-portal-login-i18n-zh-CN.properties49
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/i18n/web-portal-login-integration-i18n-en-US.properties50
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/i18n/web-portal-login-integration-i18n-zh-CN.properties50
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/about/about-bg-dark.pngbin0 -> 87487 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/about/about-bg-light.pngbin0 -> 95527 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/about/about-netnumen.pngbin0 -> 14772 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/accordion-plusminus.pngbin0 -> 162 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ajax-loading.gifbin0 -> 29959 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ajax-modal-loading.gifbin0 -> 27953 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/arrow-down.pngbin0 -> 966 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/avatar.pngbin0 -> 2016 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/bg-opacity.pngbin0 -> 130 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/bg-white-lock.pngbin0 -> 2816 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/bg-white.pngbin0 -> 2816 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/checkbox-checked-disabled.pngbin0 -> 3087 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/checkbox-checked.pngbin0 -> 3053 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/checkbox-disabled.pngbin0 -> 2830 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/checkbox-hover.pngbin0 -> 2835 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/checkbox-init.pngbin0 -> 2833 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/radio-checked-disabled.pngbin0 -> 2993 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/radio-checked.pngbin0 -> 3235 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/radio-disabled.pngbin0 -> 3045 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/radio-hover.pngbin0 -> 3068 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/radio-init.pngbin0 -> 3036 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/chrome_icon.pngbin0 -> 3856 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/datatable-row-openclose.pngbin0 -> 299 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/empty.pngbin0 -> 2790 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/firefox_icon.pngbin0 -> 3759 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/hor-menu-search-close-white.pngbin0 -> 191 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/hor-menu-search-close.pngbin0 -> 162 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/hor-menu-search.jpgbin0 -> 306 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/hor-menu-search.pngbin0 -> 299 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/icon-color-close.pngbin0 -> 1031 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/icon-color.pngbin0 -> 1240 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/icon-img-down.pngbin0 -> 1023 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/icon-img-up.pngbin0 -> 999 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/input-spinner.gifbin0 -> 1849 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/integration/logo.pngbin0 -> 16838 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/integration/logo_white.pngbin0 -> 13710 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/integration/netnumenLogo.pngbin0 -> 5379 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/integration/zte_bg_1.jpgbin0 -> 143465 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/integration/zte_bg_2.jpgbin0 -> 152396 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/integration/zte_bg_3.jpgbin0 -> 155899 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/integration/zte_logo_16.gifbin0 -> 583 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/integration/zte_logo_white.pngbin0 -> 16838 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/integration/ztelogo.pngbin0 -> 2790 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/loading-spinner-grey.gifbin0 -> 5203 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/loading.gifbin0 -> 2906 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/mainpage/icon/1.pngbin0 -> 4053 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/mainpage/icon/2.pngbin0 -> 3397 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/mainpage/icon/3.pngbin0 -> 3948 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/mainpage/icon/4.pngbin0 -> 3927 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/mainpage/icon/5.pngbin0 -> 3185 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/mainpage/icon/6.pngbin0 -> 3361 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/mainpage/logo.pngbin0 -> 16103 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/mainpage/pic/1.pngbin0 -> 179653 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/mainpage/pic/2.pngbin0 -> 64321 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/mainpage/pic/3.pngbin0 -> 65383 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/mainpage/pic/4.pngbin0 -> 105028 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/mainpage/pic/5.pngbin0 -> 143644 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/menu-toggler.pngbin0 -> 948 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/overlay-icon.pngbin0 -> 514 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/portlet-collapse-icon-white.pngbin0 -> 240 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/portlet-collapse-icon.pngbin0 -> 269 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/portlet-config-icon-white.pngbin0 -> 320 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/portlet-config-icon.pngbin0 -> 330 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/portlet-expand-icon-white.pngbin0 -> 239 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/portlet-expand-icon.pngbin0 -> 256 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/portlet-reload-icon-white.pngbin0 -> 324 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/portlet-reload-icon.pngbin0 -> 345 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/portlet-remove-icon-white.pngbin0 -> 260 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/portlet-remove-icon.pngbin0 -> 312 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/remove-icon-small.pngbin0 -> 193 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/reset_password.pngbin0 -> 3516 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/NFV.svg58
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/NS.svg29
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/VDU.svg26
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/VIM.svg19
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/VNF.svg14
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/VNFC.svg20
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/VNFM.svg17
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/breakLink.svg9
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/common_dc.svg72
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/common_ncd.svg40
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/common_sc.svg71
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/host.svg14
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-Virtual network.svg186
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-bind.svg58
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-dns.svg58
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-ems.svg75
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-mediator.svg78
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-netnumen.svg57
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-ntp.svg61
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-ota.svg58
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-tomcat.svg52
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-trend.svg58
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-tsm.svg62
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-weblogic.svg58
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app.svg62
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-cluster-hacmp.svg54
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-cluster-nec.svg55
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-cluster-ns.svg58
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-cluster-sg.svg65
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-cluster-vcs.svg78
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-cluster.svg77
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-database-mssql.svg77
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-database-oracle.svg77
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-database-sybase.svg71
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-database-sybaseiq.svg51
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-database.svg71
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-dellmd.svg199
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-emc.svg198
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-eternus.svg195
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-fujitsu.svg215
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-hds.svg103
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-hpaio.svg203
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-hpeva.svg207
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-hpmsa.svg203
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-ibm.svg203
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-ibmsm.svg95
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-macrosan.svg28
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-netapp.svg146
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-sun.svg146
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-zte.svg146
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-checkpoint.svg95
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-cisco.svg95
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-cisco2.svg95
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-h3c.svg116
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-juniper.svg109
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-neteye.svg120
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-zte.svg127
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-ztemf.svg127
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-zteutm.svg128
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall.svg102
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-gather.svg295
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-group-dev.svg121
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-ibp-ibp2000.svg133
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-ibp.svg128
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-net.svg105
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-alteon.svg19
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-appdirector.svg25
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-atca-lb10.svg121
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-cisco-ucs.svg121
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-dcs.svg137
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-delta.svg129
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-dp.svg20
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-f5bigip.svg145
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-f5bigip2.svg161
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-gbe2c.svg166
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-hpblc.svg174
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-ibm-blade.svg156
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-imm.svg160
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-secfox.svg20
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-secsis.svg30
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-segw.svg153
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-vc.svg173
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-zteatca.svg191
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-zteips.svg53
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-ztepower.svg223
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-ztesgs.svg54
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-zxsdr-nt.svg186
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other.svg110
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-router-cisco.svg186
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-router-juniper.svg170
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-router-zte.svg178
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-router.svg175
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-sdn-controller.svg176
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-sdn-host.svg167
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-sdn-switch.svg167
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-sdn-vnet.svg167
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server-aix.svg170
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server-hpux.svg181
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server-klinux.svg191
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server-redhat.svg171
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server-solaris.svg173
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server-suse.svg185
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server-windows.svg176
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server-zxve.svg179
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server.svg195
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-storage-cisco-mds.svg177
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-storage-md3000.svg168
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-storage-netvault.svg186
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-storage-ops.svg186
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-storage-sanswitch-brocade.svg187
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-storage-sanswitch-hp.svg187
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-storage-sanswitch-zte.svg13
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-storage.svg183
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-switch-at.svg201
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-switch-cisco.svg176
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-switch-h3c.svg31
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-switch-juniper.svg176
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-switch-zte.svg177
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-switch.svg182
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-tapelib-hpmsl.svg176
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-tapelib-ibmts.svg183
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-tapelib-sunts.svg196
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it.svg111
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/networkTree.svg349
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/new.svg7
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/popupmenufollower.svg15
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/resourceType.svg211
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/stop.svg18
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/tree-icon.svg291
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/uep-moc-root.svg355
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/uep-moc-uca-public.svg329
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/uep-topo-commongroup20x20.svg278
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/uep-topo-group20x20.svg277
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/uep-topo-root.svg259
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/uep-topo-undefinedgroup20x20.svg342
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/uep-topo-virtual20x20.svg355
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/uep-topo-wsf-disconnected8x8.svg37
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/usf-amf-try-activate.svg44
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/usf-amf-try-active-wait.svg40
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/search-icon-blue.pngbin0 -> 318 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/search-icon-brown.pngbin0 -> 357 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/search-icon-purple.pngbin0 -> 318 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/search-icon-red.pngbin0 -> 318 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/search-icon-white.pngbin0 -> 317 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/search-icon.pngbin0 -> 1132 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/select-caret.pngbin0 -> 1027 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/sidebar-menu-arrow-right.pngbin0 -> 247 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/sidebar-menu-arrow-rtl.pngbin0 -> 247 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/sidebar-menu-arrow.pngbin0 -> 3007 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/sidebar-search-close-blue.pngbin0 -> 163 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/sidebar-search-close-brown.pngbin0 -> 163 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/sidebar-search-close-light.pngbin0 -> 162 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/sidebar-search-close-purple.pngbin0 -> 163 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/sidebar-search-close.pngbin0 -> 163 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/sidebar-toggler-grey.jpgbin0 -> 14801 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/sidebar-toggler-light.jpgbin0 -> 538 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/source/logo.pngbin0 -> 16838 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/source/logo_white.pngbin0 -> 13710 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/source/netnumenLogo.pngbin0 -> 5379 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/source/zte_bg_1.jpgbin0 -> 143465 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/source/zte_bg_2.jpgbin0 -> 152396 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/source/zte_bg_3.jpgbin0 -> 155899 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/source/zte_logo_ white.pngbin0 -> 16838 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/source/zte_logo_16.gifbin0 -> 583 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/source/zte_logo_white.pngbin0 -> 16838 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/source/ztelogo.pngbin0 -> 2790 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/syncfusion-icons-white.pngbin0 -> 5550 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/img/user.pngbin0 -> 3100 bytes
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/index.html25
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/js/Main2moreMenu.js17
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/js/core/ZteFrameWork.js3997
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/js/core/ZteFrameWork.min.js150
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/js/core/const.js56
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/js/core/hk.min.js806
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/js/core/pym.min.js2
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/js/fm_light.js169
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/js/international/loadi18n-login.js53
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/js/international/loadi18n.js110
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/js/international/loadi18nApp_universal.js24
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/js/json2.js501
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/js/login.js225
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/js/mainpage/about.js142
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/js/mainpage/ict.main.page.js142
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/js/moreOperation.js151
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/js/security/aes.js50
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/js/security/changepwd.js191
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/js/security/framework-util.js38
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/js/security/security.js127
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/js/tools.js1039
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/json/main-page.json103
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/login.html198
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/main-page.html102
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/menus/main_Fmegabar.html17
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/menus/main_Fsiderbar.html17
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/menus/main_siderbar.html17
-rw-r--r--uiframe-iui/src/main/resources/webroot/framework/menus/readme.txt17
346 files changed, 51070 insertions, 0 deletions
diff --git a/uiframe-iui/src/main/resources/webroot/framework/about.html b/uiframe-iui/src/main/resources/webroot/framework/about.html
new file mode 100644
index 00000000..83a8a3f7
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/about.html
@@ -0,0 +1,55 @@
+<!--
+
+ Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+-->
+
+<div class="about aboutmain">
+ <div>
+ <a href="#" onclick="link_click('info')">
+ <span id="com_zte_ums_ict_framework_about_detail" name_i18n="com_zte_ums_ict_framework_ui_i18n"></span>
+ <i class = "fa fa-angle-right"></i>
+ </a>
+ <a href="#" class="about_close" onclick="ict_about_dlg_close()">
+ &times
+ </a>
+ </div>
+ <div class="info">
+ <img src="img/integration/zte_logo_ white.png" alt=""/>
+ <div class="ict_main_productname">
+ <span id="com_zte_ums_ict_framework_ui_main_title" name_i18n="com_zte_ums_ict_framework_ui_i18n"></span>
+ </div>
+ <div class="ict_main_version">
+ <span id="com_zte_ums_ict_framework_about_version" name_i18n="com_zte_ums_ict_framework_ui_i18n"></span>
+ </div>
+ <div class="copyright">
+ <span id="com_zte_ums_ict_portal_login_companyName" name_i18n="com_zte_ums_ict_framework_ui_i18n"></span>.
+ </div>
+ </div>
+</div>
+<div class="about aboutinfo" style="display:none">
+ <div>
+ <a href="#" onclick="link_click('about')">
+ <span id="com_zte_ums_ict_framework_moudle_about" name_i18n="com_zte_ums_ict_framework_ui_i18n"></span>
+ <i class = "fa fa-angle-right"></i>
+ </a>
+ <a href="#" class="about_close" onclick="ict_about_dlg_close()">
+ &times
+ </a>
+ </div>
+ <div class="row-fluid" data-name="table_zone">
+ <div class="col-xs-12" id = 'ict_about_table_div' style=""></div>
+ </div>
+</div>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/appRes/i18n/readme.txt b/uiframe-iui/src/main/resources/webroot/framework/appRes/i18n/readme.txt
new file mode 100644
index 00000000..d9062075
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/appRes/i18n/readme.txt
@@ -0,0 +1,38 @@
+====
+ Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+====
+
+二次开发方式:
+1、在此目录新建web-app-i18n-en-US.properties、web-app-i18n-zh-CN.properties两个文件(注意:文件名不能修改;文件编码格式设置为UTF-8),分别存放可以进行二次开发的中英文国际化。
+2、将需要二次开发的键值对拷贝到对应的中(英)文文件里,并修改value值即可。
+ 例如:
+ "ICT管理系统"需要做二次开发,就将 com_zte_ums_ict_framework_ui_main_title=ICT管理系统 拷贝到web-app-i18n-zh-CN.properties文件,将"ICT管理系统"修改为所需名称。
+ com_zte_ums_ict_framework_ui_main_title=ICT 拷贝到web-app-i18n-en-US.properties文件,将"ICT"修改为所需名称。
+2、以下是中文目前可以进行二次开发的key-value:
+ com_zte_ums_ict_framework_ui_main_title=ICT管理系统
+ com_zte_ums_ict_framework_ui_page_title=ICT管理系统-统一网管场景
+ com_zte_ums_ict_framework_ui_page_title_1=ICT管理系统-ICT监控场景
+ com_zte_ums_ict_framework_ui_page_title_2=ICT管理系统-基础版本场景
+ com_zte_ums_ict_framework_ui_page_title_3=ICT管理系统-GIS应用场景
+ com_zte_ums_ict_portal_login_title=ICT管理系统
+ com_zte_ums_ict_portal_login_companyName=2014 @ zte 中兴通讯股份有限公司
+3、以下是英文目前可以进行二次开发的key-value:
+ com_zte_ums_ict_framework_ui_main_title=ICT
+ com_zte_ums_ict_framework_ui_page_title=ICT Management System-Unified Network Management Scenarios
+ com_zte_ums_ict_framework_ui_page_title_1=ICT Management System-ICT Monitor Scenarios
+ com_zte_ums_ict_framework_ui_page_title_2=ICT Management System-Base Scenarios
+ com_zte_ums_ict_framework_ui_page_title_3=ICT Management System-GIS Scenarios
+ com_zte_ums_ict_portal_login_title=ICT Management System
+ com_zte_ums_ict_portal_login_companyName=Corporation
diff --git a/uiframe-iui/src/main/resources/webroot/framework/appRes/img/readme.txt b/uiframe-iui/src/main/resources/webroot/framework/appRes/img/readme.txt
new file mode 100644
index 00000000..8139d156
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/appRes/img/readme.txt
@@ -0,0 +1,31 @@
+====
+ Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+====
+
+���ο�����ʽ��
+1�������ο�����ͼƬ���������ļ��¼��ɡ�ע�⣺���ֲ����޸�;ͼƬ��С��Ҫ����ԴͼƬ��С��
+2�����磺
+ ztelogo.png ͼƬ��Ҫ���ο������Ϳ������ο������ͼƬ����Ŀ¼��������ȻΪztelogo.png ��
+3������ΪĿǰ��Ҫ���ж��ο�����ͼƬԴ��ַ��
+ ../../zte/img/netnumenLogo.png
+ ../../zte/img/zte_logo_16.gif
+ ../../zte/img/zte_logo_ white.png
+ ../../zte/img/ztelogo.png
+
+4����ͼƬҲ������Ӣ�ġ��뿽������ͼƬ������������Ϊ��׺�����磺
+ ztelogo.png ͼƬ����Ӣ�����ֲ�ͬ��ʾ��
+ ����Ҫ��������ͼƬ�����ֱ��ԣ�ztelogo_zh_CN.png��ztelogo.en_US.png�������ɡ�
+5������ǰλ�ò���ҪͼƬ���뿽��../../img/empty.png��
+ ����ԭ������netnumenLogo.png�ĵط����ο�������Ҫ����ͼƬ���뽫../../img/empty.png���������޸�����ΪnetnumenLogo.png�� \ No newline at end of file
diff --git a/uiframe-iui/src/main/resources/webroot/framework/appRes/js/custom-const.js b/uiframe-iui/src/main/resources/webroot/framework/appRes/js/custom-const.js
new file mode 100644
index 00000000..9b3091b7
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/appRes/js/custom-const.js
@@ -0,0 +1 @@
+//ļзӦö const.js гĶ \ No newline at end of file
diff --git a/uiframe-iui/src/main/resources/webroot/framework/appRes/js/custom.js b/uiframe-iui/src/main/resources/webroot/framework/appRes/js/custom.js
new file mode 100644
index 00000000..cc7cc0e8
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/appRes/js/custom.js
@@ -0,0 +1 @@
+//ļзӦö ¼ע߼ĶƷ \ No newline at end of file
diff --git a/uiframe-iui/src/main/resources/webroot/framework/changepwd.html b/uiframe-iui/src/main/resources/webroot/framework/changepwd.html
new file mode 100644
index 00000000..2b4c8646
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/changepwd.html
@@ -0,0 +1,92 @@
+<!--
+
+ Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+-->
+<div class="content">
+ <form class="login-form" id="fm1" action="javascript:;" method="post">
+ <div class="modal-header">
+ <button type="button" class="close" data-dismiss="modal" aria-hidden="true">
+ </button>
+ <h4 class="modal-title" id="com_zte_ums_ict_sm_user_modify_current_password"
+ name_i18n="com_zte_ums_ict_framework_ui_i18n">
+ 当前用户密码设置
+ </h4>
+ </div>
+ <!--div class="modal-body"-->
+ <div class="alert display-hide" id="nameOrpwdError">
+ <button class="close" data-close="alert">
+ </button>
+ <span id="com_zte_ums_ict_portal_login_nameOrpwdError" name_i18n="com_zte_ums_ict_framework_ui_i18n">
+ 原始密码错误
+ </span>
+ </div>
+ <div class="form-group">
+ <label class="control-label visible-ie8 visible-ie9" id="com_zte_ums_ict_sm_user_old_password"
+ name_i18n="com_zte_ums_ict_framework_ui_i18n">
+ 旧密码
+ </label>
+ <div class="input-icon">
+ <i class="fa fa-lock">
+ </i>
+ <input type="password" class="form-control placeholder-no-fix" id="oldpassword"
+ autocomplete="off" placeholder="旧密码" name="oldpassword" />
+ </div>
+ </div>
+ <div class="form-group">
+ <label class="control-label visible-ie8 visible-ie9" id="com_zte_ums_ict_sm_user_password"
+ name_i18n="com_zte_ums_ict_framework_ui_i18n">
+ 新密码
+ </label>
+ <div class="input-icon">
+ <i class="fa fa-lock">
+ </i>
+ <input type="password" class="form-control placeholder-no-fix" id="password"
+ autocomplete="off" placeholder="新密码" name="password" />
+ </div>
+ </div>
+ <div class="form-group">
+ <label class="control-label visible-ie8 visible-ie9" id="com_zte_ums_ict_sm_user_confirmpassword"
+ name_i18n="com_zte_ums_ict_framework_ui_i18n">
+ 确认新密码
+ </label>
+ <div class="controls">
+ <div class="input-icon">
+ <i class="fa fa-check">
+ </i>
+ <input type="password" class="form-control placeholder-no-fix" id="rpassword"
+ autocomplete="off" placeholder="确认新密码" name="rpassword" />
+ </div>
+ </div>
+ </div>
+ <!--/div-->
+ <div class="form-actions">
+ <div class="modal-footer">
+ <button data-dismiss="modal" aria-hidden="true" id="cancelBtn" class="btn default ">
+ <span id="com_zte_ums_ict_sm_user_cancel_button" name_i18n="com_zte_ums_ict_framework_ui_i18n">
+ 取消
+ </span>
+ </button>
+ <button type="submit" id="submitBtn" class="btn blue">
+ <span id="com_zte_ums_ict_sm_user_ok" name_i18n="com_zte_ums_ict_framework_ui_i18n">
+ 确定
+ </span>
+ <i class="m-icon-swapright m-icon-white">
+ </i>
+ </button>
+ </div>
+ </div>
+ </form>
+</div> \ No newline at end of file
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/animate.css b/uiframe-iui/src/main/resources/webroot/framework/css/animate.css
new file mode 100644
index 00000000..95860392
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/animate.css
@@ -0,0 +1,3278 @@
+/**
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+@charset "UTF-8";
+/*
+Animate.css - http://daneden.me/animate
+Licensed under the MIT license
+
+Copyright (c) 2013 Daniel Eden
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+*/
+body { /* Addresses a small issue in webkit: http://bit.ly/NEdoDq */
+ -webkit-backface-visibility: hidden;
+}
+.animated {
+ -webkit-animation-duration: 1s;
+ -moz-animation-duration: 1s;
+ -o-animation-duration: 1s;
+ animation-duration: 1s;
+ -webkit-animation-fill-mode: both;
+ -moz-animation-fill-mode: both;
+ -o-animation-fill-mode: both;
+ animation-fill-mode: both;
+}
+
+.animated.hinge {
+ -webkit-animation-duration: 2s;
+ -moz-animation-duration: 2s;
+ -o-animation-duration: 2s;
+ animation-duration: 2s;
+}
+
+@-webkit-keyframes flash {
+ 0%, 50%, 100% {opacity: 1;}
+ 25%, 75% {opacity: 0;}
+}
+
+@-moz-keyframes flash {
+ 0%, 50%, 100% {opacity: 1;}
+ 25%, 75% {opacity: 0;}
+}
+
+@-o-keyframes flash {
+ 0%, 50%, 100% {opacity: 1;}
+ 25%, 75% {opacity: 0;}
+}
+
+@keyframes flash {
+ 0%, 50%, 100% {opacity: 1;}
+ 25%, 75% {opacity: 0;}
+}
+
+.flash {
+ -webkit-animation-name: flash;
+ -moz-animation-name: flash;
+ -o-animation-name: flash;
+ animation-name: flash;
+}
+@-webkit-keyframes shake {
+ 0%, 100% {-webkit-transform: translateX(0);}
+ 10%, 30%, 50%, 70%, 90% {-webkit-transform: translateX(-10px);}
+ 20%, 40%, 60%, 80% {-webkit-transform: translateX(10px);}
+}
+
+@-moz-keyframes shake {
+ 0%, 100% {-moz-transform: translateX(0);}
+ 10%, 30%, 50%, 70%, 90% {-moz-transform: translateX(-10px);}
+ 20%, 40%, 60%, 80% {-moz-transform: translateX(10px);}
+}
+
+@-o-keyframes shake {
+ 0%, 100% {-o-transform: translateX(0);}
+ 10%, 30%, 50%, 70%, 90% {-o-transform: translateX(-10px);}
+ 20%, 40%, 60%, 80% {-o-transform: translateX(10px);}
+}
+
+@keyframes shake {
+ 0%, 100% {transform: translateX(0);}
+ 10%, 30%, 50%, 70%, 90% {transform: translateX(-10px);}
+ 20%, 40%, 60%, 80% {transform: translateX(10px);}
+}
+
+.shake {
+ -webkit-animation-name: shake;
+ -moz-animation-name: shake;
+ -o-animation-name: shake;
+ animation-name: shake;
+}
+@-webkit-keyframes bounce {
+ 0%, 20%, 50%, 80%, 100% {-webkit-transform: translateY(0);}
+ 40% {-webkit-transform: translateY(-30px);}
+ 60% {-webkit-transform: translateY(-15px);}
+}
+
+@-moz-keyframes bounce {
+ 0%, 20%, 50%, 80%, 100% {-moz-transform: translateY(0);}
+ 40% {-moz-transform: translateY(-30px);}
+ 60% {-moz-transform: translateY(-15px);}
+}
+
+@-o-keyframes bounce {
+ 0%, 20%, 50%, 80%, 100% {-o-transform: translateY(0);}
+ 40% {-o-transform: translateY(-30px);}
+ 60% {-o-transform: translateY(-15px);}
+}
+@keyframes bounce {
+ 0%, 20%, 50%, 80%, 100% {transform: translateY(0);}
+ 40% {transform: translateY(-30px);}
+ 60% {transform: translateY(-15px);}
+}
+
+.bounce {
+ -webkit-animation-name: bounce;
+ -moz-animation-name: bounce;
+ -o-animation-name: bounce;
+ animation-name: bounce;
+}
+@-webkit-keyframes tada {
+ 0% {-webkit-transform: scale(1);}
+ 10%, 20% {-webkit-transform: scale(0.9) rotate(-3deg);}
+ 30%, 50%, 70%, 90% {-webkit-transform: scale(1.1) rotate(3deg);}
+ 40%, 60%, 80% {-webkit-transform: scale(1.1) rotate(-3deg);}
+ 100% {-webkit-transform: scale(1) rotate(0);}
+}
+
+@-moz-keyframes tada {
+ 0% {-moz-transform: scale(1);}
+ 10%, 20% {-moz-transform: scale(0.9) rotate(-3deg);}
+ 30%, 50%, 70%, 90% {-moz-transform: scale(1.1) rotate(3deg);}
+ 40%, 60%, 80% {-moz-transform: scale(1.1) rotate(-3deg);}
+ 100% {-moz-transform: scale(1) rotate(0);}
+}
+
+@-o-keyframes tada {
+ 0% {-o-transform: scale(1);}
+ 10%, 20% {-o-transform: scale(0.9) rotate(-3deg);}
+ 30%, 50%, 70%, 90% {-o-transform: scale(1.1) rotate(3deg);}
+ 40%, 60%, 80% {-o-transform: scale(1.1) rotate(-3deg);}
+ 100% {-o-transform: scale(1) rotate(0);}
+}
+
+@keyframes tada {
+ 0% {transform: scale(1);}
+ 10%, 20% {transform: scale(0.9) rotate(-3deg);}
+ 30%, 50%, 70%, 90% {transform: scale(1.1) rotate(3deg);}
+ 40%, 60%, 80% {transform: scale(1.1) rotate(-3deg);}
+ 100% {transform: scale(1) rotate(0);}
+}
+
+.tada {
+ -webkit-animation-name: tada;
+ -moz-animation-name: tada;
+ -o-animation-name: tada;
+ animation-name: tada;
+}
+@-webkit-keyframes swing {
+ 20%, 40%, 60%, 80%, 100% { -webkit-transform-origin: top center; }
+ 20% { -webkit-transform: rotate(15deg); }
+ 40% { -webkit-transform: rotate(-10deg); }
+ 60% { -webkit-transform: rotate(5deg); }
+ 80% { -webkit-transform: rotate(-5deg); }
+ 100% { -webkit-transform: rotate(0deg); }
+}
+
+@-moz-keyframes swing {
+ 20% { -moz-transform: rotate(15deg); }
+ 40% { -moz-transform: rotate(-10deg); }
+ 60% { -moz-transform: rotate(5deg); }
+ 80% { -moz-transform: rotate(-5deg); }
+ 100% { -moz-transform: rotate(0deg); }
+}
+
+@-o-keyframes swing {
+ 20% { -o-transform: rotate(15deg); }
+ 40% { -o-transform: rotate(-10deg); }
+ 60% { -o-transform: rotate(5deg); }
+ 80% { -o-transform: rotate(-5deg); }
+ 100% { -o-transform: rotate(0deg); }
+}
+
+@keyframes swing {
+ 20% { transform: rotate(15deg); }
+ 40% { transform: rotate(-10deg); }
+ 60% { transform: rotate(5deg); }
+ 80% { transform: rotate(-5deg); }
+ 100% { transform: rotate(0deg); }
+}
+
+.swing {
+ -webkit-transform-origin: top center;
+ -moz-transform-origin: top center;
+ -o-transform-origin: top center;
+ transform-origin: top center;
+ -webkit-animation-name: swing;
+ -moz-animation-name: swing;
+ -o-animation-name: swing;
+ animation-name: swing;
+}
+/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
+
+@-webkit-keyframes wobble {
+ 0% { -webkit-transform: translateX(0%); }
+ 15% { -webkit-transform: translateX(-25%) rotate(-5deg); }
+ 30% { -webkit-transform: translateX(20%) rotate(3deg); }
+ 45% { -webkit-transform: translateX(-15%) rotate(-3deg); }
+ 60% { -webkit-transform: translateX(10%) rotate(2deg); }
+ 75% { -webkit-transform: translateX(-5%) rotate(-1deg); }
+ 100% { -webkit-transform: translateX(0%); }
+}
+
+@-moz-keyframes wobble {
+ 0% { -moz-transform: translateX(0%); }
+ 15% { -moz-transform: translateX(-25%) rotate(-5deg); }
+ 30% { -moz-transform: translateX(20%) rotate(3deg); }
+ 45% { -moz-transform: translateX(-15%) rotate(-3deg); }
+ 60% { -moz-transform: translateX(10%) rotate(2deg); }
+ 75% { -moz-transform: translateX(-5%) rotate(-1deg); }
+ 100% { -moz-transform: translateX(0%); }
+}
+
+@-o-keyframes wobble {
+ 0% { -o-transform: translateX(0%); }
+ 15% { -o-transform: translateX(-25%) rotate(-5deg); }
+ 30% { -o-transform: translateX(20%) rotate(3deg); }
+ 45% { -o-transform: translateX(-15%) rotate(-3deg); }
+ 60% { -o-transform: translateX(10%) rotate(2deg); }
+ 75% { -o-transform: translateX(-5%) rotate(-1deg); }
+ 100% { -o-transform: translateX(0%); }
+}
+
+@keyframes wobble {
+ 0% { transform: translateX(0%); }
+ 15% { transform: translateX(-25%) rotate(-5deg); }
+ 30% { transform: translateX(20%) rotate(3deg); }
+ 45% { transform: translateX(-15%) rotate(-3deg); }
+ 60% { transform: translateX(10%) rotate(2deg); }
+ 75% { transform: translateX(-5%) rotate(-1deg); }
+ 100% { transform: translateX(0%); }
+}
+
+.wobble {
+ -webkit-animation-name: wobble;
+ -moz-animation-name: wobble;
+ -o-animation-name: wobble;
+ animation-name: wobble;
+}
+/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
+
+@-webkit-keyframes pulse {
+ 0% { -webkit-transform: scale(1); }
+ 50% { -webkit-transform: scale(1.1); }
+ 100% { -webkit-transform: scale(1); }
+}
+@-moz-keyframes pulse {
+ 0% { -moz-transform: scale(1); }
+ 50% { -moz-transform: scale(1.1); }
+ 100% { -moz-transform: scale(1); }
+}
+@-o-keyframes pulse {
+ 0% { -o-transform: scale(1); }
+ 50% { -o-transform: scale(1.1); }
+ 100% { -o-transform: scale(1); }
+}
+@keyframes pulse {
+ 0% { transform: scale(1); }
+ 50% { transform: scale(1.1); }
+ 100% { transform: scale(1); }
+}
+
+.pulse {
+ -webkit-animation-name: pulse;
+ -moz-animation-name: pulse;
+ -o-animation-name: pulse;
+ animation-name: pulse;
+}
+@-webkit-keyframes flip {
+ 0% {
+ -webkit-transform: perspective(400px) rotateY(0);
+ -webkit-animation-timing-function: ease-out;
+ }
+ 40% {
+ -webkit-transform: perspective(400px) translateZ(150px) rotateY(170deg);
+ -webkit-animation-timing-function: ease-out;
+ }
+ 50% {
+ -webkit-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
+ -webkit-animation-timing-function: ease-in;
+ }
+ 80% {
+ -webkit-transform: perspective(400px) rotateY(360deg) scale(.95);
+ -webkit-animation-timing-function: ease-in;
+ }
+ 100% {
+ -webkit-transform: perspective(400px) scale(1);
+ -webkit-animation-timing-function: ease-in;
+ }
+}
+@-moz-keyframes flip {
+ 0% {
+ -moz-transform: perspective(400px) rotateY(0);
+ -moz-animation-timing-function: ease-out;
+ }
+ 40% {
+ -moz-transform: perspective(400px) translateZ(150px) rotateY(170deg);
+ -moz-animation-timing-function: ease-out;
+ }
+ 50% {
+ -moz-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
+ -moz-animation-timing-function: ease-in;
+ }
+ 80% {
+ -moz-transform: perspective(400px) rotateY(360deg) scale(.95);
+ -moz-animation-timing-function: ease-in;
+ }
+ 100% {
+ -moz-transform: perspective(400px) scale(1);
+ -moz-animation-timing-function: ease-in;
+ }
+}
+@-o-keyframes flip {
+ 0% {
+ -o-transform: perspective(400px) rotateY(0);
+ -o-animation-timing-function: ease-out;
+ }
+ 40% {
+ -o-transform: perspective(400px) translateZ(150px) rotateY(170deg);
+ -o-animation-timing-function: ease-out;
+ }
+ 50% {
+ -o-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
+ -o-animation-timing-function: ease-in;
+ }
+ 80% {
+ -o-transform: perspective(400px) rotateY(360deg) scale(.95);
+ -o-animation-timing-function: ease-in;
+ }
+ 100% {
+ -o-transform: perspective(400px) scale(1);
+ -o-animation-timing-function: ease-in;
+ }
+}
+@keyframes flip {
+ 0% {
+ transform: perspective(400px) rotateY(0);
+ animation-timing-function: ease-out;
+ }
+ 40% {
+ transform: perspective(400px) translateZ(150px) rotateY(170deg);
+ animation-timing-function: ease-out;
+ }
+ 50% {
+ transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
+ animation-timing-function: ease-in;
+ }
+ 80% {
+ transform: perspective(400px) rotateY(360deg) scale(.95);
+ animation-timing-function: ease-in;
+ }
+ 100% {
+ transform: perspective(400px) scale(1);
+ animation-timing-function: ease-in;
+ }
+}
+
+.flip {
+ -webkit-backface-visibility: visible !important;
+ -webkit-animation-name: flip;
+ -moz-backface-visibility: visible !important;
+ -moz-animation-name: flip;
+ -o-backface-visibility: visible !important;
+ -o-animation-name: flip;
+ backface-visibility: visible !important;
+ animation-name: flip;
+}
+@-webkit-keyframes flipInX {
+ 0% {
+ -webkit-transform: perspective(400px) rotateX(90deg);
+ opacity: 0;
+ }
+
+ 40% {
+ -webkit-transform: perspective(400px) rotateX(-10deg);
+ }
+
+ 70% {
+ -webkit-transform: perspective(400px) rotateX(10deg);
+ }
+
+ 100% {
+ -webkit-transform: perspective(400px) rotateX(0deg);
+ opacity: 1;
+ }
+}
+@-moz-keyframes flipInX {
+ 0% {
+ -moz-transform: perspective(400px) rotateX(90deg);
+ opacity: 0;
+ }
+
+ 40% {
+ -moz-transform: perspective(400px) rotateX(-10deg);
+ }
+
+ 70% {
+ -moz-transform: perspective(400px) rotateX(10deg);
+ }
+
+ 100% {
+ -moz-transform: perspective(400px) rotateX(0deg);
+ opacity: 1;
+ }
+}
+@-o-keyframes flipInX {
+ 0% {
+ -o-transform: perspective(400px) rotateX(90deg);
+ opacity: 0;
+ }
+
+ 40% {
+ -o-transform: perspective(400px) rotateX(-10deg);
+ }
+
+ 70% {
+ -o-transform: perspective(400px) rotateX(10deg);
+ }
+
+ 100% {
+ -o-transform: perspective(400px) rotateX(0deg);
+ opacity: 1;
+ }
+}
+@keyframes flipInX {
+ 0% {
+ transform: perspective(400px) rotateX(90deg);
+ opacity: 0;
+ }
+
+ 40% {
+ transform: perspective(400px) rotateX(-10deg);
+ }
+
+ 70% {
+ transform: perspective(400px) rotateX(10deg);
+ }
+
+ 100% {
+ transform: perspective(400px) rotateX(0deg);
+ opacity: 1;
+ }
+}
+
+.flipInX {
+ -webkit-backface-visibility: visible !important;
+ -webkit-animation-name: flipInX;
+ -moz-backface-visibility: visible !important;
+ -moz-animation-name: flipInX;
+ -o-backface-visibility: visible !important;
+ -o-animation-name: flipInX;
+ backface-visibility: visible !important;
+ animation-name: flipInX;
+}
+@-webkit-keyframes flipOutX {
+ 0% {
+ -webkit-transform: perspective(400px) rotateX(0deg);
+ opacity: 1;
+ }
+ 100% {
+ -webkit-transform: perspective(400px) rotateX(90deg);
+ opacity: 0;
+ }
+}
+
+@-moz-keyframes flipOutX {
+ 0% {
+ -moz-transform: perspective(400px) rotateX(0deg);
+ opacity: 1;
+ }
+ 100% {
+ -moz-transform: perspective(400px) rotateX(90deg);
+ opacity: 0;
+ }
+}
+
+@-o-keyframes flipOutX {
+ 0% {
+ -o-transform: perspective(400px) rotateX(0deg);
+ opacity: 1;
+ }
+ 100% {
+ -o-transform: perspective(400px) rotateX(90deg);
+ opacity: 0;
+ }
+}
+
+@keyframes flipOutX {
+ 0% {
+ transform: perspective(400px) rotateX(0deg);
+ opacity: 1;
+ }
+ 100% {
+ transform: perspective(400px) rotateX(90deg);
+ opacity: 0;
+ }
+}
+
+.flipOutX {
+ -webkit-animation-name: flipOutX;
+ -webkit-backface-visibility: visible !important;
+ -moz-animation-name: flipOutX;
+ -moz-backface-visibility: visible !important;
+ -o-animation-name: flipOutX;
+ -o-backface-visibility: visible !important;
+ animation-name: flipOutX;
+ backface-visibility: visible !important;
+}
+@-webkit-keyframes flipInY {
+ 0% {
+ -webkit-transform: perspective(400px) rotateY(90deg);
+ opacity: 0;
+ }
+
+ 40% {
+ -webkit-transform: perspective(400px) rotateY(-10deg);
+ }
+
+ 70% {
+ -webkit-transform: perspective(400px) rotateY(10deg);
+ }
+
+ 100% {
+ -webkit-transform: perspective(400px) rotateY(0deg);
+ opacity: 1;
+ }
+}
+@-moz-keyframes flipInY {
+ 0% {
+ -moz-transform: perspective(400px) rotateY(90deg);
+ opacity: 0;
+ }
+
+ 40% {
+ -moz-transform: perspective(400px) rotateY(-10deg);
+ }
+
+ 70% {
+ -moz-transform: perspective(400px) rotateY(10deg);
+ }
+
+ 100% {
+ -moz-transform: perspective(400px) rotateY(0deg);
+ opacity: 1;
+ }
+}
+@-o-keyframes flipInY {
+ 0% {
+ -o-transform: perspective(400px) rotateY(90deg);
+ opacity: 0;
+ }
+
+ 40% {
+ -o-transform: perspective(400px) rotateY(-10deg);
+ }
+
+ 70% {
+ -o-transform: perspective(400px) rotateY(10deg);
+ }
+
+ 100% {
+ -o-transform: perspective(400px) rotateY(0deg);
+ opacity: 1;
+ }
+}
+@keyframes flipInY {
+ 0% {
+ transform: perspective(400px) rotateY(90deg);
+ opacity: 0;
+ }
+
+ 40% {
+ transform: perspective(400px) rotateY(-10deg);
+ }
+
+ 70% {
+ transform: perspective(400px) rotateY(10deg);
+ }
+
+ 100% {
+ transform: perspective(400px) rotateY(0deg);
+ opacity: 1;
+ }
+}
+
+.flipInY {
+ -webkit-backface-visibility: visible !important;
+ -webkit-animation-name: flipInY;
+ -moz-backface-visibility: visible !important;
+ -moz-animation-name: flipInY;
+ -o-backface-visibility: visible !important;
+ -o-animation-name: flipInY;
+ backface-visibility: visible !important;
+ animation-name: flipInY;
+}
+@-webkit-keyframes flipOutY {
+ 0% {
+ -webkit-transform: perspective(400px) rotateY(0deg);
+ opacity: 1;
+ }
+ 100% {
+ -webkit-transform: perspective(400px) rotateY(90deg);
+ opacity: 0;
+ }
+}
+@-moz-keyframes flipOutY {
+ 0% {
+ -moz-transform: perspective(400px) rotateY(0deg);
+ opacity: 1;
+ }
+ 100% {
+ -moz-transform: perspective(400px) rotateY(90deg);
+ opacity: 0;
+ }
+}
+@-o-keyframes flipOutY {
+ 0% {
+ -o-transform: perspective(400px) rotateY(0deg);
+ opacity: 1;
+ }
+ 100% {
+ -o-transform: perspective(400px) rotateY(90deg);
+ opacity: 0;
+ }
+}
+@keyframes flipOutY {
+ 0% {
+ transform: perspective(400px) rotateY(0deg);
+ opacity: 1;
+ }
+ 100% {
+ transform: perspective(400px) rotateY(90deg);
+ opacity: 0;
+ }
+}
+
+.flipOutY {
+ -webkit-backface-visibility: visible !important;
+ -webkit-animation-name: flipOutY;
+ -moz-backface-visibility: visible !important;
+ -moz-animation-name: flipOutY;
+ -o-backface-visibility: visible !important;
+ -o-animation-name: flipOutY;
+ backface-visibility: visible !important;
+ animation-name: flipOutY;
+}
+@-webkit-keyframes fadeIn {
+ 0% {opacity: 0;}
+ 100% {opacity: 1;}
+}
+
+@-moz-keyframes fadeIn {
+ 0% {opacity: 0;}
+ 100% {opacity: 1;}
+}
+
+@-o-keyframes fadeIn {
+ 0% {opacity: 0;}
+ 100% {opacity: 1;}
+}
+
+@keyframes fadeIn {
+ 0% {opacity: 0;}
+ 100% {opacity: 1;}
+}
+
+.fadeIn {
+ -webkit-animation-name: fadeIn;
+ -moz-animation-name: fadeIn;
+ -o-animation-name: fadeIn;
+ animation-name: fadeIn;
+}
+@-webkit-keyframes fadeInUp {
+ 0% {
+ opacity: 0;
+ -webkit-transform: translateY(20px);
+ }
+
+ 100% {
+ opacity: 1;
+ -webkit-transform: translateY(0);
+ }
+}
+
+@-moz-keyframes fadeInUp {
+ 0% {
+ opacity: 0;
+ -moz-transform: translateY(20px);
+ }
+
+ 100% {
+ opacity: 1;
+ -moz-transform: translateY(0);
+ }
+}
+
+@-o-keyframes fadeInUp {
+ 0% {
+ opacity: 0;
+ -o-transform: translateY(20px);
+ }
+
+ 100% {
+ opacity: 1;
+ -o-transform: translateY(0);
+ }
+}
+
+@keyframes fadeInUp {
+ 0% {
+ opacity: 0;
+ transform: translateY(20px);
+ }
+
+ 100% {
+ opacity: 1;
+ transform: translateY(0);
+ }
+}
+
+.fadeInUp {
+ -webkit-animation-name: fadeInUp;
+ -moz-animation-name: fadeInUp;
+ -o-animation-name: fadeInUp;
+ animation-name: fadeInUp;
+}
+@-webkit-keyframes fadeInDown {
+ 0% {
+ opacity: 0;
+ -webkit-transform: translateY(-20px);
+ }
+
+ 100% {
+ opacity: 1;
+ -webkit-transform: translateY(0);
+ }
+}
+
+@-moz-keyframes fadeInDown {
+ 0% {
+ opacity: 0;
+ -moz-transform: translateY(-20px);
+ }
+
+ 100% {
+ opacity: 1;
+ -moz-transform: translateY(0);
+ }
+}
+
+@-o-keyframes fadeInDown {
+ 0% {
+ opacity: 0;
+ -o-transform: translateY(-20px);
+ }
+
+ 100% {
+ opacity: 1;
+ -o-transform: translateY(0);
+ }
+}
+
+@keyframes fadeInDown {
+ 0% {
+ opacity: 0;
+ transform: translateY(-20px);
+ }
+
+ 100% {
+ opacity: 1;
+ transform: translateY(0);
+ }
+}
+
+.fadeInDown {
+ -webkit-animation-name: fadeInDown;
+ -moz-animation-name: fadeInDown;
+ -o-animation-name: fadeInDown;
+ animation-name: fadeInDown;
+}
+@-webkit-keyframes fadeInLeft {
+ 0% {
+ opacity: 0;
+ -webkit-transform: translateX(-20px);
+ }
+
+ 100% {
+ opacity: 1;
+ -webkit-transform: translateX(0);
+ }
+}
+
+@-moz-keyframes fadeInLeft {
+ 0% {
+ opacity: 0;
+ -moz-transform: translateX(-20px);
+ }
+
+ 100% {
+ opacity: 1;
+ -moz-transform: translateX(0);
+ }
+}
+
+@-o-keyframes fadeInLeft {
+ 0% {
+ opacity: 0;
+ -o-transform: translateX(-20px);
+ }
+
+ 100% {
+ opacity: 1;
+ -o-transform: translateX(0);
+ }
+}
+
+@keyframes fadeInLeft {
+ 0% {
+ opacity: 0;
+ transform: translateX(-20px);
+ }
+
+ 100% {
+ opacity: 1;
+ transform: translateX(0);
+ }
+}
+
+.fadeInLeft {
+ -webkit-animation-name: fadeInLeft;
+ -moz-animation-name: fadeInLeft;
+ -o-animation-name: fadeInLeft;
+ animation-name: fadeInLeft;
+}
+@-webkit-keyframes fadeInRight {
+ 0% {
+ opacity: 0;
+ -webkit-transform: translateX(20px);
+ }
+
+ 100% {
+ opacity: 1;
+ -webkit-transform: translateX(0);
+ }
+}
+
+@-moz-keyframes fadeInRight {
+ 0% {
+ opacity: 0;
+ -moz-transform: translateX(20px);
+ }
+
+ 100% {
+ opacity: 1;
+ -moz-transform: translateX(0);
+ }
+}
+
+@-o-keyframes fadeInRight {
+ 0% {
+ opacity: 0;
+ -o-transform: translateX(20px);
+ }
+
+ 100% {
+ opacity: 1;
+ -o-transform: translateX(0);
+ }
+}
+
+@keyframes fadeInRight {
+ 0% {
+ opacity: 0;
+ transform: translateX(20px);
+ }
+
+ 100% {
+ opacity: 1;
+ transform: translateX(0);
+ }
+}
+
+.fadeInRight {
+ -webkit-animation-name: fadeInRight;
+ -moz-animation-name: fadeInRight;
+ -o-animation-name: fadeInRight;
+ animation-name: fadeInRight;
+}
+@-webkit-keyframes fadeInUpBig {
+ 0% {
+ opacity: 0;
+ -webkit-transform: translateY(2000px);
+ }
+
+ 100% {
+ opacity: 1;
+ -webkit-transform: translateY(0);
+ }
+}
+
+@-moz-keyframes fadeInUpBig {
+ 0% {
+ opacity: 0;
+ -moz-transform: translateY(2000px);
+ }
+
+ 100% {
+ opacity: 1;
+ -moz-transform: translateY(0);
+ }
+}
+
+@-o-keyframes fadeInUpBig {
+ 0% {
+ opacity: 0;
+ -o-transform: translateY(2000px);
+ }
+
+ 100% {
+ opacity: 1;
+ -o-transform: translateY(0);
+ }
+}
+
+@keyframes fadeInUpBig {
+ 0% {
+ opacity: 0;
+ transform: translateY(2000px);
+ }
+
+ 100% {
+ opacity: 1;
+ transform: translateY(0);
+ }
+}
+
+.fadeInUpBig {
+ -webkit-animation-name: fadeInUpBig;
+ -moz-animation-name: fadeInUpBig;
+ -o-animation-name: fadeInUpBig;
+ animation-name: fadeInUpBig;
+}
+@-webkit-keyframes fadeInDownBig {
+ 0% {
+ opacity: 0;
+ -webkit-transform: translateY(-2000px);
+ }
+
+ 100% {
+ opacity: 1;
+ -webkit-transform: translateY(0);
+ }
+}
+
+@-moz-keyframes fadeInDownBig {
+ 0% {
+ opacity: 0;
+ -moz-transform: translateY(-2000px);
+ }
+
+ 100% {
+ opacity: 1;
+ -moz-transform: translateY(0);
+ }
+}
+
+@-o-keyframes fadeInDownBig {
+ 0% {
+ opacity: 0;
+ -o-transform: translateY(-2000px);
+ }
+
+ 100% {
+ opacity: 1;
+ -o-transform: translateY(0);
+ }
+}
+
+@keyframes fadeInDownBig {
+ 0% {
+ opacity: 0;
+ transform: translateY(-2000px);
+ }
+
+ 100% {
+ opacity: 1;
+ transform: translateY(0);
+ }
+}
+
+.fadeInDownBig {
+ -webkit-animation-name: fadeInDownBig;
+ -moz-animation-name: fadeInDownBig;
+ -o-animation-name: fadeInDownBig;
+ animation-name: fadeInDownBig;
+}
+@-webkit-keyframes fadeInLeftBig {
+ 0% {
+ opacity: 0;
+ -webkit-transform: translateX(-2000px);
+ }
+
+ 100% {
+ opacity: 1;
+ -webkit-transform: translateX(0);
+ }
+}
+@-moz-keyframes fadeInLeftBig {
+ 0% {
+ opacity: 0;
+ -moz-transform: translateX(-2000px);
+ }
+
+ 100% {
+ opacity: 1;
+ -moz-transform: translateX(0);
+ }
+}
+@-o-keyframes fadeInLeftBig {
+ 0% {
+ opacity: 0;
+ -o-transform: translateX(-2000px);
+ }
+
+ 100% {
+ opacity: 1;
+ -o-transform: translateX(0);
+ }
+}
+@keyframes fadeInLeftBig {
+ 0% {
+ opacity: 0;
+ transform: translateX(-2000px);
+ }
+
+ 100% {
+ opacity: 1;
+ transform: translateX(0);
+ }
+}
+
+.fadeInLeftBig {
+ -webkit-animation-name: fadeInLeftBig;
+ -moz-animation-name: fadeInLeftBig;
+ -o-animation-name: fadeInLeftBig;
+ animation-name: fadeInLeftBig;
+}
+@-webkit-keyframes fadeInRightBig {
+ 0% {
+ opacity: 0;
+ -webkit-transform: translateX(2000px);
+ }
+
+ 100% {
+ opacity: 1;
+ -webkit-transform: translateX(0);
+ }
+}
+
+@-moz-keyframes fadeInRightBig {
+ 0% {
+ opacity: 0;
+ -moz-transform: translateX(2000px);
+ }
+
+ 100% {
+ opacity: 1;
+ -moz-transform: translateX(0);
+ }
+}
+
+@-o-keyframes fadeInRightBig {
+ 0% {
+ opacity: 0;
+ -o-transform: translateX(2000px);
+ }
+
+ 100% {
+ opacity: 1;
+ -o-transform: translateX(0);
+ }
+}
+
+@keyframes fadeInRightBig {
+ 0% {
+ opacity: 0;
+ transform: translateX(2000px);
+ }
+
+ 100% {
+ opacity: 1;
+ transform: translateX(0);
+ }
+}
+
+.fadeInRightBig {
+ -webkit-animation-name: fadeInRightBig;
+ -moz-animation-name: fadeInRightBig;
+ -o-animation-name: fadeInRightBig;
+ animation-name: fadeInRightBig;
+}
+@-webkit-keyframes fadeOut {
+ 0% {opacity: 1;}
+ 100% {opacity: 0;}
+}
+
+@-moz-keyframes fadeOut {
+ 0% {opacity: 1;}
+ 100% {opacity: 0;}
+}
+
+@-o-keyframes fadeOut {
+ 0% {opacity: 1;}
+ 100% {opacity: 0;}
+}
+
+@keyframes fadeOut {
+ 0% {opacity: 1;}
+ 100% {opacity: 0;}
+}
+
+.fadeOut {
+ -webkit-animation-name: fadeOut;
+ -moz-animation-name: fadeOut;
+ -o-animation-name: fadeOut;
+ animation-name: fadeOut;
+}
+@-webkit-keyframes fadeOutUp {
+ 0% {
+ opacity: 1;
+ -webkit-transform: translateY(0);
+ }
+
+ 100% {
+ opacity: 0;
+ -webkit-transform: translateY(-20px);
+ }
+}
+@-moz-keyframes fadeOutUp {
+ 0% {
+ opacity: 1;
+ -moz-transform: translateY(0);
+ }
+
+ 100% {
+ opacity: 0;
+ -moz-transform: translateY(-20px);
+ }
+}
+@-o-keyframes fadeOutUp {
+ 0% {
+ opacity: 1;
+ -o-transform: translateY(0);
+ }
+
+ 100% {
+ opacity: 0;
+ -o-transform: translateY(-20px);
+ }
+}
+@keyframes fadeOutUp {
+ 0% {
+ opacity: 1;
+ transform: translateY(0);
+ }
+
+ 100% {
+ opacity: 0;
+ transform: translateY(-20px);
+ }
+}
+
+.fadeOutUp {
+ -webkit-animation-name: fadeOutUp;
+ -moz-animation-name: fadeOutUp;
+ -o-animation-name: fadeOutUp;
+ animation-name: fadeOutUp;
+}
+@-webkit-keyframes fadeOutDown {
+ 0% {
+ opacity: 1;
+ -webkit-transform: translateY(0);
+ }
+
+ 100% {
+ opacity: 0;
+ -webkit-transform: translateY(20px);
+ }
+}
+
+@-moz-keyframes fadeOutDown {
+ 0% {
+ opacity: 1;
+ -moz-transform: translateY(0);
+ }
+
+ 100% {
+ opacity: 0;
+ -moz-transform: translateY(20px);
+ }
+}
+
+@-o-keyframes fadeOutDown {
+ 0% {
+ opacity: 1;
+ -o-transform: translateY(0);
+ }
+
+ 100% {
+ opacity: 0;
+ -o-transform: translateY(20px);
+ }
+}
+
+@keyframes fadeOutDown {
+ 0% {
+ opacity: 1;
+ transform: translateY(0);
+ }
+
+ 100% {
+ opacity: 0;
+ transform: translateY(20px);
+ }
+}
+
+.fadeOutDown {
+ -webkit-animation-name: fadeOutDown;
+ -moz-animation-name: fadeOutDown;
+ -o-animation-name: fadeOutDown;
+ animation-name: fadeOutDown;
+}
+@-webkit-keyframes fadeOutLeft {
+ 0% {
+ opacity: 1;
+ -webkit-transform: translateX(0);
+ }
+
+ 100% {
+ opacity: 0;
+ -webkit-transform: translateX(-20px);
+ }
+}
+
+@-moz-keyframes fadeOutLeft {
+ 0% {
+ opacity: 1;
+ -moz-transform: translateX(0);
+ }
+
+ 100% {
+ opacity: 0;
+ -moz-transform: translateX(-20px);
+ }
+}
+
+@-o-keyframes fadeOutLeft {
+ 0% {
+ opacity: 1;
+ -o-transform: translateX(0);
+ }
+
+ 100% {
+ opacity: 0;
+ -o-transform: translateX(-20px);
+ }
+}
+
+@keyframes fadeOutLeft {
+ 0% {
+ opacity: 1;
+ transform: translateX(0);
+ }
+
+ 100% {
+ opacity: 0;
+ transform: translateX(-20px);
+ }
+}
+
+.fadeOutLeft {
+ -webkit-animation-name: fadeOutLeft;
+ -moz-animation-name: fadeOutLeft;
+ -o-animation-name: fadeOutLeft;
+ animation-name: fadeOutLeft;
+}
+@-webkit-keyframes fadeOutRight {
+ 0% {
+ opacity: 1;
+ -webkit-transform: translateX(0);
+ }
+
+ 100% {
+ opacity: 0;
+ -webkit-transform: translateX(20px);
+ }
+}
+
+@-moz-keyframes fadeOutRight {
+ 0% {
+ opacity: 1;
+ -moz-transform: translateX(0);
+ }
+
+ 100% {
+ opacity: 0;
+ -moz-transform: translateX(20px);
+ }
+}
+
+@-o-keyframes fadeOutRight {
+ 0% {
+ opacity: 1;
+ -o-transform: translateX(0);
+ }
+
+ 100% {
+ opacity: 0;
+ -o-transform: translateX(20px);
+ }
+}
+
+@keyframes fadeOutRight {
+ 0% {
+ opacity: 1;
+ transform: translateX(0);
+ }
+
+ 100% {
+ opacity: 0;
+ transform: translateX(20px);
+ }
+}
+
+.fadeOutRight {
+ -webkit-animation-name: fadeOutRight;
+ -moz-animation-name: fadeOutRight;
+ -o-animation-name: fadeOutRight;
+ animation-name: fadeOutRight;
+}
+@-webkit-keyframes fadeOutUpBig {
+ 0% {
+ opacity: 1;
+ -webkit-transform: translateY(0);
+ }
+
+ 100% {
+ opacity: 0;
+ -webkit-transform: translateY(-2000px);
+ }
+}
+
+@-moz-keyframes fadeOutUpBig {
+ 0% {
+ opacity: 1;
+ -moz-transform: translateY(0);
+ }
+
+ 100% {
+ opacity: 0;
+ -moz-transform: translateY(-2000px);
+ }
+}
+
+@-o-keyframes fadeOutUpBig {
+ 0% {
+ opacity: 1;
+ -o-transform: translateY(0);
+ }
+
+ 100% {
+ opacity: 0;
+ -o-transform: translateY(-2000px);
+ }
+}
+
+@keyframes fadeOutUpBig {
+ 0% {
+ opacity: 1;
+ transform: translateY(0);
+ }
+
+ 100% {
+ opacity: 0;
+ transform: translateY(-2000px);
+ }
+}
+
+.fadeOutUpBig {
+ -webkit-animation-name: fadeOutUpBig;
+ -moz-animation-name: fadeOutUpBig;
+ -o-animation-name: fadeOutUpBig;
+ animation-name: fadeOutUpBig;
+}
+@-webkit-keyframes fadeOutDownBig {
+ 0% {
+ opacity: 1;
+ -webkit-transform: translateY(0);
+ }
+
+ 100% {
+ opacity: 0;
+ -webkit-transform: translateY(2000px);
+ }
+}
+
+@-moz-keyframes fadeOutDownBig {
+ 0% {
+ opacity: 1;
+ -moz-transform: translateY(0);
+ }
+
+ 100% {
+ opacity: 0;
+ -moz-transform: translateY(2000px);
+ }
+}
+
+@-o-keyframes fadeOutDownBig {
+ 0% {
+ opacity: 1;
+ -o-transform: translateY(0);
+ }
+
+ 100% {
+ opacity: 0;
+ -o-transform: translateY(2000px);
+ }
+}
+
+@keyframes fadeOutDownBig {
+ 0% {
+ opacity: 1;
+ transform: translateY(0);
+ }
+
+ 100% {
+ opacity: 0;
+ transform: translateY(2000px);
+ }
+}
+
+.fadeOutDownBig {
+ -webkit-animation-name: fadeOutDownBig;
+ -moz-animation-name: fadeOutDownBig;
+ -o-animation-name: fadeOutDownBig;
+ animation-name: fadeOutDownBig;
+}
+@-webkit-keyframes fadeOutLeftBig {
+ 0% {
+ opacity: 1;
+ -webkit-transform: translateX(0);
+ }
+
+ 100% {
+ opacity: 0;
+ -webkit-transform: translateX(-2000px);
+ }
+}
+
+@-moz-keyframes fadeOutLeftBig {
+ 0% {
+ opacity: 1;
+ -moz-transform: translateX(0);
+ }
+
+ 100% {
+ opacity: 0;
+ -moz-transform: translateX(-2000px);
+ }
+}
+
+@-o-keyframes fadeOutLeftBig {
+ 0% {
+ opacity: 1;
+ -o-transform: translateX(0);
+ }
+
+ 100% {
+ opacity: 0;
+ -o-transform: translateX(-2000px);
+ }
+}
+
+@keyframes fadeOutLeftBig {
+ 0% {
+ opacity: 1;
+ transform: translateX(0);
+ }
+
+ 100% {
+ opacity: 0;
+ transform: translateX(-2000px);
+ }
+}
+
+.fadeOutLeftBig {
+ -webkit-animation-name: fadeOutLeftBig;
+ -moz-animation-name: fadeOutLeftBig;
+ -o-animation-name: fadeOutLeftBig;
+ animation-name: fadeOutLeftBig;
+}
+@-webkit-keyframes fadeOutRightBig {
+ 0% {
+ opacity: 1;
+ -webkit-transform: translateX(0);
+ }
+
+ 100% {
+ opacity: 0;
+ -webkit-transform: translateX(2000px);
+ }
+}
+@-moz-keyframes fadeOutRightBig {
+ 0% {
+ opacity: 1;
+ -moz-transform: translateX(0);
+ }
+
+ 100% {
+ opacity: 0;
+ -moz-transform: translateX(2000px);
+ }
+}
+@-o-keyframes fadeOutRightBig {
+ 0% {
+ opacity: 1;
+ -o-transform: translateX(0);
+ }
+
+ 100% {
+ opacity: 0;
+ -o-transform: translateX(2000px);
+ }
+}
+@keyframes fadeOutRightBig {
+ 0% {
+ opacity: 1;
+ transform: translateX(0);
+ }
+
+ 100% {
+ opacity: 0;
+ transform: translateX(2000px);
+ }
+}
+
+.fadeOutRightBig {
+ -webkit-animation-name: fadeOutRightBig;
+ -moz-animation-name: fadeOutRightBig;
+ -o-animation-name: fadeOutRightBig;
+ animation-name: fadeOutRightBig;
+}
+@-webkit-keyframes bounceIn {
+ 0% {
+ opacity: 0;
+ -webkit-transform: scale(.3);
+ }
+
+ 50% {
+ opacity: 1;
+ -webkit-transform: scale(1.05);
+ }
+
+ 70% {
+ -webkit-transform: scale(.9);
+ }
+
+ 100% {
+ -webkit-transform: scale(1);
+ }
+}
+
+@-moz-keyframes bounceIn {
+ 0% {
+ opacity: 0;
+ -moz-transform: scale(.3);
+ }
+
+ 50% {
+ opacity: 1;
+ -moz-transform: scale(1.05);
+ }
+
+ 70% {
+ -moz-transform: scale(.9);
+ }
+
+ 100% {
+ -moz-transform: scale(1);
+ }
+}
+
+@-o-keyframes bounceIn {
+ 0% {
+ opacity: 0;
+ -o-transform: scale(.3);
+ }
+
+ 50% {
+ opacity: 1;
+ -o-transform: scale(1.05);
+ }
+
+ 70% {
+ -o-transform: scale(.9);
+ }
+
+ 100% {
+ -o-transform: scale(1);
+ }
+}
+
+@keyframes bounceIn {
+ 0% {
+ opacity: 0;
+ transform: scale(.3);
+ }
+
+ 50% {
+ opacity: 1;
+ transform: scale(1.05);
+ }
+
+ 70% {
+ transform: scale(.9);
+ }
+
+ 100% {
+ transform: scale(1);
+ }
+}
+
+.bounceIn {
+ -webkit-animation-name: bounceIn;
+ -moz-animation-name: bounceIn;
+ -o-animation-name: bounceIn;
+ animation-name: bounceIn;
+}
+@-webkit-keyframes bounceInUp {
+ 0% {
+ opacity: 0;
+ -webkit-transform: translateY(2000px);
+ }
+
+ 60% {
+ opacity: 1;
+ -webkit-transform: translateY(-30px);
+ }
+
+ 80% {
+ -webkit-transform: translateY(10px);
+ }
+
+ 100% {
+ -webkit-transform: translateY(0);
+ }
+}
+@-moz-keyframes bounceInUp {
+ 0% {
+ opacity: 0;
+ -moz-transform: translateY(2000px);
+ }
+
+ 60% {
+ opacity: 1;
+ -moz-transform: translateY(-30px);
+ }
+
+ 80% {
+ -moz-transform: translateY(10px);
+ }
+
+ 100% {
+ -moz-transform: translateY(0);
+ }
+}
+
+@-o-keyframes bounceInUp {
+ 0% {
+ opacity: 0;
+ -o-transform: translateY(2000px);
+ }
+
+ 60% {
+ opacity: 1;
+ -o-transform: translateY(-30px);
+ }
+
+ 80% {
+ -o-transform: translateY(10px);
+ }
+
+ 100% {
+ -o-transform: translateY(0);
+ }
+}
+
+@keyframes bounceInUp {
+ 0% {
+ opacity: 0;
+ transform: translateY(2000px);
+ }
+
+ 60% {
+ opacity: 1;
+ transform: translateY(-30px);
+ }
+
+ 80% {
+ transform: translateY(10px);
+ }
+
+ 100% {
+ transform: translateY(0);
+ }
+}
+
+.bounceInUp {
+ -webkit-animation-name: bounceInUp;
+ -moz-animation-name: bounceInUp;
+ -o-animation-name: bounceInUp;
+ animation-name: bounceInUp;
+}
+@-webkit-keyframes bounceInDown {
+ 0% {
+ opacity: 0;
+ -webkit-transform: translateY(-2000px);
+ }
+
+ 60% {
+ opacity: 1;
+ -webkit-transform: translateY(30px);
+ }
+
+ 80% {
+ -webkit-transform: translateY(-10px);
+ }
+
+ 100% {
+ -webkit-transform: translateY(0);
+ }
+}
+
+@-moz-keyframes bounceInDown {
+ 0% {
+ opacity: 0;
+ -moz-transform: translateY(-2000px);
+ }
+
+ 60% {
+ opacity: 1;
+ -moz-transform: translateY(30px);
+ }
+
+ 80% {
+ -moz-transform: translateY(-10px);
+ }
+
+ 100% {
+ -moz-transform: translateY(0);
+ }
+}
+
+@-o-keyframes bounceInDown {
+ 0% {
+ opacity: 0;
+ -o-transform: translateY(-2000px);
+ }
+
+ 60% {
+ opacity: 1;
+ -o-transform: translateY(30px);
+ }
+
+ 80% {
+ -o-transform: translateY(-10px);
+ }
+
+ 100% {
+ -o-transform: translateY(0);
+ }
+}
+
+@keyframes bounceInDown {
+ 0% {
+ opacity: 0;
+ transform: translateY(-2000px);
+ }
+
+ 60% {
+ opacity: 1;
+ transform: translateY(30px);
+ }
+
+ 80% {
+ transform: translateY(-10px);
+ }
+
+ 100% {
+ transform: translateY(0);
+ }
+}
+
+.bounceInDown {
+ -webkit-animation-name: bounceInDown;
+ -moz-animation-name: bounceInDown;
+ -o-animation-name: bounceInDown;
+ animation-name: bounceInDown;
+}
+@-webkit-keyframes bounceInLeft {
+ 0% {
+ opacity: 0;
+ -webkit-transform: translateX(-2000px);
+ }
+
+ 60% {
+ opacity: 1;
+ -webkit-transform: translateX(30px);
+ }
+
+ 80% {
+ -webkit-transform: translateX(-10px);
+ }
+
+ 100% {
+ -webkit-transform: translateX(0);
+ }
+}
+
+@-moz-keyframes bounceInLeft {
+ 0% {
+ opacity: 0;
+ -moz-transform: translateX(-2000px);
+ }
+
+ 60% {
+ opacity: 1;
+ -moz-transform: translateX(30px);
+ }
+
+ 80% {
+ -moz-transform: translateX(-10px);
+ }
+
+ 100% {
+ -moz-transform: translateX(0);
+ }
+}
+
+@-o-keyframes bounceInLeft {
+ 0% {
+ opacity: 0;
+ -o-transform: translateX(-2000px);
+ }
+
+ 60% {
+ opacity: 1;
+ -o-transform: translateX(30px);
+ }
+
+ 80% {
+ -o-transform: translateX(-10px);
+ }
+
+ 100% {
+ -o-transform: translateX(0);
+ }
+}
+
+@keyframes bounceInLeft {
+ 0% {
+ opacity: 0;
+ transform: translateX(-2000px);
+ }
+
+ 60% {
+ opacity: 1;
+ transform: translateX(30px);
+ }
+
+ 80% {
+ transform: translateX(-10px);
+ }
+
+ 100% {
+ transform: translateX(0);
+ }
+}
+
+.bounceInLeft {
+ -webkit-animation-name: bounceInLeft;
+ -moz-animation-name: bounceInLeft;
+ -o-animation-name: bounceInLeft;
+ animation-name: bounceInLeft;
+}
+@-webkit-keyframes bounceInRight {
+ 0% {
+ opacity: 0;
+ -webkit-transform: translateX(2000px);
+ }
+
+ 60% {
+ opacity: 1;
+ -webkit-transform: translateX(-30px);
+ }
+
+ 80% {
+ -webkit-transform: translateX(10px);
+ }
+
+ 100% {
+ -webkit-transform: translateX(0);
+ }
+}
+
+@-moz-keyframes bounceInRight {
+ 0% {
+ opacity: 0;
+ -moz-transform: translateX(2000px);
+ }
+
+ 60% {
+ opacity: 1;
+ -moz-transform: translateX(-30px);
+ }
+
+ 80% {
+ -moz-transform: translateX(10px);
+ }
+
+ 100% {
+ -moz-transform: translateX(0);
+ }
+}
+
+@-o-keyframes bounceInRight {
+ 0% {
+ opacity: 0;
+ -o-transform: translateX(2000px);
+ }
+
+ 60% {
+ opacity: 1;
+ -o-transform: translateX(-30px);
+ }
+
+ 80% {
+ -o-transform: translateX(10px);
+ }
+
+ 100% {
+ -o-transform: translateX(0);
+ }
+}
+
+@keyframes bounceInRight {
+ 0% {
+ opacity: 0;
+ transform: translateX(2000px);
+ }
+
+ 60% {
+ opacity: 1;
+ transform: translateX(-30px);
+ }
+
+ 80% {
+ transform: translateX(10px);
+ }
+
+ 100% {
+ transform: translateX(0);
+ }
+}
+
+.bounceInRight {
+ -webkit-animation-name: bounceInRight;
+ -moz-animation-name: bounceInRight;
+ -o-animation-name: bounceInRight;
+ animation-name: bounceInRight;
+}
+@-webkit-keyframes bounceOut {
+ 0% {
+ -webkit-transform: scale(1);
+ }
+
+ 25% {
+ -webkit-transform: scale(.95);
+ }
+
+ 50% {
+ opacity: 1;
+ -webkit-transform: scale(1.1);
+ }
+
+ 100% {
+ opacity: 0;
+ -webkit-transform: scale(.3);
+ }
+}
+
+@-moz-keyframes bounceOut {
+ 0% {
+ -moz-transform: scale(1);
+ }
+
+ 25% {
+ -moz-transform: scale(.95);
+ }
+
+ 50% {
+ opacity: 1;
+ -moz-transform: scale(1.1);
+ }
+
+ 100% {
+ opacity: 0;
+ -moz-transform: scale(.3);
+ }
+}
+
+@-o-keyframes bounceOut {
+ 0% {
+ -o-transform: scale(1);
+ }
+
+ 25% {
+ -o-transform: scale(.95);
+ }
+
+ 50% {
+ opacity: 1;
+ -o-transform: scale(1.1);
+ }
+
+ 100% {
+ opacity: 0;
+ -o-transform: scale(.3);
+ }
+}
+
+@keyframes bounceOut {
+ 0% {
+ transform: scale(1);
+ }
+
+ 25% {
+ transform: scale(.95);
+ }
+
+ 50% {
+ opacity: 1;
+ transform: scale(1.1);
+ }
+
+ 100% {
+ opacity: 0;
+ transform: scale(.3);
+ }
+}
+
+.bounceOut {
+ -webkit-animation-name: bounceOut;
+ -moz-animation-name: bounceOut;
+ -o-animation-name: bounceOut;
+ animation-name: bounceOut;
+}
+@-webkit-keyframes bounceOutUp {
+ 0% {
+ -webkit-transform: translateY(0);
+ }
+
+ 20% {
+ opacity: 1;
+ -webkit-transform: translateY(20px);
+ }
+
+ 100% {
+ opacity: 0;
+ -webkit-transform: translateY(-2000px);
+ }
+}
+
+@-moz-keyframes bounceOutUp {
+ 0% {
+ -moz-transform: translateY(0);
+ }
+
+ 20% {
+ opacity: 1;
+ -moz-transform: translateY(20px);
+ }
+
+ 100% {
+ opacity: 0;
+ -moz-transform: translateY(-2000px);
+ }
+}
+
+@-o-keyframes bounceOutUp {
+ 0% {
+ -o-transform: translateY(0);
+ }
+
+ 20% {
+ opacity: 1;
+ -o-transform: translateY(20px);
+ }
+
+ 100% {
+ opacity: 0;
+ -o-transform: translateY(-2000px);
+ }
+}
+
+@keyframes bounceOutUp {
+ 0% {
+ transform: translateY(0);
+ }
+
+ 20% {
+ opacity: 1;
+ transform: translateY(20px);
+ }
+
+ 100% {
+ opacity: 0;
+ transform: translateY(-2000px);
+ }
+}
+
+.bounceOutUp {
+ -webkit-animation-name: bounceOutUp;
+ -moz-animation-name: bounceOutUp;
+ -o-animation-name: bounceOutUp;
+ animation-name: bounceOutUp;
+}
+@-webkit-keyframes bounceOutDown {
+ 0% {
+ -webkit-transform: translateY(0);
+ }
+
+ 20% {
+ opacity: 1;
+ -webkit-transform: translateY(-20px);
+ }
+
+ 100% {
+ opacity: 0;
+ -webkit-transform: translateY(2000px);
+ }
+}
+
+@-moz-keyframes bounceOutDown {
+ 0% {
+ -moz-transform: translateY(0);
+ }
+
+ 20% {
+ opacity: 1;
+ -moz-transform: translateY(-20px);
+ }
+
+ 100% {
+ opacity: 0;
+ -moz-transform: translateY(2000px);
+ }
+}
+
+@-o-keyframes bounceOutDown {
+ 0% {
+ -o-transform: translateY(0);
+ }
+
+ 20% {
+ opacity: 1;
+ -o-transform: translateY(-20px);
+ }
+
+ 100% {
+ opacity: 0;
+ -o-transform: translateY(2000px);
+ }
+}
+
+@keyframes bounceOutDown {
+ 0% {
+ transform: translateY(0);
+ }
+
+ 20% {
+ opacity: 1;
+ transform: translateY(-20px);
+ }
+
+ 100% {
+ opacity: 0;
+ transform: translateY(2000px);
+ }
+}
+
+.bounceOutDown {
+ -webkit-animation-name: bounceOutDown;
+ -moz-animation-name: bounceOutDown;
+ -o-animation-name: bounceOutDown;
+ animation-name: bounceOutDown;
+}
+@-webkit-keyframes bounceOutLeft {
+ 0% {
+ -webkit-transform: translateX(0);
+ }
+
+ 20% {
+ opacity: 1;
+ -webkit-transform: translateX(20px);
+ }
+
+ 100% {
+ opacity: 0;
+ -webkit-transform: translateX(-2000px);
+ }
+}
+
+@-moz-keyframes bounceOutLeft {
+ 0% {
+ -moz-transform: translateX(0);
+ }
+
+ 20% {
+ opacity: 1;
+ -moz-transform: translateX(20px);
+ }
+
+ 100% {
+ opacity: 0;
+ -moz-transform: translateX(-2000px);
+ }
+}
+
+@-o-keyframes bounceOutLeft {
+ 0% {
+ -o-transform: translateX(0);
+ }
+
+ 20% {
+ opacity: 1;
+ -o-transform: translateX(20px);
+ }
+
+ 100% {
+ opacity: 0;
+ -o-transform: translateX(-2000px);
+ }
+}
+
+@keyframes bounceOutLeft {
+ 0% {
+ transform: translateX(0);
+ }
+
+ 20% {
+ opacity: 1;
+ transform: translateX(20px);
+ }
+
+ 100% {
+ opacity: 0;
+ transform: translateX(-2000px);
+ }
+}
+
+.bounceOutLeft {
+ -webkit-animation-name: bounceOutLeft;
+ -moz-animation-name: bounceOutLeft;
+ -o-animation-name: bounceOutLeft;
+ animation-name: bounceOutLeft;
+}
+@-webkit-keyframes bounceOutRight {
+ 0% {
+ -webkit-transform: translateX(0);
+ }
+
+ 20% {
+ opacity: 1;
+ -webkit-transform: translateX(-20px);
+ }
+
+ 100% {
+ opacity: 0;
+ -webkit-transform: translateX(2000px);
+ }
+}
+
+@-moz-keyframes bounceOutRight {
+ 0% {
+ -moz-transform: translateX(0);
+ }
+
+ 20% {
+ opacity: 1;
+ -moz-transform: translateX(-20px);
+ }
+
+ 100% {
+ opacity: 0;
+ -moz-transform: translateX(2000px);
+ }
+}
+
+@-o-keyframes bounceOutRight {
+ 0% {
+ -o-transform: translateX(0);
+ }
+
+ 20% {
+ opacity: 1;
+ -o-transform: translateX(-20px);
+ }
+
+ 100% {
+ opacity: 0;
+ -o-transform: translateX(2000px);
+ }
+}
+
+@keyframes bounceOutRight {
+ 0% {
+ transform: translateX(0);
+ }
+
+ 20% {
+ opacity: 1;
+ transform: translateX(-20px);
+ }
+
+ 100% {
+ opacity: 0;
+ transform: translateX(2000px);
+ }
+}
+
+.bounceOutRight {
+ -webkit-animation-name: bounceOutRight;
+ -moz-animation-name: bounceOutRight;
+ -o-animation-name: bounceOutRight;
+ animation-name: bounceOutRight;
+}
+@-webkit-keyframes rotateIn {
+ 0% {
+ -webkit-transform-origin: center center;
+ -webkit-transform: rotate(-200deg);
+ opacity: 0;
+ }
+
+ 100% {
+ -webkit-transform-origin: center center;
+ -webkit-transform: rotate(0);
+ opacity: 1;
+ }
+}
+@-moz-keyframes rotateIn {
+ 0% {
+ -moz-transform-origin: center center;
+ -moz-transform: rotate(-200deg);
+ opacity: 0;
+ }
+
+ 100% {
+ -moz-transform-origin: center center;
+ -moz-transform: rotate(0);
+ opacity: 1;
+ }
+}
+@-o-keyframes rotateIn {
+ 0% {
+ -o-transform-origin: center center;
+ -o-transform: rotate(-200deg);
+ opacity: 0;
+ }
+
+ 100% {
+ -o-transform-origin: center center;
+ -o-transform: rotate(0);
+ opacity: 1;
+ }
+}
+@keyframes rotateIn {
+ 0% {
+ transform-origin: center center;
+ transform: rotate(-200deg);
+ opacity: 0;
+ }
+
+ 100% {
+ transform-origin: center center;
+ transform: rotate(0);
+ opacity: 1;
+ }
+}
+
+.rotateIn {
+ -webkit-animation-name: rotateIn;
+ -moz-animation-name: rotateIn;
+ -o-animation-name: rotateIn;
+ animation-name: rotateIn;
+}
+@-webkit-keyframes rotateInUpLeft {
+ 0% {
+ -webkit-transform-origin: left bottom;
+ -webkit-transform: rotate(90deg);
+ opacity: 0;
+ }
+
+ 100% {
+ -webkit-transform-origin: left bottom;
+ -webkit-transform: rotate(0);
+ opacity: 1;
+ }
+}
+
+@-moz-keyframes rotateInUpLeft {
+ 0% {
+ -moz-transform-origin: left bottom;
+ -moz-transform: rotate(90deg);
+ opacity: 0;
+ }
+
+ 100% {
+ -moz-transform-origin: left bottom;
+ -moz-transform: rotate(0);
+ opacity: 1;
+ }
+}
+
+@-o-keyframes rotateInUpLeft {
+ 0% {
+ -o-transform-origin: left bottom;
+ -o-transform: rotate(90deg);
+ opacity: 0;
+ }
+
+ 100% {
+ -o-transform-origin: left bottom;
+ -o-transform: rotate(0);
+ opacity: 1;
+ }
+}
+
+@keyframes rotateInUpLeft {
+ 0% {
+ transform-origin: left bottom;
+ transform: rotate(90deg);
+ opacity: 0;
+ }
+
+ 100% {
+ transform-origin: left bottom;
+ transform: rotate(0);
+ opacity: 1;
+ }
+}
+
+.rotateInUpLeft {
+ -webkit-animation-name: rotateInUpLeft;
+ -moz-animation-name: rotateInUpLeft;
+ -o-animation-name: rotateInUpLeft;
+ animation-name: rotateInUpLeft;
+}
+@-webkit-keyframes rotateInDownLeft {
+ 0% {
+ -webkit-transform-origin: left bottom;
+ -webkit-transform: rotate(-90deg);
+ opacity: 0;
+ }
+
+ 100% {
+ -webkit-transform-origin: left bottom;
+ -webkit-transform: rotate(0);
+ opacity: 1;
+ }
+}
+
+@-moz-keyframes rotateInDownLeft {
+ 0% {
+ -moz-transform-origin: left bottom;
+ -moz-transform: rotate(-90deg);
+ opacity: 0;
+ }
+
+ 100% {
+ -moz-transform-origin: left bottom;
+ -moz-transform: rotate(0);
+ opacity: 1;
+ }
+}
+
+@-o-keyframes rotateInDownLeft {
+ 0% {
+ -o-transform-origin: left bottom;
+ -o-transform: rotate(-90deg);
+ opacity: 0;
+ }
+
+ 100% {
+ -o-transform-origin: left bottom;
+ -o-transform: rotate(0);
+ opacity: 1;
+ }
+}
+
+@keyframes rotateInDownLeft {
+ 0% {
+ transform-origin: left bottom;
+ transform: rotate(-90deg);
+ opacity: 0;
+ }
+
+ 100% {
+ transform-origin: left bottom;
+ transform: rotate(0);
+ opacity: 1;
+ }
+}
+
+.rotateInDownLeft {
+ -webkit-animation-name: rotateInDownLeft;
+ -moz-animation-name: rotateInDownLeft;
+ -o-animation-name: rotateInDownLeft;
+ animation-name: rotateInDownLeft;
+}
+@-webkit-keyframes rotateInUpRight {
+ 0% {
+ -webkit-transform-origin: right bottom;
+ -webkit-transform: rotate(-90deg);
+ opacity: 0;
+ }
+
+ 100% {
+ -webkit-transform-origin: right bottom;
+ -webkit-transform: rotate(0);
+ opacity: 1;
+ }
+}
+
+@-moz-keyframes rotateInUpRight {
+ 0% {
+ -moz-transform-origin: right bottom;
+ -moz-transform: rotate(-90deg);
+ opacity: 0;
+ }
+
+ 100% {
+ -moz-transform-origin: right bottom;
+ -moz-transform: rotate(0);
+ opacity: 1;
+ }
+}
+
+@-o-keyframes rotateInUpRight {
+ 0% {
+ -o-transform-origin: right bottom;
+ -o-transform: rotate(-90deg);
+ opacity: 0;
+ }
+
+ 100% {
+ -o-transform-origin: right bottom;
+ -o-transform: rotate(0);
+ opacity: 1;
+ }
+}
+
+@keyframes rotateInUpRight {
+ 0% {
+ transform-origin: right bottom;
+ transform: rotate(-90deg);
+ opacity: 0;
+ }
+
+ 100% {
+ transform-origin: right bottom;
+ transform: rotate(0);
+ opacity: 1;
+ }
+}
+
+.rotateInUpRight {
+ -webkit-animation-name: rotateInUpRight;
+ -moz-animation-name: rotateInUpRight;
+ -o-animation-name: rotateInUpRight;
+ animation-name: rotateInUpRight;
+}
+@-webkit-keyframes rotateInDownRight {
+ 0% {
+ -webkit-transform-origin: right bottom;
+ -webkit-transform: rotate(90deg);
+ opacity: 0;
+ }
+
+ 100% {
+ -webkit-transform-origin: right bottom;
+ -webkit-transform: rotate(0);
+ opacity: 1;
+ }
+}
+
+@-moz-keyframes rotateInDownRight {
+ 0% {
+ -moz-transform-origin: right bottom;
+ -moz-transform: rotate(90deg);
+ opacity: 0;
+ }
+
+ 100% {
+ -moz-transform-origin: right bottom;
+ -moz-transform: rotate(0);
+ opacity: 1;
+ }
+}
+
+@-o-keyframes rotateInDownRight {
+ 0% {
+ -o-transform-origin: right bottom;
+ -o-transform: rotate(90deg);
+ opacity: 0;
+ }
+
+ 100% {
+ -o-transform-origin: right bottom;
+ -o-transform: rotate(0);
+ opacity: 1;
+ }
+}
+
+@keyframes rotateInDownRight {
+ 0% {
+ transform-origin: right bottom;
+ transform: rotate(90deg);
+ opacity: 0;
+ }
+
+ 100% {
+ transform-origin: right bottom;
+ transform: rotate(0);
+ opacity: 1;
+ }
+}
+
+.rotateInDownRight {
+ -webkit-animation-name: rotateInDownRight;
+ -moz-animation-name: rotateInDownRight;
+ -o-animation-name: rotateInDownRight;
+ animation-name: rotateInDownRight;
+}
+@-webkit-keyframes rotateOut {
+ 0% {
+ -webkit-transform-origin: center center;
+ -webkit-transform: rotate(0);
+ opacity: 1;
+ }
+
+ 100% {
+ -webkit-transform-origin: center center;
+ -webkit-transform: rotate(200deg);
+ opacity: 0;
+ }
+}
+
+@-moz-keyframes rotateOut {
+ 0% {
+ -moz-transform-origin: center center;
+ -moz-transform: rotate(0);
+ opacity: 1;
+ }
+
+ 100% {
+ -moz-transform-origin: center center;
+ -moz-transform: rotate(200deg);
+ opacity: 0;
+ }
+}
+
+@-o-keyframes rotateOut {
+ 0% {
+ -o-transform-origin: center center;
+ -o-transform: rotate(0);
+ opacity: 1;
+ }
+
+ 100% {
+ -o-transform-origin: center center;
+ -o-transform: rotate(200deg);
+ opacity: 0;
+ }
+}
+
+@keyframes rotateOut {
+ 0% {
+ transform-origin: center center;
+ transform: rotate(0);
+ opacity: 1;
+ }
+
+ 100% {
+ transform-origin: center center;
+ transform: rotate(200deg);
+ opacity: 0;
+ }
+}
+
+.rotateOut {
+ -webkit-animation-name: rotateOut;
+ -moz-animation-name: rotateOut;
+ -o-animation-name: rotateOut;
+ animation-name: rotateOut;
+}
+@-webkit-keyframes rotateOutUpLeft {
+ 0% {
+ -webkit-transform-origin: left bottom;
+ -webkit-transform: rotate(0);
+ opacity: 1;
+ }
+
+ 100% {
+ -webkit-transform-origin: left bottom;
+ -webkit-transform: rotate(-90deg);
+ opacity: 0;
+ }
+}
+
+@-moz-keyframes rotateOutUpLeft {
+ 0% {
+ -moz-transform-origin: left bottom;
+ -moz-transform: rotate(0);
+ opacity: 1;
+ }
+
+ 100% {
+ -moz-transform-origin: left bottom;
+ -moz-transform: rotate(-90deg);
+ opacity: 0;
+ }
+}
+
+@-o-keyframes rotateOutUpLeft {
+ 0% {
+ -o-transform-origin: left bottom;
+ -o-transform: rotate(0);
+ opacity: 1;
+ }
+
+ 100% {
+ -o-transform-origin: left bottom;
+ -o-transform: rotate(-90deg);
+ opacity: 0;
+ }
+}
+
+@keyframes rotateOutUpLeft {
+ 0% {
+ transform-origin: left bottom;
+ transform: rotate(0);
+ opacity: 1;
+ }
+
+ 100% {
+ transform-origin: left bottom;
+ transform: rotate(-90deg);
+ opacity: 0;
+ }
+}
+
+.rotateOutUpLeft {
+ -webkit-animation-name: rotateOutUpLeft;
+ -moz-animation-name: rotateOutUpLeft;
+ -o-animation-name: rotateOutUpLeft;
+ animation-name: rotateOutUpLeft;
+}
+@-webkit-keyframes rotateOutDownLeft {
+ 0% {
+ -webkit-transform-origin: left bottom;
+ -webkit-transform: rotate(0);
+ opacity: 1;
+ }
+
+ 100% {
+ -webkit-transform-origin: left bottom;
+ -webkit-transform: rotate(90deg);
+ opacity: 0;
+ }
+}
+
+@-moz-keyframes rotateOutDownLeft {
+ 0% {
+ -moz-transform-origin: left bottom;
+ -moz-transform: rotate(0);
+ opacity: 1;
+ }
+
+ 100% {
+ -moz-transform-origin: left bottom;
+ -moz-transform: rotate(90deg);
+ opacity: 0;
+ }
+}
+
+@-o-keyframes rotateOutDownLeft {
+ 0% {
+ -o-transform-origin: left bottom;
+ -o-transform: rotate(0);
+ opacity: 1;
+ }
+
+ 100% {
+ -o-transform-origin: left bottom;
+ -o-transform: rotate(90deg);
+ opacity: 0;
+ }
+}
+
+@keyframes rotateOutDownLeft {
+ 0% {
+ transform-origin: left bottom;
+ transform: rotate(0);
+ opacity: 1;
+ }
+
+ 100% {
+ transform-origin: left bottom;
+ transform: rotate(90deg);
+ opacity: 0;
+ }
+}
+
+.rotateOutDownLeft {
+ -webkit-animation-name: rotateOutDownLeft;
+ -moz-animation-name: rotateOutDownLeft;
+ -o-animation-name: rotateOutDownLeft;
+ animation-name: rotateOutDownLeft;
+}
+@-webkit-keyframes rotateOutUpRight {
+ 0% {
+ -webkit-transform-origin: right bottom;
+ -webkit-transform: rotate(0);
+ opacity: 1;
+ }
+
+ 100% {
+ -webkit-transform-origin: right bottom;
+ -webkit-transform: rotate(90deg);
+ opacity: 0;
+ }
+}
+
+@-moz-keyframes rotateOutUpRight {
+ 0% {
+ -moz-transform-origin: right bottom;
+ -moz-transform: rotate(0);
+ opacity: 1;
+ }
+
+ 100% {
+ -moz-transform-origin: right bottom;
+ -moz-transform: rotate(90deg);
+ opacity: 0;
+ }
+}
+
+@-o-keyframes rotateOutUpRight {
+ 0% {
+ -o-transform-origin: right bottom;
+ -o-transform: rotate(0);
+ opacity: 1;
+ }
+
+ 100% {
+ -o-transform-origin: right bottom;
+ -o-transform: rotate(90deg);
+ opacity: 0;
+ }
+}
+
+@keyframes rotateOutUpRight {
+ 0% {
+ transform-origin: right bottom;
+ transform: rotate(0);
+ opacity: 1;
+ }
+
+ 100% {
+ transform-origin: right bottom;
+ transform: rotate(90deg);
+ opacity: 0;
+ }
+}
+
+.rotateOutUpRight {
+ -webkit-animation-name: rotateOutUpRight;
+ -moz-animation-name: rotateOutUpRight;
+ -o-animation-name: rotateOutUpRight;
+ animation-name: rotateOutUpRight;
+}
+@-webkit-keyframes rotateOutDownRight {
+ 0% {
+ -webkit-transform-origin: right bottom;
+ -webkit-transform: rotate(0);
+ opacity: 1;
+ }
+
+ 100% {
+ -webkit-transform-origin: right bottom;
+ -webkit-transform: rotate(-90deg);
+ opacity: 0;
+ }
+}
+
+@-moz-keyframes rotateOutDownRight {
+ 0% {
+ -moz-transform-origin: right bottom;
+ -moz-transform: rotate(0);
+ opacity: 1;
+ }
+
+ 100% {
+ -moz-transform-origin: right bottom;
+ -moz-transform: rotate(-90deg);
+ opacity: 0;
+ }
+}
+
+@-o-keyframes rotateOutDownRight {
+ 0% {
+ -o-transform-origin: right bottom;
+ -o-transform: rotate(0);
+ opacity: 1;
+ }
+
+ 100% {
+ -o-transform-origin: right bottom;
+ -o-transform: rotate(-90deg);
+ opacity: 0;
+ }
+}
+
+@keyframes rotateOutDownRight {
+ 0% {
+ transform-origin: right bottom;
+ transform: rotate(0);
+ opacity: 1;
+ }
+
+ 100% {
+ transform-origin: right bottom;
+ transform: rotate(-90deg);
+ opacity: 0;
+ }
+}
+
+.rotateOutDownRight {
+ -webkit-animation-name: rotateOutDownRight;
+ -moz-animation-name: rotateOutDownRight;
+ -o-animation-name: rotateOutDownRight;
+ animation-name: rotateOutDownRight;
+}
+@-webkit-keyframes hinge {
+ 0% { -webkit-transform: rotate(0); -webkit-transform-origin: top left; -webkit-animation-timing-function: ease-in-out; }
+ 20%, 60% { -webkit-transform: rotate(80deg); -webkit-transform-origin: top left; -webkit-animation-timing-function: ease-in-out; }
+ 40% { -webkit-transform: rotate(60deg); -webkit-transform-origin: top left; -webkit-animation-timing-function: ease-in-out; }
+ 80% { -webkit-transform: rotate(60deg) translateY(0); opacity: 1; -webkit-transform-origin: top left; -webkit-animation-timing-function: ease-in-out; }
+ 100% { -webkit-transform: translateY(700px); opacity: 0; }
+}
+
+@-moz-keyframes hinge {
+ 0% { -moz-transform: rotate(0); -moz-transform-origin: top left; -moz-animation-timing-function: ease-in-out; }
+ 20%, 60% { -moz-transform: rotate(80deg); -moz-transform-origin: top left; -moz-animation-timing-function: ease-in-out; }
+ 40% { -moz-transform: rotate(60deg); -moz-transform-origin: top left; -moz-animation-timing-function: ease-in-out; }
+ 80% { -moz-transform: rotate(60deg) translateY(0); opacity: 1; -moz-transform-origin: top left; -moz-animation-timing-function: ease-in-out; }
+ 100% { -moz-transform: translateY(700px); opacity: 0; }
+}
+
+@-o-keyframes hinge {
+ 0% { -o-transform: rotate(0); -o-transform-origin: top left; -o-animation-timing-function: ease-in-out; }
+ 20%, 60% { -o-transform: rotate(80deg); -o-transform-origin: top left; -o-animation-timing-function: ease-in-out; }
+ 40% { -o-transform: rotate(60deg); -o-transform-origin: top left; -o-animation-timing-function: ease-in-out; }
+ 80% { -o-transform: rotate(60deg) translateY(0); opacity: 1; -o-transform-origin: top left; -o-animation-timing-function: ease-in-out; }
+ 100% { -o-transform: translateY(700px); opacity: 0; }
+}
+
+@keyframes hinge {
+ 0% { transform: rotate(0); transform-origin: top left; animation-timing-function: ease-in-out; }
+ 20%, 60% { transform: rotate(80deg); transform-origin: top left; animation-timing-function: ease-in-out; }
+ 40% { transform: rotate(60deg); transform-origin: top left; animation-timing-function: ease-in-out; }
+ 80% { transform: rotate(60deg) translateY(0); opacity: 1; transform-origin: top left; animation-timing-function: ease-in-out; }
+ 100% { transform: translateY(700px); opacity: 0; }
+}
+
+.hinge {
+ -webkit-animation-name: hinge;
+ -moz-animation-name: hinge;
+ -o-animation-name: hinge;
+ animation-name: hinge;
+}
+/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
+
+@-webkit-keyframes rollIn {
+ 0% { opacity: 0; -webkit-transform: translateX(-100%) rotate(-120deg); }
+ 100% { opacity: 1; -webkit-transform: translateX(0px) rotate(0deg); }
+}
+
+@-moz-keyframes rollIn {
+ 0% { opacity: 0; -moz-transform: translateX(-100%) rotate(-120deg); }
+ 100% { opacity: 1; -moz-transform: translateX(0px) rotate(0deg); }
+}
+
+@-o-keyframes rollIn {
+ 0% { opacity: 0; -o-transform: translateX(-100%) rotate(-120deg); }
+ 100% { opacity: 1; -o-transform: translateX(0px) rotate(0deg); }
+}
+
+@keyframes rollIn {
+ 0% { opacity: 0; transform: translateX(-100%) rotate(-120deg); }
+ 100% { opacity: 1; transform: translateX(0px) rotate(0deg); }
+}
+
+.rollIn {
+ -webkit-animation-name: rollIn;
+ -moz-animation-name: rollIn;
+ -o-animation-name: rollIn;
+ animation-name: rollIn;
+}
+/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
+
+@-webkit-keyframes rollOut {
+ 0% {
+ opacity: 1;
+ -webkit-transform: translateX(0px) rotate(0deg);
+ }
+
+ 100% {
+ opacity: 0;
+ -webkit-transform: translateX(100%) rotate(120deg);
+ }
+}
+
+@-moz-keyframes rollOut {
+ 0% {
+ opacity: 1;
+ -moz-transform: translateX(0px) rotate(0deg);
+ }
+
+ 100% {
+ opacity: 0;
+ -moz-transform: translateX(100%) rotate(120deg);
+ }
+}
+
+@-o-keyframes rollOut {
+ 0% {
+ opacity: 1;
+ -o-transform: translateX(0px) rotate(0deg);
+ }
+
+ 100% {
+ opacity: 0;
+ -o-transform: translateX(100%) rotate(120deg);
+ }
+}
+
+@keyframes rollOut {
+ 0% {
+ opacity: 1;
+ transform: translateX(0px) rotate(0deg);
+ }
+
+ 100% {
+ opacity: 0;
+ transform: translateX(100%) rotate(120deg);
+ }
+}
+
+.rollOut {
+ -webkit-animation-name: rollOut;
+ -moz-animation-name: rollOut;
+ -o-animation-name: rollOut;
+ animation-name: rollOut;
+}
+
+/* originally authored by Angelo Rohit - https://github.com/angelorohit */
+
+@-webkit-keyframes lightSpeedIn {
+ 0% { -webkit-transform: translateX(100%) skewX(-30deg); opacity: 0; }
+ 60% { -webkit-transform: translateX(-20%) skewX(30deg); opacity: 1; }
+ 80% { -webkit-transform: translateX(0%) skewX(-15deg); opacity: 1; }
+ 100% { -webkit-transform: translateX(0%) skewX(0deg); opacity: 1; }
+}
+
+@-moz-keyframes lightSpeedIn {
+ 0% { -moz-transform: translateX(100%) skewX(-30deg); opacity: 0; }
+ 60% { -moz-transform: translateX(-20%) skewX(30deg); opacity: 1; }
+ 80% { -moz-transform: translateX(0%) skewX(-15deg); opacity: 1; }
+ 100% { -moz-transform: translateX(0%) skewX(0deg); opacity: 1; }
+}
+
+@-o-keyframes lightSpeedIn {
+ 0% { -o-transform: translateX(100%) skewX(-30deg); opacity: 0; }
+ 60% { -o-transform: translateX(-20%) skewX(30deg); opacity: 1; }
+ 80% { -o-transform: translateX(0%) skewX(-15deg); opacity: 1; }
+ 100% { -o-transform: translateX(0%) skewX(0deg); opacity: 1; }
+}
+
+@keyframes lightSpeedIn {
+ 0% { transform: translateX(100%) skewX(-30deg); opacity: 0; }
+ 60% { transform: translateX(-20%) skewX(30deg); opacity: 1; }
+ 80% { transform: translateX(0%) skewX(-15deg); opacity: 1; }
+ 100% { transform: translateX(0%) skewX(0deg); opacity: 1; }
+}
+
+.lightSpeedIn {
+ -webkit-animation-name: lightSpeedIn;
+ -moz-animation-name: lightSpeedIn;
+ -o-animation-name: lightSpeedIn;
+ animation-name: lightSpeedIn;
+
+ -webkit-animation-timing-function: ease-out;
+ -moz-animation-timing-function: ease-out;
+ -o-animation-timing-function: ease-out;
+ animation-timing-function: ease-out;
+}
+
+.animated.lightSpeedIn {
+ -webkit-animation-duration: 0.5s;
+ -moz-animation-duration: 0.5s;
+ -o-animation-duration: 0.5s;
+ animation-duration: 0.5s;
+}
+
+/* originally authored by Angelo Rohit - https://github.com/angelorohit */
+
+@-webkit-keyframes lightSpeedOut {
+ 0% { -webkit-transform: translateX(0%) skewX(0deg); opacity: 1; }
+ 100% { -webkit-transform: translateX(100%) skewX(-30deg); opacity: 0; }
+}
+
+@-moz-keyframes lightSpeedOut {
+ 0% { -moz-transform: translateX(0%) skewX(0deg); opacity: 1; }
+ 100% { -moz-transform: translateX(100%) skewX(-30deg); opacity: 0; }
+}
+
+@-o-keyframes lightSpeedOut {
+ 0% { -o-transform: translateX(0%) skewX(0deg); opacity: 1; }
+ 100% { -o-transform: translateX(100%) skewX(-30deg); opacity: 0; }
+}
+
+@keyframes lightSpeedOut {
+ 0% { transform: translateX(0%) skewX(0deg); opacity: 1; }
+ 100% { transform: translateX(100%) skewX(-30deg); opacity: 0; }
+}
+
+.lightSpeedOut {
+ -webkit-animation-name: lightSpeedOut;
+ -moz-animation-name: lightSpeedOut;
+ -o-animation-name: lightSpeedOut;
+ animation-name: lightSpeedOut;
+
+ -webkit-animation-timing-function: ease-in;
+ -moz-animation-timing-function: ease-in;
+ -o-animation-timing-function: ease-in;
+ animation-timing-function: ease-in;
+}
+
+.animated.lightSpeedOut {
+ -webkit-animation-duration: 0.25s;
+ -moz-animation-duration: 0.25s;
+ -o-animation-duration: 0.25s;
+ animation-duration: 0.25s;
+}
+
+/* originally authored by Angelo Rohit - https://github.com/angelorohit */
+
+@-webkit-keyframes wiggle {
+ 0% { -webkit-transform: skewX(9deg); }
+ 10% { -webkit-transform: skewX(-8deg); }
+ 20% { -webkit-transform: skewX(7deg); }
+ 30% { -webkit-transform: skewX(-6deg); }
+ 40% { -webkit-transform: skewX(5deg); }
+ 50% { -webkit-transform: skewX(-4deg); }
+ 60% { -webkit-transform: skewX(3deg); }
+ 70% { -webkit-transform: skewX(-2deg); }
+ 80% { -webkit-transform: skewX(1deg); }
+ 90% { -webkit-transform: skewX(0deg); }
+ 100% { -webkit-transform: skewX(0deg); }
+}
+
+@-moz-keyframes wiggle {
+ 0% { -moz-transform: skewX(9deg); }
+ 10% { -moz-transform: skewX(-8deg); }
+ 20% { -moz-transform: skewX(7deg); }
+ 30% { -moz-transform: skewX(-6deg); }
+ 40% { -moz-transform: skewX(5deg); }
+ 50% { -moz-transform: skewX(-4deg); }
+ 60% { -moz-transform: skewX(3deg); }
+ 70% { -moz-transform: skewX(-2deg); }
+ 80% { -moz-transform: skewX(1deg); }
+ 90% { -moz-transform: skewX(0deg); }
+ 100% { -moz-transform: skewX(0deg); }
+}
+
+@-o-keyframes wiggle {
+ 0% { -o-transform: skewX(9deg); }
+ 10% { -o-transform: skewX(-8deg); }
+ 20% { -o-transform: skewX(7deg); }
+ 30% { -o-transform: skewX(-6deg); }
+ 40% { -o-transform: skewX(5deg); }
+ 50% { -o-transform: skewX(-4deg); }
+ 60% { -o-transform: skewX(3deg); }
+ 70% { -o-transform: skewX(-2deg); }
+ 80% { -o-transform: skewX(1deg); }
+ 90% { -o-transform: skewX(0deg); }
+ 100% { -o-transform: skewX(0deg); }
+}
+
+@keyframes wiggle {
+ 0% { transform: skewX(9deg); }
+ 10% { transform: skewX(-8deg); }
+ 20% { transform: skewX(7deg); }
+ 30% { transform: skewX(-6deg); }
+ 40% { transform: skewX(5deg); }
+ 50% { transform: skewX(-4deg); }
+ 60% { transform: skewX(3deg); }
+ 70% { transform: skewX(-2deg); }
+ 80% { transform: skewX(1deg); }
+ 90% { transform: skewX(0deg); }
+ 100% { transform: skewX(0deg); }
+}
+
+.wiggle {
+ -webkit-animation-name: wiggle;
+ -moz-animation-name: wiggle;
+ -o-animation-name: wiggle;
+ animation-name: wiggle;
+
+ -webkit-animation-timing-function: ease-in;
+ -moz-animation-timing-function: ease-in;
+ -o-animation-timing-function: ease-in;
+ animation-timing-function: ease-in;
+}
+
+.animated.wiggle {
+ -webkit-animation-duration: 0.75s;
+ -moz-animation-duration: 0.75s;
+ -o-animation-duration: 0.75s;
+ animation-duration: 0.75s;
+}
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/animate.css.gz b/uiframe-iui/src/main/resources/webroot/framework/css/animate.css.gz
new file mode 100644
index 00000000..59b58692
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/animate.css.gz
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/changepwd-apk.css b/uiframe-iui/src/main/resources/webroot/framework/css/changepwd-apk.css
new file mode 100644
index 00000000..1931575b
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/changepwd-apk.css
@@ -0,0 +1,84 @@
+/**
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/***
+Changepasswd page
+***/
+
+/* logo page */
+/*
+.Changepasswd {
+ background-color: #666 !important;
+}
+
+.Changepasswd .logo {
+ margin: 0 auto;
+ margin-top:60px;
+ padding: 15px;
+ text-align: center;
+}
+*/
+.Changepasswd .content .login-form,
+.Changepasswd .content .forget-form {
+ padding: 0px;
+ margin: 0px;
+}
+.Changepasswd .content {
+ margin: 0 auto;
+ margin-bottom: 0px;
+ padding: 20px;
+ padding-top: 20px;
+ padding-bottom: 15px;
+}
+/*
+.Changepasswd .content h3 {
+ // color: #eee;
+}
+.Changepasswd .content h4 {
+ // color: #eee;
+}
+*/
+.Changepasswd .content p,
+.Changepasswd .content label {
+ color: #fff;
+}
+
+.Changepasswd .content .form-control {
+ background-color: #fff;
+}
+
+.Changepasswd .content .form-title {
+ font-weight: 300;
+ margin-bottom: 25px;
+}
+
+.Changepasswd .content .form-actions {
+ background-color: transparent;
+ clear: both;
+ border: 0px;
+ padding: 0px 30px 0px 30px;
+ margin-left: -30px;
+ margin-right: -30px;
+}
+
+
+.Changepasswd .content .form-actions .checkbox {
+ margin-top: 8px;
+ display: inline-block;
+}
+
+.Changepasswd .content .form-actions .btn {
+ margin-top: 1px;
+}
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/changepwd.css b/uiframe-iui/src/main/resources/webroot/framework/css/changepwd.css
new file mode 100644
index 00000000..1931575b
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/changepwd.css
@@ -0,0 +1,84 @@
+/**
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/***
+Changepasswd page
+***/
+
+/* logo page */
+/*
+.Changepasswd {
+ background-color: #666 !important;
+}
+
+.Changepasswd .logo {
+ margin: 0 auto;
+ margin-top:60px;
+ padding: 15px;
+ text-align: center;
+}
+*/
+.Changepasswd .content .login-form,
+.Changepasswd .content .forget-form {
+ padding: 0px;
+ margin: 0px;
+}
+.Changepasswd .content {
+ margin: 0 auto;
+ margin-bottom: 0px;
+ padding: 20px;
+ padding-top: 20px;
+ padding-bottom: 15px;
+}
+/*
+.Changepasswd .content h3 {
+ // color: #eee;
+}
+.Changepasswd .content h4 {
+ // color: #eee;
+}
+*/
+.Changepasswd .content p,
+.Changepasswd .content label {
+ color: #fff;
+}
+
+.Changepasswd .content .form-control {
+ background-color: #fff;
+}
+
+.Changepasswd .content .form-title {
+ font-weight: 300;
+ margin-bottom: 25px;
+}
+
+.Changepasswd .content .form-actions {
+ background-color: transparent;
+ clear: both;
+ border: 0px;
+ padding: 0px 30px 0px 30px;
+ margin-left: -30px;
+ margin-right: -30px;
+}
+
+
+.Changepasswd .content .form-actions .checkbox {
+ margin-top: 8px;
+ display: inline-block;
+}
+
+.Changepasswd .content .form-actions .btn {
+ margin-top: 1px;
+}
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/custom_default.css b/uiframe-iui/src/main/resources/webroot/framework/css/custom_default.css
new file mode 100644
index 00000000..bdb8e0fd
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/custom_default.css
@@ -0,0 +1,16 @@
+/**
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/*这里存放专业网自己个性化的CSS定制样式,系统会默认加载该css文件 */
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/login-apk.css b/uiframe-iui/src/main/resources/webroot/framework/css/login-apk.css
new file mode 100644
index 00000000..0b370da7
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/login-apk.css
@@ -0,0 +1,183 @@
+/**
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/***
+Login page
+***/
+
+/* logo page */
+.login {
+ background-color: #666 !important;
+}
+
+.login .logo {
+ margin: 0 auto;
+ margin-top:60px;
+ padding: 15px;
+ text-align: center;
+}
+
+
+.login .content {
+ background: url(../../../framework/img/bg-white-lock.png) repeat;
+ width: 360px;
+ margin: 0 auto;
+ margin-bottom: 0px;
+ padding: 30px;
+ padding-top: 20px;
+ padding-bottom: 15px;
+}
+
+.login .content h3 {
+ color: #eee;
+}
+.login .content h4 {
+ color: #eee;
+}
+
+.login .content p,
+.login .content label {
+ color: #fff;
+}
+
+.login .content .login-form,
+.login .content .forget-form {
+ padding: 0px;
+ margin: 0px;
+}
+
+.login .content .form-control {
+ background-color: #fff;
+}
+
+.login .content .forget-form {
+ display: none;
+}
+
+.login .content .register-form {
+ display: none;
+}
+
+.login .content .form-title {
+ font-weight: 300;
+ margin-bottom: 25px;
+}
+
+.login .content .form-actions {
+ background-color: transparent;
+ clear: both;
+ border: 0px;
+ padding: 0px 30px 25px 30px;
+ margin-left: -30px;
+ margin-right: -30px;
+}
+
+.login .content .form-actions .checkbox {
+ margin-left: 20px;
+ padding-left: 0;
+}
+
+.login .content .forget-form .form-actions {
+ border: 0;
+ margin-bottom: 0;
+ padding-bottom: 20px;
+}
+
+.login .content .register-form .form-actions {
+ border: 0;
+ margin-bottom: 0;
+ padding-bottom: 0px;
+}
+
+.login .content .form-actions .checkbox {
+ margin-top: 8px;
+ display: inline-block;
+}
+
+.login .content .form-actions .btn {
+ margin-top: 1px;
+}
+
+.login .content .forget-password {
+ margin-top: 25px;
+}
+
+.login .content .create-account {
+ border-top: 1px dotted #eee;
+ padding-top: 10px;
+ margin-top: 15px;
+}
+
+.login .content .create-account a {
+ display: inline-block;
+ margin-top: 5px;
+}
+
+/* select2 dropdowns */
+.login .content .select2-container i {
+ display: inline-block;
+ position: relative;
+ color: #ccc;
+ z-index: 1;
+ top:1px;
+ margin: 4px 4px 0px 3px;
+ width: 16px;
+ height: 16px;
+ font-size: 16px;
+ text-align: center;
+}
+
+.login .content .has-error .select2-container i {
+ color: #b94a48;
+}
+
+.login .content .select2-container a span {
+ font-size: 13px;
+}
+
+.login .content .select2-container a span img {
+ margin-left: 4px;
+}
+
+/* footer copyright */
+.login .copyright {
+ text-align: center;
+ margin: 0 auto;
+ padding: 10px;
+ color: #eee;
+ font-size: 13px;
+}
+
+@media (max-width: 480px) {
+ /***
+ Login page
+ ***/
+ .login .logo {
+ margin-top:10px;
+ }
+
+ .login .content {
+ padding: 30px;
+ width: 222px;
+ }
+
+ .login .content h3 {
+ font-size: 22px;
+ }
+
+ .login .checkbox {
+ font-size: 13px;
+ }
+} \ No newline at end of file
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/login.css b/uiframe-iui/src/main/resources/webroot/framework/css/login.css
new file mode 100644
index 00000000..1001373b
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/login.css
@@ -0,0 +1,201 @@
+/**
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/***
+Login page
+***/
+
+/* logo page */
+.login {
+ background-color: #666 !important;
+}
+
+.login .logo {
+ margin: 0 auto;
+ margin-top:60px;
+ padding: 15px;
+ text-align: center;
+}
+
+
+.login .content {
+ background: url(../img/bg-white-lock.png) repeat;
+ width: 360px;
+ margin: 0 auto;
+ margin-bottom: 0px;
+ padding: 30px;
+ padding-top: 20px;
+ padding-bottom: 15px;
+ border-radius:5px;
+ -webkit-box-shadow: 2px 3px 3px #717171;
+ -moz-box-shadow: 2px 3px 3px #717171;
+ box-shadow: -1px 1px 1px rgba(255,255,255,0.6) inset,-3px 3px 5px rgba(0,0,0,0.2);
+}
+
+.login .content h3 {
+ color: #474747;
+ letter-spacing:5px;
+ font-size:20px ;
+ font-family: 'Microsoft Yahei', sans-serif;
+ text-shadow:-1px 1px rgba(221, 221, 221, 1);
+}
+.login .content h4 {
+ color: #eee;
+}
+
+.login .content p,
+.login .content label {
+ color: #4b4b4b;
+}
+
+.login .content .login-form,
+.login .content .forget-form {
+ padding: 0px;
+ margin: 0px;
+}
+
+.login .content .form-control {
+ background-color: #fff;
+ border-radius:15px;
+}
+
+.login .content .forget-form {
+ display: none;
+}
+
+.login .content .register-form {
+ display: none;
+}
+
+.login .content .form-title {
+ font-weight: 300;
+ margin-bottom: 25px;
+ text-align: center;
+}
+
+.login .content .form-actions {
+ background-color: transparent;
+ clear: both;
+ border: 0px;
+ padding: 0px 30px 25px 30px;
+ margin-left: -30px;
+ margin-right: -30px;
+}
+
+.login .content .form-actions .checkbox {
+ margin-left: 20px;
+ padding-left: 0;
+}
+
+.login .content .forget-form .form-actions {
+ border: 0;
+ margin-bottom: 0;
+ padding-bottom: 20px;
+}
+
+.login .content .register-form .form-actions {
+ border: 0;
+ margin-bottom: 0;
+ padding-bottom: 0px;
+}
+
+.login .content .form-actions .checkbox {
+ margin-top: 8px;
+ display: inline-block;
+}
+
+.login .content .form-actions .btn {
+ margin-top: 1px;
+ border-radius:20px;
+}
+
+.login .content .forget-password {
+ margin-top: 25px;
+}
+
+.login .content .create-account {
+ border-top: 1px dotted #eee;
+ padding-top: 10px;
+ margin-top: 15px;
+}
+
+.login .content .create-account a {
+ display: inline-block;
+ margin-top: 5px;
+}
+
+/* select2 dropdowns */
+.login .content .select2-container i {
+ display: inline-block;
+ position: relative;
+ color: #ccc;
+ z-index: 1;
+ top:1px;
+ margin: 4px 4px 0px 3px;
+ width: 16px;
+ height: 16px;
+ font-size: 16px;
+ text-align: center;
+}
+
+.login .content .has-error .select2-container i {
+ color: #b94a48;
+}
+
+.login .content .select2-container a span {
+ font-size: 13px;
+}
+
+.login .content .select2-container a span img {
+ margin-left: 4px;
+}
+.form-control:focus{
+ border:1px solid #5ca3b7 !important;
+ box-shadow:0px 0px 2px #2aabec !important;
+}
+/* footer copyright */
+.login .copyright {
+ text-align: center;
+ margin: 0 auto;
+ padding: 10px;
+ color: #eee;
+ font-size: 13px;
+}
+
+@media (max-width: 480px) {
+ /***
+ Login page
+ ***/
+ .login .logo {
+ margin-top:10px;
+ }
+
+ .login .content {
+ padding: 30px;
+ width: 222px;
+ }
+
+ .login .content h3 {
+ font-size: 22px;
+ }
+
+ .login .checkbox {
+ font-size: 13px;
+ }
+}
+
+.descLabel{
+ width:320px;
+} \ No newline at end of file
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/more-operation.css b/uiframe-iui/src/main/resources/webroot/framework/css/more-operation.css
new file mode 100644
index 00000000..11bc6ee3
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/more-operation.css
@@ -0,0 +1,167 @@
+/**
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+a {
+ text-decoration: none !important;
+}
+
+.box{
+height:95px ;
+color:#333;
+text-align:right;
+padding-bottom:20px;
+font-size:14px;
+text-align:center;
+}
+
+.row a{
+font-weight:normal;
+font-size:14px;
+
+}
+
+.alarmTitle{
+padding-left:20px;
+margin-top: 10px;
+}
+@media (min-width: 758px) and (max-width: 997px){
+ .alarmTitle{
+ display:none;
+ }
+ .alarmTypePadding{
+ padding-left: 25%;
+ }
+}
+@media (max-width: 757px){
+ .alarmTitle{
+ display:none;
+ }
+ .alarmTypePadding{
+ padding-left: 20%;
+ }
+}
+
+.titlefont{
+ font-size:16px;
+}
+.label{
+ font-weight: 400;
+}
+
+.row1{
+ margin-right: 0px !important;
+}
+
+.queryLink{
+ font-size: 14px;
+ margin-top: 10px;
+ color:#5b9bd1;
+}
+.carousel-control {
+ position: absolute;
+ top: 0;
+ left: 0;
+ bottom: 0;
+ width: 3% !important;
+ opacity: .5;
+ filter: alpha(opacity=50);
+ font-size: 20px;
+ color: #C7C7C7;
+ text-align: center;
+ text-shadow: 0 1px 2px rgba(0,0,0,.6);
+}
+.carousel-control:hover{
+ color: #969494;
+}
+.carousel-control .glyphicon-chevron-left, .carousel-control .glyphicon-chevron-right, .carousel-control .icon-prev, .carousel-control .icon-next {
+ margin-left:0;
+ font-size:25px;
+ margin-top:-12px;
+}
+.carousel-control .icon-next, .carousel-control .glyphicon-chevron-right{
+ right:35px;
+}
+
+.carousel-inner{
+ overflow: visible;
+}
+
+.item {
+ overflow: visible !important;
+ display: block!important;
+ margin-bottom: 0px !important;
+}
+
+.carousel-control.left,.carousel-control.right{
+ background-image:none;
+}
+.upArrowArea{
+ background:#fff;
+ margin-top:-18px;
+ margin-bottom: 15px;
+}
+.boxOperation {
+ color:#1178ee;
+ background-repeat: no-repeat;
+ background-position-y: 100%;
+ height:30px;
+ line-height:30px;
+ font-size: 14px;
+ font-weight:bold;
+ margin-top:5px;
+ height:35px;
+ padding-left:15px;
+ padding-right:15px;
+}
+.moreButton:first-child .boxOperation {
+ margin-left: 45px;
+}
+.moreButton:last-child .boxOperation {
+ margin-right: 45px;
+}
+.moreButton:first-child .boxOperationOnePage{
+ margin-left: 0px !important;
+}
+
+.moreOpen {
+ height: 40px;
+}
+.moreClose {
+ height: 0px;
+ display:none !important;
+}
+.moreButton{
+ float: left;
+ position: relative;
+ min-height: 1px;
+ }
+.boxOperation:hover{
+ color:#1069d0;
+}
+.moreButtonSelected{
+ background-color: #fff !important;
+ color:#333;
+ border-top:3px #f3565d solid;
+}
+ul{
+ list-style-type:none;
+}
+li{
+ list-style-type:none;
+}
+.dropdown-menu {
+ z-index: 9991 !important;;
+} \ No newline at end of file
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/ngict-component.css b/uiframe-iui/src/main/resources/webroot/framework/css/ngict-component.css
new file mode 100644
index 00000000..92b6c42d
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/ngict-component.css
@@ -0,0 +1,773 @@
+body {
+ color: #333;
+ font-size: 14px;
+ font-family: "Microsoft yahei", Arial !important;
+ background-color: transparent;
+}
+
+/*fontIcon*/
+
+[class^="ict-"],
+[class*=" ict-"] {
+ padding-right: 3px;
+}
+
+/*common color*/
+
+.blue1 {
+ background-color: #5b9bd1;
+ color: #fff;
+}
+
+.blue1:hover {
+ background-color: #487ca9;
+ color: #fff;
+}
+
+.blue2 {
+ background-color: #57b5e3;
+ color: #fff;
+}
+
+.blue2:hover {
+ background-color: #43a1cf;
+ color: #fff;
+}
+
+.red {
+ background-color: #e35b5a;
+ color: #fff;
+}
+
+.red:hover {
+ background-color: #d45150;
+ color: #fff;
+}
+
+.green {
+ background-color: #44b6ae;
+ color: #fff;
+}
+
+.green:hover {
+ background-color: #329d96;
+ color: #fff;
+}
+
+.gold {
+ background-color: #c0af69;
+ color: #fff;
+}
+
+.gold:hover {
+ background-color: #ad9a4d;
+ color: #fff;
+}
+
+.grey {
+ background-color: #e5e5e5;
+ color: #333;
+}
+
+.grey:hover {
+ background-color: #d8d8d8;
+ color: #333;
+}
+
+.dark_grey {
+ background-color: #333;
+ color: #fff;
+}
+
+.dark_grey:hover {
+ background-color: #101010;
+ color: #fff;
+}
+
+.white {
+ background-color: #fff;
+ border: 1px solid #ddd;
+ color: #333;
+}
+
+.white:hover {
+ background-color: #e5e5e5;
+ color: #333;
+}
+
+/***
+Responsive & Scrollable Tables
+***/
+
+.table-scrollable {
+ width: 100%;
+ overflow-x: auto;
+ overflow-y: hidden;
+ border: 1px solid #dddddd;
+}
+
+.table-scrollable > .table {
+ width: 100% !important;
+ margin: 0 !important;
+ margin-bottom: 0;
+ background-color: #fff;
+}
+
+.table-scrollable > .table > thead > tr > th,
+.table-scrollable > .table > tbody > tr > th,
+.table-scrollable > .table > tfoot > tr > th,
+.table-scrollable > .table > thead > tr > td,
+.table-scrollable > .table > tbody > tr > td,
+.table-scrollable > .table > tfoot > tr > td {
+ white-space: nowrap;
+}
+
+.table-scrollable > .table-bordered {
+ border: 0;
+}
+
+.table-scrollable > .table-bordered > thead > tr > th:first-child,
+.table-scrollable > .table-bordered > tbody > tr > th:first-child,
+.table-scrollable > .table-bordered > tfoot > tr > th:first-child,
+.table-scrollable > .table-bordered > thead > tr > td:first-child,
+.table-scrollable > .table-bordered > tbody > tr > td:first-child,
+.table-scrollable > .table-bordered > tfoot > tr > td:first-child {
+ border-left: 0;
+}
+
+.table-scrollable > .table-bordered > thead > tr > th:last-child,
+.table-scrollable > .table-bordered > tbody > tr > th:last-child,
+.table-scrollable > .table-bordered > tfoot > tr > th:last-child,
+.table-scrollable > .table-bordered > thead > tr > td:last-child,
+.table-scrollable > .table-bordered > tbody > tr > td:last-child,
+.table-scrollable > .table-bordered > tfoot > tr > td:last-child {
+ border-right: 0;
+}
+
+.table-scrollable > .table-bordered > thead > tr:last-child > th,
+.table-scrollable > .table-bordered > tbody > tr:last-child > th,
+.table-scrollable > .table-bordered > tfoot > tr:last-child > th,
+.table-scrollable > .table-bordered > thead > tr:last-child > td,
+.table-scrollable > .table-bordered > tbody > tr:last-child > td,
+.table-scrollable > .table-bordered > tfoot > tr:last-child > td {
+ border-bottom: 0;
+}
+
+/*form*/
+
+.form {
+ padding: 0 !important;
+}
+
+.form-group .multiRow {
+ margin-bottom: 15px;
+}
+
+.form-group,
+.form-group .btn {
+ font-size: 12px;
+}
+
+.form-body {
+ padding: 10px;
+}
+
+.form-actions {
+ padding-top: 20px
+}
+
+.form-actions.nobg {
+ background-color: transparent;
+}
+
+.form-actions.top {
+ margin-top: 0;
+ margin-bottom: 20px;
+ border-top: 0;
+ border-bottom: 1px solid #e5e5e5;
+}
+
+/*.form-actions.fluid {
+ padding: 20px 0;
+}*/
+
+.form-actions .btnGroup {
+ padding-left: 0;
+}
+
+.form-actions.fluid > [class^="col-"] {
+ padding-left: 13px;
+}
+
+.form-actions:before,
+.form-actions:after {
+ display: table;
+ line-height: 0;
+ content: "";
+}
+
+.form-actions:after {
+ clear: both;
+}
+
+.form-section {
+ margin: 30px 0px 25px 0px;
+ padding-bottom: 5px;
+ border-bottom: 1px solid #eee;
+}
+
+.form .form-section:first-child {
+ margin-top: 5px;
+}
+
+.help-inline {
+ font-size: 13px;
+ color: #737373;
+ display: inline-block;
+ padding: 5px;
+}
+
+.submBtn {
+ text-align: center;
+}
+.subm-iconMargin {
+margin-left:-40px;
+}
+.subm-margin {
+margin-left:-40px;
+}
+
+/* left, right aligned form actions */
+
+.form-actions.right {
+ padding-left: 0;
+ padding-right: 10px;
+ text-align: right;
+}
+
+.form-actions.left {
+ padding-left: 10px;
+ padding-right: 0;
+ text-align: left;
+}
+
+/* Checkbox */
+
+.form-group .checkbox {
+ padding-left: 0;
+}
+
+.form-title {
+ padding: 8px;
+ margin-bottom: 25px;
+ border-left: 2px solid #5b9bd1;
+ color: #1A78CA;
+ font-size: 16px;
+}
+
+.checkbox-list > label {
+ display: block;
+}
+
+.checkbox-list > label.checkbox-inline {
+ display: inline-block;
+}
+
+.checkbox-list > label.checkbox-inline:first-child {
+ padding-left: 0;
+}
+
+/* Radios */
+input[type="radio"]{
+ cursor:pointer
+}
+.radio-list > label {
+ display: block;
+}
+
+.radio-list > label.radio-inline {
+ display: inline-block;
+}
+
+.radio-list > label.radio-inline:first-child {
+ padding-left: 0;
+}
+
+.form-horizontal .radio-list .radio {
+ padding-top: 1px;
+}
+
+.form-horizontal .radio-list > label {
+ margin-bottom: 0;
+}
+
+.form-horizontal .radio > span {
+ margin-top: 2px;
+}
+
+.help-block {
+ margin-top: 5px;
+ margin-bottom: 5px;
+ color: #a94442 !important;
+}
+
+.form-inline input {
+ margin-bottom: 0px !important;
+}
+.form-horizontal .control-label{
+ padding-top:4px;
+ text-align:right;
+}
+
+.form-control-static {
+ font-size: 14px;
+ padding-top: 7px;
+}
+
+.control-label .required {
+ color: #e02222;
+ font-size: 12px;
+ padding-left: 2px;
+}
+
+/*TAB*/
+
+.nav-tabs {
+ border: 0;
+ font-weight: bold;
+}
+
+.nav-tabs > li.active > a,
+.nav-tabs > li.active > a:hover,
+.nav-tabs > li.active > a:focus {
+ border: 0;
+ border-top: 3px solid #F3565D;
+}
+
+.nav-tabs > li > a {
+ border-radius: 0;
+ font-weight: bold;
+}
+
+.nav-tabs > li > a:hover {
+ background-color: #f1f3fa;
+ border: 1Px solid #f1f3fa;
+}
+
+/*button*/
+
+.btn {
+ min-width: 80px;
+ letter-spacing: 1px;
+}
+
+.btnGroup .btn {
+ margin-right: 15px;
+}
+
+.pagination-panel .btn {
+ min-width: 4px;
+}
+
+.btn.dropdown-toggle,
+.btn-group .btn.dropdown-toggle,
+.btn:hover,
+.btn:disabled,
+.btn[disabled],
+.btn:focus,
+.btn:active,
+.btn.active {
+ outline: none !important;
+ background-image: none !important;
+ filter: none;
+ -webkit-box-shadow: none;
+ -moz-box-shadow: none;
+ box-shadow: none;
+ text-shadow: none;
+}
+.btn-xs:hover{
+text-decoration:none ;
+}
+/*radius*/
+
+.radius_l {
+ border-radius: 20px;
+}
+
+.radius_m {
+ border-radius: 8px;
+}
+
+.radius_s {
+ border-radius: 3px;
+}
+
+/*Progress Bars*/
+
+.progress {
+ border: 0;
+ background-image: none !important;
+ filter: none !important;
+ -webkit-box-shadow: none !important;
+ -moz-box-shadow: none !important;
+ box-shadow: none !important;
+}
+
+.form-wizard .steps > li.active > a.step .number {
+ background-color: #45B6AF
+}
+
+.progress > .progress-bar-success {
+ background-color: #45B6AF
+}
+
+/*label*/
+
+.label,
+label {
+ font-weight: 400;
+ /*margin-bottom:15px;*/
+}
+
+/*表单中的组合*/
+
+.input-group-btn-vertical.fa {
+ font-size: 12px;
+}
+
+.spinner {
+ width: 60px;
+ margin-left: 10px;
+ margin-right: 30px;
+}
+
+.spinner input {
+ text-align: right;
+}
+
+.input-group-btn-vertical {
+ position: relative;
+ white-space: nowrap;
+ width: 1%;
+ vertical-align: middle;
+ display: table-cell;
+}
+
+.input-group-btn-vertical > .btn {
+ display: block;
+ float: none;
+ width: 100%;
+ max-width: 100%;
+ padding: 6px;
+ margin-left: -1px;
+ position: relative;
+ border-radius: 0;
+}
+
+.input-group-btn-vertical > .btn {
+ min-width: 20px;
+}
+
+.input-group-btn-vertical > .btn:first-child {
+ border-top-right-radius: 4px;
+}
+
+.input-group-btn-vertical > .btn:last-child {
+ margin-top: -2px;
+ border-bottom-right-radius: 4px;
+}
+
+.input-group-btn-vertical i {
+ position: absolute;
+ top: -2px;
+ left: 5px;
+}
+
+.input-group .form-control {
+ height: 26px !important;
+}
+
+/*separator & title*/
+
+.separator-line {
+ height: 1px;
+ width: 100%;
+ background: #ddd;
+ overflow: hidden;
+ margin-bottom: 15px;
+ margin-top: 6px;
+ opacity: 0.6;
+}
+
+.separator {
+ opacity: 0.7;
+}
+
+.separator:hover {
+ opacity: 1;
+}
+
+.titlefont {
+ font-size: 16px;
+ margin-top:15px;
+}
+
+/*link*/
+
+a {
+ color: #428bca;
+ text-decoration: none ;
+ cursor:pointer;
+}
+a:hover{
+ text-decoration: underline;
+}
+/*html滑块组件*/
+
+input[type="range"] {
+ margin-top: 2px;
+ background-color: #f0f3f9;
+ border: 1px solid #ccd6e8;
+ border-radius: 15px;
+ width: 400px;
+ -webkit-appearance: none;
+ height: 15px;
+}
+
+input[type="range"]::-webkit-slider-thumb {
+ -webkit-appearance: none;
+ cursor: pointer;
+ top: -5px;
+ height: 28px;
+ width: 15px;
+ transform: translateY(-4px);
+ background: none repeat scroll 0 0 #f0f3f9;
+ background-color: #9cc2cb;
+ border-radius: 20px;
+}
+
+input[type="range"]:focus {
+ outline: none;
+}
+
+/*ztree*/
+
+.ztree * {
+ font-family: "microsoft yahei";
+ font-size: 12px;
+}
+
+.ztree {
+ padding: 15px 30px 0 5px;
+}
+
+.ztree li a.curSelectedNode {
+ height: 28px;
+}
+
+.ztree li span {
+ line-height: 16px;
+ margin-right: 2px;
+ margin-left: 6px
+}
+
+.ztree li span.button.chk {
+ width: 13px;
+ height: 13px;
+ margin-left: 10px;
+ cursor: auto
+}
+
+.ztree li span.button.add {
+ margin-left: 2px;
+ /* margin-right: -1px; */
+
+ margin-right: 4px;
+ background-position: -144px 0;
+ vertical-align: top;
+ *vertical-align: middle;
+ float: right;
+}
+
+.ztree li span.button.edit {
+ margin-right: 4px;
+ background-position: -110px -48px;
+ vertical-align: top;
+ *vertical-align: middle;
+ float: right;
+}
+
+.ztree li span.button.remove {
+ margin-right: 4px;
+ background-position: -110px -64px;
+ vertical-align: top;
+ *vertical-align: middle;
+ float: right;
+}
+
+.ztree-select .ztree li a {
+ border: 1px solid #fff !important;
+}
+
+/*table*/
+
+table,
+.dataTables_length,
+.dataTables_info,
+.dataTables_paginate {
+ font-size: 12px;
+}
+
+table .heading {
+ font-size: 14px;
+ background: #fff !important;
+}
+
+table.dataTable tbody th,
+table.dataTable tbody td {
+ padding: 8px 10px 4px 10px !important;
+}
+
+table tr:nth-of-type(odd) {
+ background: #f9f9f9;
+}
+
+table tr:nth-of-type(even) {
+ background: #fff;
+}
+
+table td:hover {
+ background-color: #f5f5f5;
+ border-bottom: 1px solid #d0d0d0;
+ border-top: 1px solid #d0d0d0;
+}
+
+table tr td label {
+ cursor: pointer;
+}
+
+.table-btn span {
+ padding-left: 5px;
+ padding-right: 5px;
+}
+.table-bordered>thead>tr>th, .table-bordered>thead>tr>td{
+border-bottom-width:1px;
+}
+/*select-box with icon*/
+
+.iconselect-box .col-xs-1 {
+ width: 15px;
+ padding: 110px 0 0 0;
+}
+
+.iconPosition > div {
+ margin: 20px 0px 0px 0px;
+}
+
+/*-------------C3.css-------------*/
+.c3 path, .c3 line {
+ stroke: #008acd;
+}
+
+.c3-line {
+ stroke-width: 3px;
+}
+
+.c3-tooltip {
+ width: auto;
+}
+
+.c3-tooltip td {
+ color: #000;
+}
+
+.c3-axis.c3-axis-y {
+ stroke-width: 1px;
+}
+
+.c3-axis.c3-axis-x {
+ stroke-width: 1px;
+}
+
+/*checkbox & radio*/
+input[type="checkbox"] {
+ -webkit-appearance: none;
+ background: #fff url(../img/checkbox-radio/checkbox-init.png);
+ height: 18px;
+ vertical-align: middle;
+ width: 18px;
+ margin-bottom:5px;
+ margin-right:5px;
+}
+
+input[type="checkbox"]:checked {
+ -webkit-appearance: none;
+ background: #fff url(../img/checkbox-radio/checkbox-checked.png);
+ height: 18px;
+ vertical-align: middle;
+ width: 18px;
+}
+
+input[type="checkbox"]:focus,
+input[type="checkbox"]:hover {
+ outline: none;
+}
+
+input[type="checkbox"][disabled] {
+ -webkit-appearance: none;
+ background: #fff url(../img/checkbox-radio/checkbox-disabled.png);
+ height: 18px;
+ vertical-align: middle;
+ width: 18px;
+ margin-bottom:5px;
+ margin-right:5px;
+}
+
+input[type="checkbox"][disabled]:checked {
+ -webkit-appearance: none;
+ background: #fff url(../img/checkbox-radio/checkbox-checked-disabled.png);
+ height: 18px;
+ vertical-align: middle;
+ width: 18px;
+}
+
+input[type="radio"] {
+ -webkit-appearance: none;
+ background: #fff url(../img/checkbox-radio/radio-init.png);
+ height: 18px;
+ vertical-align: middle;
+ width: 18px;
+ margin-bottom:5px;
+ margin-right:5px;
+}
+
+input[type="radio"]:checked {
+ -webkit-appearance: none;
+ background: #fff url(../img/checkbox-radio/radio-checked.png);
+ height: 18px;
+ vertical-align: middle;
+ width: 18px;
+}
+
+input[type="radio"]:focus,
+input[type="radio"]:hover {
+ outline: none;
+}
+
+input[type="radio"][disabled] {
+ -webkit-appearance: none;
+ background: #fff url(../img/checkbox-radio/radio-disabled.png);
+ height: 18px;
+ vertical-align: middle;
+ width: 18px;
+ margin-bottom:5px;
+ margin-right:5px;
+}
+
+input[type="radio"][disabled]:checked {
+ -webkit-appearance: none;
+ background: #fff url(../img/checkbox-radio/radio-checked-disabled.png);
+ height: 18px;
+ vertical-align: middle;
+ width: 18px;
+}
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/plugins.css b/uiframe-iui/src/main/resources/webroot/framework/css/plugins.css
new file mode 100644
index 00000000..6ef8ca28
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/plugins.css
@@ -0,0 +1,1561 @@
+/**
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/**************************
+ PLUGIN CSS CUSTOMIZATIONS
+**************************/
+
+/***
+Calendar with full calendar
+***/
+.external-event {
+ display: inline-block ;
+ cursor:move;
+ margin-bottom: 5px ;
+ margin-left: 5px ;
+}
+
+.portlet .event-form-title {
+ font-size: 14px;
+ margin-top: 4px;
+ font-weight: 400;
+ margin-bottom: 10px;
+}
+
+.portlet.calendar .fc-button {
+ -webkit-box-shadow: none ;
+ -moz-box-shadow: none ;
+ box-shadow: none ;
+ text-shadow: none;
+ border: 0 ;
+ padding: 6px 8px 30px 8px ;
+ margin-left:2px;
+ border-top-style: none;
+ border-bottom-style: none;
+ border-right-style: solid;
+ border-left-style: solid;
+ border-color: #ddd;
+ background: transparent;
+ color: #fff;
+ top: -46px;
+}
+
+.portlet.calendar .fc-header {
+ margin-bottom:-21px;
+}
+
+.portlet.calendar .fc-button-prev {
+ padding-right: 10px;
+ padding-left: 8px;
+}
+
+.portlet.calendar .fc-button-next {
+ padding-right: 8px;
+ padding-left: 10px;
+}
+
+.portlet.calendar .fc-button.fc-state-active,
+.portlet.calendar .fc-button.fc-state-hover {
+ color: #666 ;
+ background-color: #F9F9F9 ;
+}
+
+.portlet.calendar .fc-button.fc-state-disabled {
+ color: #ddd ;
+}
+
+.portlet.calendar .fc-text-arrow {
+ font-size: 22px;
+ font-family: "Courier New", Courier, monospace;
+ vertical-align: baseline;
+}
+
+/* begin: event element */
+.portlet.calendar .fc-event {
+ border: 0px;
+ background-color: #69a4e0;
+ color: #fff;
+}
+
+.portlet.calendar .fc-event-inner {
+ border: 0px;
+}
+
+.portlet.calendar .fc-event-time {
+ float: left;
+ text-align: left;
+ color: #fff;
+ font-size: 13px;
+ font-weight: 300;
+}
+
+.portlet.calendar .fc-event-title {
+ text-align: left;
+ float: left;
+ color: #fff;
+ font-size: 13px;
+ font-weight: 300;
+}
+/* end: event element */
+
+.portlet.calendar .fc-header-title h2 {
+ font-size: 14px ;
+ line-height: 20px;
+ font-weight: 400;
+ color: #111;
+}
+
+.portlet.calendar .fc-widget-header {
+ background-image: none ;
+ filter:none;
+ background-color: #eee ;
+ text-transform: uppercase;
+ font-weight: 300;
+}
+
+.portlet.calendar .mobile .fc-button {
+ margin-left: 2px ;
+}
+
+.portlet.calendar .mobile .fc-button {
+ padding: 0px 6px 20px 6px ;
+ margin-left:2px ;
+ border: 0;
+ background-color: #ddd ;
+ background-image: none;
+ -webkit-box-shadow: none ;
+ -moz-box-shadow: none ;
+ box-shadow: none ;
+ -webkit-border-radius: 0 ;
+ -moz-border-radius: 0 ;
+ border-radius: 0 ;
+ color: #000;
+ text-shadow: none ;
+ text-align: center;
+}
+
+.portlet.calendar .mobile .fc-state-hover,
+.portlet.calendar .mobile .fc-state-active {
+ background-color: #eee ;
+}
+
+.portlet.calendar .mobile .fc-button-prev {
+ margin-right: 5px;
+ margin-top: -2px;
+}
+
+.portlet.calendar .mobile .fc-button-next {
+ margin-right: -0px;
+ margin-top: -2px;
+}
+
+.portlet.calendar .mobile .fc-header-space {
+ margin: 0px ;
+ padding: 0px ;
+ width: 0px ;
+}
+
+ .portlet.calendar .mobile .fc-state-disabled {
+ color: #bbb ;
+ }
+
+ .portlet.calendar .mobile .fc-header-left {
+ position: absolute;
+ z-index: 10;
+ }
+
+ .portlet.calendar .mobile .fc-header-right {
+ position: absolute;
+ z-index: 9;
+ }
+
+ .portlet.calendar .mobile .fc-header-left .fc-button {
+ top: -2px ;
+ }
+
+ .portlet.calendar .mobile .fc-header-right {
+ position: relative;
+ right:0;
+ }
+
+ .portlet.calendar .mobile .fc-header-right .fc-button {
+ top: 35px ;
+ }
+
+ .portlet.calendar .mobile .fc-content {
+ margin-top: 53px;
+ }
+
+
+/***
+Form wizard
+***/
+
+.form-wizard .progress {
+ margin-bottom: 30px;
+}
+
+.form-wizard .steps {
+ //padding: 10px 0;
+ //margin-bottom: 15px;
+}
+
+.form-wizard .steps {
+ background-color: #fff ;
+ background-image: none ;
+ filter:none ;
+ border: 0px;
+ box-shadow: none ;
+}
+
+.form-wizard .steps li a {
+ background-color: #fff ;
+ background-image: none ;
+ filter:none;
+ border: 0px;
+ box-shadow: none ;
+}
+
+.form-wizard .steps li a:hover {
+ background: none;
+}
+
+.form-wizard .step:hover {
+ text-decoration: none;
+}
+
+.form-wizard .step .number {
+ background-color: #eee;
+ display: inline-block;
+ text-align: center !important;
+ font-size: 16px;
+ font-weight: 300;
+ padding: 11px 15px 13px 15px;
+ margin-right: 10px;
+ height: 45px;
+ width: 45px;
+ -webkit-border-radius: 50% !important;
+ -moz-border-radius: 50% !important;
+ border-radius: 50% !important;
+}
+
+.form-wizard .step .desc {
+ display: inline-block;
+ font-size: 16px;
+ font-weight: 300;
+}
+
+.form-wizard .active .step .number {
+ background-color: #35aa47;
+ color: #fff;
+}
+
+.form-wizard .active .step .desc {
+ color: #333;
+ font-weight: 400;
+}
+
+.form-wizard .step i {
+ display: none;
+}
+
+.form-wizard .done .step .number {
+ background-color: #f2ae43;
+ color: #fff;
+}
+
+.form-wizard .done .step .desc {
+ font-weight: 400;
+}
+
+.form-wizard .done .step i {
+ font-size: 12px;
+ font-weight: normal;
+ color: #999;
+ display: inline-block;
+}
+
+
+@media (min-width: 600px) and (max-width: 1280px) {
+ .form-wizard .step .desc {
+ margin-top: 10px;
+ display: block;
+ }
+}
+
+@media (max-width: 600px) {
+ .form-wizard .steps > li > a {
+ text-align: left;
+ }
+}
+
+@media (min-width: 600px){
+ .nav-justified>li{
+ display:table-cell;
+ width:1%;
+ }
+}
+
+/***
+Google Maps
+***/
+.gmaps {
+ height: 300px;
+ width: 100%;
+}
+
+/* important! bootstrap sets max-width on img to 100% which conflicts with google map canvas*/
+.gmaps img {
+ max-width: none;
+}
+
+#gmap_static div{
+ background-repeat: no-repeat ;
+ background-position: 50% 50% ;
+ height:100%;
+ display:block;
+ height: 300px;
+}
+
+#gmap_routes_instructions {
+ margin-top: 10px;
+ margin-bottom: 0px;
+}
+
+/***
+SlimScrollBar plugins css changes
+***/
+.scroller {
+ padding: 0px ;
+ margin: 0px ;
+ padding-right: 12px ;
+ overflow: hidden;
+}
+
+.scroller-footer {
+ margin-top: 10px;
+}
+
+.scroller-footer:after,
+.scroller-footer:before {
+ content: "";
+ display: table;
+ line-height: 0;
+}
+
+.scroller-footer:after {
+ clear: both;
+}
+
+.portlet-body .slimScrollBar {
+ margin-right: 0px ;
+}
+
+/***
+jqvmap changes
+***/
+.jqvmap-zoomin {
+ height: 16px;
+ width: 16px;
+ background-color: #666 ;
+}
+
+.jqvmap-zoomout {
+ height: 16px;
+ width: 16px;
+ background-color: #666 ;
+}
+
+.vmaps {
+ position: relative;
+ overflow: hidden;
+ height: 300px;
+}
+
+
+/***
+Error state for WYSIWYG Editors
+***/
+.has-error .md-editor,
+.has-error .wysihtml5-sandbox,
+.has-error .cke {
+ border: 1px solid #B94A48 !important;
+}
+
+.has-success .md-editor,
+.has-success .wysihtml5-sandbox,
+.has-success .cke {
+ border: 1px solid #468847 !important;
+}
+
+/***
+Select2 plugin css changes
+***/
+
+/* enable form validation classes for select2 dropdowns */
+.has-error .select2-container .select2-choice {
+ border-color: #B94A48;
+}
+
+.has-error .select2-container.select2-dropdown-open .select2-choice {
+ border-color: #e5e5e5;
+}
+
+.has-error .select2-container.select2-dropdown-open .select2-choice > span {
+ color: #999999;
+}
+
+.has-success .select2-container .select2-choice {
+ border-color: #468847;
+}
+
+.has-success .select2-container.select2-dropdown-open .select2-choice {
+ border-color: #e5e5e5;
+}
+
+.has-success .select2-container.select2-dropdown-open .select2-choice > span {
+ color: #999999;
+}
+
+
+/***
+Jansy File Input plugin css changes
+***/
+.fileinput {
+ margin-bottom: 0;
+}
+
+
+/***
+WYSIWYG
+***/
+.wysihtml5-toolbar li {
+ margin: 0px;
+ height: 29px;
+}
+
+.wysihtml5-toolbar li .dropdown-menu {
+ margin-top: 5px;
+}
+
+/***
+CKEditor css changes
+***/
+.cke_bottom,
+.cke_inner,
+.cke_top,
+.cke_reset,
+.cke_dialog_title,
+.cke_dialog_footer,
+.cke_dialog {
+ background-image: none !important;
+ filter:none ;
+ border-top: 0 ;
+ border-bottom: 0 ;
+ -webkit-box-shadow: none !important;
+ -moz-box-shadow: none !important;
+ box-shadow: none !important;
+ text-shadow:none ;
+}
+
+.cke_dialog_ui_button,
+.cke_dialog_tab {
+ background-image: none !important;
+ filter:none ;
+ -webkit-box-shadow: none !important;
+ -moz-box-shadow: none !important;
+ box-shadow: none !important;
+ text-shadow:none !important;
+}
+
+.cke_dialog_ui_button:hover,
+.cke_dialog_tab:hover {
+ text-decoration: none;
+ text-shadow:none ;
+}
+
+.cke_dialog_ui_input_text {
+ background-image: none !important;
+ filter:none ;
+ -webkit-box-shadow: none !important;
+ -moz-box-shadow: none !important;
+ box-shadow: none !important;
+}
+
+.cke_combo_button,
+.cke_button,
+.cke_toolbar,
+.cke_toolgroup {
+ background-image: none !important;
+ filter:none !important;
+ border: 0 ;
+ -webkit-box-shadow: none !important;
+ -moz-box-shadow: none !important;
+ box-shadow: none !important;
+}
+
+.cke_button,
+.cke_combo_button,
+.cke_panel_grouptitle,
+.cke_hc.cke_panel_listItem a {
+ background-image: none !important;
+ filter:none ;
+ text-shadow:none ;
+ -webkit-border-radius: 0px !important;
+ -moz-border-radius: 0px !important;
+ -ms-border-radius: 0px !important;
+ -o-border-radius: 0px !important;
+}
+
+.cke_button:hover,
+.cke_combo_button:hover {
+ background-color: #ddd;
+}
+
+.cke_toolbar_break {
+ background-image: none !important;
+ filter:none !important;
+ border: 0 ;
+ box-shadow: none !important;
+ -webkit-box-shadow : none !important;
+ -moz-box-shadow: none !important;
+ -ms-box-shadow: none !important;
+ -o-box-shadow: none !important;
+}
+
+/***
+Modify tags input plugin css
+***/
+div.tagsinput {
+ min-height: 35px;
+ height: auto !important;
+ margin: 0;
+ padding: 5px 5px 0px 5px;
+ overflow: auto;
+}
+
+div.tagsinput span.tag {
+ background: #aaa ;
+ color: #fff ;
+ border: 0 ;
+ padding: 3px 6px;
+ margin-top: 0;
+ margin-bottom: 5px;
+}
+
+div.tagsinput input {
+ padding: 3px 6px ;
+ width: 75px !important;
+}
+
+div.tagsinput span.tag a {
+ color: #fff ;
+}
+
+div.tagsinput .not_valid {
+ color: #fff ;
+ padding: 3px 6px ;
+ background-color: #e02222 ;
+}
+
+/***
+Gritter notification modify
+***/
+
+#gritter-notice-wrapper {
+ right:1px !important;
+}
+
+.gritter-close {
+ left:auto !important;
+ right: 3px !important;
+}
+
+.gritter-title {
+ font-family: 'Open Sans' ;
+ font-size: 18px ;
+ font-weight: 300 ;
+}
+
+/***
+jQuery UI Sliders(new in v1.1.1)
+***/
+.slider {
+ border: 0;
+ padding: 0;
+ display: block;
+ margin: 12px 5px;
+ min-height: 11px;
+}
+
+.ui-slider-vertical {
+ width: 11px;
+}
+
+.ui-slider-horizontal .ui-slider-handle {
+ top: -3px;
+}
+
+.ui-slider-vertical .ui-slider-handle {
+ left: -3px;
+}
+
+.ui-slider-vertical,
+.ui-slider-handle {
+ filter: none !important;
+ background-image: none !important;
+}
+
+/***
+Dropzone css changes(new in v1.1.1)
+***/
+.dropzone {
+ -webkit-border-radius: 0px ;
+ -moz-border-radius: 0px ;
+ border-radius: 0px ;
+}
+
+
+/***
+Dashboard Charts(new in v1.2.1)
+***/
+.easy-pie-chart,
+.sparkline-chart {
+ text-align: center;
+}
+
+.sparkline-chart {
+ margin-top: 15px;
+ position:relative ;
+}
+
+.easy-pie-chart .number {
+ font-size: 16px;
+ font-weight: 300;
+ width: 85px;
+ margin: 0 auto;
+}
+
+.sparkline-chart .number {
+ width: 100px;
+ margin: 0 auto;
+ margin-bottom: 10px;
+}
+
+.sparkline-chart .title,
+.easy-pie-chart .title {
+ display: block;
+ text-align: center;
+ color: #333;
+ font-weight: 300;
+ font-size: 16px;
+ margin-top: 5px;
+ margin-bottom: 10px;
+}
+
+.sparkline-chart .title:hover,
+.easy-pie-chart .title:hover {
+ color: #666;
+ text-decoration: none;
+}
+
+.sparkline-chart .title > i,
+.easy-pie-chart .title > i {
+ margin-top: 5px;
+}
+
+/***
+Fancy box fix overlay fix(in v1.2.4)
+***/
+.fancybox-overlay {
+ z-index: 10000 ;
+}
+
+/***
+Datatables Plugin(in v1.3)
+***/
+.dataTable {
+ width: 100% !important;
+ clear: both;
+ /*margin-top: 5px;*/
+}
+
+.dataTables_filter label {
+ line-height: 32px ;
+}
+
+.dataTable .row-details {
+ margin-top: 3px;
+ display: inline-block;
+ cursor: pointer;
+ width: 14px;
+ height: 14px;
+}
+
+.dataTable .row-details.row-details-close {
+ background: url("../img/datatable-row-openclose.png") no-repeat 0 0;
+}
+
+.dataTable .row-details.row-details-open {
+ background: url("../img/datatable-row-openclose.png") no-repeat 0 -23px ;
+}
+
+.dataTable .details {
+ background-color: #eee ;
+}
+
+.dataTable .details td,
+.dataTable .details th {
+ padding: 4px;
+ background: none ;
+ border: 0;
+}
+
+.dataTable .details tr:hover td,
+.dataTable .details tr:hover th {
+ background: none ;
+}
+
+.dataTable .details tr:nth-child(odd) td,
+.dataTable .details tr:nth-child(odd) th {
+ background-color: #fff ;
+}
+
+.dataTable .details tr:nth-child(even) td,
+.dataTable .details tr:nth-child(even) th {
+ background-color: #eee ;
+}
+
+.dataTable > thead > tr > th.sorting,
+.dataTable > thead > tr > th.sorting_asc,
+.dataTable > thead > tr > th.sorting_desc {
+ padding-right: 18px;
+}
+
+.dataTable .table-checkbox {
+ width: 8px !important;
+}
+
+@media (max-width: 768px) {
+ .dataTables_wrapper .dataTables_length .form-control,
+ .dataTables_wrapper .dataTables_filter .form-control {
+ display: inline-block;
+ }
+
+ /* .dataTables_wrapper .dataTables_info {
+ top: 17px;
+ }*/
+
+/* .dataTables_wrapper .dataTables_paginate {
+ margin-top: -15px;
+ }*/
+}
+
+@media (max-width: 480px) {
+ .dataTables_wrapper .dataTables_filter .form-control {
+ width: 175px !important;
+ }
+
+ .dataTables_wrapper .dataTables_paginate {
+ float: left;
+ margin-top: 20px;
+ }
+}
+
+.dataTables_processing {
+ position: fixed;
+ top: 50%;
+ left: 50%;
+ min-width: 125px;
+ margin-left: 0;
+ padding: 7px;
+ text-align: center;
+ color: #333;
+ font-size: 13px;
+ border: 1px solid #ddd;
+ background-color: #eee;
+ vertical-align: middle;
+ -webkit-box-shadow: 0 1px 8px rgba(0, 0, 0, 0.1);
+ -moz-box-shadow: 0 1px 8px rgba(0, 0, 0, 0.1);
+ box-shadow: 0 1px 8px rgba(0, 0, 0, 0.1);
+}
+
+.dataTables_processing span {
+ line-height:15px;
+ vertical-align: middle;
+}
+
+.dataTables_empty {
+ text-align: center;
+}
+
+/***
+Extended Datatable
+***/
+.dataTables_extended_wrapper {
+ position: relative !important;
+ clear: both !important;
+}
+.dataTables_extended_wrapper .seperator {
+ padding: 0 2px;
+}
+
+.dataTables_extended_wrapper .dataTables_paginate,
+.dataTables_extended_wrapper .dataTables_length,
+.dataTables_extended_wrapper .dataTables_info {
+ display: inline-block;
+ float: none !important;
+ padding: 0 !important;
+ margin: 0 !important;
+ position: static !important;
+ font-size: 13px;
+}
+
+@media (max-width: 480px) {
+
+ .dataTables_extended_wrapper .dataTables_paginate,
+ .dataTables_extended_wrapper .dataTables_length,
+ .dataTables_extended_wrapper .dataTables_info {
+ display: block;
+ margin-bottom: 10px !important;
+ }
+
+ .dataTables_extended_wrapper .seperator {
+ display: none;
+ }
+}
+
+.dataTables_extended_wrapper .dataTables_length label {
+ margin: 0 !important;
+ padding: 0 !important;
+ font-size: 13px;
+ float: none !important;
+ display: inline-block !important;
+}
+
+.table-container .table-actions-wrapper {
+ display: none;
+}
+
+/***
+Password Strength(in v1.4)
+***/
+.password-strength .password-verdict {
+ display: inline-block;
+ margin-top: 6px;
+ margin-left: 5px;
+}
+
+.password-strength .progress {
+ margin-top: 5px;
+ margin-bottom: 0;
+}
+
+.password-strength .progress-bar {
+ padding: 2px;
+}
+
+/***
+Uniform disabled checkbox, radio button fix(in v1.4)
+***/
+
+.table .uniform-inline {
+ padding: 0;
+ margin: 0;
+}
+
+.checker {
+ margin-top: -2px !important;
+ margin-right: 2px !important;
+ display:inline;
+}
+
+.checker input,
+.radio input {
+ outline: none !important;
+}
+
+div.checker.disabled span,
+div.checker.disabled.active span{
+ background-position: -152px -260px;
+}
+
+div.checker.disabled:hover,
+div.radio.disabled:hover {
+ cursor: not-allowed;
+}
+
+div.radio,
+div.checker {
+ margin-right: 0;
+ margin-left: 3px;
+}
+
+/***
+jQuery Sparkline
+***/
+.jqstooltip {
+ width: auto !important;
+ height: auto !important;
+}
+
+
+/***
+jQuery Multi Select
+***/
+
+.ms-container .ms-list {
+ border: 1px solid #e5e5e5;
+ -webkit-box-shadow: none;
+ -moz-box-shadow: none;
+ box-shadow: none;
+
+}
+
+.ms-container .ms-optgroup-label{
+ font-size: 14px;
+}
+
+.ms-container .ms-selectable li.ms-elem-selectable,
+.ms-container .ms-selection li.ms-elem-selection{
+ font-size: 13px;
+}
+
+.ms-container .ms-list.ms-focus {
+ border-color: #999999;
+ -webkit-box-shadow: none;
+ -moz-box-shadow: none;
+ box-shadow: none;
+}
+
+.ms-container .ms-selectable li.ms-hover,
+.ms-container .ms-selection li.ms-hover{
+ color: #333;
+ background-color: #eee;
+}
+
+.ms-container .form-control {
+ margin-bottom: 5px;
+}
+
+/***
+Bootstrap Colorpicker
+***/
+.input-group.color .input-group-btn i {
+ position: absolute;
+ display: block;
+ cursor: pointer;
+ width: 20px;
+ height: 20px;
+ right: 6px;
+}
+
+.colorpicker.dropdown-menu {
+ padding: 5px;
+}
+
+/* change z-index when opened in modal */
+.modal-open .colorpicker {
+ z-index: 10055 !important;
+}
+
+/***
+Bootstrap Datetimepicker
+***/
+
+.datetimepicker table td {
+ font-weight: 300 !important;
+ font-family: 'Open Sans' !important;
+}
+
+.datetimepicker table th {
+ font-family: 'Open Sans' !important;
+ font-weight: 400 !important;
+}
+
+.datetimepicker.dropdown-menu {
+ padding: 5px;
+}
+
+.datetimepicker .active {
+ background-color:#4b8df8 !important;
+ background-image: none !important;
+ filter: none !important;
+}
+
+.datetimepicker .active:hover {
+ background-color: #2678FC !important;
+ background-image: none !important;
+ filter: none !important;
+
+}
+
+/* change z-index when opened in modal */
+.modal-open .datetimepicker {
+ z-index: 10055 !important;
+}
+
+/***
+Bootstrap Time Picker
+***/
+.bootstrap-timepicker-widget table td a {
+ padding: 4px 0;
+}
+
+.bootstrap-timepicker-widget input,
+.bootstrap-timepicker-widget input:focus {
+ outline: none !important;
+ border: 0;
+}
+
+.modal-open .bootstrap-timepicker-widget {
+ z-index: 10055 !important;
+}
+
+.bootstrap-timepicker-widget.timepicker-orient-bottom:before,
+.bootstrap-timepicker-widget.timepicker-orient-bottom:after {
+ top: auto;
+}
+
+/***
+Bootstrap Datepicker
+***/
+
+.datepicker.dropdown-menu {
+ padding: 5px;
+}
+
+.datepicker .selected {
+ background-color:#909090 !important;
+ background-image: none !important;
+ filter: none !important;
+}
+
+.datepicker .active {
+ background-color:#4b8df8 !important;
+ background-image: none !important;
+ filter: none !important;
+}
+
+.datepicker .active:hover {
+ background-color: #2678FC !important;
+ background-image: none !important;
+ filter: none !important;
+}
+
+.datepicker .input-daterange input {
+ text-align: left;
+}
+
+/* change z-index when opened in modal */
+.modal-open .datepicker {
+ z-index: 10055 !important;
+}
+
+.datepicker table td {
+ font-weight: 300 !important;
+ font-family: 'Open Sans' !important;
+}
+
+.datepicker table th {
+ font-family: 'Open Sans' !important;
+ font-weight: 400 !important;
+}
+
+
+/***
+Clockface
+***/
+
+.modal-open .clockface {
+ z-index: 10055 !important;
+}
+
+.clockface .cell .inner.active,
+.clockface .cell .outer.active {
+ background-color:#4b8df8 !important;
+ background-image: none ;
+ filter:none ;
+}
+
+
+/***
+Bootstrap Daterangepicker
+***/
+
+.modal-open .daterangepicker {
+ z-index: 10055 !important;
+}
+
+.daterangepicker td {
+ text-shadow: none ;
+}
+
+.daterangepicker td.active {
+ background-color: #4b8df8 ;
+ background-image: none ;
+ filter:none ;
+}
+
+.daterangepicker th {
+ font-weight: 400;
+ font-size: 14px;
+}
+
+.daterangepicker .ranges input[type="text"] {
+ width: 70px !important;
+ font-size: 11px;
+ vertical-align: middle;
+}
+
+.daterangepicker .ranges label {
+ font-weight: 300;
+ display: block;
+}
+
+.daterangepicker .ranges .btn {
+ margin-top: 10px;
+}
+
+.daterangepicker.dropdown-menu {
+ padding: 5px;
+}
+
+.daterangepicker .ranges li {
+ color: #333;
+}
+
+.daterangepicker .ranges li.active,
+.daterangepicker .ranges li:hover {
+ background: #4b8df8 !important;
+ border: 1px solid #4b8df8 !important;
+ color: #fff;
+}
+
+.daterangepicker .range_inputs input {
+ margin-bottom: 0 !important;
+}
+
+/***
+Bootstrap Editable
+***/
+
+.editable-input table,
+.editable-input table th,
+.editable-input table td,
+.editable-input table tr {
+ border: 0 !important;
+}
+
+.editable-input .combodate select {
+ margin-bottom: 5px;
+}
+
+/***
+FuelUX Spinners
+***/
+
+.spinner-buttons.btn-group-vertical .btn {
+ text-align: center;
+ margin: 0;
+ height: 17px;
+ width: 22px;
+ padding-left: 6px;
+ padding-right: 6px;
+ padding-top: 0px;
+}
+
+
+/***
+NoUI Range Sliders
+***/
+.noUi-handle {
+ height: 20px;
+ width: 20px;
+ margin: -3px 0 0 -20px;
+}
+
+.noUi-base {
+ height: 16px;
+}
+
+.noUi-connect {
+ background: #ffb848;
+}
+
+/***
+Toastr Notifications
+***/
+.toast {
+ -webkit-box-shadow: none !important;
+ -moz-box-shadow: none !important;
+ box-shadow: none !important;
+}
+
+.toast {
+ background-color: #030303;
+}
+.toast-success {
+ background-color: #51a351;
+}
+.toast-error {
+ background-color: #bd362f;
+}
+.toast-info {
+ background-color: #2f96b4;
+}
+.toast-warning {
+ background-color: #f89406;
+}
+
+.toast .toast-close-button {
+ display: inline-block;
+ margin-top: 0px;
+ margin-right: 0px;
+ text-indent: -100000px;
+ width: 11px;
+ height: 16px;
+ background-repeat: no-repeat !important;
+ background-image: url("../img/portlet-remove-icon-white.png") !important;
+}
+
+.toast-top-center {
+ top: 12px;
+ margin: 0 auto;
+ left: 50%;
+ margin-left: -150px;
+}
+
+.toast-bottom-center {
+ bottom: 12px;
+ margin: 0 auto;
+ left: 50%;
+ margin-left: -150px;
+}
+
+/***
+Google reCaptcha
+***/
+.form-recaptcha-img {
+ margin-bottom: 10px;
+ clear: both;
+ border: 1px solid #e5e5e5;
+ padding: 5px;
+}
+
+iframe[src="about:blank"] {
+ display:none;
+}
+
+/***
+Bootstrap Markdown
+***/
+.md-input {
+ padding: 5px !important;
+ border-bottom: 0 !important;
+}
+
+.md-editor .btn-toolbar {
+ margin-left: 0px;
+}
+
+.md-editor.active {
+ border: 1px solid #999999;
+ -webkit-box-shadow: none !important;
+ -moz-box-shadow: none !important;
+ box-shadow: none !important;
+}
+
+/***
+Bootstrap Datepaginator
+***/
+.datepaginator a {
+ font-family: 'Open Sans';
+ font-size: 13px;
+ font-weight: 300;
+}
+
+.datepicker .today {
+ background-image: none !important;
+ filter: none !important;
+}
+
+#dp-calendar {
+ right: 4px !important;
+}
+
+/***
+Font Awesome 4.0 Demo
+***/
+.fa-item {
+ font-size: 14px;
+ padding: 10px 10px 10px 20px;
+}
+
+.fa-item i {
+ font-size: 16px;
+ display: inline-block;
+ width: 20px;
+}
+
+.fa-item:hover {
+ cursor: pointer;
+ background: #eee;
+}
+
+/***
+Bootstrap Modal
+***/
+/* fix: content shifting to the right on modal open */
+.modal-open.page-overflow .page-container,
+.modal-open.page-overflow .page-container .navbar-fixed-top,
+.modal-open.page-overflow .page-container .navbar-fixed-bottom,
+.modal-open.page-overflow .modal-scrollable {
+ overflow-y: auto !important;
+}
+
+.modal-scrollable {
+ overflow: hidden !important;
+}
+
+
+/***
+jQuery Notific8 Plugin
+***/
+
+.jquery-notific8-message {
+ font-size: 13px;
+}
+
+[class*="jquery-notific8"],
+[class*="jquery-notific8"]:after,
+[class*="jquery-notific8"]:before {
+ -webkit-box-sizing: content-box;
+ -moz-box-sizing: content-box;
+ box-sizing: content-box;
+}
+
+.right .jquery-notific8-close-sticky span,
+.left .jquery-notific8-close-sticky span {
+ font-size: 10px;
+}
+
+.jquery-notific8-heading {
+ font-weight: 300;
+ font-size: 16px;
+}
+
+/***
+jQuery File Upload
+***/
+
+.blueimp-gallery .close {
+ background-image: url("../img/portlet-remove-icon-white.png") !important;
+ margin-top: -2px;
+}
+
+.blueimp-gallery .prev,
+.blueimp-gallery .next {
+ border-radius: 23px !important;
+}
+
+/***
+Bootstrap Switch
+***/
+
+.has-switch {
+ border-color: #e5e5e5;
+}
+
+.has-switch:focus {
+ -webkit-box-shadow: none;
+ box-shadow: none;
+}
+
+/***
+Jstree
+***/
+
+.jstree-default .jstree-clicked {
+ border: 0;
+ background-color: #e1e1e1;
+ box-shadow:none;
+}
+
+.jstree-default .jstree-hovered {
+ border: 0;
+ background-color: #eee;
+ box-shadow:none;
+}
+
+.jstree-default .jstree-wholerow-clicked,
+.jstree-wholerow .jstree-wholerow-clicked {
+ background: none;
+ border: 0;
+ background-color: #e1e1e1;
+ box-shadow:none;
+}
+
+.jstree-default .jstree-wholerow-hovered,
+.jstree-wholerow .jstree-wholerow-hovered {
+ border: 0;
+ background-color: #eee;
+ box-shadow:none;
+}
+
+.jstree-icon.icon-lg {
+ margin-top: 1px;
+}
+
+.jstree-open > .jstree-anchor > .fa-folder:before {
+ margin-left: 2px;
+ content: "\f07c";
+}
+
+.jstree-default.jstree-rtl .jstree-last {
+ background: transparent;
+ background-repeat: no-repeat;
+}
+
+.vakata-context,
+.vakata-context ul {
+ padding: 0;
+ min-width: 125px;
+ background-color: #ffffff;
+ -webkit-box-shadow: 0 1px 8px rgba(0, 0, 0, 0.1);
+ -moz-box-shadow: 0 1px 8px rgba(0, 0, 0, 0.1);
+ box-shadow: 0 1px 8px rgba(0, 0, 0, 0.1);
+ font-size: 14px;
+ font-family: "Segoe UI",Helvetica, Arial, sans-serif;
+ border: 1px solid #ddd;
+}
+
+.vakata-context li a {
+ padding: 0 10px;
+}
+
+.vakata-context .vakata-context-hover > a,
+.vakata-context li a:hover {
+ background-color: #eee;
+ color: #333;
+ box-shadow: none;
+}
+
+.vakata-context li a span,
+.vakata-context li a ins {
+ display: none;
+}
+
+.vakata-context .vakata-context-separator a,
+.vakata-context-rtl .vakata-context-separator a {
+ margin: 0;
+}
+
+.jstree-rename-input {
+ background-color: #ffffff !important;
+ border: 1px solid #e5e5e5 !important;
+ outline: none !important;
+ padding: 2px 6px !important;
+ margin-right: -4px !important;
+}
+
+/***
+Bootstrap Select
+***/
+
+.bootstrap-select .btn {
+ border-color: #e5e5e5;
+}
+
+.bootstrap-select.open .btn1 {
+ border-color: #999999;
+}
+
+.bootstrap-select.open.dropup .btn1 {
+ border-color: #999999;
+}
+
+.bootstrap-select .btn:focus {
+ outline: none !important;
+ outline-offset: 0;
+}
+
+.bootstrap-select.btn-group .dropdown-menu {
+ margin-top: 1px;
+}
+
+.bootstrap-select.btn-group .dropdown-menu > li > dt > .text {
+ font-weight: 600;
+ font-family: 'Open Sans';
+ font-size: 14px;
+}
+
+.bootstrap-select.btn-group .dropdown-menu .text-muted {
+ color: #999 !important;
+}
+
+.bootstrap-select .caret {
+ border: 0;
+ width: auto;
+ height: auto;
+ margin-top: -10px !important;
+}
+
+.bootstrap-select .caret:before {
+ content: "\f107";
+ display: inline-block;
+ border: 0;
+ font-family: FontAwesome;
+ font-style: normal;
+ font-weight: normal;
+}
+
+.bootstrap-select .selected i {
+ color: #aaa;
+}
+
+/***
+Pace - Page Progress
+***/
+
+.pace .pace-progress {
+ z-index: 10000;
+ top: 40px;
+ height: 2px;
+}
+
+.pace .pace-progress-inner {
+ box-shadow: none;
+}
+
+.pace .pace-activity {
+ top: 44px;
+ right: 22px;
+ border-radius: 10px !important;
+}
+
+
+@media (max-width: 480px) {
+
+ .page-header-fixed .pace .pace-progress {
+ top: 82px;
+ }
+
+ .page-header-fixed .pace .pace-activity {
+ top: 88px;
+ right: 15px;
+ }
+
+}
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/plugins.css.gz b/uiframe-iui/src/main/resources/webroot/framework/css/plugins.css.gz
new file mode 100644
index 00000000..879e3f46
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/plugins.css.gz
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/print.css b/uiframe-iui/src/main/resources/webroot/framework/css/print.css
new file mode 100644
index 00000000..74b144cc
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/print.css
@@ -0,0 +1,53 @@
+/**
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+body {
+ background-color: #fff !important;
+}
+
+.header {
+ display: none;
+}
+
+.page-sidebar {
+ display: none;
+}
+
+.theme-panel {
+ display: none;
+}
+
+.hidden-print {
+ display: none;
+}
+
+.footer {
+ display: none;
+}
+
+.no-page-break {
+ page-break-after: avoid;
+}
+
+.page-container {
+ margin: 0px !important;
+ padding: 0px !important;
+}
+
+.page-content {
+ min-height: auto !important;
+ padding: 0px 20px 20px !important;
+ margin: 0 !important;
+} \ No newline at end of file
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/print.css.gz b/uiframe-iui/src/main/resources/webroot/framework/css/print.css.gz
new file mode 100644
index 00000000..58b2261a
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/print.css.gz
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/style-custom.css b/uiframe-iui/src/main/resources/webroot/framework/css/style-custom.css
new file mode 100644
index 00000000..5628009f
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/style-custom.css
@@ -0,0 +1,1510 @@
+/**
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/* remove rounds from all elements */
+
+div,
+input,
+select,
+textarea,
+span,
+img,
+table,
+td,
+th,
+p,
+a,
+button,
+ul,
+code,
+pre,
+li {
+ //-webkit-border-radius: 0 !important;
+ //-moz-border-radius: 0 !important;
+ //border-radius: 0 !important;
+}
+
+/***
+Buttons & Dropdown Buttons
+***/
+
+.btn {
+ border-width: 0;
+ padding: 7px 14px;
+ font-size: 14px;
+ outline: none !important;
+ -webkit-box-shadow: none !important;
+ -moz-box-shadow: none !important;
+ box-shadow: none !important;
+ //-webkit-border-radius: 0 !important;
+ //-moz-border-radius: 0 !important;
+ //border-radius: 0 !important;
+ text-shadow: none;
+}
+
+/* fix jumping group buttons */
+.btn-group.btn-group-solid .btn + .btn,
+.btn-group.btn-group-solid .btn + .btn-group.btn-group-solid,
+.btn-group.btn-group-solid .btn-group.btn-group-solid + .btn,
+.btn-group.btn-group-solid .btn-group.btn-group-solid + .btn-group.btn-group-solid {
+ margin-left: 0px;
+}
+
+.btn-group-vertical.btn-group-solid > .btn + .btn,
+.btn-group-vertical.btn-group-solid > .btn + .btn-group,
+.btn-group-vertical.btn-group-solid > .btn-group + .btn,
+.btn-group-vertical.btn-group-solid > .btn-group + .btn-group {
+ margin-top: 0px;
+ margin-left: 0;
+}
+
+.btn-default {
+ border-width: 1px;
+ padding: 6px 13px;
+}
+
+.btn.red-stripe {
+ border-left: 3px solid #d84a38;
+}
+
+.btn.blue-stripe {
+ border-left: 3px solid #4d90fe;
+}
+
+.btn.purple-stripe {
+ border-left: 3px solid #852b99;
+}
+
+.btn.green-stripe {
+ border-left: 3px solid #35aa47;
+}
+
+.btn.yellow-stripe {
+ border-left: 3px solid #ffb848;
+}
+
+.btn.dark-stripe {
+ border-left: 3px solid #555555;
+}
+
+.btn.default {
+ color: #333333;
+ text-shadow: none;
+ background-color: #e5e5e5;
+}
+.btn.default:hover,
+.btn.default:focus,
+.btn.default:active,
+.btn.default.active,
+.btn.default[disabled],
+.btn.default.disabled {
+ color: #333333;
+ background-color: #d8d8d8 !important;
+ outline: none !important;
+}
+
+/* Red */
+.btn.red {
+ color: white;
+ text-shadow: none;
+ background-color: #d84a38;
+}
+.btn.red:hover,
+.btn.red:focus,
+.btn.red:active,
+.btn.red.active,
+.btn.red[disabled],
+.btn.red.disabled {
+ background-color: #bb2413 !important;
+ color: #fff !important;
+ outline: none !important;
+}
+
+/* Blue */
+
+.btn.blue {
+ color: white;
+ text-shadow: none;
+ background-color: #4d90fe;
+}
+.btn.blue:hover,
+.btn.blue:focus,
+.btn.blue:active,
+.btn.blue.active,
+.btn.blue[disabled],
+.btn.blue.disabled {
+ background-color: #0362fd !important;
+ color: #fff !important;
+ outline: none !important;
+}
+
+.btn-group .btn.blue.dropdown-toggle {
+ background-color: #4d90fe !important;
+}
+.btn-group .btn.blue:hover,
+.btn-group .btn.blue:focus,
+.btn-group .btn.blue:active,
+.btn-group .btn.blue.active,
+.btn-group .btn.blue.disabled,
+.btn-group .btn.blue[disabled] {
+ background-color: #0362fd !important;
+ color: #fff !important;
+ outline: none !important;
+}
+
+/* Green */
+.btn.green {
+ color: white;
+ text-shadow: none;
+ background-color: #35aa47;
+}
+.btn.green:hover,
+.btn.green:focus,
+.btn.green:active,
+.btn.green.active,
+.btn.green.disabled,
+.btn.green[disabled]{
+ background-color: #1d943b !important;
+ color: #fff !important;
+ outline: none !important;
+}
+
+/* Purple */
+.btn.purple {
+ color: white;
+ text-shadow: none;
+ background-color: #852b99;
+}
+.btn.purple:hover,
+.btn.purple:focus,
+.btn.purple:active,
+.btn.purple.active,
+.btn.purple.disabled,
+.btn.purple[disabled] {
+ background-color: #6d1b81 !important;
+ color: #fff !important;
+ outline: none !important;
+}
+
+.btn-group .btn.purple.dropdown-toggle {
+ background-color: #852b99 !important;
+}
+.btn-group .btn.purple:hover,
+.btn-group .btn.purple:focus,
+.btn-group .btn.purple:active,
+.btn-group .btn.purple.active,
+.btn-group .btn.purple.disabled,
+.btn-group .btn.purple[disabled] {
+ background-color: #6d1b81 !important;
+ color: #fff !important;
+ outline: none !important;
+}
+
+/* Yellow */
+.btn.yellow {
+ color: white;
+ text-shadow: none;
+ background-color: #ffb848;
+}
+.btn.yellow:hover,
+.btn.yellow:focus,
+.btn.yellow:active,
+.btn.yellow.active,
+.btn.yellow.disabled,
+.btn.yellow[disabled] {
+ background-color: #eca22e !important;
+ color: #fff !important;
+ outline: none !important;
+}
+
+.btn-group .btn.yellow.dropdown-toggle {
+ background-color: #ffb848 !important;
+}
+.btn-group .btn.yellow:hover,
+.btn-group .btn.yellow:focus,
+.btn-group .btn.yellow:active,
+.btn-group .btn.yellow.active,
+.btn-group .btn.yellow.disabled,
+.btn-group .btn.yellow[disabled] {
+ background-color: #eca22e !important;
+ color: #fff !important;
+ outline: none !important;
+}
+
+/* Black */
+.btn.dark {
+ color: white;
+ text-shadow: none;
+ background-color: #555555;
+}
+.btn.dark:hover,
+.btn.dark:focus,
+.btn.dark:active,
+.btn.dark.active,
+.btn.dark.disabled,
+.btn.dark[disabled] {
+ background-color: #222222 !important;
+ color: #fff !important;
+ outline: none !important;
+}
+
+.btn-group .btn.dark.dropdown-toggle {
+ background-color: #555555 !important;
+}
+.btn-group .btn.dark:hover,
+.btn-group .btn.dark:focus,
+.btn-group .btn.dark:active,
+.btn-group .btn.dark.active,
+.btn-group .btn.dark.disabled,
+.btn-group .btn.dark[disabled] {
+ background-color: #222222 !important;
+ color: #fff !important;
+ outline: none !important;
+}
+
+.btn-lg {
+ padding: 10px 16px;
+ font-size: 18px;
+ line-height: 1.33;
+ vertical-align: middle;
+}
+
+.btn-lg > i {
+ font-size: 18px;
+}
+
+.btn > i {
+ font-size: 14px;
+}
+
+.btn-sm,
+.btn-xs {
+ padding: 4px 10px 5px 10px;
+ font-size: 13px;
+ line-height: 1.5;
+}
+
+.btn-sm > i,
+.btn-xs > i {
+ font-size: 13px;
+}
+
+.btn-xs {
+ padding: 1px 5px;
+}
+
+.btn-block {
+ display: block;
+ width: 100%;
+ padding-left: 0;
+ padding-right: 0;
+}
+
+/***
+Metro icons
+***/
+
+[class^="m-icon-"] {
+ display: inline-block;
+ width: 14px;
+ height: 14px;
+ margin-top: 3px;
+ line-height: 14px;
+ vertical-align: top;
+ background-image: url(../img/syncfusion-icons.png);
+ background-position: 0 0;
+ background-repeat: no-repeat;
+}
+
+[class^="m-icon-big-"] {
+ display: inline-block;
+ width: 30px;
+ height: 30px;
+ margin: 6px;
+ vertical-align: middle;
+ background-image: url(../img/syncfusion-icons.png);
+ background-position: 0 0px;
+ background-repeat: no-repeat;
+}
+
+/* large icons */
+.btn.m-icon-big {
+ padding: 9px 16px 8px 16px;
+}
+
+.btn.m-icon-big.m-icon-only{
+ padding: 9px 8px 8px 0px;
+}
+
+.btn.m-icon-big [class^="m-icon-big-"] {
+ margin: 0 0 0 10px;
+}
+
+.btn.m-icon-ony > i {
+ margin-left: 0px;
+}
+
+/* default icons */
+.btn.m-icon {
+ padding: 7px 14px 7px 14px;
+}
+
+.btn.m-icon [class^="m-icon-"] {
+ margin: 4px 0 0 5px;
+}
+
+.btn.m-icon.m-icon-only {
+ padding: 7px 10px 7px 6px;
+}
+
+/* white icon */
+.m-icon-white {
+ background-image: url(../img/syncfusion-icons-white.png);
+}
+
+/* Misc */
+.m-icon-swapright {
+ background-position: -27px -10px;
+}
+.m-icon-swapdown {
+ background-position: -68px -10px;
+}
+.m-icon-swapleft {
+ background-position: -8px -10px;
+}
+.m-icon-swapup {
+ background-position: -46px -10px;
+}
+.m-icon-big-swapright{
+ background-position: -42px -28px;
+}
+.m-icon-big-swapdown{
+ background-position: -115px -28px;
+}
+.m-icon-big-swapleft{
+ background-position: -6px -28px;
+}
+.m-icon-big-swapup{
+ background-position: -78px -28px;
+}
+
+
+/***
+Popover
+ ***/
+.popover {
+ -webkit-box-shadow: 0 1px 8px rgba(0, 0, 0, 0.2);
+ -moz-box-shadow: 0 1px 8px rgba(0, 0, 0, 0.2);
+ box-shadow: 0 1px 8px rgba(0, 0, 0, 0.2);
+ padding: 0 !important;
+}
+
+.popover .popover-title {
+ -webkit-border-radius: 0 !important;
+ -moz-border-radius: 0 !important;
+ border-radius: 0 !important;
+ margin: 0 !important;
+}
+
+.info .popover .popover-title,
+.popover.info .popover-title,
+.info .popover .popover-content,
+.popover.info .popover-content {
+ color:#27a9e3;
+}
+
+.success .popover .popover-title,
+.popover.success .popover-title,
+.success .popover .popover-content,
+.popover.success .popover-content {
+ color:#468847;
+}
+
+.error .popover .popover-title,
+.popover.error .popover-title,
+.error .popover .popover-content,
+.popover.error .popover-content {
+ color:#B94A48;
+}
+
+.warning .popover .popover-title,
+.popover.warning .popover-title,
+.warning .popover .popover-content,
+.popover.warning .popover-content {
+ color:#C09853;
+}
+
+.popovers.yellow + .popover {
+ background: yellow;
+}
+
+.popovers.yellow + .popover .popover-title {
+ background: yellow;
+}
+
+.popovers.yellow + .popover .popover-content {
+ background: yellow;
+}
+
+/***
+Dropdown
+***/
+
+ /*Fixing dropdown issue on mobile devices in Bootstrap 3.2.2*/
+.dropdown-backdrop {
+ position: static;
+}
+
+.dropdown:hover .caret,
+.open.dropdown .caret {
+ opacity: 1;
+ filter: alpha(opacity=100);
+}
+
+
+.dropdown.open .dropdown-toggle {
+ color: #08c;
+ background: #ccc;
+ background: rgba(0, 0, 0, 0.3);
+}
+
+/***
+Dropdown Menu
+***/
+
+.dropdown-menu {
+ position: absolute;
+ top: 100%;
+ left: 0;
+ z-index: 1000;
+ display: none;
+ float: left;
+ list-style: none;
+ text-shadow: none;
+ padding: 0px;
+ margin:0px;
+ background-color: #ffffff;
+ -webkit-box-shadow: 0 1px 8px rgba(0, 0, 0, 0.1);
+ -moz-box-shadow: 0 1px 8px rgba(0, 0, 0, 0.1);
+ box-shadow: 0 1px 8px rgba(0, 0, 0, 0.1);
+ font-size: 14px;
+ font-family: "Segoe UI",Helvetica, Arial, sans-serif;
+ border: 1px solid #ddd;
+}
+
+/* custom dropdown conetnt */
+.dropdown-content {
+ padding:5px;
+}
+
+.dropdown-content form {
+ margin:0;
+}
+
+.dropdown.inline .dropdown-menu {
+ display: inline-block;
+ position: relative;
+}
+
+.dropdown-menu.bottom-up {
+ top: auto;
+ bottom: 100%;
+ margin-bottom: 2px;
+}
+
+.dropdown-menu li > a {
+ padding: 6px 0 6px 13px;
+ color: #333;
+ text-decoration: none;
+ display: block;
+ clear: both;
+ font-weight: normal;
+ line-height: 18px;
+ white-space: nowrap;
+}
+
+.dropdown-menu li > a:hover,
+.dropdown-menu .active > a,
+.dropdown-menu .active > a:hover {
+ text-decoration: none;
+ background-image: none;
+ background-color: #eee;
+ color: #333;
+ filter:none;
+}
+
+/* dropdown sub menu support for Bootsrap 3 */
+.dropdown-submenu {
+ position: relative;
+}
+
+.dropdown-submenu > .dropdown-menu {
+ top: 5px;
+ left: 100%;
+ margin-top: -6px;
+ margin-left: -1px;
+}
+
+.dropdown-submenu:hover > .dropdown-menu {
+ display: block;
+}
+
+.dropup .dropdown-submenu > .dropdown-menu {
+ top: auto;
+ bottom: 0;
+ margin-top: 0;
+ margin-bottom: -2px;
+}
+
+.dropdown-submenu > a:after {
+ position: absolute;
+ display: inline-block;
+ font-size: 14px;
+ right: 7px;
+ top: 7px;
+ font-family: FontAwesome;
+ height: auto;
+ content: "\f105";
+ font-weight: 300;
+}
+
+.dropdown-submenu:hover > a:after {
+ border-left-color: #ffffff;
+}
+
+.dropdown-submenu.pull-left {
+ float: none;
+}
+
+.dropdown-submenu.pull-left > .dropdown-menu {
+ left: -100%;
+ margin-left: 10px;
+}
+
+.nav.pull-right > li > .dropdown-menu,
+.nav > li > .dropdown-menu.pull-right {
+ right: 0;
+ left: auto;
+}
+
+.nav.pull-right > li > .dropdown-menu:before,
+.nav > li > .dropdown-menu.pull-right:before {
+ right: 12px;
+ left: auto;
+}
+
+.nav.pull-right > li > .dropdown-menu:after,
+.nav > li > .dropdown-menu.pull-right:after {
+ right: 13px;
+ left: auto;
+}
+
+.nav.pull-right > li > .dropdown-menu .dropdown-menu,
+.nav > li > .dropdown-menu.pull-right .dropdown-menu {
+ right: 100%;
+ left: auto;
+ margin-right: -1px;
+ margin-left: 0;
+ -webkit-border-radius: 6px 0 6px 6px;
+ -moz-border-radius: 6px 0 6px 6px;
+ border-radius: 6px 0 6px 6px;
+}
+
+@media (max-width: 767px) {
+
+ .navbar-nav .open .dropdown-menu {
+ position: absolute;
+ float: left;
+ width: auto;
+ margin-top: 0;
+ background-color: #ffffff;
+ border: 1px solid #ddd;
+ -webkit-box-shadow: 0 1px 8px rgba(0, 0, 0, 0.1);
+ -moz-box-shadow: 0 1px 8px rgba(0, 0, 0, 0.1);
+ box-shadow: 0 1px 8px rgba(0, 0, 0, 0.1);
+ }
+
+ .navbar-nav .open .dropdown-menu > li > a {
+ padding: 6px 0 6px 13px;
+ color: #333 !important;
+ }
+
+ .navbar-nav .open .dropdown-menu > li > a:hover,
+ .navbar-nav .open .dropdown-menu > li > a:focus {
+ background-color: #eee !important;
+ }
+
+}
+
+/***
+Dropdown Checkboxes (in v1.3)
+***/
+.dropdown-checkboxes {
+ padding: 5px;
+}
+
+.dropdown-checkboxes label {
+ display: block;
+ font-weight: 300;
+ color: #333;
+ margin-bottom: 4px;
+ margin-top: 4px;
+}
+
+
+/***
+Dropdown Menu Badges
+***/
+
+.dropdown-menu > li > a > .badge {
+ position: absolute;
+ margin-top: 1px;
+ right: 3px;
+ display: inline;
+ font-size: 11px;
+ font-weight: 300;
+ text-shadow:none;
+ height: 18px;
+ padding: 3px 6px 3px 6px;
+ text-align: center;
+ vertical-align: middle;
+ -webkit-border-radius: 12px !important;
+ -moz-border-radius: 12px !important;
+ border-radius: 12px !important;
+}
+
+.dropdown-menu > li > a > .badge.badge-roundless {
+ -webkit-border-radius: 0 !important;
+ -moz-border-radius: 0 !important;
+ border-radius: 0 !important;
+}
+
+/* end: sidebar menu badges */
+
+/***
+Forms
+***/
+code {
+ border: 1px solid #e1e1e1;
+ -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
+ -moz-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
+ box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
+}
+label {
+ font-weight: 400;
+ font-size: 14px;
+}
+
+.form-control:-moz-placeholder {
+ color: #999999;
+}
+.form-control::-moz-placeholder {
+ color: #999999;
+}
+.form-control:-ms-input-placeholder {
+ color: #999999;
+}
+.form-control::-webkit-input-placeholder {
+ color: #999999;
+}
+.form-control {
+ font-size: 14px;
+ font-weight: normal;
+ color: #333333;
+ background-color: #ffffff;
+ border: 1px solid #e5e5e5;
+ border-radius: 0;
+ -webkit-box-shadow: none;
+ box-shadow: none;
+ -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
+ transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
+}
+.form-control:focus {
+ border-color: #999999;
+ outline: 0;
+ -webkit-box-shadow: none !important;
+ box-shadow: none !important;
+}
+.form-control[disabled],
+.form-control[readonly],
+fieldset[disabled] .form-control {
+ cursor: not-allowed;
+ background-color: #eeeeee;
+}
+
+.form-control.height-auto {
+ height: auto;
+}
+
+.uneditable-input {
+ padding: 6px 12px;
+ min-width: 206px;
+ font-size: 14px;
+ font-weight: normal;
+ height: 34px;
+ color: #333333;
+ background-color: #ffffff;
+ border: 1px solid #e5e5e5;
+ border-radius: 0;
+ -webkit-box-shadow: none;
+ box-shadow: none;
+ -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
+ transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
+}
+
+label.form-control {
+ display: block;
+ margin-bottom: 5px;
+}
+
+input[disabled],
+select[disabled],
+textarea[disabled] {
+ cursor: not-allowed;
+ background-color: #F4F4F4 !important;
+}
+
+input[readonly],
+select[readonly],
+textarea[readonly] {
+ cursor: not-allowed;
+ background-color: #F9F9F9 !important;
+}
+
+/* input groups */
+.input-group.input-group-fixed {
+ width: auto !important;
+}
+
+.input-group-addon {
+ border-color: #e5e5e5;
+ background: #e5e5e5;
+ min-width: 39px;
+}
+
+.input-group-addon > i {
+ color: #999;
+}
+
+/* form control sizing */
+.form-control-inline {
+ display: inline-block !important;
+}
+
+.input-mini {
+ width: 45px !important;
+}
+
+.input-xsmall {
+ width: 80px !important;
+}
+
+.input-small {
+ width: 120px !important;
+}
+
+.input-medium {
+ width: 240px !important;
+}
+
+.input-large {
+ width: 320px !important;
+}
+
+.input-xlarge {
+ width: 480px !important;
+}
+
+.input-inline {
+ display: inline-block;
+ width: auto;
+ vertical-align: middle;
+}
+
+.form-group .input-inline {
+ margin-right: 5px;
+}
+
+.input-sm {
+ height: 28px;
+ padding: 5px 10px;
+ font-size: 13px;
+}
+
+select.input-sm {
+ height: 28px;
+ line-height: 28px;
+ padding: 2px 10px;
+}
+
+/***
+Input spinner(in v1.4)
+***/
+
+input[type="text"].spinner,
+input[type="password"].spinner,
+input[type="datetime"].spinner,
+input[type="datetime-local"].spinner,
+input[type="date"].spinner,
+input[type="month"].spinner,
+input[type="time"].spinner,
+input[type="week"].spinner,
+input[type="number"].spinner,
+input[type="email"].spinner,
+input[type="url"].spinner,
+input[type="search"].spinner,
+input[type="tel"].spinner,
+input[type="color"].spinner {
+ background-image: url("../img/input-spinner.gif") !important;
+ background-repeat: no-repeat;
+ background-position: right 8px;
+}
+
+@media (max-width: 768px) {
+
+ .input-large {
+ width: 250px !important;
+ }
+
+ .input-xlarge {
+ width: 300px !important;
+ }
+
+}
+
+/***
+Error States
+***/
+
+.has-warning .help-inline,
+.has-warning .help-block,
+.has-warning .control-label {
+ color: #c09853;
+}
+
+.has-warning .form-control {
+ border-color: #c09853;
+ -webkit-box-shadow: none;
+ box-shadow: none;
+}
+
+.has-warning .form-control:focus {
+ border-color: #a47e3c;
+ -webkit-box-shadow: none;
+ box-shadow: none;
+}
+
+.has-warning .input-group-addon {
+ color: #c09853;
+ background-color: #fcf8e3;
+ border-color: #c09853;
+}
+
+.has-error .help-inline,
+.has-error .help-block,
+.has-error .control-label {
+ color: #b94a48;
+}
+
+.has-error .form-control {
+ border-color: #b94a48;
+ -webkit-box-shadow: none;
+ box-shadow: none;
+}
+
+.has-error .form-control:focus {
+ border-color: #953b39;
+ -webkit-box-shadow: none;
+ box-shadow: none;
+}
+
+.has-error .input-group-addon {
+ color: #b94a48;
+ background-color: #f2dede;
+ border-color: #b94a48;
+}
+
+.has-success .help-inline,
+.has-success .help-block,
+.has-success .control-label {
+ color: #468847;
+}
+
+.has-success .form-control {
+ border-color: #468847;
+ -webkit-box-shadow: none;
+ box-shadow: none;
+}
+
+.has-success .form-control:focus {
+ border-color: #356635;
+ -webkit-box-shadow: none;
+ box-shadow: none;
+}
+
+.has-success .input-group-addon {
+ color: #468847;
+ background-color: #dff0d8;
+ border-color: #468847;
+}
+
+/***
+Custom label and badges
+***/
+
+.label,
+.badge {
+ font-weight: 300;
+ text-shadow: none !important;
+}
+
+.label {
+ font-size: 12px;
+ padding: 3px 6px 3px 6px;
+}
+
+.label.label-sm {
+ font-size: 12px;
+ padding: 1px 4px 1px 4px;
+}
+
+h1 .label,
+h2 .label,
+h3 .label,
+h4 .label,
+h5 .label,
+h6 .label,
+h7 .label {
+ font-size: 75%;
+}
+
+.badge {
+ font-size: 11px !important;
+ font-weight: 300;
+ text-align: center;
+ background-color: #e02222;
+ height: 18px;
+ padding: 3px 6px 3px 6px;
+ -webkit-border-radius: 12px !important;
+ -moz-border-radius: 12px !important;
+ border-radius: 12px !important;
+ text-shadow:none !important;
+ text-align: center;
+ vertical-align: middle;
+}
+
+.badge.badge-roundless {
+ -webkit-border-radius: 0 !important;
+ -moz-border-radius: 0 !important;
+ border-radius: 0 !important;
+}
+
+.badge-default,
+.label-default {
+ background-color: #999 !important;
+}
+
+.badge-primary,
+.label-primary {
+ background-color: #428bca !important;
+}
+
+.label-success,
+.badge-success {
+ background-color: #3cc051;
+ background-image: none !important;
+}
+
+.label-warning,
+.badge-warning {
+ background-color: #fcb322;
+ background-image: none !important;
+}
+
+.label-danger,
+.badge-danger {
+ background-color: #ed4e2a;
+ background-image: none !important;
+}
+
+.label-info,
+.badge-info {
+ background-color: #57b5e3;
+ background-image: none !important;
+}
+
+/* fix badge position for navs */
+.nav.nav-pills > li > a > .badge {
+ margin-top: -2px;
+}
+
+.nav.nav-stacked > li > a > .badge {
+ margin-top: 1px;
+ margin-bottom: 0px;
+}
+
+/***
+Iconic Labels
+***/
+
+.label.label-icon {
+ padding: 4px 1px 4px 5px;
+ margin-right: 2px;
+ text-align: center !important;
+}
+
+.ie9 .label.label-icon,
+.ie10 .label.label-icon {
+ padding: 3px 0px 3px 3px;
+}
+
+.label.label-icon > i {
+ font-size: 12px;
+ text-align: center !important;
+}
+
+
+/***
+Pagination
+***/
+.pagination {
+ margin: 10px 0;
+}
+
+.pagination .active > a,
+.pagination .active > a:hover {
+ background: #eee;
+ border-color: #dddddd;
+ color: #333;
+}
+
+
+
+/***
+wells
+***/
+.well {
+ -webkit-box-shadow: none !important;
+ -moz-box-shadow: none !important;
+ box-shadow: none !important;
+}
+
+/* Bootstrap Tabs */
+
+.dropup.open > .dropdown-toggle,
+.dropdown.open > .dropdown-toggle {
+ border-color: #ddd !important;
+}
+
+.nav-tabs > li > .dropdown-menu:after,
+.nav-pills > li > .dropdown-menu:after,
+.navbar-nav > li > .dropdown-menu:after,
+
+.nav-tabs > li > .dropdown-menu:before,
+.nav-pills > li > .dropdown-menu:before,
+.navbar-nav > li > .dropdown-menu:before {
+ display: none !important;
+}
+
+.nav-tabs > .dropdown.open > .dropdown-toggle,
+.nav-pills > .dropdown.open > .dropdown-toggle {
+ background: #eee !important;
+ color: #0d638f !important;
+}
+
+
+.nav-tabs,
+.nav-pills {
+ margin-bottom: 10px;
+}
+
+.tabs-right > .nav-tabs,
+.tabs-left > .nav-tabs {
+ border-bottom: 0;
+}
+
+.tabs-left > .nav-tabs > li,
+.tabs-right > .nav-tabs > li {
+ float: none;
+}
+
+.tabs-left > .nav-tabs > li > a,
+.tabs-right > .nav-tabs > li > a {
+ min-width: 74px;
+ margin-right: 0;
+ margin-bottom: 3px;
+}
+
+.tabs-left > .nav-tabs {
+ float: left;
+ margin-right: 19px;
+ border-right: 1px solid #ddd;
+}
+
+.tabs-left > .nav-tabs > li > a {
+ margin-right: -1px;
+ -webkit-border-radius: 4px 0 0 4px;
+ -moz-border-radius: 4px 0 0 4px;
+ border-radius: 4px 0 0 4px;
+}
+
+.tabs-left > .nav-tabs > li > a:hover,
+.tabs-left > .nav-tabs > li > a:focus {
+ border-color: #eeeeee #dddddd #eeeeee #eeeeee;
+}
+
+.tabs-left > .nav-tabs .active > a,
+.tabs-left > .nav-tabs .active > a:hover,
+.tabs-left > .nav-tabs .active > a:focus {
+ border-color: #ddd transparent #ddd #ddd;
+ *border-right-color: #ffffff;
+}
+
+.tabs-right > .nav-tabs {
+ float: right;
+ margin-left: 19px;
+ border-left: 1px solid #ddd;
+}
+
+.tabs-right > .nav-tabs > li > a {
+ margin-left: -1px;
+ -webkit-border-radius: 0 4px 4px 0;
+ -moz-border-radius: 0 4px 4px 0;
+ border-radius: 0 4px 4px 0;
+}
+
+.tabs-right > .nav-tabs > li > a:hover,
+.tabs-right > .nav-tabs > li > a:focus {
+ border-color: #eeeeee #eeeeee #eeeeee #dddddd;
+}
+
+.tabs-right > .nav-tabs .active > a,
+.tabs-right > .nav-tabs .active > a:hover,
+.tabs-right > .nav-tabs .active > a:focus {
+ border-color: #ddd #ddd #ddd transparent;
+ *border-left-color: #ffffff;
+}
+
+.tabs-below > .nav-tabs,
+.tabs-below > .nav-pills {
+ border-bottom: 0;
+ margin-bottom: 0px;
+ margin-top: 10px;
+}
+
+.tabs-below > .nav-tabs {
+ border-top: 1px solid #ddd;
+ margin-bottom: 0;
+ margin-top: 10px;
+}
+
+.tabs-below > .nav-tabs > li {
+ margin-top: -1px;
+ margin-bottom: 0;
+}
+
+.tabs-below > .nav-tabs > li > a {
+ -webkit-border-radius: 0 0 4px 4px;
+ -moz-border-radius: 0 0 4px 4px;
+ border-radius: 0 0 4px 4px;
+}
+
+.tabs-below > .nav-tabs > li > a:hover,
+.tabs-below > .nav-tabs > li > a:focus {
+ border-top-color: #ddd;
+ border-bottom-color: transparent;
+}
+
+.tabs-below > .nav-tabs > .active > a,
+.tabs-below > .nav-tabs > .active > a:hover,
+.tabs-below > .nav-tabs > .active > a:focus {
+ border-color: transparent #ddd #ddd #ddd;
+}
+
+/* BS3.0.3 removed tabbable class so its added back */
+.tabbable:before,
+.tabbable:after {
+ display: table;
+ content: " ";
+}
+
+.tabbable:after {
+ clear: both;
+}
+
+.tabbable:before,
+.tabbable:after {
+ display: table;
+ content: " ";
+}
+
+.tabbable:after {
+ clear: both;
+}
+
+/***
+Bootstrap modal
+***/
+
+.modal {
+ z-index: 10050 !important;
+ outline: none !important;
+}
+
+.modal-header {
+ border-bottom: 1px solid #EFEFEF;
+}
+
+.modal-header h3{
+ font-weight: 300;
+}
+
+.modal-small.modal-dialog {
+ width: 400px;
+}
+
+.modal-wide.modal-dialog {
+ width: 60%;
+}
+
+.modal-full.modal-dialog {
+ width: 100%;
+}
+
+@media (max-width: 768px) {
+
+ .modal-small.modal-dialog,
+ .modal-wide.modal-dialog,
+ .modal-full.modal-dialog {
+ width: auto;
+ }
+
+}
+
+/***
+Modal header close button fix
+***/
+.modal-header .close {
+ margin-top: 0px !important;
+}
+
+.modal > .loading {
+ position: absolute;
+ top: 50%;
+ left:50%;
+ margin-top: -22px;
+ margin-left: -22px;
+}
+
+.modal-backdrop {
+ border: 0 !important;
+ outline: none !important;
+ z-index: 10049 !important;
+}
+
+.modal-backdrop,
+.modal-backdrop.fade.in {
+ background-color: #333 !important;
+}
+
+/* fix: content shifting to the right on modal open due to scrollbar closed */
+.modal {
+ overflow-y: auto !important;
+}
+
+.modal-open {
+ overflow-y: auto !important;
+}
+
+.modal-open-noscroll {
+ overflow-y: hidden !important;
+}
+
+
+/***
+Image Carousel
+***/
+.carousel.image-carousel .carousel-inner {
+ padding-top: 0;
+ padding-bottom: 0;
+}
+
+.carousel.image-carousel .carousel-control i {
+ position: absolute;
+ top:40%;
+}
+
+.carousel.image-carousel.image-carousel-hoverable .carousel-control i {
+ display: none;
+}
+
+.carousel.image-carousel.image-carousel-hoverable:hover .carousel-control i {
+ display: inline-block;
+}
+
+.carousel.image-carousel .carousel-control.left i {
+ left:10px;
+}
+
+.carousel.image-carousel .carousel-control.right i {
+ right:10px;
+}
+
+.carousel.image-carousel .carousel-indicators {
+ margin-top: 10px;
+ bottom: -7px;
+}
+
+.carousel.image-carousel .carousel-indicators li {
+ background-color: #666;
+}
+
+.carousel.image-carousel .carousel-indicators li.active {
+ background-color: #333;
+}
+
+.carousel.image-carousel .carousel-caption {
+ position: absolute;
+ right: 0;
+ bottom: 0;
+ left: 0;
+ padding: 15px 15px 25px 15px;
+ background: #333333;
+ background: rgba(0, 0, 0, 0.75);
+}
+
+.carousel.image-carousel .carousel-caption h4,
+.carousel.image-carousel .carousel-caption h3,
+.carousel.image-carousel .carousel-caption h2,
+.carousel.image-carousel .carousel-caption p {
+ text-align: left;
+ line-height: 20px;
+ color: #ffffff;
+}
+
+.carousel.image-carousel .carousel-caption h2,
+.carousel.image-carousel .carousel-caption h3,
+.carousel.image-carousel .carousel-caption h4 {
+ margin: 0 0 5px;
+}
+
+.carousel.image-carousel .carousel-caption h2 a,
+.carousel.image-carousel .carousel-caption h3 a,
+.carousel.image-carousel .carousel-caption h4 a {
+ color: #aaa;
+}
+
+.carousel.image-carousel .carousel-caption p {
+ margin-bottom: 0;
+}
+
+.carousel.image-carousel .item {
+ margin: 0;
+}
+
+/***
+Bootstrap Tables
+***/
+
+.table thead > tr > th {
+ border-bottom: 0;
+}
+
+.table tbody tr.active td,
+.table tbody tr.active th {
+ background-color: #e9e9e9 !important;
+}
+
+.table tbody tr.active:hover td,
+.table tbody tr.active:hover th {
+ background-color: #e1e1e1 !important;
+}
+
+.table-striped tbody tr.active:nth-child(odd) td,
+.table-striped tbody tr.active:nth-child(odd) th {
+ background-color: #017ebc;
+}
+
+.table .heading > th {
+ background-color: #eee !important;
+}
+
+/***
+Bootstrap Panel
+***/
+
+.panel {
+ -webkit-box-shadow: none !important;
+ -moz-box-shadow: none !important;
+ box-shadow: none !important;
+}
+
+.panel .panel-title > a:hover {
+ text-decoration: none;
+}
+
+.accordion .panel-heading {
+ padding: 0;
+}
+
+.accordion .panel-title {
+ padding: 0;
+}
+
+.accordion .panel-title .accordion-toggle {
+ display: block;
+ padding: 10px 15px;
+}
+
+.accordion .accordion-toggle.accordion-toggle-styled {
+ background: url("../img/accordion-plusminus.png") no-repeat;
+ background-position: right -19px;
+ margin-right: 15px;
+}
+
+.accordion .accordion-toggle.accordion-toggle-styled.collapsed {
+ background-position: right 12px;
+}
+
+/***
+Responsive Image
+***/
+.table td .img-responsive{
+ width:100%;
+}
+
+/***
+Unstyled List
+***/
+
+.list-unstyled li > .list-unstyled {
+ margin-left: 25px;
+}
+
+.alarm-critical{
+ background-color: rgb(255, 0, 0);
+}
+
+.alarm-major{
+ background-color: rgb(255, 150, 0);
+}
+
+.alarm-minor{
+ background-color: rgb(248, 252, 96);
+}
+
+.alarm-warning{
+ background-color: rgb(152, 240, 248);
+} \ No newline at end of file
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/style-custom.css.gz b/uiframe-iui/src/main/resources/webroot/framework/css/style-custom.css.gz
new file mode 100644
index 00000000..dc9e17a1
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/style-custom.css.gz
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/style-ict-bootstrap.css b/uiframe-iui/src/main/resources/webroot/framework/css/style-ict-bootstrap.css
new file mode 100644
index 00000000..522fb402
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/style-ict-bootstrap.css
@@ -0,0 +1,838 @@
+/**
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+@font-face {
+ font-family: 'Lato';
+ font-style: normal;
+ font-weight: 400;
+ src: local('Lato Regular'), local('Lato-Regular'), url(9k-RPmcnxYEPm8CNFsH2gg.woff) format('woff');
+}
+html, body, div, span, applet, object, blockquote, pre,
+a, abbr, acronym, address, big, cite, code,
+del, dfn, em, img, ins, kbd, q, s, samp,
+small, strike, strong, sub, sup, tt, var,
+b, u, i, center,
+dl, dt, dd, ol, ul, li,
+fieldset, form, label, legend,
+table, caption, tbody, tfoot, thead, tr, th, td,
+article, aside, canvas, details, embed,
+figure, figcaption, footer, header, hgroup,
+menu, nav, output, ruby, section, summary,
+time, mark, audio, video {
+ margin: 0;
+ padding: 0;
+ border: 0;
+ font-size: 1em;
+ vertical-align: baseline;
+}
+/* HTML5 display-role reset for older browsers */
+article, aside, details, figcaption, figure,
+footer, header, hgroup, menu, nav, section {
+ display: block;
+}
+body {
+ background: rgba(231, 231, 231, 0.43);
+ line-height: 1.125em;
+ color: white;
+ max-width: 1920px;
+ margin: 0 auto;
+ position: relative;
+ font-family: 'Lato', Helvetica, Arial, Tahoma;
+ text-shadow: 1px 1px 0 rgba(0,0,0,0.3);
+}
+ol, ul {
+ padding: 0 10px;
+ margin: 0 10px;
+ line-height: 1.5em;
+}
+h1, h2, h3, h4, h5, h6 {
+ text-shadow: 1px 1px 0 rgba(0,0,0,0.5);
+ font-family: 'Lato', Georgia, Helvetica, Tahoma;
+ margin: 10px 0;
+ font-weight: normal;
+}
+h1 {
+ font-size: 1.875em;
+}
+h2 {
+ font-size: 1.6em;
+ line-height: 1em;
+}
+h3 {
+ font-size: 1.25em;
+}
+h4 {
+ font-size: 1.125em;
+}
+h5 {
+ font-size: 1em;
+}
+h6 {
+ font-size: 0.875em;
+}
+a {
+ text-decoration: none;
+ color: white;
+}
+a:hover {
+ color: white;
+ opacity: 0.9;
+}
+a:visited {
+ color: white;
+}
+h2 {
+ cursor: pointer;
+}
+code, pre {
+ font-family: Monaco, Menlo, Consolas;
+ font-size: 1em;
+ color: #FFFFDE;
+ padding: 0 3px 2px;
+}
+
+table {
+ border-collapse: collapse;
+ border-spacing: 0;
+}
+
+.header {
+ /*padding: 14px 0;
+ background-color: rgb(19, 17, 17);
+ background-color: #006a3f;
+ background-image:
+ radial-gradient(rgba(0,0,0,0.1) 15%, transparent 16%),
+ radial-gradient(rgba(0,0,0,0.1) 15%, transparent 16%),
+ radial-gradient(rgba(255, 255, 255, 0.1) 15%, transparent 20%),
+ radial-gradient(rgba(255, 255, 255, 0.1) 15%, transparent 20%);
+ background-image:
+ -webkit-radial-gradient(rgba(0,0,0,0.1) 15%, transparent 16%),
+ -webkit-radial-gradient(rgba(0,0,0,0.1) 15%, transparent 16%),
+ -webkit-radial-gradient(rgba(255, 255, 255, 0.1) 15%, transparent 20%),
+ -webkit-radial-gradient(rgba(255, 255, 255, 0.1) 15%, transparent 20%);
+ background-position: 0 0px, 4px 4px, 0 1px, 4px 5px;
+ background-size: 8px 8px;
+ border-bottom: 1px solid rgb(41, 41, 41);*/
+ margin-top: 1%;
+ /* margin-left: 10%; */
+ margin-left: 90px;
+}
+@media (min-width: 1600px){
+ .header {
+ margin-top: 1%;
+ margin-left: 95px;
+ }
+}
+
+.header div.float-left {
+ /*padding-left: 2%;*/
+}
+
+@media (min-width: 769px) and (max-width: 1024px) {
+ .header div.float-left {
+ /*padding-left: 5%;*/
+ }
+}
+
+.header a {
+ font-size: 35px;
+ color: white;
+ display: block;
+ opacity: 0.8;
+}
+.header a:first-letter {
+ font-size: 60px;
+ line-height: 40px;
+ font-weight: bold;
+}
+.header .target {
+ margin-left: 5px;
+ margin-bottom: 20px;
+}
+
+.header .reponsive-block {
+ list-style: none;
+ margin: 0px;
+ padding: 50px 2% 0 0;
+}
+
+.header .reponsive-block li {
+ display: inline-block;
+ float:left;
+}
+
+.header .reponsive-block a {
+ display: inline-block;
+ margin: 0 5px;
+ cursor: pointer;
+ background: url(../i/reponsive.png) no-repeat;
+}
+
+.header .reponsive-block a.desktop {
+ background-position: 3px 0;
+ width: 34px; height: 26px;
+}
+
+.header .reponsive-block a.tablet-landscape {
+ background-position: -49px 0;
+ width: 22px;
+ height: 22px;
+}
+
+.header .reponsive-block a.tablet-portrait {
+ background-position: -90px 0;
+ width: 18px;
+ height: 24px;
+}
+
+.header .reponsive-block a.iphone-landscape {
+ background-position: -129px 0;
+ width: 20px;
+ height: 20px;
+}
+
+.header .reponsive-block a.iphone-portrait {
+ background-position: -166px 0;
+ width: 16px;
+ height: 26px;
+}
+
+.header .reponsive-block a.desktop:hover,
+.header .reponsive-block a.desktop.active {
+ background-position: 3px -34px;
+}
+
+.header .reponsive-block a.tablet-landscape:hover,
+.header .reponsive-block a.tablet-landscape.active {
+ background-position: -49px -34px;
+}
+
+.header .reponsive-block a.tablet-portrait:hover,
+.header .reponsive-block a.tablet-portrait.active {
+ background-position: -91px -33px;
+}
+
+.header .reponsive-block a.iphone-landscape:hover,
+.header .reponsive-block a.iphone-landscape.active {
+ background-position: -128px -33px;
+}
+
+.header .reponsive-block a.iphone-portrait:hover,
+.header .reponsive-block a.iphone-portrait.active {
+ background-position: -166px -33px;
+}
+.free-wall {
+ margin: auto;
+}
+
+.free-wall-logo {
+ margin: auto;
+ height: 420px;
+}
+.size2-2 {
+ width: 80px;
+ height: 80px;
+}
+
+.size11 {
+ height: 160px;
+ width: 160px;
+}
+
+.size12 {
+ width: 160px;
+ height: 320px;
+}
+
+.size21 {
+ width: 320px;
+ height: 160px;
+}
+
+.size22 {
+ height: 320px;
+ width: 320px;
+}
+
+.size13 {
+ width: 160px;
+ height: 480px;
+}
+
+.size31 {
+ width: 480px;
+ height: 160px;
+}
+
+.size23 {
+ width: 320px;
+ height: 480px;
+}
+
+.size24 {
+ width: 320px;
+ height: 640px;
+}
+
+.size32 {
+ width: 480px;
+ height: 320px;
+}
+
+.size33 {
+ width: 480px;
+ height: 480px;
+}
+
+.size34 {
+ width: 480px;
+ height: 640px;
+}
+
+.size43 {
+ width: 640px;
+ height: 480px;
+}
+
+.size35 {
+ width: 480px;
+ height: 800px;
+}
+
+.size53 {
+ width: 800px;
+ height: 480px;
+}
+
+.size36 {
+ width: 480px;
+ height: 960px;
+}
+
+.size41 {
+ width: 270px;
+ height: 160px;
+}
+.size42 {
+ width: 270px;
+ height: 320px;
+}
+.size41-1024 {
+ width: 213px;
+ height: 133px;
+}
+.size42-1024 {
+ width: 213px;
+ height: 275px;
+}
+.size41-1366 {
+ width: 278px;
+ height: 156px;
+}
+.size42-1366 {
+ width: 278px;
+ height: 332px;
+}
+.size41-1440 {
+ width: 310px;
+ height: 168px;
+}
+.size42-1440 {
+ width: 310px;
+ height: 340px;
+}
+.size41-1600 {
+ width: 330px;
+ height: 173px;
+}
+.size42-1600 {
+ width: 330px;
+ height: 354px;
+}
+
+.donate form {
+ height: 100%;
+ width: 100%;
+ background: rgb(44, 62, 80);
+}
+
+.donate form .paypal {
+ display: block;
+ margin: auto;
+ padding: 20px 0px 0px 0px;
+ outline: 0;
+}
+
+.img-demo {
+ vertical-align: bottom;
+ list-style: none;
+ margin:0;
+ padding: 0;
+}
+
+.img-demo li {
+ float: left;
+ width: 25%;
+ text-align: center;
+}
+
+.img-demo li img {
+ border: 2px solid white;
+ width: 98px;
+ height: 98px;
+}
+
+.float-left {
+ float: left;
+}
+
+.float-right {
+ float: right;
+}
+
+.clearfix:before,
+.clearfix:after {
+ content: "";
+ display: table;
+}
+
+.clearfix:after {
+ clear: both;
+}
+
+.clearfix {
+ zoom: 1; /* For IE 6/7 (trigger hasLayout) */
+}
+
+.rest-left {
+ margin-left: 244px;
+}
+
+.desc h1,
+.desc h2,
+.desc h3,
+.desc h4,
+.desc h5,
+.desc h6 {
+ font-weight: bold;
+}
+
+.desc h2 {
+ border-bottom: 1px solid rgba(0,0,0,0.1);
+ margin-top: 0px;
+ margin-bottom: 0px;
+ padding-bottom: 50px;
+}
+
+.desc h2 span {
+ float: left;
+ display: block;
+ line-height: 50px;
+}
+
+@media (max-width: 1024px) {
+ .brick {
+ height:140px;
+ }
+}
+
+.brick {
+ margin-top:10px;
+ background-color: white;
+ /* float: left; */
+ cursor: default;
+ overflow: hidden;
+ background-repeat: no-repeat;
+ background-size: cover;
+ background-position: center;
+ height:160px;
+}
+
+@media (min-width: 1440px) {
+ .brick {
+ height:180px;
+ }
+}
+
+.brick .cover {
+ overflow: hidden;
+ margin: 20px;
+ margin-top: 25%;
+ font-size: 30px;
+ float: right;
+ text-align: right;
+}
+
+.brick .read-more {
+ position: absolute;
+ display: none;
+ bottom: 0px;
+ left: 0px;
+ right: 0px;
+ padding: 12px;
+ background: rgb(0, 0, 0);
+ background: rgba(0, 0, 0, 0.45);
+}
+
+.brick:hover .read-more {
+ display: block;
+ cursor: pointer;
+}
+
+.brick .desc {
+ display: none;
+}
+
+.full-width .float-left {
+ display: none;
+}
+
+.full-width .desc {
+ display: block;
+}
+
+.full-width.brick {
+ box-shadow: none;
+ overflow: visible;
+ border: none !important;
+ background: none !important;
+}
+
+.full-width.brick .cover {
+ margin: 0px 20px;
+ color: #333;
+}
+
+.full-width.brick .cover * {
+ text-shadow: none;
+}
+
+.full-width.brick .cover code {
+ color: #666;
+}
+
+.open .float-left {
+ display: none;
+}
+
+.open .desc {
+ display: block;
+}
+
+.example {
+ width: 0px;
+ height: 0px;
+ overflow: visible !important; /* for ie7 */
+}
+
+.example-draggable {
+ cursor: move;
+}
+
+.example-draggable * {
+ cursor: move;
+}
+
+.example-draggable a {
+ cursor: pointer;
+}
+
+.cell {
+ background-position: center center;
+ background-repeat: no-repeat;
+ background-size: cover;
+ position: absolute;
+ background-color: #222;
+}
+
+[class*="-share"] {
+ cursor: pointer;
+ margin: 20px 0;
+ line-height: 30px;
+ padding-left: 30px;
+}
+
+.facebook-share {
+ background: url(../i/fb.png) no-repeat left center;
+}
+
+.twitter-share {
+ background: url(../i/tw.png) no-repeat left center;
+}
+
+.google-share {
+ background: url(../i/gp.png) no-repeat left center;
+}
+
+.download-icon {
+ background: url(../i/download.png) no-repeat left center;
+ display: block;
+ margin: 0 0 10px 0;
+ line-height: 30px;
+ padding-left: 30px;
+}
+
+.js-icon {
+ background: url(../i/js.png) no-repeat left center;
+ display: block;
+ line-height: 30px;
+ padding-left: 30px;
+}
+
+.fork {
+ float: right;
+ width: 100%;
+ height: 100%;
+ display: block;
+ background: url(../i/forkme.png) no-repeat top right;
+}
+
+.back-button {
+ position: fixed;
+ z-index: 9999;
+ padding: 1%;
+ bottom: 2%;
+ right: 2%;
+ display: none;
+ background: black;
+}
+
+.back-button .back-icon {
+ background: url(../i/back.png) no-repeat top center;
+ width: 45px;
+ height: 27px;
+ display: block;
+}
+
+.back-button .back-icon:hover {
+ background: url(../i/back.png) no-repeat bottom center;
+}
+
+@media (min-width: 1600px) {
+ .main-content-wrapper{
+ width:100%;
+ margin-left:95px;
+ margin-right: 1%;
+ }
+}
+
+@media (min-width: 1441px) and (max-width: 1599px) {
+ .main-content-wrapper{
+ width:100%;
+ /*margin-left: 0%; */
+ margin-left:75px;
+ margin-right: 1%;
+ }
+}
+
+@media (min-width: 1367px) and (max-width: 1440px) {
+ .main-content-wrapper{
+ width:100%;
+ margin-left: 75px;
+ margin-right: 1%;
+ }
+}
+
+@media (min-width: 1281px) and (max-width: 1366px) {
+ .main-content-wrapper{
+ width:100%;
+ /*margin-left: 2%; */
+ margin-left:75px;
+ margin-right: 2%;
+ }
+}
+
+@media (min-width: 1025px) and (max-width: 1280px) {
+ .main-content-wrapper{
+ width:100%;
+ /*margin-left: 4%;*/
+ margin-left:75px;
+ margin-right: 1%;
+ }
+}
+
+@media (min-width: 769px) and (max-width: 1024px) {
+ .main-content-wrapper{
+ width:100%;
+ /*margin-left: 6%;*/
+ margin-left:75px;
+ margin-right: 1%;
+ }
+}
+
+@media (min-width: 641px) and (max-width: 768px) {
+ .main-content-wrapper{
+ width:100%;
+ margin-left: 10%;
+ margin-right: 1%;
+ }
+}
+
+@media (min-width: 481px) and (max-width: 640px) {
+ .main-content-wrapper{
+ width:100%;
+ margin-left: 0%;
+ margin-right: 1%;
+ }
+}
+
+@media (max-width: 480px) {
+ .main-content-wrapper{
+ width:100%;
+ margin-left: 9%;
+ margin-right: 1%;
+ }
+}
+
+body{
+ font-family: microsoft yahei;
+ background: #484747;
+}
+
+.skyBlue-mainpage{
+ background: -moz-linear-gradient(left top, #1cadd9, #20c0f0);
+ background: -webkit-gradient(linear, left top, right bottom, color-stop(0, #1cadd9), color-stop(1, #20c0f0));
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#1cadd9', endColorstr='#20c0f0', GradientType='0');
+ background: linear-gradient(to bottom right,#1cadd9, #20c0f0);
+}
+.golden-mainpage{
+ background-image: -moz-linear-gradient(left top, #bca374, #d9cf7a);
+ background-image: -webkit-gradient(linear, left top, right bottom, color-stop(0, #bca374), color-stop(1, #d9cf7a));
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#bca374, endColorstr=#d9cf7a, GradientType=0);
+ background: linear-gradient(to bottom right,#bca374, #d9cf7a);
+}
+.manLieONCloud-image{
+ background-image: url('../img/mainpage/pic/1.png');
+}
+.orange-mainpage{
+ background-image: -moz-linear-gradient(left top, #f09c0a, #f4be35);
+ background-image: -webkit-gradient(linear, left top, right bottom, color-stop(0, #f09c0a), color-stop(1, #f4be35));
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#f09c0a, endColorstr=#f4be35, GradientType=0);
+ background: linear-gradient(to bottom right,#f09c0a, #f4be35);
+}
+.pinkishRed-mainpage{
+ background-image: -moz-linear-gradient(left top, #e03655, #ef3a5b);
+ background-image: -webkit-gradient(linear, left top, right bottom, color-stop(0, #e03655), color-stop(1, #ef3a5b));
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#e03655, endColorstr=#ef3a5b, GradientType=0);
+ background: linear-gradient(to bottom right,#e03655, #ef3a5b);
+}
+.magicCube-image{
+ background-image: url('../img/mainpage/pic/4.png');
+}
+.magicThought-image{
+ background-image: url('../img/mainpage/pic/5.png');
+}
+.grassGreen-mainpage{
+ background-image: -moz-linear-gradient(left top, #008b04, #03a501);
+ background-image: -webkit-gradient(linear, left top, right bottom, color-stop(0, #008b04), color-stop(1, #03a501));
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#008b04, endColorstr=#03a501, GradientType=0);
+ background: linear-gradient(to bottom right,#008b04, #03a501);
+}
+.meeting-image{
+ background-image: url('../img/mainpage/pic/3.png');
+}
+.earth-image{
+ background-image: url('../img/mainpage/pic/2.png');
+}
+.toolsImageBrokenLine{
+ background-image: url('../img/mainpage/icon/1.png');
+ height: 150px;
+ width: 120px;
+ margin-top: 15%;
+ margin-left:-5px;
+}
+.toolsImageHierachy{
+ background-image: url('../img/mainpage/icon/2.png');
+ height: 150px;
+ width: 120px;
+ margin-top: 15%;
+ margin-left:-5px;
+}
+.toolsImageGear{
+ background-image: url('../img/mainpage/icon/3.png');
+ height: 150px;
+ width: 120px;
+ margin-top: 15%;
+ margin-left:-5px;
+}
+.toolsImagePresent{
+ background-image: url('../img/mainpage/icon/4.png');
+ height: 150px;
+ width: 120px;
+ margin-top: 15%;
+ margin-left:-5px;
+}
+.toolsImageFile{
+ background-image: url('../img/mainpage/icon/5.png');
+ height: 150px;
+ width: 120px;
+ margin-top: 15%;
+ margin-left:-5px;
+}
+.toolsImageBriefcase{
+ background-image: url('../img/mainpage/icon/6.png');
+ height: 150px;
+ width: 120px;
+ margin-top: 15%;
+ margin-left:-5px;
+}
+.contentTip{
+ opacity:0;
+ display:block;
+ padding: 20px;
+ text-align: left;
+ line-height: inherit;
+ text-indent: 2em;
+ position: absolute;
+}
+.contentTipShow{
+ display:block;
+ padding: 20px;
+ text-align: left;
+ line-height: inherit;
+ text-indent: 2em;
+ position: absolute;
+}
+.coverHidden{
+ display:none;
+}
+.coverShrink{
+ width:0px !important;
+ height:0px !important;
+}
+/*
+.brick .contentToggle{
+ -webkit-transition: opacity 1s ease-in-out;
+ -moz-transition: opacity 1s ease-in-out;
+ -o-transition: opacity 1s ease-in-out;
+ transition: opacity 1s ease-in-out;
+}
+.brick .cover :hover{
+ opacity:0;
+}
+*/
+.hideSideMenuForMainPage {
+ display: none! important;
+}
+.fullFillDiv {
+ width:100%;
+ height:100%;
+}
+@media screen and (min-width: 992px)and (max-width: 1280px) {
+ .brick .cover {
+ font-size:25px;
+ }
+}
+
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/style-ict.css b/uiframe-iui/src/main/resources/webroot/framework/css/style-ict.css
new file mode 100644
index 00000000..df3c3252
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/style-ict.css
@@ -0,0 +1,820 @@
+/**
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+@font-face {
+ font-family: 'Lato';
+ font-style: normal;
+ font-weight: 400;
+ src: local('Lato Regular'), local('Lato-Regular'), url(9k-RPmcnxYEPm8CNFsH2gg.woff) format('woff');
+}
+html, body, div, span, applet, object, blockquote, pre,
+a, abbr, acronym, address, big, cite, code,
+del, dfn, em, img, ins, kbd, q, s, samp,
+small, strike, strong, sub, sup, tt, var,
+b, u, i, center,
+dl, dt, dd, ol, ul, li,
+fieldset, form, label, legend,
+table, caption, tbody, tfoot, thead, tr, th, td,
+article, aside, canvas, details, embed,
+figure, figcaption, footer, header, hgroup,
+menu, nav, output, ruby, section, summary,
+time, mark, audio, video {
+ margin: 0;
+ padding: 0;
+ border: 0;
+ font-size: 1em;
+ vertical-align: baseline;
+}
+/* HTML5 display-role reset for older browsers */
+article, aside, details, figcaption, figure,
+footer, header, hgroup, menu, nav, section {
+ display: block;
+}
+body {
+ background: rgba(231, 231, 231, 0.43);
+ line-height: 1.125em;
+ color: white;
+ max-width: 1920px;
+ margin: 0 auto;
+ position: relative;
+ font-family: 'Lato', Helvetica, Arial, Tahoma;
+ text-shadow: 1px 1px 0 rgba(0,0,0,0.3);
+}
+ol, ul {
+ padding: 0 10px;
+ margin: 0 10px;
+ line-height: 1.5em;
+}
+h1, h2, h3, h4, h5, h6 {
+ text-shadow: 1px 1px 0 rgba(0,0,0,0.5);
+ font-family: 'Lato', Georgia, Helvetica, Tahoma;
+ margin: 10px 0;
+ font-weight: normal;
+}
+h1 {
+ font-size: 1.875em;
+}
+h2 {
+ font-size: 1.6em;
+ line-height: 1em;
+}
+h3 {
+ font-size: 1.25em;
+}
+h4 {
+ font-size: 1.125em;
+}
+h5 {
+ font-size: 1em;
+}
+h6 {
+ font-size: 0.875em;
+}
+a {
+ text-decoration: none;
+ color: white;
+}
+a:hover {
+ color: white;
+ opacity: 0.9;
+}
+a:visited {
+ color: white;
+}
+h2 {
+ cursor: pointer;
+}
+code, pre {
+ font-family: Monaco, Menlo, Consolas;
+ font-size: 1em;
+ color: #FFFFDE;
+ padding: 0 3px 2px;
+}
+
+table {
+ border-collapse: collapse;
+ border-spacing: 0;
+}
+
+.header {
+ /*padding: 14px 0;
+ background-color: rgb(19, 17, 17);
+ background-color: #006a3f;
+ background-image:
+ radial-gradient(rgba(0,0,0,0.1) 15%, transparent 16%),
+ radial-gradient(rgba(0,0,0,0.1) 15%, transparent 16%),
+ radial-gradient(rgba(255, 255, 255, 0.1) 15%, transparent 20%),
+ radial-gradient(rgba(255, 255, 255, 0.1) 15%, transparent 20%);
+ background-image:
+ -webkit-radial-gradient(rgba(0,0,0,0.1) 15%, transparent 16%),
+ -webkit-radial-gradient(rgba(0,0,0,0.1) 15%, transparent 16%),
+ -webkit-radial-gradient(rgba(255, 255, 255, 0.1) 15%, transparent 20%),
+ -webkit-radial-gradient(rgba(255, 255, 255, 0.1) 15%, transparent 20%);
+ background-position: 0 0px, 4px 4px, 0 1px, 4px 5px;
+ background-size: 8px 8px;
+ border-bottom: 1px solid rgb(41, 41, 41);*/
+ margin-top: 3%;
+ /* margin-left: 10%; */
+ margin-left: 75px;
+}
+@media (min-width: 1600px){
+ .header {
+ margin-top: 3%;
+ margin-left: 95px;
+ }
+}
+
+.header div.float-left {
+ /*padding-left: 2%;*/
+}
+
+@media (min-width: 769px) and (max-width: 1024px) {
+ .header div.float-left {
+ /*padding-left: 5%;*/
+ }
+}
+
+.header a {
+ font-size: 35px;
+ color: white;
+ display: block;
+ opacity: 0.8;
+}
+.header a:first-letter {
+ font-size: 60px;
+ line-height: 40px;
+ font-weight: bold;
+}
+.header .target {
+ margin-left: 5px;
+ margin-bottom: 20px;
+}
+
+.header .reponsive-block {
+ list-style: none;
+ margin: 0px;
+ padding: 50px 2% 0 0;
+}
+
+.header .reponsive-block li {
+ display: inline-block;
+ float:left;
+}
+
+.header .reponsive-block a {
+ display: inline-block;
+ margin: 0 5px;
+ cursor: pointer;
+ background: url(../i/reponsive.png) no-repeat;
+}
+
+.header .reponsive-block a.desktop {
+ background-position: 3px 0;
+ width: 34px; height: 26px;
+}
+
+.header .reponsive-block a.tablet-landscape {
+ background-position: -49px 0;
+ width: 22px;
+ height: 22px;
+}
+
+.header .reponsive-block a.tablet-portrait {
+ background-position: -90px 0;
+ width: 18px;
+ height: 24px;
+}
+
+.header .reponsive-block a.iphone-landscape {
+ background-position: -129px 0;
+ width: 20px;
+ height: 20px;
+}
+
+.header .reponsive-block a.iphone-portrait {
+ background-position: -166px 0;
+ width: 16px;
+ height: 26px;
+}
+
+.header .reponsive-block a.desktop:hover,
+.header .reponsive-block a.desktop.active {
+ background-position: 3px -34px;
+}
+
+.header .reponsive-block a.tablet-landscape:hover,
+.header .reponsive-block a.tablet-landscape.active {
+ background-position: -49px -34px;
+}
+
+.header .reponsive-block a.tablet-portrait:hover,
+.header .reponsive-block a.tablet-portrait.active {
+ background-position: -91px -33px;
+}
+
+.header .reponsive-block a.iphone-landscape:hover,
+.header .reponsive-block a.iphone-landscape.active {
+ background-position: -128px -33px;
+}
+
+.header .reponsive-block a.iphone-portrait:hover,
+.header .reponsive-block a.iphone-portrait.active {
+ background-position: -166px -33px;
+}
+.free-wall {
+ margin: auto;
+}
+
+.free-wall-logo {
+ margin: auto;
+ height: 420px;
+}
+.size2-2 {
+ width: 80px;
+ height: 80px;
+}
+
+.size11 {
+ height: 160px;
+ width: 160px;
+}
+
+.size12 {
+ width: 160px;
+ height: 320px;
+}
+
+.size21 {
+ width: 320px;
+ height: 160px;
+}
+
+.size22 {
+ height: 320px;
+ width: 320px;
+}
+
+.size13 {
+ width: 160px;
+ height: 480px;
+}
+
+.size31 {
+ width: 480px;
+ height: 160px;
+}
+
+.size23 {
+ width: 320px;
+ height: 480px;
+}
+
+.size24 {
+ width: 320px;
+ height: 640px;
+}
+
+.size32 {
+ width: 480px;
+ height: 320px;
+}
+
+.size33 {
+ width: 480px;
+ height: 480px;
+}
+
+.size34 {
+ width: 480px;
+ height: 640px;
+}
+
+.size43 {
+ width: 640px;
+ height: 480px;
+}
+
+.size35 {
+ width: 480px;
+ height: 800px;
+}
+
+.size53 {
+ width: 800px;
+ height: 480px;
+}
+
+.size36 {
+ width: 480px;
+ height: 960px;
+}
+
+.size41 {
+ width: 270px;
+ height: 160px;
+}
+.size42 {
+ width: 270px;
+ height: 320px;
+}
+.size41-1024 {
+ width: 213px;
+ height: 133px;
+}
+.size42-1024 {
+ width: 213px;
+ height: 275px;
+}
+.size41-1366 {
+ width: 278px;
+ height: 156px;
+}
+.size42-1366 {
+ width: 278px;
+ height: 332px;
+}
+.size41-1440 {
+ width: 310px;
+ height: 168px;
+}
+.size42-1440 {
+ width: 310px;
+ height: 340px;
+}
+.size41-1600 {
+ width: 330px;
+ height: 173px;
+}
+.size42-1600 {
+ width: 330px;
+ height: 354px;
+}
+
+.donate form {
+ height: 100%;
+ width: 100%;
+ background: rgb(44, 62, 80);
+}
+
+.donate form .paypal {
+ display: block;
+ margin: auto;
+ padding: 20px 0px 0px 0px;
+ outline: 0;
+}
+
+.img-demo {
+ vertical-align: bottom;
+ list-style: none;
+ margin:0;
+ padding: 0;
+}
+
+.img-demo li {
+ float: left;
+ width: 25%;
+ text-align: center;
+}
+
+.img-demo li img {
+ border: 2px solid white;
+ width: 98px;
+ height: 98px;
+}
+
+.float-left {
+ float: left;
+}
+
+.float-right {
+ float: right;
+}
+
+.clearfix:before,
+.clearfix:after {
+ content: "";
+ display: table;
+}
+
+.clearfix:after {
+ clear: both;
+}
+
+.clearfix {
+ zoom: 1; /* For IE 6/7 (trigger hasLayout) */
+}
+
+.rest-left {
+ margin-left: 244px;
+}
+
+.desc h1,
+.desc h2,
+.desc h3,
+.desc h4,
+.desc h5,
+.desc h6 {
+ font-weight: bold;
+}
+
+.desc h2 {
+ border-bottom: 1px solid rgba(0,0,0,0.1);
+ margin-top: 0px;
+ margin-bottom: 0px;
+ padding-bottom: 50px;
+}
+
+.desc h2 span {
+ float: left;
+ display: block;
+ line-height: 50px;
+}
+
+.brick {
+ background-color: white;
+ float: left;
+ cursor: default;
+ overflow: hidden;
+ background-repeat: no-repeat;
+ background-size: cover;
+ background-position: center;
+}
+
+.brick .cover {
+ overflow: hidden;
+ margin: 20px;
+/* margin-left: 60%; */
+ margin-top: 25%;
+/* width: 120px; */
+ height: 30px;
+ font-size: 30px;
+ padding: 7px;
+ float: right;
+ text-align: right;
+}
+
+.brick .read-more {
+ position: absolute;
+ display: none;
+ bottom: 0px;
+ left: 0px;
+ right: 0px;
+ padding: 12px;
+ background: rgb(0, 0, 0);
+ background: rgba(0, 0, 0, 0.45);
+}
+
+.brick:hover .read-more {
+ display: block;
+ cursor: pointer;
+}
+
+.brick .desc {
+ display: none;
+}
+
+.full-width .float-left {
+ display: none;
+}
+
+.full-width .desc {
+ display: block;
+}
+
+.full-width.brick {
+ box-shadow: none;
+ overflow: visible;
+ border: none !important;
+ background: none !important;
+}
+
+.full-width.brick .cover {
+ margin: 0px 20px;
+ color: #333;
+}
+
+.full-width.brick .cover * {
+ text-shadow: none;
+}
+
+.full-width.brick .cover code {
+ color: #666;
+}
+
+.open .float-left {
+ display: none;
+}
+
+.open .desc {
+ display: block;
+}
+
+.example {
+ width: 0px;
+ height: 0px;
+ overflow: visible !important; /* for ie7 */
+}
+
+.example-draggable {
+ cursor: move;
+}
+
+.example-draggable * {
+ cursor: move;
+}
+
+.example-draggable a {
+ cursor: pointer;
+}
+
+.cell {
+ background-position: center center;
+ background-repeat: no-repeat;
+ background-size: cover;
+ position: absolute;
+ background-color: #222;
+}
+
+[class*="-share"] {
+ cursor: pointer;
+ margin: 20px 0;
+ line-height: 30px;
+ padding-left: 30px;
+}
+
+.facebook-share {
+ background: url(../i/fb.png) no-repeat left center;
+}
+
+.twitter-share {
+ background: url(../i/tw.png) no-repeat left center;
+}
+
+.google-share {
+ background: url(../i/gp.png) no-repeat left center;
+}
+
+.download-icon {
+ background: url(../i/download.png) no-repeat left center;
+ display: block;
+ margin: 0 0 10px 0;
+ line-height: 30px;
+ padding-left: 30px;
+}
+
+.js-icon {
+ background: url(../i/js.png) no-repeat left center;
+ display: block;
+ line-height: 30px;
+ padding-left: 30px;
+}
+
+.fork {
+ float: right;
+ width: 100%;
+ height: 100%;
+ display: block;
+ background: url(../i/forkme.png) no-repeat top right;
+}
+
+.back-button {
+ position: fixed;
+ z-index: 9999;
+ padding: 1%;
+ bottom: 2%;
+ right: 2%;
+ display: none;
+ background: black;
+}
+
+.back-button .back-icon {
+ background: url(../i/back.png) no-repeat top center;
+ width: 45px;
+ height: 27px;
+ display: block;
+}
+
+.back-button .back-icon:hover {
+ background: url(../i/back.png) no-repeat bottom center;
+}
+
+@media (min-width: 1600px) {
+ .main-content-wrapper{
+ width:100%;
+ margin-left:95px;
+ margin-right: 1%;
+ }
+}
+
+@media (min-width: 1441px) and (max-width: 1599px) {
+ .main-content-wrapper{
+ width:100%;
+ /*margin-left: 0%; */
+ margin-left:75px;
+ margin-right: 1%;
+ }
+}
+
+@media (min-width: 1367px) and (max-width: 1440px) {
+ .main-content-wrapper{
+ width:100%;
+ margin-left: 75px;
+ margin-right: 1%;
+ }
+}
+
+@media (min-width: 1281px) and (max-width: 1366px) {
+ .main-content-wrapper{
+ width:100%;
+ /*margin-left: 2%; */
+ margin-left:75px;
+ margin-right: 2%;
+ }
+}
+
+@media (min-width: 1025px) and (max-width: 1280px) {
+ .main-content-wrapper{
+ width:100%;
+ /*margin-left: 4%;*/
+ margin-left:75px;
+ margin-right: 1%;
+ }
+}
+
+@media (min-width: 769px) and (max-width: 1024px) {
+ .main-content-wrapper{
+ width:100%;
+ /*margin-left: 6%;*/
+ margin-left:75px;
+ margin-right: 1%;
+ }
+}
+
+@media (min-width: 641px) and (max-width: 768px) {
+ .main-content-wrapper{
+ width:100%;
+ margin-left: 10%;
+ margin-right: 1%;
+ }
+}
+
+@media (min-width: 481px) and (max-width: 640px) {
+ .main-content-wrapper{
+ width:100%;
+ margin-left: 0%;
+ margin-right: 1%;
+ }
+}
+
+@media (max-width: 480px) {
+ .main-content-wrapper{
+ width:100%;
+ margin-left: 9%;
+ margin-right: 1%;
+ }
+}
+
+body{
+ font-family: microsoft yahei;
+ background: #484747;
+}
+
+.skyBlue-mainpage{
+ background: -moz-linear-gradient(left top, #1cadd9, #20c0f0);
+ background: -webkit-gradient(linear, left top, right bottom, color-stop(0, #1cadd9), color-stop(1, #20c0f0));
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#1cadd9', endColorstr='#20c0f0', GradientType='0');
+ background: linear-gradient(to bottom right,#1cadd9, #20c0f0);
+}
+.golden-mainpage{
+ background-image: -moz-linear-gradient(left top, #bca374, #d9cf7a);
+ background-image: -webkit-gradient(linear, left top, right bottom, color-stop(0, #bca374), color-stop(1, #d9cf7a));
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#bca374, endColorstr=#d9cf7a, GradientType=0);
+ background: linear-gradient(to bottom right,#bca374, #d9cf7a);
+}
+.manLieONCloud-image{
+ background-image: url('../img/mainpage/pic/1.png');
+}
+.orange-mainpage{
+ background-image: -moz-linear-gradient(left top, #f09c0a, #f4be35);
+ background-image: -webkit-gradient(linear, left top, right bottom, color-stop(0, #f09c0a), color-stop(1, #f4be35));
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#f09c0a, endColorstr=#f4be35, GradientType=0);
+ background: linear-gradient(to bottom right,#f09c0a, #f4be35);
+}
+.pinkishRed-mainpage{
+ background-image: -moz-linear-gradient(left top, #e03655, #ef3a5b);
+ background-image: -webkit-gradient(linear, left top, right bottom, color-stop(0, #e03655), color-stop(1, #ef3a5b));
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#e03655, endColorstr=#ef3a5b, GradientType=0);
+ background: linear-gradient(to bottom right,#e03655, #ef3a5b);
+}
+.magicCube-image{
+ background-image: url('../img/mainpage/pic/4.png');
+}
+.grassGreen-mainpage{
+ background-image: -moz-linear-gradient(left top, #008b04, #03a501);
+ background-image: -webkit-gradient(linear, left top, right bottom, color-stop(0, #008b04), color-stop(1, #03a501));
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#008b04, endColorstr=#03a501, GradientType=0);
+ background: linear-gradient(to bottom right,#008b04, #03a501);
+}
+.meeting-image{
+ background-image: url('../img/mainpage/pic/3.png');
+}
+.earth-image{
+ background-image: url('../img/mainpage/pic/2.png');
+}
+.toolsImageBrokenLine{
+ background-image: url('../img/mainpage/icon/1.png');
+ height: 150px;
+ width: 120px;
+ top: 30px;
+ position: absolute;
+}
+.toolsImageHierachy{
+ background-image: url('../img/mainpage/icon/2.png');
+ height: 150px;
+ width: 120px;
+ top: 30px;
+ position: absolute;
+}
+.toolsImageGear{
+ background-image: url('../img/mainpage/icon/3.png');
+ height: 150px;
+ width: 120px;
+ top: 30px;
+ position: absolute;
+}
+.toolsImagePresent{
+ background-image: url('../img/mainpage/icon/4.png');
+ height: 150px;
+ width: 120px;
+ top: 30px;
+ position: absolute;
+}
+.toolsImageFile{
+ background-image: url('../img/mainpage/icon/5.png');
+ height: 150px;
+ width: 120px;
+ top: 30px;
+ position: absolute;
+}
+.toolsImageBriefcase{
+ background-image: url('../img/mainpage/icon/6.png');
+ height: 150px;
+ width: 120px;
+ top: 30px;
+ position: absolute;
+}
+.contentTip{
+ opacity:0;
+ display:block;
+ padding: 20px;
+ text-align: left;
+ line-height: inherit;
+ text-indent: 2em;
+ position: absolute;
+}
+.contentTipShow{
+ display:block;
+ padding: 20px;
+ text-align: left;
+ line-height: inherit;
+ text-indent: 2em;
+ position: absolute;
+}
+.coverHidden{
+ display:none;
+}
+.coverShrink{
+ width:0px !important;
+ height:0px !important;
+}
+/*
+.brick .contentToggle{
+ -webkit-transition: opacity 1s ease-in-out;
+ -moz-transition: opacity 1s ease-in-out;
+ -o-transition: opacity 1s ease-in-out;
+ transition: opacity 1s ease-in-out;
+}
+.brick .cover :hover{
+ opacity:0;
+}
+*/
+.hideSideMenuForMainPage {
+ display: none! important;
+}
+.fullFillDiv {
+ width:100%;
+ height:100%;
+}
+
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/style-responsive.css b/uiframe-iui/src/main/resources/webroot/framework/css/style-responsive.css
new file mode 100644
index 00000000..7751e85e
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/style-responsive.css
@@ -0,0 +1,989 @@
+/**
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/***
+Responsive Theme.
+Based on http://getbootstrap.com/css/#responsive-utilities-classes
+***/
+
+/***
+Fixed Footer
+***/
+
+.page-footer-fixed.page-footer-fixed-mobile .footer {
+ position: fixed;
+ left: 0;
+ right: 0;
+ z-index: 10000;
+ bottom: 0;
+}
+
+.page-footer-fixed.page-footer-fixed-mobile .page-container {
+ margin-bottom: 20px !important;
+}
+
+.page-footer-fixed.page-footer-fixed-mobile.page-sidebar-fixed .footer {
+ margin-left: 0 !important;
+}
+
+/***
+Form Medium Devices Up To Large Devices
+***/
+
+@media (min-width: 992px) and (max-width: 1200px) {
+
+ .page-boxed .header.navbar .dropdown .username {
+ display: none;
+ }
+
+}
+
+@media (max-width: 1024px) {
+ .hidden-1024 {
+ display: none;
+ }
+}
+
+/***
+From Medium Devices Up To Larger Devices
+***/
+
+@media (min-width: 992px) {
+
+ /***
+ Page sidebar
+ ***/
+ .page-sidebar {
+ width: 225px;
+ float: left;
+ position: relative;
+ margin-right: -100%;
+ }
+
+ .page-sidebar.navbar-collapse {
+ max-height: none !important;
+ }
+
+ /***
+ Page content
+ ***/
+ .page-content-wrapper {
+ float: left;
+ width: 100%;
+ }
+
+ .page-content {
+ margin-left: 0px;
+ margin-top: 0px;
+ min-height: 500px;
+ padding: 20px 20px 0px 20px;
+ }
+
+ .page-content.no-min-height {
+ min-height: auto;
+ }
+
+ /***
+ Footer
+ ***/
+ .footer {
+ clear: left;
+ }
+
+ /***
+ Fixed Sidebar
+ ***/
+ .page-sidebar-fixed .page-content {
+ min-height: 500px;
+ }
+
+ .page-sidebar-fixed .page-sidebar {
+ position: fixed !important;
+ margin-left: 0;
+ top: 41px;
+ }
+
+ .page-sidebar-fixed ul.page-sidebar-menu > li.last {
+ margin-bottom: 15px !important;
+ }
+
+ .page-sidebar-fixed.page-sidebar-hover-on .page-sidebar {
+ z-index: 10000;
+ width: 35px;
+ }
+
+ .page-sidebar-fixed.page-sidebar-hover-on .page-sidebar .selected {
+ display: none;
+ }
+
+ .page-sidebar-fixed.page-sidebar-hover-on .page-content {
+ margin-left: 35px;
+ }
+
+ .page-sidebar-fixed.page-sidebar-hover-on .footer {
+ margin-left: 35px;
+ }
+
+ .page-sidebar-fixed .page-sidebar-closed .page-sidebar .sidebar-search .submit,
+ .page-sidebar-fixed .page-sidebar .sidebar-toggler {
+ -webkit-transition: all 0.3s ease;
+ -moz-transition: all 0.3s ease;
+ -o-transition: all 0.3s ease;
+ transition: all 0.3s ease;
+ }
+
+ .page-sidebar-fixed.page-sidebar-reversed .page-sidebar-closed .page-sidebar .sidebar-search .submit,
+ .page-sidebar-fixed.page-sidebar-reversed .page-sidebar .sidebar-toggler {
+ -webkit-transition: none;
+ -moz-transition: none;
+ -o-transition: none;
+ transition: none;
+ }
+
+ .page-sidebar-hovering {
+ overflow: hidden !important;
+ }
+
+ .page-sidebar-hovering .sub-menu,
+ .page-sidebar-hovering span.title,
+ .page-sidebar-hovering span.arrow {
+ display: none !important;
+ }
+
+ .page-sidebar-hovering .submit {
+ opacity: 0;
+ width: 0 !important;
+ height: 0 !important;
+ }
+
+ /***
+ Fixed Sidebar
+ ***/
+
+ .page-sidebar-fixed .footer {
+ margin-left: 225px;
+ background-color: #fff;
+ padding: 8px 20px 5px 20px;
+ }
+
+ .page-sidebar-fixed .footer .footer-inner {
+ color: #333;
+ }
+
+ .page-sidebar-fixed.page-sidebar-closed .footer {
+ margin-left: 35px;
+ }
+
+ .page-sidebar-fixed .footer .footer-tools .go-top {
+ background-color: #666;
+ }
+
+ .page-sidebar-fixed .footer .footer-tools .go-top i {
+ color: #ddd;
+ }
+
+ /***
+ Boxed Layout
+ ***/
+
+ .page-boxed .header.navbar .navbar-brand {
+ margin-left: 0px !important;
+ width: 226px;
+ }
+
+ .page-boxed .header.navbar .navbar-brand img {
+ margin-left: 10px;
+ }
+
+ .page-boxed .header.navbar .navbar-nav {
+ margin-right: 0px;
+ }
+
+ .page-boxed .footer {
+ padding: 8px 0 5px 0;
+ }
+
+ .page-boxed.page-sidebar-fixed .footer {
+ padding-right: 20px;
+ padding-left: 20px;
+ }
+
+ /***
+ Sidebar Reversed
+ ***/
+
+ .page-sidebar-reversed .page-sidebar {
+ float: right;
+ margin-right: 0;
+ margin-left: -100%;
+ }
+
+ .page-sidebar-reversed.page-sidebar-fixed .page-sidebar {
+ margin-left: -225px;
+ }
+
+ .page-sidebar-reversed .page-content {
+ margin-left: 0;
+ margin-right: 225px;
+ }
+
+ .page-sidebar-reversed.page-sidebar-fixed .page-sidebar-wrapper {
+ position: relative;
+ float: right;
+ }
+
+ .page-sidebar-reversed.page-sidebar-fixed .footer {
+ margin-left: 0;
+ margin-right: 225px;
+ padding: 8px 20px 5px 20px;
+ }
+
+ .page-sidebar-reversed.page-sidebar-fixed.page-footer-fixed .footer {
+ margin-left: 0;
+ margin-right: 0;
+ }
+
+ .page-sidebar-reversed.page-sidebar-fixed.page-sidebar-hover-on .page-content {
+ margin-left: 0;
+ margin-right: 35px;
+ }
+
+ .page-sidebar-reversed.page-sidebar-fixed.page-sidebar-hover-on .footer {
+ margin-right: 35px;
+ }
+
+ /***
+ Sidebar Closed
+ ***/
+
+ .page-sidebar-closed .page-sidebar .sidebar-toggler {
+ margin-left: 3px;
+ }
+
+ .page-sidebar-closed .page-sidebar .sidebar-search .form-container {
+ width: 29px;
+ margin-left: 3px;
+ }
+
+ .page-sidebar-closed .page-sidebar .sidebar-search .form-container .input-box {
+ border-bottom: 0 !important;
+ }
+
+ .page-sidebar-closed .page-sidebar .sidebar-search .form-container input[type="text"] {
+ display: none;
+ }
+
+ .page-sidebar-closed .page-sidebar .sidebar-search .form-container .submit {
+ margin-top: 5px !important;
+ margin-left: 7px !important;
+ margin-right: 7px !important;
+ display: block !important;
+ }
+
+ .page-sidebar-closed .page-sidebar .sidebar-search.open .form-container {
+ width: 255px;
+ position: relative;
+ z-index: 1;
+ padding-top: 0px;
+ }
+
+ .page-sidebar-closed .page-sidebar .sidebar-search.open .form-container input[type="text"] {
+ margin-top: 7px;
+ margin-left: 8px;
+ padding-left: 10px;
+ padding-bottom: 2px;
+ width: 185px;
+ display: inline-block !important;
+ }
+
+ .page-sidebar-closed .page-sidebar .sidebar-search.open .form-container .submit {
+ display: inline-block;
+ width: 13px;
+ height: 13px;
+ margin: 11px 8px 9px 6px !important;
+ }
+
+ .page-sidebar-closed .page-sidebar .sidebar-search.open .form-container .remove {
+ background-repeat: no-repeat;
+ width: 11px;
+ height: 11px;
+ margin: 12px 8px 9px 8px !important;
+ display: inline-block !important;
+ float: left !important;
+ }
+
+ .page-sidebar-closed .page-sidebar-menu > li > a .selected {
+ right: -3px !important;
+ }
+
+ .page-sidebar-closed .page-sidebar-menu > li > a > .title,
+ .page-sidebar-closed .page-sidebar-menu > li > a > .arrow {
+ display: none !important;
+ }
+
+ .page-sidebar-closed .page-sidebar .sidebar-toggler {
+ margin-right: 3px;
+ }
+
+ .page-sidebar-closed .page-sidebar .sidebar-search {
+ margin-top: 6px;
+ margin-bottom: 6px;
+ }
+
+ .page-sidebar-closed .page-sidebar-menu {
+ width: 35px !important;
+ }
+
+ .page-sidebar-closed .page-sidebar-menu > li > a {
+ padding-left: 7px;
+ }
+
+ .page-sidebar-fixed.page-sidebar-closed .page-sidebar-menu > li > a {
+ -webkit-transition: all 0.2s ease;
+ -moz-transition: all 0.2s ease;
+ -o-transition: all 0.2s ease;
+ transition: all 0.2s ease;
+ }
+
+ .page-sidebar-reversed.page-sidebar-fixed.page-sidebar-closed .page-sidebar-menu > li > a {
+ -webkit-transition: none;
+ -moz-transition: none;
+ -o-transition: none;
+ transition: none;
+ }
+
+ .page-sidebar-closed .page-sidebar-menu > li:hover {
+ width: 236px !important;
+ position: relative !important;
+ z-index: 2000;
+ display: block !important;
+ }
+
+ .page-sidebar-closed .page-sidebar-menu > li.sidebar-toggler-wrapper:hover,
+ .page-sidebar-closed .page-sidebar-menu > li.sidebar-search-wrapper:hover {
+ width: 35px !important;
+ }
+
+ .page-sidebar-closed .page-sidebar-menu > li:hover .selected {
+ display: none;
+ }
+
+ .page-sidebar-closed .page-sidebar-menu > li:hover > a > i {
+ margin-right: 10px;
+ }
+
+ .page-sidebar-closed .page-sidebar-menu > li:hover .title {
+ display: inline !important;
+ }
+
+ .page-sidebar-closed .page-sidebar-menu > li > .sub-menu {
+ display: none !important;
+ }
+
+ .page-sidebar-closed .page-sidebar-menu > li:hover > .sub-menu {
+ width: 200px;
+ position: absolute;
+ z-index: 2000;
+ left: 36px;
+ margin-top: 0;
+ top: 100%;
+ display: block !important;
+ }
+
+ .page-sidebar-closed .page-sidebar-menu > li:hover > .sub-menu > li > .sub-menu,
+ .page-sidebar-closed .page-sidebar-menu > li:hover > .sub-menu > li > .sub-menu > li > .sub-menu {
+ width: 200px;
+ }
+
+ /* 2rd level sub menu*/
+ .page-sidebar-closed .page-sidebar-menu > li:hover > .sub-menu > li > a {
+ padding-left: 15px !important;
+ }
+
+ /* 3rd level sub menu*/
+ .page-sidebar-closed .page-sidebar-menu > li > ul.sub-menu > li > .sub-menu > li > a {
+ padding-left: 30px !important;
+ }
+
+ /* 4rd level sub menu*/
+ .page-sidebar-closed .page-sidebar-menu > li > ul.sub-menu > li > .sub-menu > li > .sub-menu > li > a {
+ padding-left: 45px !important;
+ }
+
+ /* sidebar container */
+
+ .page-sidebar-closed .page-sidebar {
+ width: 35px;
+ }
+
+ .page-sidebar-closed .page-content {
+ margin-left: 35px;
+ }
+
+ /***
+ Sidebar Reversed & Sidebar Closed
+ ***/
+
+ .page-sidebar-reversed.page-sidebar-closed .page-sidebar {
+ margin-left: -35px;
+ width: 35px;
+ }
+
+ .page-sidebar-reversed.page-sidebar-closed .page-content {
+ margin-left: 0 !important;
+ margin-right: 35px !important;
+ }
+
+ .page-sidebar-reversed.page-sidebar-closed .page-sidebar-menu > li:hover {
+ margin-left: -201px;
+ }
+
+ .page-sidebar-reversed.page-sidebar-closed .page-sidebar-menu > li.sidebar-toggler-wrapper:hover,
+ .page-sidebar-reversed.page-sidebar-closed .page-sidebar-menu > li.sidebar-search-wrapper:hover {
+ margin-left: 0;
+ }
+
+ .page-sidebar-reversed.page-sidebar-closed .page-sidebar .sidebar-search.open .form-container {
+ margin-left: -225px;
+ }
+
+ .page-sidebar-reversed.page-sidebar-closed .page-sidebar .sidebar-search.open .form-container .submit {
+ margin: 11px 8px 9px 12px !important;
+ float: left !important;
+ }
+
+ .page-sidebar-reversed.page-sidebar-closed .page-sidebar .sidebar-search.open .form-container .remove {
+ margin: 12px 6px 9px 8px !important;
+ float: right !important;
+ }
+
+ .page-sidebar-reversed.page-sidebar-closed .page-sidebar-menu > li:hover > .sub-menu {
+ left:auto;
+ right: 36px;
+ }
+
+ .page-sidebar-reversed.page-sidebar-fixed.page-sidebar-closed .footer {
+ margin-right: 35px;
+ }
+
+ /***
+ Fixed Footer
+ ***/
+
+ .page-footer-fixed .footer {
+ position: fixed;
+ left: 0;
+ right: 0;
+ z-index: 10000;
+ bottom: 0;
+ }
+
+ .page-footer-fixed .page-container {
+ margin-bottom: 20px !important;
+ }
+
+ .page-footer-fixed.page-sidebar-fixed .footer {
+ margin-left: 0 !important;
+ }
+
+}
+
+/***
+Up To Medium Devices
+***/
+
+@media (max-width:991px) {
+
+ /***
+ Page header
+ ***/
+ .header.navbar {
+ padding: 0 20px 0 20px;
+ position: relative;
+ clear: both;
+ }
+
+ .page-header-fixed.page-header-fixed-mobile .navbar-fixed-top {
+ position: fixed;
+ }
+
+ .header.navbar .navbar-toggle {
+ display: inline-block;
+ }
+
+ .page-sidebar.navbar-collapse {
+ max-height: none; /* set some max height to have a scrollable menu on mobile devices */
+ }
+
+ .page-sidebar.navbar-collapse.collapse {
+ display: none !important;
+ }
+
+ .page-sidebar.navbar-collapse.in {
+ overflow: hidden !important;
+ overflow-y: auto !important;
+ display: block !important;
+ }
+
+ .page-full-width .page-sidebar-menu {
+ display: block;
+ }
+
+ .page-sidebar.navbar-collapse.navbar-no-scroll {
+ max-height: none !important;
+ }
+
+ .header.navbar .nav li.dropdown i {
+ display: inline-block;
+ position: relative;
+ top:1px;
+ right:0px;
+ }
+
+ .header.navbar .navbar-nav {
+ display: block;
+ margin-bottom: 0px !important;
+ }
+
+ .header.navbar .navbar-nav .open .dropdown-menu {
+ position: absolute;
+ }
+
+ .header.navbar .navbar-nav {
+ display: inline-block;
+ margin: 0 10px 0 0;
+ }
+
+ .header.navbar .navbar-nav > li {
+ float: left;
+ }
+
+ .header.navbar .navbar-brand {
+ margin-left: 0px !important;
+ padding-left: 0px !important;
+ }
+
+ .header.navbar .navbar-brand img {
+ margin-left: 4px !important;
+ }
+
+
+ /***
+ Header Search Box
+ ***/
+
+ .header.navbar .search-form {
+ display: none;
+ }
+
+ .page-sidebar .header.navbar-responsive-search {
+ display: block;
+ }
+
+ /***
+ Page container
+ ***/
+ .page-container {
+ margin: 0 !important;
+ padding: 0 !important;
+ }
+
+ .page-header-fixed.page-header-fixed-mobile .page-container {
+ margin-top: 42px !important;
+ }
+
+ /***
+ Page content
+ ***/
+ .page-content {
+ margin: 0px !important;
+ padding: 20px 20px 20px 20px !important;
+ min-height: 280px;
+ }
+
+ /***
+ Page sidebar
+ ***/
+ .page-sidebar {
+ border-top: 0 !important;
+ margin: 20px;
+ }
+
+ .page-sidebar.in {
+ border-top: 0 !important;
+ margin: 20px;
+ position: relative;
+ z-index: 5;
+ }
+
+ .header.navbar .sidebar-toggler,
+ .page-sidebar .sidebar-toggler {
+ display: none;
+ }
+
+ .page-sidebar ul {
+ margin-top:0px;
+ width:100%;
+ }
+
+ .page-sidebar .selected {
+ display: none !important;
+ }
+
+ .page-sidebar .sidebar-search .input-box {
+ width: 220px;
+ }
+
+ /***
+ Styler panel
+ ***/
+ .styler-panel {
+ top:55px;
+ right:20px;
+ }
+
+ /***
+ Boxed Layout
+ ***/
+ .page-boxed .header.navbar > .container,
+ .page-boxed .footer > .container,
+ .page-boxed > .container {
+ max-width: none !important;
+ margin: 0 !important;
+ padding: 0 !important;
+ }
+
+}
+
+/***
+From Small Devices Up To Medium Devices
+***/
+
+@media (min-width: 768px) and (max-width: 991px) {
+
+ /***
+ Body
+ ***/
+ body {
+ padding-top: 0px;
+ }
+
+ /***
+ Page sidebar
+ ***/
+ .page-sidebar .btn-navbar.collapsed .arrow {
+ display: none;
+ }
+
+ .page-sidebar .btn-navbar .arrow {
+ position: absolute;
+ right: 25px;
+ width: 0;
+ height: 0;
+ top:50px;
+ border-bottom: 15px solid #5f646b;
+ border-left: 15px solid transparent;
+ border-right: 15px solid transparent;
+ }
+
+ /***
+ Boxed Layout
+ ***/
+ .page-boxed .header.navbar > .container,
+ .page-boxed > .container {
+ margin: auto !important;
+ }
+
+ .page-boxed .header.navbar {
+ margin: auto !important;
+ padding: 0;
+ }
+
+ .page-boxed .footer {
+ padding-left: 0;
+ padding-right: 0;
+ }
+
+}
+
+/***
+Extra Small Devices Only
+***/
+
+@media (max-width: 767px) {
+
+ /***
+ Page header
+ ***/
+
+ .header.navbar {
+ padding: 0 10px 0 10px;
+ }
+
+ .header.navbar .top-nav .nav{
+ margin-top: 0px;
+ margin-right: 5px;
+ }
+
+ .header.navbar .nav > li > .dropdown-menu.notification:after,
+ .header.navbar .nav > li > .dropdown-menu.notification:before {
+ margin-right: 160px;
+ }
+
+ .header.navbar .nav > li > .dropdown-menu.notification {
+ margin-right: -160px;
+ }
+
+ .header.navbar .nav > li > .dropdown-menu.inbox:after,
+ .header.navbar .nav > li > .dropdown-menu.inbox:before {
+ margin-right: 110px;
+ }
+
+ .header.navbar .nav > li > .dropdown-menu.inbox {
+ margin-right: -110px;
+ }
+
+ .header.navbar .nav > li > .dropdown-menu.tasks:after,
+ .header.navbar .nav > li > .dropdown-menu.tasks:before {
+ margin-right: 60px;
+ }
+
+ .header.navbar .nav > li > .dropdown-menu.tasks {
+ margin-right: -60px;
+ }
+
+ /* Header logo */
+ .header.navbar .navbar-brand {
+ margin-left: 0px !important;
+ width: 110px;
+ }
+
+ /***
+ Page content
+ ***/
+ .page-content {
+ padding: 20px 10px 10px 10px !important;
+ overflow: hidden;
+ }
+
+ /***
+ Page title
+ ***/
+ .page-title {
+ margin-bottom: 20px;
+ font-size: 18px;
+ }
+
+ .page-title small {
+ font-size: 13px;
+ padding-top: 3px;
+ }
+
+ /***
+ Styler pagel
+ ***/
+ .styler-panel {
+ top:58px;
+ right:12px;
+ }
+
+ /***
+ Page breadcrumb
+ ***/
+ .breadcrumb {
+ padding-left: 10px;
+ padding-right: 10px;
+ }
+
+ /***
+ Portlet form action
+ ***/
+ .portlet-body.form .form-actions{
+ padding-left: 15px;
+ }
+
+
+ /***
+ Form input validation states
+ ***/
+ .input-icon .input-error,
+ .input-icon .input-warning,
+ .input-icon .input-success {
+ top:-27px;
+ float: right;
+ right:10px !important;
+ }
+
+ /***
+ Advance tables
+ ***/
+ .table-advance tr td.highlight:first-child a {
+ margin-left: 8px;
+ }
+
+ /***
+ Footer
+ ***/
+ .footer {
+ padding-left: 10px;
+ padding-right: 10px;
+ }
+
+ .footer .go-top {
+ float: right;
+ display: block;
+ margin-right: 0px;
+ }
+
+ /***
+ Vertical inline menu
+ ***/
+ .ver-inline-menu li.active:after {
+ display: none;
+ }
+
+ /***
+ Form controls
+ ***/
+ .form-horizontal .form-actions {
+ padding-left: 180px;
+ }
+
+ .portlet .form-horizontal .form-actions {
+ padding-left: 190px;
+ }
+}
+
+/***
+The Most Extra Small Devices Landscape Mode Only
+***/
+
+@media (max-width: 580px) {
+
+ .header.navbar .username {
+ display: none;
+ }
+
+}
+
+@media (max-width: 480px) {
+
+ /***
+ Header navbar
+ ***/
+ .page-header-fixed.page-header-fixed-mobile .header.navbar {
+ height: 84px;
+ }
+
+ .page-header-fixed.page-header-fixed-mobile .page-container {
+ margin-top: 84px !important;
+ }
+
+ .header.navbar .navbar-nav {
+ display: block;
+ clear: both;
+ margin-top: 2px;
+ margin-right: 0;
+ }
+
+ .header.navbar .navbar-nav > li.dropdown .dropdown-toggle {
+ margin-top:-1px;
+ padding-left: 9px;
+ padding-right: 9px;
+ }
+
+ .header.navbar .navbar-nav > li.dropdown.language .dropdown-toggle,
+ .header.navbar .navbar-nav > li.dropdown.user .dropdown-toggle {
+ padding-left: 4px;
+ padding-right: 15px;
+ }
+
+ .header.navbar .navbar-nav li.dropdown .dropdown-toggle .badge {
+ top: 8px;
+ }
+
+ /***
+ Page sidebar
+ ***/
+ .page-sidebar,
+ .page-sidebar.in {
+ margin: 0 10px 10px 10px;
+ }
+
+ .page-header-fixed.page-header-fixed-mobile .page-sidebar,
+ .page-header-fixed.page-header-fixed-mobile .page-sidebar.in {
+ margin-top: 10px;
+ }
+
+ /***
+ Page title
+ ***/
+ .page-title small {
+ display: block;
+ clear: both;
+ }
+
+ /***
+ Forms
+ ***/
+ .portlet .form-horizontal .form-actions {
+ padding-left: 10px;
+ }
+
+ /***
+ Dashboard date range panel
+ ***/
+ .page-content .breadcrumb .dashboard-date-range {
+ padding-bottom: 8px;
+ }
+
+ .page-content .breadcrumb .dashboard-date-range span {
+ display: none;
+ }
+
+ .page-content .breadcrumb > .btn-group span {
+ display: none;
+ }
+
+ .page-content .breadcrumb > .btn-group > .btn {
+ padding-left: 7px;
+ padding-right: 7px;
+ }
+
+ /***
+ Hidden phone
+ ***/
+ .hidden-480 {
+ display: none !important;
+ }
+}
+
+/***
+The Most Extra Small Devices Portrait Mode Only
+***/
+
+@media (max-width: 320px) {
+
+ /***
+ Hidden phone
+ ***/
+ .hidden-320 {
+ display: none;
+ }
+
+ .header.navbar .navbar-brand {
+ width: 100px;
+ }
+} \ No newline at end of file
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/style.css b/uiframe-iui/src/main/resources/webroot/framework/css/style.css
new file mode 100644
index 00000000..4a24588a
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/style.css
@@ -0,0 +1,4715 @@
+/**
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/***
+Colors
+blue: #4b8df8
+light blue: #bfd5fa
+red: #e02222
+yellow: #ffb848
+green: #35aa47
+purple: #852b99
+dark: #555555;
+light grey: #fafafa;
+***/
+/*fontIcon*/
+[class^="ict-"], [class*=" ict-"]{
+ padding-right:3px;
+ display: inline-block;
+ width: 1.25em;
+ text-align: center;
+}
+.page-sidebar-menu [class^="ict-"], .page-sidebar-menu [class*=" ict-"]{
+padding-right:0;
+}
+/*********************
+ GENERAL RESET & SETUP
+*********************/
+
+/***
+Reset and overrides
+***/
+body {
+ color: #333;
+ /*font-family: 'Open Sans', sans-serif;
+ font-size:13px; */
+ font-family: "Microsoft yahei", Verdana, Arial, Helvetica, sans-serif !important;
+ padding: 0px !important;
+ margin: 0px !important;
+ direction: ltr;
+}
+.page-content-body{
+padding-left:15px;
+padding-right:15px;
+padding-top:10px;
+}
+/*
+Internet Explorer 10 doesn't differentiate device width from viewport width, and thus doesn't
+properly apply the media queries in Bootstrap's CSS. To address this,
+you can optionally include the following CSS and JavaScript to work around this problem until Microsoft issues a fix.
+*/
+@-webkit-viewport {
+ width: device-width;
+}
+
+@-moz-viewport {
+ width: device-width;
+}
+
+@-ms-viewport {
+ width: device-width;
+}
+
+@-o-viewport {
+ width: device-width;
+}
+
+@viewport {
+ width: device-width;
+}
+
+/* Internet Explorer 10 doesn't differentiate device width from viewport width,
+and thus doesn't properly apply the media queries in Bootstrap's CSS. To address this, following CSS code applied */
+@-ms-viewport {
+ width: auto !important;
+}
+
+/***
+Custom Scrollbars
+***/
+
+::-webkit-scrollbar {
+ width: 12px;
+}
+
+::-webkit-scrollbar-track {
+ background-color: #eaeaea;
+ border-left: 1px solid #cecece;
+}
+
+::-webkit-scrollbar-thumb {
+ background-color: #cecece;
+}
+
+::-webkit-scrollbar-thumb:hover {
+ background-color: #aaa;
+}
+
+::-webkit-scrollbar-track {
+ border-radius: 0;
+ box-shadow: none;
+ border: 0;
+}
+
+::-webkit-scrollbar-thumb {
+ border-radius: 0;
+ box-shadow: none;
+ border: 0;
+}
+
+/***
+General typography
+***/
+h1 small,
+h2 small,
+h3 small,
+h4 small,
+h5 small,
+h6 small {
+ color: #444;
+}
+
+h1,
+h2,
+h3,
+h4,
+h5,
+h6 {
+ font-family: Arial, sans-serif;
+ font-weight: 300 !important;
+}
+
+h1.block,
+h2.block,
+h3.block,
+h4.block,
+h5.block,
+h6.block {
+ padding-top: 10px;
+ padding-bottom: 10px;
+}
+
+a {
+ text-shadow: none !important;
+ color: #5b9bd1;
+}
+
+/***
+Fix link outlines after click
+***/
+a,a:focus, a:hover, a:active {
+ outline: 0;
+}
+
+/***
+General backgrounds. Can be applied to any block or panel
+***/
+
+.bg-blue {
+ background-image: none !important;
+ background-color: #4b8df8 !important;
+ border-color:#4b8df8 !important;
+ color: #fff !important;
+}
+
+.bg-red {
+ background-image: none !important;
+ background-color: #e02222 !important;
+ border-color: #e02222 !important;
+ color: #fff !important;
+}
+
+.bg-yellow {
+ background-image: none !important;
+ background-color: #ffb848 !important;
+ border-color: #ffb848 !important;
+ color: #fff !important;
+}
+
+.bg-green {
+ background-image: none !important;
+ background-color: #35aa47 !important;
+ border-color: #35aa47 !important;
+ color: #fff !important;
+}
+
+.bg-purple {
+ background-image: none !important;
+ background-color: #852b99 !important;
+ border-color: #852b99 !important;
+ color: #fff !important;
+}
+
+.bg-dark {
+ background-image: none !important;
+ background-color: #555555 !important;
+ border-color: #555555 !important;
+ color: #fff !important;
+}
+
+.bg-grey {
+ background-image: none !important;
+ background-color: #fafafa !important;
+ border-color: #fafafa !important;
+}
+
+/***
+Font Awesome Icons
+***/
+
+[class^="fa-"],
+[class*=" fa-"] {
+ display: inline-block;
+/* margin-top: 1px;*/
+ font-size: 14px;
+ *margin-right: .3em;
+ line-height: 14px;
+}
+
+/***
+Make font awesome icons fixed width(latest version issue)
+***/
+
+li [class^="fa-"],
+li [class*=" fa-"] {
+ display: inline-block;
+ width: 1.25em;
+ text-align: center;
+}
+li [class^="fa-"].icon-large,
+li [class*=" fa-"].icon-large {
+ /* increased font size for icon-large */
+ width: 1.5625em;
+}
+
+.page-breadcrumb .fa-angle-right{
+ display:inline-block;
+ margin-left:8px;
+ margin-right:8px;
+}
+
+.page-breadcrumb i[class^="fa-"], [class*=" fa-"],.page-breadcrumb i[class^="ict-"], [class*=" ict-"]{
+ display:none;
+}
+
+
+
+.fa-lg,
+.icon-lg {
+ font-size: 16px;
+}
+
+.fa-2x {
+ font-size: 2em;
+}
+.fa-3x {
+ font-size: 3em;
+}
+.fa-4x {
+ font-size: 4em;
+}
+.fa-5x {
+ font-size: 5em;
+}
+
+.icon-default {
+ color: #ccc;
+}
+
+.icon-success {
+ color: #468847;
+}
+
+.icon-info {
+ color: #27a9e3;
+}
+
+.icon-warning {
+ color: #dbc056;
+}
+
+.icon-danger {
+ color: #B94A48;
+}
+
+/***
+Close icon used for modal dialog and other UI element close buttons
+***/
+.close {
+ display: inline-block;
+ margin-top: 0px;
+ margin-right: 0px;
+ width: 9px;
+ height: 9px;
+ background-repeat: no-repeat !important;
+ text-indent: -10000px;
+ outline: none;
+ background-image: url("../img/remove-icon-small.png") !important;
+}
+
+.about{
+ height:345px;
+ width:528px;
+}
+
+.aboutmain{
+ background-image: url("../img/about/about-bg-light.png");
+}
+
+.aboutinfo{
+ background-image: url("../img/about/about-bg-dark.png");
+}
+
+.about a{
+ color: white;
+
+ margin-left:15px;
+ text-decoration: none;
+}
+
+.about a.about_close{
+ float:right;
+ margin-right:20px;
+ font-size: 1.2em;
+}
+
+.about div{
+ padding-top:10px;
+
+}
+
+.about div.info{
+ float: right;
+ margin-right: 15px;
+ margin-top: 130px;
+ color: white;
+ font-size: 13px;
+}
+
+.about div.info div{
+ margin-left:15px;
+}
+
+.about div.info img{
+ margin-right: 55px;
+}
+
+.aboutDlg{
+ width: 530px;
+ margin-left:150px;
+}
+
+/***
+General HR
+***/
+
+hr {
+ margin: 20px 0;
+ border: 0;
+ border-top: 1px solid #E0DFDF;
+ border-bottom: 1px solid #FEFEFE;
+}
+
+/***
+Tools
+***/
+
+.display-none,
+.display-hide {
+ display: none;
+}
+
+.no-space {
+ margin: 0px !important;
+ padding: 0px !important;
+}
+
+.no-margin {
+ margin:0;
+}
+
+.no-border {
+ border:0 !important;
+}
+
+.margin-bottom-5 {
+ margin-bottom: 5px;
+}
+
+.margin-bottom-10 {
+ margin-bottom: 10px !important;
+}
+
+.margin-top-10 {
+ margin-top: 10px !important;
+}
+
+.margin-bottom-15 {
+ margin-bottom: 15px !important;
+}
+
+.margin-bottom-20 {
+ margin-bottom: 20px !important;
+}
+
+.margin-top-20 {
+ margin-top: 20px !important;
+}
+
+.margin-bottom-25 {
+ margin-bottom: 25px !important;
+}
+
+.margin-right-10 {
+ margin-right: 10px !important;
+}
+
+.bold {
+ font-weight:600 !important;
+}
+
+.fix-margin {
+ margin-left: 0px !important
+}
+
+.border {
+ border: 1px solid red;
+}
+
+.inline {
+ display: inline;
+}
+
+.text-align-reverse {
+ text-align: right;
+}
+
+/***
+ie8 & ie9 modes
+***/
+
+.visible-ie8 {
+ display: none;
+}
+
+.ie8 .visible-ie8 {
+ display: inherit !important;
+}
+
+.visible-ie9 {
+ display: none;
+}
+
+.ie9 .visible-ie9 {
+ display: inherit !important;
+}
+
+.hidden-ie8 {
+ display: inherit;
+}
+
+.ie8 .hidden-ie8 {
+ display: none !important;
+}
+
+.hidden-ie9 {
+ display: inherit;
+}
+
+.ie9 .hidden-ie9 {
+ display: none !important;
+}
+
+/********************
+ GENERAL LAYOUT
+*********************/
+
+/***
+Header and header elements.
+***/
+
+.header.navbar {
+ width: 100%;
+ padding: 0 20px 0 20px;
+ margin: 0;
+ border: 0px;
+ padding: 0px;
+ box-shadow: none;
+ height: 42px;
+ min-height: 42px;
+}
+
+.header.navbar.navbar-fixed-top {
+ z-index: 9995 !important;
+}
+
+.header.navbar .navbar-brand {
+ display: inline-block;
+ margin-top: -1px;
+ margin-right: 0;
+ padding-left: 0;
+ padding-right: 0;
+ width: 225px;
+ height: 42px;
+}
+
+.header.navbar .navbar-brand img {
+ margin-left: 20px;
+}
+
+.header.navbar .navbar-brand.text-logo {
+ padding-left: 20px;
+ padding-top: 12px;
+}
+
+.header.navbar .navbar-toggle {
+ margin: 8px 6px 4px 6px;
+ padding: 0;
+ padding-top:2px;
+ padding-bottom: 6px;
+ background-image: none;
+ filter:none;
+ box-shadow: none;
+ color: #fff;
+ border: 0;
+}
+
+.header.navbar .navbar-toggle:hover {
+ text-decoration: none;
+ background: none;
+}
+
+.header.navbar .navbar-nav {
+ margin-right: 20px;
+ display: block;
+}
+
+.header.navbar .navbar-nav > li {
+ margin: 0px;
+ padding: 0px;
+}
+
+.header.navbar .navbar-nav > li.dropdown,
+.header.navbar .navbar-nav > li.dropdown > a {
+ padding-left: 4px;
+ padding-right: 4px;
+}
+
+.header.navbar .navbar-nav > li.dropdown > a:last-child {
+ padding-right: 0;
+}
+
+.header.navbar .navbar-nav > li.dropdown:last-child {
+ padding-right: 2px;
+}
+
+.header.navbar .navbar-nav > li.dropdown .dropdown-toggle {
+ margin: 0px;
+ padding: 15px 10px 7px 10px;
+}
+
+.header.navbar .navbar-nav > li.dropdown .dropdown-toggle > i {
+ font-size: 18px;
+}
+
+.header.navbar .navbar-nav > li.dropdown .dropdown-menu > li > a > i {
+ font-size: 14px;
+}
+
+.header.navbar .navbar-nav > li.dropdown.user .dropdown-toggle {
+ padding-top: 9px;
+ *padding: 9px 18px 6px 6px;
+}
+
+.header.navbar .navbar-nav > li.dropdown.user .dropdown-toggle:hover {
+ text-decoration: none;
+}
+
+.header.navbar .navbar-nav > li.dropdown.user .dropdown-toggle .username {
+ color: #ddd;
+}
+
+.header.navbar .navbar-nav > li.dropdown.user .dropdown-toggle i {
+ display: inline-block;
+ margin-top: 5px;
+ margin: 0;
+ font-size: 16px;
+}
+
+.header.navbar .navbar-nav > li.dropdown.user .dropdown-menu i {
+ width: 15px;
+ display: inline-block;
+}
+
+.header.navbar .navbar-nav > li.dropdown .dropdown-toggle .badge {
+ position: absolute;
+ top: 8px;
+ right: 20px;
+}
+
+
+.header.navbar .navbar-nav > li.dropdown.system .dropdown-toggle {
+ padding: 13px 0px 6px 6px;
+}
+
+.header.navbar .navbar-nav > li.dropdown.system .dropdown-toggle:hover {
+ text-decoration: none;
+}
+
+.header.navbar .navbar-nav > li.dropdown.system .dropdown-toggle .sysname {
+ color: #ddd;
+}
+
+.header.navbar .navbar-nav > li.dropdown.system .dropdown-toggle i {
+ display: inline-block;
+ margin-top: 5px;
+ margin: 0;
+ font-size: 16px;
+}
+
+.header.navbar .navbar-nav > li.dropdown.system .dropdown-menu i {
+ width: 15px;
+ display: inline-block;
+}
+
+/***
+Header Search
+***/
+.header.navbar .search-form {
+ float: left;
+ display: inline-block;
+ padding: 0;
+ height: 41px;
+ margin:0;
+}
+
+.header.navbar .search-form .form-control{
+ margin-top: 8px;
+ border: 0;
+ padding-top: 1px;
+ padding-right: 27px;
+}
+
+.header.navbar .search-form .submit {
+ position: relative;
+ display: block;
+ float: right;
+ margin-top: -21px;
+ margin-right: 8px;
+ width: 13px;
+ height: 15px;
+ box-shadow: none;
+ border: 0px;
+ padding: 0px;
+ background-color: none;
+ background-repeat: no-repeat !important;
+ outline: none !important;
+ opacity: 0.8;
+ filter: alpha(opacity=80);
+}
+
+.header.navbar .search-form .submit:hover {
+ opacity: 1;
+ filter: alpha(opacity=100);
+}
+
+/***
+Language Bar
+***/
+
+.header.navbar .navbar-nav > li.dropdown.language {
+ padding-left: 0;
+ padding-right: 0;
+ margin: 0;
+}
+
+.header.navbar .navbar-nav > li.dropdown.language > a {
+ color: #ddd;
+ font-size: 13px;
+ padding: 11px 1px 11px 5px;
+}
+
+.header.navbar .navbar-nav > li.dropdown.language > a > img {
+ margin-bottom: 2px;
+}
+
+.header.navbar .navbar-nav > li.dropdown.language > a > i {
+ font-size: 16px;
+}
+
+.header.navbar .navbar-nav > li.dropdown.language > .dropdown-menu > li > a > img {
+ margin-bottom: 2px;
+}
+
+.header.navbar .navbar-nav .dropdown-menu {
+ margin-top: 3px;
+}
+
+/***
+Page container
+***/
+
+.page-container {
+ margin: 0px;
+ padding: 0px;
+ position: relative;
+}
+
+.page-container:before,
+.page-container:after {
+ display: table;
+ content: " ";
+}
+
+.page-container:after {
+ clear: both;
+}
+
+.page-header-fixed .page-container {
+ margin-top: 42px;
+}
+
+/*** IE 8 Fixes ***/
+/***
+Page sidebar
+***/
+
+.ie8 .page-sidebar {
+ width: 225px;
+ float: left;
+ position: relative;
+ margin-right: -100%;
+}
+
+/***
+Page content
+***/
+
+.ie8 .page-content-wrapper {
+ float: left;
+ width: 100%;
+ }
+
+.ie8 .page-content {
+ margin-left: 225px;
+ margin-top: 0px;
+ min-height: 540px;
+ padding: 20px 20px 20px 20px;
+ }
+/*** IE 8 Fixes ***/
+
+/***
+Page sidebar
+***/
+
+.page-sidebar.navbar-collapse {
+ padding: 0;
+}
+
+.page-sidebar-menu {
+ list-style: none;
+ margin: 0;
+ padding: 0;
+ margin: 0;
+ padding: 0;
+}
+
+.page-sidebar-menu > li {
+ display: block;
+ margin: 0;
+ padding: 0;
+ border: 0px;
+}
+
+.page-sidebar-menu > li.start > a {
+ border-top-color: transparent !important;
+}
+
+.page-sidebar-menu > li:last-child > a,
+.page-sidebar-menu > li.last > a {
+ border-bottom-color: transparent !important;
+}
+
+.page-sidebar-menu > li > a {
+ display: block;
+ position: relative;
+ margin: 0;
+ border: 0px;
+ padding: 10px 15px;
+ text-decoration: none;
+ font-size: 14px;
+ font-weight: 300;
+}
+
+.page-sidebar-fixed .page-sidebar-menu > li > a {
+ -webkit-transition: all 0.2s ease;
+ -moz-transition: all 0.2s ease;
+ -o-transition: all 0.2s ease;
+ transition: all 0.2s ease;
+}
+
+.page-sidebar-reversed.page-sidebar-fixed .page-sidebar-menu > li > a{
+ -webkit-transition: none;
+ -moz-transition: none;
+ -o-transition: none;
+ transition: none;
+}
+
+.page-sidebar-menu > li > a i {
+ font-size: 16px;
+ margin-right: 5px;
+ text-shadow:none;
+}
+
+.page-sidebar-menu > li.break {
+ margin-bottom: 20px;
+}
+
+.page-sidebar-menu > li.open > a {
+ font-size: 14px;
+}
+
+.page-sidebar-menu > li.active > a {
+ border: none;
+ text-shadow:none;
+ font-size: 14px;
+}
+
+.page-sidebar-menu > li.active > a .selected {
+ display: block;
+ width: 8px;
+ height: 25px;
+ background-image: url("../img/sidebar-menu-arrow.png");
+ float: right;
+ position: absolute;
+ right:0px;
+ top:8px;
+}
+
+.page-sidebar-reversed .page-sidebar-menu > li.active > a .selected {
+ background-image: url("../img/sidebar-menu-arrow-reverse.png");
+ right: auto;
+ left:0;
+}
+
+.page-sidebar ul > li > a > .arrow:before {
+ float: right;
+ margin-top: 0px;
+ margin-right: 5px;
+ display: inline;
+ font-size: 16px;
+ font-family: FontAwesome;
+ height: auto;
+ content: "\f104";
+ font-weight: 300;
+ text-shadow:none;
+}
+
+.page-sidebar-menu > li > a > .arrow.open:before {
+ float: right;
+ margin-top: 0px;
+ margin-right: 3px;
+ display: inline;
+ font-family: FontAwesome;
+ height: auto;
+ font-size: 16px;
+ content: "\f107";
+ font-weight: 300;
+ text-shadow:none;
+}
+
+/* bagin: sidebar menu badges */
+.page-sidebar-menu li > a > .badge {
+ float: right;
+ margin-top: 1px;
+ margin-right: 13px;
+}
+
+/* end: sidebar menu badges */
+
+.page-sidebar-menu .sub-menu {
+ padding: 0;
+}
+
+.page-sidebar-menu > li > ul.sub-menu {
+ display: none;
+ list-style: none;
+ clear: both;
+ margin: 8px 0px 8px 0px;
+}
+
+.page-sidebar-menu > li.active > ul.sub-menu {
+ display: block;
+}
+
+.page-sidebar-menu > li > ul.sub-menu > li {
+ background: none;
+ margin: 0px;
+ padding: 0px;
+ margin-top: 1px !important;
+}
+
+.page-sidebar-menu > li > ul.sub-menu > li > a {
+ display: block;
+ margin: 0px 0px 0px 0px;
+ padding: 5px 0px;
+ padding-left: 44px !important;
+ text-decoration: none;
+ font-size: 14px;
+ font-weight: 300;
+ background: none;
+}
+
+/* 3rd level sub menu */
+.page-sidebar-menu > li > ul.sub-menu > li ul.sub-menu {
+ display: none;
+ list-style: none;
+ clear: both;
+ margin: 0px 0px 0px 0px;
+}
+
+.page-sidebar-menu > li > ul.sub-menu li > a > .arrow:before {
+ float: right;
+ margin-top: 1px;
+ margin-right: 20px;
+ display: inline;
+ font-size: 16px;
+ font-family: FontAwesome;
+ height: auto;
+ content: "\f104";
+ font-weight: 300;
+ text-shadow:none;
+}
+
+.page-sidebar-menu > li > ul.sub-menu li > a > .arrow.open:before {
+ float: right;
+ margin-top: 1px;
+ margin-right: 18px;
+ display: inline;
+ font-family: FontAwesome;
+ height: auto;
+ font-size: 16px;
+ content: "\f107";
+ font-weight: 300;
+ text-shadow:none;
+}
+
+.page-sidebar-menu > li.active > ul.sub-menu > li.active ul.sub-menu {
+ display: block;
+}
+
+.page-sidebar-menu > li > ul.sub-menu > li ul.sub-menu li {
+ background: none;
+ margin: 0px;
+ padding: 0px;
+ margin-top: 1px !important;
+}
+
+.page-sidebar-menu > li > ul.sub-menu li > ul.sub-menu > li > a {
+ display: block;
+ margin: 0px 0px 0px 0px;
+ padding: 5px 0px;
+ text-decoration: none;
+ font-size: 14px;
+ font-weight: 300;
+ background: none;
+}
+
+.page-sidebar-menu > li > ul.sub-menu > li > ul.sub-menu > li > a {
+ padding-left: 60px;
+}
+
+.page-sidebar-menu > li > ul.sub-menu > li > ul.sub-menu > li > ul.sub-menu > li > a {
+ padding-left: 80px;
+}
+
+.page-sidebar-menu > li.active > ul.sub-menu > li.active ul.sub-menu > li.active ul.sub-menu {
+ display: block;
+}
+
+
+.page-sidebar-menu > li > ul.sub-menu li > ul.sub-menu > li > a > i {
+ font-size: 13px;
+}
+
+/***
+Sidebar Search
+***/
+
+.page-sidebar .sidebar-search {
+ padding:0;
+ margin: 0;
+}
+
+.page-sidebar .header.navbar-responsive-search {
+ display: none;
+}
+
+.page-sidebar .sidebar-search .form-container {
+ margin: 15px 20px 15px 20px;
+ height: 35px;
+ padding-top: 7px;
+}
+
+.page-sidebar .sidebar-search .form-container .submit {
+ display: block;
+ float: right;
+ margin-top: 3px;
+ width: 13px;
+ height: 15px;
+ background-repeat: no-repeat;
+ box-shadow: none;
+ border: 0px;
+ padding: 0px;
+ outline: none !important;
+}
+
+.page-sidebar .sidebar-search .form-container input[type="text"] {
+ margin: 0px;
+ width: 165px;
+ border: 0px;
+ padding: 0 !important;
+ font-size: 14px !important;
+ box-shadow: none !important;
+ font-size: 14px;
+ font-weight: normal;
+}
+
+.page-sidebar .sidebar-search .form-container input[type="text"]:focus {
+ outline: none !important;
+}
+
+/***
+Sidebar toggler(show/hide)
+***/
+.sidebar-toggler {
+ cursor: pointer;
+ opacity: 0.5;
+ filter: alpha(opacity=50);
+ width: 29px;
+ height: 29px;
+ background-repeat: no-repeat;
+}
+
+.sidebar-toggler:hover {
+ filter: alpha(opacity=100);
+ opacity: 1;
+}
+
+.page-sidebar .sidebar-toggler {
+ margin-top: 15px;
+ /* margin-left: 175px;*/
+}
+
+.header.navbar .sidebar-toggler {
+ float: left;
+ display: inline-block;
+ margin-top: 6px;
+ margin-left: -42px;
+}
+
+/***
+Page content
+***/
+.page-content {
+ margin-top: 0px;
+ padding: 0px;
+ background-color: #fff;
+}
+
+.ie8 .page-content {
+ padding: 20px;
+ margin-left: 225px;
+ margin-top: 0px;
+ min-height: 760px;
+}
+
+.ie8 .page-sidebar-fixed .page-content {
+ min-height: 600px;
+}
+
+.ie8 .page-content.no-min-height {
+ min-height: auto;
+}
+
+.page-full-width .page-content {
+ margin-left: 0px !important;
+}
+
+.page-full-width .page-sidebar-menu {
+ display: none;
+}
+
+/***
+Page title
+***/
+.page-title {
+ padding: 0px;
+ font-size: 30px;
+ letter-spacing: -1px;
+ display: block;
+ color: #666;
+ margin: 0px 0px 15px 0px;
+ font-weight: 300;
+ font-family: 'Open Sans', sans-serif;
+}
+
+.page-title small {
+ font-size: 14px;
+ letter-spacing: 0px;
+ font-weight: 300;
+ color: #888;
+}
+
+/***
+Page breadcrumb
+***/
+
+.ie8 .row .page-breadcrumb.breadcrumb > li {
+ margin-right: 1px;
+}
+
+.page-content .page-breadcrumb.breadcrumb {
+ -webkit-border-radius: 0px;
+ -moz-border-radius: 0px;
+ border-radius: 0px;
+ box-shadow: none;
+ padding-right: 30px;
+ padding-left: 8px;
+ margin-top: 15px;
+ margin-bottom: 25px;
+ border:0px !important;
+ background-color: #fff;
+}
+
+.page-content .page-breadcrumb.breadcrumb > li > a,
+.page-content .page-breadcrumb.breadcrumb > li > i,
+.page-content .page-breadcrumb.breadcrumb > li > span {
+ color: #333;
+ font-size: 14px;
+ text-shadow:none;
+}
+
+.page-content .page-breadcrumb.breadcrumb > li > i {
+ color: #666;
+}
+
+.page-content .page-breadcrumb.breadcrumb > li+li:before {
+ display: none;
+}
+
+/* Dashboard breadcrumb Dropdown */
+.page-content .page-breadcrumb.breadcrumb .more-botton-zone .btn-group {
+ right: 15px;
+ position: absolute;
+ margin-top: -8px;
+}
+.page-content .page-breadcrumb.breadcrumb .more-botton-zone {
+ position:inherit;
+}
+
+.page-content .page-breadcrumb.breadcrumb .more-botton-zone .btn-group .btn {
+ padding-top: 8px;
+ padding-bottom: 8px;
+ font-size: 12px;
+}
+
+/* Dashboard date range panel */
+.page-content .page-breadcrumb.breadcrumb .dashboard-date-range {
+ position: relative;
+ top: -8px;
+ margin-right: -30px;
+ display: none;
+ padding: 9px 9px 8px 9px;
+ cursor: pointer;
+ color: #fff;
+ background-color: #e02222;
+}
+
+/* hack for chrome and safari */
+@media all and (-webkit-min-device-pixel-ratio:0) {
+ .page-content .page-breadcrumb.breadcrumb .dashboard-date-range {
+ padding: 9px;
+ }
+}
+
+.page-content .page-breadcrumb.breadcrumb .dashboard-date-range > span {
+ font-size: 12px;
+ font-weight: 300;
+ color: #fff;
+ text-transform: uppercase;
+}
+
+.page-content .page-breadcrumb.breadcrumb .dashboard-date-range > .fa-calendar {
+ text-transform: none;
+ color: #fff;
+ margin-top: 0px;
+ font-size: 14px;
+}
+
+.page-content .page-breadcrumb.breadcrumb .dashboard-date-range > .fa-angle-down {
+ color:#fff;
+ font-size: 16px;
+}
+
+/***
+Footer
+***/
+
+.footer {
+ padding: 8px 20px 5px 20px;
+ font-size: 12px;
+}
+
+.footer:after,
+.footer:before {
+ content: "";
+ display: table;
+ line-height: 0;
+}
+
+.footer:after {
+ clear: both;
+}
+
+.footer .footer-inner {
+ float: left;
+ display: inline-block;
+}
+
+.footer .footer-tools {
+ float: right;
+ display: inline-block;
+}
+
+.footer .footer-tools .go-top {
+ display: block;
+ text-decoration: none;
+ cursor: pointer;
+ margin-top: -2px;
+ margin-right: 0px;
+ margin-bottom: 0px;
+ font-size: 16px;
+ padding: 0px 6px 0px 6px;
+}
+
+.footer .footer-tools .go-top i {
+ font-size: 22px;
+ margin-bottom: 5px;
+}
+
+
+/********************
+ GENERAL UI ELEMENTS
+*********************/
+
+/***
+Icon stuff
+***/
+i.icon, a.icon {
+ color: #999;
+ margin-right: 5px;
+ font-weight: normal;
+ font-size: 13px;
+}
+
+i.icon-black {
+ color: #000 !important;
+}
+
+a.icon:hover {
+ text-decoration: none;
+ -webkit-transition: all 0.1s ease-in-out;
+ -moz-transition: all 0.1s ease-in-out;
+ -o-transition: all 0.1s ease-in-out;
+ -ms-transition: all 0.1s ease-in-out;
+ transition: all 0.1s ease-in-out;
+ opacity: .4;
+ filter:alpha(opacity=40);
+}
+
+a.icon.huge i{
+ font-size: 16px !important;
+}
+
+i.big {
+ font-size: 20px;
+}
+
+i.warning {
+ color: #d12610;
+}
+
+i.critical {
+ color: #37b7f3;
+}
+
+i.normal {
+ color: #52e136;
+}
+
+/***
+Custom wells
+***/
+.well {
+ background-color: #fafafa;
+ border: 1px solid #eee;
+ -webkit-border-radius: 0px;
+ -moz-border-radius: 0px;
+ border-radius: 0px;
+ -webkit-box-shadow: none !important;
+ -moz-box-shadow: none !important;
+ box-shadow: none !important;
+}
+
+.well.mini {
+ padding: 7px !important;
+}
+
+/***
+Form stuff
+***/
+
+
+/***
+Bordered form layout
+***/
+
+/***
+Input icons
+***/
+
+/* input with right aligned and colored icons */
+
+/* input with left aligned icons */
+.input-icon {
+ position: relative;
+}
+
+
+.input-icon input {
+ padding-left: 33px !important;
+}
+
+.input-icon i {
+ color: #ccc;
+ display: block;
+ position: absolute;
+ margin: 11px 2px 4px 10px;
+ width: 16px;
+ height: 16px;
+ font-size: 16px;
+ text-align: center;
+}
+
+.input-icon.right input {
+ padding-left: 12px !important;
+ padding-right: 33px !important;
+}
+
+.input-icon.right i {
+ right: 8px;
+ float: right;
+}
+
+.has-success .input-icon > i {
+ color: #468847;
+}
+
+.has-warning .input-icon > i {
+ color: #c09853;
+}
+
+.has-error .input-icon > i {
+ color: #b94a48;
+}
+
+/***
+Portlets
+***/
+.portlet {
+ clear: both;
+ margin-top: 0px;
+ margin-bottom: 25px;
+ padding: 0px;
+}
+
+.portlet > .portlet-title {
+ margin-bottom: 15px;
+ border-bottom: 1px solid #eee;
+}
+
+.portlet > .portlet-title:after,
+.portlet > .portlet-title:before {
+ content: "";
+ display: table;
+ line-height: 0;
+}
+
+.portlet > .portlet-title:after {
+ clear: both;
+}
+
+.portlet > .portlet-title > .caption {
+ float: left;
+ display: inline-block;
+ font-size: 18px;
+ line-height: 18px;
+ font-weight: 400;
+ margin: 0;
+ padding: 0;
+ margin-bottom: 8px;
+}
+
+.portlet > .portlet-title > .caption > i {
+ float: left;
+ margin-top: 4px;
+ display: inline-block !important;
+ font-size: 13px;
+ margin-right: 5px;
+ color: #666;
+}
+
+.portlet.blue > .portlet-title > .caption,
+.portlet.green > .portlet-title > .caption,
+.portlet.yellow > .portlet-title > .caption,
+.portlet.red > .portlet-title > .caption,
+.portlet.purple > .portlet-title > .caption,
+.portlet.grey > .portlet-title > .caption {
+ color: #fff;
+}
+
+.portlet.box.blue > .portlet-title > .caption > i,
+.portlet.box.green > .portlet-title > .caption > i,
+.portlet.box.grey > .portlet-title > .caption > i,
+.portlet.box.yellow > .portlet-title > .caption > i,
+.portlet.box.red > .portlet-title > .caption > i,
+.portlet.box.purple > .portlet-title > .caption > i,
+.portlet.box.light-grey > .portlet-title > .caption > i{
+ color: #fff;
+}
+
+.sortable .portlet > .portlet-title {
+ cursor: move;
+}
+
+.portlet > .portlet-title > .tools,
+.portlet > .portlet-title > .actions
+ {
+ display: inline-block;
+ padding: 0;
+ margin: 0;
+ margin-top: 6px;
+ float: right;
+}
+
+.portlet > .portlet-title > .tools > a {
+ display: inline-block;
+ height: 16px;
+ margin-left:5px;
+}
+
+.portlet > .portlet-title > .actions > .dropdown-menu i {
+ color: #000 !important;
+}
+
+.portlet > .portlet-title > .tools > a.remove {
+ margin-bottom: 2px;
+ background-image:url(../img/portlet-remove-icon.png);
+ background-repeat: no-repeat;
+ width: 11px;
+}
+
+.portlet > .portlet-title > .tools > a.config {
+ margin-bottom: 2px;
+ background-image:url(../img/portlet-config-icon.png);
+ background-repeat: no-repeat;
+ width: 12px;
+}
+
+.portlet > .portlet-title > .tools > a.reload {
+ margin-bottom: 2px;
+ background-image:url(../img/portlet-reload-icon.png);
+ width: 13px;
+}
+
+.portlet > .portlet-title > .tools > a.expand {
+ margin-bottom: 2px;
+ background-image:url(../img/portlet-expand-icon.png);
+ width: 14px;
+}
+
+.portlet > .portlet-title > .tools > a.collapse {
+ margin-bottom: 2px;
+ background-image:url(../img/portlet-collapse-icon.png);
+ width: 14px;
+}
+
+.portlet > .portlet-title > .tools > a:hover {
+ text-decoration: none;
+ -webkit-transition: all 0.1s ease-in-out;
+ -moz-transition: all 0.1s ease-in-out;
+ -o-transition: all 0.1s ease-in-out;
+ -ms-transition: all 0.1s ease-in-out;
+ transition: all 0.1s ease-in-out;
+ opacity:.6;
+ filter:'alpha(opacity=60)';
+}
+
+.portlet > .portlet-title > .actions > .btn-group {
+ margin-top: -13px;
+}
+
+.portlet > .portlet-title > .actions > .btn {
+ padding: 4px 10px;
+ margin-top: -14px;
+}
+
+.portlet > .portlet-title > .actions > .btn-group > .btn {
+ padding: 4px 10px;
+ margin-top: -1px;
+}
+
+.portlet > .portlet-title > .actions > .btn.btn-sm {
+ padding: 3px 8px;
+ margin-top: -13px;
+}
+
+.portlet > .portlet-title > .actions > .btn-group > .btn-sm {
+ padding: 3px 8px;
+ margin-top: -1px;
+}
+
+.portlet > .portlet-title > .pagination.pagination-sm {
+ float: right !important;
+ display: inline-block !important;
+ margin: 0px;
+ margin-top: -4px;
+}
+
+@media (max-width: 767px) {
+ .portlet > .portlet-title > .actions.btn-set > .btn-group,
+ .portlet > .portlet-title > .actions.btn-set > .btn {
+ margin-top: 0px;
+ margin-bottom: 5px;
+ }
+}
+
+.portlet > .portlet-body {
+ clear: both;
+ padding: 0;
+}
+
+.portlet > .portlet-empty {
+ min-height: 125px;
+}
+
+.portlet > .portlet-body.light-blue, .portlet.light-blue {
+ background-color: #bfd5fa !important;
+}
+
+.portlet > .portlet-body.blue, .portlet.blue {
+ background-color: #4b8df8 !important;
+}
+
+.portlet > .portlet-body.red, .portlet.red {
+ background-color: #e02222 !important;
+}
+
+.portlet > .portlet-body.yellow, .portlet.yellow {
+ background-color: #ffb848 !important;
+}
+
+.portlet > .portlet-body.green, .portlet.green {
+ background-color: #35aa47 !important;
+}
+
+.portlet > .portlet-body.purple, .portlet.purple {
+ background-color: #852b99 !important;
+}
+
+.portlet > .portlet-body.light-grey, .portlet.light-grey {
+ background-color: #fafafa !important;
+}
+
+.portlet > .portlet-body.grey, .portlet.grey {
+ background-color: #555555 !important;
+}
+
+/* draggable girds */
+
+.ui-sortable-placeholder {
+ border: 1px dotted black;
+ visibility: visible !important;
+ height: 100% !important;
+}
+
+.ui-sortable-placeholder * {
+ visibility: hidden;
+}
+
+.sortable-box-placeholder {
+ background-color: #f5f5f5;
+ border: 1px dashed #DDDDDD;
+ display: block;
+ /* float: left;*/
+ margin-top: 0px !important;
+ margin-bottom: 24px !important;
+}
+
+.sortable-box-placeholder * {
+ visibility:hidden;
+}
+
+/***
+Solid colored portlet
+***/
+.portlet.solid {
+ padding: 10px;
+}
+
+.portlet.solid > .portlet-title > .tools {
+ margin-top: 2px;
+ border: 0px;
+}
+
+.portlet.solid > .portlet-title {
+ margin-bottom: 5px;
+ border: 0px;
+}
+
+.portlet.solid.bordered > .portlet-title {
+ margin-bottom: 15px;
+}
+
+.portlet.solid.red > .portlet-title,
+.portlet.solid.red > .portlet-title > .caption > i,
+.portlet.solid.red > .portlet-body,
+
+.portlet.solid.green > .portlet-title,
+.portlet.solid.green > .portlet-title > .caption > i,
+.portlet.solid.green > .portlet-body,
+
+.portlet.solid.yellow > .portlet-title,
+.portlet.solid.yellow > .portlet-title > .caption > i,
+.portlet.solid.yellow > .portlet-body,
+
+.portlet.solid.grey > .portlet-title,
+.portlet.solid.grey > .portlet-title > .caption > i,
+.portlet.solid.grey > .portlet-body,
+
+.portlet.solid.purple > .portlet-title,
+.portlet.solid.purple > .portlet-title > .caption > i,
+.portlet.solid.purple > .portlet-body,
+
+.portlet.solid.blue > .portlet-title,
+.portlet.solid.blue > .portlet-title > .caption > i,
+.portlet.solid.blue > .portlet-body {
+ border: 0;
+ color: #fff;
+}
+
+.portlet.bordered {
+ border-left: 2px solid #ddd;
+}
+
+/***
+Box portlet
+***/
+
+.portlet.box {
+ padding:0px !important
+}
+
+.portlet.box > .portlet-title {
+ padding:8px 10px 2px 10px;
+ border-bottom: 1px solid #eee;
+ color: #fff !important;
+}
+
+.portlet.box > .portlet-title > .tools {
+ margin-top: 3px;
+}
+
+.portlet.box > .portlet-title > .tools > a.remove,
+.portlet.solid > .portlet-title > .tools > a.remove {
+ background-image:url(../img/portlet-remove-icon-white.png);
+}
+
+.portlet.box > .portlet-title > .tools > a.config,
+.portlet.solid > .portlet-title > .tools > a.config {
+ background-image:url(../img/portlet-config-icon-white.png);
+}
+
+.portlet.box > .portlet-title > .tools > a.reload,
+.portlet.solid > .portlet-title > .tools > a.reload {
+ background-image:url(../img/portlet-reload-icon-white.png);
+}
+
+.portlet.box > .portlet-title > .tools > a.expand,
+.portlet.solid > .portlet-title > .tools > a.expand {
+ background-image:url(../img/portlet-expand-icon-white.png);
+}
+
+.portlet.box > .portlet-title > .tools > a.collapse,
+.portlet.solid > .portlet-title > .tools > a.collapse {
+ background-image:url(../img/portlet-collapse-icon-white.png);
+}
+
+/* portlet buttons */
+.portlet.box > .portlet-body {
+ background-color: #fff;
+ padding: 10px;
+}
+
+.portlet.box > .portlet-title {
+ margin-bottom: 0px;
+}
+
+.portlet.box.blue > .portlet-title {
+ background-color: #4b8df8;
+}
+
+.portlet.box.blue {
+ border: 1px solid #b4cef8;
+ border-top: 0;
+}
+
+.portlet.box.red > .portlet-title {
+ background-color: #e02222;
+}
+
+.portlet.box.red {
+ border: 1px solid #ef8476;
+ border-top: 0;
+}
+
+.portlet.box.yellow > .portlet-title {
+ background-color: #ffb848;
+}
+
+.portlet.box.yellow {
+ border: 1px solid #fccb7e;
+ border-top: 0;
+}
+
+.portlet.box.green > .portlet-title {
+ background-color: #35aa47;
+}
+
+.portlet.box.green {
+ border: 1px solid #77e588;
+ border-top: 0;
+}
+
+.portlet.box.purple > .portlet-title {
+ background-color: #852b99;
+}
+
+.portlet.box.purple {
+ border: 1px solid #af5cc1;
+ border-top: 0;
+}
+
+.portlet.box.grey > .portlet-title {
+ background-color: #555555;
+}
+
+.portlet.box.grey {
+ border: 1px solid #9d9c9c;
+ border-top: 0;
+}
+
+.portlet.box.light-grey > .portlet-title {
+ background-color: #aaa;
+}
+
+.portlet.box.light-grey {
+ border: 1px solid #bbb;
+ border-top: 0;
+}
+
+/***
+Charts and statistics
+***/
+.chart, .pie, .bars {
+ overflow: hidden;
+ height: 300px;
+}
+
+/***
+Statistic lists
+***/
+.item-list.table .percent {
+ width: 30px;
+ float: right;
+ margin-right: 10px;
+ margin-top: 3px;
+}
+
+/***
+Chart tooltips
+***/
+.chart-tooltip {
+ clear: both;
+ z-index: 100;
+ background-color: #736e6e !important;
+ padding: 5px !important;
+ color: #fff;
+}
+
+.chart-tooltip .label {
+ clear: both;
+ display: block;
+ margin-bottom: 2px;
+}
+
+/***
+Mini chart containers
+***/
+.bar-chart {
+ display: none
+}
+
+.line-chart {
+ display: none
+}
+
+/***
+Custom icon buttons
+***/
+.icon-btn {
+ height: 60px;
+ min-width: 80px;
+ margin: 5px 5px 0 0;
+ border: 1px solid #ddd;
+ padding: 12px 0px 0px 0px;
+ background-color: #fafafa !important;
+ background-image: none !important;
+ filter:none !important;
+ -webkit-box-shadow: none !important;
+ -moz-box-shadow: none !important;
+ box-shadow: none !important;
+ display:inline-block !important;
+ color: #646464 !important;
+ text-shadow: none !important;
+ text-align: center;
+ cursor: pointer;
+ position: relative;
+ -webkit-transition: all 0.3s ease !important;
+ -moz-transition: all 0.3s ease !important;
+ -ms-transition: all 0.3s ease !important;
+ -o-transition: all 0.3s ease !important;
+ transition: all 0.3s ease !important;
+}
+
+.icon-btn i {
+ font-size: 18px;
+}
+
+.ie8 .icon-btn:hover {
+ filter: none !important;
+}
+
+.icon-btn:hover {
+ text-decoration: none !important;
+ border-color: #999 !important;
+ color: #444 !important;
+ text-shadow: 0 1px 0px rgba(255, 255, 255, 1) !important;
+ -webkit-transition: all 0.3s ease !important;
+ -moz-transition: all 0.3s ease !important;
+ -ms-transition: all 0.3s ease !important;
+ -o-transition: all 0.3s ease !important;
+ transition: all 0.3s ease !important;
+ -webkit-box-shadow: none !important;
+ -moz-box-shadow: none !important;
+ box-shadow: none !important;
+}
+
+.icon-btn:hover .badge {
+ -webkit-transition: all 0.3s ease !important;
+ -moz-transition: all 0.3s ease !important;
+ -ms-transition: all 0.3s ease !important;
+ -o-transition: all 0.3s ease !important;
+ transition: all 0.3s ease !important;
+ -webkit-box-shadow: none !important;
+ -moz-box-shadow: none !important;
+ box-shadow: none !important;
+}
+
+.icon-btn div {
+ font-family: 'Open Sans', sans-serif;
+ margin-top: 5px;
+ margin-bottom: 20px;
+ color: #000;
+ font-size: 12px;
+ font-weight: 300;
+}
+
+.icon-btn .badge {
+ position: absolute;
+ font-family: 'Open Sans', sans-serif;
+ font-size: 11px !important;
+ font-weight: 300;
+ top: -5px;
+ right: -5px;
+ padding: 3px 6px 3px 6px;
+ color: white !important;
+ text-shadow: none;
+ border-width: 0;
+ border-style: solid;
+ -webkit-border-radius: 12px !important;
+ -moz-border-radius: 12px !important;
+ border-radius: 12px !important;
+ -webkit-box-shadow: none;
+ -moz-box-shadow: none;
+ box-shadow: none;
+}
+
+/* extended dropdowns */
+.dropdown-menu.extended {
+ min-width: 160px !important;
+ max-width: 300px !important;
+ width: 233px !important;
+ background-color: #ffffff !important;
+}
+
+.dropdown-menu.extended:before,
+.dropdown-menu.extended:after {
+ border-bottom-color: #ddd !important;
+}
+
+.dropdown-menu.extended li a{
+ display: block;
+ padding: 5px 10px !important;
+ clear: both;
+ font-weight: normal;
+ line-height: 20px;
+ white-space: normal !important;
+}
+
+.dropdown-menu.extended li i{
+ margin-right: 3px;
+}
+
+.dropdown-menu.extended li a{
+ font-size: 13px;
+ padding: 10px !important;
+ background-color: #ffffff;
+}
+
+.dropdown-menu.extended li a:hover {
+ background-image: none;
+ background-color: #f5f5f5;
+ color: #000;
+ filter:none;
+}
+
+.dropdown-menu.extended li p{
+ padding: 10px;
+ background-color: #eee;
+ margin: 0px;
+ font-size: 14px;
+ font-weight: 300;
+ color: #000;
+}
+
+.dropdown-menu.extended li a{
+ padding: 7px 0 5px 0px;
+ list-style: none;
+ border-bottom: 1px solid #f4f4f4 !important;
+ font-size: 12px;
+ text-shadow: none;
+}
+
+.dropdown-menu.extended li:first-child a {
+ border-top: none;
+ border-bottom: 1px solid #f4f4f4 !important;
+}
+
+.dropdown-menu.extended li:last-child a {
+ border-top: 1px solid white !important;
+ border-bottom: 1px solid #f4f4f4 !important;
+}
+
+.dropdown-menu.extended li.external > a {
+ font-size: 13px;
+ font-weight: 400;
+}
+
+.dropdown-menu.extended li.external > a > i{
+ margin-top: 3px;
+ float: right;
+}
+
+/* header notifications dropdowns */
+.dropdown-menu .dropdown-menu-list.scroller {
+ padding-right: 0 !important;
+ padding-left: 0;
+ list-style: none;
+}
+
+.dropdown-menu.notification li > a .time {
+ font-size: 12px;
+ font-weight: 600;
+ text-align: right;
+ font-style: italic;
+}
+
+/* header inbox dropdowns */
+.dropdown-menu.inbox li > a .photo {
+ float: left;
+ padding-right: 6px;
+}
+
+.dropdown-menu.inbox li > a .photo > img {
+ height: 40px;
+ width: 40px;
+}
+
+.dropdown-menu.inbox li > a .subject {
+ display: block;
+}
+
+.dropdown-menu.inbox li > a .subject .from {
+ font-size: 14px;
+ font-weight: 400;
+ color: #02689b;
+}
+
+.dropdown-menu.inbox li > a .subject .time {
+ font-size: 12px;
+ font-weight: 600;
+ font-style: italic;
+ position: relative;
+ float: right;
+}
+
+.dropdown-menu.inbox li > a .message {
+ display: block !important;
+ font-size: 12px;
+}
+
+/* header tasks */
+.dropdown-menu.tasks .task {
+ margin-bottom: 5px;
+}
+
+.dropdown-menu.tasks .task .desc {
+ font-size: 13px;
+ font-weight: 300;
+}
+
+.dropdown-menu.tasks .task .percent {
+ font-size: 14px;
+ font-weight: 600;
+ font-family: 'Open Sans', sans-serif;
+ float: right;
+ display: inline-block;
+}
+
+.dropdown-menu.tasks .progress {
+ display: block;
+ height: 11px;
+ margin: 0px;
+}
+
+/***
+General list for item with image
+***/
+.item-list li .img {
+ height: 50px;
+ width: 50px;
+ float: left;
+ margin-top: 3px;
+ margin-right: 5px;
+}
+
+.item-list {
+ margin: 0px;
+ list-style: none;
+}
+
+.item-list li {
+ padding: 7px 0 5px 0px;
+ list-style: none;
+ border-top: 1px solid white;
+ border-bottom: 1px solid #EBEBEB;
+ font-size: 12px;
+}
+
+.item-list li:first-child {
+ border-top: none;
+ border-bottom: 1px solid #EBEBEB;
+}
+
+.item-list li:last-child {
+ border-top: none;
+ border-bottom: none;
+}
+
+.item-list li .label {
+ margin-right: 5px;
+}
+
+.item-list.todo li .label {
+ position: absolute;
+ right: 80px;
+}
+
+.item-list.todo li .actions {
+ position: absolute;
+ right: 45px;
+}
+
+/***
+Custom tables
+***/
+.table-toolbar {
+ margin-bottom: 15px;
+}
+
+.table.table-full-width {
+ width: 100% !important;
+}
+
+.table .m-btn {
+ margin-top: 0px;
+ margin-left: 0px;
+ margin-right: 5px;
+}
+
+.table thead tr th {
+ font-size: 14px;
+ font-weight: 600;
+}
+
+.table-advance {
+ margin-bottom: 10px !important;
+}
+
+.table-advance thead {
+ color: #999;
+}
+
+.table-advance thead tr th{
+ background-color: #DDD;
+ font-size: 14px;
+ font-weight: 400;
+ color: #666;
+}
+
+.table-advance div.success,
+.table-advance div.info,
+.table-advance div.important,
+.table-advance div.warning,
+.table-advance div.danger {
+ position: absolute;
+ margin-top:-5px;
+ float: left;
+ width: 2px;
+ height: 30px;
+ margin-right: 20px !important;
+}
+
+.table-advance tr td {
+ border-left-width: 0px;
+}
+.table-advance tr td:first-child {
+ border-left-width: 1px !important;
+}
+
+.table-advance tr td.highlight:first-child a {
+ margin-left: 15px;
+}
+
+.table-advance td.highlight div.success {
+ border-left: 2px solid #66ee66;
+}
+
+.table-advance td.highlight div.info {
+ border-left: 2px solid #87ceeb;
+}
+
+.table-advance td.highlight div.important {
+ border-left: 2px solid #f02c71;
+}
+
+.table-advance td.highlight div.warning {
+ border-left: 2px solid #fdbb39;
+}
+
+.table-advance td.highlight div.danger {
+ border-left: 2px solid #e23e29;
+}
+
+/***
+Star rating
+***/
+.rating {
+ unicode-bidi: bidi-override;
+ direction: rtl;
+ font-size: 30px;
+}
+
+.rating span.star {
+ font-family: FontAwesome;
+ font-weight: normal;
+ font-style: normal;
+ display: inline-block;
+}
+
+.rating span.star:hover {
+ cursor: pointer;
+}
+
+.rating span.star:before {
+ content: "\f006";
+ padding-right: 5px;
+ color: #999999;
+}
+
+.rating span.star:hover:before,
+.rating span.star:hover ~ span.star:before {
+ content: "\f005";
+ color: #e3cf7a;
+}
+
+
+/***
+Item block with details shown on hover
+***/
+.item {
+ overflow: hidden;
+ display: block;
+ margin-bottom: 20px;
+}
+
+.item .details {
+ width: 100%;
+ display: none;
+ background-color: #000;
+ color: #fff !important;
+ padding: 5px;
+ text-align: center;
+ position: relative;
+ bottom:30px;
+ margin-bottom:-30px;
+ overflow: hidden;
+ z-index: 6;
+}
+
+.item:hover .details {
+ display: block;
+ opacity: 0.7;
+ filter: alpha(opacity = 70);
+}
+
+.item:hover .zoom-icon{
+ opacity:0.5;
+ filter: alpha(opacity = 50);
+}
+
+/***
+Zoom icon overlay on images
+***/
+.zoom {
+ cursor: pointer;
+ width: 100%;
+ height: 100%;
+ position: relative;
+ z-index: 5;
+}
+
+.zoom .zoom-icon {
+ background-image:url("../img/overlay-icon.png");
+ background-color: #222;
+ background-repeat: no-repeat;
+ background-position: 50%;
+ position: absolute;
+ width: inherit;
+ height: inherit;
+ opacity: 0;
+ filter: alpha(opacity = 0);
+ z-index: 6;
+ top:0;
+}
+
+/***
+Chats
+***/
+.chats {
+ margin:0;
+ padding: 0;
+ margin-top: -15px;
+}
+
+.chats li {
+ list-style: none;
+ padding: 5px 0;
+ margin: 10px auto;
+ font-size: 12px;
+}
+
+.chats li img.avatar {
+ height: 45px;
+ width: 45px;
+ -webkit-border-radius: 50% !important;
+ -moz-border-radius: 50% !important;
+ border-radius: 50% !important;
+}
+
+.chats li.in img.avatar {
+ float: left;
+ margin-right: 10px;
+}
+
+.chats li .name {
+ color:#3590c1;
+ font-size: 13px;
+ font-weight: 400;
+}
+
+.chats li .datetime {
+ color:#333;
+ font-size: 13px;
+ font-weight: 400;
+}
+
+.chats li.out img.avatar {
+ float: right;
+ margin-left: 10px;
+}
+
+.chats li .message {
+ display: block;
+ padding: 5px;
+ position: relative;
+}
+
+.chats li.in .message {
+ text-align: left;
+ border-left: 2px solid #35aa47;
+ margin-left: 65px;
+ background: #fafafa
+}
+
+.chats li.in .message .arrow {
+ display: block;
+ position: absolute;
+ top: 5px;
+ left: -8px;
+ width: 0;
+ height: 0;
+
+ border-top: 8px solid transparent;
+ border-bottom: 8px solid transparent;
+ border-right: 8px solid #35aa47;
+}
+
+.chats li.out .message .arrow {
+ display: block;
+ position: absolute;
+ top: 5px;
+ right: -8px;
+ border-top: 8px solid transparent;
+ border-bottom: 8px solid transparent;
+ border-left: 8px solid #da4a38;
+}
+
+.chats li.out .message {
+ border-right: 2px solid #da4a38;
+ margin-right: 65px;
+ background: #fafafa;
+ text-align: right;
+}
+
+.chats li.out .name,
+.chats li.out .datetime {
+ text-align: right;
+}
+
+.chats li .message .body {
+ display: block;
+}
+
+.chat-form {
+ margin-top: 15px;
+ padding: 10px;
+ background-color: #e9eff3;
+ overflow: hidden;
+ clear: both;
+}
+
+.chat-form .input-cont {
+ margin-right: 40px;
+}
+
+.chat-form .input-cont .form-control {
+ width: 100% !important;
+ margin-bottom: 0px;
+}
+
+.chat-form .input-cont input{
+ border: 1px solid #ddd;
+ width: 100% !important;
+ margin-top: 0;
+}
+
+.chat-form .input-cont input {
+ background-color: #fff !important;
+}
+
+.chat-form .input-cont input:focus{
+ border: 1px solid #4b8df9 !important;
+}
+
+.chat-form .btn-cont {
+ margin-top: -42px;
+ position: relative;
+ float: right;
+ width:44px;
+}
+
+.chat-form .btn-cont .arrow {
+ position: absolute;
+ top: 17px;
+ right: 43px;
+ border-top: 8px solid transparent;
+ border-bottom: 8px solid transparent;
+ border-right: 8px solid #4d90fe;
+ -webkit-box-sizing: border-box;
+ -moz-box-sizing: border-box;
+ box-sizing: border-box;
+}
+
+.chat-form .btn-cont:hover .arrow {
+ border-right-color: #0362fd;
+}
+
+.chat-form .btn-cont:hover .btn {
+ background-color: #0362fd;
+}
+
+.chat-form .btn-cont .btn {
+ margin-top: 8px;
+}
+
+/***
+System feeds
+***/
+.feeds {
+ margin: 0px;
+ padding: 0px;
+ list-style: none;
+}
+
+.feeds li {
+ background-color: #fafafa;
+ margin-bottom: 7px;
+}
+
+.feeds li:before,
+.feeds li:after {
+ display: table;
+ line-height: 0;
+ content: "";
+}
+
+.feeds li:after {
+ clear: both;
+}
+
+.feeds li:last-child {
+ margin-bottom: 0px;
+}
+
+.feeds .col1 {
+ float:left;
+ width:100%;
+ clear: both;
+}
+
+.feeds .col2 {
+ float:left;
+ width:75px;
+ margin-left:-75px;
+}
+
+.feeds .col1 .cont {
+ float:left;
+ margin-right:75px;
+ overflow:hidden;
+}
+
+.feeds .col1 .cont .cont-col1 {
+ float:left;
+ margin-right:-100%;
+}
+
+.feeds .col1 .cont .cont-col1 .label {
+ display: inline-block;
+ padding: 5px 4px 6px 5px;
+ vertical-align: middle;
+ text-align: center;
+}
+.feeds .col1 .cont .cont-col1 .label > i {
+ text-align: center;
+ font-size: 14px;
+}
+
+.feeds .col1 .cont .cont-col2 {
+ float:left;
+ width:100%;
+}
+
+.feeds .col1 .cont .cont-col2 .desc {
+ margin-left:35px;
+ padding-top: 4px;
+ padding-bottom: 5px;
+ overflow:hidden;
+}
+
+.feeds .col2 .date {
+ padding: 4px 9px 5px 4px;
+ text-align: right;
+ font-style: italic;
+ color:#c1cbd0;
+}
+
+/***
+Users
+***/
+.user-info {
+ margin-bottom: 10px !important;
+}
+
+.user-info img {
+ float: left;
+ margin-right: 5px;
+}
+
+.user-info .details {
+ display: inline-block;
+}
+
+.user-info .label {
+ font-weight: 300;
+ font-size: 11px;
+}
+
+/***
+Accordions
+***/
+.accordion-heading {
+ background:#eee;
+}
+
+.accordion-heading a {
+ text-decoration:none;
+}
+
+.accordion-heading a:hover {
+ text-decoration:none;
+}
+
+/***
+Vertical inline menu
+***/
+.ver-inline-menu {
+ padding: 0;
+ margin: 0;
+ list-style: none;
+}
+
+.ver-inline-menu li {
+ position:relative;
+ margin-bottom:1px;
+}
+
+.ver-inline-menu li i {
+ width: 37px;
+ height: 37px;
+ display: inline-block;
+ color:#b9cbd5;
+ font-size:15px;
+ padding:12px 10px 10px 8px;
+ margin:0 8px 0 0;
+ text-align: center;
+ background:#e0eaf0 !important;
+}
+
+.ver-inline-menu li a {
+ font-size: 13px;
+ color:#557386;
+ display:block;
+ background:#f0f6fa;
+ border-left:solid 2px #c4d5df;
+}
+
+.ver-inline-menu li:hover a,
+.ver-inline-menu li:hover i {
+ background:#e0eaf0;
+ text-decoration:none;
+}
+
+.ver-inline-menu li:hover i {
+ color:#fff;
+ background:#c4d5df !important;
+}
+
+.ver-inline-menu li.active a,
+.ver-inline-menu li:hover a {
+ font-size: 13px;
+}
+
+.ver-inline-menu li.active a {
+ border-left:solid 2px #0c91e5;
+}
+
+.ver-inline-menu li.active a,
+.ver-inline-menu li.active i {
+ color:#fff;
+ background:#169ef4;
+ text-decoration:none;
+}
+
+.ver-inline-menu li.active i {
+ background:#0c91e5 !important;
+}
+
+.ver-inline-menu li.active:after {
+ content: '';
+ display: inline-block;
+ border-bottom: 6px solid transparent;
+ border-top: 6px solid transparent;
+ border-left: 6px solid #169ef4;
+ position: absolute;
+ top: 12px;
+ right: -5px;
+}
+
+/***
+Custom tabs
+***/
+.nav-tabs > li > a > .badge,
+.nav-pills > li > a > .badge {
+ margin-top: -3px;
+}
+
+.nav-tabs > li > a,
+.nav-pills > li > a {
+ font-size: 14px;
+}
+
+.nav-tabs-sm > li > a,
+.nav-pills-sm > li > a {
+ font-size: 13px;
+}
+
+.tabbable-custom {
+ margin-bottom: 15px;
+ padding: 0px;
+ overflow: hidden;
+}
+
+.tabbable-custom > .nav-tabs {
+ border: none;
+ margin: 0px;
+}
+
+.tabbable-custom > .tab-content {
+ background-color: #fff;
+ border: 1px solid #ddd;
+ -webkit-border-radius: 0;
+ -moz-border-radius: 0;
+ border-radius: 0;
+ padding: 10px;
+}
+
+.tabbable-custom.nav-justified .tab-content {
+ margin-top: -1px;
+}
+
+.tabs-below.tabbable-custom.nav-justified .tab-content {
+ margin-top: 0px;
+ margin-bottom: -2px;
+}
+
+.tabbable-custom.boxless > .tab-content {
+ padding:15px 0;
+ border-left:none;
+ border-right:none;
+ border-bottom:none;
+}
+
+.tabbable-custom .nav-tabs > li {
+ margin-right: 2px;
+ border-top: 2px solid transparent;
+}
+
+.tabbable-custom .nav-tabs > li > a {
+ margin-right: 0;
+ }
+
+.tabbable-custom .nav-tabs > li > a:hover {
+ background: none;
+ border-color:transparent;
+}
+
+.tabbable-custom .nav-tabs > li.active {
+ border-top: 3px solid #d12610;
+ margin-top: 0;
+ position: relative;
+}
+
+.tabbable-custom .nav-tabs > li.active > a {
+ border-top: none;
+ font-weight: 400;
+}
+
+.tabbable-custom .nav-tabs > li.active > a:hover {
+ border-top: none;
+ background: #fff;
+ border-color: #d4d4d4 #d4d4d4 transparent;
+}
+
+.tabbable-custom .nav-tabs > li {
+ margin-right: 2px;
+ border-top: 2px solid transparent;
+}
+
+/* below tabs */
+
+.tabs-below.tabbable-custom .nav-tabs > li > a {
+ border-top: none;
+ border-bottom: 2px solid transparent;
+ margin-top: -1px;
+}
+
+.tabs-below.tabbable-custom .nav-tabs > li.active {
+ border-top: none;
+ border-bottom: 3px solid #d12610;
+ margin-bottom: 0;
+ position: relative;
+}
+
+.tabs-below.tabbable-custom .nav-tabs > li.active > a {
+ border-bottom: none
+}
+
+.tabs-below.tabbable-custom .nav-tabs > li.active > a:hover {
+ background: #fff;
+ border-color: #d4d4d4 #d4d4d4 transparent;
+}
+
+/*full width tabs with bigger titles */
+.tabbable-custom.tabbable-full-width > .tab-content {
+ padding:15px 0;
+ border-left:none;
+ border-right:none;
+ border-bottom:none;
+}
+
+.tabbable-custom.tabbable-full-width .nav-tabs > li > a {
+ color:#424242;
+ font-size:15px;
+ padding:9px 15px;
+}
+
+/***
+Custom portlet tabs
+***/
+
+.portlet-tabs > .nav-tabs {
+ position: relative;
+ top: -41px;
+ margin-right: 10px;
+ overflow: hidden;
+}
+
+.portlet-tabs > .nav-tabs > li {
+ float: right;
+}
+
+.portlet-tabs > .nav-tabs {
+ border-bottom: none;
+}
+
+.portlet-tabs > .nav-tabs > li > a {
+ color: #fff;
+ padding-top: 8px;
+ padding-bottom: 10px;
+ line-height: 16px;
+ margin-top: 6px;
+ margin-left: 0px;
+ margin-right: 0px;
+ border-left: 0;
+ border-right: 0;
+ -webkit-border-radius: 0px;
+ -moz-border-radius: 0px;
+ border-radius: 0px;
+}
+
+.portlet-tabs > .nav-tabs > li:last-child > a {
+ border-right:0;
+}
+
+.portlet-tabs > .nav-tabs > li {
+ margin-left: 1px;
+}
+
+.portlet-tabs > .nav-tabs > li.active {
+ color: #333;
+ border-top-color: transparent;
+}
+
+.portlet-tabs > .nav-tabs > li.active > a {
+ margin-bottom: 0px;
+ border-bottom: 0;
+ margin-left: 0px;
+ margin-right: 0px;
+ border-left: 0;
+ border-right: 0;
+ border-top-color:transparent !important;
+}
+
+.portlet-tabs > .nav-tabs > li > a:hover {
+ color: #333;
+ margin-bottom: 0;
+ border-bottom-color: transparent;
+ margin-left: 0;
+ margin-right: 0;
+ border-left: 0;
+ border-right: 0;
+ border-top-color:transparent;
+ background-color: #fff;
+}
+
+.portlet-tabs > .nav-tabs > .active > a {
+ color: #555555;
+ cursor: default;
+ background-color: #fff;
+}
+
+.portlet-tabs > .nav-tabs > .active > a:hover {
+ background-color: #fff !important;
+}
+
+.portlet-tabs > .tab-content {
+ padding: 10px !important;
+ margin: 0px;
+ margin-top: -50px !important;
+}
+
+.portlet.tabbable .portlet-body {
+ padding: 0px;
+}
+
+.tab-pane > p:last-child {
+ margin-bottom: 0px;
+}
+
+/* reverse aligned tabs */
+
+.tabs-reversed > li {
+ float: right;
+}
+
+.tabs-reversed > li,
+.tabs-reversed > li > a {
+ margin-right: 0;
+}
+
+/***
+Dashboard container
+***/
+
+#dashboard {
+ overflow: hidden;
+}
+
+/***
+Dashboard stats
+***/
+.dashboard-stat {
+ margin-bottom: 25px;
+}
+
+.portlet .dashboard-stat:last-child {
+ margin-bottom: 0;
+}
+
+.dashboard-stat:before,
+.dashboard-stat:after {
+ display: table;
+ line-height: 0;
+ content: "";
+}
+.dashboard-stat:after {
+ clear: both;
+}
+
+.dashboard-stat .visual {
+ width: 80px;
+ height:80px;
+ display: block;
+ float: left;
+ padding-top: 10px;
+ padding-left: 15px;
+ margin-bottom: 10px;
+}
+
+.dashboard-stat .visual i {
+ font-size: 65px;
+ line-height: 65px;
+ color: #fff;
+}
+
+.dashboard-stat .visual {
+ font-size: 35px;
+ line-height: 35px;
+}
+
+@media (min-width: 992px) and (max-width: 1024px) {
+
+ .dashboard-stat .visual i {
+ font-size: 28px;
+ line-height: 28px;
+ }
+
+}
+
+.dashboard-stat .details {
+ position: absolute;
+ right: 15px;
+ padding-right: 10px;
+}
+
+.dashboard-stat .details .number {
+ padding-top: 15px;
+ text-align: right;
+ font-size: 34px;
+ line-height: 34px;
+ letter-spacing: -1px;
+ margin-bottom: 5px;
+ font-weight: 300;
+ color: #fff;
+}
+
+.dashboard-stat .details .desc {
+ text-align: right;
+ font-size: 16px;
+ letter-spacing: 0px;
+ font-weight: 300;
+ color: #fff;
+}
+
+.dashboard-stat .more {
+ clear: both;
+ display: block;
+ padding: 5px 10px 5px 10px;
+ text-transform: uppercase;
+ font-weight: 300;
+ font-size: 11px;
+ color: #fff;
+ opacity: 0.7;
+ filter: alpha(opacity=70);
+}
+
+.dashboard-stat .more:hover {
+ text-decoration: none;
+ opacity: 1;
+ filter: alpha(opacity=100);
+}
+
+.dashboard-stat .more > i {
+ display: inline-block;
+ margin-top: 1px;
+ float: right;
+}
+
+.dashboard-stat.blue {
+ background-color: #27a9e3;
+}
+
+.dashboard-stat.blue .more {
+ background-color: #208dbe;
+}
+
+.dashboard-stat.green {
+ background-color: #28b779;
+}
+
+.dashboard-stat.green .more {
+ background-color: #10a062;
+}
+
+.dashboard-stat.red {
+ background-color: #e7191b;
+}
+
+.dashboard-stat.red .more {
+ background-color:#bc0d0e;
+}
+
+.dashboard-stat.yellow {
+ background-color: #ffb848;
+}
+
+.dashboard-stat.yellow .more {
+ background-color: #cb871b;
+}
+
+.dashboard-stat.purple {
+ background-color: #852b99;
+}
+
+.dashboard-stat.purple .more {
+ background-color: #6e1881;
+}
+
+/***
+Text Stats
+***/
+
+.text-stat h3 {
+ margin-top: 5px;
+ margin-bottom: 0px;
+ font-size: 18px;
+}
+
+.text-stat span {
+ font-size: 12px;
+ text-transform: uppercase;
+}
+
+@media (max-width: 767px) {
+
+ .text-stat {
+ margin-top: 20px;
+ }
+
+}
+
+/***
+Tiles(new in v1.1.1)
+***/
+
+.tiles {
+ margin-right: -10px;
+}
+
+.tiles:before,
+.tiles:after {
+ display: table;
+ content: " ";
+}
+
+.tiles:after {
+ clear: both;
+}
+
+.tile {
+ display: block;
+ letter-spacing: 0.02em;
+ float: left;
+ height: 135px;
+ width: 135px !important;
+ cursor: pointer;
+ text-decoration: none;
+ color: #ffffff;
+ position: relative;
+ font-weight: 300;
+ font-size: 12px;
+ letter-spacing: 0.02em;
+ line-height: 20px;
+ overflow: hidden;
+ border: 4px solid transparent;
+ margin: 0 10px 10px 0;
+}
+
+.tile:after,
+.tile:before {
+ content: "";
+ float: left;
+}
+
+.tile.double {
+ width: 280px !important;
+}
+
+.tile.double-down {
+ height: 280px !important;
+}
+
+.tile:active, .tile.selected {
+ border-color: #ccc !important;
+}
+
+.tile:hover {
+ border-color: #aaa !important;
+}
+
+.tile.selected .corner:after {
+ content: "";
+ display: inline-block;
+ border-left: 40px solid transparent;
+ border-bottom: 40px solid transparent;
+ border-right: 40px solid #ccc;
+ position: absolute;
+ top: -3px;
+ right: -3px;
+}
+
+.tile.selected .check:after {
+ content: "";
+ font-family: FontAwesome;
+ font-size: 13px;
+ content: "\f00c";
+ display: inline-block;
+ position: absolute;
+ top: 2px;
+ right: 2px;
+}
+
+.tile * {
+ color: #ffffff;
+}
+
+.tile .tile-body {
+ height: 100%;
+ vertical-align: top;
+ padding: 10px 10px;
+ overflow: hidden;
+ position: relative;
+ font-weight: 400;
+ font-size: 12px;
+ color: #000000;
+ color: #ffffff;
+ margin-bottom: 10px;
+}
+
+.tile .tile-body img {
+ float: left;
+ margin-right: 10px;
+}
+
+.tile .tile-body img.pull-right {
+ float: right !important;
+ margin-left: 10px;
+ margin-right: 0px;
+}
+
+.tile .tile-body .content {
+ display: inline-block;
+}
+
+.tile .tile-body > i {
+ margin-top: 17px;
+ display: block;
+ font-size: 56px;
+ line-height: 56px;
+ text-align: center;
+}
+
+
+.tile.double-down i {
+ margin-top: 95px;
+}
+
+.tile .tile-body h1,
+.tile .tile-body h2,
+.tile .tile-body h3,
+.tile .tile-body h4,
+.tile .tile-body h5,
+.tile .tile-body h6,
+.tile .tile-body p {
+ padding: 0;
+ margin: 0;
+ line-height: 14px;
+}
+
+.tile .tile-body h3,
+.tile .tile-body h4 {
+ margin-bottom: 5px;
+}
+
+.tile .tile-body h1:hover,
+.tile .tile-body h2:hover,
+.tile .tile-body h3:hover,
+.tile .tile-body h4:hover,
+.tile .tile-body h5:hover,
+.tile .tile-body h6:hover,
+.tile .tile-body p:hover {
+ color: #ffffff;
+}
+
+.tile .tile-body p {
+ font-weight: 400;
+ font-size: 13px;
+ color: #000000;
+ color: #ffffff;
+ line-height: 20px;
+ overflow: hidden;
+}
+
+.tile .tile-body p:hover {
+ color: rgba(0, 0, 0, 0.8);
+}
+
+.tile .tile-body p:active {
+ color: rgba(0, 0, 0, 0.4);
+}
+
+.tile .tile-body p:hover {
+ color: #ffffff;
+}
+
+.tile.icon > .tile-body {
+ padding: 0;
+}
+
+.tile .tile-object {
+ position: absolute;
+ bottom: 0;
+ left: 0;
+ right: 0;
+ min-height: 30px;
+ background-color: transparent;
+ *zoom: 1;
+}
+
+.tile .tile-object:before,
+.tile .tile-object:after {
+ display: table;
+ content: "";
+}
+
+.tile .tile-object:after {
+ clear: both;
+}
+
+.tile .tile-object > .name {
+ position: absolute;
+ bottom: 0;
+ left: 0;
+ margin-bottom: 5px;
+ margin-left: 10px;
+ margin-right: 15px;
+ font-weight: 400;
+ font-size: 13px;
+ color: #ffffff;
+}
+
+.tile .tile-object > .name > i {
+ vertical-align: middle;
+ display: block;
+ font-size: 24px;
+ height: 18px;
+ width: 24px;
+}
+
+.tile .tile-object > .number {
+ position: absolute;
+ bottom: 0;
+ right: 0;
+ margin-bottom: 0;
+ color: #ffffff;
+ text-align: center;
+ font-weight: 600;
+ font-size: 14px;
+ letter-spacing: 0.01em;
+ line-height: 14px;
+ margin-bottom: 8px;
+ margin-right: 10px;
+}
+
+.tile.image > .tile-body {
+ padding: 0 !important;
+}
+
+.tile.image > .tile-body > img{
+ width: 100%;
+ height: auto;
+ min-height: 100%;
+ max-width: 100%;
+}
+
+.tile.image .tile-body h3 {
+ display: inline-block;
+}
+
+/***
+Theme Panel
+***/
+
+.theme-panel {
+ width: 400px;
+ margin-top: 0px;
+ margin-right: 1px;
+ z-index: 999;
+ float: right;
+ position:relative;
+}
+
+.theme-panel > .toggler {
+ top:4px;
+ right:0;
+ padding:20px;
+ cursor:pointer;
+ position:absolute;
+ background:#c9c9c9 url(../img/icon-color.png) center no-repeat;
+}
+
+.theme-panel > .toggler:hover {
+ background-color: #3d3d3d !important;
+}
+
+.theme-panel > .toggler-close {
+ display: none;
+ top:4px;
+ right:0;
+ padding:20px;
+ cursor:pointer;
+ position:absolute;
+ background: #3d3d3d url(../img/icon-color-close.png) center no-repeat !important;
+}
+
+.theme-panel > .toggler-close:hover {
+ background-color:#222 !important;
+}
+
+.theme-panel > .theme-options {
+ top:4px;
+ right:40px;
+ display:none;
+ position:absolute;
+ background:#3d3d3d;
+}
+
+.theme-panel > .theme-options > .theme-option {
+ color:#cfcfcf;
+ padding: 15px;
+ border-top:1px solid #585858;
+ margin-top: 0px;
+ margin-bottom: 0px;
+}
+
+.theme-panel > .theme-options > .theme-option.theme-colors {
+ border-top: 0;
+}
+
+.theme-panel > .theme-options > .theme-option > span {
+ text-transform:uppercase;
+ display: inline-block;
+ width: 138px;
+ font-size: 14px;
+}
+
+.theme-panel > .theme-options > .theme-option.theme-colors > span {
+ display: block;
+ width: auto;
+}
+
+.theme-panel > .theme-options > .theme-option > select.form-control {
+ display: inline;
+ width: 100px;
+ text-transform: lowercase;
+}
+
+.theme-panel > .theme-options > .theme-option.theme-colors > ul {
+ list-style:none;
+ padding: 0;
+ display: block;
+ margin-bottom: 1px !important;
+ margin-top: 10px;
+}
+
+.theme-panel > .theme-options > .theme-option.theme-colors > ul > li {
+ width:37px;
+ height:37px;
+ margin:0 4px;
+ cursor:pointer;
+ list-style:none;
+ float: left;
+ border:solid 1px #707070;
+}
+
+.theme-panel > .theme-options > .theme-option.theme-colors > ul > li:first-child {
+ margin-left: 0;
+}
+
+.theme-panel > .theme-options > .theme-option.theme-colors > ul > li:hover,
+.theme-panel > .theme-options > .theme-option.theme-colors > ul > li.current {
+ border:solid 2px #ebebeb;
+}
+
+.theme-panel > .theme-options > .theme-option.theme-colors > ul > li.color-black {
+ background:#333438;
+}
+
+.theme-panel > .theme-options > .theme-option.theme-colors > ul > li.color-grey {
+ background:#6d6d6d;
+}
+
+.theme-panel > .theme-options > .theme-option.theme-colors > ul > li.color-ztebluelight {
+ background:#3366cc;
+}
+.theme-panel > .theme-options > .theme-option.theme-colors > ul > li.color-ztebluelight {
+ background:#1ab3ec;
+}
+
+.theme-panel > .theme-options > .theme-option.theme-colors > ul > li.color-blue {
+ background:#124f94;
+}
+
+.theme-panel > .theme-options > .theme-option.theme-colors > ul > li.color-brown {
+ background:#623f18;
+}
+
+.theme-panel > .theme-options > .theme-option.theme-colors > ul > li.color-purple {
+ background:#701584;
+}
+
+.theme-panel > .theme-options > .theme-option.theme-colors > ul > li.color-white {
+ background:#fff;
+}
+
+/***
+Top bar menu
+***/
+
+/* enable arrow for dropdown menu */
+.header.navbar .nav > li > .dropdown-menu:before {
+ position: absolute;
+ top: -7px;
+ right: 9px;
+ display: inline-block !important;
+ border-right: 7px solid transparent;
+ border-bottom: 7px solid #ccc;
+ border-left: 7px solid transparent;
+ border-bottom-color: rgba(0, 0, 0, 0.2);
+ content: '';
+}
+
+.header.navbar .nav > li > .dropdown-menu:after {
+ position: absolute;
+ top: -6px;
+ right: 10px;
+ display: inline-block !important;
+ border-right: 6px solid transparent;
+ border-bottom: 6px solid #fff;
+ border-left: 6px solid transparent;
+ content: '';
+}
+
+/***
+Mega Menu(new in v1.6)
+***/
+
+.mega-menu .nav,
+.mega-menu .collapse,
+.mega-menu .mega-menu-dropup,
+.mega-menu .mega-menu-dropdown {
+ position: static;
+}
+.mega-menu .container {
+ position: relative;
+}
+.mega-menu .mega-menu-dropdown .dropdown-menu {
+ left: auto;
+ width: auto;
+}
+.mega-menu .nav.navbar-right .dropdown-menu {
+ left: auto;
+ right: 0;
+}
+.mega-menu .mega-menu-content {
+ padding: 10px;
+ margin: 0;
+}
+.mega-menu .mega-menu-full .dropdown-menu {
+ left: 20px;
+ right: 20px;
+}
+
+.mega-menu-responsive-content {
+ padding: 10px 15px 10px 60px;
+}
+
+.page-boxed .mega-menu .mega-menu-dropdown .dropdown-menu {
+ top: 42px;
+}
+
+.page-boxed .mega-menu .mega-menu-dropdown.mega-menu-full .dropdown-menu {
+ margin: 0;
+ padding: 0;
+ left: 18px;
+ right: 18px;
+}
+
+.mega-menu .mega-menu-submenu {
+ width: auto !important;
+ padding: 0px 30px 0px 0px !important;
+ margin: 0 !important;
+}
+
+
+ .mega-menu-content .row :last-child>ul{
+ border-right: 0 !important;
+}
+
+.mega-menu .mega-menu-submenu li > h3 {
+ font-size: 14px;
+ margin-top: 10px;
+ padding-left: 5px;
+}
+
+.mega-menu .mega-menu-submenu li {
+ padding: 2px !important;
+ margin: 0 !important;
+ list-style: none;
+}
+
+.mega-menu .mega-menu-submenu li > a {
+ padding: 5px !important;
+ margin: 0 !important;
+}
+
+/***
+Horezantal Menu(new in v1.2)
+***/
+
+.header.navbar .hor-menu {
+ margin: 0;
+ float: left;
+}
+
+.header.navbar .hor-menu ul.nav li > a {
+ font-size: 15px;
+ padding: 11px 10px;
+}
+
+.header.navbar .hor-menu ul.nav li.current .selected,
+.header.navbar .hor-menu ul.nav li.active .selected {
+ left: 50%;
+ bottom:0;
+ position: absolute;
+ border-left: 6px solid transparent;
+ border-right: 6px solid transparent;
+ /*border-top: 6px solid #e02222;*/
+ display: inline-block;
+ margin: 0;
+ width: 0px;
+ height:0px;
+ margin-left: -7px;
+ margin-bottom:-6px;
+}
+
+/*drop-down*/
+.header.navbar .hor-menu .dropdown-menu {
+ margin-top: 0;
+ border: none;
+ box-shadow: none;
+}
+
+.header.navbar .hor-menu .classic-menu-dropdown .dropdown-submenu > .dropdown-menu {
+ top: 0;
+}
+
+.header.navbar .hor-menu .classic-menu-dropdown .dropdown-submenu > a:after {
+ top: 8px;
+ margin-right: 0px;
+}
+
+.header.navbar .hor-menu .classic-menu-dropdown .dropdown-menu li > a {
+ padding: 7px 18px !important;
+ margin-bottom:1px;
+}
+
+.header.navbar .hor-menu .classic-menu-dropdown .dropdown-menu .arrow {
+ display: none;
+}
+
+.header.navbar .hor-menu .classic-menu-dropdown .dropdown-menu li > a:hover,
+.header.navbar .hor-menu .classic-menu-dropdown .dropdown-menu li:hover > a,
+.header.navbar .hor-menu .classic-menu-dropdown .dropdown-menu li.active > a {
+ filter:none !important;
+}
+
+.header.navbar .hor-menu .nav > li > .dropdown-menu:after,
+.header.navbar .hor-menu .nav > li > .dropdown-menu:before {
+ border-bottom: none !important;
+}
+
+/*search*/
+.header.navbar .hor-menu .hor-menu-search-form-toggler {
+ display: inline-block;
+ padding: 12px 22px 12px 22px !important;
+ cursor: pointer;
+ background: url(../img/hor-menu-search.png) no-repeat center;
+}
+
+.header.navbar .hor-menu .hor-menu-search-form-toggler:hover {
+ opacity: 0.8;
+ filter: alpha(opacity=80);
+}
+
+.header.navbar .hor-menu a.hor-menu-search-form-toggler-close {
+ display: none;
+}
+
+.header.navbar .hor-menu .search-form {
+ margin: 0;
+ top:42px;
+ right:0px;
+ padding:0 4px;
+ display:none;
+ z-index:999;
+ position:absolute;
+}
+
+.header.navbar .hor-menu .search-form .btn {
+ padding: 7px 20px;
+ height: 32px;
+ width: 10px;
+ display: inline-block;
+}
+
+.header.navbar .hor-menu .search-form .btn:hover {
+ opacity: 0.8;
+ filter: alpha(opacity=80);
+}
+
+.header.navbar .hor-menu .search-form form {
+ margin-bottom: 0;
+}
+
+.header.navbar .hor-menu .search-form form input {
+ background: none;
+ width: 200px;
+ border: none;
+ margin-top: 6px;
+}
+
+/***
+Top News Blocks(new in v1.2.2)
+***/
+.top-news {
+ color: #fff;
+ margin: 8px 0;
+}
+
+.top-news a,
+.top-news em,
+.top-news span {
+ display: block;
+ text-align: left;
+}
+
+.top-news a {
+ padding: 10px;
+ position: relative;
+ margin-bottom: 10px;
+}
+
+.top-news a .top-news-icon {
+ right: 8px;
+ bottom: 15px;
+ opacity:0.3;
+ font-size: 35px;
+ position: absolute;
+ filter: alpha(opacity=30); /*For IE8*/
+}
+
+.top-news em {
+ margin-bottom: 0;
+ font-style: normal;
+}
+
+.top-news span {
+ font-size: 18px;
+ margin-bottom: 5px;
+}
+
+/***
+Block Images(new in v1.2.2)
+***/
+.blog-images {
+ margin-bottom: 0;
+}
+
+.blog-images li {
+ padding: 0;
+ margin: 0;
+ display: inline;
+}
+
+.blog-images li a:hover {
+ text-decoration: none;
+}
+
+.blog-images li img {
+ width: 50px;
+ height: 50px;
+ opacity: 0.6;
+ margin: 0 2px 8px;
+}
+
+.blog-images li img:hover {
+ opacity: 1;
+ box-shadow: 0 0 0 4px #72c02c;
+ transition: all 0.4s ease-in-out 0s;
+ -moz-transition: all 0.4s ease-in-out 0s;
+ -webkit-transition: all 0.4s ease-in-out 0s;
+}
+
+/*Sidebar Tags*/
+ul.sidebar-tags a {
+ color: #555;
+ font-size:12px;
+ padding:3px 5px;
+ background:#f7f7f7;
+ margin:0 2px 5px 0;
+ display:inline-block;
+}
+
+ul.sidebar-tags a:hover,
+ul.sidebar-tags a:hover i {
+ background: #EEE;
+ text-decoration:none;
+ -webkit-transition:all 0.3s ease-in-out;
+ -moz-transition:all 0.3s ease-in-out;
+ -o-transition:all 0.3s ease-in-out;
+ transition:all 0.3s ease-in-out;
+}
+
+ul.sidebar-tags a i {
+ color:#777;
+}
+
+ul.sidebar-tags li {
+ padding: 0;
+}
+
+/***
+Social Icons(new in v1.2.2)
+***/
+.social-icons {
+ padding: 0;
+ margin:0;
+}
+
+.social-icons:after,
+.social-icons:before {
+ content: "";
+ display: table;
+}
+
+.social-icons:after {
+ clear: both;
+}
+
+.social-icons li {
+ float:left;
+ display:inline;
+ list-style:none;
+ margin-right:5px;
+ margin-bottom:5px;
+ text-indent:-9999px;
+}
+.social-icons li a, a.social-icon {
+ width:28px;
+ height:28px;
+ display:block;
+ background-position:0 0;
+ background-repeat:no-repeat;
+ transition: all 0.3s ease-in-out;
+ -o-transition: all 0.3s ease-in-out;
+ -ms-transition: all 0.3s ease-in-out;
+ -moz-transition: all 0.3s ease-in-out;
+ -webkit-transition: all 0.3s ease-in-out;
+}
+.social-icons li:hover a {
+ background-position:0 -38px;
+}
+
+.social-icons-color li a {
+ opacity: 0.7;
+ background-position:0 -38px !important;
+}
+
+.social-icons-color li a:hover {
+ opacity: 1;
+}
+
+.social-icons .amazon {background: url(../img/social/amazon.png) no-repeat;}
+.social-icons .behance {background: url(../img/social/behance.png) no-repeat;}
+.social-icons .blogger {background: url(../img/social/blogger.png) no-repeat;}
+.social-icons .deviantart {background: url(../img/social/deviantart.png) no-repeat;}
+.social-icons .dribbble {background: url(../img/social/dribbble.png) no-repeat;}
+.social-icons .dropbox {background: url(../img/social/dropbox.png) no-repeat;}
+.social-icons .evernote {background: url(../img/social/evernote.png) no-repeat;}
+.social-icons .facebook {background: url(../img/social/facebook.png) no-repeat;}
+.social-icons .forrst {background: url(../img/social/forrst.png) no-repeat;}
+.social-icons .github {background: url(../img/social/github.png) no-repeat;}
+.social-icons .googleplus {background: url(../img/social/googleplus.png) no-repeat;}
+.social-icons .jolicloud {background: url(../img/social/jolicloud.png) no-repeat;}
+.social-icons .last-fm {background: url(../img/social/last-fm.png) no-repeat;}
+.social-icons .linkedin {background: url(../img/social/linkedin.png) no-repeat;}
+.social-icons .picasa {background: url(../img/social/picasa.png) no-repeat;}
+.social-icons .pintrest {background: url(../img/social/pintrest.png) no-repeat;}
+.social-icons .rss {background: url(../img/social/rss.png) no-repeat;}
+.social-icons .skype {background: url(../img/social/skype.png) no-repeat;}
+.social-icons .spotify {background: url(../img/social/spotify.png) no-repeat;}
+.social-icons .stumbleupon {background: url(../img/social/stumbleupon.png) no-repeat;}
+.social-icons .tumblr {background: url(../img/social/tumblr.png) no-repeat;}
+.social-icons .twitter {background: url(../img/social/twitter.png) no-repeat;}
+.social-icons .vimeo {background: url(../img/social/vimeo.png) no-repeat;}
+.social-icons .wordpress {background: url(../img/social/wordpress.png) no-repeat;}
+.social-icons .xing {background: url(../img/social/xing.png) no-repeat;}
+.social-icons .yahoo {background: url(../img/social/yahoo.png) no-repeat;}
+.social-icons .youtube {background: url(../img/social/youtube.png) no-repeat;}
+.social-icons .vk {background: url(../img/social/vk.png) no-repeat;}
+.social-icons .instagram {background: url(../img/social/instagram.png) no-repeat;}
+.social-icons .reddit {background: url(../img/social/reddit.png) no-repeat;}
+.social-icons .aboutme {background: url(../img/social/aboutme.png) no-repeat;}
+.social-icons .flickr {background: url(../img/social/flickr.png) no-repeat;}
+.social-icons .foursquare {background: url(../img/social/foursquare.png) no-repeat;}
+.social-icons .gravatar {background: url(../img/social/gravatar.png) no-repeat;}
+.social-icons .klout {background: url(../img/social/klout.png) no-repeat;}
+.social-icons .myspace {background: url(../img/social/myspace.png) no-repeat;}
+.social-icons .quora {background: url(../img/social/quora.png) no-repeat;}
+
+/***
+Inline Social Icons
+***/
+
+.social-icon {
+ display:inline-block !important;
+ width:28px;
+ height:28px;
+ background-position:0 0;
+ background-repeat:no-repeat;
+ transition: all 0.3s ease-in-out;
+ -o-transition: all 0.3s ease-in-out;
+ -ms-transition: all 0.3s ease-in-out;
+ -moz-transition: all 0.3s ease-in-out;
+ -webkit-transition: all 0.3s ease-in-out;
+}
+
+.social-icon.amazon {background: url(../img/social/amazon.png) no-repeat;}
+.social-icon.behance {background: url(../img/social/behance.png) no-repeat;}
+.social-icon.blogger {background: url(../img/social/blogger.png) no-repeat;}
+.social-icon.deviantart {background: url(../img/social/deviantart.png) no-repeat;}
+.social-icon.dribbble {background: url(../img/social/dribbble.png) no-repeat;}
+.social-icon.dropbox {background: url(../img/social/dropbox.png) no-repeat;}
+.social-icon.evernote {background: url(../img/social/evernote.png) no-repeat;}
+.social-icon.facebook {background: url(../img/social/facebook.png) no-repeat;}
+.social-icon.forrst {background: url(../img/social/forrst.png) no-repeat;}
+.social-icon.github {background: url(../img/social/github.png) no-repeat;}
+.social-icon.googleplus {background: url(../img/social/googleplus.png) no-repeat;}
+.social-icon.jolicloud {background: url(../img/social/jolicloud.png) no-repeat;}
+.social-icon.last-fm {background: url(../img/social/last-fm.png) no-repeat;}
+.social-icon.linkedin {background: url(../img/social/linkedin.png) no-repeat;}
+.social-icon.picasa {background: url(../img/social/picasa.png) no-repeat;}
+.social-icon.pintrest {background: url(../img/social/pintrest.png) no-repeat;}
+.social-icon.rss {background: url(../img/social/rss.png) no-repeat;}
+.social-icon.skype {background: url(../img/social/skype.png) no-repeat;}
+.social-icon.spotify {background: url(../img/social/spotify.png) no-repeat;}
+.social-icon.stumbleupon {background: url(../img/social/stumbleupon.png) no-repeat;}
+.social-icon.tumblr {background: url(../img/social/tumblr.png) no-repeat;}
+.social-icon.twitter {background: url(../img/social/twitter.png) no-repeat;}
+.social-icon.vimeo {background: url(../img/social/vimeo.png) no-repeat;}
+.social-icon.wordpress {background: url(../img/social/wordpress.png) no-repeat;}
+.social-icon.xing {background: url(../img/social/xing.png) no-repeat;}
+.social-icon.yahoo {background: url(../img/social/yahoo.png) no-repeat;}
+.social-icon.youtube {background: url(../img/social/youtube.png) no-repeat;}
+.social-icon.vk {background: url(../img/social/vk.png) no-repeat;}
+.social-icon.instagram {background: url(../img/social/instagram.png) no-repeat;}
+.social-icon.reddit {background: url(../img/social/reddit.png) no-repeat;}
+.social-icon.aboutme {background: url(../img/social/aboutme.png) no-repeat;}
+.social-icon.flickr {background: url(../img/social/flickr.png) no-repeat;}
+.social-icon.foursquare {background: url(../img/social/foursquare.png) no-repeat;}
+.social-icon.gravatar {background: url(../img/social/gravatar.png) no-repeat;}
+.social-icon.klout {background: url(../img/social/klout.png) no-repeat;}
+.social-icon.myspace {background: url(../img/social/myspace.png) no-repeat;}
+.social-icon.quora {background: url(../img/social/quora.png) no-repeat;}
+
+.social-icon:hover {
+ background-position:0 -38px;
+}
+
+.social-icon-color {
+ opacity: 0.7;
+ background-position:0 -38px !important;
+}
+
+.social-icon-color:hover {
+ opacity: 1;
+}
+
+/***
+Notes
+***/
+
+/* Common styles for all types */
+.note {
+ margin: 0 0 20px 0;
+ padding: 15px 30px 15px 15px;
+ border-left: 5px solid #eee;
+}
+
+.note h1,
+.note h2,
+.note h3,
+.note h4 {
+ margin-top: 0;
+}
+
+.note p:last-child {
+ margin-bottom: 0;
+}
+.note code,
+.note .highlight {
+ background-color: #fff;
+}
+
+/* Variations */
+.note-danger {
+ background-color: #FAEAE6;
+ border-color: #ed4e2a;
+}
+
+.note-warning {
+ background-color: #FCF3E1;
+ border-color: #fcb322;
+}
+
+.note-info {
+ background-color: #E8F6FC;
+ border-color: #57b5e3;
+}
+
+.note-success {
+ background-color: #EBFCEE;
+ border-color: #3cc051;
+}
+
+/***
+Demo Utils
+***/
+.scrollspy-example {
+ position: relative;
+ height: 200px;
+ margin-top: 10px;
+ overflow: auto;
+}
+
+.util-btn-margin-bottom-5 .btn {
+ margin-bottom: 5px !important;
+}
+
+.util-btn-group-margin-bottom-5 .btn-group {
+ margin-bottom: 5px !important;
+}
+
+.fontawesome-demo i {
+ font-size: 18px;
+}
+
+.fontawesome-demo li {
+ padding-top: 5px;
+ padding-bottom: 5px;
+}
+
+.glyphicons-demo ul {
+ padding-left: 0;
+ padding-bottom: 1px;
+ margin-bottom: 20px;
+ list-style: none;
+ overflow: hidden;
+}
+
+.bs-glyphicons {
+ padding-left: 0;
+ padding-bottom: 1px;
+ margin-bottom: 20px;
+ list-style: none;
+ overflow: hidden;
+}
+.glyphicons-demo ul li {
+ float: left;
+ width: 25%;
+ height: 115px;
+ padding: 10px;
+ margin: 0 -1px -1px 0;
+ font-size: 12px;
+ line-height: 1.4;
+ text-align: center;
+ border: 1px solid #ddd;
+}
+
+.glyphicons-demo .glyphicon {
+ display: block;
+ margin: 5px auto 10px;
+ font-size: 24px;
+}
+.glyphicons-demo ul li:hover {
+ background-color: rgba(86,61,124,.1);
+}
+
+@media (min-width: 768px) {
+ .glyphicons-demo ul li {
+ width: 12.5%;
+ }
+}
+
+/***
+Forms
+****/
+
+.static-info {
+ margin-bottom: 10px;
+}
+
+.static-info .name {
+ font-size: 14px;
+}
+
+.static-info .value {
+ font-size: 14px;
+ font-weight: 600;
+}
+
+.static-info.align-reverse .name,
+.static-info.align-reverse .value {
+ text-align: right;
+}
+
+input.placeholder,
+textarea.placeholder {
+ color: #aaa !important;
+}
+
+.help-block {
+ margin-top: 5px;
+ margin-bottom: 5px;
+}
+
+.form-inline input {
+ margin-bottom: 0px !important;
+}
+
+.control-label {
+ margin-top: 2px;
+}
+
+.form-control-static {
+ font-size: 14px;
+ padding-top: 7px;
+}
+
+.control-label .required {
+ color: #e02222;
+ font-size: 12px;
+ padding-left: 2px;
+}
+
+.switch-wrapper {
+ display: inline-block;
+}
+
+.form {
+ padding: 0 !important;
+}
+
+.form-body {
+ padding: 10px;
+}
+
+.form-actions {
+ padding: 20px 10px;
+ margin-top: 20px;
+/* background-color: #f5f5f5;
+ border-top: 1px solid #e5e5e5;*/
+ *zoom: 1;
+}
+
+.form-actions.nobg {
+ background-color: transparent;
+}
+
+.form-actions.top {
+ margin-top: 0;
+ margin-bottom: 20px;
+ border-top: 0;
+ border-bottom: 1px solid #e5e5e5;
+}
+
+.form-actions.fluid {
+ padding: 20px 0;
+}
+
+.form-actions.fluid > [class^="col-"] {
+ padding-left: 13px;
+}
+
+.form-actions:before,
+.form-actions:after {
+ display: table;
+ line-height: 0;
+ content: "";
+}
+
+.form-actions:after {
+ clear: both;
+}
+
+.form-section {
+ margin: 30px 0px 25px 0px;
+ padding-bottom: 5px;
+ border-bottom: 1px solid #eee;
+}
+
+.form .form-section:first-child {
+ margin-top: 5px;
+}
+
+.help-inline {
+ font-size: 13px;
+ color: #737373;
+ display: inline-block;
+ padding: 5px;
+}
+
+/* left, right aligned form actions */
+.form-actions.right {
+ padding-left: 0;
+ padding-right: 10px;
+ text-align: right;
+}
+
+.form-actions.left {
+ padding-left: 10px;
+ padding-right: 0;
+ text-align: left;
+}
+
+/* Checkboxes */
+.form-group .checkbox {
+ padding-left: 0;
+}
+
+.checkbox-list > label {
+ display: block;
+}
+
+.checkbox-list > label.checkbox-inline {
+ display: inline-block;
+}
+
+.checkbox-list > label.checkbox-inline:first-child {
+ padding-left: 0;
+}
+
+/* Radios */
+
+.radio-list > label {
+ display: block;
+}
+
+.radio-list > label.radio-inline {
+ display: inline-block;
+}
+
+.radio-list > label.radio-inline:first-child {
+ padding-left: 0;
+}
+
+.form-horizontal .radio-list .radio {
+ padding-top: 1px;
+}
+
+.form-horizontal .radio-list > label {
+ margin-bottom: 0;
+}
+
+.form-horizontal .radio > span {
+ margin-top: 2px;
+}
+
+/* Rows seperated form layout */
+.form-row-seperated .form-group {
+ margin: 0;
+ border-bottom: 1px solid #efefef;
+ padding: 10px 0px 10px 0px;
+}
+
+.form-row-seperated .form-group.last {
+ border-bottom: 0;
+ margin-bottom: 0;
+ padding-bottom: 10px;
+}
+
+.form-row-seperated .form-actions {
+ margin-top: 0;
+}
+
+.form-row-seperated .form-body {
+ padding: 0;
+ margin-top: 0;
+}
+
+.form-row-seperated .help-block {
+ margin-bottom: 0;
+}
+
+/* form bordered */
+.form-bordered .form-body {
+ margin: 0;
+ padding: 0;
+}
+
+.form-bordered .form-actions {
+ margin-top: 0;
+}
+
+.form-bordered .form-group {
+ margin: 0;
+ border-bottom: 1px solid #efefef;
+}
+
+.form-bordered .form-group.last {
+ border-bottom: 0;
+}
+
+.form-bordered .help-block {
+ margin-bottom: 0;
+}
+
+.form-bordered .control-label {
+ padding-top: 16px;
+}
+
+.form-bordered .form-group > div {
+ padding: 10px;
+ border-left: 1px solid #efefef;
+}
+
+.form-bordered .form-actions.fluid > .row > div {
+ padding-left: 10px;
+}
+
+.form-horizontal.form-bordered.form-row-stripped .form-group:nth-child(even) {
+ background-color: #fcfcfc;
+}
+
+.form-horizontal.form-bordered.form-label-stripped .form-group:nth-child(even) {
+ background-color: #fcfcfc;
+}
+
+.form-horizontal.form-bordered.form-row-stripped .form-control {
+ background: #fff !important;
+}
+
+.form-horizontal.form-bordered.form-label-stripped .form-group:nth-child(even) > div {
+ background-color: #ffffff;
+}
+
+/***
+Bordered form layout
+***/
+
+.form-bordered .form-control {
+ margin: 0;
+}
+
+
+/***
+Disabled Menu Link
+***/
+
+.disabled-link > a > span.text,
+.disabled-link > a > span.title {
+ font-style: italic !important;
+ color: #888 !important;
+}
+
+.disabled-link > a:hover {
+ cursor: not-allowed !important;
+}
+
+
+/***
+Responsive & Scrollable Tables
+***/
+
+.table-scrollable {
+ width: 100%;
+ overflow-x: auto;
+ overflow-y: hidden;
+ border: 1px solid #dddddd;
+ margin: 10px 0 !important;
+}
+
+.table-scrollable > .table {
+ width: 100% !important;
+ margin: 0 !important;
+ margin-bottom: 0;
+ background-color: #fff;
+}
+
+.table-scrollable > .table > thead > tr > th,
+.table-scrollable > .table > tbody > tr > th,
+.table-scrollable > .table > tfoot > tr > th,
+.table-scrollable > .table > thead > tr > td,
+.table-scrollable > .table > tbody > tr > td,
+.table-scrollable > .table > tfoot > tr > td {
+ white-space: nowrap;
+}
+
+.table-scrollable > .table-bordered {
+ border: 0;
+}
+
+.table-scrollable > .table-bordered > thead > tr > th:first-child,
+.table-scrollable > .table-bordered > tbody > tr > th:first-child,
+.table-scrollable > .table-bordered > tfoot > tr > th:first-child,
+.table-scrollable > .table-bordered > thead > tr > td:first-child,
+.table-scrollable > .table-bordered > tbody > tr > td:first-child,
+.table-scrollable > .table-bordered > tfoot > tr > td:first-child {
+ border-left: 0;
+}
+
+.table-scrollable > .table-bordered > thead > tr > th:last-child,
+.table-scrollable > .table-bordered > tbody > tr > th:last-child,
+.table-scrollable > .table-bordered > tfoot > tr > th:last-child,
+.table-scrollable > .table-bordered > thead > tr > td:last-child,
+.table-scrollable > .table-bordered > tbody > tr > td:last-child,
+.table-scrollable > .table-bordered > tfoot > tr > td:last-child {
+ border-right: 0;
+}
+
+.table-scrollable > .table-bordered > thead > tr:last-child > th,
+.table-scrollable > .table-bordered > tbody > tr:last-child > th,
+.table-scrollable > .table-bordered > tfoot > tr:last-child > th,
+.table-scrollable > .table-bordered > thead > tr:last-child > td,
+.table-scrollable > .table-bordered > tbody > tr:last-child > td,
+.table-scrollable > .table-bordered > tfoot > tr:last-child > td {
+ border-bottom: 0;
+}
+
+/***
+Responsive Flip Scroll Tables
+***/
+
+.flip-scroll table { width: 100%; }
+
+@media only screen and (max-width: 768px) {
+
+ .flip-scroll .flip-content:after { visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0; }
+ .flip-scroll * html .flip-content { zoom: 1; }
+ .flip-scroll *:first-child+html .flip-content { zoom: 1; }
+
+ .flip-scroll table { width: 100%; border-collapse: collapse; border-spacing: 0; }
+
+ .flip-scroll th,
+ .flip-scroll td { margin: 0; vertical-align: top; }
+ .flip-scroll th {
+ text-align: left;
+ border: 0 !important;
+ border-bottom: 1px solid #ddd !important;
+ border-right: 1px solid #ddd !important;
+ font-size: 13px !important;
+ padding: 5px;
+ width: auto !important;
+ }
+
+ .flip-scroll table { display: block; position: relative; width: 100%; }
+ .flip-scroll thead {
+ display: block;
+ float: left;
+ }
+ .flip-scroll tbody {
+ display: block;
+ width: auto;
+ position: relative;
+ overflow-x: auto;
+ white-space: nowrap;
+ }
+ .flip-scroll thead tr { display: block; }
+ .flip-scroll th { display: block; text-align: right; }
+ .flip-scroll tbody tr { display: inline-block; vertical-align: top; margin-left: -5px; }
+ .flip-scroll td { display: block; min-height: 1.25em; text-align: left; border-top: 0 !important; border-left: 0 !important; border-right: 0 !important}
+
+ /* sort out borders */
+
+ .flip-scroll th { border-bottom: 0; border-left: 0; }
+ .flip-scroll td { border-left: 0; border-right: 0; border-bottom: 0; }
+ .flip-scroll tbody tr { border-left: 1px solid #ddd; }
+ .flip-scroll th:last-child,
+ .flip-scroll td:last-child { border-bottom: 1px solid #ddd; }
+
+}
+
+/***
+UI Loading
+***/
+
+.loading-message {
+ display: inline-block;
+ min-width: 125px;
+ padding: 10px;
+ margin: 0 auto;
+ color: #000 !important;
+ font-size: 13px;
+ font-weight: 400;
+ text-align: center;
+ vertical-align: middle;
+}
+
+.loading-message span {
+ line-height:20px;
+ vertical-align: middle;
+}
+
+.loading-message.loading-message-boxed {
+ border: 1px solid #ddd;
+ background-color: #eee;
+ -webkit-box-shadow: 0 1px 8px rgba(0, 0, 0, 0.1);
+ -moz-box-shadow: 0 1px 8px rgba(0, 0, 0, 0.1);
+ box-shadow: 0 1px 8px rgba(0, 0, 0, 0.1);
+}
+
+.page-loading {
+ position: fixed;
+ top: 50%;
+ left: 50%;
+ min-width: 125px;
+ margin-left: -50px;
+ margin-top: -30px;
+ padding: 7px;
+ text-align: center;
+ color: #333;
+ font-size: 13px;
+ border: 1px solid #ddd;
+ background-color: #eee;
+ vertical-align: middle;
+ -webkit-box-shadow: 0 1px 8px rgba(0, 0, 0, 0.1);
+ -moz-box-shadow: 0 1px 8px rgba(0, 0, 0, 0.1);
+ box-shadow: 0 1px 8px rgba(0, 0, 0, 0.1);
+}
+
+.page-loading span {
+ line-height:20px;
+ vertical-align: middle;
+}
+
+.zteDivWidth
+{
+ width:auto !important
+}
+
+
+
+.nav-load-error {}
+
+.nav-pos-option {}
+
+/*TAB*/
+.nav-tabs{
+border:0;
+}
+.nav-tabs>li.active>a, .nav-tabs>li.active>a:hover, .nav-tabs>li.active>a:focus{
+border:0;
+border-top:3px solid #F3565D;
+}
+.nav-tabs>li>a{
+border-radius:0;
+}
+.nav-tabs>li>a:hover{
+background-color:#f1f3fa;
+border:1Px solid #f1f3fa;
+}
+/*button*/
+.btn{
+min-width: 80px;
+letter-spacing:1px;
+}
+.btnGroup .btn{
+margin-left:15px;
+margin-right:15px;
+}
+.pagination-panel .btn{
+min-width: 4px; }
+/*radius*/
+.radius_l{
+border-radius: 20px;
+}
+.radius_m{
+border-radius: 8px;
+}
+.radius_s{
+border-radius: 3px;
+}
+/*common color*/
+.blue1 {
+ background-color:#5b9bd1;
+ color:#fff;
+}
+.blue1:hover{
+ background-color:#487ca9;
+ color:#fff;
+}
+.blue2{
+ background-color:#57b5e3;
+ color:#fff;
+}
+.blue2:hover{
+ background-color:#43a1cf;
+ color:#fff;
+}
+.red{
+ background-color:#E35B5A;
+ color:#fff;
+}
+.red:hover{
+ background-color:#ad9a4d;
+ color:#fff;
+}
+.green{
+ background-color:#44B6AE;
+}
+.green:hover{
+ background-color:#329d96;
+}
+.yellow{
+ background-color:#C0AF69;
+ color:#fff;
+}
+.yellow:hover{
+ background-color:#d45150;
+ color:#fff;
+}
+.grey{
+ background-color:#e5e5e5;
+ color:#333;
+}
+.grey:hover{
+ background-color:#d8d8d8;
+ color:#333;
+}
+/*Progress Bars*/
+.progress {
+ border: 0;
+ background-image: none !important;
+ filter: none !important;
+ -webkit-box-shadow: none !important;
+ -moz-box-shadow: none !important;
+ box-shadow: none !important;
+
+}
+.form-wizard .steps > li.active > a.step .number{
+background-color:#45B6AF
+}
+.progress > .progress-bar-success{
+background-color:#45B6AF
+}
+/*label*/
+label{
+font-weight:400;
+margin-bottom:15px;
+}
+/**/
+.input-group-btn-vertical.fa{
+font-size:12px;
+}
+.spinner {
+ width: 60px;
+ margin-left:10px;
+ margin-right:30px;
+}
+.spinner input {
+ text-align: right;
+}
+.input-group-btn-vertical {
+ position: relative;
+ white-space: nowrap;
+ width: 1%;
+ vertical-align: middle;
+ display: table-cell;
+}
+.input-group-btn-vertical > .btn {
+ display: block;
+ float: none;
+ width: 100%;
+ max-width: 100%;
+ padding: 6px;
+ margin-left: -1px;
+ position: relative;
+ border-radius: 0;
+}
+.input-group-btn-vertical > .btn{
+ min-width:20px;
+}
+.input-group-btn-vertical > .btn:first-child {
+ border-top-right-radius: 4px;
+}
+.input-group-btn-vertical > .btn:last-child {
+ margin-top: -2px;
+ border-bottom-right-radius: 4px;
+}
+.input-group-btn-vertical i{
+ position: absolute;
+ top: -2px;
+ left: 5px;
+}
+.input-group .form-control{
+height:26px !important;
+}
+
+.about{
+ height:345px;
+ width:528px;
+}
+
+.aboutmain{
+ background-image: url("../img/about/about-bg-light.png");
+}
+
+.aboutinfo{
+ background-image: url("../img/about/about-bg-dark.png");
+}
+
+.about a{
+ color: white;
+
+ margin-left:15px;
+ text-decoration: none;
+}
+
+.about a.about_close{
+ float:right;
+ margin-right:20px;
+ font-size: 1.2em;
+}
+
+.about div{
+ padding-top:7px;
+
+}
+
+.about div.info{
+ float: right;
+ margin-right: 15px;
+ margin-top: 130px;
+ color: white;
+ font-size: 13px;
+}
+
+.about div.info div{
+ margin-left:15px;
+}
+
+.about div.info img{
+ margin-right: 55px;
+}
+
+.aboutDlg{
+ width: 530px;
+ margin-left:150px;
+}
+
+.aboutDlg .dataTable{
+ background-color: white;
+
+}
+
+.aboutDlg table.dataTable .heading>th.sorting_disabled {
+ background-color: white !important;
+}
+
+.aboutDlg #abouttable_wrapper{
+ height:285px;
+ background-color: white;
+ padding:0px;
+ overflow:auto;
+}
+
+.aboutDlg td , .aboutDlg .table thead tr th{
+ font-size:13px;
+ font-weight:100;
+}
+
+.aboutDlg{
+ font-family:microsoft yahei,Arial;
+ letter-spacing:1px;
+}
+
+.aboutDlg tr {
+ height:37px;
+} \ No newline at end of file
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/black.css b/uiframe-iui/src/main/resources/webroot/framework/css/themes/black.css
new file mode 100644
index 00000000..3c0c3107
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/black.css
@@ -0,0 +1,388 @@
+/**
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/***
+Default theme
+***/
+
+/***
+Reset and overrides
+***/
+body {
+ background-color: #3d3d3d !important;
+}
+/***
+Page header
+***/
+.header {
+ filter: none !important;
+ background-image: none !important;
+ background-color: #212121 !important;
+}
+.header .btn-navbar {
+ background-color: #212121 !important;
+}
+.header .navbar-nav .dropdown-toggle:hover,
+.header .navbar-nav .dropdown.open .dropdown-toggle {
+ background-color: #383838 !important;
+}
+.header .navbar-nav li.dropdown .dropdown-toggle i {
+ color: #8a8a8a !important;
+}
+.page-content .page-breadcrumb.breadcrumb{
+background-color:#F5F5F5 !important;
+}
+/***
+Header Search
+***/
+.header .search-form {
+ background-color: #000;
+}
+
+.header .search-form .form-control {
+ color: #999;
+ border: 0;
+ background-color: #000;
+}
+
+.header .search-form .form-control::-webkit-input-placeholder { /* WebKit browsers */
+ color: #777;
+}
+.header .search-form .form-control:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
+ color: #777;
+}
+.header .search-form .form-control::-moz-placeholder { /* Mozilla Firefox 19+ */
+ color: #777;
+}
+.header .search-form .form-control:-ms-input-placeholder { /* Internet Explorer 10+ */
+ color: #777;
+}
+
+.header .search-form .submit {
+ background: url(../../img/search-icon-light.png);
+}
+
+/***
+Hor menu
+***/
+.header .hor-menu ul.nav li a {
+ color: #999;
+}
+
+.header .hor-menu ul.nav li.open > a,
+.header .hor-menu ul.nav li > a:hover,
+.header .hor-menu ul.nav li > a:focus {
+ color: #fff;
+ background: #383838;
+}
+
+.header .hor-menu .dropdown-menu li:hover > a,
+.header .hor-menu ul.nav li.active > a,
+.header .hor-menu ul.nav li.active > a:hover {
+ color: #fff;
+ background: #e02222 !important;
+}
+
+.header .hor-menu ul.nav li.current > a,
+.header .hor-menu ul.nav li.current > a:hover {
+ color: #fff;
+ background: #e02222 !important;
+}
+
+.header .hor-menu .dropdown-menu {
+ background: #383838;
+}
+.header .hor-menu .dropdown-menu li > a {
+ color: #999;
+}
+
+.header .hor-menu .hor-menu-search-form-toggler.off {
+ background: #383838 url(../../img/hor-menu-search-close.png) no-repeat center;
+}
+
+.header .hor-menu .search-form {
+ background:#383838;
+}
+
+.header .hor-menu .search-form form input {
+ color: #999;
+}
+
+.header .hor-menu .search-form .btn {
+ color: #999;
+ background: url(../../img/search-icon.png) no-repeat center;
+}
+
+.header .hor-menu .search-form form input::-webkit-input-placeholder { /* WebKit browsers */
+ color: #999;
+}
+.header .hor-menu .search-form form input:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
+ color: #999;
+}
+.header .hor-menu .search-form form input::-moz-placeholder { /* Mozilla Firefox 19+ */
+ color: #999;
+}
+.header .hor-menu .search-form form input:-ms-input-placeholder { /* Internet Explorer 10+ */
+ color: #999;
+}
+.btn-group .btn.blue.dropdown-toggle{
+ background-color: #3d3d3d !important;
+ color: #fff !important;
+}
+/***
+Mega Menu
+***/
+.mega-menu .mega-menu-submenu {
+ border-right: 1px solid #444;
+}
+.mega-menu .mega-menu-submenu li h3 {
+ color: #fff;
+}
+/***
+Page sidebar
+***/
+.page-sidebar {
+ background-color: #3d3d3d;
+}
+ul.page-sidebar-menu > li > a {
+ border-top: 1px solid #5c5c5c !important;
+ color: #ffffff !important;
+}
+ul.page-sidebar-menu > li:last-child > a {
+ border-bottom: 1px solid transparent !important;
+}
+ul.page-sidebar-menu > li a i {
+ color: #969696;
+}
+ul.page-sidebar-menu > li.open > a,
+ul.page-sidebar-menu > li > a:hover,
+ul.page-sidebar-menu > li:hover > a {
+ background: #303030;
+}
+ul.page-sidebar-menu > li.active > a {
+ background: #e02222 !important;
+ border-top-color: transparent !important;
+ color: #ffffff;
+}
+ul.page-sidebar-menu > li.active > a i {
+ color: #ffffff;
+}
+ul.page-sidebar-menu > li > ul.sub-menu > li:first-child > a {
+ border-top: 0px !important;
+}
+ul.page-sidebar-menu > li > ul.sub-menu > li.active > a,
+ul.page-sidebar-menu > li > ul.sub-menu > li > a:hover {
+ color: #ffffff !important;
+ background: #575757 !important;
+}
+ul.page-sidebar-menu > li > ul.sub-menu > li > a:hover {
+ background: #575757 !important;
+}
+/* 3rd level sub menu */
+ul.page-sidebar-menu > li > ul.sub-menu li > ul.sub-menu > li.active > a,
+ul.page-sidebar-menu > li > ul.sub-menu li > ul.sub-menu > li > a:hover,
+ul.page-sidebar-menu > li > ul.sub-menu li.open > a {
+ color: #ffffff !important;
+ background: #575757 !important;
+}
+/* font color for all sub menu links*/
+ul.page-sidebar-menu li > ul.sub-menu > li > a {
+ color: #bdbdbd;
+}
+/* menu arrows */
+ul.page-sidebar-menu > li > a .arrow:before,
+ul.page-sidebar-menu > li > a .arrow.open:before {
+ color: #7d7d7d !important;
+}
+ul.page-sidebar-menu > li > ul.sub-menu a .arrow:before,
+ul.page-sidebar-menu > li > ul.sub-menu a .arrow.open:before {
+ color: #707070 !important;
+}
+ul.page-sidebar-menu > li > a > .arrow.open:before {
+ color: #8a8a8a !important;
+}
+ul.page-sidebar-menu > li.active > a .arrow:before,
+ul.page-sidebar-menu > li.active > a .arrow.open:before {
+ color: #ffffff !important;
+}
+/* sidebar search */
+.page-sidebar .sidebar-search input {
+ background-color: #242424 !important;
+ color: #7d7d7d;
+}
+.page-sidebar .sidebar-search input::-webkit-input-placeholder {
+ color: #7d7d7d !important;
+}
+.page-sidebar .sidebar-search input:-moz-placeholder {
+ color: #7d7d7d !important;
+}
+.page-sidebar .sidebar-search input:-ms-input-placeholder {
+ color: #7d7d7d !important;
+}
+.page-sidebar .sidebar-search input {
+ background-color: #3d3d3d !important;
+ color: #bfbfbf !important;
+}
+.page-sidebar .sidebar-search .input-box {
+ border-bottom: 1px solid #7d7d7d !important;
+}
+.page-sidebar .sidebar-search .submit {
+ background-image: url(../../img/search-icon.png);
+}
+/***
+Sidebar toggler
+***/
+.sidebar-toggler {
+ background-image: url(../../img/sidebar-toggler.jpg);
+ background-color: #242424;
+}
+/* search box bg color on expanded */
+.page-sidebar-closed .page-sidebar .sidebar-search.open .form-container {
+ background-color: #3d3d3d !important;
+}
+.page-sidebar-closed .page-sidebar .sidebar-search.open .form-container .remove {
+ background-image: url("../../img/sidebar-search-close.png");
+}
+/* sub menu bg color on hover menu item */
+.page-sidebar-closed ul.page-sidebar-menu > li:hover .sub-menu {
+ background-color: #3d3d3d;
+}
+/***
+Footer
+***/
+.footer .footer-inner {
+ color: #999999;
+}
+.footer .footer-tools .go-top {
+ background-color: #4f4f4f;
+}
+.footer .footer-tools .go-top:hover {
+ opacity: 0.7;
+ filter: alpha(opacity=70);
+}
+.footer .footer-tools .go-top i {
+ color: #8a8a8a;
+}
+/***
+Footer Layouts (new in v1.3)
+***/
+/* begin:fixed footer */
+.page-footer-fixed .footer {
+ background-color: #242424;
+}
+.page-footer-fixed .footer .footer-inner {
+ color: #999999;
+}
+.page-footer-fixed .footer .footer-tools .go-top {
+ background-color: #4f4f4f;
+}
+.page-footer-fixed .footer .footer-tools .go-top i {
+ color: #8a8a8a;
+}
+/* end:fixed footer */
+/***
+Gritter Notifications
+***/
+.gritter-top {
+ background: url(../../thirdparty/gritter/images/gritter.png) no-repeat left -30px !important;
+}
+.gritter-bottom {
+ background: url(../../thirdparty/gritter/images/gritter.png) no-repeat left bottom !important;
+}
+.gritter-item {
+ display: block;
+ background: url(../../thirdparty/gritter/images/gritter.png) no-repeat left -40px !important;
+}
+.gritter-close {
+ background: url(../../thirdparty/gritter/images/gritter.png) no-repeat left top !important;
+}
+.gritter-title {
+ text-shadow: none !important;
+ /* Not supported by IE :( */
+
+}
+/* for the light (white) version of the gritter notice */
+.gritter-light .gritter-item,
+.gritter-light .gritter-bottom,
+.gritter-light .gritter-top,
+.gritter-light .gritter-close {
+ background-image: url(../../thirdparty/gritter/images/gritter-light.png) !important;
+}
+.gritter-item-wrapper a {
+ color: #18a5ed;
+}
+.gritter-item-wrapper a:hover {
+ color: #0b6694;
+}
+/* begin: boxed page */
+@media (min-width: 992px) {
+ .page-boxed {
+ background-color: #2e2e2e !important;
+ }
+ .page-boxed .page-container {
+ background-color: #3d3d3d;
+ border-left: 1px solid #5e5e5e;
+ border-bottom: 1px solid #5e5e5e;
+ }
+ .page-boxed.page-sidebar-reversed .page-container {
+ border-left: 0;
+ border-right: 1px solid #5e5e5e;
+ }
+ .page-boxed.page-sidebar-fixed .page-container {
+ border-left: 0;
+ border-bottom: 0;
+ }
+ .page-boxed.page-sidebar-reversed.page-sidebar-fixed .page-container {
+ border-left: 0;
+ border-right: 0;
+ border-bottom: 0;
+ }
+ .page-boxed.page-sidebar-fixed .page-sidebar {
+ border-left: 1px solid #5e5e5e;
+ }
+ .page-boxed.page-sidebar-reversed.page-sidebar-fixed .page-sidebar {
+ border-right: 1px solid #5e5e5e;
+ border-left: 0;
+ }
+ .page-boxed.page-sidebar-fixed.page-footer-fixed .footer {
+ background-color: #2e2e2e !important;
+ }
+}
+/* end: boxed page */
+/***
+Landscape phone to portrait tablet
+***/
+@media (max-width: 991px) {
+ /***
+ page sidebar
+ ***/
+ .page-sidebar {
+ background-color: #292929 !important;
+ }
+ ul.page-sidebar-menu > li > a {
+ border-top: 1px solid #4a4a4a !important;
+ }
+ ul.page-sidebar-menu > li:last-child > a {
+ border-bottom: 0 !important;
+ }
+ .page-sidebar .sidebar-search input {
+ background-color: #292929 !important;
+ }
+ ul.page-sidebar-menu > li.open > a,
+ ul.page-sidebar-menu > li > a:hover,
+ ul.page-sidebar-menu > li:hover > a {
+ background: #1e1e1e;
+ }
+}
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/black.css.gz b/uiframe-iui/src/main/resources/webroot/framework/css/themes/black.css.gz
new file mode 100644
index 00000000..1db015e4
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/black.css.gz
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/black_ifrm.css b/uiframe-iui/src/main/resources/webroot/framework/css/themes/black_ifrm.css
new file mode 100644
index 00000000..a612cc57
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/black_ifrm.css
@@ -0,0 +1,207 @@
+/**
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/***
+light_ifrm theme
+***/
+td>a>span[class^="ict-"], td>a>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+td>div>span[class^="ict-"], td>div>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+td>div>span>span[class^="ict-"], td>div>span>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+td>span>span[class^="ict-"], td>span>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+/* button style*/
+.buttonRounded,
+.buttonRoundedOver,
+.buttonRoundedFocused,
+.buttonRoundedFocusedOver,
+.buttonRoundedDown,
+.buttonRoundedFocusedDown,
+.buttonRoundedSelected,
+.buttonRoundedSelectedFocused,
+.buttonRoundedSelectedDown,
+.buttonRoundedSelectedFocusedDown,
+.buttonRoundedSelectedOver,
+.buttonRoundedSelectedFocusedOver,
+.buttonRoundedDisabled,
+.buttonRoundedSelectedDisabled {
+ background-color: #3d3d3d;
+ color: #fff;
+ border: 0px solid #b15a59;
+ border-radius: 0px;
+ font-family: Arial, Verdana, sans-serif;
+ font-size: 12px;
+ /*padding: 0 3px;*/
+ padding-left:7px !important;
+ padding-right:7px !important;
+ height:30px !important;
+}
+.buttonRoundedDisabled, .buttonRoundedSelectedDisabled{
+ background-color: #f0f0f0;
+ color: #dadada;
+ opacity: 1;
+}
+.buttonRoundedOver,
+.buttonRoundedFocusedOver,
+.buttonRoundedSelectedFocused,
+.buttonRoundedSelectedFocusedOver,
+.buttonRoundedDown,
+.buttonRoundedFocusedDown {
+ background-color: #212121;
+ height:30px !important;
+}
+
+.menuButton,
+.menuButtonOver,
+.menuButtonDown,
+.menuButtonDisabled,
+.menuButtonFocused,
+.menuButtonFocusedDown,
+.menuButtonFocusedOver,
+.menuButtonSelected,
+.menuButtonSelectedDown,
+.menuButtonSelectedOver,
+.menuButtonSelectedDisabled {
+ background-color: #3d3d3d;
+ border: 0px solid #ababab;
+ color: #fff;
+ font-family: Arial, Verdana, sans-serif;
+ font-size: 12px;
+ padding-left: 7px !important;
+ padding-right: 7px !important;
+ height:30px !important;
+}
+.menuButtonOver {
+ background-color: #212121;
+ }
+.menuButtonDisabled{
+ background-color: #f0f0f0;
+ color: #dadada;
+ opacity: 1;
+}
+.buttonTitle,
+.buttonTitleOver,
+.buttonTitleDown,
+.buttonTitleSelected,
+.buttonTitleFocused,
+.buttonTitleSelectedFocused,
+.buttonTitleSelectedOver,
+.buttonTitleFocusedOver,
+.buttonTitleSelectedFocusedOver,
+.buttonTitleSelectedDown,
+.buttonTitleFocusedDown,
+.buttonTitleSelectedFocusedDown,
+.buttonTitleDisabled,
+.buttonTitleSelectedDisabled {
+ color: #fff ;
+ }
+.buttonTitleDisabled{
+ background-color: #f0f0f0;
+ color: #dadada;
+ opacity: 1;
+}
+ /* windowBody dialogBody Style */
+ .windowBody,
+.dialogBody {
+ background-color: white;
+ border: 1px solid #d1d1d1;
+ border-top: 0;
+}
+.windowHeader,
+.dialogHeader {
+ background-color: #3d3d3d;
+ padding: 0;
+}
+/* sectionHeader Style */
+.sectionHeaderopened {
+ background-color: #3d3d3d;
+ }
+ .sectionHeaderclosed {
+ background-color: #262626;
+ }
+
+#dt_example h1{
+color:#3d3d3d;
+font-weight:600 !important;
+}
+
+ /*cell style*/
+.tallCellOver,
+.tallCellOverDark {
+ background-color: #ffede4;
+ border-bottom: 1px solid #ffede4;
+ border-top: 1px solid #ffede4;
+ }
+.tallCellSelected,
+.tallCellSelectedDark {
+ background: #f8dddd;
+ border-bottom: 1px solid #f8dddd;
+ border-top: 1px solid #f8dddd;
+ }
+.tallCellSelectedOver,
+.tallCellSelectedOverDark {
+ background: #f8dddd;
+ border-bottom: 1px solid #f8dddd;
+ border-top: 1px solid #f8dddd;
+ }
+.imgHeaderButtonOver,
+.imgHeaderButtonDown,
+.headerButtonOver,
+.headerButtonDown,
+.sorterButtonOver,
+.sorterButtonDown {
+ background-color: #c4d7e2;
+ }
+ .cellSelected,
+.cellSelectedDark,
+.specialColSelected,
+.recordSummaryCellSelected,
+.recordSummaryCellSelectedDark {
+ background: #f8dddd !important;
+ border-bottom: 1px solid #f8dddd;
+ border-top: 1px solid #f8dddd;
+ }
+.cellSelectedOver,
+.cellSelectedOverDark,
+.specialColSelectedOver,
+.recordSummaryCellSelectedOver,
+.recordSummaryCellSelectedOverDark {
+ background: #f8dddd !important;
+ border-bottom: 1px solid #f8dddd;
+ border-top: 1px solid #f8dddd;
+}
+.cellOver,
+.cellOverDark,
+.specialColOver,
+.recordSummaryCellOver,
+.recordSummaryCellOverDark {
+ background: #ffede4 !important;
+ border-bottom: 1px solid #ffede4;
+ border-top: 1px solid #ffede4;
+ }
+.treeCellOver,
+.treeCellOverDark {
+ background-color: #ffede4;
+}
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/black_ifrm.css.gz b/uiframe-iui/src/main/resources/webroot/framework/css/themes/black_ifrm.css.gz
new file mode 100644
index 00000000..d1c31566
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/black_ifrm.css.gz
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/blue.css b/uiframe-iui/src/main/resources/webroot/framework/css/themes/blue.css
new file mode 100644
index 00000000..85620862
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/blue.css
@@ -0,0 +1,374 @@
+/**
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/***
+Blue theme
+***/
+/***
+Reset and overrides
+***/
+body {
+ background-color: #1570a6 !important;
+}
+/***
+Page header
+***/
+.header {
+ filter: none !important;
+ background-image: none !important;
+ background-color: #0f4e74 !important;
+}
+.header .btn-navbar {
+ background-color: #0f4e74 !important;
+}
+.header .navbar-nav .dropdown-toggle:hover,
+.header .navbar-nav .dropdown.open .dropdown-toggle {
+ color: #fff;
+ background-color: #146a9d !important;
+}
+.header .navbar-nav li.dropdown .dropdown-toggle i {
+ color: #68bbec !important;
+}
+.page-content .page-breadcrumb.breadcrumb{
+background-color:#F5F5F5 !important;
+}
+/***
+Header Search
+***/
+.header .search-form {
+ background-color: #0B4263;
+}
+
+.header .search-form .form-control{
+ color: #68bbec;
+ border: 0;
+ background-color: #0B4263;
+}
+
+.header .search-form .submit {
+ background: url(../../img/search-icon-blue.png);
+}
+
+/***
+Hor menu
+***/
+.header .hor-menu ul.nav li a {
+ color: #ccc;
+}
+
+.header .hor-menu ul.nav li.open > a,
+.header .hor-menu ul.nav li > a:hover,
+.header .hor-menu ul.nav li > a:focus {
+ color: #fff;
+ background: #146a9d;
+}
+
+.header .hor-menu .dropdown-menu li:hover > a,
+.header .hor-menu ul.nav li.active > a,
+.header .hor-menu ul.nav li.active > a:hover {
+ color: #fff;
+ background: #e02222 !important;
+}
+
+.header .hor-menu ul.nav li.current > a,
+.header .hor-menu ul.nav li.current > a:hover {
+ color: #fff;
+ background: #e02222 !important;
+}
+
+.header .hor-menu .dropdown-menu {
+ background: #146a9d;
+}
+.header .hor-menu .dropdown-menu li > a {
+ color: #ccc;
+}
+
+.header .hor-menu .hor-menu-search-form-toggler.off {
+ background: #146a9d url(../../img/hor-menu-search-close-white.png) no-repeat center;
+}
+
+.header .hor-menu .search-form {
+ background:#146a9d;
+}
+
+.header .hor-menu .search-form form input {
+ color: #ccc;
+}
+
+.header .hor-menu .search-form .btn {
+ color: #ccc;
+ background: url(../../img/search-icon-white.png) no-repeat center;
+}
+
+.header .hor-menu .search-form form input::-webkit-input-placeholder { /* WebKit browsers */
+ color: #ccc;
+}
+.header .hor-menu .search-form form input:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
+ color: #ccc;
+}
+.header .hor-menu .search-form form input::-moz-placeholder { /* Mozilla Firefox 19+ */
+ color: #ccc;
+}
+.header .hor-menu .search-form form input:-ms-input-placeholder { /* Internet Explorer 10+ */
+ color: #ccc;
+}
+
+/***
+Mega Menu
+***/
+.mega-menu .mega-menu-submenu {
+ border-right: 1px solid #1876AD;
+}
+
+.mega-menu .mega-menu-submenu li h3 {
+ color: #fff;
+}
+
+/***
+Page sidebar
+***/
+.page-sidebar {
+ background-color: #1570a6;
+}
+ul.page-sidebar-menu > li > a {
+ border-top: 1px solid #1c95dc !important;
+ color: #ffffff !important;
+}
+ul.page-sidebar-menu > li:last-child > a {
+ border-bottom: 1px solid transparent !important;
+}
+ul.page-sidebar-menu > li a i {
+ color: #7fc5ef;
+}
+ul.page-sidebar-menu > li.open > a,
+ul.page-sidebar-menu > li > a:hover,
+ul.page-sidebar-menu > li:hover > a {
+ background: #12618f;
+}
+ul.page-sidebar-menu > li.active > a {
+ background: #cc1d1d !important;
+ border-top-color: transparent !important;
+ color: #ffffff;
+}
+ul.page-sidebar-menu > li.active > a i {
+ color: #ffffff;
+}
+ul.page-sidebar-menu > li > ul.sub-menu > li:first-child > a {
+ border-top: 0px !important;
+}
+ul.page-sidebar-menu > li > ul.sub-menu > li.active > a,
+ul.page-sidebar-menu > li > ul.sub-menu > li > a:hover {
+ color: #ffffff !important;
+ background: #1b8fd3 !important;
+}
+ul.page-sidebar-menu > li > ul.sub-menu > li > a:hover {
+ background: #1b8fd3 !important;
+}
+/* 3rd level sub menu */
+ul.page-sidebar-menu > li > ul.sub-menu li > ul.sub-menu > li.active > a,
+ul.page-sidebar-menu > li > ul.sub-menu li > ul.sub-menu > li > a:hover,
+ul.page-sidebar-menu > li > ul.sub-menu li.open > a {
+ color: #ffffff !important;
+ background: #1b8fd3 !important;
+}
+/* font color for all sub menu links*/
+ul.page-sidebar-menu li > ul.sub-menu > li > a {
+ color: #c3e4f7;
+}
+/* menu arrows */
+ul.page-sidebar-menu > li > a .arrow:before,
+ul.page-sidebar-menu > li > a .arrow.open:before {
+ color: #51b1e9 !important;
+}
+ul.page-sidebar-menu > li > ul.sub-menu a .arrow:before,
+ul.page-sidebar-menu > li > ul.sub-menu a .arrow.open:before {
+ color: #3ba6e6 !important;
+}
+ul.page-sidebar-menu > li > a > .arrow.open:before {
+ color: #68bbec !important;
+}
+ul.page-sidebar-menu > li.active > a .arrow:before,
+ul.page-sidebar-menu > li.active > a .arrow.open:before {
+ color: #ffffff !important;
+}
+/* sidebar search */
+.page-sidebar .sidebar-search input {
+ background-color: #0f5179 !important;
+ color: #51b1e9;
+}
+.page-sidebar .sidebar-search input::-webkit-input-placeholder {
+ color: #51b1e9 !important;
+}
+.page-sidebar .sidebar-search input:-moz-placeholder {
+ color: #51b1e9 !important;
+}
+.page-sidebar .sidebar-search input:-ms-input-placeholder {
+ color: #51b1e9 !important;
+}
+.page-sidebar .sidebar-search input {
+ background-color: #1570a6 !important;
+ color: #bfbfbf !important;
+}
+.page-sidebar .sidebar-search .input-box {
+ border-bottom: 1px solid #51b1e9 !important;
+}
+.page-sidebar .sidebar-search .submit {
+ background-image: url(../../img/search-icon-blue.png);
+}
+/***
+Sidebar toggler
+***/
+.sidebar-toggler {
+ background-image: url(../../img/sidebar-toggler-blue.jpg);
+ background-color: #0f5179;
+}
+/* search box bg color on expanded */
+.page-sidebar-closed .page-sidebar .sidebar-search.open .form-container {
+ background-color: #1570a6 !important;
+}
+.page-sidebar-closed .page-sidebar .sidebar-search.open .form-container .remove {
+ background-image: url("../../img/sidebar-search-close-blue.png");
+}
+/* sub menu bg color on hover menu item */
+.page-sidebar-closed ul.page-sidebar-menu > li:hover .sub-menu {
+ background-color: #1570a6;
+}
+/***
+Footer
+***/
+.footer .footer-inner {
+ color: #68bbec;
+}
+.footer .footer-tools .go-top {
+ background-color: #1985c6;
+}
+.footer .footer-tools .go-top:hover {
+ opacity: 0.7;
+ filter: alpha(opacity=70);
+}
+.footer .footer-tools .go-top i {
+ color: #68bbec;
+}
+/***
+Footer Layouts (new in v1.3)
+***/
+/* begin:fixed footer */
+.page-footer-fixed .footer {
+ background-color: #0f5179;
+}
+.page-footer-fixed .footer .footer-inner {
+ color: #68bbec;
+}
+.page-footer-fixed .footer .footer-tools .go-top {
+ background-color: #1985c6;
+}
+.page-footer-fixed .footer .footer-tools .go-top i {
+ color: #68bbec;
+}
+/* end:fixed footer */
+/***
+Gritter Notifications
+***/
+.gritter-top {
+ background: url(../../thirdparty/gritter/images/gritter-blue.png) no-repeat left -30px !important;
+}
+.gritter-bottom {
+ background: url(../../thirdparty/gritter/images/gritter-blue.png) no-repeat left bottom !important;
+}
+.gritter-item {
+ display: block;
+ background: url(../../thirdparty/gritter/images/gritter-blue.png) no-repeat left -40px !important;
+}
+.gritter-close {
+ background: url(../../thirdparty/gritter/images/gritter-blue.png) no-repeat left top !important;
+}
+.gritter-title {
+ text-shadow: none !important;
+ /* Not supported by IE :( */
+
+}
+/* for the light (white) version of the gritter notice */
+.gritter-light .gritter-item,
+.gritter-light .gritter-bottom,
+.gritter-light .gritter-top,
+.gritter-light .gritter-close {
+ background-image: url(../../thirdparty/gritter/images/gritter-light.png) !important;
+}
+.gritter-item-wrapper a {
+ color: #18a5ed;
+}
+.gritter-item-wrapper a:hover {
+ color: #0b6694;
+}
+/* begin: boxed page */
+@media (min-width: 992px) {
+ .page-boxed {
+ background-color: #125e8b !important;
+ }
+ .page-boxed .page-container {
+ background-color: #1570a6;
+ border-left: 1px solid #1c98e1;
+ border-bottom: 1px solid #1c98e1;
+ }
+ .page-boxed.page-sidebar-reversed .page-container {
+ border-left: 0;
+ border-right: 1px solid #1c98e1;
+ }
+ .page-boxed.page-sidebar-fixed .page-container {
+ border-left: 0;
+ border-bottom: 0;
+ }
+ .page-boxed.page-sidebar-reversed.page-sidebar-fixed .page-container {
+ border-left: 0;
+ border-right: 0;
+ border-bottom: 0;
+ }
+ .page-boxed.page-sidebar-fixed .page-sidebar {
+ border-left: 1px solid #1c98e1;
+ }
+ .page-boxed.page-sidebar-reversed.page-sidebar-fixed .page-sidebar {
+ border-right: 1px solid #1c98e1;
+ border-left: 0;
+ }
+ .page-boxed.page-sidebar-fixed.page-footer-fixed .footer {
+ background-color: #125e8b !important;
+ }
+}
+/* end: boxed page */
+/***
+Landscape phone to portrait tablet
+***/
+@media (max-width: 991px) {
+ /***
+ page sidebar
+ ***/
+ .page-sidebar {
+ background-color: #105882 !important;
+ }
+ ul.page-sidebar-menu > li > a {
+ border-top: 1px solid #187fbd !important;
+ }
+ ul.page-sidebar-menu > li:last-child > a {
+ border-bottom: 0 !important;
+ }
+ .page-sidebar .sidebar-search input {
+ background-color: #105882 !important;
+ }
+ ul.page-sidebar-menu > li.open > a,
+ ul.page-sidebar-menu > li > a:hover,
+ ul.page-sidebar-menu > li:hover > a {
+ background: #0e4b70;
+ }
+}
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/blue.css.gz b/uiframe-iui/src/main/resources/webroot/framework/css/themes/blue.css.gz
new file mode 100644
index 00000000..918402c6
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/blue.css.gz
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/blue_ifrm.css b/uiframe-iui/src/main/resources/webroot/framework/css/themes/blue_ifrm.css
new file mode 100644
index 00000000..a32ad505
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/blue_ifrm.css
@@ -0,0 +1,207 @@
+/**
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/***
+light_ifrm theme
+***/
+td>a>span[class^="ict-"], td>a>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+td>div>span[class^="ict-"], td>div>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+td>div>span>span[class^="ict-"], td>div>span>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+td>span>span[class^="ict-"], td>span>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+/* button style*/
+.buttonRounded,
+.buttonRoundedOver,
+.buttonRoundedFocused,
+.buttonRoundedFocusedOver,
+.buttonRoundedDown,
+.buttonRoundedFocusedDown,
+.buttonRoundedSelected,
+.buttonRoundedSelectedFocused,
+.buttonRoundedSelectedDown,
+.buttonRoundedSelectedFocusedDown,
+.buttonRoundedSelectedOver,
+.buttonRoundedSelectedFocusedOver,
+.buttonRoundedDisabled,
+.buttonRoundedSelectedDisabled {
+ background-color: #3f9ed5;
+ color: #fff;
+ border: 0px solid #b15a59;
+ border-radius: 0px;
+ font-family: Arial, Verdana, sans-serif;
+ font-size: 12px;
+ /*padding: 0 3px;*/
+ padding-left:7px !important;
+ padding-right:7px !important;
+ height:30px !important;
+}
+.buttonRoundedDisabled, .buttonRoundedSelectedDisabled{
+ background-color: #f0f0f0;
+ color: #dadada;
+ opacity: 1;
+}
+.buttonRoundedOver,
+.buttonRoundedFocusedOver,
+.buttonRoundedSelectedFocused,
+.buttonRoundedSelectedFocusedOver,
+.buttonRoundedDown,
+.buttonRoundedFocusedDown {
+ background-color: #398ec0;
+ height:30px !important;
+}
+
+.menuButton,
+.menuButtonOver,
+.menuButtonDown,
+.menuButtonDisabled,
+.menuButtonFocused,
+.menuButtonFocusedDown,
+.menuButtonFocusedOver,
+.menuButtonSelected,
+.menuButtonSelectedDown,
+.menuButtonSelectedOver,
+.menuButtonSelectedDisabled {
+ background-color: #3f9ed5;
+ border: 0px solid #ababab;
+ color: #fff;
+ font-family: Arial, Verdana, sans-serif;
+ font-size: 12px;
+ padding-left: 7px !important;
+ padding-right: 7px !important;
+ height:30px !important;
+}
+.menuButtonOver {
+ background-color: #398ec0;
+ }
+.menuButtonDisabled{
+ background-color: #f0f0f0;
+ color: #dadada;
+ opacity: 1;
+}
+
+ .buttonTitle,
+.buttonTitleOver,
+.buttonTitleDown,
+.buttonTitleSelected,
+.buttonTitleFocused,
+.buttonTitleSelectedFocused,
+.buttonTitleSelectedOver,
+.buttonTitleFocusedOver,
+.buttonTitleSelectedFocusedOver,
+.buttonTitleSelectedDown,
+.buttonTitleFocusedDown,
+.buttonTitleSelectedFocusedDown,
+.buttonTitleDisabled,
+.buttonTitleSelectedDisabled {
+ color: #fff ;
+ }
+ .buttonTitleDisabled{
+ background-color: #f0f0f0;
+ color: #dadada;
+ opacity: 1;
+}
+ /* windowBody dialogBody Style */
+ .windowBody,
+.dialogBody {
+ background-color: white;
+ border: 1px solid #3f9ed5;
+ border-top: 0;
+}
+.windowHeader,
+.dialogHeader {
+ background-color: #3f9ed5;
+ padding: 0;
+}
+/* sectionHeader Style */
+.sectionHeaderopened {
+ background-color: #3f9ed5;
+ }
+ .sectionHeaderclosed {
+ background-color: #52ade2;
+ }
+
+#dt_example h1{
+color:#438eb9;
+font-weight:600 !important;
+}
+ /*cell style*/
+.tallCellOver,
+.tallCellOverDark {
+ background-color: #d9e3e8;
+ border-bottom: 1px solid #d9e3e8;
+ border-top: 1px solid #d9e3e8;
+ }
+.tallCellSelected,
+.tallCellSelectedDark {
+ background: #c4d7e2;
+ border-bottom: 1px solid #c4d7e2;
+ border-top: 1px solid #c4d7e2;
+ }
+.tallCellSelectedOver,
+.tallCellSelectedOverDark {
+ background: #c4d7e2;
+ border-bottom: 1px solid #c4d7e2;
+ border-top: 1px solid #c4d7e2;
+ }
+.imgHeaderButtonOver,
+.imgHeaderButtonDown,
+.headerButtonOver,
+.headerButtonDown,
+.sorterButtonOver,
+.sorterButtonDown {
+ background-color: #c4d7e2;
+ }
+.cellSelected,
+.cellSelectedDark,
+.specialColSelected,
+.recordSummaryCellSelected,
+.recordSummaryCellSelectedDark {
+ background: #c4d7e2 !important;
+ border-bottom: 1px solid #c4d7e2;
+ border-top: 1px solid #c4d7e2;
+ }
+.cellSelectedOver,
+.cellSelectedOverDark,
+.specialColSelectedOver,
+.recordSummaryCellSelectedOver,
+.recordSummaryCellSelectedOverDark {
+ background: #c4d7e2 !important;
+ border-bottom: 1px solid #c4d7e2;
+ border-top: 1px solid #c4d7e2;
+}
+.cellOver,
+.cellOverDark,
+.specialColOver,
+.recordSummaryCellOver,
+.recordSummaryCellOverDark {
+ background: #d9e3e8 !important;
+ border-bottom: 1px solid #d9e3e8;
+ border-top: 1px solid #d9e3e8;
+ }
+.treeCellOver,
+.treeCellOverDark {
+ background-color: #d9e3e8;
+}
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/blue_ifrm.css.gz b/uiframe-iui/src/main/resources/webroot/framework/css/themes/blue_ifrm.css.gz
new file mode 100644
index 00000000..935173ac
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/blue_ifrm.css.gz
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/brown.css b/uiframe-iui/src/main/resources/webroot/framework/css/themes/brown.css
new file mode 100644
index 00000000..7b750899
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/brown.css
@@ -0,0 +1,376 @@
+/**
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/***
+Brown theme
+***/
+/***
+Reset and overrides
+***/
+body {
+ background-color: #623f18 !important;
+}
+/***
+Page header
+***/
+.header {
+ filter: none !important;
+ background-image: none !important;
+ background-color: #35220d !important;
+}
+.header .btn-navbar {
+ background-color: #35220d !important;
+}
+.header .navbar-nav .dropdown-toggle:hover,
+.header .navbar-nav .dropdown.open .dropdown-toggle {
+ background-color: #5a3a16 !important;
+}
+.header .navbar-nav li.dropdown .dropdown-toggle i {
+ color: #d18d42 !important;
+}
+.btn-group .btn.blue.dropdown-toggle{
+background-color: #8d6a43 !important;
+}
+.page-content .page-breadcrumb.breadcrumb{
+background-color:#F5F5F5 !important;
+}
+/***
+Header Search
+***/
+.header .search-form {
+ background-color: #241709;
+}
+
+.header .search-form .form-control{
+ color: #ccc;
+ border: 0;
+ background-color: #241709;
+}
+
+.header .search-form .submit {
+ background: url(../../img/search-icon-brown.png);
+}
+/***
+Hor menu
+***/
+.header .hor-menu ul.nav li a {
+ color: #ccc;
+}
+
+.header .hor-menu ul.nav li.open > a,
+.header .hor-menu ul.nav li > a:hover,
+.header .hor-menu ul.nav li > a:focus {
+ color: #fff;
+ background: #5a3a16;
+}
+
+.header .hor-menu .dropdown-menu li:hover > a,
+.header .hor-menu ul.nav li.active > a,
+.header .hor-menu ul.nav li.active > a:hover {
+ color: #fff;
+ background: #e02222 !important;
+}
+
+.header .hor-menu ul.nav li.current > a,
+.header .hor-menu ul.nav li.current > a:hover {
+ color: #fff;
+ background: #e02222 !important;
+}
+
+
+.header .hor-menu .dropdown-menu {
+ background: #5a3a16;
+}
+.header .hor-menu .dropdown-menu li > a {
+ color: #ccc;
+}
+
+.header .hor-menu .hor-menu-search-form-toggler.off {
+ background: #5a3a16 url(../../img/hor-menu-search-close-white.png) no-repeat center;
+}
+
+.header .hor-menu .search-form {
+ background:#5a3a16;
+}
+
+.header .hor-menu .search-form form input {
+ color: #ccc;
+}
+
+.header .hor-menu .search-form .btn {
+ color: #ccc;
+ background: url(../../img/search-icon-white.png) no-repeat center;
+}
+
+.header .hor-menu .search-form form input::-webkit-input-placeholder { /* WebKit browsers */
+ color: #ccc;
+}
+.header .hor-menu .search-form form input:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
+ color: #ccc;
+}
+.header .hor-menu .search-form form input::-moz-placeholder { /* Mozilla Firefox 19+ */
+ color: #ccc;
+}
+.header .hor-menu .search-form form input:-ms-input-placeholder { /* Internet Explorer 10+ */
+ color: #ccc;
+}
+
+/***
+Mega Menu
+***/
+.mega-menu .mega-menu-submenu {
+ border-right: 1px solid #6B451B;
+}
+
+.mega-menu .mega-menu-submenu li h3 {
+ color: #fff;
+}
+
+/***
+Page sidebar
+***/
+.page-sidebar {
+ background-color: #623f18;
+}
+ul.page-sidebar-menu > li > a {
+ border-top: 1px solid #935f24 !important;
+ color: #ffffff !important;
+}
+ul.page-sidebar-menu > li:last-child > a {
+ border-bottom: 1px solid transparent !important;
+}
+ul.page-sidebar-menu > li a i {
+ color: #9a6d3a;
+}
+ul.page-sidebar-menu > li.open > a,
+ul.page-sidebar-menu > li > a:hover,
+ul.page-sidebar-menu > li:hover > a {
+ background: #4e3112;
+}
+ul.page-sidebar-menu > li.active > a {
+ background: #4e3112 !important;
+ border-top-color: transparent !important;
+ color: #ffffff;
+}
+ul.page-sidebar-menu > li.active > a i {
+ color: #ffffff;
+}
+ul.page-sidebar-menu > li > ul.sub-menu > li:first-child > a {
+ border-top: 0px !important;
+}
+ul.page-sidebar-menu > li > ul.sub-menu > li.active > a,
+ul.page-sidebar-menu > li > ul.sub-menu > li > a:hover {
+ color: #ffffff !important;
+ background: #8b5922 !important;
+}
+ul.page-sidebar-menu > li > ul.sub-menu > li > a:hover {
+ background: #8b5922 !important;
+}
+/* 3rd level sub menu */
+ul.page-sidebar-menu > li > ul.sub-menu li > ul.sub-menu > li.active > a,
+ul.page-sidebar-menu > li > ul.sub-menu li > ul.sub-menu > li > a:hover,
+ul.page-sidebar-menu > li > ul.sub-menu li.open > a {
+ color: #ffffff !important;
+ background: #8b5922 !important;
+}
+/* font color for all sub menu links*/
+ul.page-sidebar-menu li > ul.sub-menu > li > a {
+ color: #e5bf94;
+}
+/* menu arrows */
+ul.page-sidebar-menu > li > a .arrow:before,
+ul.page-sidebar-menu > li > a .arrow.open:before {
+ color: #c88131 !important;
+}
+ul.page-sidebar-menu > li > ul.sub-menu a .arrow:before,
+ul.page-sidebar-menu > li > ul.sub-menu a .arrow.open:before {
+ color: #b4742c !important;
+}
+ul.page-sidebar-menu > li > a > .arrow.open:before {
+ color: #d18d42 !important;
+}
+ul.page-sidebar-menu > li.active > a .arrow:before,
+ul.page-sidebar-menu > li.active > a .arrow.open:before {
+ color: #ffffff !important;
+}
+/* sidebar search */
+.page-sidebar .sidebar-search input {
+ background-color: #39250e !important;
+ color: #b18d65;
+}
+.page-sidebar .sidebar-search input::-webkit-input-placeholder {
+ color: #b18d65 !important;
+}
+.page-sidebar .sidebar-search input:-moz-placeholder {
+ color: #b18d65 !important;
+}
+.page-sidebar .sidebar-search input:-ms-input-placeholder {
+ color: #b18d65 !important;
+}
+.page-sidebar .sidebar-search input {
+ background-color: #623f18 !important;
+ color: #b18d65 !important;
+}
+.page-sidebar .sidebar-search .input-box {
+ border-bottom: 1px solid #845f36 !important;
+}
+.page-sidebar .sidebar-search .submit {
+ background-image: url(../../img/search-icon-brown.png);
+}
+/***
+Sidebar toggler
+***/
+.sidebar-toggler {
+ background-image: url(../../img/sidebar-toggler-brown.jpg);
+ background-color: #39250e;
+}
+/* search box bg color on expanded */
+.page-sidebar-closed .page-sidebar .sidebar-search.open .form-container {
+ background-color: #623f18 !important;
+}
+.page-sidebar-closed .page-sidebar .sidebar-search.open .form-container .remove {
+ background-image: url("../../img/sidebar-search-close-brown.png");
+}
+/* sub menu bg color on hover menu item */
+.page-sidebar-closed ul.page-sidebar-menu > li:hover .sub-menu {
+ background-color: #623f18;
+}
+/***
+Footer
+***/
+.footer .footer-inner {
+ color: #999999;
+}
+.footer .footer-tools .go-top {
+ background-color: #7f511f;
+}
+.footer .footer-tools .go-top:hover {
+ opacity: 0.7;
+ filter: alpha(opacity=70);
+}
+.footer .footer-tools .go-top i {
+ color: #d18d42;
+}
+/***
+Footer Layouts (new in v1.3)
+***/
+/* begin:fixed footer */
+.page-footer-fixed .footer {
+ background-color: #39250e;
+}
+.page-footer-fixed .footer .footer-inner {
+ color: #999999;
+}
+.page-footer-fixed .footer .footer-tools .go-top {
+ background-color: #7f511f;
+}
+.page-footer-fixed .footer .footer-tools .go-top i {
+ color: #d18d42;
+}
+/* end:fixed footer */
+/***
+Gritter Notifications
+***/
+.gritter-top {
+ background: url(../../thirdparty/gritter/images/gritter-brown.png) no-repeat left -30px !important;
+}
+.gritter-bottom {
+ background: url(../../thirdparty/gritter/images/gritter-brown.png) no-repeat left bottom !important;
+}
+.gritter-item {
+ display: block;
+ background: url(../../thirdparty/gritter/images/gritter-brown.png) no-repeat left -40px !important;
+}
+.gritter-close {
+ background: url(../../thirdparty/gritter/images/gritter-brown.png) no-repeat left top !important;
+}
+.gritter-title {
+ text-shadow: none !important;
+ /* Not supported by IE :( */
+
+}
+/* for the light (white) version of the gritter notice */
+.gritter-light .gritter-item,
+.gritter-light .gritter-bottom,
+.gritter-light .gritter-top,
+.gritter-light .gritter-close {
+ background-image: url(../../thirdparty/gritter/images/gritter-light.png) !important;
+}
+.gritter-item-wrapper a {
+ color: #b18d65;
+}
+.gritter-item-wrapper a:hover {
+ color: #755a3b;
+}
+/* begin: boxed page */
+@media (min-width: 992px) {
+ .page-boxed {
+ background-color: #492f12 !important;
+ }
+ .page-boxed .page-container {
+ background-color: #623f18;
+ border-left: 1px solid #976125;
+ border-bottom: 1px solid #976125;
+ }
+ .page-boxed.page-sidebar-reversed .page-container {
+ border-left: 0;
+ border-right: 1px solid #976125;
+ }
+ .page-boxed.page-sidebar-fixed .page-container {
+ border-left: 0;
+ border-bottom: 0;
+ }
+ .page-boxed.page-sidebar-reversed.page-sidebar-fixed .page-container {
+ border-left: 0;
+ border-right: 0;
+ border-bottom: 0;
+ }
+ .page-boxed.page-sidebar-fixed .page-sidebar {
+ border-left: 1px solid #976125;
+ }
+ .page-boxed.page-sidebar-reversed.page-sidebar-fixed .page-sidebar {
+ border-right: 1px solid #976125;
+ border-left: 0;
+ }
+ .page-boxed.page-sidebar-fixed.page-footer-fixed .footer {
+ background-color: #492f12 !important;
+ }
+}
+/* end: boxed page */
+/***
+Landscape phone to portrait tablet
+***/
+@media (max-width: 991px) {
+ /***
+ page sidebar
+ ***/
+ .page-sidebar {
+ background-color: #412a10 !important;
+ }
+ ul.page-sidebar-menu > li > a {
+ border-top: 1px solid #764c1d !important;
+ }
+ ul.page-sidebar-menu > li:last-child > a {
+ border-bottom: 0 !important;
+ }
+ .page-sidebar .sidebar-search input {
+ background-color: #412a10 !important;
+ }
+ ul.page-sidebar-menu > li.open > a,
+ ul.page-sidebar-menu > li > a:hover,
+ ul.page-sidebar-menu > li:hover > a {
+ background: #311f0c;
+ }
+}
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/brown.css.gz b/uiframe-iui/src/main/resources/webroot/framework/css/themes/brown.css.gz
new file mode 100644
index 00000000..5d08da89
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/brown.css.gz
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/brown_ifrm.css b/uiframe-iui/src/main/resources/webroot/framework/css/themes/brown_ifrm.css
new file mode 100644
index 00000000..582c36ae
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/brown_ifrm.css
@@ -0,0 +1,207 @@
+/**
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/***
+light_ifrm theme
+***/
+td>a>span[class^="ict-"], td>a>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+td>div>span[class^="ict-"], td>div>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+td>div>span>span[class^="ict-"], td>div>span>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+td>span>span[class^="ict-"], td>span>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+/* button style*/
+.buttonRounded,
+.buttonRoundedOver,
+.buttonRoundedFocused,
+.buttonRoundedFocusedOver,
+.buttonRoundedDown,
+.buttonRoundedFocusedDown,
+.buttonRoundedSelected,
+.buttonRoundedSelectedFocused,
+.buttonRoundedSelectedDown,
+.buttonRoundedSelectedFocusedDown,
+.buttonRoundedSelectedOver,
+.buttonRoundedSelectedFocusedOver,
+.buttonRoundedDisabled,
+.buttonRoundedSelectedDisabled {
+ background-color: #8d6a43;
+ color: #fff;
+ border: 0px solid #b15a59;
+ border-radius: 0px;
+ font-family: Arial, Verdana, sans-serif;
+ font-size: 12px;
+ /*padding: 0 3px;*/
+ padding-left:7px !important;
+ padding-right:7px !important;
+ height:30px !important;
+}
+.buttonRoundedDisabled, .buttonRoundedSelectedDisabled{
+ background-color: #f0f0f0;
+ color: #dadada;
+ opacity: 1;
+}
+.buttonRoundedOver,
+.buttonRoundedFocusedOver,
+.buttonRoundedSelectedFocused,
+.buttonRoundedSelectedFocusedOver,
+.buttonRoundedDown,
+.buttonRoundedFocusedDown {
+ background-color: #805b32;
+ height:30px !important;
+}
+
+.menuButton,
+.menuButtonOver,
+.menuButtonDown,
+.menuButtonDisabled,
+.menuButtonFocused,
+.menuButtonFocusedDown,
+.menuButtonFocusedOver,
+.menuButtonSelected,
+.menuButtonSelectedDown,
+.menuButtonSelectedOver,
+.menuButtonSelectedDisabled {
+ background-color: #8d6a43;
+ border: 0px solid #ababab;
+ color: #fff;
+ font-family: Arial, Verdana, sans-serif;
+ font-size: 12px;
+ padding-left: 7px !important;
+ padding-right: 7px !important;
+ height:30px !important;
+}
+.menuButtonOver {
+ background-color: #805b32;
+ }
+ .menuButtonDisabled{
+ background-color: #f0f0f0;
+ color: #dadada;
+ opacity: 1;
+}
+ .buttonTitle,
+.buttonTitleOver,
+.buttonTitleDown,
+.buttonTitleSelected,
+.buttonTitleFocused,
+.buttonTitleSelectedFocused,
+.buttonTitleSelectedOver,
+.buttonTitleFocusedOver,
+.buttonTitleSelectedFocusedOver,
+.buttonTitleSelectedDown,
+.buttonTitleFocusedDown,
+.buttonTitleSelectedFocusedDown,
+.buttonTitleDisabled,
+.buttonTitleSelectedDisabled {
+ color: #fff ;
+}
+.buttonTitleDisabled{
+ background-color: #f0f0f0;
+ color: #dadada;
+ opacity: 1;
+}
+ /* windowBody dialogBody Style */
+ .windowBody,
+.dialogBody {
+ background-color: white;
+ border: 1px solid #8d6a43;
+ border-top: 0;
+}
+.windowHeader,
+.dialogHeader {
+ background-color: #8d6a43;
+ padding: 0;
+}
+/* sectionHeader Style */
+.sectionHeaderopened {
+ background-color: #8d6a43;
+ }
+ .sectionHeaderclosed {
+ background-color: #9f7b53;
+ }
+
+#dt_example h1{
+color:#8d6a43;
+font-weight:600 !important;
+}
+ /*cell style*/
+.tallCellOver,
+.tallCellOverDark {
+ background-color: #ece0d3;
+ border-bottom: 1px solid #ece0d3;
+ border-top: 1px solid #ece0d3;
+ }
+.tallCellSelected,
+.tallCellSelectedDark {
+ background: #d4c2af;
+ border-bottom: 1px solid #d4c2af;
+ border-top: 1px solid #d4c2af;
+ }
+.tallCellSelectedOver,
+.tallCellSelectedOverDark {
+ background: #d4c2af;
+ border-bottom: 1px solid #d4c2af;
+ border-top: 1px solid #d4c2af;
+ }
+.imgHeaderButtonOver,
+.imgHeaderButtonDown,
+.headerButtonOver,
+.headerButtonDown,
+.sorterButtonOver,
+.sorterButtonDown {
+ background-color: #cbaf8f;
+ }
+.cellSelected,
+.cellSelectedDark,
+.specialColSelected,
+.recordSummaryCellSelected,
+.recordSummaryCellSelectedDark {
+ background: #d4c2af !important;
+ border-bottom: 1px solid #d4c2af;
+ border-top: 1px solid #d4c2af;
+ }
+.cellSelectedOver,
+.cellSelectedOverDark,
+.specialColSelectedOver,
+.recordSummaryCellSelectedOver,
+.recordSummaryCellSelectedOverDark {
+ background: #d4c2af !important;
+ border-bottom: 1px solid #d4c2af;
+ border-top: 1px solid #d4c2af;
+}
+.cellOver,
+.cellOverDark,
+.specialColOver,
+.recordSummaryCellOver,
+.recordSummaryCellOverDark {
+ background: #ece0d3 !important;
+ border-bottom: 1px solid #ece0d3;
+ border-top: 1px solid #ece0d3;
+ }
+.treeCellOver,
+.treeCellOverDark {
+ background-color: #ece0d3;
+}
+
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/brown_ifrm.css.gz b/uiframe-iui/src/main/resources/webroot/framework/css/themes/brown_ifrm.css.gz
new file mode 100644
index 00000000..ae3fc333
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/brown_ifrm.css.gz
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/grey.css b/uiframe-iui/src/main/resources/webroot/framework/css/themes/grey.css
new file mode 100644
index 00000000..b73afba8
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/grey.css
@@ -0,0 +1,372 @@
+/**
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/***
+Grey theme
+***/
+/***
+Reset and overrides
+***/
+body {
+ background-color: #666666 !important;
+}
+/***
+Page header
+***/
+.header {
+ filter: none !important;
+ background-image: none !important;
+ background-color: #4a4a4a !important;
+}
+.header .btn-navbar {
+ background-color: #4a4a4a !important;
+}
+.header .navbar-nav .dropdown-toggle:hover,
+.header .navbar-nav .dropdown.open .dropdown-toggle {
+ background-color: #616161 !important;
+}
+.header .navbar-nav li.dropdown .dropdown-toggle i {
+ color: #b3b3b3 !important;
+}
+.page-content .page-breadcrumb.breadcrumb{
+background-color:#F5F5F5 !important;
+}
+/***
+Header Search
+***/
+.header .search-form {
+ background-color: #3a3a3a;
+}
+
+.header .search-form .form-control{
+ color: #ccc;
+ border: 0;
+ background-color: #3a3a3a;
+}
+
+.header .search-form .submit {
+ background: url(../../img/search-icon-light.png);
+}
+/***
+Hor menu
+***/
+.header .hor-menu ul.nav li a {
+ color: #ccc;
+}
+
+.header .hor-menu ul.nav li.open > a,
+.header .hor-menu ul.nav li > a:hover,
+.header .hor-menu ul.nav li > a:focus {
+ color: #fff;
+ background: #616161;
+}
+
+.header .hor-menu .dropdown-menu li:hover > a,
+.header .hor-menu ul.nav li.active > a,
+.header .hor-menu ul.nav li.active > a:hover {
+ color: #fff;
+ background: #e02222 !important;
+}
+
+.header .hor-menu ul.nav li.current > a,
+.header .hor-menu ul.nav li.current > a:hover {
+ color: #fff;
+ background: #e02222 !important;
+}
+
+.header .hor-menu .dropdown-menu {
+ background: #616161;
+}
+.header .hor-menu .dropdown-menu li > a {
+ color: #ccc;
+}
+
+.header .hor-menu .hor-menu-search-form-toggler.off {
+ background: #616161 url(../../img/hor-menu-search-close-white.png) no-repeat center;
+}
+
+.header .hor-menu .search-form {
+ background:#616161;
+}
+
+.header .hor-menu .search-form form input {
+ color: #ccc;
+}
+
+.header .hor-menu .search-form .btn {
+ color: #ccc;
+ background: url(../../img/search-icon-white.png) no-repeat center;
+}
+
+.header .hor-menu .search-form form input::-webkit-input-placeholder { /* WebKit browsers */
+ color: #ccc;
+}
+.header .hor-menu .search-form form input:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
+ color: #ccc;
+}
+.header .hor-menu .search-form form input::-moz-placeholder { /* Mozilla Firefox 19+ */
+ color: #ccc;
+}
+.header .hor-menu .search-form form input:-ms-input-placeholder { /* Internet Explorer 10+ */
+ color: #ccc;
+}
+
+/***
+Mega Menu
+***/
+.mega-menu .mega-menu-submenu {
+ border-right: 1px solid #757575;
+}
+
+.mega-menu .mega-menu-submenu li h3 {
+ color: #fff;
+}
+
+/***
+Page sidebar
+***/
+.page-sidebar {
+ background-color: #666666;
+}
+ul.page-sidebar-menu > li > a {
+ border-top: 1px solid #858585 !important;
+ color: #ffffff !important;
+}
+ul.page-sidebar-menu > li:last-child > a {
+ border-bottom: 1px solid transparent !important;
+}
+ul.page-sidebar-menu > li a i {
+ color: #bfbfbf;
+}
+ul.page-sidebar-menu > li.open > a,
+ul.page-sidebar-menu > li > a:hover,
+ul.page-sidebar-menu > li:hover > a {
+ background: #595959;
+}
+ul.page-sidebar-menu > li.active > a {
+ background: #e02222 !important;
+ border-top-color: transparent !important;
+ color: #ffffff;
+}
+ul.page-sidebar-menu > li.active > a i {
+ color: #ffffff;
+}
+ul.page-sidebar-menu > li > ul.sub-menu > li:first-child > a {
+ border-top: 0px !important;
+}
+ul.page-sidebar-menu > li > ul.sub-menu > li.active > a,
+ul.page-sidebar-menu > li > ul.sub-menu > li > a:hover {
+ color: #ffffff !important;
+ background: #808080 !important;
+}
+ul.page-sidebar-menu > li > ul.sub-menu > li > a:hover {
+ background: #808080 !important;
+}
+/* 3rd level sub menu */
+ul.page-sidebar-menu > li > ul.sub-menu li > ul.sub-menu > li.active > a,
+ul.page-sidebar-menu > li > ul.sub-menu li > ul.sub-menu > li > a:hover,
+ul.page-sidebar-menu > li > ul.sub-menu li.open > a {
+ color: #ffffff !important;
+ background: #808080 !important;
+}
+/* font color for all sub menu links*/
+ul.page-sidebar-menu li > ul.sub-menu > li > a {
+ color: #e6e6e6;
+}
+/* menu arrows */
+ul.page-sidebar-menu > li > a .arrow:before,
+ul.page-sidebar-menu > li > a .arrow.open:before {
+ color: #a6a6a6 !important;
+}
+ul.page-sidebar-menu > li > ul.sub-menu a .arrow:before,
+ul.page-sidebar-menu > li > ul.sub-menu a .arrow.open:before {
+ color: #999999 !important;
+}
+ul.page-sidebar-menu > li > a > .arrow.open:before {
+ color: #b3b3b3 !important;
+}
+ul.page-sidebar-menu > li.active > a .arrow:before,
+ul.page-sidebar-menu > li.active > a .arrow.open:before {
+ color: #ffffff !important;
+}
+/* sidebar search */
+.page-sidebar .sidebar-search input {
+ background-color: #4d4d4d !important;
+ color: #a6a6a6;
+}
+.page-sidebar .sidebar-search input::-webkit-input-placeholder {
+ color: #a6a6a6 !important;
+}
+.page-sidebar .sidebar-search input:-moz-placeholder {
+ color: #a6a6a6 !important;
+}
+.page-sidebar .sidebar-search input:-ms-input-placeholder {
+ color: #a6a6a6 !important;
+}
+.page-sidebar .sidebar-search input {
+ background-color: #666666 !important;
+ color: #bfbfbf !important;
+}
+.page-sidebar .sidebar-search .input-box {
+ border-bottom: 1px solid #a6a6a6 !important;
+}
+.page-sidebar .sidebar-search .submit {
+ background-image: url(../../img/search-icon.png);
+}
+/***
+Sidebar toggler
+***/
+.sidebar-toggler {
+ background-image: url(../../img/sidebar-toggler.jpg);
+ background-color: #4d4d4d;
+}
+/* search box bg color on expanded */
+.page-sidebar-closed .page-sidebar .sidebar-search.open .form-container {
+ background-color: #666666 !important;
+}
+.page-sidebar-closed .page-sidebar .sidebar-search.open .form-container .remove {
+ background-image: url("../../img/sidebar-search-close.png");
+}
+/* sub menu bg color on hover menu item */
+.page-sidebar-closed ul.page-sidebar-menu > li:hover .sub-menu {
+ background-color: #666666;
+}
+/***
+Footer
+***/
+.footer .footer-inner {
+ color: #b3b3b3;
+}
+.footer .footer-tools .go-top {
+ background-color: #787878;
+}
+.footer .footer-tools .go-top:hover {
+ opacity: 0.7;
+ filter: alpha(opacity=70);
+}
+.footer .footer-tools .go-top i {
+ color: #b3b3b3;
+}
+/***
+Footer Layouts (new in v1.3)
+***/
+/* begin:fixed footer */
+.page-footer-fixed .footer {
+ background-color: #4d4d4d;
+}
+.page-footer-fixed .footer .footer-inner {
+ color: #b3b3b3;
+}
+.page-footer-fixed .footer .footer-tools .go-top {
+ background-color: #787878;
+}
+.page-footer-fixed .footer .footer-tools .go-top i {
+ color: #b3b3b3;
+}
+/* end:fixed footer */
+/***
+Gritter Notifications
+***/
+.gritter-top {
+ background: url(../../thirdparty/gritter/images/gritter.png) no-repeat left -30px !important;
+}
+.gritter-bottom {
+ background: url(../../thirdparty/gritter/images/gritter.png) no-repeat left bottom !important;
+}
+.gritter-item {
+ display: block;
+ background: url(../../thirdparty/gritter/images/gritter.png) no-repeat left -40px !important;
+}
+.gritter-close {
+ background: url(../../thirdparty/gritter/images/gritter.png) no-repeat left top !important;
+}
+.gritter-title {
+ text-shadow: none !important;
+ /* Not supported by IE :( */
+
+}
+/* for the light (white) version of the gritter notice */
+.gritter-light .gritter-item,
+.gritter-light .gritter-bottom,
+.gritter-light .gritter-top,
+.gritter-light .gritter-close {
+ background-image: url(../../thirdparty/gritter/images/gritter-light.png) !important;
+}
+.gritter-item-wrapper a {
+ color: #18a5ed;
+}
+.gritter-item-wrapper a:hover {
+ color: #0b6694;
+}
+/* begin: boxed page */
+@media (min-width: 992px) {
+ .page-boxed {
+ background-color: #575757 !important;
+ }
+ .page-boxed .page-container {
+ background-color: #666666;
+ border-left: 1px solid #878787;
+ border-bottom: 1px solid #878787;
+ }
+ .page-boxed.page-sidebar-reversed .page-container {
+ border-left: 0;
+ border-right: 1px solid #878787;
+ }
+ .page-boxed.page-sidebar-fixed .page-container {
+ border-left: 0;
+ border-bottom: 0;
+ }
+ .page-boxed.page-sidebar-reversed.page-sidebar-fixed .page-container {
+ border-left: 0;
+ border-right: 0;
+ border-bottom: 0;
+ }
+ .page-boxed.page-sidebar-fixed .page-sidebar {
+ border-left: 1px solid #878787;
+ }
+ .page-boxed.page-sidebar-reversed.page-sidebar-fixed .page-sidebar {
+ border-right: 1px solid #878787;
+ border-left: 0;
+ }
+ .page-boxed.page-sidebar-fixed.page-footer-fixed .footer {
+ background-color: #575757 !important;
+ }
+}
+/* end: boxed page */
+/***
+Landscape phone to portrait tablet
+***/
+@media (max-width: 991px) {
+ /***
+ page sidebar
+ ***/
+ .page-sidebar {
+ background-color: #525252 !important;
+ }
+ ul.page-sidebar-menu > li > a {
+ border-top: 1px solid #737373 !important;
+ }
+ ul.page-sidebar-menu > li:last-child > a {
+ border-bottom: 0 !important;
+ }
+ .page-sidebar .sidebar-search input {
+ background-color: #525252 !important;
+ }
+ ul.page-sidebar-menu > li.open > a,
+ ul.page-sidebar-menu > li > a:hover,
+ ul.page-sidebar-menu > li:hover > a {
+ background: #474747;
+ }
+}
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/grey.css.gz b/uiframe-iui/src/main/resources/webroot/framework/css/themes/grey.css.gz
new file mode 100644
index 00000000..bbcc1adb
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/grey.css.gz
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/grey_ifrm.css b/uiframe-iui/src/main/resources/webroot/framework/css/themes/grey_ifrm.css
new file mode 100644
index 00000000..cbb707fc
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/grey_ifrm.css
@@ -0,0 +1,209 @@
+/**
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/***
+light_ifrm theme
+***/
+td>a>span[class^="ict-"], td>a>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+td>div>span[class^="ict-"], td>div>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+td>div>span>span[class^="ict-"], td>div>span>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+td>span>span[class^="ict-"], td>span>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+/* button style*/
+.buttonRounded,
+.buttonRoundedOver,
+.buttonRoundedFocused,
+.buttonRoundedFocusedOver,
+.buttonRoundedDown,
+.buttonRoundedFocusedDown,
+.buttonRoundedSelected,
+.buttonRoundedSelectedFocused,
+.buttonRoundedSelectedDown,
+.buttonRoundedSelectedFocusedDown,
+.buttonRoundedSelectedOver,
+.buttonRoundedSelectedFocusedOver,
+.buttonRoundedDisabled,
+.buttonRoundedSelectedDisabled {
+ background-color: #69a0f8;
+ color: #fff;
+ border: 0px solid #b15a59;
+ border-radius: 0px;
+ font-family: Arial, Verdana, sans-serif;
+ font-size: 12px;
+ /*padding: 0 3px;*/
+ padding-left:7px !important;
+ padding-right:7px !important;
+ height:30px !important;
+}
+.buttonRoundedDisabled, .buttonRoundedSelectedDisabled{
+ background-color: #f0f0f0;
+ color: #dadada;
+ opacity: 1;
+}
+.buttonRoundedOver,
+.buttonRoundedFocusedOver,
+.buttonRoundedSelectedFocused,
+.buttonRoundedSelectedFocusedOver,
+.buttonRoundedDown,
+.buttonRoundedFocusedDown {
+ background-color: #4b8df8;
+ height:30px !important;
+}
+
+.menuButton,
+.menuButtonOver,
+.menuButtonDown,
+.menuButtonDisabled,
+.menuButtonFocused,
+.menuButtonFocusedDown,
+.menuButtonFocusedOver,
+.menuButtonSelected,
+.menuButtonSelectedDown,
+.menuButtonSelectedOver,
+.menuButtonSelectedDisabled {
+ background-color: #69a0f8;
+ border: 0px solid #ababab;
+ color: #fff;
+ font-family: Arial, Verdana, sans-serif;
+ font-size: 12px;
+ padding-left: 7px !important;
+ padding-right: 7px !important;
+ height:30px !important;
+}
+.menuButtonOver {
+ background-color: #4b8df8;
+ }
+.menuButtonDisabled{
+ background-color: #f0f0f0;
+ color: #dadada;
+ opacity: 1;
+}
+.buttonTitle,
+.buttonTitleOver,
+.buttonTitleDown,
+.buttonTitleSelected,
+.buttonTitleFocused,
+.buttonTitleSelectedFocused,
+.buttonTitleSelectedOver,
+.buttonTitleFocusedOver,
+.buttonTitleSelectedFocusedOver,
+.buttonTitleSelectedDown,
+.buttonTitleFocusedDown,
+.buttonTitleSelectedFocusedDown,
+.buttonTitleDisabled,
+.buttonTitleSelectedDisabled {
+ color: #fff ;
+ }
+.buttonTitleDisabled{
+ background-color: #f0f0f0;
+ color: #dadada;
+ opacity: 1;
+}
+ /* windowBody dialogBody Style */
+ .windowBody,
+.dialogBody {
+ background-color: white;
+ border: 1px solid #69a0f8;
+ border-top: 0;
+}
+.windowHeader,
+.dialogHeader {
+ background-color: #69a0f8;
+ padding: 0;
+}
+/* sectionHeader Style */
+.sectionHeaderopened {
+ background-color: #69a0f8;
+ }
+ .sectionHeaderclosed {
+ background-color: #5e9bfd;
+ }
+
+#dt_example h1{
+color:#4b8df8;
+font-weight:600 !important;
+}
+
+
+ /*cell style*/
+.tallCellOver,
+.tallCellOverDark {
+ background-color: #ffede4;
+ border-bottom: 1px solid #ffede4;
+ border-top: 1px solid #ffede4;
+ }
+.tallCellSelected,
+.tallCellSelectedDark {
+ background: #f8dddd;
+ border-bottom: 1px solid #f8dddd;
+ border-top: 1px solid #f8dddd;
+ }
+.tallCellSelectedOver,
+.tallCellSelectedOverDark {
+ background: #f8dddd;
+ border-bottom: 1px solid #f8dddd;
+ border-top: 1px solid #f8dddd;
+ }
+.imgHeaderButtonOver,
+.imgHeaderButtonDown,
+.headerButtonOver,
+.headerButtonDown,
+.sorterButtonOver,
+.sorterButtonDown {
+ background-color: #c4d7e2;
+ }
+.cellSelected,
+.cellSelectedDark,
+.specialColSelected,
+.recordSummaryCellSelected,
+.recordSummaryCellSelectedDark {
+ background: #f8dddd !important;
+ border-bottom: 1px solid #f8dddd;
+ border-top: 1px solid #f8dddd;
+ }
+.cellSelectedOver,
+.cellSelectedOverDark,
+.specialColSelectedOver,
+.recordSummaryCellSelectedOver,
+.recordSummaryCellSelectedOverDark {
+ background: #f8dddd !important;
+ border-bottom: 1px solid #f8dddd;
+ border-top: 1px solid #f8dddd;
+}
+.cellOver,
+.cellOverDark,
+.specialColOver,
+.recordSummaryCellOver,
+.recordSummaryCellOverDark {
+ background: #ffede4 !important;
+ border-bottom: 1px solid #ffede4;
+ border-top: 1px solid #ffede4;
+ }
+.treeCellOver,
+.treeCellOverDark {
+ background-color: #ffede4;
+}
+
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/grey_ifrm.css.gz b/uiframe-iui/src/main/resources/webroot/framework/css/themes/grey_ifrm.css.gz
new file mode 100644
index 00000000..948f28a7
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/grey_ifrm.css.gz
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/light.css b/uiframe-iui/src/main/resources/webroot/framework/css/themes/light.css
new file mode 100644
index 00000000..7b46660f
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/light.css
@@ -0,0 +1,479 @@
+/**
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/***
+light theme
+***/
+
+/***
+Reset and overrides
+***/
+body {
+ background-color: #fafafa !important;
+}
+/***
+Page header
+***/
+.header {
+ filter: none !important;
+ background-image: none !important;
+ background-color: #434343 !important;
+}
+.header .btn-navbar {
+ background-color: #434343 !important;
+}
+.header .navbar-nav .dropdown-toggle:hover,
+.header .navbar-nav .dropdown.open .dropdown-toggle {
+ background-color: #4f4f4f !important;
+}
+.header .navbar-nav li.dropdown .dropdown-toggle i {
+ color: #808080 !important;
+}
+.btn-group .btn.blue.dropdown-toggle{
+background-color: #28b779 !important;
+}
+.page-content .page-breadcrumb.breadcrumb{
+background-color:#F5F5F5 !important;
+}
+/***
+Header Search
+***/
+.header .search-form {
+ background-color: #3a3a3a;
+}
+
+.header .search-form .form-control{
+ color: #ccc;
+ border: 0;
+ background-color: #3a3a3a;
+}
+
+.header .search-form .submit {
+ background: url(../../img/search-icon.png);
+}
+/***
+Hor menu
+***/
+.header .hor-menu ul.nav li a {
+ color: #ccc;
+}
+
+.header .hor-menu ul.nav li.open > a,
+.header .hor-menu ul.nav li > a:hover,
+.header .hor-menu ul.nav li > a:focus {
+ color: #fff;
+ background: #4f4f4f;
+}
+
+.header .hor-menu .dropdown-menu li:hover > a,
+.header .hor-menu ul.nav li.active > a,
+.header .hor-menu ul.nav li.active > a:hover {
+ color: #fff;
+ background: #51b88b !important;
+}
+.header.navbar .hor-menu ul.nav li.current .selected,
+.header.navbar .hor-menu ul.nav li.active .selected {
+ border-top: 6px solid #51b88b;
+ }
+
+.header .hor-menu ul.nav li.current > a,
+.header .hor-menu ul.nav li.current > a:hover {
+ color: #fff;
+ background: #e02222 !important;
+}
+
+.header .hor-menu .dropdown-menu {
+ background: #4f4f4f;
+}
+.header .hor-menu .dropdown-menu li > a {
+ color: #ccc;
+}
+
+.header .hor-menu .hor-menu-search-form-toggler.off {
+ background: #4f4f4f url(../../img/hor-menu-search-close-white.png) no-repeat center;
+}
+
+.header .hor-menu .search-form {
+ background:#4f4f4f;
+}
+
+.header .hor-menu .search-form form input {
+ color: #ccc;
+}
+
+.header .hor-menu .search-form .btn {
+ color: #ccc;
+ background: url(../../img/search-icon-white.png) no-repeat center;
+}
+
+.header .hor-menu .search-form form input::-webkit-input-placeholder { /* WebKit browsers */
+ color: #ccc;
+}
+.header .hor-menu .search-form form input:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
+ color: #ccc;
+}
+.header .hor-menu .search-form form input::-moz-placeholder { /* Mozilla Firefox 19+ */
+ color: #ccc;
+}
+.header .hor-menu .search-form form input:-ms-input-placeholder { /* Internet Explorer 10+ */
+ color: #ccc;
+}
+
+/***
+Mega Menu
+***/
+.mega-menu .mega-menu-submenu {
+ border-right: 1px solid #656565;
+}
+
+.mega-menu .mega-menu-submenu li h3 {
+ color: #fff;
+}
+
+/***
+Page sidebar
+***/
+.page-content {
+ border-left: 1px solid #e2e2e2 !important;
+ border-bottom: 1px solid #e2e2e2 !important;
+}
+.page-sidebar-reversed .page-content {
+ border-left: 0;
+ border-right: 1px solid #e2e2e2 !important;
+}
+.page-sidebar {
+ background-color: #fafafa;
+}
+.page-sidebar-fixed .page-content {
+ border: 0 !important;
+}
+.page-sidebar-fixed .page-sidebar {
+ border-right: 1px solid #e2e2e2 !important;
+}
+
+
+ul.page-sidebar-menu > li > a {
+ border-top: 1px solid #e2e2e2 !important;
+ color: #000 !important;
+ font-weight: 400;
+}
+
+ul.page-sidebar-menu > li:first-child > a {
+ border-top: 1px solid transparent !important;
+}
+
+ul.page-sidebar-menu > li:last-child > a {
+ border-bottom: 1px solid transparent !important;
+}
+
+ul.page-sidebar-menu > li a i {
+ color: #bbb !important;
+}
+ul.page-sidebar-menu > li.open > a,
+ul.page-sidebar-menu > li > a:hover,
+ul.page-sidebar-menu > li:hover > a {
+ background: #eee;
+ border-top: 1px solid #e8e8e8;
+}
+ul.page-sidebar-menu > li.active > a .selected {
+ right:-7px;
+ top:0px;
+ width: 7px;
+ height: 39px;
+ background-image: url("../../img/sidebar-menu-arrow-green.png");
+}
+.page-sidebar-reversed ul.page-sidebar-menu > li.active > a .selected {
+ right: auto;
+ left:-7px;
+ background-image: url("../../img/sidebar-menu-arrow-green-reverse.png");
+}
+ul.page-sidebar-menu > li.active i {
+ color: #fff !important;
+}
+.page-sidebar-fixed ul.page-sidebar-menu > li.active > a .selected {
+ display: none;
+}
+ul.page-sidebar-menu > li.active > a{
+ background: #28b779 !important;
+ border-top-color: transparent !important;
+ color:#fff !important;
+}
+ul.page-sidebar-menu > li.active > a i {
+ color: #fff;
+}
+ul.page-sidebar-menu > li > a > .arrow:before,
+ul.page-sidebar-menu > li > a > .arrow.open:before {
+ color: #ccc !important;
+}
+ul.page-sidebar-menu > li.active > a .arrow:before,
+ul.page-sidebar-menu > li.active > a .arrow.open:before {
+ color: #fff !important;
+}
+ul.page-sidebar-menu > li > ul.sub-menu > li:first-child > a {
+ border-top: 0px !important;
+}
+
+ul.page-sidebar-menu ul.sub-menu > li > a {
+ font-weight: 400 !important;
+ color: #333 !important;
+}
+ul.page-sidebar-menu ul.sub-menu > li.active > a,
+ul.page-sidebar-menu ul.sub-menu > li > a:hover {
+ color: #818181 !important;
+ background: #efefef !important;
+}
+
+ul.page-sidebar-menu > li > ul.sub-menu a .arrow:before,
+ul.page-sidebar-menu > li > ul.sub-menu a .arrow.open:before {
+ color: #ccc !important;
+}
+
+/* sub menu links effects */
+ul.page-sidebar-menu ul.sub-menu > li.active > a,
+ul.page-sidebar-menu ul.sub-menu > li > a:hover,
+ul.page-sidebar-menu ul.sub-menu > li.open > a {
+ color: #818181 !important;
+ background: #efefef !important;
+}
+ul.page-sidebar-menu ul.sub-menu > li > a i {
+ color: #bbb !important;
+}
+
+/* sidebar search */
+.page-sidebar .sidebar-search input {
+ background-color: #fbfbfb !important;
+ color: #727272 !important;
+}
+.page-sidebar .sidebar-search input::-webkit-input-placeholder {
+ color: #aaa !important;
+}
+.page-sidebar .sidebar-search input:-moz-placeholder {
+ color: #aaa !important;
+}
+.page-sidebar .sidebar-search input:-ms-input-placeholder {
+ color: #aaa !important;
+}
+.page-sidebar .sidebar-search .input-box {
+ border-bottom: 1px solid #e2e2e2 !important;
+}
+.page-sidebar .sidebar-search .submit {
+ background-image: url(../../img/search-icon-white.png);
+}
+
+/***
+Sidebar toggler
+***/
+.sidebar-toggler {
+ background-image: url(../../img/sidebar-toggler-light.jpg);
+ background-color: #333;
+}
+/* search box bg color on expanded */
+.page-sidebar-closed .page-sidebar .sidebar-search.open .form-container {
+ background-color: #fbfbfb !important;
+}
+.page-sidebar-closed .page-sidebar .sidebar-search.open .form-container .remove {
+ background-image: url("../../img/sidebar-search-close-light.png");
+}
+/* sub menu bg color on hover menu item */
+.page-sidebar-closed ul.page-sidebar-menu > li:hover .sub-menu {
+ background-color: #fbfbfb;
+}
+/***
+Footer
+***/
+.footer .footer-inner {
+ color: #333333;
+}
+.footer .footer-tools .go-top {
+ background-color: #666666;
+}
+.footer .footer-tools .go-top:hover {
+ opacity: 0.7;
+ filter: alpha(opacity=70);
+}
+.footer .footer-tools .go-top i {
+ color: #999999;
+}
+/***
+Footer Layouts (new in v1.3)
+***/
+/* begin:fixed footer */
+.page-footer-fixed .footer {
+ background-color: #434343;
+}
+.page-footer-fixed .footer .footer-inner {
+ color: #aaaaaa;
+}
+.page-footer-fixed .footer .footer-tools .go-top {
+ background-color: #666666;
+}
+.page-footer-fixed .footer .footer-tools .go-top i {
+ color: #aaaaaa;
+}
+/* end:fixed footer */
+/***
+Gritter Notifications
+***/
+.gritter-top {
+ background: url(../../thirdparty/gritter/images/gritter.png) no-repeat left -30px !important;
+}
+.gritter-bottom {
+ background: url(../../thirdparty/gritter/images/gritter.png) no-repeat left bottom !important;
+}
+.gritter-item {
+ display: block;
+ background: url(../../thirdparty/gritter/images/gritter.png) no-repeat left -40px !important;
+}
+.gritter-close {
+ background: url(../../thirdparty/gritter/images/gritter.png) no-repeat left top !important;
+}
+.gritter-title {
+ text-shadow: none !important;
+ /* Not supported by IE :( */
+
+}
+/* for the light (white) version of the gritter notice */
+.gritter-light .gritter-item,
+.gritter-light .gritter-bottom,
+.gritter-light .gritter-top,
+.gritter-light .gritter-close {
+ background-image: url(../../thirdparty/gritter/images/gritter-light.png) !important;
+}
+.gritter-item-wrapper a {
+ color: #18a5ed;
+}
+.gritter-item-wrapper a:hover {
+ color: #0b6694;
+}
+/* begin: boxed page */
+@media (min-width: 992px) {
+ .page-boxed {
+ background-color: #E8E8E8 !important;
+ }
+ .page-boxed .page-container {
+ background-color: #fafafa;
+ border-left: 1px solid #e2e2e2;
+ border-bottom: 1px solid #e2e2e2;
+ }
+ .page-sidebar-reversed.page-boxed .page-container {
+ border-left: 0;
+ border-right: 1px solid #e2e2e2;
+ }
+ .page-boxed.page-sidebar-fixed .page-container {
+ border-left: 0;
+ border-bottom: 0;
+ }
+ .page-boxed.page-sidebar-fixed .page-sidebar {
+ border-left: 1px solid #e2e2e2;
+ }
+ .page-boxed.page-sidebar-reversed.page-sidebar-fixed .page-sidebar {
+ border-right: 1px solid #e2e2e2;
+ border-left: 0;
+ }
+ .page-boxed.page-sidebar-fixed.page-footer-fixed .footer {
+ background-color: #E8E8E8 !important;
+ }
+}
+/* end: boxed page */
+/***
+Landscape phone to portrait tablet
+***/
+@media (max-width: 991px) {
+ /***
+ page sidebar
+ ***/
+ .page-sidebar {
+ background-color: #f1f1f1 !important;
+ border-right: none !important;
+ }
+ .page-sidebar-fixed .page-sidebar {
+ border-right: none !important;
+ }
+ .page-content {
+ border-left: none !important;
+ }
+ ul.page-sidebar-menu > li > a {
+ border-top: 1px solid #ccc !important;
+ }
+ ul.page-sidebar-menu > li:last-child > a {
+ border-bottom: 0 !important;
+ }
+
+ ul.page-sidebar-menu > li.open > a,
+ ul.page-sidebar-menu > li > a:hover {
+ color: #666666 !important;
+ background-color: #dddddd !important;
+ }
+ ul.page-sidebar-menu > li.open > a {
+ border-bottom-color: transparent !important;
+ }
+ ul.page-sidebar-menu > li.active > a {
+ color: #ffffff !important;
+ background-color: #28b779 !important;
+ }
+
+ ul.page-sidebar-menu ul.sub-menu > li > a {
+ color: #111 !important;
+ }
+
+ ul.page-sidebar-menu ul.sub-menu > li.open > a,
+ ul.page-sidebar-menu ul.sub-menu > li.active > a,
+ ul.page-sidebar-menu ul.sub-menu > li > a:hover {
+ color: #666666 !important;
+ background: #dddddd !important;
+ }
+
+ .page-sidebar .sidebar-search input {
+ background-color: #f1f1f1 !important;
+ color: #ccc !important;
+ }
+
+ .page-sidebar .sidebar-search .input-box {
+ border-bottom-color: #ccc !important;
+ }
+ .page-sidebar .sidebar-search input::-webkit-input-placeholder {
+ color: #ccc !important;
+ }
+ .page-sidebar .sidebar-search input:-moz-placeholder {
+ color: #ccc !important;
+ }
+ .page-sidebar .sidebar-search input:-ms-input-placeholder {
+ color: #ccc !important;
+ }
+
+ /***
+ page footer
+ ***/
+
+ .footer {
+ background-color: #434343;
+ }
+
+ .footer .footer-inner {
+ color: #cccccc;
+ }
+ .footer .footer-tools .go-top {
+ background-color: #666666;
+ }
+ .footer .footer-tools .go-top i {
+ color: #999999;
+ }
+}
+
+@media (max-width: 767px) {
+ body {
+ background-color: #333 !important;
+ }
+} \ No newline at end of file
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/light.css.gz b/uiframe-iui/src/main/resources/webroot/framework/css/themes/light.css.gz
new file mode 100644
index 00000000..203f94e6
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/light.css.gz
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/light_ifrm.css b/uiframe-iui/src/main/resources/webroot/framework/css/themes/light_ifrm.css
new file mode 100644
index 00000000..0b70f181
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/light_ifrm.css
@@ -0,0 +1,207 @@
+/**
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/***
+light_ifrm theme
+***/
+td>a>span[class^="ict-"], td>a>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+td>div>span[class^="ict-"], td>div>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+td>div>span>span[class^="ict-"], td>div>span>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+td>span>span[class^="ict-"], td>span>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+/* button style*/
+.buttonRounded,
+.buttonRoundedOver,
+.buttonRoundedFocused,
+.buttonRoundedFocusedOver,
+.buttonRoundedDown,
+.buttonRoundedFocusedDown,
+.buttonRoundedSelected,
+.buttonRoundedSelectedFocused,
+.buttonRoundedSelectedDown,
+.buttonRoundedSelectedFocusedDown,
+.buttonRoundedSelectedOver,
+.buttonRoundedSelectedFocusedOver,
+.buttonRoundedDisabled,
+.buttonRoundedSelectedDisabled {
+ background-color: #5fbf95;
+ color: #fff;
+ border: 0px solid #b15a59;
+ border-radius: 0px;
+ font-family: Arial, Verdana, sans-serif;
+ font-size: 12px;
+ /*padding: 0 3px;*/
+ padding-left:7px !important;
+ padding-right:7px !important;
+ height:30px !important;
+}
+.buttonRoundedDisabled, .buttonRoundedSelectedDisabled{
+ background-color: #f0f0f0;
+ color: #dadada;
+ opacity: 1;
+}
+.buttonRoundedOver,
+.buttonRoundedFocusedOver,
+.buttonRoundedSelectedFocused,
+.buttonRoundedSelectedFocusedOver,
+.buttonRoundedDown,
+.buttonRoundedFocusedDown {
+ background-color: #1faa6e;
+ height:30px !important;
+}
+
+.menuButton,
+.menuButtonOver,
+.menuButtonDown,
+.menuButtonDisabled,
+.menuButtonFocused,
+.menuButtonFocusedDown,
+.menuButtonFocusedOver,
+.menuButtonSelected,
+.menuButtonSelectedDown,
+.menuButtonSelectedOver,
+.menuButtonSelectedDisabled {
+ background-color: #5fbf95;
+ border: 0px solid #ababab;
+ color: #fff;
+ font-family: Arial, Verdana, sans-serif;
+ font-size: 12px;
+ padding-left: 7px !important;
+ padding-right: 7px !important;
+ height:30px !important;
+}
+.menuButtonOver {
+ background-color: #1faa6e;
+ }
+.menuButtonDisabled{
+ background-color: #f0f0f0;
+ color: #dadada;
+ opacity: 1;
+}
+ .buttonTitle,
+.buttonTitleOver,
+.buttonTitleDown,
+.buttonTitleSelected,
+.buttonTitleFocused,
+.buttonTitleSelectedFocused,
+.buttonTitleSelectedOver,
+.buttonTitleFocusedOver,
+.buttonTitleSelectedFocusedOver,
+.buttonTitleSelectedDown,
+.buttonTitleFocusedDown,
+.buttonTitleSelectedFocusedDown,
+.buttonTitleDisabled,
+.buttonTitleSelectedDisabled {
+ color: #fff ;
+ }
+ .buttonTitleDisabled{
+ background-color: #f0f0f0;
+ color: #dadada;
+ opacity: 1;
+}
+ /* windowBody dialogBody Style */
+ .windowBody,
+.dialogBody {
+ background-color: white;
+ border: 1px solid #51b88b;
+ border-top: 0;
+}
+.windowHeader,
+.dialogHeader {
+ background-color: #51b88b;
+ padding: 0;
+}
+/* sectionHeader Style */
+.sectionHeaderopened {
+ background-color: #51b88b;
+ }
+ .sectionHeaderclosed {
+ background-color: #70c6a0;
+ }
+
+#dt_example h1{
+color:#51b88b;
+font-weight:600 !important;
+}
+ /*cell style*/
+.tallCellOver,
+.tallCellOverDark {
+ background-color: #d7eae3;
+ border-bottom: 1px solid #d7eae3;
+ border-top: 1px solid #d7eae3;
+ }
+.tallCellSelected,
+.tallCellSelectedDark {
+ background: #c7e5da;
+ border-bottom: 1px solid #c7e5da;
+ border-top: 1px solid #c7e5da;
+ }
+.tallCellSelectedOver,
+.tallCellSelectedOverDark {
+ background: #c7e5da;
+ border-bottom: 1px solid #c7e5da;
+ border-top: 1px solid #c7e5da;
+ }
+.imgHeaderButtonOver,
+.imgHeaderButtonDown,
+.headerButtonOver,
+.headerButtonDown,
+.sorterButtonOver,
+.sorterButtonDown {
+ background-color: #aadac5;
+ }
+.cellSelected,
+.cellSelectedDark,
+.specialColSelected,
+.recordSummaryCellSelected,
+.recordSummaryCellSelectedDark {
+ background: #c7e5da !important;
+ border-bottom: 1px solid #c7e5da;
+ border-top: 1px solid #c7e5da;
+ }
+.cellSelectedOver,
+.cellSelectedOverDark,
+.specialColSelectedOver,
+.recordSummaryCellSelectedOver,
+.recordSummaryCellSelectedOverDark {
+ background: #c7e5da !important;
+ border-bottom: 1px solid #c7e5da;
+ border-top: 1px solid #c7e5da;
+}
+.cellOver,
+.cellOverDark,
+.specialColOver,
+.recordSummaryCellOver,
+.recordSummaryCellOverDark {
+ background: #d7eae3 !important;
+ border-bottom: 1px solid #d7eae3;
+ border-top: 1px solid #d7eae3;
+ }
+.treeCellOver,
+.treeCellOverDark {
+ background-color: #d7eae3;
+}
+
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/light_ifrm.css.gz b/uiframe-iui/src/main/resources/webroot/framework/css/themes/light_ifrm.css.gz
new file mode 100644
index 00000000..29023545
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/light_ifrm.css.gz
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/purple.css b/uiframe-iui/src/main/resources/webroot/framework/css/themes/purple.css
new file mode 100644
index 00000000..30f02fca
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/purple.css
@@ -0,0 +1,375 @@
+/**
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/***
+Purple theme
+***/
+/***
+Reset and overrides
+***/
+body {
+ background-color: #701584 !important;
+}
+/***
+Page header
+***/
+.header {
+ filter: none !important;
+ background-image: none !important;
+ background-color: #470d54 !important;
+}
+.header .btn-navbar {
+ background-color: #470d54 !important;
+}
+.header .navbar-nav .dropdown-toggle:hover,
+.header .navbar-nav .dropdown.open .dropdown-toggle {
+ background-color: #69147b !important;
+}
+.header .navbar-nav li.dropdown .dropdown-toggle i {
+ color: #c84fe3 !important;
+}
+.btn-group .btn.blue.dropdown-toggle{
+background-color: #571067 !important;
+}
+.page-content .page-breadcrumb.breadcrumb{
+background-color:#F5F5F5 !important;
+}
+/***
+Header Search
+***/
+.header .search-form {
+ background-color: #360A40;
+}
+
+.header .search-form .form-control{
+ color: #ccc;
+ border: 0;
+ background-color: #360A40;
+}
+
+.header .search-form .submit {
+ background: url(../../img/search-icon-purple.png);
+}
+/***
+Hor menu
+***/
+.header .hor-menu ul.nav li a {
+ color: #ccc;
+}
+
+.header .hor-menu ul.nav li.open > a,
+.header .hor-menu ul.nav li > a:hover,
+.header .hor-menu ul.nav li > a:focus {
+ color: #fff;
+ background: #69147b;
+}
+
+.header .hor-menu .dropdown-menu li:hover > a,
+.header .hor-menu ul.nav li.active > a,
+.header .hor-menu ul.nav li.active > a:hover {
+ color: #fff;
+ background: #e02222 !important;
+}
+
+.header .hor-menu ul.nav li.current > a,
+.header .hor-menu ul.nav li.current > a:hover {
+ color: #fff;
+ background: #e02222 !important;
+}
+
+.header .hor-menu .dropdown-menu {
+ background: #69147b;
+}
+.header .hor-menu .dropdown-menu li > a {
+ color: #ccc;
+}
+
+.header .hor-menu .hor-menu-search-form-toggler.off {
+ background: #69147b url(../../img/hor-menu-search-close-white.png) no-repeat center;
+}
+
+.header .hor-menu .search-form {
+ background:#69147b;
+}
+
+.header .hor-menu .search-form form input {
+ color: #ccc;
+}
+
+.header .hor-menu .search-form .btn {
+ color: #ccc;
+ background: url(../../img/search-icon-white.png) no-repeat center;
+}
+
+.header .hor-menu .search-form form input::-webkit-input-placeholder { /* WebKit browsers */
+ color: #ccc;
+}
+.header .hor-menu .search-form form input:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
+ color: #ccc;
+}
+.header .hor-menu .search-form form input::-moz-placeholder { /* Mozilla Firefox 19+ */
+ color: #ccc;
+}
+.header .hor-menu .search-form form input:-ms-input-placeholder { /* Internet Explorer 10+ */
+ color: #ccc;
+}
+
+/***
+Mega Menu
+***/
+.mega-menu .mega-menu-submenu {
+ border-right: 1px solid #78188C;
+}
+
+.mega-menu .mega-menu-submenu li h3 {
+ color: #fff;
+}
+
+/***
+Page sidebar
+***/
+.page-sidebar {
+ background-color: #701584;
+}
+ul.page-sidebar-menu > li > a {
+ border-top: 1px solid #9d1db9 !important;
+ color: #ffffff !important;
+}
+ul.page-sidebar-menu > li:last-child > a {
+ border-bottom: 1px solid transparent !important;
+}
+ul.page-sidebar-menu > li a i {
+ color: #cf65e7;
+}
+ul.page-sidebar-menu > li.open > a,
+ul.page-sidebar-menu > li > a:hover,
+ul.page-sidebar-menu > li:hover > a {
+ background: #5d116e;
+}
+ul.page-sidebar-menu > li.active > a {
+ background: #571067 !important;
+ border-top-color: transparent !important;
+ color: #ffffff;
+}
+ul.page-sidebar-menu > li.active > a i {
+ color: #ffffff;
+}
+ul.page-sidebar-menu > li > ul.sub-menu > li:first-child > a {
+ border-top: 0px !important;
+}
+ul.page-sidebar-menu > li > ul.sub-menu > li.active > a,
+ul.page-sidebar-menu > li > ul.sub-menu > li > a:hover {
+ color: #ffffff !important;
+ background: #951cb0 !important;
+}
+ul.page-sidebar-menu > li > ul.sub-menu > li > a:hover {
+ background: #951cb0 !important;
+}
+/* 3rd level sub menu */
+ul.page-sidebar-menu > li > ul.sub-menu li > ul.sub-menu > li.active > a,
+ul.page-sidebar-menu > li > ul.sub-menu li > ul.sub-menu > li > a:hover,
+ul.page-sidebar-menu > li > ul.sub-menu li.open > a {
+ color: #ffffff !important;
+ background: #951cb0 !important;
+}
+/* font color for all sub menu links*/
+ul.page-sidebar-menu li > ul.sub-menu > li > a {
+ color: #e4a7f1;
+}
+/* menu arrows */
+ul.page-sidebar-menu > li > a .arrow:before,
+ul.page-sidebar-menu > li > a .arrow.open:before {
+ color: #c239df !important;
+}
+ul.page-sidebar-menu > li > ul.sub-menu a .arrow:before,
+ul.page-sidebar-menu > li > ul.sub-menu a .arrow.open:before {
+ color: #bb23dc !important;
+}
+ul.page-sidebar-menu > li > a > .arrow.open:before {
+ color: #c84fe3 !important;
+}
+ul.page-sidebar-menu > li.active > a .arrow:before,
+ul.page-sidebar-menu > li.active > a .arrow.open:before {
+ color: #ffffff !important;
+}
+/* sidebar search */
+.page-sidebar .sidebar-search input {
+ background-color: #4b0e58 !important;
+ color: #bf55d7;
+}
+.page-sidebar .sidebar-search input::-webkit-input-placeholder {
+ color: #b84dd0 !important;
+}
+.page-sidebar .sidebar-search input:-moz-placeholder {
+ color: #b84dd0 !important;
+}
+.page-sidebar .sidebar-search input:-ms-input-placeholder {
+ color: #b84dd0 !important;
+}
+.page-sidebar .sidebar-search input {
+ background-color: #701584 !important;
+ color: #bfbfbf !important;
+}
+.page-sidebar .sidebar-search .input-box {
+ border-bottom: 1px solid #a93bc1 !important;
+}
+.page-sidebar .sidebar-search .submit {
+ background-image: url(../../img/search-icon-purple.png);
+}
+/***
+Sidebar toggler
+***/
+.sidebar-toggler {
+ background-image: url(../../img/sidebar-toggler-purple.jpg);
+ background-color: #4b0e58;
+}
+/* search box bg color on expanded */
+.page-sidebar-closed .page-sidebar .sidebar-search.open .form-container {
+ background-color: #701584 !important;
+}
+.page-sidebar-closed .page-sidebar .sidebar-search.open .form-container .remove {
+ background-image: url("../../img/sidebar-search-close-purple.png");
+}
+/* sub menu bg color on hover menu item */
+.page-sidebar-closed ul.page-sidebar-menu > li:hover .sub-menu {
+ background-color: #701584;
+}
+/***
+Footer
+***/
+.footer .footer-inner {
+ color: #c84fe3;
+}
+.footer .footer-tools .go-top {
+ background-color: #8a1aa3;
+}
+.footer .footer-tools .go-top:hover {
+ opacity: 0.7;
+ filter: alpha(opacity=70);
+}
+.footer .footer-tools .go-top i {
+ color: #c84fe3;
+}
+/***
+Footer Layouts (new in v1.3)
+***/
+/* begin:fixed footer */
+.page-footer-fixed .footer {
+ background-color: #4b0e58;
+}
+.page-footer-fixed .footer .footer-inner {
+ color: #c84fe3;
+}
+.page-footer-fixed .footer .footer-tools .go-top {
+ background-color: #8a1aa3;
+}
+.page-footer-fixed .footer .footer-tools .go-top i {
+ color: #c84fe3;
+}
+/* end:fixed footer */
+/***
+Gritter Notifications
+***/
+.gritter-top {
+ background: url(../../thirdparty/gritter/images/gritter-purple.png) no-repeat left -30px !important;
+}
+.gritter-bottom {
+ background: url(../../thirdparty/gritter/images/gritter-purple.png) no-repeat left bottom !important;
+}
+.gritter-item {
+ display: block;
+ background: url(../../thirdparty/gritter/images/gritter-purple.png) no-repeat left -40px !important;
+}
+.gritter-close {
+ background: url(../../thirdparty/gritter/images/gritter-purple.png) no-repeat left top !important;
+}
+.gritter-title {
+ text-shadow: none !important;
+ /* Not supported by IE :( */
+
+}
+/* for the light (white) version of the gritter notice */
+.gritter-light .gritter-item,
+.gritter-light .gritter-bottom,
+.gritter-light .gritter-top,
+.gritter-light .gritter-close {
+ background-image: url(../../thirdparty/gritter/images/gritter-light.png) !important;
+}
+.gritter-item-wrapper a {
+ color: #18a5ed;
+}
+.gritter-item-wrapper a:hover {
+ color: #0b6694;
+}
+/* begin: boxed page */
+@media (min-width: 992px) {
+ .page-boxed {
+ background-color: #5a116a !important;
+ }
+ .page-boxed .page-container {
+ background-color: #701584;
+ border-left: 1px solid #a11ebd;
+ border-bottom: 1px solid #a11ebd;
+ }
+ .page-boxed.page-sidebar-reversed .page-container {
+ border-left: 0;
+ border-right: 1px solid #a11ebd;
+ }
+ .page-boxed.page-sidebar-fixed .page-container {
+ border-left: 0;
+ border-bottom: 0;
+ }
+ .page-boxed.page-sidebar-reversed.page-sidebar-fixed .page-container {
+ border-left: 0;
+ border-right: 0;
+ border-bottom: 0;
+ }
+ .page-boxed.page-sidebar-fixed .page-sidebar {
+ border-left: 1px solid #a11ebd;
+ }
+ .page-boxed.page-sidebar-reversed.page-sidebar-fixed .page-sidebar {
+ border-right: 1px solid #a11ebd;
+ border-left: 0;
+ }
+ .page-boxed.page-sidebar-fixed.page-footer-fixed .footer {
+ background-color: #5a116a !important;
+ }
+}
+/* end: boxed page */
+/***
+Landscape phone to portrait tablet
+***/
+@media (max-width: 991px) {
+ /***
+ page sidebar
+ ***/
+ .page-sidebar {
+ background-color: #520f61 !important;
+ }
+ ul.page-sidebar-menu > li > a {
+ border-top: 1px solid #83189a !important;
+ }
+ ul.page-sidebar-menu > li:last-child > a {
+ border-bottom: 0 !important;
+ }
+ .page-sidebar .sidebar-search input {
+ background-color: #520f61 !important;
+ }
+ ul.page-sidebar-menu > li.open > a,
+ ul.page-sidebar-menu > li > a:hover,
+ ul.page-sidebar-menu > li:hover > a {
+ background: #430d4f;
+ }
+}
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/purple.css.gz b/uiframe-iui/src/main/resources/webroot/framework/css/themes/purple.css.gz
new file mode 100644
index 00000000..9b9d2e86
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/purple.css.gz
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/purple_ifrm.css b/uiframe-iui/src/main/resources/webroot/framework/css/themes/purple_ifrm.css
new file mode 100644
index 00000000..ee18b08b
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/purple_ifrm.css
@@ -0,0 +1,207 @@
+/**
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/***
+Purple_ifrm theme
+***/
+td>a>span[class^="ict-"], td>a>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+td>div>span[class^="ict-"], td>div>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+td>div>span>span[class^="ict-"], td>div>span>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+td>span>span[class^="ict-"], td>span>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+/* button style*/
+.buttonRounded,
+.buttonRoundedOver,
+.buttonRoundedFocused,
+.buttonRoundedFocusedOver,
+.buttonRoundedDown,
+.buttonRoundedFocusedDown,
+.buttonRoundedSelected,
+.buttonRoundedSelectedFocused,
+.buttonRoundedSelectedDown,
+.buttonRoundedSelectedFocusedDown,
+.buttonRoundedSelectedOver,
+.buttonRoundedSelectedFocusedOver,
+.buttonRoundedDisabled,
+.buttonRoundedSelectedDisabled {
+ background-color: #b045c7;
+ color: #fff !important;
+ border: 0px solid #b15a59;
+ font-family: Arial, Verdana, sans-serif;
+ font-size: 12px;
+ /*padding: 0 3px;*/
+ padding-left:7px !important;
+ padding-right:7px !important;
+ height:30px !important;
+}
+.buttonRoundedDisabled, .buttonRoundedSelectedDisabled{
+ background-color: #f0f0f0;
+ color: #dadada !important;
+ opacity: 1;
+}
+.buttonRoundedOver,
+.buttonRoundedFocusedOver,
+.buttonRoundedSelectedFocused,
+.buttonRoundedSelectedFocusedOver ,
+.buttonRoundedDown,
+.buttonRoundedFocusedDown{
+ background-color: #8f32a3;
+ height:30px !important;
+}
+
+.menuButton,
+.menuButtonOver,
+.menuButtonDown,
+.menuButtonDisabled,
+.menuButtonFocused,
+.menuButtonFocusedDown,
+.menuButtonFocusedOver,
+.menuButtonSelected,
+.menuButtonSelectedDown,
+.menuButtonSelectedOver,
+.menuButtonSelectedDisabled {
+ background-color: #b045c7;
+ border: 0px solid #ababab;
+ color: #fff !important;
+ font-family: Arial, Verdana, sans-serif;
+ font-size: 12px;
+ padding-left: 7px !important;
+ padding-right: 7px !important;
+ height:30px !important;
+}
+.menuButtonOver {
+ background-color: #8f32a3;
+ }
+.menuButtonDisabled{
+ background-color: #f0f0f0;
+ color: #dadada;
+ opacity: 1;
+}
+ .buttonTitle,
+.buttonTitleOver,
+.buttonTitleDown,
+.buttonTitleSelected,
+.buttonTitleFocused,
+.buttonTitleSelectedFocused,
+.buttonTitleSelectedOver,
+.buttonTitleFocusedOver,
+.buttonTitleSelectedFocusedOver,
+.buttonTitleSelectedDown,
+.buttonTitleFocusedDown,
+.buttonTitleSelectedFocusedDown,
+.buttonTitleDisabled,
+.buttonTitleSelectedDisabled {
+ color: #fff ;
+ }
+ .buttonTitleDisabled{
+ background-color: #f0f0f0;
+ color: #dadada;
+ opacity: 1;
+}
+ /* windowBody dialogBody Style */
+ .windowBody,
+.dialogBody {
+ background-color: white;
+ border: 1px solid #5d116e;
+ border-top: 0;
+}
+
+.windowHeader,
+.dialogHeader {
+ background-color: #5d116e;
+ padding: 0;
+}
+/* sectionHeader Style */
+.sectionHeaderopened {
+ background-color: #8f32a3;
+ }
+ .sectionHeaderclosed {
+ background-color: #a03bb6;
+ }
+
+#dt_example h1{
+color:#8f32a3;
+font-weight:600 !important;
+}
+ /*cell style*/
+.tallCellOver,
+.tallCellOverDark {
+ background-color: #e7c7ee;
+ border-bottom: 1px solid #e7c7ee;
+ border-top: 1px solid #e7c7ee;
+ }
+.tallCellSelected,
+.tallCellSelectedDark {
+ background: #d49ce0;
+ border-bottom: 1px solid #d49ce0;
+ border-top: 1px solid #d49ce0;
+ }
+.tallCellSelectedOver,
+.tallCellSelectedOverDark {
+ background: #d49ce0;
+ border-bottom: 1px solid #d49ce0;
+ border-top: 1px solid #d49ce0;
+ }
+.imgHeaderButtonOver,
+.imgHeaderButtonDown,
+.headerButtonOver,
+.headerButtonDown,
+.sorterButtonOver,
+.sorterButtonDown {
+ background-color: #ecd4f1;
+ }
+.cellSelected,
+.cellSelectedDark,
+.specialColSelected,
+.recordSummaryCellSelected,
+.recordSummaryCellSelectedDark {
+ background: #d49ce0 !important;
+ border-bottom: 1px solid #d49ce0;
+ border-top: 1px solid #d49ce0;
+ }
+.cellSelectedOver,
+.cellSelectedOverDark,
+.specialColSelectedOver,
+.recordSummaryCellSelectedOver,
+.recordSummaryCellSelectedOverDark {
+ background: #d49ce0 !important;
+ border-bottom: 1px solid #d49ce0;
+ border-top: 1px solid #d49ce0;
+}
+.cellOver,
+.cellOverDark,
+.specialColOver,
+.recordSummaryCellOver,
+.recordSummaryCellOverDark {
+ background: #e7c7ee !important;
+ border-bottom: 1px solid #e7c7ee;
+ border-top: 1px solid #e7c7ee;
+ }
+.treeCellOver,
+.treeCellOverDark {
+ background-color: #e7c7ee;
+}
+
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/purple_ifrm.css.gz b/uiframe-iui/src/main/resources/webroot/framework/css/themes/purple_ifrm.css.gz
new file mode 100644
index 00000000..e15d6abf
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/purple_ifrm.css.gz
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/zteblue.css b/uiframe-iui/src/main/resources/webroot/framework/css/themes/zteblue.css
new file mode 100644
index 00000000..7b5458ae
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/zteblue.css
@@ -0,0 +1,398 @@
+/**
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/***
+Blue theme
+***/
+/***
+Reset and overrides
+***/
+body {
+ background-color: #e8e8e8 !important;
+}
+/***
+Page header
+***/
+.header {
+ filter: none !important;
+ background-image: none !important;
+ background-color: #1b8fd3 !important;
+}
+.header .btn-navbar {
+ background-color: #1b8fd3!important;
+}
+.header .navbar-nav .dropdown-toggle:hover,
+.header .navbar-nav .dropdown.open .dropdown-toggle {
+ color: #fff;
+ background-color: #ee5c00 !important;
+}
+.header .navbar-nav li.dropdown .dropdown-toggle i {
+ color: #fff !important;
+}
+.page-content .page-breadcrumb.breadcrumb .dashboard-date-range{
+background-color: #ee5c00 !important;
+}
+.btn-group .btn.blue.dropdown-toggle{
+background-color: #ee5c00 !important;
+}
+.page-content .page-breadcrumb.breadcrumb{
+background-color:#F5F5F5 !important;
+}
+/***
+Header Search
+***/
+.header .search-form {
+ background-color: #0B4263;
+}
+
+.header .search-form .form-control{
+ color: #68bbec;
+ border: 0;
+ background-color: #0B4263;
+}
+
+.header .search-form .submit {
+ background: url(../../img/search-icon-blue.png);
+}
+.zte-theme-panel > .toggler:hover {
+ background-color: #146a9d !important;
+}
+/***
+Hor menu
+***/
+.header .hor-menu ul.nav li a {
+ color: #ccc;
+}
+
+.header .hor-menu ul.nav li.open > a,
+.header .hor-menu ul.nav li > a:hover,
+.header .hor-menu ul.nav li > a:focus {
+ color: #fff;
+ background: #146a9d;
+}
+
+.header .hor-menu .dropdown-menu li:hover > a,
+.header .hor-menu ul.nav li.active > a,
+.header .hor-menu ul.nav li.active > a:hover {
+ color: #fff;
+ background: #ee5c00 !important;
+}
+.header.navbar .hor-menu ul.nav li.current .selected,
+.header.navbar .hor-menu ul.nav li.active .selected {
+ border-top: 6px solid #ee5c00;
+ }
+.header .hor-menu ul.nav li.current > a,
+.header .hor-menu ul.nav li.current > a:hover {
+ color: #fff;
+ background: #e02222 !important;
+}
+
+.header .hor-menu .dropdown-menu {
+ background: #146a9d;
+}
+.header .hor-menu .dropdown-menu li > a {
+ color: #ccc;
+}
+
+.header .hor-menu .hor-menu-search-form-toggler.off {
+ background: #146a9d url(../../img/hor-menu-search-close-white.png) no-repeat center;
+}
+
+.header .hor-menu .search-form {
+ background:#146a9d;
+}
+
+.header .hor-menu .search-form form input {
+ color: #ccc;
+}
+
+.header .hor-menu .search-form .btn {
+ color: #ccc;
+ background: url(../../img/search-icon-white.png) no-repeat center;
+}
+
+.header .hor-menu .search-form form input::-webkit-input-placeholder { /* WebKit browsers */
+ color: #ccc;
+}
+.header .hor-menu .search-form form input:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
+ color: #ccc;
+}
+.header .hor-menu .search-form form input::-moz-placeholder { /* Mozilla Firefox 19+ */
+ color: #ccc;
+}
+.header .hor-menu .search-form form input:-ms-input-placeholder { /* Internet Explorer 10+ */
+ color: #ccc;
+}
+
+/***
+Mega Menu
+***/
+.mega-menu .mega-menu-submenu {
+ border-right: 1px solid #1876AD;
+}
+
+.mega-menu .mega-menu-submenu li h3 {
+ color: #fff;
+}
+
+/***
+Page sidebar
+***/
+.page-sidebar {
+ background-color: #e8e8e8;
+}
+ul.page-sidebar-menu > li > a {
+ border-top: 1px solid #d3d1d1 !important;
+ /*color: black !important;*/
+}
+ul.page-sidebar-menu > li:last-child > a {
+ border-bottom: 1px solid transparent !important;
+}
+ul.page-sidebar-menu > li a i {
+ /*color: black !important;*/
+}
+ul.page-sidebar-menu > li.open > a{
+border-bottom: 1px solid #d3d1d1 !important;
+color: #0d638f;
+}
+ul.page-sidebar-menu > li > a:hover
+/*ul.page-sidebar-menu > li:hover > a */{
+ background: #1b8fd3;
+ color: #ffffff;
+}
+ul.page-sidebar-menu > li.active > a {
+ background: #ee5c00 !important;
+ border-top-color: transparent !important;
+ color: #ffffff;
+}
+ul.page-sidebar-menu > li.active > a i {
+ color: #ffffff;
+}
+ul.page-sidebar-menu > li > ul.sub-menu > li:first-child > a {
+ border-top: 0px !important;
+}
+ul.page-sidebar-menu > li > ul.sub-menu > li.active > a,
+ul.page-sidebar-menu > li > ul.sub-menu > li > a:hover {
+ color: #ffffff !important;
+ background: #1b8fd3 !important;
+}
+ul.page-sidebar-menu > li > ul.sub-menu > li > a:hover {
+ background: #1b8fd3 !important;
+}
+/* 3rd level sub menu */
+ul.page-sidebar-menu > li > ul.sub-menu li > ul.sub-menu > li.active > a,
+ul.page-sidebar-menu > li > ul.sub-menu li > ul.sub-menu > li > a:hover,
+ul.page-sidebar-menu > li > ul.sub-menu li.open > a {
+ color: #ffffff !important;
+ background: #1b8fd3 !important;
+}
+/* font color for all sub menu links*/
+ul.page-sidebar-menu li > ul.sub-menu > li > a {
+ /*color: #c3e4f7;*/
+}
+/* menu arrows */
+ul.page-sidebar-menu > li > a .arrow:before,
+ul.page-sidebar-menu > li > a .arrow.open:before {
+ /*color: #51b1e9 !important;*/
+}
+ul.page-sidebar-menu > li > ul.sub-menu a .arrow:before,
+ul.page-sidebar-menu > li > ul.sub-menu a .arrow.open:before {
+ color: #3ba6e6 !important;
+}
+ul.page-sidebar-menu > li > a > .arrow.open:before {
+ /* color: #68bbec !important;*/
+}
+ul.page-sidebar-menu > li.active > a .arrow:before,
+ul.page-sidebar-menu > li.active > a .arrow.open:before {
+ color: #ffffff !important;
+}
+/* sidebar search */
+.page-sidebar .sidebar-search input {
+ background-color: #0f5179 !important;
+ color: #0d638f;
+}
+.page-sidebar .sidebar-search input::-webkit-input-placeholder {
+ color: #0d638f !important;
+}
+.page-sidebar .sidebar-search input:-moz-placeholder {
+ color: #0d638f !important;
+}
+.page-sidebar .sidebar-search input:-ms-input-placeholder {
+ color: #0d638f !important;
+}
+.page-sidebar .sidebar-search input {
+ background-color: #e8e8e8 !important;
+ /* color: #bfbfbf !important;*/
+}
+.page-sidebar .sidebar-search .input-box {
+ border-bottom: 1px solid #0d638f !important;
+}
+.page-sidebar .sidebar-search .submit {
+ background-image: url(../../img/search-icon-blue.png);
+}
+/***
+Sidebar toggler
+***/
+.sidebar-toggler {
+ background-image: url(../../img/sidebar-toggler-grey.jpg);
+ background-color: #0f5179;
+}
+/* search box bg color on expanded */
+.page-sidebar-closed .page-sidebar .sidebar-search.open .form-container {
+ background-color: #1b8fd3 !important;
+}
+.page-sidebar-closed .page-sidebar .sidebar-search.open .form-container .remove {
+ background-image: url("../../img/sidebar-search-close-blue.png");
+}
+/* sub menu bg color on hover menu item */
+.page-sidebar-closed ul.page-sidebar-menu > li:hover .sub-menu {
+ background-color: #1b8fd3;
+}
+/***
+Footer
+***/
+.footer .footer-inner {
+ color: #7c7c7c;
+}
+.footer .footer-tools .go-top {
+ background-color: #1985c6;
+}
+.footer .footer-tools .go-top:hover {
+ opacity: 0.7;
+ filter: alpha(opacity=70);
+}
+.footer .footer-tools .go-top i {
+ color: #68bbec;
+}
+/***
+Footer Layouts (new in v1.3)
+***/
+/* begin:fixed footer */
+.page-footer-fixed .footer {
+ background-color: #0f5179;
+}
+.page-footer-fixed .footer .footer-inner {
+ color: #68bbec;
+}
+.page-footer-fixed .footer .footer-tools .go-top {
+ background-color: #1985c6;
+}
+.page-footer-fixed .footer .footer-tools .go-top i {
+ color: #68bbec;
+}
+/* end:fixed footer */
+/***
+Gritter Notifications
+***/
+.gritter-top {
+ background: url(../../thirdparty/gritter/images/gritter-blue.png) no-repeat left -30px !important;
+}
+.gritter-bottom {
+ background: url(../../thirdparty/gritter/images/gritter-blue.png) no-repeat left bottom !important;
+}
+.gritter-item {
+ display: block;
+ background: url(../../thirdparty/gritter/images/gritter-blue.png) no-repeat left -40px !important;
+}
+.gritter-close {
+ background: url(../../thirdparty/gritter/images/gritter-blue.png) no-repeat left top !important;
+}
+.gritter-title {
+ text-shadow: none !important;
+ /* Not supported by IE :( */
+
+}
+/* for the light (white) version of the gritter notice */
+.gritter-light .gritter-item,
+.gritter-light .gritter-bottom,
+.gritter-light .gritter-top,
+.gritter-light .gritter-close {
+ background-image: url(../../thirdparty/gritter/images/gritter-light.png) !important;
+}
+.gritter-item-wrapper a {
+ color: #18a5ed;
+}
+.gritter-item-wrapper a:hover {
+ color: #0b6694;
+}
+/* begin: boxed page */
+@media (min-width: 992px) {
+ .page-boxed {
+ background-color: #125e8b !important;
+ }
+ .page-boxed .page-container {
+ background-color: #1570a6;
+ border-left: 1px solid #1c98e1;
+ border-bottom: 1px solid #1c98e1;
+ }
+ .page-boxed.page-sidebar-reversed .page-container {
+ border-left: 0;
+ border-right: 1px solid #1c98e1;
+ }
+ .page-boxed.page-sidebar-fixed .page-container {
+ border-left: 0;
+ border-bottom: 0;
+ }
+ .page-boxed.page-sidebar-reversed.page-sidebar-fixed .page-container {
+ border-left: 0;
+ border-right: 0;
+ border-bottom: 0;
+ }
+ .page-boxed.page-sidebar-fixed .page-sidebar {
+ border-left: 1px solid #1c98e1;
+ }
+ .page-boxed.page-sidebar-reversed.page-sidebar-fixed .page-sidebar {
+ border-right: 1px solid #1c98e1;
+ border-left: 0;
+ }
+ .page-boxed.page-sidebar-fixed.page-footer-fixed .footer {
+ background-color: #125e8b !important;
+ }
+}
+/* end: boxed page */
+/***
+Landscape phone to portrait tablet
+***/
+@media (max-width: 991px) {
+ /***
+ page sidebar
+ ***/
+ .page-sidebar {
+ background-color: #3d95c9 !important;
+ }
+ ul.page-sidebar-menu > li > a {
+ border-top: 1px solid #187fbd !important;
+ }
+ ul.page-sidebar-menu > li:last-child > a {
+ border-bottom: 0 !important;
+ }
+ .page-sidebar .sidebar-search input {
+ background-color: #3d95c9 !important;
+ }
+ ul.page-sidebar-menu > li.open > a{
+ border-bottom: 1px solid #187fbd !important;
+
+ }
+ ul.page-sidebar-menu > li > a:hover/*,
+ ul.page-sidebar-menu > li:hover > a */{
+ background: #0e4b70;
+ }
+ ul.page-sidebar-menu > li a i{
+ color:#fff !important;
+ }
+ ul.page-sidebar-menu > li a{
+ color:#fff !important;
+ }
+}
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/zteblue.css.gz b/uiframe-iui/src/main/resources/webroot/framework/css/themes/zteblue.css.gz
new file mode 100644
index 00000000..a77b980b
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/zteblue.css.gz
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/zteblue_ifrm.css b/uiframe-iui/src/main/resources/webroot/framework/css/themes/zteblue_ifrm.css
new file mode 100644
index 00000000..fe59da74
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/zteblue_ifrm.css
@@ -0,0 +1,206 @@
+/**
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/***
+light_ifrm theme
+***/
+td>a>span[class^="ict-"], td>a>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+td>div>span[class^="ict-"], td>div>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+td>div>span>span[class^="ict-"], td>div>span>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+td>span>span[class^="ict-"], td>span>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+/* button style*/
+.buttonRounded,
+.buttonRoundedOver,
+.buttonRoundedFocused,
+.buttonRoundedFocusedOver,
+.buttonRoundedDown,
+.buttonRoundedFocusedDown,
+.buttonRoundedSelected,
+.buttonRoundedSelectedFocused,
+.buttonRoundedSelectedDown,
+.buttonRoundedSelectedFocusedDown,
+.buttonRoundedSelectedOver,
+.buttonRoundedSelectedFocusedOver,
+.buttonRoundedDisabled,
+.buttonRoundedSelectedDisabled {
+ background-color: #4da9df;
+ color: #fff;
+ border: 0px solid #b15a59;
+ border-radius: 0px;
+ font-family: Arial, Verdana, sans-serif;
+ font-size: 12px;
+ /*padding: 0 3px;*/
+ padding-left:7px !important;
+ padding-right:7px !important;
+ height:30px !important;
+}
+.buttonRoundedDisabled, .buttonRoundedSelectedDisabled{
+ background-color: #f0f0f0;
+ color: #dadada;
+ opacity: 1;
+}
+.buttonRoundedOver,
+.buttonRoundedFocusedOver,
+.buttonRoundedSelectedFocused,
+.buttonRoundedSelectedFocusedOver,
+.buttonRoundedDown,
+.buttonRoundedFocusedDown {
+ background-color: #479fd3;
+ height:30px !important;
+}
+
+.menuButton,
+.menuButtonOver,
+.menuButtonDown,
+.menuButtonDisabled,
+.menuButtonFocused,
+.menuButtonFocusedDown,
+.menuButtonFocusedOver,
+.menuButtonSelected,
+.menuButtonSelectedDown,
+.menuButtonSelectedOver,
+.menuButtonSelectedDisabled {
+ background-color: #4da9df;
+ border: 0px solid #ababab;
+ color: #fff;
+ font-family: Arial, Verdana, sans-serif;
+ font-size: 12px;
+ padding-left: 7px !important;
+ padding-right: 7px !important;
+ height:30px !important;
+}
+.menuButtonOver {
+ background-color: #479fd3;
+ }
+.menuButtonDisabled{
+ background-color: #f0f0f0;
+ color: #dadada;
+ opacity: 1;
+}
+ .buttonTitle,
+.buttonTitleOver,
+.buttonTitleDown,
+.buttonTitleSelected,
+.buttonTitleFocused,
+.buttonTitleSelectedFocused,
+.buttonTitleSelectedOver,
+.buttonTitleFocusedOver,
+.buttonTitleSelectedFocusedOver,
+.buttonTitleSelectedDown,
+.buttonTitleFocusedDown,
+.buttonTitleSelectedFocusedDown,
+.buttonTitleDisabled,
+.buttonTitleSelectedDisabled {
+ color: #fff ;
+ }
+ .buttonTitleDisabled{
+ background-color: #f0f0f0;
+ color: #dadada;
+ opacity: 1;
+}
+ /* windowBody dialogBody Style */
+ .windowBody,
+.dialogBody {
+ background-color: white;
+ border: 1px solid #2c9ada;
+ border-top: 0;
+}
+.windowHeader,
+.dialogHeader {
+ background-color: #2c9ada;
+ padding: 0;
+}
+/* sectionHeader Style */
+.sectionHeaderopened {
+ background-color: #438eb9;
+ }
+ .sectionHeaderclosed {
+ background-color: #3a85b0;
+ }
+
+#dt_example h1{
+color:#438eb9;
+font-weight:600 !important;
+}
+ /*cell style*/
+.tallCellOver,
+.tallCellOverDark {
+ background-color: #ffede4;
+ border-bottom: 1px solid #ffede4;
+ border-top: 1px solid #ffede4;
+ }
+.tallCellSelected,
+.tallCellSelectedDark {
+ background: #f8dddd;
+ border-bottom: 1px solid #f8dddd;
+ border-top: 1px solid #f8dddd;
+ }
+.tallCellSelectedOver,
+.tallCellSelectedOverDark {
+ background: #f8dddd;
+ border-bottom: 1px solid #f8dddd;
+ border-top: 1px solid #f8dddd;
+ }
+.imgHeaderButtonOver,
+.imgHeaderButtonDown,
+.headerButtonOver,
+.headerButtonDown,
+.sorterButtonOver,
+.sorterButtonDown {
+ background-color: #c4d7e2;
+ }
+.cellSelected,
+.cellSelectedDark,
+.specialColSelected,
+.recordSummaryCellSelected,
+.recordSummaryCellSelectedDark {
+ background: #f8dddd !important;
+ border-bottom: 1px solid #f8dddd;
+ border-top: 1px solid #f8dddd;
+ }
+.cellSelectedOver,
+.cellSelectedOverDark,
+.specialColSelectedOver,
+.recordSummaryCellSelectedOver,
+.recordSummaryCellSelectedOverDark {
+ background: #f8dddd !important;
+ border-bottom: 1px solid #f8dddd;
+ border-top: 1px solid #f8dddd;
+}
+.cellOver,
+.cellOverDark,
+.specialColOver,
+.recordSummaryCellOver,
+.recordSummaryCellOverDark {
+ background: #ffede4 !important;
+ border-bottom: 1px solid #ffede4;
+ border-top: 1px solid #ffede4;
+ }
+.treeCellOver,
+.treeCellOverDark {
+ background-color: #ffede4;
+}
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/zteblue_ifrm.css.gz b/uiframe-iui/src/main/resources/webroot/framework/css/themes/zteblue_ifrm.css.gz
new file mode 100644
index 00000000..fbbb4fc0
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/zteblue_ifrm.css.gz
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight.css b/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight.css
new file mode 100644
index 00000000..ca97281b
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight.css
@@ -0,0 +1,435 @@
+/***
+Blue theme
+***/
+/***
+Reset and overrides
+***/
+body {
+ background-color: #f1f3fa !important;
+ font-family:"microsoft yahei";
+}
+.page-content{
+background-color:#f1f3fa !important;
+}
+.page-sidebar-menu > li.active > a .selected{
+background-image:url("../../img/sidebar-menu-arrow-bluelight.png")
+}
+/***
+Page header
+***/
+.header {
+ filter: none !important;
+ background-image: none !important;
+ background-color: #3366CC !important;
+}
+.header .btn-navbar {
+ background-color: #3366CC!important;
+}
+.header .navbar-nav .dropdown-toggle:hover,
+.header .navbar-nav .dropdown.open .dropdown-toggle {
+ color: #fff;
+ background-color: #3061c1 !important;
+}
+.header .navbar-nav li.dropdown .dropdown-toggle i {
+ color: white !important;
+}
+.zte-theme-panel > .toggler:hover {
+ background-color: #6192f7 !important;
+}
+.page-content .page-breadcrumb.breadcrumb .dashboard-date-range{
+ background-color: #3366CC !important;
+}
+.btn-group .btn.blue.dropdown-toggle{
+ background-color: #3366CC !important;
+}
+.btn-group .btn.blue.dropdown-toggle:hover{
+ background-color: #2f5ebd !important;
+}
+/***
+Header Search
+***/
+.header .search-form {
+ background-color: #0B4263;
+}
+
+.header .search-form .form-control{
+ color: #68bbec;
+ border: 0;
+ background-color: #0B4263;
+}
+
+.header .search-form .submit {
+ background: url(../../img/search-icon-blue.png);
+}
+
+/***
+Hor menu
+***/
+.header .hor-menu ul.nav li a {
+ color: #fff;
+}
+
+.header .hor-menu ul.nav li.open > a,
+.header .hor-menu ul.nav li > a:hover,
+.header .hor-menu ul.nav li > a:focus {
+ color: #bdcff4;
+ background: #3366CC;
+}
+.header .hor-menu .dropdown-menu li > a {
+ color: #333 !important ;
+}
+.header .hor-menu .dropdown-menu li:hover > a{
+ color: #3366CC !important;
+ background: #e5e8f0 !important;
+}
+.dropdown-menu .mega-menu-content .row .mega-menu-submenu .active > a,
+.dropdown-menu .mega-menu-content .row .mega-menu-submenu .active > a:hover{
+ color:#333 !important;
+ background: #D9E5FF !important;
+}
+.header .hor-menu ul.nav li.active > a,
+.header .hor-menu ul.nav li.active > a:hover {
+ color: #fff;
+ background: #3366CC !important;
+}
+.header .hor-menu ul.nav li.current > a,
+.header .hor-menu ul.nav li.current > a:hover {
+ color: #3366CC;
+ background: #4174dc !important;
+}
+
+.header .hor-menu .dropdown-menu {
+ background: #fff ;
+ border: 1px #769be6 solid !important ;
+ border-top:0 !important ;
+ border-bottom-right-radius:5px !important ;
+ border-bottom-left-radius:5px !important ;
+ padding-right:20px;
+}
+
+.header .hor-menu .hor-menu-search-form-toggler.off {
+ background: #4d7ee1 url(../../img/hor-menu-search-close-white.png) no-repeat center;
+}
+
+.header .hor-menu .search-form {
+ background:#4d7ee1;
+}
+
+.header .hor-menu .search-form form input {
+ color: #ccc;
+}
+.header .hor-menu .search-form form input::-webkit-input-placeholder { /* WebKit browsers */
+ color: #ccc;
+}
+.header .hor-menu .search-form form input:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
+ color: #ccc;
+}
+.header .hor-menu .search-form form input::-moz-placeholder { /* Mozilla Firefox 19+ */
+ color: #ccc;
+}
+.header .hor-menu .search-form form input:-ms-input-placeholder { /* Internet Explorer 10+ */
+ color: #ccc;
+}
+
+.header.navbar .hor-menu ul.nav li.current .selected,
+.header.navbar .hor-menu ul.nav li.active .selected {
+ border-top: 6px solid #3366CC;
+}
+/***
+Mega Menu
+***/
+.mega-menu .mega-menu-submenu {
+ //border-right: 1px solid #d5d5d5;
+}
+
+.mega-menu .mega-menu-submenu li h3 {
+ color: #5681DA;
+ font-weight:600 !important;
+
+}
+/*.mega-menu-dropdown .fa,
+#page-f-sidebar-menu .sub-menu .fa,
+.sub-menu .sub-menu .fa
+{
+display:none;
+}去掉左边二级菜单图标*/
+#main_hormenu .mega-menu-dropdown{
+margin-left:30px;
+}
+/***
+Page sidebar
+***/
+.page-sidebar {
+ background-color: #f1f3fa;
+}
+ul.page-sidebar-menu > li:last-child > a {
+ border-bottom: 1px solid transparent !important;
+}
+.ul.page-sidebar-menu > li a i {
+ /* color: #0d638f;*/
+}
+ul.page-sidebar-menu > li.open > a{
+border-bottom: 1px solid #e0e2e9 !important;
+}
+ul.page-sidebar-menu > li > a {
+ border-top: 1px solid #e0e2e9 !important;
+ /*background: #fff !important;*/
+ color: #2e487d !important;
+}
+ul.page-sidebar-menu > li > a:hover{
+ background: #fff !important;
+ color: #3366CC !important;
+}
+ul.page-sidebar-menu > li.active > a {
+ background: #3366CC !important;
+ border-top-color: transparent !important;
+ color: #ffffff !important;
+}
+ul.page-sidebar-menu > li.active > a:hover {
+ background: #507edb !important;
+ border-top-color: transparent !important;
+ color: #ffffff !important;
+}
+ul.page-sidebar-menu > li.active > a i {
+ color: #ffffff;
+}
+ul.page-sidebar-menu > li > ul.sub-menu > li:first-child > a {
+ border-top: 0px !important;
+}
+ul.page-sidebar-menu > li > ul.sub-menu > li > a{
+ color: #2e487d;/*right menu*/
+}
+ul.page-sidebar-menu > li > ul.sub-menu > li.active > a {
+ color: #3366CC !important;
+ background: #dde2f1 !important;
+}
+ul.page-sidebar-menu > li > ul.sub-menu > li.active > a:hover {
+ background: #e3e7f5 !important;
+}
+ul.page-sidebar-menu > li > ul.sub-menu > li > a:hover {
+ background: #eee !important;
+ color:#3366CC;
+}
+ul.page-sidebar-menu > li.open > a{
+ color:#fff;
+ }
+/* 3rd level sub menu */
+ul.page-sidebar-menu > li > ul.sub-menu li > ul.sub-menu > li.active > a,
+ul.page-sidebar-menu > li > ul.sub-menu li > ul.sub-menu > li > a:hover,
+ul.page-sidebar-menu > li > ul.sub-menu li.open > a {
+ color: #3366CC !important;
+ background: #fff !important;
+}
+/* font color for all sub menu links*/
+ul.page-sidebar-menu li > ul.sub-menu > li > a {
+ /*color: #c3e4f7;*/
+}
+/* menu arrows */
+ul.page-sidebar-menu > li > a .arrow:before,
+ul.page-sidebar-menu > li > a .arrow.open:before {
+ /*color: #51b1e9 !important;*/
+}
+ul.page-sidebar-menu > li > ul.sub-menu a .arrow:before,
+ul.page-sidebar-menu > li > ul.sub-menu a .arrow.open:before {
+ color: #3ba6e6 !important;
+}
+ul.page-sidebar-menu > li > a > .arrow.open:before {
+ color: #68bbec !important;
+}
+ul.page-sidebar-menu > li.active > a .arrow:before,
+ul.page-sidebar-menu > li.active > a .arrow.open:before {
+ color: #ffffff !important;
+}
+/* sidebar search */
+.page-sidebar .sidebar-search input {
+ background-color: #0f5179 !important;
+ color: #000000;
+}
+.page-sidebar .sidebar-search input::-webkit-input-placeholder {
+ color: #000000 !important;
+}
+.page-sidebar .sidebar-search input:-moz-placeholder {
+ color: #000000 !important;
+}
+.page-sidebar .sidebar-search input:-ms-input-placeholder {
+ color: #000000 !important;
+}
+.page-sidebar .sidebar-search input {
+ background-color: #eeeeee !important;
+ /*color: white !important;*/
+}
+.page-sidebar .sidebar-search .input-box {
+ border-bottom: 1px solid #000000 !important;
+}
+.page-sidebar .sidebar-search .submit {
+ background-image: url(../../img/search-icon-blue.png);
+}
+/***
+Sidebar toggler
+***/
+.sidebar-toggler {
+ background-image: url(../../img/sidebar-toggler-grey.jpg);
+ background-color: #0f5179;
+}
+/* search box bg color on expanded */
+.page-sidebar-closed .page-sidebar .sidebar-search.open .form-container {
+ background-color: #3366CC !important;
+}
+.page-sidebar-closed .page-sidebar .sidebar-search.open .form-container .remove {
+ background-image: url("../../img/sidebar-search-close-blue.png");
+}
+/* sub menu bg color on hover menu item */
+.page-sidebar-closed ul.page-sidebar-menu > li:hover .sub-menu {
+ background-color: #e4e4e4;
+}
+/***
+Footer
+***/
+.footer .footer-inner {
+ color: #7c7c7c;
+}
+.footer .footer-tools .go-top {
+ background-color: #1985c6;
+}
+.footer .footer-tools .go-top:hover {
+ opacity: 0.7;
+ filter: alpha(opacity=70);
+}
+.footer .footer-tools .go-top i {
+ color: #68bbec;
+}
+/***
+Footer Layouts (new in v1.3)
+***/
+/* begin:fixed footer */
+.page-footer-fixed .footer {
+ background-color: #0f5179;
+}
+.page-footer-fixed .footer .footer-inner {
+ color: #68bbec;
+}
+.page-footer-fixed .footer .footer-tools .go-top {
+ background-color: #1985c6;
+}
+.page-footer-fixed .footer .footer-tools .go-top i {
+ color: #68bbec;
+}
+/* end:fixed footer */
+/***
+Gritter Notifications
+***/
+.gritter-top {
+ background: url(../../thirdparty/gritter/images/gritter-blue.png) no-repeat left -30px !important;
+}
+.gritter-bottom {
+ background: url(../../thirdparty/gritter/images/gritter-blue.png) no-repeat left bottom !important;
+}
+.gritter-item {
+ display: block;
+ background: url(../../thirdparty/gritter/images/gritter-blue.png) no-repeat left -40px !important;
+}
+.gritter-close {
+ background: url(../../thirdparty/gritter/images/gritter-blue.png) no-repeat left top !important;
+}
+.gritter-title {
+ text-shadow: none !important;
+ /* Not supported by IE :( */
+
+}
+/* for the light (white) version of the gritter notice */
+.gritter-light .gritter-item,
+.gritter-light .gritter-bottom,
+.gritter-light .gritter-top,
+.gritter-light .gritter-close {
+ background-image: url(../../thirdparty/gritter/images/gritter-light.png) !important;
+}
+.gritter-item-wrapper a {
+ color: #18a5ed;
+}
+.gritter-item-wrapper a:hover {
+ color: #0b6694;
+}
+/* begin: boxed page */
+@media (min-width: 992px) {
+ .page-boxed {
+ background-color: #fff !important;
+ }
+ .page-boxed .page-container {
+ background-color: #fff;
+ border-left: 1px solid #1c98e1;
+ border-bottom: 1px solid #1c98e1;
+ }
+ .page-boxed.page-sidebar-reversed .page-container {
+ border-left: 0;
+ border-right: 1px solid #1c98e1;
+ }
+ .page-boxed.page-sidebar-fixed .page-container {
+ border-left: 0;
+ border-bottom: 0;
+ }
+ .page-boxed.page-sidebar-reversed.page-sidebar-fixed .page-container {
+ border-left: 0;
+ border-right: 0;
+ border-bottom: 0;
+ }
+ .page-boxed.page-sidebar-fixed .page-sidebar {
+ border-left: 1px solid #1c98e1;
+ }
+ .page-boxed.page-sidebar-reversed.page-sidebar-fixed .page-sidebar {
+ border-right: 1px solid #1c98e1;
+ border-left: 0;
+ }
+ .page-boxed.page-sidebar-fixed.page-footer-fixed .footer {
+ background-color: #125e8b !important;
+ }
+ul.page-sidebar-menu > li .active> a{
+ background: #3366CC !important;
+}
+/* end: boxed page */
+/***
+Landscape phone to portrait tablet
+***/
+@media (max-width: 991px) {
+ /***
+ page sidebar
+ ***/
+ .page-sidebar {
+ background-color: #f1f3fa !important;
+ }
+ ul.page-sidebar-menu > li > a {
+ border-top: 1px solid #e0e2e9 !important;
+
+ }
+ ul.page-sidebar-menu > li > a :hover{
+ border-top: 1px solid #e0e2e9 !important;
+ color: #fff !important;
+ }
+ ul.page-sidebar-menu > li:last-child > a {
+ border-bottom: 0 !important;
+ }
+ .page-sidebar .sidebar-search input {
+ background-color: #4072d6 !important;
+ color:#c5c5c7 !important;
+ }
+ .page-sidebar .sidebar-search input::-webkit-input-placeholder {
+ color: #c5c5c7 !important;
+}
+ .page-sidebar .sidebar-search input:-moz-placeholder {
+ color: #c5c5c7 !important;
+}
+ .page-sidebar .sidebar-search input:-ms-input-placeholder {
+ color: #c5c5c7 !important;
+}
+ ul.page-sidebar-menu > li.open > a,
+ ul.page-sidebar-menu > li.open > a:hover,
+ ul.page-sidebar-menu > li > a:hover{
+ background: #3366CC !important;
+ }
+ ul.page-sidebar-menu > li > a:hover,
+ ul.page-sidebar-menu > li:hover > a {
+ background: #fff !important;
+ }
+ ul.page-sidebar-menu li > ul.sub-menu > li > a {
+ color: #3366CC;
+}
+
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight.css.gz b/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight.css.gz
new file mode 100644
index 00000000..e00ec55d
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight.css.gz
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight2.css b/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight2.css
new file mode 100644
index 00000000..2ec6a42e
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight2.css
@@ -0,0 +1,505 @@
+/***
+Blue theme
+***/
+/***
+Reset and overrides
+***/
+body {
+ background-color: #f9f9f9 !important;
+ font-family: "microsoft yahei" !important;
+}
+
+.page-content {
+ background-color: #f1f3fa !important;
+}
+
+/***
+Page header
+***/
+.header {
+ filter: none !important;
+ /*background-image: none !important;*/
+ background-color: #1178ee !important;
+ /* background: -webkit-linear-gradient(#37c4fa, #0081bb );
+ background: -o-linear-gradient(#37c4fa, #0081bb );
+ background: -moz-linear-gradient(#37c4fa, #0081bb );
+ background: linear-gradient(#37c4fa, #0081bb ); */
+}
+
+.header .btn-navbar {
+ background-color: #f9f9f9 !important;
+}
+
+.header .navbar-nav .dropdown-toggle:hover,
+.header .navbar-nav .dropdown.open .dropdown-toggle {
+ color: #fff;
+ background-color: #1470d8 !important;
+}
+
+.zte-theme-panel > .toggler:hover {
+ background-color: #70abcd !important;
+}
+
+.header .navbar-nav li.dropdown .dropdown-toggle i {
+ color: #fff !important;
+}
+
+.btn-group .btn.blue.dropdown-toggle {
+ background-color: #1178EE !important;
+}
+
+.btn-group .btn.blue.dropdown-toggle:hover {
+ background-color: #0f70df !important;
+}
+
+/***
+Header Search
+***/
+.header .search-form {
+ background-color: #0B4263;
+}
+
+.header .search-form .form-control {
+ color: #68bbec;
+ border: 0;
+ background-color: #0B4263;
+}
+
+.header .search-form .submit {
+ background: url(../../img/search-icon-blue.png);
+}
+
+/***
+Hor menu
+***/
+.header .hor-menu ul.nav li a {
+ color: #fff;
+}
+
+.header .hor-menu ul.nav li.open > a,
+.header .hor-menu ul.nav li > a:hover,
+.header .hor-menu ul.nav li > a:focus {
+ color: #D4E9F2;
+ background-color: #1178ee;
+ /*background: -webkit-linear-gradient(#37c4fa, #0081bb );
+ background: -o-linear-gradient(#37c4fa, #0081bb );
+ background: -moz-linear-gradient(#37c4fa, #0081bb );
+ background: linear-gradient(#37c4fa, #0081bb );*/
+}
+
+.header.navbar .hor-menu ul.nav li.current .selected,
+.header.navbar .hor-menu ul.nav li.active .selected {
+ border-top: 6px solid #0081bb;
+}
+
+.header .hor-menu .dropdown-menu li:hover > a,
+.header .hor-menu ul.nav li.active > a,
+.header .hor-menu ul.nav li.active > a:hover {
+ color: #fff;
+ /*background: -webkit-linear-gradient(#37c4fa, #0081bb );
+ background: -o-linear-gradient(#37c4fa, #0081bb );
+ background: -moz-linear-gradient(#37c4fa, #0081bb );
+ background: linear-gradient(#37c4fa, #0081bb );*/
+}
+
+.header.navbar .hor-menu ul.nav li.current .selected,
+.header.navbar .hor-menu ul.nav li.active .selected {
+ border-top: 6px solid #0081bb;
+}
+
+.header .hor-menu ul.nav li.current > a,
+.header .hor-menu ul.nav li.current > a:hover {
+ color: #fff;
+ background: #e02222 !important;
+}
+
+.header .hor-menu .dropdown-menu {
+ background: #1178EE;
+}
+
+.header .hor-menu .dropdown-menu li > a {
+ color: #ccc;
+}
+
+.header .hor-menu .hor-menu-search-form-toggler.off {
+ background: #126ed8 url(../../img/hor-menu-search-close-white.png) no-repeat center;
+}
+
+.header .hor-menu .search-form {
+ background: #126ed8;
+}
+
+.header .hor-menu .search-form form input {
+ color: #ccc;
+}
+
+.header .hor-menu .search-form .btn {
+ color: #ccc;
+ background: url(../../img/search-icon-white.png) no-repeat center;
+}
+
+.header .hor-menu .search-form form input::-webkit-input-placeholder {
+ /* WebKit browsers */
+ color: #ccc;
+}
+
+.header .hor-menu .search-form form input:-moz-placeholder {
+ /* Mozilla Firefox 4 to 18 */
+ color: #ccc;
+}
+
+.header .hor-menu .search-form form input::-moz-placeholder {
+ /* Mozilla Firefox 19+ */
+ color: #ccc;
+}
+
+.header .hor-menu .search-form form input:-ms-input-placeholder {
+ /* Internet Explorer 10+ */
+ color: #ccc;
+}
+
+.dropdown-menu .mega-menu-content .row .mega-menu-submenu li:hover > a {
+ color: #fff !important;
+ background: #388ef1 !important;
+}
+
+.dropdown-menu .mega-menu-content .row .mega-menu-submenu .active > a,
+.dropdown-menu .mega-menu-content .row .mega-menu-submenu .active > a:hover {
+ color: #fff !important;
+ background: #0e6ad4 !important;
+}
+
+/***
+Mega Menu
+***/
+.mega-menu .mega-menu-submenu {
+ border-right: 1px solid #1876AD;
+}
+
+.mega-menu .mega-menu-submenu li h3 {
+ color: #fff;
+ font-family: "microsoft yahei"
+}
+
+/***
+Page sidebar
+***/
+.page-sidebar {
+ background-color: #f9f9f9;
+}
+
+ul.page-sidebar-menu > li > a {
+ border-top: 1px solid #e5e5e5 !important;
+ color: #616161 !important;
+ border-left: 3px solid transparent !important;
+}
+
+ul.page-sidebar-menu > li > a:hover {
+ color: #1178EE !important;
+ background-color: #eee;
+}
+
+ul.page-sidebar-menu > li:last-child > a {
+ border-bottom: 1px solid #e5e5e5 !important;
+}
+
+/*ul.page-sidebar-menu > li a i {
+ color: #e5e5e5 ! important;
+}*/
+ul.page-sidebar-menu ul.sub-menu > li > a {
+ color: #616161 !important;
+}
+
+ul.page-sidebar-menu ul.sub-menu > li.active > a {
+ color: #1178EE !important;
+}
+
+ul.page-sidebar-menu ul.sub-menu > li > a:hover {
+ color: #1178EE !important;
+ background-color: #eee;
+}
+
+ul.page-sidebar-menu > li > a:hover,
+ul.page-sidebar-menu > li:hover > a {
+ background: #fff;
+ color: #585858;
+ border-left: 3px solid #1178ee !important;
+}
+
+ul.page-sidebar-menu > li.open > a {
+ background: #fff;
+ color: #585858;
+ border-bottom: 1px solid #e5e5e5 !important;
+}
+
+ul.page-sidebar-menu > li.active > a {
+ background: #fff !important;
+ border-top: 1px solid #e5e5e5 !important;
+ color: #1178ee !important;
+ font-weight: bold;
+}
+
+ul.page-sidebar-menu > li.active > a i {
+ color: #1178ee;
+}
+
+ul.page-sidebar-menu > li > ul.sub-menu > li:first-child > a {
+ /* border-top: 1px solid #e5e5e5 !important;*/
+}
+
+ul.page-sidebar-menu > li > ul.sub-menu > li.active > a
+ul.page-sidebar-menu > li > ul.sub-menu > li > a:hover {
+ color: #4b88b7 !important;
+}
+
+ul.page-sidebar-menu > li > ul.sub-menu > li > a:hover {
+ /* background: #1b8fd3 !important;*/
+}
+
+/* 3rd level sub menu */
+ul.page-sidebar-menu > li > ul.sub-menu li > ul.sub-menu > li.active > a,
+ul.page-sidebar-menu > li > ul.sub-menu li > ul.sub-menu > li > a:hover,
+ul.page-sidebar-menu > li > ul.sub-menu li.open > a {
+ color: #ffffff !important;
+ border-bottom: 1px solid #e5e5e5 !important;
+}
+
+.page-sidebar-menu > li.active > a .selected {
+ /* background-image: url(../../img/sidebar-menu-arrow-blue.png) !important;*/
+ border-right: 2px solid #1178ee !important;
+ height: 37px !important;
+ top: 2px !important;
+}
+
+/* font color for all sub menu links*/
+ul.page-sidebar-menu li > ul.sub-menu > li > a {
+ /*color: #c3e4f7;*/
+}
+
+/* menu arrows */
+ul.page-sidebar-menu > li > a .arrow:before,
+ul.page-sidebar-menu > li > a .arrow.open:before {
+ /*color: #51b1e9 !important;*/
+}
+
+ul.page-sidebar-menu > li > ul.sub-menu a .arrow:before,
+ul.page-sidebar-menu > li > ul.sub-menu a .arrow.open:before {
+ color: #3ba6e6 !important;
+}
+
+ul.page-sidebar-menu > li > a > .arrow.open:before {
+ /* color: #68bbec !important;*/
+}
+
+/*ul.page-sidebar-menu > li.active > a .arrow:before,
+ul.page-sidebar-menu > li.active > a .arrow.open:before {
+ color: #ffffff !important;
+}*/
+/* sidebar search */
+.page-sidebar .sidebar-search input {
+ background-color: #0f5179 !important;
+ color: #1178ee;
+}
+
+.page-sidebar .sidebar-search input::-webkit-input-placeholder {
+ color: #1178ee !important;
+}
+
+.page-sidebar .sidebar-search input:-moz-placeholder {
+ color: #1178ee !important;
+}
+
+.page-sidebar .sidebar-search input:-ms-input-placeholder {
+ color: #1178ee !important;
+}
+
+.page-sidebar .sidebar-search input {
+ background-color: #f9f9f9 !important;
+ /* color: #bfbfbf !important;*/
+}
+
+.page-sidebar .sidebar-search .input-box {
+ border-bottom: 1px solid #1178ee !important;
+}
+
+.page-sidebar .sidebar-search .submit {
+ background-image: url(../../img/search-icon-blue.png);
+}
+
+/***
+Sidebar toggler
+***/
+.sidebar-toggler {
+ background-image: url(../../img/sidebar-toggler-grey.jpg);
+ background-color: #0f5179;
+}
+
+/* search box bg color on expanded */
+.page-sidebar-closed .page-sidebar .sidebar-search.open .form-container {
+ background-color: #f9f9f9 !important;
+}
+
+.page-sidebar-closed .page-sidebar .sidebar-search.open .form-container .remove {
+ background-image: url("../../img/sidebar-search-close-blue.png");
+}
+
+/* sub menu bg color on hover menu item */
+.page-sidebar-closed ul.page-sidebar-menu > li:hover .sub-menu {
+ background-color: #f9f9f9;
+}
+
+/***
+Footer
+***/
+.footer .footer-inner {
+ color: #7c7c7c;
+}
+
+.footer .footer-tools .go-top {
+ background-color: #1985c6;
+}
+
+.footer .footer-tools .go-top:hover {
+ opacity: 0.7;
+ filter: alpha(opacity=70);
+}
+
+.footer .footer-tools .go-top i {
+ color: #68bbec;
+}
+
+/***
+Footer Layouts (new in v1.3)
+***/
+/* begin:fixed footer */
+.page-footer-fixed .footer {
+ background-color: #0f5179;
+}
+
+.page-footer-fixed .footer .footer-inner {
+ color: #68bbec;
+}
+
+.page-footer-fixed .footer .footer-tools .go-top {
+ background-color: #1985c6;
+}
+
+.page-footer-fixed .footer .footer-tools .go-top i {
+ color: #68bbec;
+}
+
+/* end:fixed footer */
+/***
+Gritter Notifications
+***/
+.gritter-top {
+ background: url(../../thirdparty/gritter/images/gritter-blue.png) no-repeat left -30px !important;
+}
+
+.gritter-bottom {
+ background: url(../../thirdparty/gritter/images/gritter-blue.png) no-repeat left bottom !important;
+}
+
+.gritter-item {
+ display: block;
+ background: url(../../thirdparty/gritter/images/gritter-blue.png) no-repeat left -40px !important;
+}
+
+.gritter-close {
+ background: url(../../thirdparty/gritter/images/gritter-blue.png) no-repeat left top !important;
+}
+
+.gritter-title {
+ text-shadow: none !important;
+ /* Not supported by IE :( */
+
+}
+
+/* for the light (white) version of the gritter notice */
+.gritter-light .gritter-item,
+.gritter-light .gritter-bottom,
+.gritter-light .gritter-top,
+.gritter-light .gritter-close {
+ background-image: url(../../thirdparty/gritter/images/gritter-light.png) !important;
+}
+
+.gritter-item-wrapper a {
+ color: #18a5ed;
+}
+
+.gritter-item-wrapper a:hover {
+ color: #0b6694;
+}
+
+/* begin: boxed page */
+@media (min-width: 992px) {
+ .page-boxed {
+ background-color: #125e8b !important;
+ }
+
+ .page-boxed .page-container {
+ background-color: #1570a6;
+ border-left: 1px solid #1c98e1;
+ border-bottom: 1px solid #1c98e1;
+ }
+
+ .page-boxed.page-sidebar-reversed .page-container {
+ border-left: 0;
+ border-right: 1px solid #1c98e1;
+ }
+
+ .page-boxed.page-sidebar-fixed .page-container {
+ border-left: 0;
+ border-bottom: 0;
+ }
+
+ .page-boxed.page-sidebar-reversed.page-sidebar-fixed .page-container {
+ border-left: 0;
+ border-right: 0;
+ border-bottom: 0;
+ }
+
+ .page-boxed.page-sidebar-fixed .page-sidebar {
+ border-left: 1px solid #1c98e1;
+ }
+
+ .page-boxed.page-sidebar-reversed.page-sidebar-fixed .page-sidebar {
+ border-right: 1px solid #1c98e1;
+ border-left: 0;
+ }
+
+ .page-boxed.page-sidebar-fixed.page-footer-fixed .footer {
+ background-color: #125e8b !important;
+ }
+}
+
+/* end: boxed page */
+/***
+Landscape phone to portrait tablet
+***/
+@media (max-width: 991px) {
+ /***
+ page sidebar
+ ***/
+ .page-sidebar {
+ background-color: #f9f9f9 !important;
+ }
+
+ ul.page-sidebar-menu > li > a {
+ border-top: 1px solid #e5e5e5 !important;
+ }
+
+ ul.page-sidebar-menu > li:last-child > a {
+ border-bottom: 0 !important;
+ }
+
+ .page-sidebar .sidebar-search input {
+ background-color: #f9f9f9 !important;
+ }
+
+ ul.page-sidebar-menu > li.open > a,
+ ul.page-sidebar-menu > li > a:hover,
+ ul.page-sidebar-menu > li:hover > a {
+ background: #fff;
+ }
+}
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight2.css.gz b/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight2.css.gz
new file mode 100644
index 00000000..f5b8bdf5
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight2.css.gz
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight2_ifrm.css b/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight2_ifrm.css
new file mode 100644
index 00000000..3a4032d9
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight2_ifrm.css
@@ -0,0 +1,229 @@
+/**
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/***
+ztebluelight2_ifrm theme
+***/
+body{
+ background-color: white!important;
+}
+
+td>a>span[class^="ict-"], td>a>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+td>div>span[class^="ict-"], td>div>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+td>div>span>span[class^="ict-"], td>div>span>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+td>span>span[class^="ict-"], td>span>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+/* button style*/
+.buttonRounded,
+.buttonRoundedOver,
+.buttonRoundedFocused,
+.buttonRoundedFocusedOver,
+.buttonRoundedDown,
+.buttonRoundedFocusedDown,
+.buttonRoundedSelected,
+.buttonRoundedSelectedFocused,
+.buttonRoundedSelectedDown,
+.buttonRoundedSelectedFocusedDown,
+.buttonRoundedSelectedOver,
+.buttonRoundedSelectedFocusedOver,
+.buttonRoundedDisabled,
+.buttonRoundedSelectedDisabled {
+ background-color: #1095cd;
+ color: #fff;
+ border: 0px solid #b15a59;
+ border-radius: 0px;
+ font-family: Arial, Verdana, sans-serif;
+ font-size: 12px;
+ /*padding: 0 3px;*/
+ padding-left:7px !important;
+ padding-right:7px !important;
+ height:30px !important;
+}
+.buttonRoundedDisabled, .buttonRoundedSelectedDisabled{
+ background-color: #f0f0f0;
+ color: #dadada;
+ opacity: 1;
+}
+.buttonRoundedOver,
+.buttonRoundedFocusedOver,
+.buttonRoundedSelectedFocused,
+.buttonRoundedSelectedFocusedOver,
+.buttonRoundedDown,
+.buttonRoundedFocusedDown {
+ background-color: #3a85b0;
+ height:30px !important;
+}
+
+.menuButton,
+.menuButtonOver,
+.menuButtonDown,
+.menuButtonDisabled,
+.menuButtonFocused,
+.menuButtonFocusedDown,
+.menuButtonFocusedOver,
+.menuButtonSelected,
+.menuButtonSelectedDown,
+.menuButtonSelectedOver,
+.menuButtonSelectedDisabled {
+ background-color: #0081bb;
+ border: 0px solid #ababab;
+ color: #fff;
+ font-family: Arial, Verdana, sans-serif;
+ font-size: 12px;
+ padding-left: 7px !important;
+ padding-right: 7px !important;
+ height:30px !important;
+}
+.menuButtonOver {
+ background-color: #3a85b0;
+ }
+.menuButtonDisabled{
+ background-color: #f0f0f0;
+ color: #dadada;
+ opacity: 1;
+}
+ .buttonTitle,
+.buttonTitleOver,
+.buttonTitleDown,
+.buttonTitleSelected,
+.buttonTitleFocused,
+.buttonTitleSelectedFocused,
+.buttonTitleSelectedOver,
+.buttonTitleFocusedOver,
+.buttonTitleSelectedFocusedOver,
+.buttonTitleSelectedDown,
+.buttonTitleFocusedDown,
+.buttonTitleSelectedFocusedDown,
+.buttonTitleDisabled,
+.buttonTitleSelectedDisabled {
+ color: #fff ;
+ }
+ .buttonTitleDisabled{
+ background-color: #f0f0f0;
+ color: #dadada;
+ opacity: 1;
+}
+ /* windowBody dialogBody Style */
+ .windowBody,
+.dialogBody {
+ background-color: white;
+ border: 1px solid #0081bb;
+ border-top: 0;
+}
+.windowHeader,
+.dialogHeader {
+ background-color: #0081bb;
+ padding: 0;
+}
+/* sectionHeader Style */
+.sectionHeaderopened {
+ background-color: #0081bb;
+ }
+ .sectionHeaderclosed {
+ background-color: #3a85b0;
+ }
+
+#dt_example h1{
+color:#0081bb;
+font-weight:600 !important;
+}
+/*cell style*/
+.tallCellOver,
+.tallCellOverDark {
+ background-color: #d9e3e8;
+ border-bottom: 1px solid #d9e3e8;
+ border-top: 1px solid #d9e3e8;
+ }
+.tallCellSelected,
+.tallCellSelectedDark {
+ background: #c4d7e2;
+ border-bottom: 1px solid #c4d7e2;
+ border-top: 1px solid #c4d7e2;
+ }
+.tallCellSelectedOver,
+.tallCellSelectedOverDark {
+ background: #c4d7e2;
+ border-bottom: 1px solid #c4d7e2;
+ border-top: 1px solid #c4d7e2;
+ }
+.imgHeaderButtonOver,
+.imgHeaderButtonDown,
+.headerButtonOver,
+.headerButtonDown,
+.sorterButtonOver,
+.sorterButtonDown {
+ background-color: #c4d7e2;
+ }
+.cellSelected,
+.cellSelectedDark,
+.specialColSelected,
+.recordSummaryCellSelected,
+.recordSummaryCellSelectedDark {
+ background: #c4d7e2 !important;
+ border-bottom: 1px solid #c4d7e2;
+ border-top: 1px solid #c4d7e2;
+ }
+.cellSelectedOver,
+.cellSelectedOverDark,
+.specialColSelectedOver,
+.recordSummaryCellSelectedOver,
+.recordSummaryCellSelectedOverDark {
+ background: #c4d7e2 !important;
+ border-bottom: 1px solid #c4d7e2;
+ border-top: 1px solid #c4d7e2;
+}
+.cellOver,
+.cellOverDark,
+.specialColOver,
+.recordSummaryCellOver,
+.recordSummaryCellOverDark {
+ background: #d9e3e8 !important;
+ border-bottom: 1px solid #d9e3e8;
+ border-top: 1px solid #d9e3e8;
+ }
+.treeCellOver,
+.treeCellOverDark {
+ background-color: #d9e3e8;
+}
+/*日志管理的蓝色大圆角筛选按?/
+.blue {
+ background-color: #fff;
+ color:#1095cd;
+ }
+.blue:hover {
+ background-color: #e8f3fd;
+ color:#5b9bd1;
+ }
+.blue.selected{
+ border:0;
+ background-color: #1178EE;
+ color:#fff;
+}
+.blue.selected:hover{
+ border:0;
+ background-color: #1178EE;
+ color:#fff;
+}
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight2_ifrm.css.gz b/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight2_ifrm.css.gz
new file mode 100644
index 00000000..39bd622b
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight2_ifrm.css.gz
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight3.css b/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight3.css
new file mode 100644
index 00000000..f00d5846
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight3.css
@@ -0,0 +1,497 @@
+/**
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/***
+light theme
+***/
+
+/***
+Reset and overrides
+***/
+body {
+ background-color: #eeeeee !important;
+}
+/***
+Page header
+***/
+.header {
+ background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #3993ba), color-stop(50%, #1f88b3), color-stop(100%, #067ead));
+ background-image: -moz-linear-gradient(top, #3993ba 0%, #1f88b3 50%, #067ead 100%);
+ background-image: -o-linear-gradient(top, #3993ba 0%, #1f88b3 50%, #067ead 100%);
+ background-image: linear-gradient(top, #3993ba 0%, #1f88b3 50%, #067ead 100%);
+ background-color: #1584b0 ;
+}
+.header .btn-navbar {
+ background-color: #434343 !important;
+}
+.header .navbar-nav .dropdown-toggle:hover,
+.header .navbar-nav .dropdown.open .dropdown-toggle {
+ background-color: #4399bd !important;
+}
+.header .navbar-nav li.dropdown .dropdown-toggle i {
+ color: #ffffff !important;
+}
+.zte-theme-panel > .toggler:hover {
+ background-color: #54aacf !important;
+}
+.btn-group .btn.blue.dropdown-toggle{
+background-color: #428bca !important;
+}
+.page-content .page-breadcrumb.breadcrumb{
+background-color:#F5F5F5 !important;
+}
+/***
+Header Search
+***/
+.header .search-form {
+ background-color: #3a3a3a;
+}
+
+.header .search-form .form-control{
+ color: #ccc;
+ border: 0;
+ background-color: #3a3a3a;
+}
+
+.header .search-form .submit {
+ background: url(../../img/search-icon.png);
+}
+
+/***
+Hor menu
+***/
+.header .hor-menu ul.nav li a {
+ color: #ccc;
+}
+
+.header .hor-menu ul.nav li.open > a,
+.header .hor-menu ul.nav li > a:hover,
+.header .hor-menu ul.nav li > a:focus {
+ color: #fff;
+ background: #4399bd;
+}
+
+.header .hor-menu .dropdown-menu li:hover > a,
+.header .hor-menu ul.nav li.active > a,
+.header .hor-menu ul.nav li.active > a:hover {
+ color: #fff;
+ background: #136c8f !important;
+}
+.header.navbar .hor-menu ul.nav li.current .selected,
+.header.navbar .hor-menu ul.nav li.active .selected {
+ border-top: 6px solid #136c8f;
+ }
+.header .hor-menu ul.nav li.current > a,
+.header .hor-menu ul.nav li.current > a:hover {
+ color: #fff;
+ background: #e02222 !important;
+}
+
+.header .hor-menu .dropdown-menu {
+ background: #4399bd;
+}
+.header .hor-menu .dropdown-menu li > a {
+ color: #ccc;
+}
+
+.header .hor-menu .hor-menu-search-form-toggler.off {
+ background: #4399bd url(../../img/hor-menu-search-close-white.png) no-repeat center;
+}
+
+.header .hor-menu .search-form {
+ background:#4399bd;
+}
+
+.header .hor-menu .search-form form input {
+ color: #ccc;
+}
+
+.header .hor-menu .search-form .btn {
+ color: #ccc;
+ background: url(../../img/search-icon-white.png) no-repeat center;
+}
+
+.header .hor-menu .search-form form input::-webkit-input-placeholder { /* WebKit browsers */
+ color: #ccc;
+}
+.header .hor-menu .search-form form input:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
+ color: #ccc;
+}
+.header .hor-menu .search-form form input::-moz-placeholder { /* Mozilla Firefox 19+ */
+ color: #ccc;
+}
+.header .hor-menu .search-form form input:-ms-input-placeholder { /* Internet Explorer 10+ */
+ color: #ccc;
+}
+
+/***
+Mega Menu
+***/
+.mega-menu .mega-menu-submenu {
+ border-right: 1px solid #656565;
+}
+
+.mega-menu .mega-menu-submenu li h3 {
+ color: #fff;
+}
+
+/***
+Page sidebar
+***/
+/*.page-content {
+ border-left: 1px solid #e2e2e2 !important;
+ border-bottom: 1px solid #e2e2e2 !important;*/
+}
+.page-sidebar-reversed .page-content {
+ border-left: 0;
+ border-right: 1px solid #e2e2e2 !important;
+}
+.page-sidebar {
+ background-color: #eeeeee;
+}
+.page-sidebar-fixed .page-content {
+ border: 0 !important;
+}
+.page-sidebar-fixed .page-sidebar {
+ border-right: 1px solid #e2e2e2 !important;
+}
+
+
+ul.page-sidebar-menu > li > a {
+ border-top: 1px solid #ececec !important;
+ border-bottom: 1px solid #cccccc !important;
+ color: #000 !important;
+ font-weight: 400;
+ background-color: #e0e0e0 !important;
+}
+
+ul.page-sidebar-menu > li:first-child > a {
+ border-top: 1px solid transparent !important;
+}
+
+ul.page-sidebar-menu > li:last-child > a {
+ border-bottom: 1px solid transparent !important;
+}
+
+ul.page-sidebar-menu > li a i {
+ color: #000000 !important;
+}
+ul.page-sidebar-menu > li.open > a,
+ul.page-sidebar-menu > li > a:hover,
+ul.page-sidebar-menu > li:hover > a {
+ background: #eee;
+ border-top: 1px solid #e8e8e8;
+}
+/*ul.page-sidebar-menu > li.active > a .selected {
+ right:-7px;
+ top:0px;
+ width: 7px;
+ height: 39px;
+ background-image: url("../../img/sidebar-menu-arrow-green.png");
+} */
+.page-sidebar-reversed ul.page-sidebar-menu > li.active > a .selected {
+ right: auto;
+ left:-7px;
+ background-image: url("../../img/sidebar-menu-arrow-green-reverse.png");
+}
+ul.page-sidebar-menu > li.active i {
+ color: #fff !important;
+}
+.page-sidebar-fixed ul.page-sidebar-menu > li.active > a .selected {
+ display: none;
+}
+ul.page-sidebar-menu > li.active > a{
+ background: #428bca !important;
+ border-top-color: transparent !important;
+ color:#fff!important;
+}
+ul.page-sidebar-menu > li.active > a i {
+ color: #fff;
+}
+ul.page-sidebar-menu > li > a > .arrow:before,
+ul.page-sidebar-menu > li > a > .arrow.open:before {
+ color: #ccc !important;
+}
+ul.page-sidebar-menu > li.active > a .arrow:before,
+ul.page-sidebar-menu > li.active > a .arrow.open:before {
+ color: #fff !important;
+}
+ul.page-sidebar-menu > li > ul.sub-menu > li:first-child > a {
+ border-top: 0px !important;
+}
+
+ul.page-sidebar-menu ul.sub-menu > li > a {
+ font-weight: 400 !important;
+ color: #333 !important;
+}
+ul.page-sidebar-menu ul.sub-menu > li.active > a,
+ul.page-sidebar-menu ul.sub-menu > li > a:hover {
+ color: #818181 !important;
+ background: #efefef !important;
+}
+
+ul.page-sidebar-menu > li > ul.sub-menu a .arrow:before,
+ul.page-sidebar-menu > li > ul.sub-menu a .arrow.open:before {
+ color: #ccc !important;
+}
+
+/* sub menu links effects */
+ul.page-sidebar-menu ul.sub-menu > li.active > a,
+ul.page-sidebar-menu ul.sub-menu > li.active > a:hover{
+ color: #000 !important;
+ background: #dbe6ea !important;
+}
+ul.page-sidebar-menu ul.sub-menu > li > a:hover,
+ul.page-sidebar-menu ul.sub-menu > li.open > a {
+ color: #000000 !important;
+ background: #e7e7e7 !important;
+}
+ul.page-sidebar-menu ul.sub-menu > li > a i {
+ color: #000000 !important;
+}
+
+/* sidebar search */
+.page-sidebar .sidebar-search input {
+ background-color: #eeeeee !important;
+ color: #727272 !important;
+}
+.page-sidebar .sidebar-search input::-webkit-input-placeholder {
+ color: #aaa !important;
+}
+.page-sidebar .sidebar-search input:-moz-placeholder {
+ color: #aaa !important;
+}
+.page-sidebar .sidebar-search input:-ms-input-placeholder {
+ color: #aaa !important;
+}
+.page-sidebar .sidebar-search .input-box {
+ border-bottom: 1px solid #e2e2e2 !important;
+}
+.page-sidebar .sidebar-search .submit {
+ background-image: url(../../img/search-icon-white.png);
+}
+
+/***
+Sidebar toggler
+***/
+.sidebar-toggler {
+ background-image: url(../../img/sidebar-toggler-light.jpg);
+ background-color: #333;
+}
+/* search box bg color on expanded */
+.page-sidebar-closed .page-sidebar .sidebar-search.open .form-container {
+ background-color: #fbfbfb !important;
+}
+.page-sidebar-closed .page-sidebar .sidebar-search.open .form-container .remove {
+ background-image: url("../../img/sidebar-search-close-light.png");
+}
+/* sub menu bg color on hover menu item */
+.page-sidebar-closed ul.page-sidebar-menu > li:hover .sub-menu {
+ background-color: #eeeeee;
+}
+/***
+Footer
+***/
+.footer .footer-inner {
+ color: #333333;
+}
+.footer .footer-tools .go-top {
+ background-color: #666666;
+}
+.footer .footer-tools .go-top:hover {
+ opacity: 0.7;
+ filter: alpha(opacity=70);
+}
+.footer .footer-tools .go-top i {
+ color: #999999;
+}
+/***
+Footer Layouts (new in v1.3)
+***/
+/* begin:fixed footer */
+.page-footer-fixed .footer {
+ background-color: #434343;
+}
+.page-footer-fixed .footer .footer-inner {
+ color: #aaaaaa;
+}
+.page-footer-fixed .footer .footer-tools .go-top {
+ background-color: #666666;
+}
+.page-footer-fixed .footer .footer-tools .go-top i {
+ color: #aaaaaa;
+}
+/* end:fixed footer */
+/***
+Gritter Notifications
+***/
+.gritter-top {
+ background: url(../../thirdparty/gritter/images/gritter.png) no-repeat left -30px !important;
+}
+.gritter-bottom {
+ background: url(../../thirdparty/gritter/images/gritter.png) no-repeat left bottom !important;
+}
+.gritter-item {
+ display: block;
+ background: url(../../thirdparty/gritter/images/gritter.png) no-repeat left -40px !important;
+}
+.gritter-close {
+ background: url(../../thirdparty/gritter/images/gritter.png) no-repeat left top !important;
+}
+.gritter-title {
+ text-shadow: none !important;
+ /* Not supported by IE :( */
+
+}
+/* for the light (white) version of the gritter notice */
+.gritter-light .gritter-item,
+.gritter-light .gritter-bottom,
+.gritter-light .gritter-top,
+.gritter-light .gritter-close {
+ background-image: url(../../thirdparty/gritter/images/gritter-light.png) !important;
+}
+.gritter-item-wrapper a {
+ color: #18a5ed;
+}
+.gritter-item-wrapper a:hover {
+ color: #0b6694;
+}
+/* begin: boxed page */
+@media (min-width: 992px) {
+ .page-boxed {
+ background-color: #E8E8E8 !important;
+ }
+ .page-boxed .page-container {
+ background-color: #eeeeee;
+ border-left: 1px solid #e2e2e2;
+ border-bottom: 1px solid #e2e2e2;
+ }
+ .page-sidebar-reversed.page-boxed .page-container {
+ border-left: 0;
+ border-right: 1px solid #e2e2e2;
+ }
+ .page-boxed.page-sidebar-fixed .page-container {
+ border-left: 0;
+ border-bottom: 0;
+ }
+ .page-boxed.page-sidebar-fixed .page-sidebar {
+ border-left: 1px solid #e2e2e2;
+ }
+ .page-boxed.page-sidebar-reversed.page-sidebar-fixed .page-sidebar {
+ border-right: 1px solid #e2e2e2;
+ border-left: 0;
+ }
+ .page-boxed.page-sidebar-fixed.page-footer-fixed .footer {
+ background-color: #E8E8E8 !important;
+ }
+}
+/* end: boxed page */
+/***
+Landscape phone to portrait tablet
+***/
+@media (max-width: 991px) {
+ /***
+ page sidebar
+ ***/
+ .page-sidebar {
+ background-color: #f1f1f1 !important;
+ border-right: none !important;
+ }
+ .page-sidebar-fixed .page-sidebar {
+ border-right: none !important;
+ }
+ .page-content {
+ border-left: none !important;
+ }
+ ul.page-sidebar-menu > li > a {
+ border-top: 1px solid #ececec !important;
+ border-bottom: 1px solid #cccccc !important;
+ }
+ ul.page-sidebar-menu > li:last-child > a {
+ border-bottom: 0 !important;
+ }
+
+ ul.page-sidebar-menu > li.open > a,{
+ color: #666666 !important;
+ background-color: #e0e0e0 !important;
+ }
+
+ /*ul.page-sidebar-menu > li > a:hover {
+ color: #666666 !important;
+ background-color: #e7e7e7 !important;
+ }*/
+ ul.page-sidebar-menu > li.open > a {
+ border-bottom-color: transparent !important;
+ }
+ /* ul.page-sidebar-menu > li.active > a {
+ color: #ffffff !important;
+ background-color: #28b779 !important;
+ }*/
+
+ ul.page-sidebar-menu ul.sub-menu > li > a {
+ color: #111 !important;
+ }
+ul.page-sidebar-menu ul.sub-menu > li.active > a{
+ color: #000 !important;
+ background: #dbe6ea !important;
+}
+ ul.page-sidebar-menu ul.sub-menu > li.open > a,
+ ul.page-sidebar-menu ul.sub-menu > li > a:hover {
+ color: #000 !important;
+ background: #e7e7e7 !important;
+ }
+
+ .page-sidebar .sidebar-search input {
+ background-color: #f1f1f1 !important;
+ color: #ccc !important;
+ }
+
+ .page-sidebar .sidebar-search .input-box {
+ border-bottom-color: #ccc !important;
+ }
+ .page-sidebar .sidebar-search input::-webkit-input-placeholder {
+ color: #ccc !important;
+ }
+ .page-sidebar .sidebar-search input:-moz-placeholder {
+ color: #ccc !important;
+ }
+ .page-sidebar .sidebar-search input:-ms-input-placeholder {
+ color: #ccc !important;
+ }
+
+ /***
+ page footer
+ ***/
+
+ .footer {
+ background-color: #434343;
+ }
+
+ .footer .footer-inner {
+ color: #cccccc;
+ }
+ .footer .footer-tools .go-top {
+ background-color: #666666;
+ }
+ .footer .footer-tools .go-top i {
+ color: #999999;
+ }
+}
+
+@media (max-width: 767px) {
+ body {
+ background-color: #077ead !important;
+ }
+} \ No newline at end of file
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight3.css.gz b/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight3.css.gz
new file mode 100644
index 00000000..eb8f31c6
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight3.css.gz
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight3_ifrm.css b/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight3_ifrm.css
new file mode 100644
index 00000000..e1fb1e7c
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight3_ifrm.css
@@ -0,0 +1,220 @@
+/**
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/***
+light_ifrm theme
+***/
+td>a>span[class^="ict-"], td>a>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+td>div>span[class^="ict-"], td>div>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+td>div>span>span[class^="ict-"], td>div>span>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+td>span>span[class^="ict-"], td>span>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+/* button style*/
+.buttonRounded,
+.buttonRoundedOver,
+.buttonRoundedFocused,
+.buttonRoundedFocusedOver,
+.buttonRoundedDown,
+.buttonRoundedFocusedDown,
+.buttonRoundedSelected,
+.buttonRoundedSelectedFocused,
+.buttonRoundedSelectedDown,
+.buttonRoundedSelectedFocusedDown,
+.buttonRoundedSelectedOver,
+.buttonRoundedSelectedFocusedOver,
+.buttonRoundedDisabled,
+.buttonRoundedSelectedDisabled {
+ background-color: #47a5cc;
+ color: #fff;
+ border: 0px solid #b15a59;
+ border-radius: 0px;
+ font-family: Arial, Verdana, sans-serif;
+ font-size: 12px;
+ /*padding: 0 3px;*/
+ padding-left:7px !important;
+ padding-right:7px !important;
+ height:30px !important;
+}
+.buttonRoundedDisabled, .buttonRoundedSelectedDisabled{
+ background-color: #f0f0f0;
+ color: #dadada;
+ opacity: 1;
+}
+.buttonRoundedOver,
+.buttonRoundedFocusedOver,
+.buttonRoundedSelectedFocused,
+.buttonRoundedSelectedFocusedOver,
+.buttonRoundedDown,
+.buttonRoundedFocusedDown {
+ background-color: #3a8fb3;
+ height:30px !important;
+}
+
+.menuButton,
+.menuButtonOver,
+.menuButtonDown,
+.menuButtonDisabled,
+.menuButtonFocused,
+.menuButtonFocusedDown,
+.menuButtonFocusedOver,
+.menuButtonSelected,
+.menuButtonSelectedDown,
+.menuButtonSelectedOver,
+.menuButtonSelectedDisabled {
+ background-color: #47a5cc;
+ border: 0px solid #ababab;
+ color: #fff;
+ font-family: Arial, Verdana, sans-serif;
+ font-size: 12px;
+ padding-left: 7px !important;
+ padding-right: 7px !important;
+ height:30px !important;
+}
+.menuButtonOver {
+ background-color: #3a8fb3;
+ }
+.menuButtonDisabled{
+ background-color: #f0f0f0;
+ color: #dadada;
+ opacity: 1;
+}
+
+ .buttonTitle,
+.buttonTitleOver,
+.buttonTitleDown,
+.buttonTitleSelected,
+.buttonTitleFocused,
+.buttonTitleSelectedFocused,
+.buttonTitleSelectedOver,
+.buttonTitleFocusedOver,
+.buttonTitleSelectedFocusedOver,
+.buttonTitleSelectedDown,
+.buttonTitleFocusedDown,
+.buttonTitleSelectedFocusedDown,
+.buttonTitleDisabled,
+.buttonTitleSelectedDisabled {
+ color: #fff ;
+ }
+ .buttonTitleDisabled{
+ background-color: #f0f0f0;
+ color: #dadada;
+ opacity: 1;
+}
+ /* windowBody dialogBody Style */
+ .windowBody,
+.dialogBody {
+ background-color: white;
+ border: 1px solid #2b8db6;
+ border-top: 0;
+}
+.windowHeader,
+.dialogHeader {
+ background-color: #2b8db6;
+ padding: 0;
+}
+/* sectionHeader Style */
+.sectionHeaderopened {
+ background-color: #2b8db6;
+ }
+ .sectionHeaderclosed {
+ background-color: #3899c2;
+ }
+
+#dt_example h1{
+color:#2b8db6;
+font-weight:600 !important;
+}
+/*cell style*/
+.tallCellOver,
+.tallCellOverDark {
+ background-color: #c4d7e2;
+ }
+.imgHeaderButtonOver,
+.imgHeaderButtonDown,
+.headerButtonOver,
+.headerButtonDown,
+.sorterButtonOver,
+.sorterButtonDown {
+ background-color: #c4d7e2;
+ }
+ /*cell style*/
+.tallCellOver,
+.tallCellOverDark {
+ background-color: #d9e3e8;
+ border-bottom: 1px solid #d9e3e8;
+ border-top: 1px solid #d9e3e8;
+ }
+.tallCellSelected,
+.tallCellSelectedDark {
+ background: #c4d7e2;
+ border-bottom: 1px solid #c4d7e2;
+ border-top: 1px solid #c4d7e2;
+ }
+.tallCellSelectedOver,
+.tallCellSelectedOverDark {
+ background: #c4d7e2;
+ border-bottom: 1px solid #c4d7e2;
+ border-top: 1px solid #c4d7e2;
+ }
+.imgHeaderButtonOver,
+.imgHeaderButtonDown,
+.headerButtonOver,
+.headerButtonDown,
+.sorterButtonOver,
+.sorterButtonDown {
+ background-color: #c4d7e2;
+ }
+.cellSelected,
+.cellSelectedDark,
+.specialColSelected,
+.recordSummaryCellSelected,
+.recordSummaryCellSelectedDark {
+ background: #c4d7e2 !important;
+ border-bottom: 1px solid #c4d7e2;
+ border-top: 1px solid #c4d7e2;
+ }
+.cellSelectedOver,
+.cellSelectedOverDark,
+.specialColSelectedOver,
+.recordSummaryCellSelectedOver,
+.recordSummaryCellSelectedOverDark {
+ background: #c4d7e2 !important;
+ border-bottom: 1px solid #c4d7e2;
+ border-top: 1px solid #c4d7e2;
+}
+.cellOver,
+.cellOverDark,
+.specialColOver,
+.recordSummaryCellOver,
+.recordSummaryCellOverDark {
+ background: #d9e3e8 !important;
+ border-bottom: 1px solid #d9e3e8;
+ border-top: 1px solid #d9e3e8;
+ }
+.treeCellOver,
+.treeCellOverDark {
+ background-color: #d9e3e8;
+}
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight3_ifrm.css.gz b/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight3_ifrm.css.gz
new file mode 100644
index 00000000..4940778f
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight3_ifrm.css.gz
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight4.css b/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight4.css
new file mode 100644
index 00000000..05747bc9
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight4.css
@@ -0,0 +1,605 @@
+/***
+light theme
+***/
+
+/***
+Reset and overrides
+***/
+body {
+ background-color: #f1f3fa !important;
+}
+
+.page-content .page-breadcrumb.breadcrumb .dashboard-date-range {
+ background-color: #ededed !important;
+}
+
+.page-content {
+ background-color: #f1f3fa !important;
+}
+
+.vSplitbar {
+ background-color: transparent !important;
+}
+
+.btn-group .btn.blue.dropdown-toggle {
+ background-color: #333 !important;
+}
+
+.btn-group .btn.blue.dropdown-toggle:hover {
+ background-color: #000 !important;
+}
+
+/***
+Page header
+***/
+.header {
+ filter: none !important;
+ background-color: #333333 !important;
+}
+
+.header .btn-navbar {
+ background-color: #434343 !important;
+}
+
+.header .navbar-nav .dropdown-toggle:hover,
+.header .navbar-nav .dropdown.open .dropdown-toggle {
+ background-color: #40484c !important;
+}
+
+.header .navbar-nav li.dropdown .dropdown-toggle i {
+ color: #ffffff !important;
+}
+
+.zte-theme-panel > .toggler:hover {
+ background-color: #40484c !important;
+}
+
+/***
+Header Search
+***/
+.header .search-form {
+ background-color: #3a3a3a;
+}
+
+.header .search-form .form-control {
+ color: #ccc;
+ border: 0;
+ background-color: #3a3a3a;
+}
+
+.header .search-form .submit {
+ background: url(../../img/search-icon.png);
+}
+
+/***
+Hor menu
+***/
+.header .hor-menu ul.nav li a {
+ color: #fff;
+}
+
+.header .hor-menu ul.nav li.open > a,
+.header .hor-menu ul.nav li > a:hover,
+.header .hor-menu ul.nav li > a:focus {
+ color: #ccc;
+ background: #333333;
+}
+
+.header .hor-menu .dropdown-menu li:hover > a,
+.header .hor-menu ul.nav li.active > a,
+.header .hor-menu ul.nav li.active > a:hover {
+ color: #fff;
+ background: #333 !important;
+}
+
+.header.navbar .hor-menu ul.nav li.current .selected,
+.header.navbar .hor-menu ul.nav li.active .selected {
+ border-top: 6px solid #101010;
+}
+
+.header .hor-menu ul.nav li.current > a,
+.header .hor-menu ul.nav li.current > a:hover {
+ color: #fff;
+ background: #e02222 !important;
+}
+
+.header .hor-menu .dropdown-menu {
+ background: #4f4f4f;
+}
+
+.header .hor-menu .dropdown-menu li > a {
+ color: #ccc;
+}
+
+.header .hor-menu .hor-menu-search-form-toggler.off {
+ background: #4f4f4f url(../../img/hor-menu-search-close-white.png) no-repeat center;
+}
+
+.header .hor-menu .search-form {
+ background: #4f4f4f;
+}
+
+.header .hor-menu .search-form form input {
+ color: #ccc;
+}
+
+.header .hor-menu .search-form .btn {
+ color: #ccc;
+ background: url(../../img/search-icon-white.png) no-repeat center;
+}
+
+.header .hor-menu .search-form form input::-webkit-input-placeholder {
+ /* WebKit browsers */
+ color: #ccc;
+}
+
+.header .hor-menu .search-form form input:-moz-placeholder {
+ /* Mozilla Firefox 4 to 18 */
+ color: #ccc;
+}
+
+.header .hor-menu .search-form form input::-moz-placeholder {
+ /* Mozilla Firefox 19+ */
+ color: #ccc;
+}
+
+.header .hor-menu .search-form form input:-ms-input-placeholder {
+ /* Internet Explorer 10+ */
+ color: #ccc;
+}
+
+/***
+Mega Menu
+***/
+.mega-menu .mega-menu-submenu {
+ border-right: 1px solid #656565;
+}
+
+.mega-menu .mega-menu-submenu li h3 {
+ color: #fff;
+}
+
+/***
+Page sidebar
+***/
+/*.page-content {
+ border-left: 1px solid #e2e2e2 !important;
+ border-bottom: 1px solid #e2e2e2 !important;
+}*/
+.page-sidebar-menu > li.active > a .selected {
+ background-image: none !important;
+ border-right:#5C9ACF 3px solid;
+ height:40px !important;
+ top:0 !important;
+}
+
+.page-sidebar-reversed .page-content {
+ border-left: 0;
+ border-right: 1px solid #e2e2e2 !important;
+}
+
+.page-sidebar {
+ background-color: #f1f3fa;
+}
+
+.page-sidebar-fixed .page-content {
+ border: 0 !important;
+}
+
+.page-sidebar-fixed .page-sidebar {
+ border-right: 1px solid #e2e2e2 !important;
+}
+
+ul.page-sidebar-menu > li > a {
+ border: 1px solid #dddddd !important;
+ color: #000 !important;
+ font-weight: 400;
+ background-color: #fff !important;
+ margin-left: 3px;
+ margin-right: 3px;
+ margin-bottom: 5px;
+ -webkit-border-radius: 3px !important;
+ -moz-border-radius: 3px !important;
+ -ms-border-radius: 3px !important;
+ -o-border-radius: 3px !important;
+ border-radius: 3px !important;
+}
+
+.page-sidebar-menu > li.start > a {
+ border-top: 1px solid #dddddd !important;
+}
+
+ul.page-sidebar-menu > li:first-child > a {
+ border-top: 1px solid #dddddd !important;
+}
+
+ul.page-sidebar-menu > li:last-child > a {
+ border-bottom: 1px solid #dddddd !important;
+}
+
+/*ul.page-sidebar-menu > li a i {
+ color: #000 !important;
+}*/
+
+/*ul.page-sidebar-menu > li.open > a:hover {
+ background: #ededed !important;
+ color: #000 !important;
+}*/
+ul.page-sidebar-menu > li.open > a {
+ background: #fff !important;
+ color: #000 !important;
+}
+ul.page-sidebar-menu > li.active > a:hover {
+ background: #fff !important;
+ color: #5C9ACF !important ;
+ //border-left: #5C9ACF 3px solid;
+}
+
+
+/*ul.page-sidebar-menu > li.active > a .selected {
+ right:-7px;
+ top:0px;
+ width: 7px;
+ height: 39px;
+ background-image: url("../../img/sidebar-menu-arrow-green.png");*/
+ }
+
+.page-sidebar-reversed ul.page-sidebar-menu > li.active > a .selected {
+ right: auto;
+ left: -7px;
+ background-image: url("../../img/sidebar-menu-arrow-green-reverse.png");
+}
+
+/*ul.page-sidebar-menu > li.active i {
+ color: #fff !important;
+}*/
+.page-sidebar-fixed ul.page-sidebar-menu > li.active > a .selected {
+ display: none;
+}
+
+ul.page-sidebar-menu > li.active > a {
+ background: #fff !important;
+ border-right-color: transparent !important;
+ color: #1177CF !important;
+}
+
+ul.page-sidebar-menu > li.active > a i {
+ color: #5C9ACF;
+}
+
+ul.page-sidebar-menu > li > a > .arrow:before,
+ul.page-sidebar-menu > li > a > .arrow.open:before {
+ color: #ccc !important;
+}
+
+ul.page-sidebar-menu > li.active > a .arrow:before,
+ul.page-sidebar-menu > li.active > a .arrow.open:before {
+ color: #5C9ACF !important;
+}
+
+ul.page-sidebar-menu > li > ul.sub-menu > li:first-child > a {
+ border-top: 0px !important;
+}
+
+ul.page-sidebar-menu ul.sub-menu > li > a {
+ font-weight: 400 !important;
+ color: #2a6496 !important;
+ margin-left: 4px !important;
+ margin-right: 4px !important;
+ margin-bottom: 5px !important;
+}
+
+ul.page-sidebar-menu ul.sub-menu > li.active > a,
+ul.page-sidebar-menu ul.sub-menu > li > a:hover {
+ color: #818181 !important;
+ background: #ededed !important;
+}
+
+ul.page-sidebar-menu > li > ul.sub-menu a .arrow:before,
+ul.page-sidebar-menu > li > ul.sub-menu a .arrow.open:before {
+ color: #ccc !important;
+}
+
+/* sub menu links effects */
+ul.page-sidebar-menu ul.sub-menu > li.active > a,
+ul.page-sidebar-menu ul.sub-menu > li.active > a:hover {
+ color: #1177CF !important;
+ background: #dbe6ea !important;
+}
+
+ul.page-sidebar-menu ul.sub-menu > li > a:hover,
+ul.page-sidebar-menu ul.sub-menu > li.open > a {
+ color: #428bca !important;
+ background: #eaf1f4 !important;
+}
+
+ul.page-sidebar-menu > li > a:hover,
+ul.page-sidebar-menu > li.active > a:hover {
+ background-color: #ecf1f5 !important;
+ color: #585858;
+}
+/* sidebar search */
+.page-sidebar .sidebar-search input {
+ background-color: #f5f5f5 !important;
+ color: #727272 !important;
+}
+
+.page-sidebar .sidebar-search input::-webkit-input-placeholder {
+ color: #aaa !important;
+}
+
+.page-sidebar .sidebar-search input:-moz-placeholder {
+ color: #aaa !important;
+}
+
+.page-sidebar .sidebar-search input:-ms-input-placeholder {
+ color: #aaa !important;
+}
+
+.page-sidebar .sidebar-search .input-box {
+ border-bottom: 1px solid #e2e2e2 !important;
+}
+
+.page-sidebar .sidebar-search .submit {
+ background-image: url(../../img/search-icon-white.png);
+}
+
+/***
+Sidebar toggler
+***/
+.sidebar-toggler {
+ background-image: url(../../img/sidebar-toggler-light.jpg);
+ background-color: #333;
+}
+
+/* search box bg color on expanded */
+.page-sidebar-closed .page-sidebar .sidebar-search.open .form-container {
+ background-color: #fbfbfb !important;
+}
+
+.page-sidebar-closed .page-sidebar .sidebar-search.open .form-container .remove {
+ background-image: url("../../img/sidebar-search-close-light.png");
+}
+
+/* sub menu bg color on hover menu item */
+.page-sidebar-closed ul.page-sidebar-menu > li:hover .sub-menu {
+ background-color: #f5f5f5;
+}
+
+/***
+Footer
+***/
+.footer .footer-inner {
+ color: #333333;
+}
+
+.footer .footer-tools .go-top {
+ background-color: #666666;
+}
+
+.footer .footer-tools .go-top:hover {
+ opacity: 0.7;
+ filter: alpha(opacity=70);
+}
+
+.footer .footer-tools .go-top i {
+ color: #999999;
+}
+
+/***
+Footer Layouts (new in v1.3)
+***/
+/* begin:fixed footer */
+.page-footer-fixed .footer {
+ background-color: #434343;
+}
+
+.page-footer-fixed .footer .footer-inner {
+ color: #aaaaaa;
+}
+
+.page-footer-fixed .footer .footer-tools .go-top {
+ background-color: #666666;
+}
+
+.page-footer-fixed .footer .footer-tools .go-top i {
+ color: #aaaaaa;
+}
+
+/* end:fixed footer */
+/***
+Gritter Notifications
+***/
+.gritter-top {
+ background: url(../../thirdparty/gritter/images/gritter.png) no-repeat left -30px !important;
+}
+
+.gritter-bottom {
+ background: url(../../thirdparty/gritter/images/gritter.png) no-repeat left bottom !important;
+}
+
+.gritter-item {
+ display: block;
+ background: url(../../thirdparty/gritter/images/gritter.png) no-repeat left -40px !important;
+}
+
+.gritter-close {
+ background: url(../../thirdparty/gritter/images/gritter.png) no-repeat left top !important;
+}
+
+.gritter-title {
+ text-shadow: none !important;
+ /* Not supported by IE :( */
+
+}
+
+/* for the light (white) version of the gritter notice */
+.gritter-light .gritter-item,
+.gritter-light .gritter-bottom,
+.gritter-light .gritter-top,
+.gritter-light .gritter-close {
+ background-image: url(../../thirdparty/gritter/images/gritter-light.png) !important;
+}
+
+.gritter-item-wrapper a {
+ color: #18a5ed;
+}
+
+.gritter-item-wrapper a:hover {
+ color: #0b6694;
+}
+
+/* begin: boxed page */
+@media (min-width: 992px) {
+ .page-boxed {
+ background-color: #E8E8E8 !important;
+ }
+
+ .page-boxed .page-container {
+ background-color: #f5f5f5;
+ border-left: 1px solid #e2e2e2;
+ border-bottom: 1px solid #e2e2e2;
+ }
+
+ .page-sidebar-reversed.page-boxed .page-container {
+ border-left: 0;
+ border-right: 1px solid #e2e2e2;
+ }
+
+ .page-boxed.page-sidebar-fixed .page-container {
+ border-left: 0;
+ border-bottom: 0;
+ }
+
+ .page-boxed.page-sidebar-fixed .page-sidebar {
+ border-left: 1px solid #e2e2e2;
+ }
+
+ .page-boxed.page-sidebar-reversed.page-sidebar-fixed .page-sidebar {
+ border-right: 1px solid #e2e2e2;
+ border-left: 0;
+ }
+
+ .page-boxed.page-sidebar-fixed.page-footer-fixed .footer {
+ background-color: #E8E8E8 !important;
+ }
+
+ .page-sidebar-closed .page-sidebar-menu > li > a {
+ margin-left: 0;
+ margin-right: 0;
+ }
+}
+
+/* end: boxed page */
+/***
+Landscape phone to portrait tablet
+***/
+@media (max-width: 991px) {
+ /***
+ page sidebar
+ ***/
+ .page-sidebar-closed .page-sidebar-menu > li > a {
+ margin-left: 0;
+ margin-right: 0;
+ }
+
+ .page-sidebar {
+ background-color: #f1f1f1 !important;
+ border-right: none !important;
+ }
+
+ .page-sidebar-fixed .page-sidebar {
+ border-right: none !important;
+ }
+
+ .page-content {
+ border-left: none !important;
+ }
+
+ ul.page-sidebar-menu > li > a {
+ border-top: 1px solid #ececec !important;
+ border-bottom: 1px solid #cccccc !important;
+ }
+
+ /* ul.page-sidebar-menu > li:last-child > a {
+ border-bottom: 0 !important;
+ }*/
+ ul.page-sidebar-menu > li.open > a, {
+ color: #666666 !important;
+ background-color: #e0e0e0 !important;
+ }
+
+ /*ul.page-sidebar-menu > li > a:hover {
+ color: #666666 !important;
+ background-color: #e7e7e7 !important;
+ }*/
+ ul.page-sidebar-menu > li.open > a {
+ border-bottom-color: transparent !important;
+ }
+
+ /* ul.page-sidebar-menu > li.active > a {
+ color: #ffffff !important;
+ background-color: #28b779 !important;
+ }*/
+ /*ul.page-sidebar-menu ul.sub-menu > li > a {
+ color: #111 !important;
+ }*/
+ /*ul.page-sidebar-menu ul.sub-menu > li.active > a{
+ color: #000 !important;
+ background: #dbe6ea !important; */
+}
+
+/* ul.page-sidebar-menu ul.sub-menu > li.open > a,
+ ul.page-sidebar-menu ul.sub-menu > li > a:hover {
+ color: #000 !important;
+ background: #e7e7e7 !important;
+ }*/
+
+.page-sidebar .sidebar-search input {
+ background-color: #f1f1f1 !important;
+ color: #ccc !important;
+}
+
+.page-sidebar .sidebar-search .input-box {
+ border-bottom-color: #ccc !important;
+}
+
+.page-sidebar .sidebar-search input::-webkit-input-placeholder {
+ color: #ccc !important;
+}
+
+.page-sidebar .sidebar-search input:-moz-placeholder {
+ color: #ccc !important;
+}
+
+.page-sidebar .sidebar-search input:-ms-input-placeholder {
+ color: #ccc !important;
+}
+
+/***
+page footer
+***/
+
+.footer {
+ background-color: #434343;
+}
+
+.footer .footer-inner {
+ color: #cccccc;
+}
+
+.footer .footer-tools .go-top {
+ background-color: #666666;
+}
+
+.footer .footer-tools .go-top i {
+ color: #999999;
+}
+
+ }
+
+@media (max-width: 767px) {
+ body {
+ background-color: #333333 !important;
+ }
+} \ No newline at end of file
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight4.css.gz b/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight4.css.gz
new file mode 100644
index 00000000..f2e0fb79
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight4.css.gz
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight4_ifrm.css b/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight4_ifrm.css
new file mode 100644
index 00000000..fa6ececb
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight4_ifrm.css
@@ -0,0 +1,209 @@
+/**
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/***
+ztebluelight4_ifrm theme
+***/
+body{
+ background-color: white!important;
+}
+td>a>span[class^="ict-"], td>a>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+td>div>span[class^="ict-"], td>div>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+td>div>span>span[class^="ict-"], td>div>span>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+td>span>span[class^="ict-"], td>span>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+/* button style*/
+.buttonRounded,
+.buttonRoundedOver,
+.buttonRoundedFocused,
+.buttonRoundedFocusedOver,
+.buttonRoundedDown,
+.buttonRoundedFocusedDown,
+.buttonRoundedSelected,
+.buttonRoundedSelectedFocused,
+.buttonRoundedSelectedDown,
+.buttonRoundedSelectedFocusedDown,
+.buttonRoundedSelectedOver,
+.buttonRoundedSelectedFocusedOver,
+.buttonRoundedDisabled,
+.buttonRoundedSelectedDisabled {
+ background-color: #47a080;
+ color: #fff;
+ border: 0px solid #b15a59;
+ border-radius: 0px;
+ font-family: Arial, Verdana, sans-serif;
+ font-size: 12px;
+ /*padding: 0 3px;*/
+ padding-left:7px !important;
+ padding-right:7px !important;
+ height:30px !important;
+}
+.buttonRoundedDisabled, .buttonRoundedSelectedDisabled{
+ background-color: #f0f0f0;
+ color: #dadada;
+ opacity: 1;
+}
+.buttonRoundedOver,
+.buttonRoundedFocusedOver,
+.buttonRoundedSelectedFocused,
+.buttonRoundedSelectedFocusedOver,
+.buttonRoundedDown,
+.buttonRoundedFocusedDown {
+ background-color: #3f9375;
+ height:30px !important;
+}
+
+.menuButton,
+.menuButtonOver,
+.menuButtonDown,
+.menuButtonDisabled,
+.menuButtonFocused,
+.menuButtonFocusedDown,
+.menuButtonFocusedOver,
+.menuButtonSelected,
+.menuButtonSelectedDown,
+.menuButtonSelectedOver,
+.menuButtonSelectedDisabled {
+ background-color: #47a080;
+ border: 0px solid #ababab;
+ color: #fff;
+ font-family: Arial, Verdana, sans-serif;
+ font-size: 12px;
+ padding-left: 7px !important;
+ padding-right: 7px !important;
+ height:30px !important;
+}
+.menuButtonOver {
+ background-color: #3f9375;
+ }
+.menuButtonDisabled{
+ background-color: #f0f0f0;
+ color: #dadada;
+ opacity: 1;
+}
+ .buttonTitle,
+.buttonTitleOver,
+.buttonTitleDown,
+.buttonTitleSelected,
+.buttonTitleFocused,
+.buttonTitleSelectedFocused,
+.buttonTitleSelectedOver,
+.buttonTitleFocusedOver,
+.buttonTitleSelectedFocusedOver,
+.buttonTitleSelectedDown,
+.buttonTitleFocusedDown,
+.buttonTitleSelectedFocusedDown,
+.buttonTitleDisabled,
+.buttonTitleSelectedDisabled {
+ color: #fff ;
+ }
+ .buttonTitleDisabled{
+ background-color: #f0f0f0;
+ color: #dadada;
+ opacity: 1;
+}
+ /* windowBody dialogBody Style */
+ .windowBody,
+.dialogBody {
+ background-color: white;
+ border: 1px solid #47a080;
+ border-top: 0;
+}
+.windowHeader,
+.dialogHeader {
+ background-color: #47a080;
+ padding: 0;
+}
+/* sectionHeader Style */
+.sectionHeaderopened {
+ background-color: #47a080;
+ }
+ .sectionHeaderclosed {
+ background-color: #4ca887;
+ }
+
+#dt_example h1{
+color:#47a080;
+font-weight:600 !important;
+}
+ /*cell style*/
+.tallCellOver,
+.tallCellOverDark {
+ background-color: #d7eae3;
+ border-bottom: 1px solid #d7eae3;
+ border-top: 1px solid #d7eae3;
+ }
+.tallCellSelected,
+.tallCellSelectedDark {
+ background: #c7e5da;
+ border-bottom: 1px solid #c7e5da;
+ border-top: 1px solid #c7e5da;
+ }
+.tallCellSelectedOver,
+.tallCellSelectedOverDark {
+ background: #c7e5da;
+ border-bottom: 1px solid #c7e5da;
+ border-top: 1px solid #c7e5da;
+ }
+.imgHeaderButtonOver,
+.imgHeaderButtonDown,
+.headerButtonOver,
+.headerButtonDown,
+.sorterButtonOver,
+.sorterButtonDown {
+ background-color: #a2cfbf;
+ }
+.cellSelected,
+.cellSelectedDark,
+.specialColSelected,
+.recordSummaryCellSelected,
+.recordSummaryCellSelectedDark {
+ background: #c7e5da !important;
+ border-bottom: 1px solid #c7e5da;
+ border-top: 1px solid #c7e5da;
+ }
+.cellSelectedOver,
+.cellSelectedOverDark,
+.specialColSelectedOver,
+.recordSummaryCellSelectedOver,
+.recordSummaryCellSelectedOverDark {
+ background: #c7e5da !important;
+ border-bottom: 1px solid #c7e5da;
+ border-top: 1px solid #c7e5da;
+}
+.cellOver,
+.cellOverDark,
+.specialColOver,
+.recordSummaryCellOver,
+.recordSummaryCellOverDark {
+ background: #d7eae3 !important;
+ border-bottom: 1px solid #d7eae3;
+ border-top: 1px solid #d7eae3;
+ }
+.treeCellOver,
+.treeCellOverDark {
+ background-color: #d7eae3;
+}
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight4_ifrm.css.gz b/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight4_ifrm.css.gz
new file mode 100644
index 00000000..a0f284ea
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight4_ifrm.css.gz
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight_ifrm.css b/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight_ifrm.css
new file mode 100644
index 00000000..ce48a7e9
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight_ifrm.css
@@ -0,0 +1,228 @@
+/**
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/***
+ztebluelight_ifrm theme
+***/
+body{
+ background-color: white!important;
+}
+td>a>span[class^="ict-"], td>a>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+td>div>span[class^="ict-"], td>div>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+td>div>span>span[class^="ict-"], td>div>span>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+td>span>span[class^="ict-"], td>span>span[class*=" ict-"]{
+color:#7083ba;
+font-size: 16px;
+}
+
+/* button style*/
+.buttonRounded,
+.buttonRoundedOver,
+.buttonRoundedFocused,
+.buttonRoundedFocusedOver,
+.buttonRoundedDown,
+.buttonRoundedFocusedDown,
+.buttonRoundedSelected,
+.buttonRoundedSelectedFocused,
+.buttonRoundedSelectedDown,
+.buttonRoundedSelectedFocusedDown,
+.buttonRoundedSelectedOver,
+.buttonRoundedSelectedFocusedOver,
+.buttonRoundedDisabled,
+.buttonRoundedSelectedDisabled {
+ background-color: #3366cc ;
+ color: #fff;
+ border: 0px solid #b15a59;
+ font-family: Arial, Verdana, sans-serif;
+ font-size: 12px;
+ /*padding: 0 3px;*/
+ padding-left:7px !important;
+ padding-right:7px !important;
+ height:30px !important;
+}
+.buttonRoundedDisabled, .buttonRoundedSelectedDisabled{
+ background-color: #f0f0f0;
+ color: #dadada;
+ opacity: 1;
+}
+.buttonRoundedOver,
+.buttonRoundedFocusedOver,
+.buttonRoundedSelectedFocused,
+.buttonRoundedSelectedFocusedOver ,
+.buttonRoundedDown,
+.buttonRoundedFocusedDown{
+ background-color: #6997f5;
+ height:30px !important;
+}
+
+.menuButton,
+.menuButtonOver,
+.menuButtonDown,
+.menuButtonDisabled,
+.menuButtonFocused,
+.menuButtonFocusedDown,
+.menuButtonFocusedOver,
+.menuButtonSelected,
+.menuButtonSelectedDown,
+.menuButtonSelectedOver,
+.menuButtonSelectedDisabled {
+ background-color: #3366cc;
+ border: 0px solid #ababab;
+ color: #fff;
+ font-family: Arial, Verdana, sans-serif;
+ font-size: 12px;
+ padding-left: 7px !important;
+ padding-right: 7px !important;
+ height:30px !important;
+}
+.menuButtonOver {
+ background-color: #6997f5;
+ }
+.menuButtonDisabled{
+ background-color: #f0f0f0;
+ color: #dadada;
+ opacity: 1;
+}
+ .buttonTitle,
+.buttonTitleOver,
+.buttonTitleDown,
+.buttonTitleSelected,
+.buttonTitleFocused,
+.buttonTitleSelectedFocused,
+.buttonTitleSelectedOver,
+.buttonTitleFocusedOver,
+.buttonTitleSelectedFocusedOver,
+.buttonTitleSelectedDown,
+.buttonTitleFocusedDown,
+.buttonTitleSelectedFocusedDown,
+.buttonTitleDisabled,
+.buttonTitleSelectedDisabled {
+ color: #fff ;
+ }
+.buttonTitleDisabled{
+ background-color: #f0f0f0;
+ color: #dadada;
+ opacity: 1;
+}
+ /* windowBody dialogBody Style */
+ .windowBody,
+.dialogBody {
+ background-color: white;
+ border: 1px solid #b4cef8;
+ border-top: 0;
+}
+.windowHeader,
+.dialogHeader {
+ background-color: #3366cc;
+ padding: 0;
+}
+/* sectionHeader Style */
+.sectionHeaderopened {
+ background-color: #3366cc;
+ }
+ .sectionHeaderclosed {
+ background-color: #619bfa;
+ }
+
+#dt_example h1{
+color:#3366cc;
+font-weight:600 !important;
+}
+/*cell style*/
+.tallCellOver,
+.tallCellOverDark {
+ background-color: #ffede4;
+ border-bottom: 1px solid #ffede4;
+ border-top: 1px solid #ffede4;
+ }
+.tallCellSelected,
+.tallCellSelectedDark {
+ background: #f8dddd;
+ border-bottom: 1px solid #f8dddd;
+ border-top: 1px solid #f8dddd;
+ }
+.tallCellSelectedOver,
+.tallCellSelectedOverDark {
+ background: #f8dddd;
+ border-bottom: 1px solid #f8dddd;
+ border-top: 1px solid #f8dddd;
+ }
+.imgHeaderButtonOver,
+.imgHeaderButtonDown,
+.headerButtonOver,
+.headerButtonDown,
+.sorterButtonOver,
+.sorterButtonDown {
+ background-color: #c4d7e2;
+}
+.cellSelected,
+.cellSelectedDark,
+.specialColSelected,
+.recordSummaryCellSelected,
+.recordSummaryCellSelectedDark {
+ background: #f8dddd !important;
+ border-bottom: 1px solid #f8dddd;
+ border-top: 1px solid #f8dddd;
+ }
+.cellSelectedOver,
+.cellSelectedOverDark,
+.specialColSelectedOver,
+.recordSummaryCellSelectedOver,
+.recordSummaryCellSelectedOverDark {
+ background: #f8dddd !important;
+ border-bottom: 1px solid #f8dddd;
+ border-top: 1px solid #f8dddd;
+}
+.cellOver,
+.cellOverDark,
+.specialColOver,
+.recordSummaryCellOver,
+.recordSummaryCellOverDark {
+ background: #ffede4 !important;
+ border-bottom: 1px solid #ffede4;
+ border-top: 1px solid #ffede4;
+ }
+.treeCellOver,
+.treeCellOverDark {
+ background-color: #ffede4;
+}
+/*日志管理的蓝色大圆角筛选按?/
+.blue {
+ background-color: #fff;
+ color:#1991c5;
+}
+.blue:hover {
+ background-color: #e8f3fd;
+ color:#3366cc;
+}
+.blue.selected{
+ border:0;
+ background-color: #3366cc;
+ color:#fff;
+}
+.blue.selected:hover{
+ border:0;
+ background-color: #3366cc;
+ color:#fff;
+} \ No newline at end of file
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight_ifrm.css.gz b/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight_ifrm.css.gz
new file mode 100644
index 00000000..0f5b3655
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/themes/ztebluelight_ifrm.css.gz
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/css/zte-style.css b/uiframe-iui/src/main/resources/webroot/framework/css/zte-style.css
new file mode 100644
index 00000000..a4cc699a
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/css/zte-style.css
@@ -0,0 +1,255 @@
+/**
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+#recommend_notice{
+ height:30px;
+ width:100%;
+ left:0px;
+ right:0px;
+ line-height:30px;
+ text-align:center;
+ position:absolute;
+ float:bottom;
+ bottom:35px;
+ z-index:2;
+ cursor:default;
+}
+
+#recommend_notice:hover {
+ color: #F75000;
+}
+.menuDivider{
+ height:1px;
+ margin:9px 0;
+ text-align: center;
+ overflow:hidden;
+ background-color:#a6a6a6 !important;
+}
+
+.page-content .page-breadcrumb.breadcrumb {
+ -webkit-border-radius: 0px;
+ -moz-border-radius: 0px;
+ border-radius: 0px;
+ box-shadow: none;
+ padding-right: 30px;
+ padding-left: 8px;
+ margin-top: 0px !important;
+ margin-bottom: 10px !important;
+ border:0px !important;
+ background-color: #fff;
+}
+.page-mainIframe{
+border: 0px;
+margin: 0px;
+padding: 0px;
+}
+
+.zte-navbar-brand {
+ /*display: inline-block;*/
+ padding:0px;
+ margin-top: -1px;
+ margin-right: 0px;
+ width: 225px;
+ height: 42px;
+}
+
+.zte-navbar-brand img {
+ margin-left: 10px;
+ margin-top: 4px;
+}
+
+.zte-navbar-brand.text-logo {
+ padding-left: 20px;
+ padding-top: 12px;
+}
+.zte-brand-text{
+ font-size:14px;
+ font-family:Arial;
+ color:#ffffff !important;
+ font-family:"microsoft yahei";
+}
+.zte-theme-panel {
+ width: 45px;
+ margin-top: -2px;
+ margin-right: -5px;
+ z-index: 999;
+ float: right;
+ position:relative;
+}
+
+.zte-theme-panel > .toggler {
+ top:12px;
+ right:14px;
+ padding:11px;
+ cursor:pointer;
+ position:absolute;
+ display: block;
+ background:url(../img/icon-color.png) center no-repeat;
+}
+
+.zte-theme-panel > .toggler:hover {
+ background-color: #3d3d3d;
+}
+
+.zte-theme-panel > .toggler-close {
+ display: none;
+ top:4px;
+ right:0;
+ padding:20px;
+ cursor:pointer;
+ position:absolute;
+ background: #3d3d3d url(../img/icon-color-close.png) center no-repeat !important;
+}
+
+.zte-theme-panel > .toggler-close:hover {
+ background-color:#222 !important;
+}
+
+.zte-theme-panel > .theme-options {
+ min-width:228px;
+ top: 44px;
+ right: 0px;
+ display:none;
+ position:absolute;
+ background:#3d3d3d;
+}
+
+.zte-theme-panel > .theme-options > .theme-option {
+ color:#cfcfcf;
+ padding: 15px;
+ border-top:1px solid #585858;
+ margin-top: 0px;
+ margin-bottom: 0px;
+}
+
+.zte-theme-panel > .theme-options > .theme-option.theme-colors {
+ border-top: 0;
+}
+
+.zte-theme-panel > .theme-options > .theme-option > span {
+ display: inline-block;
+ width: 80px;
+ font-size: 14px;
+}
+
+.zte-theme-panel > .theme-options > .theme-option.theme-colors > span {
+ display: block;
+ width: auto;
+}
+
+.zte-theme-panel > .theme-options > .theme-option > select.form-control {
+ display: inline;
+ width: 110px !important;
+}
+
+.zte-theme-panel > .theme-options > .theme-option.theme-colors > ul {
+ list-style:none;
+ padding: 0;
+ display: block;
+ margin-bottom: 1px !important;
+ margin-top: 10px;
+}
+
+.zte-theme-panel > .theme-options > .theme-option.theme-colors > ul > li {
+ width:24px;
+ height:24px;
+ margin:4 4px;
+ cursor:pointer;
+ list-style:none;
+ float: left;
+ border:solid 1px #707070;
+}
+
+.zte-theme-panel > .theme-options > .theme-option.theme-colors > ul > li:first-child {
+ margin-left: 4;
+}
+
+.zte-theme-panel > .theme-options > .theme-option.theme-colors > ul > li:hover,
+.zte-theme-panel > .theme-options > .theme-option.theme-colors > ul > li.current {
+ border:solid 2px #ebebeb;
+}
+
+.zte-theme-panel > .theme-options > .theme-option.theme-colors > ul > li.color-black {
+ background:#333438;
+}
+.zte-theme-panel> .theme-options > .theme-option.theme-colors > ul > li.color-ztebluelight {
+ background:#3366cc;
+}
+.zte-theme-panel> .theme-options > .theme-option.theme-colors > ul > li.color-ztebluelight2 {
+ background:#1178ee;
+}
+.zte-theme-panel> .theme-options > .theme-option.theme-colors > ul > li.color-ztebluelight3 {
+ background:#067ead;
+}
+.zte-theme-panel> .theme-options > .theme-option.theme-colors > ul > li.color-ztebluelight4 {
+ background:#333333;
+}
+.zte-theme-panel > .theme-options > .theme-option.theme-colors > ul > li.color-zteblue {
+ background:#1b8fd3;
+}
+.zte-theme-panel > .theme-options > .theme-option.theme-colors > ul > li.color-grey {
+ background:#6d6d6d;
+}
+
+.zte-theme-panel > .theme-options > .theme-option.theme-colors > ul > li.color-blue {
+ background:#124f94;
+}
+
+.zte-theme-panel > .theme-options > .theme-option.theme-colors > ul > li.color-brown {
+ background:#623f18;
+}
+
+.zte-theme-panel > .theme-options > .theme-option.theme-colors > ul > li.color-purple {
+ background:#701584;
+}
+
+.zte-theme-panel > .theme-options > .theme-option.theme-colors > ul > li.color-white {
+ background:#fff;
+}
+.header.navbar .navbar-nav {
+ min-width: 210px;
+}
+.header.navbar .navbar-toggle {
+ margin: 8px 0px 4px 6px;
+ padding: 5px 0px 6px 6px;
+}
+
+.nav-tabs li a span.remove{
+ color: #f00;
+ margin-left: 10px;
+ cursor:hand;
+}
+.nav-tabs li a span.tabdropremove{
+ color: #f00;
+ margin-right: 10px;
+ float:right;
+ cursor:hand;
+}
+@media (min-width: 768px){
+ .navbar-collapse.collapse.hideSideMenuForMainPage {
+ display: none !important;
+ }
+}
+#f_hormenu li.mega-menu-dropdown{
+ margin-left:30px;
+}
+.page-sidebar .sidebar-toggler{
+margin-left:190px;
+margin-bottom:5px;
+}
+.header.navbar .hor-menu ul.nav li.current .selected,
+.header.navbar .hor-menu ul.nav li.active .selected{
+margin-bottom:-5px;
+} \ No newline at end of file
diff --git a/uiframe-iui/src/main/resources/webroot/framework/default.html b/uiframe-iui/src/main/resources/webroot/framework/default.html
new file mode 100644
index 00000000..d2040cbc
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/default.html
@@ -0,0 +1,564 @@
+<!--
+
+ Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+-->
+<!DOCTYPE html>
+<html>
+ <head>
+ <meta charset="utf-8" />
+ <title id="com_zte_ums_ict_framework_ui_page_title" name_i18n="com_zte_ums_ict_framework_ui_i18n">
+ </title>
+ <meta http-equiv="X-UA-Compatible" content="IE=edge">
+ <meta content="width=device-width,height=device-height,initial-scale=1.0"
+ name="viewport" />
+ <meta content="zte ict" name="description" />
+ <meta content="zte" name="author" />
+ <script type="text/javascript" src="./js/core/const.js"></script>
+ <script type="text/javascript" src="./appRes/js/custom-const.js" ></script>
+ <script type="text/javascript" src="./js/core/hk.min.js"></script>
+ <link href="../component/thirdparty/fakeLoader/fakeLoader.css" rel="stylesheet" type="text/css" />
+ <script type="text/javascript" src="../component/thirdparty/jquery/jquery-1.10.2.min.js"></script>
+ <script type="text/javascript" src="../component/thirdparty/fakeLoader/fakeLoader.min.js"></script>
+ <link href="../component/thirdparty/font-awesome/css/font-awesome.min.css" rel="stylesheet" type="text/css" id="font_awesome" />
+ <link href="../component/thirdparty/bootstrap/css/bootstrap.min.css" rel="stylesheet" type="text/css" />
+ <link href="../component/thirdparty/uniform/css/uniform.default.css" rel="stylesheet" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../component/thirdparty/select2/select2.css"/>
+ <link rel="stylesheet" type="text/css" href="../component/thirdparty/select2/select2-custom.css"/>
+ <link href="./css/style-custom.css" rel="stylesheet" type="text/css" />
+ <link href="./css/style.css" rel="stylesheet" type="text/css"/>
+ <link href="./css/zte-style.css" rel="stylesheet" type="text/css" />
+ <link href="./css/style-responsive.css" rel="stylesheet" type="text/css" />
+ <link href="./css/plugins.css" rel="stylesheet" type="text/css" />
+ <link href="" rel="stylesheet" type="text/css" id="style_color" />
+ <link href="./css/custom_default.css" rel="stylesheet" type="text/css" />
+ <link href="./css/changepwd.css" rel="stylesheet" type="text/css" />
+ <link rel="shortcut icon" href="./img/integration/zte_logo_16.gif" />
+ <link rel="stylesheet" type="text/css" href="./css/style.css"/>
+ <link rel="stylesheet" type="text/css" href="../component/css/ZteIctIcons/style.css"/>
+ </head>
+ <body class="page-header-fixed page-sidebar-fixed" >
+ <div id="pageLoading" class="fakeloader" ></div>
+ <script type="text/javascript">
+ $("#pageLoading").fakeLoader({text:"",bgColor:"#1178ee",opacity:'1',spinner:"spinner2",zIndex:99999999});
+ </script>
+ <div class="header navbar navbar-fixed-top mega-menu">
+ <div class="header-inner">
+ <a class="navbar-brand zte-navbar-brand hidden-sm hidden-xs" href="./main-page.html">
+ <img id="com_zte_ums_ict_framework_img_netnumenLogo" src="./img/integration/netnumenLogo.png"
+ name_img="com_zte_ums_ict_framework_img" alt="logo" style="display:none"/>
+ <span id="com_zte_ums_ict_framework_ui_main_title" name_i18n="com_zte_ums_ict_framework_ui_i18n"
+ class="zte-brand-text" style="display:none">
+ </span>
+ </a>
+ <div class="hor-menu hidden-sm hidden-xs">
+ <ul class="nav navbar-nav hormenu" style="display:none" id="main_hormenu" menuSrc="./menus/main_MegaHorbar.html" ><!--style="display:none"这个暂时去掉-->
+ </ul>
+ <ul class="nav navbar-nav hormenu" style="display:none" id="f_hormenu" menuSrc="./menus/main_Fmegabar.html">
+ </ul>
+ </div>
+ <ul class="nav navbar-nav pull-right">
+ <div>
+ <a href="javascript:;" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse" onclick="handleMavToggle(this);" navtoggledispattr="hidden">
+ <img src="./img/menu-toggler.png" alt="" />
+ </a>
+ </div>
+ <div class="zte-theme-panel ">
+ <div class="toggler">
+ </div>
+ <div class="toggler-close">
+ </div>
+ <div class="theme-options">
+ <div class="theme-option theme-colors clearfix">
+ <span id="com_zte_ums_ict_framework_ui_skin_select" name_i18n="com_zte_ums_ict_framework_ui_i18n">
+ </span>
+ <ul>
+ <li class="color-ztebluelight current" data-style="ztebluelight">
+ </li>
+ <li class="color-ztebluelight4" data-style="ztebluelight4">
+ </li>
+ <li class="color-ztebluelight2" data-style="ztebluelight2">
+ </li>
+
+ <!--li class="color-ztebluelight3" data-style="ztebluelight3">
+ </li>
+ <li class="color-zteblue" data-style="zteblue">
+ </li>
+ <li class="color-blue" data-style="blue">
+ </li>
+ <li class="color-black" data-style="black">
+ </li-->
+
+ <!--li class="color-grey" data-style="grey">
+ </li>
+ <li class="color-white" data-style="light">
+ </li>
+ <li class="color-brown" data-style="brown">
+ </li>
+ <li class="color-purple" data-style="purple">
+ </li-->
+ </ul>
+ </div>
+ <div class="theme-option">
+ <span id="com_zte_ums_ict_framework_ui_language" name_i18n="com_zte_ums_ict_framework_ui_i18n">
+ </span>
+ <select class="language-option form-control input-small">
+ <option id="com_zte_ums_ict_framework_ui_language_zhcn" name_i18n="com_zte_ums_ict_framework_ui_i18n"
+ value="zh-CN" selected="selected">
+ </option>
+ <option id="com_zte_ums_ict_framework_ui_language_en" name_i18n="com_zte_ums_ict_framework_ui_i18n"
+ value="en-US">
+ </option>
+ </select>
+ </div>
+ <div class="theme-option">
+ <span id="com_zte_ums_ict_framework_ui_navbar_direction" name_i18n="com_zte_ums_ict_framework_ui_i18n">
+ </span>
+ <select class="nav-pos-direction form-control input-small">
+ <option id="com_zte_ums_ict_framework_ui_navbar_direction_vertical" name_i18n="com_zte_ums_ict_framework_ui_i18n"
+ value="vertical" selected="selected">
+ </option>
+ <option id="com_zte_ums_ict_framework_ui_navbar_direction_horizontal" name_i18n="com_zte_ums_ict_framework_ui_i18n"
+ value="horizontal">
+ </option>
+ <option id="com_zte_ums_ict_framework_ui_navbar_direction_fmenu" name_i18n="com_zte_ums_ict_framework_ui_i18n"
+ value="fmenu">
+ </option>
+ </select>
+ </div>
+ <div class="theme-option">
+ <span id="com_zte_ums_ict_framework_ui_skin_layout" name_i18n="com_zte_ums_ict_framework_ui_i18n">
+ </span>
+ <select class="layout-option form-control input-small">
+ <option id="com_zte_ums_ict_framework_ui_layout_fluid" name_i18n="com_zte_ums_ict_framework_ui_i18n"
+ value="fluid" selected="selected">
+ </option>
+ <option id="com_zte_ums_ict_framework_ui_layout_boxed" name_i18n="com_zte_ums_ict_framework_ui_i18n"
+ value="boxed">
+ </option>
+ </select>
+ </div>
+ <!--div class="theme-option">
+ <span id="com_zte_ums_ict_framework_ui_page_head" name_i18n="com_zte_ums_ict_framework_ui_i18n">
+ </span>
+ <select class="header-option form-control input-small">
+ <option id="com_zte_ums_ict_framework_ui_page_head_fixed" name_i18n="com_zte_ums_ict_framework_ui_i18n"
+ value="fixed" selected="selected">
+ </option>
+ <option id="com_zte_ums_ict_framework_ui_page_head_default" name_i18n="com_zte_ums_ict_framework_ui_i18n"
+ value="default">
+ </option>
+ </select>
+ </div-->
+ <!--div class="theme-option">
+ <span id="com_zte_ums_ict_framework_ui_side_bar" name_i18n="com_zte_ums_ict_framework_ui_i18n">
+ </span>
+ <select class="sidebar-option form-control input-small">
+ <option id="com_zte_ums_ict_framework_ui_page_sidebar_fixed" name_i18n="com_zte_ums_ict_framework_ui_i18n"
+ value="fixed" selected="selected">
+ </option>
+ <option id="com_zte_ums_ict_framework_ui_page_sidebar_default" name_i18n="com_zte_ums_ict_framework_ui_i18n"
+ value="default">
+ </option>
+ </select>
+ </div-->
+ <!--div class="theme-option">
+ <span id="com_zte_ums_ict_framework_ui_sidebar_location" name_i18n="com_zte_ums_ict_framework_ui_i18n">
+ </span>
+ <select class="sidebar-pos-option form-control input-small">
+ <option id="com_zte_ums_ict_framework_ui_keep_left" name_i18n="com_zte_ums_ict_framework_ui_i18n"
+ value="left" selected="selected">
+ </option>
+ <option id="com_zte_ums_ict_framework_ui_keep_right" name_i18n="com_zte_ums_ict_framework_ui_i18n"
+ value="right">
+ </option>
+ </select>
+ </div-->
+ <!-- <div class="theme-option">
+ <span id="com_zte_ums_ict_framework_ui_page_footer">
+ </span>
+ <select class="footer-option form-control input-small">
+ <option id="com_zte_ums_ict_framework_ui_page_footer_fixed" value="fixed" ></option>
+ <option id="com_zte_ums_ict_framework_ui_page_footer_default" value="default" selected="selected"></option>
+ </select>
+ </div>
+ -->
+ </div>
+ </div>
+ <li class="dropdown" id="header_notification_bar" style="display:none">
+ <a href="#" class="dropdown-toggle" data-toggle="dropdown" data-hover="dropdown"
+ data-close-others="true">
+ <i class="fa fa-warning" id="hd_heighestAlarmcount_li">
+ </i>
+ <span class="badge" id="hd_heighestAlarmcount_value">
+ </span>
+ </a>
+ <ul class="dropdown-menu extended notification">
+ <li>
+ <p>
+ <span id="hd_alarmcount_total_before_text">
+ </span>
+ <span class="badge" id="hd_alarmcount_total_value">
+ </span>
+ <span id="hd_alarmcount_total_after_text">
+ </span>
+ </p>
+ </li>
+ <li>
+ <ul class="dropdown-menu-list scroller" style="height: 168px;">
+ <li>
+ <a href="#">
+ <span class="label label-icon alarm-critical">
+ <i class="fa fa-bolt " id="hd_alarmcount_critical_li">
+ </i>
+ <span class="badge" id="hd_alarmcount_critical_value">
+ </span>
+ </span>
+ <span id="hd_alarmcount_critical_text">
+ </span>
+ </a>
+ </li>
+ <li>
+ <a href="#">
+ <span class="label label-icon alarm-major">
+ <i class="fa fa-warning" id="hd_alarmcount_major_li">
+ </i>
+ <span class="badge" id="hd_alarmcount_major_value">
+ </span>
+ </span>
+ <span id="hd_alarmcount_major_text">
+ </span>
+ </a>
+ </li>
+ <li>
+ <a href="#">
+ <span class="label label-icon alarm-minor">
+ <i class="fa fa-bell-o" id="hd_alarmcount_minor_li">
+ </i>
+ <span class="badge" id="hd_alarmcount_minor_value">
+ </span>
+ </span>
+ <span id="hd_alarmcount_minor_text">
+ </span>
+ </a>
+ </li>
+ <li>
+ <a href="#">
+ <span class="label label-icon alarm-warning">
+ <i class="fa fa-bullhorn" id="hd_alarmcount_warning_li">
+ </i>
+ <span class="badge" id="hd_alarmcount_warning_value">
+ </span>
+ </span>
+ <span id="hd_alarmcount_warning_text">
+ </span>
+ </a>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </li>
+ <li class="dropdown user" id="header_dropdown_user" style="display:none">
+ <a href="#" class="dropdown-toggle" data-toggle="dropdown" data-hover="dropdown"
+ data-close-others="true">
+ <span>
+ <img alt="" width=26 height=26 src="./img/user.png"
+ />
+ </span>
+ <span class="username" id="currentUser">
+ </span>
+ <i class="fa fa-angle-down">
+ </i>
+ </a>
+ <ul class="dropdown-menu">
+ <div id="uep_ict_help_div">
+ <li>
+ <a href="#" target="uep_ict_help" id="uep_ict_help_url">
+ <i class="fa fa-book fa-fw">
+ </i>
+ <span id="com_zte_ums_ict_framework_moudle_help">
+ </span>
+ </a>
+ </li>
+ <li>
+ <a href="#" data-target="#aboutDlg" data-backdrop="false" data-toggle="modal">
+ <i class="fa fa fa-th-large">
+ </i>
+ <span id="com_zte_ums_ict_framework_moudle_about">
+ </span>
+ </a>
+ </li>
+ <li class="divider">
+ </li>
+ </div>
+ <!--<li>
+ <a href="#" >
+ <i class="fa fa-user"></i> <span id="com_zte_ums_ict_framework_ui_basic_info"></span>
+ </a>
+ </li>-->
+ <li>
+ <a href="#" id ="changePwd_labellink" data-target="#changepwdDlg" data-backdrop="false" data-toggle="modal">
+ <i class="fa fa-pencil">
+ </i>
+ <span id="changePwd_label">
+ </span>
+ </a>
+ </li>
+ <li class="divider" id="full_logout_divider">
+ </li>
+ <div id="trigger_fullscreen_div">
+ <li>
+ <a href="javascript:;" id="trigger_fullscreen">
+ <i class="fa fa-arrows">
+ </i>
+ <span id="fullscreen_label">
+ </span>
+ </a>
+ </li>
+ </div>
+ <div id="trigger_logout_div">
+ <li>
+ <a id="trigger_logout" href="#">
+ <i class="fa fa-key">
+ </i>
+ <span id="logout_label">
+ </span>
+ </a>
+ </li>
+ </div>
+ </ul>
+ </li>
+ <li class="dropdown system" id="headerMenu">
+ </li>
+ </ul>
+ </div>
+ </div>
+ <div class="modal fade" tabindex="-1" id="changepwdDlg" style="display:none" role="dialog"
+ aria-hidden="true">
+ <div class="page-loading page-loading-boxed">
+ <img src="./img/loading-spinner-grey.gif" alt="" class="loading">
+ <span>
+ &nbsp;&nbsp;Loading...
+ </span>
+ </div>
+ <div class="modal-dialog modal-lg ">
+ <div class="modal-content Changepasswd" dlgsrc="changepwd.html">
+ </div>
+ </div>
+ </div>
+ <div class="modal fade" tabindex="-1" id="aboutDlg" role="dialog"
+ aria-hidden="true">
+ <div class="page-loading page-loading-boxed">
+ <img src="img/loading-spinner-grey.gif" alt="" class="loading">
+ <span>
+ &nbsp;&nbsp;Loading...
+ </span>
+ </div>
+ <div class="modal-dialog modal-lg ">
+ <div class="modal-content aboutDlg" dlgsrc="about.html">
+ </div>
+ </div>
+ </div>
+ <!-- /.modal -->
+ <div class="clearfix">
+ </div>
+ <div class="page-container">
+ <div class="page-sidebar navbar-collapse collapse" style="z-index: 9999;">
+ <ul class="page-sidebar-menu" id="page-sidebar-menu" data-auto-scroll="true" data-slide-speed="200"
+ menuSrc="./menus/main_siderbar.html" >
+ </ul>
+ <ul class="page-sidebar-menu" id="page-f-sidebar-menu" data-auto-scroll="true" data-slide-speed="200"
+ menuSrc="./menus/main_Fsiderbar.html" >
+ </ul>
+ <ul class="page-sidebar-menu" id="page-megachild-sidebar-menu" data-auto-scroll="true" data-slide-speed="200"
+ menuSrc="./menus/child_menu.html" style="display:none">
+ </ul>
+ </div>
+ <div class="page-content-wrapper">
+ <div class="page-content">
+ <div class="page-content-body">
+ <div class="row">
+ <div class="col-md-12">
+ <ul class="page-breadcrumb breadcrumb">
+ <div class="row">
+ <ul class="col-md-10 breadcrumbUl" >
+ <!--li>
+ <i class="fa fa-home">
+ </i>
+ <a href="javascript:goToHomePage();">
+ </a>
+ <i class="fa fa-angle-right">
+ </i>
+ </li>
+ <li>
+ <a href="#">
+ </a>
+ </li-->
+ </ul>
+
+
+ </div>
+ <ul class="col-md-2 more-botton-zone">
+
+ </ul>
+
+ </ul>
+<link href="css/more-operation.css" rel="stylesheet" type="text/css" />
+ <div id = "pageableDiv" style = "display: none" class="row row1">
+ <div class="col-xs-12" >
+ <div class="row" >
+ <div id="carousel-example-generic" class="carousel slide" data-ride="carousel" data-interval="false">
+ <div class="carousel-inner" role="listbox"></div>
+ <a class="left carousel-control" href="#carousel-example-generic" role="button" data-slide="prev">
+ <span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span>
+ <span class="sr-only">Previous</span>
+ </a>
+ <a class="right carousel-control" href="#carousel-example-generic" role="button" data-slide="next" style="margin-right: -10px;">
+ <span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span>
+ <span class="sr-only">Next</span>
+ </a>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ <!-- <div class="footer">
+ <div class="footer-inner">
+ 2014 &copy; ZTE中兴通讯股份有限公司
+ </div>
+ <div class="footer-tools">
+ <span class="go-top">
+ <i class="fa fa-angle-up"></i>
+ </span>
+ </div>
+ </div> -->
+ <!--[if lt IE 9]>
+ <script type="text/javascript" src="/ngict/iui/component/thirdparty/respond/respond.min.js">
+ </script>
+ <script type="text/javascript" src="/ngict/iui/component/thirdparty/excanvas/excanvas.min.js">
+ </script>
+ <![endif]-->
+
+ <!---->
+ <!--script type="text/javascript" src="/ngict/iui/framework/menus/framework/thirdparty/jquery-migrate-1.2.1.min.js">
+ </script-->
+ <!-- 重要! 加载botstrap.min.js之前请先加载jquery-ui-1.10.3.custom.min.js以避免bootstrap的tooltip与jquery
+ ui的tooltip发生冲突 -->
+ <!--script type="text/javascript" src="../component/thirdparty/jquery-ui/jquery-ui-1.10.3.custom.min.js">
+ </script-->
+ <script type="text/javascript" src="../component/thirdparty/bootstrap/js/bootstrap.min.js">
+ </script>
+ <script type="text/javascript" src="../component/thirdparty/jquery-validation/js/jquery.validate.min.js">
+ </script>
+ <script type="text/javascript" src="../component/thirdparty/bootstrap-hover-dropdown/bootstrap-hover-dropdown.min.js">
+ </script>
+ <script type="text/javascript" src="../component/thirdparty/jquery-blockui/jquery.blockui.min.js">
+ </script>
+ <script type="text/javascript" src="../component/thirdparty/jquery-cokie/jquery.cokie.min.js">
+ </script>
+ <script type="text/javascript" src="../component/thirdparty/uniform/jquery.uniform.min.js">
+ </script>
+ <!-- 重要! 加载ict-cometd.js之前必须先加载cometd.js和jquery.cometd.js以避免cometd的ict-cometd发生内存溢出
+ -->
+ <script type="text/javascript" src="../component/thirdparty/cometd/cometd.js">
+ </script>
+ <script type="text/javascript" src="../component/thirdparty/cometd/jquery/jquery.cometd.js">
+ </script>
+ <script type="text/javascript" src="../component/thirdparty/select2/select2.min.js">
+ </script>
+ <script type="text/javascript" src="../component/thirdparty/bootbox/bootbox.min.js">
+ </script>
+ <script src="./js/moreOperation.js"></script>
+ <script src="./js/tools.js"></script>
+ <script type="text/javascript" src="../component/thirdparty/jquery.i18n/jquery.i18n.properties-1.0.9.js">
+ </script>
+ <script type="text/javascript" src="./js/international/loadi18n.js">
+ </script>
+ <script type="text/javascript" src="./js/Main2moreMenu.js">
+ </script>
+ <script type="text/javascript" src="./js/core/pym.min.js"></script>
+ <script type="text/javascript" src="./js/core/ZteFrameWork.min.js"></script>
+ <script type="text/javascript" src="./appRes/js/custom.js" ></script>
+ <script>
+ var sence = '0';
+ var panel = $('.zte-theme-panel');
+ var body = $('body');
+ switch (sence) {
+ case "1":
+ $('title').attr('id', 'com_zte_ums_ict_framework_ui_page_title_1');
+ break;
+ case "2":
+ $('title').attr('id', 'com_zte_ums_ict_framework_ui_page_title_2');
+ if (body.hasClass("page-sidebar-fixed")) {
+ body.removeClass('page-sidebar-fixed');
+ }
+ body.addClass('page-sidebar-closed');
+ break;
+ case "3":
+ $('title').attr('id', 'com_zte_ums_ict_framework_ui_page_title_3');
+ if (body.hasClass("page-sidebar-fixed")) {
+ body.removeClass('page-sidebar-fixed');
+ }
+ body.addClass('page-sidebar-closed');
+ $('.sidebar-option', panel).val("default");
+ //getHeaderMenu("/web/newict/framework/zte/ict/headerMenu.html");
+ break;
+ case "0":
+ default:
+ break;
+ }
+ </script>
+ <script>
+ loadi18n_WebFramework(); // 加载框架自身的国际化内容
+ iniHorMenu();
+ iniSidebarMenu();
+ iniFMenu();
+ </script>
+ <script type="text/javascript" src="./js/fm_light.js">
+ </script>
+ <script type="text/javascript" src="./js/security/changepwd.js">
+ </script>
+ <script type="text/javascript" src="../component/thirdparty/data-tables/jquery.dataTables.min.js">
+ </script>
+ <script src="js/mainpage/about.js"></script>
+ <script>
+ jQuery(document).ready(function() {
+ ZteFrameWork.init();
+ initBaseInfo();
+ //initUserInfo();
+ iniChangePWDDlg();
+ iniAboutDlg();
+ var language = getLanguage();
+ bootbox.setDefaults({
+ locale: language.replace("-", "_")
+ });
+ var help_url = "/help/showhelp.jsp?lang=" + language;
+ $('#uep_ict_help_url').attr('href', help_url);
+ //handleAppCustomMenuItem();
+ //handleAppCustomThemeColor();
+ $('#changepwdDlg').on('hide.bs.modal',function() {
+ $(this).removeData('bs.modal');
+ })
+ var pymChild = new pym.Child({ polling: 500 });
+ $("#pageLoading").setToHide();
+ });
+ </script>
+ </body>
+</html> \ No newline at end of file
diff --git a/uiframe-iui/src/main/resources/webroot/framework/i18n/web-framework-i18n-en-US.properties b/uiframe-iui/src/main/resources/webroot/framework/i18n/web-framework-i18n-en-US.properties
new file mode 100644
index 00000000..61b55ec8
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/i18n/web-framework-i18n-en-US.properties
@@ -0,0 +1,225 @@
+#
+# Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+com_zte_ums_ict_framework_ui_main_title=
+com_zte_ums_ict_framework_ui_page_title=ICT Management System
+com_zte_ums_ict_framework_ui_page_title_1=ICT Management System-ICT Monitor
+com_zte_ums_ict_framework_ui_page_title_2=ICT Management System-Base Scenarios
+com_zte_ums_ict_framework_ui_page_title_3=ICT Management System-GIS Scenarios
+com_zte_ums_ict_framework_ui_skin_select=Theme Color
+com_zte_ums_ict_framework_ui_language=Language
+com_zte_ums_ict_framework_ui_language_zhcn=中文
+com_zte_ums_ict_framework_ui_language_en=English
+com_zte_ums_ict_framework_ui_skin_layout=Layout
+com_zte_ums_ict_framework_ui_layout_fluid=Fluid
+com_zte_ums_ict_framework_ui_layout_boxed=Boxed
+com_zte_ums_ict_framework_ui_page_head=Header
+com_zte_ums_ict_framework_ui_page_fixed=Fixed
+com_zte_ums_ict_framework_ui_page_default=Default
+com_zte_ums_ict_framework_ui_page_head_fixed=Fixed
+com_zte_ums_ict_framework_ui_page_head_default=Default
+com_zte_ums_ict_framework_ui_page_sidebar_fixed=Fixed
+com_zte_ums_ict_framework_ui_page_sidebar_default=Default
+com_zte_ums_ict_framework_ui_side_bar=Sidebar
+com_zte_ums_ict_framework_ui_sidebar_location=Sidebar Position
+com_zte_ums_ict_framework_ui_navbar_direction=Menu Direction
+com_zte_ums_ict_framework_ui_navbar_direction_horizontal=Horizontal
+com_zte_ums_ict_framework_ui_navbar_direction_vertical=Vertical
+com_zte_ums_ict_framework_ui_navbar_direction_fmenu=Category Navigation
+com_zte_ums_ict_framework_ui_keep_top=Top
+com_zte_ums_ict_framework_ui_keep_left=Left
+com_zte_ums_ict_framework_ui_keep_right=Right
+com_zte_ums_ict_framework_ui_page_footer=Footer
+
+com_zte_ums_ict_framework_ui_basic_info=Basic Information
+com_zte_ums_ict_framework_ui_search_value=Search...
+com_zte_ums_ict_framework_ui_sidebar_mainPage=Home
+com_zte_ums_ict_framework_ui_sidebar_topo=Topology
+com_zte_ums_ict_framework_ui_sidebar_resList=Resource Table
+com_zte_ums_ict_framework_ui_sidebar_physicTopo=Physical Topology
+com_zte_ums_ict_framework_ui_sidebar_linkTopo=Relation Topology
+com_zte_ums_ict_framework_ui_sidebar_alarm=Alarm
+com_zte_ums_ict_framework_ui_sidebar_alarm_summary=Alarm Summary
+com_zte_ums_ict_framework_ui_sidebar_currentAlarm=Active Alarm
+com_zte_ums_ict_framework_ui_sidebar_historyAlarm=History Alarm
+com_zte_ums_ict_framework_ui_sidebar_notice=Notification
+com_zte_ums_ict_framework_ui_sidebar_alarmRule=Alarm Setting
+com_zte_ums_ict_framework_ui_sidebar_queryAlarm=Query Alarm
+com_zte_ums_ict_framework_ui_sidebar_alarmStat=Alarm Statistic
+com_zte_ums_ict_framework_ui_sidebar_alarmSetup=Alarm Setting
+com_zte_ums_ict_framework_ui_sidebar_perform=Performance
+
+com_zte_ums_ict_framework_ui_sidebar_pm_meatask=Measure Management
+com_zte_ums_ict_framework_ui_sidebar_index=Index Management
+com_zte_ums_ict_framework_ui_sidebar_threshold=Threshold Management
+
+com_zte_ums_ict_framework_ui_sidebar_historySearch=History Query
+com_zte_ums_ict_framework_ui_sidebar_realTimeSearch=Realtime Data Query
+com_zte_ums_ict_framework_ui_sidebar_counterAndIndicator=Counter and Index
+com_zte_ums_ict_framework_ui_sidebar_measureTaskMang=Measurement Task
+com_zte_ums_ict_framework_ui_sidebar_generalTemplateMang=Common Template
+com_zte_ums_ict_framework_ui_sidebar_config=Configuration
+com_zte_ums_ict_framework_ui_sidebar_itDevMang=IT Resource Management
+com_zte_ums_ict_framework_ui_sidebar_ipDevMang=IP Resource Management
+com_zte_ums_ict_framework_ui_sidebar_autoFind=Auto Discovery
+com_zte_ums_ict_framework_ui_sidebar_pollConfig=Poll Configuration
+com_zte_ums_ict_framework_ui_sidebar_smcenter=Security Center
+com_zte_ums_ict_framework_ui_sidebar_security=Security
+com_zte_ums_ict_framework_ui_sidebar_smGuide=security Entry
+com_zte_ums_ict_framework_ui_sidebar_deptMang=Department Management
+com_zte_ums_ict_framework_ui_sidebar_userMang=User Management
+com_zte_ums_ict_framework_ui_sidebar_roleMang=Role Management
+com_zte_ums_ict_framework_ui_sidebar_acccRule=Customize User Account Rule
+com_zte_ums_ict_framework_ui_sidebar_roleAndRoleset=Role & Role Set
+com_zte_ums_ict_framework_ui_sidebar_role=Role Management
+com_zte_ums_ict_framework_ui_sidebar_roleset=Role Set Management
+com_zte_ums_ict_framework_ui_sidebar_log=Log
+com_zte_ums_ict_framework_ui_sidebar_operationLog=Operation Log
+com_zte_ums_ict_framework_ui_sidebar_sysLog=System Log
+com_zte_ums_ict_framework_ui_sidebar_securityLog=Security Log
+com_zte_ums_ict_framework_ui_sidebar_sysLogMultiTab=System Log(Multi-tab Example)
+com_zte_ums_ict_framework_ui_sidebar_operationLogMultiTab=Operation Log(Multi-tab Example)
+com_zte_ums_ict_framework_ui_sidebar_system=System
+com_zte_ums_ict_framework_ui_sidebar_dataBackup=Backup Data
+com_zte_ums_ict_framework_ui_sidebar_fileBackup=Backup Files
+com_zte_ums_ict_framework_ui_sidebar_license=License
+com_zte_ums_ict_framework_ui_sidebar_sysState=System Status
+com_zte_ums_ict_framework_ui_sidebar_SystemMang=System Management
+
+com_zte_ums_ict_framework_ui_sidebar_monitor=Monitor
+com_zte_ums_ict_framework_ui_sidebar_alarmByCell=Active Alarm Statistic by NE
+com_zte_ums_ict_framework_ui_sidebar_alarmByCellType=Active Alarm Statistic by NE Type
+com_zte_ums_ict_framework_ui_breadcrumbs_moreOper=More Operation
+com_zte_ums_ict_framework_ui_sidebar_dbStructBack=DB Struct Backup
+com_zte_ums_ict_framework_ui_sidebar_baseDataBack=Base Data Backup
+com_zte_ums_ict_framework_ui_sidebar_logDataBackRestore=Log Data Back&Restore
+com_zte_ums_ict_framework_ui_sidebar_alarmDataBackRestore=Alarm Data Back&Restore
+com_zte_ums_ict_framework_ui_sidebar_dbBack=Database Backup
+com_zte_ums_ict_framework_ui_breadcrumbs_ruleSetup=Rule Setup
+com_zte_ums_ngict_dashboard=Dashboard
+
+com_zte_ums_ict_framework_ui_sidebar_levelRedefineSetup=Severity Regrading Setting
+com_zte_ums_ict_framework_ui_sidebar_disposeSuggestionSetup=Handing Suggestion Setting
+com_zte_ums_ict_framework_ui_sidebar_AlarmBoxSetup=Set Alarm Box
+com_zte_ums_ict_framework_ui_sidebar_measureObjectMang=MO Management
+com_zte_ums_ict_framework_ui_sidebar_thresholdTaskMang=Threshold Task
+com_zte_ums_ict_framework_ui_sidebar_anDevMan=AN Device Management
+com_zte_ums_ict_framework_ui_sidebar_cellMang=Cell management
+com_zte_ums_ict_framework_ui_sidebar_snmpPing= SNMP Ping
+com_zte_ums_ict_framework_ui_sidebar_telnet=Telnet
+com_zte_ums_ict_framework_ui_sidebar_workOder=Work Order
+com_zte_ums_ict_framework_ui_sidebar_resMang=Resource Management
+com_zte_ums_ict_framework_ui_sidebar_SecurityMang=Security Management
+com_zte_ums_ict_framework_ui_sidebar_userLockStatus=Show Locked Users
+com_zte_ums_ict_framework_ui_sidebar_loginUserMang=Login User Management
+com_zte_ums_ict_framework_ui_sidebar_userBlackList=User Blacklist
+com_zte_ums_ict_framework_ui_sidebar_operationSet=Operation Set Management
+com_zte_ums_ict_framework_ui_sidebar_LogMang=Log Management
+com_zte_ums_ict_framework_ui_sidebar_backRestore=Backup and Restore
+com_zte_ums_ict_framework_ui_sidebar_dbStructBack=Backup Whole DB Structure
+com_zte_ums_ict_framework_ui_sidebar_baseDataBack=Backup Basic Data
+com_zte_ums_ict_framework_ui_sidebar_logDataBackRestore=Log Data Backup and Restore
+com_zte_ums_ict_framework_ui_sidebar_alarmDataBackRestore=Alarm Data Backup and Restore
+com_zte_ums_ict_framework_ui_loading=loading......
+com_zte_ums_ict_framework_ui_searching=searching......
+com_zte_ums_ict_framework_ui_clickTooFast=You click on too fast, please wait for a while to click the menu, thank you!
+com_zte_ums_ict_framework_ui_loadmenuerror=loading menu failed.
+com_zte_ums_ict_framework_ui_confirmlogout=Do you confirm to logout?
+com_zte_ums_aos_framework_ui_heartbeat_fail=The session is invalidated.
+com_zte_ums_ict_framework_ui_fixedsidedefaultheaderError=Default Header with Fixed Sidebar option is not supported. Proceed with Fixed Header with Fixed Sidebar.
+com_zte_ums_ict_framework_ui_fixedsiderightpositionError=Fixed Sidebar with right position is not supported. Set Sidebar as default.
+com_zte_ums_ict_framework_ui_loadchgpwdpageError=loading change password page failed.
+com_zte_ums_ict_framework_ui_searchmessage=The {0} keyword search results as follows:
+com_zte_ums_ict_framework_ui_month=January,February,March,April,May,June,July,August,September,October,November,December
+com_zte_ums_ict_framework_ui_customdate=Custom date
+com_zte_ums_ict_framework_ui_from=From
+com_zte_ums_ict_framework_ui_to=To
+com_zte_ums_ict_framework_ui_apply=Apply
+com_zte_ums_ict_framework_ui_today=Today
+com_zte_ums_ict_framework_ui_yestoday=Yestoday
+com_zte_ums_ict_framework_ui_lastdays=Last {0} days
+com_zte_ums_ict_framework_ui_thismonth=This month
+com_zte_ums_ict_framework_ui_lastmonth=Last month
+
+com_zte_ums_ict_framework_ui_group_about=About
+com_zte_ums_ict_framework_ui_group_logout=Logout
+com_zte_ums_ict_framework_ui_changePwd=Change Password
+com_zte_ums_ict_framework_ui_group_fullscreen=Full Screen
+com_zte_ums_ict_framework_ui_group_exitfullscreen=Exit Full Screen
+com_zte_ums_ict_framework_moudle_help = Help
+com_zte_ums_ict_framework_moudle_menutoggler=More
+
+
+com_zte_ums_ict_alarmcount_total_label = Total:{0}
+com_zte_ums_ict_alarmcount_critical_label = Critical:{0}
+com_zte_ums_ict_alarmcount_critical_text = Critical Alarm
+com_zte_ums_ict_alarmcount_major_label = Major:{0}
+com_zte_ums_ict_alarmcount_major_text = Major Alarm
+com_zte_ums_ict_alarmcount_minor_label = Minor:{0}
+com_zte_ums_ict_alarmcount_minor_text = Minor Alarm
+com_zte_ums_ict_alarmcount_warning_label = Warning:{0}
+com_zte_ums_ict_alarmcount_warning_text = Warning Alarm
+com_zte_ums_ict_alarmcount_none_label=No alarm Now!
+com_zte_ums_ict_alarmcount_total_after_text = ,Now!"
+com_zte_ums_ict_alarmcount_total_before_text =Total Alarm Number:
+
+com_zte_ums_ict_framework_ui_sidebar_performMonitor=Perform Monitor
+com_zte_ums_ict_framework_ui_sidebar_resource=Resource
+com_zte_ums_ict_framework_ui_sidebar_manualAdd=Manual Add
+com_zte_ums_ict_framework_ui_sidebar_gisTopo=GIS Topo
+
+
+com_zte_ums_ict_framework_ui_sidebar_userDispatch=User Dispatch
+com_zte_ums_ict_framework_ui_sidebar_roleCollect=Role Collection
+
+com_zte_ums_ict_sm_user_op_ok=Operation succeeded.
+com_zte_ums_ict_sm_user_close_button=Close
+com_zte_ums_ict_sm_user_confirm=OK
+com_zte_ums_ict_sm_user_ok=OK
+com_zte_ums_ict_sm_user_modify_current_password_label=&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;User Password Set
+com_zte_ums_ict_sm_user_modify_current_password=User Password Set
+com_zte_ums_ict_sm_user_old_password=Old Password
+com_zte_ums_ict_sm_user_confirmpassword=Confirm New Password
+com_zte_ums_ict_sm_user_cancel_button=Cancel
+com_zte_ums_ict_sm_user_password=New Password
+com_zte_ums_ict_sm_password_confirm_not_consistent = The New Password and the Confirm New Password are inconsistent.
+com_zte_ums_ict_sm_user_inputoldpwd=Please input old password
+com_zte_ums_ict_sm_user_inputnewpwd=Please input new password
+com_zte_ums_ict_sm_user_inputnewpwdagain=Please input new password again
+com_zte_ums_ict_portal_chgpwd_oldpwdError=Old password error
+com_zte_ums_ict_login_inputname=Please input user name
+com_zte_ums_ict_login_inputpwd=Please input user password
+
+com_zte_ums_ict_framework_ui_ztebluelight=ZTE Blue Light
+com_zte_ums_ict_framework_ui_zteblue=ZTE Blue
+com_zte_ums_ict_framework_ui_blue=Blue
+
+com_zte_ums_ict_about_ppu_field_name =Name
+com_zte_ums_ict_about_ppu_field_version = Version
+com_zte_ums_ict_about_ppu_field_desc = Description
+com_zte_ums_ict_about_ppu_field_time = Update Time
+com_zte_ums_ict_framework_moudle_about = About
+com_zte_ums_ict_framework_about_detail = Info
+com_zte_ums_ict_framework_about_version=Version:
+com_zte_ums_ict_portal_login_companyName=2014 @; ZTE - Corporation
+
+com_zte_ums_ict_framework_main_page_dashboard=Dashboard
+com_zte_ums_ict_framework_main_page_monitor=Monitor
+com_zte_ums_ict_framework_main_page_alarm=Alarm
+com_zte_ums_ict_framework_main_page_performance=Performance
+com_zte_ums_ict_framework_main_page_security=Security
+com_zte_ums_ict_framework_main_page_log=Log
+com_zte_ums_ict_framework_main_page_system=System \ No newline at end of file
diff --git a/uiframe-iui/src/main/resources/webroot/framework/i18n/web-framework-i18n-zh-CN.properties b/uiframe-iui/src/main/resources/webroot/framework/i18n/web-framework-i18n-zh-CN.properties
new file mode 100644
index 00000000..4abe14bc
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/i18n/web-framework-i18n-zh-CN.properties
@@ -0,0 +1,226 @@
+#
+# Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+
+com_zte_ums_ict_framework_ui_main_title=
+com_zte_ums_ict_framework_ui_page_title=ICT管理系统
+com_zte_ums_ict_framework_ui_page_title_1=ICT管理系统-ICT监控
+com_zte_ums_ict_framework_ui_page_title_2=ICT管理系统-基础版本场景
+com_zte_ums_ict_framework_ui_page_title_3=ICT管理系统-GIS应用场景
+com_zte_ums_ict_framework_ui_skin_select=皮肤选择
+com_zte_ums_ict_framework_ui_language=语言
+com_zte_ums_ict_framework_ui_language_zhcn=中文
+com_zte_ums_ict_framework_ui_language_en=English
+com_zte_ums_ict_framework_ui_skin_layout=布局
+com_zte_ums_ict_framework_ui_layout_fluid=流动布局
+com_zte_ums_ict_framework_ui_layout_boxed=盒子布局
+com_zte_ums_ict_framework_ui_page_head=页头
+com_zte_ums_ict_framework_ui_page_fixed=固定
+com_zte_ums_ict_framework_ui_page_default=默认
+com_zte_ums_ict_framework_ui_page_head_fixed=固定
+com_zte_ums_ict_framework_ui_page_head_default=默认
+com_zte_ums_ict_framework_ui_page_sidebar_fixed=固定
+com_zte_ums_ict_framework_ui_page_sidebar_default=默认
+com_zte_ums_ict_framework_ui_side_bar=边栏
+com_zte_ums_ict_framework_ui_sidebar_location=边栏位置
+com_zte_ums_ict_framework_ui_navbar_direction=菜单方向
+com_zte_ums_ict_framework_ui_navbar_direction_horizontal=横向
+com_zte_ums_ict_framework_ui_navbar_direction_vertical=纵向
+com_zte_ums_ict_framework_ui_navbar_direction_fmenu=分类导航
+com_zte_ums_ict_framework_ui_keep_top=靠上
+com_zte_ums_ict_framework_ui_keep_left=靠左
+com_zte_ums_ict_framework_ui_keep_right=靠右
+com_zte_ums_ict_framework_ui_page_footer=页脚
+
+com_zte_ums_ict_framework_ui_basic_info=基本信息
+com_zte_ums_ict_framework_ui_search_value=搜索...
+com_zte_ums_ict_framework_ui_sidebar_mainPage=主页
+com_zte_ums_ict_framework_ui_sidebar_topo=拓扑
+com_zte_ums_ict_framework_ui_sidebar_resList=资源列表
+com_zte_ums_ict_framework_ui_sidebar_physicTopo=物理拓扑
+com_zte_ums_ict_framework_ui_sidebar_linkTopo=链路拓扑
+com_zte_ums_ict_framework_ui_sidebar_alarm=告警
+com_zte_ums_ict_framework_ui_sidebar_alarm_summary=告警概览
+com_zte_ums_ict_framework_ui_sidebar_currentAlarm=当前告警
+com_zte_ums_ict_framework_ui_sidebar_historyAlarm=历史告警
+com_zte_ums_ict_framework_ui_sidebar_notice=通知
+com_zte_ums_ict_framework_ui_sidebar_alarmRule=告警规则
+com_zte_ums_ict_framework_ui_sidebar_queryAlarm=告警查询
+com_zte_ums_ict_framework_ui_sidebar_alarmStat=告警统计
+com_zte_ums_ict_framework_ui_sidebar_alarmSetup=告警设置
+com_zte_ums_ict_framework_ui_sidebar_perform=性能
+
+com_zte_ums_ict_framework_ui_sidebar_pm_meatask=任务管理
+com_zte_ums_ict_framework_ui_sidebar_index=指标管理
+com_zte_ums_ict_framework_ui_sidebar_threshold=门限管理
+
+com_zte_ums_ict_framework_ui_sidebar_historySearch=历史查询
+com_zte_ums_ict_framework_ui_sidebar_realTimeSearch=实时查询
+com_zte_ums_ict_framework_ui_sidebar_counterAndIndicator=计数器与指标
+com_zte_ums_ict_framework_ui_sidebar_measureTaskMang=测量任务管理
+com_zte_ums_ict_framework_ui_sidebar_generalTemplateMang=通用模板管理
+com_zte_ums_ict_framework_ui_sidebar_config=配置
+com_zte_ums_ict_framework_ui_sidebar_itDevMang=IT设备管理
+com_zte_ums_ict_framework_ui_sidebar_ipDevMang=IP设备管理
+com_zte_ums_ict_framework_ui_sidebar_autoFind=自动发现
+com_zte_ums_ict_framework_ui_sidebar_pollConfig=轮询设置
+com_zte_ums_ict_framework_ui_sidebar_security=安全
+com_zte_ums_ict_framework_ui_sidebar_smcenter=安全中心
+com_zte_ums_ict_framework_ui_sidebar_smGuide=安全入门
+com_zte_ums_ict_framework_ui_sidebar_deptMang=部门管理
+com_zte_ums_ict_framework_ui_sidebar_userMang=用户管理
+com_zte_ums_ict_framework_ui_sidebar_acccRule=帐户规则
+com_zte_ums_ict_framework_ui_sidebar_roleMang=角色管理
+com_zte_ums_ict_framework_ui_sidebar_roleAndRoleset=角色和角色集
+com_zte_ums_ict_framework_ui_sidebar_role=角色管理
+com_zte_ums_ict_framework_ui_sidebar_roleset=角色集管理
+com_zte_ums_ict_framework_ui_sidebar_log=日志
+com_zte_ums_ict_framework_ui_sidebar_operationLog=操作日志
+com_zte_ums_ict_framework_ui_sidebar_sysLog=系统日志
+com_zte_ums_ict_framework_ui_sidebar_securityLog=安全日志
+com_zte_ums_ict_framework_ui_sidebar_sysLogMultiTab=系统日志(多TAB示例)
+com_zte_ums_ict_framework_ui_sidebar_operationLogMultiTab=操作日志(多TAB示例)
+com_zte_ums_ict_framework_ui_sidebar_system=系统
+com_zte_ums_ict_framework_ui_sidebar_dataBackup=数据备份
+com_zte_ums_ict_framework_ui_sidebar_fileBackup=文件备份
+com_zte_ums_ict_framework_ui_sidebar_license=许可证
+com_zte_ums_ict_framework_ui_sidebar_sysState=系统状态
+com_zte_ums_ict_framework_ui_sidebar_SystemMang=系统管理
+
+com_zte_ums_ict_framework_ui_sidebar_monitor=监控
+com_zte_ums_ict_framework_ui_sidebar_alarmByCell=按网元统计告警
+com_zte_ums_ict_framework_ui_sidebar_alarmByCellType=按网元类型统计告警
+com_zte_ums_ict_framework_ui_breadcrumbs_moreOper=更多操作
+com_zte_ums_ict_framework_ui_sidebar_dbStructBack=整库结构备份
+com_zte_ums_ict_framework_ui_sidebar_baseDataBack=基础数据备份
+com_zte_ums_ict_framework_ui_sidebar_logDataBackRestore=日志数据备份恢复
+com_zte_ums_ict_framework_ui_sidebar_alarmDataBackRestore=告警数据备份恢复
+com_zte_ums_ict_framework_ui_sidebar_dbBack=数据库备份
+com_zte_ums_ngict_dashboard=仪表盘
+com_zte_ums_ict_framework_ui_breadcrumbs_ruleSetup=规则设置
+com_zte_ums_ict_framework_ui_sidebar_levelRedefineSetup=级别重定义设置
+com_zte_ums_ict_framework_ui_sidebar_disposeSuggestionSetup=处理建议设置
+com_zte_ums_ict_framework_ui_sidebar_AlarmBoxSetup=告警箱设置
+com_zte_ums_ict_framework_ui_sidebar_measureObjectMang=测量对象管理
+
+com_zte_ums_ict_framework_ui_sidebar_thresholdTaskMang=门限任务管理
+com_zte_ums_ict_framework_ui_sidebar_anDevMan=AN产品管理
+com_zte_ums_ict_framework_ui_sidebar_cellMang=网元管理
+com_zte_ums_ict_framework_ui_sidebar_snmpPing= SNMP Ping
+com_zte_ums_ict_framework_ui_sidebar_telnet=Telnet
+com_zte_ums_ict_framework_ui_sidebar_workOder=工单管理
+com_zte_ums_ict_framework_ui_sidebar_resMang=资源管理
+com_zte_ums_ict_framework_ui_sidebar_SecurityMang=安全管理
+com_zte_ums_ict_framework_ui_sidebar_operationSet=操作集管理
+com_zte_ums_ict_framework_ui_sidebar_userLockStatus=用户锁定情况
+com_zte_ums_ict_framework_ui_sidebar_loginUserMang=登录用户管理
+com_zte_ums_ict_framework_ui_sidebar_userBlackList=用户黑名单
+com_zte_ums_ict_framework_ui_sidebar_operationSet=操作集
+com_zte_ums_ict_framework_ui_sidebar_LogMang=日志管理
+com_zte_ums_ict_framework_ui_sidebar_backRestore=备份恢复
+com_zte_ums_ict_framework_ui_sidebar_dbStructBack=整库结构备份
+com_zte_ums_ict_framework_ui_sidebar_baseDataBack=基础数据备份
+com_zte_ums_ict_framework_ui_sidebar_logDataBackRestore=日志数据备份恢复
+com_zte_ums_ict_framework_ui_sidebar_alarmDataBackRestore=告警数据备份恢复
+com_zte_ums_ict_framework_ui_loading=加载中......
+com_zte_ums_ict_framework_ui_searching=搜索中......
+com_zte_ums_ict_framework_ui_clickTooFast=您点击的太快了,请稍候重新点击下该菜单,谢谢
+com_zte_ums_ict_framework_ui_loadmenuerror=菜单加载失败
+com_zte_ums_ict_framework_ui_confirmlogout=你确认要注销吗?
+com_zte_ums_aos_framework_ui_heartbeat_fail=会话已经失效。
+com_zte_ums_ict_framework_ui_fixedsidedefaultheaderError=页头不支持固定边栏,先固定页头才能固定边栏.
+com_zte_ums_ict_framework_ui_fixedsiderightpositionError=固定边栏不支持边栏靠右,先设置边栏为默认.
+com_zte_ums_ict_framework_ui_loadchgpwdpageError=加载修改密码页面失败
+com_zte_ums_ict_framework_ui_searchmessage=关键字{0}的搜索结果如下:
+com_zte_ums_ict_framework_ui_month=一月,二月,三月,四月,五月,六月,七月,八月,九月,十月,十一月,十二月
+com_zte_ums_ict_framework_ui_customdate=自定义日期
+com_zte_ums_ict_framework_ui_from=从
+com_zte_ums_ict_framework_ui_to=到
+com_zte_ums_ict_framework_ui_apply=应用
+com_zte_ums_ict_framework_ui_today=今天
+com_zte_ums_ict_framework_ui_yestoday=昨天
+com_zte_ums_ict_framework_ui_lastdays=最近{0}天
+com_zte_ums_ict_framework_ui_thismonth=本月
+com_zte_ums_ict_framework_ui_lastmonth=上个月
+com_zte_ums_ict_framework_ui_group_about=关于
+
+com_zte_ums_ict_framework_ui_group_logout=注销
+com_zte_ums_ict_framework_ui_changePwd=修改密码
+com_zte_ums_ict_framework_ui_group_fullscreen=全屏
+com_zte_ums_ict_framework_ui_group_exitfullscreen=退出全屏
+com_zte_ums_ict_framework_moudle_help = 帮助
+com_zte_ums_ict_framework_moudle_menutoggler=更多...
+
+com_zte_ums_ict_alarmcount_total_label = 总计:{0}
+com_zte_ums_ict_alarmcount_critical_label = 严重:{0}
+com_zte_ums_ict_alarmcount_critical_text = 严重告警
+com_zte_ums_ict_alarmcount_major_label = 主要:{0}
+com_zte_ums_ict_alarmcount_major_text = 主要告警
+com_zte_ums_ict_alarmcount_minor_label = 次要:{0}
+com_zte_ums_ict_alarmcount_minor_text = 次要告警
+com_zte_ums_ict_alarmcount_warning_label = 警告:{0}
+com_zte_ums_ict_alarmcount_warning_text = 警告告警
+com_zte_ums_ict_alarmcount_none_label=当前系统无告警
+com_zte_ums_ict_alarmcount_total_before_text =当前系统共有
+com_zte_ums_ict_alarmcount_total_after_text =个告警
+
+com_zte_ums_ict_framework_ui_sidebar_performMonitor=性能监视
+com_zte_ums_ict_framework_ui_sidebar_resource=资源
+com_zte_ums_ict_framework_ui_sidebar_manualAdd=手动添加
+com_zte_ums_ict_framework_ui_sidebar_gisTopo=GIS拓扑
+
+
+com_zte_ums_ict_framework_ui_sidebar_userDispatch=用户分发
+com_zte_ums_ict_framework_ui_sidebar_roleCollect=角色收集
+
+com_zte_ums_ict_sm_user_op_ok=操作成功。
+com_zte_ums_ict_sm_user_close_button=关闭
+com_zte_ums_ict_sm_user_confirm=确定
+com_zte_ums_ict_sm_user_ok=确定
+com_zte_ums_ict_sm_user_modify_current_password_label=&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;当前用户密码设置
+com_zte_ums_ict_sm_user_modify_current_password=当前用户密码设置
+com_zte_ums_ict_sm_user_old_password=旧密码
+com_zte_ums_ict_sm_user_confirmpassword=确认新密码
+com_zte_ums_ict_sm_user_cancel_button=取消
+com_zte_ums_ict_sm_user_password=新密码
+com_zte_ums_ict_sm_password_confirm_not_consistent = 密码输入不一致
+com_zte_ums_ict_sm_user_inputoldpwd=请输入原密码
+com_zte_ums_ict_sm_user_inputnewpwd=请输入新密码
+com_zte_ums_ict_sm_user_inputnewpwdagain=请再次输入新密码
+com_zte_ums_ict_portal_chgpwd_oldpwdError=原始密码错误
+com_zte_ums_ict_login_inputname=请输入用户名
+com_zte_ums_ict_login_inputpwd=请输入密码
+
+com_zte_ums_ict_framework_ui_blue=中兴蓝3
+com_zte_ums_ict_framework_ui_ztebluelight=中兴蓝1
+com_zte_ums_ict_framework_ui_zteblue=中兴蓝2
+
+com_zte_ums_ict_about_ppu_field_name = 名称
+com_zte_ums_ict_about_ppu_field_version = 版本号
+com_zte_ums_ict_about_ppu_field_desc = 描述
+com_zte_ums_ict_about_ppu_field_time = 更新时间
+com_zte_ums_ict_framework_moudle_about = 关于
+com_zte_ums_ict_framework_about_detail = 详情
+com_zte_ums_ict_framework_about_version=版本号:
+com_zte_ums_ict_portal_login_companyName=2014 © ZTE - 中兴通讯股份有限公司
+
+com_zte_ums_ict_framework_main_page_dashboard=仪表盘
+com_zte_ums_ict_framework_main_page_monitor=监控
+com_zte_ums_ict_framework_main_page_alarm=告警
+com_zte_ums_ict_framework_main_page_performance=性能
+com_zte_ums_ict_framework_main_page_security=安全
+com_zte_ums_ict_framework_main_page_log=日志
+com_zte_ums_ict_framework_main_page_system=系统 \ No newline at end of file
diff --git a/uiframe-iui/src/main/resources/webroot/framework/i18n/web-framework-integration-i18n-en-US.properties b/uiframe-iui/src/main/resources/webroot/framework/i18n/web-framework-integration-i18n-en-US.properties
new file mode 100644
index 00000000..62740ff6
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/i18n/web-framework-integration-i18n-en-US.properties
@@ -0,0 +1,210 @@
+#
+# Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+com_zte_ums_ict_framework_ui_main_title=
+com_zte_ums_ict_framework_ui_skin_select=Theme Color
+com_zte_ums_ict_framework_ui_language=Language
+com_zte_ums_ict_framework_ui_language_zhcn=中文
+com_zte_ums_ict_framework_ui_language_en=English
+com_zte_ums_ict_framework_ui_skin_layout=Layout
+com_zte_ums_ict_framework_ui_layout_fluid=Fluid
+com_zte_ums_ict_framework_ui_layout_boxed=Boxed
+com_zte_ums_ict_framework_ui_page_head=Header
+com_zte_ums_ict_framework_ui_page_fixed=Fixed
+com_zte_ums_ict_framework_ui_page_default=Default
+com_zte_ums_ict_framework_ui_page_head_fixed=Fixed
+com_zte_ums_ict_framework_ui_page_head_default=Default
+com_zte_ums_ict_framework_ui_page_sidebar_fixed=Fixed
+com_zte_ums_ict_framework_ui_page_sidebar_default=Default
+com_zte_ums_ict_framework_ui_side_bar=Sidebar
+com_zte_ums_ict_framework_ui_sidebar_location=Sidebar Position
+com_zte_ums_ict_framework_ui_navbar_direction=Menu Direction
+com_zte_ums_ict_framework_ui_navbar_direction_horizontal=Horizontal
+com_zte_ums_ict_framework_ui_navbar_direction_vertical=Vertical
+com_zte_ums_ict_framework_ui_navbar_direction_fmenu=Category Navigation
+com_zte_ums_ict_framework_ui_keep_top=Top
+com_zte_ums_ict_framework_ui_keep_left=Left
+com_zte_ums_ict_framework_ui_keep_right=Right
+com_zte_ums_ict_framework_ui_page_footer=Footer
+
+com_zte_ums_ict_framework_ui_basic_info=Basic Information
+com_zte_ums_ict_framework_ui_search_value=Search...
+com_zte_ums_ict_framework_ui_sidebar_mainPage=Home
+com_zte_ums_ict_framework_ui_sidebar_topo=Topology
+com_zte_ums_ict_framework_ui_sidebar_resList=Resource Table
+com_zte_ums_ict_framework_ui_sidebar_physicTopo=Physical Topology
+com_zte_ums_ict_framework_ui_sidebar_linkTopo=Relation Topology
+com_zte_ums_ict_framework_ui_sidebar_alarm=Alarm
+com_zte_ums_ict_framework_ui_sidebar_currentAlarm=Active Alarm
+com_zte_ums_ict_framework_ui_sidebar_historyAlarm=History Alarm
+com_zte_ums_ict_framework_ui_sidebar_notice=Notification
+com_zte_ums_ict_framework_ui_sidebar_alarmRule=Alarm Rule
+com_zte_ums_ict_framework_ui_sidebar_queryAlarm=Query Alarm
+com_zte_ums_ict_framework_ui_sidebar_alarmStat=Alarm Statistic
+com_zte_ums_ict_framework_ui_sidebar_alarmSetup=Alarm Setting
+com_zte_ums_ict_framework_ui_sidebar_perform=Performance
+com_zte_ums_ict_framework_ui_sidebar_historySearch=History Query
+com_zte_ums_ict_framework_ui_sidebar_realTimeSearch=Realtime Data Query
+com_zte_ums_ict_framework_ui_sidebar_counterAndIndicator=Counter and Index
+com_zte_ums_ict_framework_ui_sidebar_measureTaskMang=Measurement Task
+com_zte_ums_ict_framework_ui_sidebar_generalTemplateMang=Common Template
+com_zte_ums_ict_framework_ui_sidebar_config=Configuration
+com_zte_ums_ict_framework_ui_sidebar_itDevMang=IT Resource Management
+com_zte_ums_ict_framework_ui_sidebar_ipDevMang=IP Resource Management
+com_zte_ums_ict_framework_ui_sidebar_autoFind=Auto Discovery
+com_zte_ums_ict_framework_ui_sidebar_pollConfig=Poll Configuration
+com_zte_ums_ict_framework_ui_sidebar_security=Security
+com_zte_ums_ict_framework_ui_sidebar_smGuide=security Entry
+com_zte_ums_ict_framework_ui_sidebar_deptMang=Department Management
+com_zte_ums_ict_framework_ui_sidebar_userMang=User Management
+com_zte_ums_ict_framework_ui_sidebar_roleMang=Role Management
+com_zte_ums_ict_framework_ui_sidebar_acccRule=Customize User Account Rule
+com_zte_ums_ict_framework_ui_sidebar_roleAndRoleset=Role & Role Set
+com_zte_ums_ict_framework_ui_sidebar_log=Log
+com_zte_ums_ict_framework_ui_sidebar_operationLog=Operation Log
+com_zte_ums_ict_framework_ui_sidebar_sysLog=System Log
+com_zte_ums_ict_framework_ui_sidebar_securityLog=Security Log
+com_zte_ums_ict_framework_ui_sidebar_sysLogMultiTab=System Log(Multi-tab Example)
+com_zte_ums_ict_framework_ui_sidebar_operationLogMultiTab=Operation Log(Multi-tab Example)
+com_zte_ums_ict_framework_ui_sidebar_system=System
+com_zte_ums_ict_framework_ui_sidebar_dataBackup=Backup Data
+com_zte_ums_ict_framework_ui_sidebar_fileBackup=Backup Files
+com_zte_ums_ict_framework_ui_sidebar_license=License
+com_zte_ums_ict_framework_ui_sidebar_sysState=System Status
+com_zte_ums_ict_framework_ui_sidebar_SystemMang=System Management
+
+com_zte_ums_ict_framework_ui_sidebar_monitor=Monitor
+com_zte_ums_ict_framework_ui_sidebar_alarmByCell=Active Alarm Statistic by NE
+com_zte_ums_ict_framework_ui_sidebar_alarmByCellType=Active Alarm Statistic by NE Type
+com_zte_ums_ict_framework_ui_breadcrumbs_moreOper=More Operation
+com_zte_ums_ict_framework_ui_sidebar_dbStructBack=DB Struct Backup
+com_zte_ums_ict_framework_ui_sidebar_baseDataBack=Base Data Backup
+com_zte_ums_ict_framework_ui_sidebar_logDataBackRestore=Log Data Back&Restore
+com_zte_ums_ict_framework_ui_sidebar_alarmDataBackRestore=Alarm Data Back&Restore
+com_zte_ums_ict_framework_ui_sidebar_dbBack=Database Backup
+com_zte_ums_ict_framework_ui_breadcrumbs_ruleSetup=Rule Setup
+com_zte_ums_ngict_dashboard=Dashboard
+
+com_zte_ums_ict_framework_ui_sidebar_levelRedefineSetup=Severity Regrading Setting
+com_zte_ums_ict_framework_ui_sidebar_disposeSuggestionSetup=Handing Suggestion Setting
+com_zte_ums_ict_framework_ui_sidebar_AlarmBoxSetup=Set Alarm Box
+com_zte_ums_ict_framework_ui_sidebar_measureObjectMang=MO Management
+com_zte_ums_ict_framework_ui_sidebar_thresholdTaskMang=Threshold Task
+com_zte_ums_ict_framework_ui_sidebar_anDevMan=AN Device Management
+com_zte_ums_ict_framework_ui_sidebar_cellMang=Cell management
+com_zte_ums_ict_framework_ui_sidebar_snmpPing= SNMP Ping
+com_zte_ums_ict_framework_ui_sidebar_telnet=Telnet
+com_zte_ums_ict_framework_ui_sidebar_workOder=Work Order
+com_zte_ums_ict_framework_ui_sidebar_resMang=Resource Management
+com_zte_ums_ict_framework_ui_sidebar_SecurityMang=Security Management
+com_zte_ums_ict_framework_ui_sidebar_userLockStatus=Show Locked Users
+com_zte_ums_ict_framework_ui_sidebar_loginUserMang=Login User Management
+com_zte_ums_ict_framework_ui_sidebar_userBlackList=User Blacklist
+com_zte_ums_ict_framework_ui_sidebar_operationSet=Operation Set Management
+com_zte_ums_ict_framework_ui_sidebar_LogMang=Log Management
+com_zte_ums_ict_framework_ui_sidebar_backRestore=Backup and Restore
+com_zte_ums_ict_framework_ui_sidebar_dbStructBack=Backup Whole DB Structure
+com_zte_ums_ict_framework_ui_sidebar_baseDataBack=Backup Basic Data
+com_zte_ums_ict_framework_ui_sidebar_logDataBackRestore=Log Data Backup and Restore
+com_zte_ums_ict_framework_ui_sidebar_alarmDataBackRestore=Alarm Data Backup and Restore
+com_zte_ums_ict_framework_ui_loading=loading......
+com_zte_ums_ict_framework_ui_searching=searching......
+com_zte_ums_ict_framework_ui_clickTooFast=You click on too fast, please wait for a while to click the menu, thank you!
+com_zte_ums_ict_framework_ui_loadmenuerror=loading menu failed.
+com_zte_ums_ict_framework_ui_confirmlogout=Do you confirm to logout?
+com_zte_ums_aos_framework_ui_heartbeat_fail=The session is invalidated.
+com_zte_ums_ict_framework_ui_fixedsidedefaultheaderError=Default Header with Fixed Sidebar option is not supported. Proceed with Fixed Header with Fixed Sidebar.
+com_zte_ums_ict_framework_ui_fixedsiderightpositionError=Fixed Sidebar with right position is not supported. Set Sidebar as default.
+com_zte_ums_ict_framework_ui_loadchgpwdpageError=loading change password page failed.
+com_zte_ums_ict_framework_ui_searchmessage=The {0} keyword search results as follows:
+com_zte_ums_ict_framework_ui_month=January,February,March,April,May,June,July,August,September,October,November,December
+com_zte_ums_ict_framework_ui_customdate=Custom date
+com_zte_ums_ict_framework_ui_from=From
+com_zte_ums_ict_framework_ui_to=To
+com_zte_ums_ict_framework_ui_apply=Apply
+com_zte_ums_ict_framework_ui_today=Today
+com_zte_ums_ict_framework_ui_yestoday=Yestoday
+com_zte_ums_ict_framework_ui_lastdays=Last {0} days
+com_zte_ums_ict_framework_ui_thismonth=This month
+com_zte_ums_ict_framework_ui_lastmonth=Last month
+
+com_zte_ums_ict_framework_ui_group_about=About
+com_zte_ums_ict_framework_ui_group_logout=Logout
+com_zte_ums_ict_framework_ui_changePwd=Change Password
+com_zte_ums_ict_framework_ui_group_fullscreen=Full Screen
+com_zte_ums_ict_framework_ui_group_exitfullscreen=Exit Full Screen
+com_zte_ums_ict_framework_moudle_help = Help
+com_zte_ums_ict_framework_moudle_menutoggler=More
+
+
+com_zte_ums_ict_alarmcount_total_label = Total:{0}
+com_zte_ums_ict_alarmcount_critical_label = Critical:{0}
+com_zte_ums_ict_alarmcount_critical_text = Critical Alarm
+com_zte_ums_ict_alarmcount_major_label = Major:{0}
+com_zte_ums_ict_alarmcount_major_text = Major Alarm
+com_zte_ums_ict_alarmcount_minor_label = Minor:{0}
+com_zte_ums_ict_alarmcount_minor_text = Minor Alarm
+com_zte_ums_ict_alarmcount_warning_label = Warning:{0}
+com_zte_ums_ict_alarmcount_warning_text = Warning Alarm
+com_zte_ums_ict_alarmcount_none_label=No alarm Now!
+com_zte_ums_ict_alarmcount_total_after_text = ,Now!"
+com_zte_ums_ict_alarmcount_total_before_text =Total Alarm Number:
+
+com_zte_ums_ict_framework_ui_sidebar_performMonitor=Perform Monitor
+com_zte_ums_ict_framework_ui_sidebar_resource=Resource
+com_zte_ums_ict_framework_ui_sidebar_manualAdd=Manual Add
+com_zte_ums_ict_framework_ui_sidebar_gisTopo=GIS Topo
+
+
+com_zte_ums_ict_framework_ui_sidebar_userDispatch=User Dispatch
+com_zte_ums_ict_framework_ui_sidebar_roleCollect=Role Collection
+
+com_zte_ums_ict_sm_user_op_ok=Operation succeeded.
+com_zte_ums_ict_sm_user_close_button=Close
+com_zte_ums_ict_sm_user_confirm=OK
+com_zte_ums_ict_sm_user_ok=OK
+com_zte_ums_ict_sm_user_modify_current_password_label=&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;User Password Set
+com_zte_ums_ict_sm_user_modify_current_password=User Password Set
+com_zte_ums_ict_sm_user_old_password=Old Password
+com_zte_ums_ict_sm_user_confirmpassword=Confirm New Password
+com_zte_ums_ict_sm_user_cancel_button=Cancel
+com_zte_ums_ict_sm_user_password=New Password
+com_zte_ums_ict_sm_password_confirm_not_consistent = The New Password and the Confirm New Password are inconsistent.
+com_zte_ums_ict_sm_user_inputoldpwd=Please input old password
+com_zte_ums_ict_sm_user_inputnewpwd=Please input new password
+com_zte_ums_ict_sm_user_inputnewpwdagain=Please input new password again
+com_zte_ums_ict_portal_chgpwd_oldpwdError=Old password error
+com_zte_ums_ict_login_inputname=Please input user name
+com_zte_ums_ict_login_inputpwd=Please input user password
+
+com_zte_ums_eco_service=Service
+
+com_zte_ums_ict_framework_ui_ztebluelight=ZTE Blue Light
+com_zte_ums_ict_framework_ui_zteblue=ZTE Blue
+com_zte_ums_ict_framework_ui_blue=Blue
+
+com_zte_ums_ict_about_ppu_field_name =Name
+com_zte_ums_ict_about_ppu_field_version = Version
+com_zte_ums_ict_about_ppu_field_desc = Description
+com_zte_ums_ict_about_ppu_field_time = Update Time
+com_zte_ums_ict_framework_moudle_about = About
+com_zte_ums_ict_framework_about_detail = Info
+com_zte_ums_ict_framework_about_version=Version:
+com_zte_ums_ict_portal_login_companyName=2015 @; ZTE - Corporation
+
+com_zte_ums_ict_framework_ui_main_title=
+com_zte_ums_ict_framework_ui_page_title=NFV Mano System
+com_zte_ums_ict_framework_ui_page_title_1=NFV Mano System
+com_zte_ums_ict_framework_ui_page_title_2=NFV Mano System \ No newline at end of file
diff --git a/uiframe-iui/src/main/resources/webroot/framework/i18n/web-framework-integration-i18n-zh-CN.properties b/uiframe-iui/src/main/resources/webroot/framework/i18n/web-framework-integration-i18n-zh-CN.properties
new file mode 100644
index 00000000..77330593
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/i18n/web-framework-integration-i18n-zh-CN.properties
@@ -0,0 +1,210 @@
+#
+# Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+com_zte_ums_ict_framework_ui_main_title=
+com_zte_ums_ict_framework_ui_skin_select=皮肤选择
+com_zte_ums_ict_framework_ui_language=语言
+com_zte_ums_ict_framework_ui_language_zhcn=中文
+com_zte_ums_ict_framework_ui_language_en=English
+com_zte_ums_ict_framework_ui_skin_layout=布局
+com_zte_ums_ict_framework_ui_layout_fluid=流动布局
+com_zte_ums_ict_framework_ui_layout_boxed=盒子布局
+com_zte_ums_ict_framework_ui_page_head=页头
+com_zte_ums_ict_framework_ui_page_fixed=固定
+com_zte_ums_ict_framework_ui_page_default=默认
+com_zte_ums_ict_framework_ui_page_head_fixed=固定
+com_zte_ums_ict_framework_ui_page_head_default=默认
+com_zte_ums_ict_framework_ui_page_sidebar_fixed=固定
+com_zte_ums_ict_framework_ui_page_sidebar_default=默认
+com_zte_ums_ict_framework_ui_side_bar=边栏
+com_zte_ums_ict_framework_ui_sidebar_location=边栏位置
+com_zte_ums_ict_framework_ui_navbar_direction=菜单方向
+com_zte_ums_ict_framework_ui_navbar_direction_horizontal=横向
+com_zte_ums_ict_framework_ui_navbar_direction_vertical=纵向
+com_zte_ums_ict_framework_ui_navbar_direction_fmenu=分类导航
+com_zte_ums_ict_framework_ui_keep_top=靠上
+com_zte_ums_ict_framework_ui_keep_left=靠左
+com_zte_ums_ict_framework_ui_keep_right=靠右
+com_zte_ums_ict_framework_ui_page_footer=页脚
+
+com_zte_ums_ict_framework_ui_basic_info=基本信息
+com_zte_ums_ict_framework_ui_search_value=搜索...
+com_zte_ums_ict_framework_ui_sidebar_mainPage=主页
+com_zte_ums_ict_framework_ui_sidebar_topo=拓扑
+com_zte_ums_ict_framework_ui_sidebar_resList=资源列表
+com_zte_ums_ict_framework_ui_sidebar_physicTopo=物理拓扑
+com_zte_ums_ict_framework_ui_sidebar_linkTopo=链路拓扑
+com_zte_ums_ict_framework_ui_sidebar_alarm=告警
+com_zte_ums_ict_framework_ui_sidebar_alarm_summary=告警概览
+com_zte_ums_ict_framework_ui_sidebar_currentAlarm=当前告警
+com_zte_ums_ict_framework_ui_sidebar_historyAlarm=历史告警
+com_zte_ums_ict_framework_ui_sidebar_notice=通知
+com_zte_ums_ict_framework_ui_sidebar_alarmRule=告警规则
+com_zte_ums_ict_framework_ui_sidebar_queryAlarm=告警查询
+com_zte_ums_ict_framework_ui_sidebar_alarmStat=告警统计
+com_zte_ums_ict_framework_ui_sidebar_alarmSetup=告警设置
+com_zte_ums_ict_framework_ui_sidebar_perform=性能
+com_zte_ums_ict_framework_ui_sidebar_historySearch=历史查询
+com_zte_ums_ict_framework_ui_sidebar_realTimeSearch=实时查询
+com_zte_ums_ict_framework_ui_sidebar_counterAndIndicator=计数器与指标
+com_zte_ums_ict_framework_ui_sidebar_measureTaskMang=测量任务管理
+com_zte_ums_ict_framework_ui_sidebar_generalTemplateMang=通用模板管理
+com_zte_ums_ict_framework_ui_sidebar_config=配置
+com_zte_ums_ict_framework_ui_sidebar_itDevMang=IT设备管理
+com_zte_ums_ict_framework_ui_sidebar_ipDevMang=IP设备管理
+com_zte_ums_ict_framework_ui_sidebar_autoFind=自动发现
+com_zte_ums_ict_framework_ui_sidebar_pollConfig=轮询设置
+com_zte_ums_ict_framework_ui_sidebar_security=安全
+com_zte_ums_ict_framework_ui_sidebar_smGuide=安全入门
+com_zte_ums_ict_framework_ui_sidebar_deptMang=部门管理
+com_zte_ums_ict_framework_ui_sidebar_userMang=用户管理
+com_zte_ums_ict_framework_ui_sidebar_acccRule=帐户规则
+com_zte_ums_ict_framework_ui_sidebar_roleMang=角色管理
+com_zte_ums_ict_framework_ui_sidebar_roleAndRoleset=角色和角色集
+com_zte_ums_ict_framework_ui_sidebar_log=日志
+com_zte_ums_ict_framework_ui_sidebar_operationLog=操作日志
+com_zte_ums_ict_framework_ui_sidebar_sysLog=系统日志
+com_zte_ums_ict_framework_ui_sidebar_securityLog=安全日志
+com_zte_ums_ict_framework_ui_sidebar_sysLogMultiTab=系统日志(多TAB示例)
+com_zte_ums_ict_framework_ui_sidebar_operationLogMultiTab=操作日志(多TAB示例)
+com_zte_ums_ict_framework_ui_sidebar_system=系统
+com_zte_ums_ict_framework_ui_sidebar_dataBackup=数据备份
+com_zte_ums_ict_framework_ui_sidebar_fileBackup=文件备份
+com_zte_ums_ict_framework_ui_sidebar_license=许可证
+com_zte_ums_ict_framework_ui_sidebar_sysState=系统状态
+com_zte_ums_ict_framework_ui_sidebar_SystemMang=系统管理
+
+com_zte_ums_ict_framework_ui_sidebar_monitor=监控
+com_zte_ums_ict_framework_ui_sidebar_alarmByCell=按网元统计告警
+com_zte_ums_ict_framework_ui_sidebar_alarmByCellType=按网元类型统计告警
+com_zte_ums_ict_framework_ui_breadcrumbs_moreOper=更多操作
+com_zte_ums_ict_framework_ui_sidebar_dbStructBack=整库结构备份
+com_zte_ums_ict_framework_ui_sidebar_baseDataBack=基础数据备份
+com_zte_ums_ict_framework_ui_sidebar_logDataBackRestore=日志数据备份恢复
+com_zte_ums_ict_framework_ui_sidebar_alarmDataBackRestore=告警数据备份恢复
+com_zte_ums_ict_framework_ui_sidebar_dbBack=数据库备份
+com_zte_ums_ngict_dashboard=仪表盘
+com_zte_ums_ict_framework_ui_breadcrumbs_ruleSetup=规则设置
+com_zte_ums_ict_framework_ui_sidebar_levelRedefineSetup=级别重定义设置
+com_zte_ums_ict_framework_ui_sidebar_disposeSuggestionSetup=处理建议设置
+com_zte_ums_ict_framework_ui_sidebar_AlarmBoxSetup=告警箱设置
+com_zte_ums_ict_framework_ui_sidebar_measureObjectMang=测量对象管理
+
+com_zte_ums_ict_framework_ui_sidebar_thresholdTaskMang=门限任务管理
+com_zte_ums_ict_framework_ui_sidebar_anDevMan=AN产品管理
+com_zte_ums_ict_framework_ui_sidebar_cellMang=网元管理
+com_zte_ums_ict_framework_ui_sidebar_snmpPing= SNMP Ping
+com_zte_ums_ict_framework_ui_sidebar_telnet=Telnet
+com_zte_ums_ict_framework_ui_sidebar_workOder=工单管理
+com_zte_ums_ict_framework_ui_sidebar_resMang=资源管理
+com_zte_ums_ict_framework_ui_sidebar_SecurityMang=安全管理
+com_zte_ums_ict_framework_ui_sidebar_operationSet=操作集管理
+com_zte_ums_ict_framework_ui_sidebar_userLockStatus=用户锁定情况
+com_zte_ums_ict_framework_ui_sidebar_loginUserMang=登录用户管理
+com_zte_ums_ict_framework_ui_sidebar_userBlackList=用户黑名单
+com_zte_ums_ict_framework_ui_sidebar_operationSet=操作集
+com_zte_ums_ict_framework_ui_sidebar_LogMang=日志管理
+com_zte_ums_ict_framework_ui_sidebar_backRestore=备份恢复
+com_zte_ums_ict_framework_ui_sidebar_dbStructBack=整库结构备份
+com_zte_ums_ict_framework_ui_sidebar_baseDataBack=基础数据备份
+com_zte_ums_ict_framework_ui_sidebar_logDataBackRestore=日志数据备份恢复
+com_zte_ums_ict_framework_ui_sidebar_alarmDataBackRestore=告警数据备份恢复
+com_zte_ums_ict_framework_ui_loading=加载中......
+com_zte_ums_ict_framework_ui_searching=搜索中......
+com_zte_ums_ict_framework_ui_clickTooFast=您点击的太快了,请稍候重新点击下该菜单,谢谢
+com_zte_ums_ict_framework_ui_loadmenuerror=菜单加载失败
+com_zte_ums_ict_framework_ui_confirmlogout=你确认要注销吗?
+com_zte_ums_aos_framework_ui_heartbeat_fail=会话已经失效。
+com_zte_ums_ict_framework_ui_fixedsidedefaultheaderError=页头不支持固定边栏,先固定页头才能固定边栏.
+com_zte_ums_ict_framework_ui_fixedsiderightpositionError=固定边栏不支持边栏靠右,先设置边栏为默认.
+com_zte_ums_ict_framework_ui_loadchgpwdpageError=加载修改密码页面失败
+com_zte_ums_ict_framework_ui_searchmessage=关键字{0}的搜索结果如下:
+com_zte_ums_ict_framework_ui_month=一月,二月,三月,四月,五月,六月,七月,八月,九月,十月,十一月,十二月
+com_zte_ums_ict_framework_ui_customdate=自定义日期
+com_zte_ums_ict_framework_ui_from=从
+com_zte_ums_ict_framework_ui_to=到
+com_zte_ums_ict_framework_ui_apply=应用
+com_zte_ums_ict_framework_ui_today=今天
+com_zte_ums_ict_framework_ui_yestoday=昨天
+com_zte_ums_ict_framework_ui_lastdays=最近{0}天
+com_zte_ums_ict_framework_ui_thismonth=本月
+com_zte_ums_ict_framework_ui_lastmonth=上个月
+com_zte_ums_ict_framework_ui_group_about=关于
+
+com_zte_ums_ict_framework_ui_group_logout=注销
+com_zte_ums_ict_framework_ui_changePwd=修改密码
+com_zte_ums_ict_framework_ui_group_fullscreen=全屏
+com_zte_ums_ict_framework_ui_group_exitfullscreen=退出全屏
+com_zte_ums_ict_framework_moudle_help = 帮助
+com_zte_ums_ict_framework_moudle_menutoggler=更多...
+
+com_zte_ums_ict_alarmcount_total_label = 总计:{0}
+com_zte_ums_ict_alarmcount_critical_label = 严重:{0}
+com_zte_ums_ict_alarmcount_critical_text = 严重告警
+com_zte_ums_ict_alarmcount_major_label = 主要:{0}
+com_zte_ums_ict_alarmcount_major_text = 主要告警
+com_zte_ums_ict_alarmcount_minor_label = 次要:{0}
+com_zte_ums_ict_alarmcount_minor_text = 次要告警
+com_zte_ums_ict_alarmcount_warning_label = 警告:{0}
+com_zte_ums_ict_alarmcount_warning_text = 警告告警
+com_zte_ums_ict_alarmcount_none_label=当前系统无告警
+com_zte_ums_ict_alarmcount_total_before_text =当前系统共有
+com_zte_ums_ict_alarmcount_total_after_text =个告警
+
+com_zte_ums_ict_framework_ui_sidebar_performMonitor=性能监视
+com_zte_ums_ict_framework_ui_sidebar_resource=资源
+com_zte_ums_ict_framework_ui_sidebar_manualAdd=手动添加
+com_zte_ums_ict_framework_ui_sidebar_gisTopo=GIS拓扑
+
+
+com_zte_ums_ict_framework_ui_sidebar_userDispatch=用户分发
+com_zte_ums_ict_framework_ui_sidebar_roleCollect=角色收集
+
+com_zte_ums_ict_sm_user_op_ok=操作成功。
+com_zte_ums_ict_sm_user_close_button=关闭
+com_zte_ums_ict_sm_user_confirm=确定
+com_zte_ums_ict_sm_user_ok=确定
+com_zte_ums_ict_sm_user_modify_current_password_label=&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;当前用户密码设置
+com_zte_ums_ict_sm_user_modify_current_password=当前用户密码设置
+com_zte_ums_ict_sm_user_old_password=旧密码
+com_zte_ums_ict_sm_user_confirmpassword=确认新密码
+com_zte_ums_ict_sm_user_cancel_button=取消
+com_zte_ums_ict_sm_user_password=新密码
+com_zte_ums_ict_sm_password_confirm_not_consistent = 密码输入不一致
+com_zte_ums_ict_sm_user_inputoldpwd=请输入原密码
+com_zte_ums_ict_sm_user_inputnewpwd=请输入新密码
+com_zte_ums_ict_sm_user_inputnewpwdagain=请再次输入新密码
+com_zte_ums_ict_portal_chgpwd_oldpwdError=原始密码错误
+com_zte_ums_ict_login_inputname=请输入用户名
+com_zte_ums_ict_login_inputpwd=请输入密码
+
+com_zte_ums_eco_service=业务
+
+com_zte_ums_ict_framework_ui_blue=中兴蓝3
+com_zte_ums_ict_framework_ui_ztebluelight=中兴蓝1
+com_zte_ums_ict_framework_ui_zteblue=中兴蓝2
+
+com_zte_ums_ict_about_ppu_field_name = 名称
+com_zte_ums_ict_about_ppu_field_version = 版本号
+com_zte_ums_ict_about_ppu_field_desc = 描述
+com_zte_ums_ict_about_ppu_field_time = 更新时间
+com_zte_ums_ict_framework_moudle_about = 关于
+com_zte_ums_ict_framework_about_detail = 详情
+com_zte_ums_ict_framework_about_version=版本号:
+com_zte_ums_ict_portal_login_companyName=2015 © ZTE - 中兴通讯股份有限公司
+
+com_zte_ums_ict_framework_ui_main_title=
+com_zte_ums_ict_framework_ui_page_title=虚拟化管理编排系统
+com_zte_ums_ict_framework_ui_page_title_2=虚拟化管理编排系统
diff --git a/uiframe-iui/src/main/resources/webroot/framework/i18n/web-portal-login-i18n-en-US.properties b/uiframe-iui/src/main/resources/webroot/framework/i18n/web-portal-login-i18n-en-US.properties
new file mode 100644
index 00000000..46cb0d97
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/i18n/web-portal-login-i18n-en-US.properties
@@ -0,0 +1,49 @@
+#
+# Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+com_zte_ums_ict_portal_login_welcome=Welcome
+com_zte_ums_ict_portal_login_userPassword=User Name or Password Error
+inputUserName=Please Input User Name
+inputPassword=Please Input Password
+com_zte_ums_ict_portal_login_rememberMe=Remember Me
+com_zte_ums_ict_portal_login_companyName=2014 @; ZTE - Corporation
+com_zte_ums_ict_login_inputname=Please Input User Name
+com_zte_ums_ict_login_inputpwd=Please Input Password
+com_zte_ums_aos_portal_login_username=Username:
+com_zte_ums_aos_portal_login_password=Password:
+com_zte_ums_aos_portal_login_validateCode=Validate Code:&nbsp;
+com_zte_ums_aos_portal_login_login=Login
+com_zte_ums_aos_portal_login_reset=Reset
+com_zte_ums_aos_portal_login_notice=To make your experience more smoothly and better, please download the lastest browser(Windows 32bit):
+com_zte_ums_aos_portal_login_group_localdownload=Local download
+com_zte_ums_aos_portal_login_group_officialdownload=Official download
+com_zte_ums_aos_portal_ui_changePwd=Change Password
+com_zte_ums_aos_sm_user_op_ok=Operation succeeded.
+com_zte_ums_aos_sm_user_close_button=Close
+com_zte_ums_aos_sm_user_confirm=Confirm
+com_zte_ums_aos_login_warning_title = Warning
+com_zte_ums_aos_sm_user_modify_current_password_label=&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;User Password Set
+com_zte_ums_aos_sm_user_modify_current_password=User Password Set
+com_zte_ums_aos_sm_user_old_password=Old Password
+com_zte_ums_aos_sm_user_confirmpassword=Confirm Password
+com_zte_ums_aos_sm_user_cancel_button=Cancel
+com_zte_ums_aos_sm_user_password=New Password
+com_zte_ums_aos_sm_password_confirm_not_consistent = password and confirm password is not the same.
+com_zte_ums_aos_portal_login_group_download = Download
+com_zte_ums_aos_portal_login_notice_about_chromeFrame=Please download and install the following browser.Otherwise, some functions may become exceptional.
+com_zte_ums_aos_portal_login_recommend_notice=Recommend the use of IE8, IE9, IE10, Chrome27, Firefox20.1 browser, recommend the display resolution: 1280 * 800.
+com_zte_ums_ict_portal_login_serv_error=Login Error
+com_zte_ums_ict_portal_login_title=NFV Mano System \ No newline at end of file
diff --git a/uiframe-iui/src/main/resources/webroot/framework/i18n/web-portal-login-i18n-zh-CN.properties b/uiframe-iui/src/main/resources/webroot/framework/i18n/web-portal-login-i18n-zh-CN.properties
new file mode 100644
index 00000000..df36fdc3
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/i18n/web-portal-login-i18n-zh-CN.properties
@@ -0,0 +1,49 @@
+#
+# Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+com_zte_ums_ict_portal_login_welcome=欢迎登录
+com_zte_ums_ict_portal_login_userPassword=用户名和密码错误
+inputUserName=请输入用户名
+inputPassword=请输入密码
+com_zte_ums_ict_portal_login_rememberMe=记住我
+com_zte_ums_ict_portal_login_companyName=2014 © ZTE - 中兴通讯股份有限公司
+com_zte_ums_ict_login_inputname=请输入用户名
+com_zte_ums_ict_login_inputpwd=请输入密码
+com_zte_ums_aos_portal_login_username=用户名:
+com_zte_ums_aos_portal_login_password=密 码:
+com_zte_ums_aos_portal_login_validateCode=验证码:
+com_zte_ums_aos_portal_login_login=登录
+com_zte_ums_aos_portal_login_reset=重置
+com_zte_ums_aos_portal_login_notice=为了有更好更流畅的操作体验,请更新到最新的浏览器,请下载(Windows 32位):
+com_zte_ums_aos_portal_login_group_localdownload=本地下载
+com_zte_ums_aos_portal_login_group_officialdownload=官方下载
+com_zte_ums_aos_portal_ui_changePwd=修改密码
+com_zte_ums_aos_sm_user_op_ok=操作成功。
+com_zte_ums_aos_sm_user_close_button=关闭
+com_zte_ums_aos_sm_user_confirm=确定
+com_zte_ums_aos_login_warning_title = 警告
+com_zte_ums_aos_sm_user_modify_current_password_label=&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;当前用户密码设置
+com_zte_ums_aos_sm_user_modify_current_password=当前用户密码设置
+com_zte_ums_aos_sm_user_old_password=旧密码
+com_zte_ums_aos_sm_user_confirmpassword=确认密码
+com_zte_ums_aos_sm_user_cancel_button=取消
+com_zte_ums_aos_sm_user_password=新密码
+com_zte_ums_aos_sm_password_confirm_not_consistent = 密码输入不一致。
+com_zte_ums_aos_portal_login_group_download = 下载
+com_zte_ums_aos_portal_login_notice_about_chromeFrame=为了不影响系统的功能正常使用,请连网安装并使用下面的浏览器:
+com_zte_ums_aos_portal_login_recommend_notice=推荐使用IE8及以上、Chrome27及以上、Firefox20.1及以上版本浏览器,推荐显示分辨率:1280×800。
+com_zte_ums_ict_portal_login_serv_error=登录异常
+com_zte_ums_ict_portal_login_title=虚拟化管理编排系统
diff --git a/uiframe-iui/src/main/resources/webroot/framework/i18n/web-portal-login-integration-i18n-en-US.properties b/uiframe-iui/src/main/resources/webroot/framework/i18n/web-portal-login-integration-i18n-en-US.properties
new file mode 100644
index 00000000..594422b7
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/i18n/web-portal-login-integration-i18n-en-US.properties
@@ -0,0 +1,50 @@
+#
+# Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+
+com_zte_ums_ict_portal_login_title=ICT Management System
+com_zte_ums_ict_portal_login_welcome=Welcome
+com_zte_ums_ict_portal_login_userPassword=User Name or Password Error
+inputUserName=Please Input User Name
+inputPassword=Please Input Password
+com_zte_ums_ict_portal_login_rememberMe=Remember Me
+com_zte_ums_ict_portal_login_companyName=2014 @; ZTE - Corporation
+com_zte_ums_ict_login_inputname=Please Input User Name
+com_zte_ums_ict_login_inputpwd=Please Input Password
+com_zte_ums_aos_portal_login_username=Username:
+com_zte_ums_aos_portal_login_password=Password:
+com_zte_ums_aos_portal_login_validateCode=Validate Code:&nbsp;
+com_zte_ums_aos_portal_login_login=Login
+com_zte_ums_aos_portal_login_reset=Reset
+com_zte_ums_aos_portal_login_notice=To make your experience more smoothly and better, please download the lastest browser(Windows 32bit):
+com_zte_ums_aos_portal_login_group_localdownload=Local download
+com_zte_ums_aos_portal_login_group_officialdownload=Official download
+com_zte_ums_aos_portal_ui_changePwd=Change Password
+com_zte_ums_aos_sm_user_op_ok=Operation succeeded.
+com_zte_ums_aos_sm_user_close_button=Close
+com_zte_ums_aos_sm_user_confirm=Confirm
+com_zte_ums_aos_login_warning_title = Warning
+com_zte_ums_aos_sm_user_modify_current_password_label=&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;User Password Set
+com_zte_ums_aos_sm_user_modify_current_password=User Password Set
+com_zte_ums_aos_sm_user_old_password=Old Password
+com_zte_ums_aos_sm_user_confirmpassword=Confirm Password
+com_zte_ums_aos_sm_user_cancel_button=Cancel
+com_zte_ums_aos_sm_user_password=New Password
+com_zte_ums_aos_sm_password_confirm_not_consistent = password and confirm password is not the same.
+com_zte_ums_aos_portal_login_group_download = Download
+com_zte_ums_aos_portal_login_notice_about_chromeFrame=Please download and install the following browser.Otherwise, some functions may become exceptional.
+com_zte_ums_aos_portal_login_recommend_notice=Recommend the use of IE8, IE9, IE10, Chrome27, Firefox20.1 browser, recommend the display resolution: 1280 * 800.
+com_zte_ums_ict_portal_login_serv_error=Login Error
diff --git a/uiframe-iui/src/main/resources/webroot/framework/i18n/web-portal-login-integration-i18n-zh-CN.properties b/uiframe-iui/src/main/resources/webroot/framework/i18n/web-portal-login-integration-i18n-zh-CN.properties
new file mode 100644
index 00000000..f276ceae
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/i18n/web-portal-login-integration-i18n-zh-CN.properties
@@ -0,0 +1,50 @@
+#
+# Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+
+com_zte_ums_ict_portal_login_title=ICT管理系统
+com_zte_ums_ict_portal_login_welcome=欢迎登录
+com_zte_ums_ict_portal_login_userPassword=用户名和密码错误
+inputUserName=请输入用户名
+inputPassword=请输入密码
+com_zte_ums_ict_portal_login_rememberMe=记住我
+com_zte_ums_ict_portal_login_companyName=2014 © ZTE - 中兴通讯股份有限公司
+com_zte_ums_ict_login_inputname=请输入用户名
+com_zte_ums_ict_login_inputpwd=请输入密码
+com_zte_ums_aos_portal_login_username=用户名:
+com_zte_ums_aos_portal_login_password=密 码:
+com_zte_ums_aos_portal_login_validateCode=验证码:
+com_zte_ums_aos_portal_login_login=登录
+com_zte_ums_aos_portal_login_reset=重置
+com_zte_ums_aos_portal_login_notice=为了有更好更流畅的操作体验,请更新到最新的浏览器,请下载(Windows 32位):
+com_zte_ums_aos_portal_login_group_localdownload=本地下载
+com_zte_ums_aos_portal_login_group_officialdownload=官方下载
+com_zte_ums_aos_portal_ui_changePwd=修改密码
+com_zte_ums_aos_sm_user_op_ok=操作成功。
+com_zte_ums_aos_sm_user_close_button=关闭
+com_zte_ums_aos_sm_user_confirm=确定
+com_zte_ums_aos_login_warning_title = 警告
+com_zte_ums_aos_sm_user_modify_current_password_label=&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;当前用户密码设置
+com_zte_ums_aos_sm_user_modify_current_password=当前用户密码设置
+com_zte_ums_aos_sm_user_old_password=旧密码
+com_zte_ums_aos_sm_user_confirmpassword=确认密码
+com_zte_ums_aos_sm_user_cancel_button=取消
+com_zte_ums_aos_sm_user_password=新密码
+com_zte_ums_aos_sm_password_confirm_not_consistent = 密码输入不一致。
+com_zte_ums_aos_portal_login_group_download = 下载
+com_zte_ums_aos_portal_login_notice_about_chromeFrame=为了不影响系统的功能正常使用,请连网安装并使用下面的浏览器:
+com_zte_ums_aos_portal_login_recommend_notice=推荐使用IE8及以上、Chrome27及以上、Firefox20.1及以上版本浏览器,推荐显示分辨率:1280×800。
+com_zte_ums_ict_portal_login_serv_error=登录异常
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/about/about-bg-dark.png b/uiframe-iui/src/main/resources/webroot/framework/img/about/about-bg-dark.png
new file mode 100644
index 00000000..e6e984ed
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/about/about-bg-dark.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/about/about-bg-light.png b/uiframe-iui/src/main/resources/webroot/framework/img/about/about-bg-light.png
new file mode 100644
index 00000000..601beacc
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/about/about-bg-light.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/about/about-netnumen.png b/uiframe-iui/src/main/resources/webroot/framework/img/about/about-netnumen.png
new file mode 100644
index 00000000..2bc029bd
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/about/about-netnumen.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/accordion-plusminus.png b/uiframe-iui/src/main/resources/webroot/framework/img/accordion-plusminus.png
new file mode 100644
index 00000000..1fef1782
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/accordion-plusminus.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ajax-loading.gif b/uiframe-iui/src/main/resources/webroot/framework/img/ajax-loading.gif
new file mode 100644
index 00000000..115f8984
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ajax-loading.gif
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ajax-modal-loading.gif b/uiframe-iui/src/main/resources/webroot/framework/img/ajax-modal-loading.gif
new file mode 100644
index 00000000..696ea341
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ajax-modal-loading.gif
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/arrow-down.png b/uiframe-iui/src/main/resources/webroot/framework/img/arrow-down.png
new file mode 100644
index 00000000..c503da9b
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/arrow-down.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/avatar.png b/uiframe-iui/src/main/resources/webroot/framework/img/avatar.png
new file mode 100644
index 00000000..2a14b35d
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/avatar.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/bg-opacity.png b/uiframe-iui/src/main/resources/webroot/framework/img/bg-opacity.png
new file mode 100644
index 00000000..1be54cb0
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/bg-opacity.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/bg-white-lock.png b/uiframe-iui/src/main/resources/webroot/framework/img/bg-white-lock.png
new file mode 100644
index 00000000..159e1754
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/bg-white-lock.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/bg-white.png b/uiframe-iui/src/main/resources/webroot/framework/img/bg-white.png
new file mode 100644
index 00000000..159e1754
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/bg-white.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/checkbox-checked-disabled.png b/uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/checkbox-checked-disabled.png
new file mode 100644
index 00000000..0ba905f0
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/checkbox-checked-disabled.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/checkbox-checked.png b/uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/checkbox-checked.png
new file mode 100644
index 00000000..2ddfb0a0
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/checkbox-checked.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/checkbox-disabled.png b/uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/checkbox-disabled.png
new file mode 100644
index 00000000..a53c89c2
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/checkbox-disabled.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/checkbox-hover.png b/uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/checkbox-hover.png
new file mode 100644
index 00000000..c2821132
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/checkbox-hover.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/checkbox-init.png b/uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/checkbox-init.png
new file mode 100644
index 00000000..e352cc51
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/checkbox-init.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/radio-checked-disabled.png b/uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/radio-checked-disabled.png
new file mode 100644
index 00000000..16eecc57
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/radio-checked-disabled.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/radio-checked.png b/uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/radio-checked.png
new file mode 100644
index 00000000..6c60d128
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/radio-checked.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/radio-disabled.png b/uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/radio-disabled.png
new file mode 100644
index 00000000..c27289db
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/radio-disabled.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/radio-hover.png b/uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/radio-hover.png
new file mode 100644
index 00000000..03138ca6
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/radio-hover.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/radio-init.png b/uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/radio-init.png
new file mode 100644
index 00000000..b428c58f
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/checkbox-radio/radio-init.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/chrome_icon.png b/uiframe-iui/src/main/resources/webroot/framework/img/chrome_icon.png
new file mode 100644
index 00000000..f71bf971
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/chrome_icon.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/datatable-row-openclose.png b/uiframe-iui/src/main/resources/webroot/framework/img/datatable-row-openclose.png
new file mode 100644
index 00000000..8ec9e976
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/datatable-row-openclose.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/empty.png b/uiframe-iui/src/main/resources/webroot/framework/img/empty.png
new file mode 100644
index 00000000..a1d202bc
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/empty.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/firefox_icon.png b/uiframe-iui/src/main/resources/webroot/framework/img/firefox_icon.png
new file mode 100644
index 00000000..81470065
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/firefox_icon.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/hor-menu-search-close-white.png b/uiframe-iui/src/main/resources/webroot/framework/img/hor-menu-search-close-white.png
new file mode 100644
index 00000000..d5bebfc9
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/hor-menu-search-close-white.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/hor-menu-search-close.png b/uiframe-iui/src/main/resources/webroot/framework/img/hor-menu-search-close.png
new file mode 100644
index 00000000..6dae950c
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/hor-menu-search-close.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/hor-menu-search.jpg b/uiframe-iui/src/main/resources/webroot/framework/img/hor-menu-search.jpg
new file mode 100644
index 00000000..63b31802
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/hor-menu-search.jpg
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/hor-menu-search.png b/uiframe-iui/src/main/resources/webroot/framework/img/hor-menu-search.png
new file mode 100644
index 00000000..2a72156c
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/hor-menu-search.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/icon-color-close.png b/uiframe-iui/src/main/resources/webroot/framework/img/icon-color-close.png
new file mode 100644
index 00000000..9b7dfacc
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/icon-color-close.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/icon-color.png b/uiframe-iui/src/main/resources/webroot/framework/img/icon-color.png
new file mode 100644
index 00000000..b9666ee9
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/icon-color.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/icon-img-down.png b/uiframe-iui/src/main/resources/webroot/framework/img/icon-img-down.png
new file mode 100644
index 00000000..1b85914d
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/icon-img-down.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/icon-img-up.png b/uiframe-iui/src/main/resources/webroot/framework/img/icon-img-up.png
new file mode 100644
index 00000000..d90af400
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/icon-img-up.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/input-spinner.gif b/uiframe-iui/src/main/resources/webroot/framework/img/input-spinner.gif
new file mode 100644
index 00000000..5b33f7e5
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/input-spinner.gif
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/integration/logo.png b/uiframe-iui/src/main/resources/webroot/framework/img/integration/logo.png
new file mode 100644
index 00000000..a36c5e8b
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/integration/logo.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/integration/logo_white.png b/uiframe-iui/src/main/resources/webroot/framework/img/integration/logo_white.png
new file mode 100644
index 00000000..2a48ef41
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/integration/logo_white.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/integration/netnumenLogo.png b/uiframe-iui/src/main/resources/webroot/framework/img/integration/netnumenLogo.png
new file mode 100644
index 00000000..d899116f
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/integration/netnumenLogo.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/integration/zte_bg_1.jpg b/uiframe-iui/src/main/resources/webroot/framework/img/integration/zte_bg_1.jpg
new file mode 100644
index 00000000..4a7b0722
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/integration/zte_bg_1.jpg
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/integration/zte_bg_2.jpg b/uiframe-iui/src/main/resources/webroot/framework/img/integration/zte_bg_2.jpg
new file mode 100644
index 00000000..db94b166
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/integration/zte_bg_2.jpg
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/integration/zte_bg_3.jpg b/uiframe-iui/src/main/resources/webroot/framework/img/integration/zte_bg_3.jpg
new file mode 100644
index 00000000..f2949dfe
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/integration/zte_bg_3.jpg
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/integration/zte_logo_16.gif b/uiframe-iui/src/main/resources/webroot/framework/img/integration/zte_logo_16.gif
new file mode 100644
index 00000000..362b825a
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/integration/zte_logo_16.gif
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/integration/zte_logo_white.png b/uiframe-iui/src/main/resources/webroot/framework/img/integration/zte_logo_white.png
new file mode 100644
index 00000000..a36c5e8b
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/integration/zte_logo_white.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/integration/ztelogo.png b/uiframe-iui/src/main/resources/webroot/framework/img/integration/ztelogo.png
new file mode 100644
index 00000000..ebe122a2
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/integration/ztelogo.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/loading-spinner-grey.gif b/uiframe-iui/src/main/resources/webroot/framework/img/loading-spinner-grey.gif
new file mode 100644
index 00000000..6d614d3d
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/loading-spinner-grey.gif
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/loading.gif b/uiframe-iui/src/main/resources/webroot/framework/img/loading.gif
new file mode 100644
index 00000000..29bbff00
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/loading.gif
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/icon/1.png b/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/icon/1.png
new file mode 100644
index 00000000..59ba9a63
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/icon/1.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/icon/2.png b/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/icon/2.png
new file mode 100644
index 00000000..e0410c33
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/icon/2.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/icon/3.png b/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/icon/3.png
new file mode 100644
index 00000000..318efa6b
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/icon/3.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/icon/4.png b/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/icon/4.png
new file mode 100644
index 00000000..b8de07ab
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/icon/4.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/icon/5.png b/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/icon/5.png
new file mode 100644
index 00000000..ae36671e
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/icon/5.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/icon/6.png b/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/icon/6.png
new file mode 100644
index 00000000..de1e1b05
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/icon/6.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/logo.png b/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/logo.png
new file mode 100644
index 00000000..f0acf46d
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/logo.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/pic/1.png b/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/pic/1.png
new file mode 100644
index 00000000..632549ad
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/pic/1.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/pic/2.png b/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/pic/2.png
new file mode 100644
index 00000000..a634594a
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/pic/2.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/pic/3.png b/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/pic/3.png
new file mode 100644
index 00000000..83d03656
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/pic/3.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/pic/4.png b/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/pic/4.png
new file mode 100644
index 00000000..552cb1f2
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/pic/4.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/pic/5.png b/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/pic/5.png
new file mode 100644
index 00000000..277e52db
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/mainpage/pic/5.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/menu-toggler.png b/uiframe-iui/src/main/resources/webroot/framework/img/menu-toggler.png
new file mode 100644
index 00000000..3d5c2d41
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/menu-toggler.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/overlay-icon.png b/uiframe-iui/src/main/resources/webroot/framework/img/overlay-icon.png
new file mode 100644
index 00000000..ecdb629a
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/overlay-icon.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/portlet-collapse-icon-white.png b/uiframe-iui/src/main/resources/webroot/framework/img/portlet-collapse-icon-white.png
new file mode 100644
index 00000000..a415159f
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/portlet-collapse-icon-white.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/portlet-collapse-icon.png b/uiframe-iui/src/main/resources/webroot/framework/img/portlet-collapse-icon.png
new file mode 100644
index 00000000..5f4901f1
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/portlet-collapse-icon.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/portlet-config-icon-white.png b/uiframe-iui/src/main/resources/webroot/framework/img/portlet-config-icon-white.png
new file mode 100644
index 00000000..2f3a2721
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/portlet-config-icon-white.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/portlet-config-icon.png b/uiframe-iui/src/main/resources/webroot/framework/img/portlet-config-icon.png
new file mode 100644
index 00000000..f0451215
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/portlet-config-icon.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/portlet-expand-icon-white.png b/uiframe-iui/src/main/resources/webroot/framework/img/portlet-expand-icon-white.png
new file mode 100644
index 00000000..f2ecf78a
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/portlet-expand-icon-white.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/portlet-expand-icon.png b/uiframe-iui/src/main/resources/webroot/framework/img/portlet-expand-icon.png
new file mode 100644
index 00000000..54b891b5
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/portlet-expand-icon.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/portlet-reload-icon-white.png b/uiframe-iui/src/main/resources/webroot/framework/img/portlet-reload-icon-white.png
new file mode 100644
index 00000000..a14730b8
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/portlet-reload-icon-white.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/portlet-reload-icon.png b/uiframe-iui/src/main/resources/webroot/framework/img/portlet-reload-icon.png
new file mode 100644
index 00000000..bdb0f08e
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/portlet-reload-icon.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/portlet-remove-icon-white.png b/uiframe-iui/src/main/resources/webroot/framework/img/portlet-remove-icon-white.png
new file mode 100644
index 00000000..ddc6d2c1
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/portlet-remove-icon-white.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/portlet-remove-icon.png b/uiframe-iui/src/main/resources/webroot/framework/img/portlet-remove-icon.png
new file mode 100644
index 00000000..e2a02c62
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/portlet-remove-icon.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/remove-icon-small.png b/uiframe-iui/src/main/resources/webroot/framework/img/remove-icon-small.png
new file mode 100644
index 00000000..382bb241
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/remove-icon-small.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/reset_password.png b/uiframe-iui/src/main/resources/webroot/framework/img/reset_password.png
new file mode 100644
index 00000000..8b512e0b
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/reset_password.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/NFV.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/NFV.svg
new file mode 100644
index 00000000..cc03a77c
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/NFV.svg
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="22px" height="22px" viewBox="0 0 22 22" enable-background="new 0 0 22 22" xml:space="preserve">
+<path fill="#649BE6" d="M16.732,9.92c0,0.599,1.179,1.083,2.629,1.083c1.451,0,2.629-0.483,2.629-1.083c0-0.006,0.001-0.011,0-0.018
+ c0-0.003,0.001-0.013,0-0.017c-0.039-0.585-1.202-1.051-2.629-1.051C17.911,8.835,16.732,9.321,16.732,9.92z"/>
+<path fill="#649BE6" d="M19.372,11.246c-1.451,0-2.63-0.485-2.63-1.083c0-0.036-0.014-0.15-0.018-0.218v0.677
+ c0.01,0.102,0.018,0.213,0.018,0.261c0,0.598,1.179,1.085,2.63,1.085c1.45,0,2.628-0.487,2.628-1.085v-0.72
+ C22,10.761,20.822,11.246,19.372,11.246z"/>
+<path fill="#649BE6" d="M19.372,12.297c-1.451,0-2.63-0.486-2.63-1.085c0-0.035-0.014-0.142-0.018-0.207v0.632
+ c0.01,0.104,0.018,0.213,0.018,0.26c0,0.602,1.179,1.086,2.63,1.086c1.45,0,2.628-0.484,2.628-1.086v-0.685
+ C22,11.811,20.822,12.297,19.372,12.297z"/>
+<path fill="#649BE6" d="M19.372,13.311c-1.451,0-2.63-0.482-2.63-1.084c0-0.033-0.014-0.143-0.018-0.209v0.668
+ c0.002,0.021,0.008,0.051,0.008,0.063c0,0.601,1.179,1.084,2.629,1.084c1.451,0,2.629-0.483,2.629-1.084
+ c0-0.013,0.006-0.043,0.01-0.063v-0.459C22,12.826,20.822,13.311,19.372,13.311z"/>
+<path fill="#649BE6" d="M20.171,7.799c-0.11-0.283-0.239-0.561-0.383-0.831l-0.817,0.383c0.129,0.245,0.245,0.497,0.346,0.754
+ L20.171,7.799z"/>
+<path fill="#649BE6" d="M17.955,5.825l0.717-0.534c-0.427-0.518-0.915-0.996-1.447-1.423l-0.59,0.659
+ C17.119,4.917,17.563,5.353,17.955,5.825z"/>
+<path fill="#649BE6" d="M14.285,3.146c0.27,0.11,0.533,0.232,0.787,0.365l0.439-0.758c-0.281-0.146-0.568-0.278-0.863-0.4
+ L14.285,3.146z"/>
+<path fill="#649BE6" d="M5.661,2.754L6.1,3.512c0.256-0.134,0.519-0.256,0.788-0.366L6.524,2.353
+ C6.229,2.475,5.941,2.607,5.661,2.754z"/>
+<path fill="#649BE6" d="M2.494,5.298l0.72,0.533c0.39-0.472,0.833-0.908,1.319-1.298L3.941,3.874C3.41,4.302,2.923,4.78,2.494,5.298
+ z"/>
+<path fill="#649BE6" d="M2.202,7.351L1.384,6.968c-0.14,0.27-0.268,0.547-0.383,0.831l0.854,0.307
+ C1.959,7.848,2.074,7.597,2.202,7.351z"/>
+<path fill="#649BE6" d="M18.971,15.137l0.817,0.383c0.144-0.271,0.271-0.547,0.383-0.832l-0.854-0.306
+ C19.216,14.639,19.1,14.891,18.971,15.137z"/>
+<path fill="#649BE6" d="M16.635,17.961l0.59,0.66c0.532-0.43,1.021-0.906,1.447-1.426l-0.717-0.531
+ C17.563,17.134,17.119,17.568,16.635,17.961z"/>
+<path fill="#649BE6" d="M14.285,19.342l0.363,0.792c0.295-0.12,0.582-0.254,0.863-0.399l-0.439-0.758
+ C14.818,19.107,14.555,19.23,14.285,19.342z"/>
+<path fill="#649BE6" d="M5.661,19.732c0.28,0.146,0.568,0.281,0.863,0.399l0.364-0.792c-0.27-0.109-0.532-0.232-0.788-0.365
+ L5.661,19.732z"/>
+<path fill="#649BE6" d="M3.213,16.654l-0.72,0.535c0.429,0.518,0.916,0.994,1.447,1.422l0.591-0.657
+ C4.047,17.563,3.604,17.128,3.213,16.654z"/>
+<path fill="#649BE6" d="M1.001,14.688c0.115,0.285,0.243,0.563,0.383,0.832l0.818-0.383c-0.128-0.246-0.243-0.498-0.347-0.755
+ L1.001,14.688z"/>
+<path fill="#649BE6" d="M12.373,0.804C12.373,0.36,11.992,0,11.523,0H9.494c-0.469,0-0.85,0.36-0.85,0.804V1.98h3.729V0.804z"/>
+<path fill="#649BE6" d="M9.494,6.116h2.029c0.469,0,0.85-0.359,0.85-0.803v-2.93H8.645v2.931C8.645,5.757,9.025,6.116,9.494,6.116z
+ M10.508,4.174c0.189,0,0.342,0.145,0.342,0.323c0,0.178-0.153,0.324-0.342,0.324s-0.341-0.146-0.341-0.324
+ C10.167,4.319,10.319,4.174,10.508,4.174z"/>
+<ellipse fill="#649BE6" cx="10.642" cy="17.541" rx="3.407" ry="0.486"/>
+<path fill="#649BE6" d="M7.288,17.979v3.26c0,0,0.744,0.761,3.459,0.763c2.862,0.002,3.301-0.763,3.301-0.763v-3.26
+ c0,0-1.848,0.318-3.349,0.318C8.912,18.297,7.288,17.979,7.288,17.979z M9.528,20.43H9.099v0.437L8.408,20.21l0.691-0.644v0.436
+ h0.429V20.43z M10.571,21.615L9.88,20.962h0.459v-0.407h0.454v0.407h0.458L10.571,21.615z M11.602,20.001h0.43v-0.435l0.691,0.644
+ l-0.691,0.655V20.43h-0.43V20.001z M10.792,19.473v0.405h-0.454v-0.405h-0.46l0.691-0.656l0.679,0.656H10.792z"/>
+<g>
+ <path fill="#649BE6" d="M2.167,8.959L0,9.194v1.992c0,0,0.343,1.143,0.597,1.457c0.84,1.043,1.161,1.07,1.57,1.489h0.031v-0.024
+ h0.025c0.408-0.418,0.73-0.443,1.57-1.489c0.252-0.31,0.595-1.453,0.595-1.453V9.174L2.167,8.959z M3.911,11.247
+ c0,0-0.268,0.896-0.466,1.138c-0.657,0.818-0.909,0.84-1.229,1.166h-0.02v0.02H2.172c-0.32-0.327-0.571-0.35-1.229-1.164
+ c-0.199-0.246-0.467-1.141-0.467-1.141V9.706l1.695-0.185l1.738,0.168v1.558H3.911z"/>
+ <path fill="#649BE6" d="M0.813,11.32c0,0,0.215,0.719,0.375,0.918c0.529,0.654,0.731,0.674,0.988,0.936h0.02v-0.016h0.016
+ c0.257-0.262,0.459-0.279,0.988-0.938c0.16-0.193,0.375-0.916,0.375-0.916v-1.253L2.177,9.917l-1.364,0.149V11.32z"/>
+</g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/NS.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/NS.svg
new file mode 100644
index 00000000..83c648bb
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/NS.svg
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="22px" height="22px" viewBox="0 0 22 22" enable-background="new 0 0 22 22" xml:space="preserve">
+<circle fill="#FFFFFF" stroke="#649BE6" stroke-miterlimit="10" cx="11" cy="11" r="10.5"/>
+<path fill="none" stroke="#649BE6" stroke-width="0.75" stroke-miterlimit="10" d="M1.348,7.298c0,0,2.663-2.507,8.796-3.041
+ c5.706-0.496,10.372,2.506,10.372,2.506"/>
+<path fill="none" stroke="#649BE6" stroke-width="0.75" stroke-miterlimit="10" d="M0.833,9.395c0,0,2.827,5.068,9.836,5.74
+ c6.037,0.579,10.819-3.064,10.819-3.064"/>
+<path fill="none" stroke="#649BE6" stroke-width="0.75" stroke-miterlimit="10" d="M11.321,0.726c0,0-5.977,4.548-6.109,10.274
+ c-0.166,7.113,3.903,10.229,3.903,10.229"/>
+<path fill="none" stroke="#649BE6" stroke-width="0.75" stroke-miterlimit="10" d="M16.029,1.903c0,0,0.926,7.691-3.457,13.148
+ c-2.342,2.92-7.091,4.789-7.091,4.789"/>
+<path fill="none" stroke="#649BE6" stroke-width="0.75" stroke-miterlimit="10" d="M20.837,14.529c0,0-1.933,2.736-5.983,4.391
+ c-2.445,0.999-6.528,1.713-6.528,1.713"/>
+<path fill="#649BE6" d="M8.86,4.418c0,0.68-0.551,1.231-1.231,1.231l0,0c-0.68,0-1.231-0.551-1.231-1.231l0,0
+ c0-0.68,0.551-1.231,1.231-1.231l0,0C8.309,3.187,8.86,3.738,8.86,4.418L8.86,4.418z"/>
+<path fill="#649BE6" d="M17.154,4.899c0,0.68-0.551,1.231-1.23,1.231l0,0c-0.68,0-1.23-0.551-1.23-1.231l0,0
+ c0-0.68,0.552-1.23,1.23-1.23l0,0C16.604,3.669,17.154,4.22,17.154,4.899L17.154,4.899z"/>
+<path fill="#649BE6" d="M21.65,12.07c0,0.681-0.553,1.232-1.23,1.232l0,0c-0.682,0-1.232-0.553-1.232-1.232l0,0
+ c0-0.679,0.553-1.23,1.232-1.23l0,0C21.1,10.84,21.65,11.391,21.65,12.07L21.65,12.07z"/>
+<path fill="#649BE6" d="M13.837,15.066c0,0.681-0.552,1.231-1.231,1.231l0,0c-0.68,0-1.231-0.552-1.231-1.231l0,0
+ c0-0.68,0.552-1.229,1.231-1.229l0,0C13.285,13.837,13.837,14.389,13.837,15.066L13.837,15.066z"/>
+<path fill="#649BE6" d="M6.773,13.462c0,0.681-0.552,1.231-1.232,1.231l0,0c-0.679,0-1.231-0.553-1.231-1.231l0,0
+ c0-0.68,0.552-1.229,1.231-1.229l0,0C6.222,12.232,6.773,12.782,6.773,13.462L6.773,13.462z"/>
+<path fill="#649BE6" d="M10.413,20.204c0,0.68-0.552,1.231-1.231,1.231l0,0c-0.68,0-1.232-0.553-1.232-1.231l0,0
+ c0-0.679,0.552-1.229,1.232-1.229l0,0C9.86,18.975,10.413,19.525,10.413,20.204L10.413,20.204z"/>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/VDU.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/VDU.svg
new file mode 100644
index 00000000..c4de7eda
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/VDU.svg
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="22px" height="22px" viewBox="0 0 22 22" enable-background="new 0 0 22 22" xml:space="preserve">
+<rect x="0.76" y="1.021" fill="#FFFFFF" width="11.539" height="20.979"/>
+<path fill="#649BE6" d="M20.667,3.569c0,0.422-0.343,0.765-0.765,0.765h-2.805c-0.424,0-0.766-0.342-0.766-0.765V0.765
+ C16.333,0.342,16.675,0,17.098,0h2.805c0.423,0,0.766,0.342,0.766,0.765L20.667,3.569L20.667,3.569z"/>
+<path fill="#649BE6" d="M20.667,21.234c0,0.424-0.343,0.766-0.765,0.766h-2.805c-0.424,0-0.766-0.342-0.766-0.766v-2.803
+ c0-0.424,0.342-0.766,0.766-0.766h2.805c0.422,0,0.765,0.342,0.765,0.766V21.234z"/>
+<path fill="#649BE6" d="M20.667,12.4c0,0.424-0.343,0.767-0.765,0.767h-2.805c-0.424,0-0.766-0.343-0.766-0.767V9.598
+ c0-0.422,0.342-0.765,0.766-0.765h2.805c0.422,0,0.765,0.342,0.765,0.765V12.4z"/>
+<rect x="12.167" y="10.782" fill="#649BE6" width="4.362" height="0.6"/>
+<rect x="14.65" y="18.658" fill="#649BE6" width="1.879" height="0.6"/>
+<rect x="14.652" y="3.202" fill="#649BE6" width="1.877" height="0.6"/>
+<rect x="14.648" y="3.206" fill="#649BE6" width="0.601" height="16"/>
+<path fill="#649BE6" d="M11.607,22H1.5C0.673,22,0,21.348,0,20.546V1.455C0,0.652,0.673,0,1.5,0h10.107c0.826,0,1.5,0.652,1.5,1.455
+ v19.091C13.107,21.348,12.436,22,11.607,22z M1.5,1C1.224,1,1,1.204,1,1.455v19.091C1,20.796,1.224,21,1.5,21h10.107
+ c0.275,0,0.5-0.204,0.5-0.454V1.455c0-0.25-0.225-0.455-0.5-0.455H1.5z"/>
+<rect x="2.061" y="2.929" fill="#649BE6" width="7.985" height="1"/>
+<rect x="2.061" y="4.555" fill="#649BE6" width="7.985" height="1"/>
+<rect x="2.061" y="6.305" fill="#649BE6" width="7.985" height="1"/>
+<path fill="#649BE6" d="M9.241,18.438c0,0.381-0.308,0.688-0.688,0.688h-5c-0.38,0-0.688-0.308-0.688-0.688l0,0
+ c0-0.379,0.308-0.688,0.688-0.688h5C8.934,17.75,9.241,18.059,9.241,18.438L9.241,18.438z"/>
+<circle fill="#649BE6" cx="6.054" cy="12" r="1"/>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/VIM.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/VIM.svg
new file mode 100644
index 00000000..32cda6f0
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/VIM.svg
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="22px" height="22px" viewBox="0 0 22 22" enable-background="new 0 0 22 22" xml:space="preserve">
+<polyline fill="#FFFFFF" stroke="#649BE6" stroke-miterlimit="10" points="2.605,18.331 0.546,7.16 0.858,5.163 5.539,5.163
+ 6.724,6.973 14.773,6.973 "/>
+<path fill="#FFFFFF" stroke="#649BE6" stroke-miterlimit="10" d="M20.301,12.625c0.036-0.218,0.061-0.439,0.061-0.668
+ c0-0.234-0.023-0.461-0.063-0.684l1.002-0.905l-0.279-0.733l-1.416-0.018c-0.244-0.341-0.541-0.641-0.881-0.89l-0.017-1.482
+ L17.979,6.96L17.04,8.015c-0.211-0.036-0.431-0.059-0.651-0.059c-0.256,0-0.504,0.026-0.744,0.071L14.766,7.04l-0.729,0.286
+ L14.02,8.749c-0.314,0.238-0.592,0.526-0.828,0.846H5.352L2.793,18.02h11.982l0.684-1.881l-0.012-0.033l0.197-0.221
+ c0.24,0.045,0.488,0.073,0.744,0.073c0.223,0,0.44-0.024,0.65-0.062l0.939,1.056l0.729-0.284l0.017-1.482
+ c0.319-0.232,0.601-0.515,0.836-0.83l1.541-0.018l0.282-0.734L20.301,12.625z M16.389,13.123c-0.641,0-1.158-0.521-1.158-1.167
+ c0-0.646,0.519-1.166,1.158-1.166c0.639,0,1.157,0.52,1.157,1.166C17.546,12.602,17.025,13.123,16.389,13.123z"/>
+<path fill="#FFFFFF" stroke="#649BE6" stroke-width="0.75" stroke-miterlimit="10" d="M13.361,9.576h-0.264
+ c-0.023,0.031-0.053,0.058-0.074,0.09l-1.362,0.018l-0.282,0.733l0.995,0.898c-0.033,0.203-0.054,0.408-0.054,0.623
+ c0,0.25,0.025,0.492,0.07,0.73l-1.095,0.982l0.283,0.736l1.592,0.018c0.218,0.281,0.472,0.527,0.754,0.738l0.017,1.426l0.729,0.281
+ l0.683-0.766"/>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/VNF.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/VNF.svg
new file mode 100644
index 00000000..0651d649
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/VNF.svg
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="22px" height="22px" viewBox="0 0 22 22" enable-background="new 0 0 22 22" xml:space="preserve">
+<circle fill="#FDFEFF" stroke="#649BE6" stroke-miterlimit="10" cx="11" cy="11" r="10.562"/>
+<g>
+ <path fill="#649BE6" d="M14.625,13.992c-0.723,0-1.34,0.424-1.634,1.033L7.036,13.05c0.017-0.099,0.03-0.198,0.03-0.302
+ c0-0.301-0.08-0.58-0.209-0.831l5.609-4.782c0.313,0.254,0.706,0.413,1.14,0.413c1.004,0,1.818-0.814,1.818-1.818
+ s-0.814-1.818-1.818-1.818s-1.817,0.814-1.817,1.818c0,0.28,0.067,0.542,0.181,0.778l-5.626,4.796
+ c-0.305-0.232-0.682-0.375-1.094-0.375c-1.004,0-1.818,0.814-1.818,1.818s0.814,1.817,1.818,1.817c0.614,0,1.155-0.307,1.484-0.772
+ l6.074,2.017c0,0,0,0,0,0.002c0,1.004,0.814,1.817,1.818,1.817s1.818-0.813,1.818-1.817S15.629,13.992,14.625,13.992z"/>
+</g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/VNFC.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/VNFC.svg
new file mode 100644
index 00000000..e20a53b6
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/VNFC.svg
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="22px" height="22px" viewBox="0 0 22 22" enable-background="new 0 0 22 22" xml:space="preserve">
+<circle fill="#FDFEFF" stroke="#649BE6" stroke-miterlimit="10" cx="11" cy="11" r="10.562"/>
+<rect x="17.314" y="5.03" fill="#FDFEFF" width="4.686" height="13.471"/>
+<path fill="#649BE6" d="M11.711,13.134c-0.584,0-1.083,0.343-1.321,0.835l-4.81-1.597c0.014-0.079,0.024-0.16,0.024-0.243
+ c0-0.242-0.065-0.469-0.169-0.672l4.531-3.863c0.253,0.205,0.571,0.333,0.92,0.333c0.811,0,1.469-0.658,1.469-1.469
+ S11.697,4.99,10.886,4.99S9.418,5.648,9.418,6.459c0,0.227,0.054,0.438,0.146,0.628l-4.545,3.875
+ c-0.246-0.188-0.55-0.303-0.883-0.303c-0.811,0-1.469,0.657-1.469,1.468c0,0.813,0.658,1.469,1.469,1.469
+ c0.496,0,0.933-0.246,1.199-0.623l4.907,1.629c0,0,0,0,0,0.002c0,0.812,0.658,1.467,1.47,1.467c0.812,0,1.47-0.655,1.47-1.467
+ C13.18,13.792,12.521,13.134,11.711,13.134z"/>
+<g>
+ <path fill="#649BE6" d="M22,8.838l-4.354-2.257l-4.353,2.257l4.353,2.257L22,8.838z M17.646,7.458l2.66,1.38l-2.66,1.381
+ l-2.66-1.381L17.646,7.458z"/>
+ <polygon fill="#649BE6" points="17.646,13.158 15.262,11.922 13.57,11.922 17.646,14.036 21.725,11.922 20.032,11.922 "/>
+ <polygon fill="#649BE6" points="17.646,16.102 15.262,14.861 13.57,14.861 17.646,16.977 21.725,14.861 20.032,14.861 "/>
+</g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/VNFM.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/VNFM.svg
new file mode 100644
index 00000000..3c8d9788
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/VNFM.svg
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="22px" height="22px" viewBox="0 0 22 22" enable-background="new 0 0 22 22" xml:space="preserve">
+<polyline fill="none" stroke="#649BE6" stroke-miterlimit="10" points="2.605,18.331 0.546,7.16 0.858,5.163 5.539,5.163
+ 6.724,6.973 14.773,6.973 "/>
+<polyline fill="none" stroke="#649BE6" stroke-miterlimit="10" points="15.458,16.139 14.773,18.02 2.792,18.02 5.351,9.594
+ 11.6,9.594 "/>
+<g>
+ <path fill="#649BE6" d="M19.182,14.096c-0.724,0-1.341,0.424-1.635,1.033l-5.955-1.977c0.018-0.098,0.03-0.197,0.03-0.301
+ c0-0.302-0.08-0.58-0.209-0.832l5.608-4.783c0.313,0.254,0.705,0.413,1.14,0.413c1.004,0,1.817-0.814,1.817-1.818
+ s-0.813-1.818-1.817-1.818c-1.005,0-1.817,0.814-1.817,1.818c0,0.28,0.067,0.542,0.182,0.778l-5.626,4.796
+ c-0.305-0.232-0.682-0.375-1.094-0.375c-1.004,0-1.817,0.813-1.817,1.817s0.813,1.818,1.817,1.818c0.614,0,1.155-0.307,1.483-0.773
+ l6.073,2.019c0,0,0,0,0,0.002c0,1.004,0.814,1.815,1.818,1.815s1.818-0.813,1.818-1.815S20.186,14.096,19.182,14.096z"/>
+</g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/breakLink.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/breakLink.svg
new file mode 100644
index 00000000..121bab33
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/breakLink.svg
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="10px" height="10px" viewBox="0 0 10 10" enable-background="new 0 0 10 10" xml:space="preserve">
+<path fill="#C9161D" d="M5,0C2.239,0,0,2.239,0,5c0,2.762,2.239,5,5,5c2.762,0,5-2.238,5-5C10,2.239,7.762,0,5,0z M8.144,7.122
+ L7.083,8.183L4.961,6.061L2.917,8.104L1.856,7.044L3.9,5L1.856,2.957l1.062-1.061l2.043,2.043l2.122-2.122l1.061,1.061L6.021,5
+ L8.144,7.122z"/>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/common_dc.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/common_dc.svg
new file mode 100644
index 00000000..e1e6041c
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/common_dc.svg
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg4880">
+ <defs
+ id="defs4882">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ </defs>
+ <metadata
+ id="metadata4885">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="matrix(1.2336999,0,0,1.5324837,39.905588,-1425.8443)"
+ id="text5639-4"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(-26.889408,-3.6392125)"
+ id="g3487"
+ style="fill:#649be6;fill-opacity:1">
+ <g
+ transform="translate(0,1.25e-5)"
+ id="g3529"
+ style="fill:#649be6;fill-opacity:1">
+ <g
+ transform="matrix(1.375,0,0,1.375,-0.0859375,-1424.9121)"
+ id="layer1"
+ style="fill:#649be6;fill-opacity:1">
+ <path
+ d="M 2.75,0 C 1.2265,0 0,1.2265 0,2.75 l 0,16.5 C 0,20.7735 1.2265,22 2.75,22 l 11.8125,0 4.6875,0 C 20.7735,22 22,20.7735 22,19.25 L 22,2.75 C 22,1.2265 20.7735,0 19.25,0 L 2.75,0 z m 2.96875,1.5625 10.53125,0 c 0.93663,0 1.71875,0.7031207 1.71875,1.5625 l 0,15.875 c 0,0.859379 -0.78212,1.5625 -1.71875,1.5625 l -10.53125,0 c -0.9366303,0 -1.6875,-0.703121 -1.6875,-1.5625 l 0,-15.875 c 0,-0.8593793 0.7508697,-1.5625 1.6875,-1.5625 z m 8.625,2.5 c -0.888596,5.9e-6 -1.579729,0.2764695 -2.125,0.8125 -0.545274,0.5360408 -0.8125,1.2811681 -0.8125,2.25 0,0.9158959 0.270111,1.6594063 0.8125,2.1875 0.542386,0.528095 1.220065,0.75 2.0625,0.75 0.680866,0 1.275891,-0.129114 1.71875,-0.4375 0.442849,-0.3083856 0.747081,-0.8021967 0.9375,-1.4375 l -1.25,-0.3125 c -0.106751,0.4261836 -0.254776,0.7389695 -0.5,0.9375 -0.245233,0.198533 -0.565818,0.2500009 -0.90625,0.25 -0.46161,9e-7 -0.836498,-0.1251421 -1.125,-0.4375 -0.288507,-0.3123552 -0.437502,-0.8266061 -0.4375,-1.5625 -2e-6,-0.6935345 0.144666,-1.1902861 0.4375,-1.5 0.29283,-0.309705 0.685984,-0.4999951 1.15625,-0.5 0.340432,4.9e-6 0.636979,0.075297 0.875,0.25 0.238011,0.1747126 0.39373,0.4482357 0.46875,0.75 l 1.25,-0.3125 C 16.761992,5.2841164 16.538499,4.9363317 16.25,4.6875 15.765308,4.266618 15.119822,4.0625059 14.34375,4.0625 z m -9.125,0.125 0,5.8125 2.4375,0 c 0.4731436,0 0.8422618,-0.04294 1.125,-0.125 0.3779361,-0.111178 0.6528467,-0.301468 0.875,-0.5 0.2942686,-0.2620613 0.528817,-0.576464 0.6875,-1 0.129815,-0.3467671 0.187495,-0.7708739 0.1875,-1.25 -5e-6,-0.5452976 -0.04902,-1.0030797 -0.1875,-1.375 C 10.205262,5.3780881 9.9841692,5.0692729 9.71875,4.8125 9.453321,4.5557375 9.153416,4.3505951 8.78125,4.25 8.5042819,4.175887 8.0592096,4.1875058 7.53125,4.1875 l -2.3125,0 z M 6.5,5.125 l 0.5625,0 c 0.5221899,5e-6 0.8836239,0.025446 1.0625,0.0625 0.2394549,0.047652 0.4692036,0.1775029 0.625,0.3125 0.155788,0.1350061 0.2259441,0.3216188 0.3125,0.5625 0.086547,0.2408891 0.1562453,0.5499977 0.15625,1 C 9.2187453,7.5125081 9.1490472,7.8642635 9.0625,8.125 8.9759443,8.3857402 8.8870352,8.5736764 8.75,8.6875 8.6129563,8.8013261 8.4264693,8.889853 8.21875,8.9375 8.0600691,8.97456 7.7952422,9.000001 7.4375,9 L 6.5,9 6.5,5.125 z m -0.65625,7.75 c -0.3252429,0 -0.59375,0.223 -0.59375,0.5 0,0.277 0.2685071,0.5 0.59375,0.5 l 10.4375,0 c 0.325244,0 0.59375,-0.223 0.59375,-0.5 0,-0.277 -0.268506,-0.5 -0.59375,-0.5 l -10.4375,0 z m 0,2.875 c -0.3252429,0 -0.59375,0.223 -0.59375,0.5 0,0.277 0.2685071,0.5 0.59375,0.5 l 10.4375,0 c 0.325244,0 0.59375,-0.223 0.59375,-0.5 0,-0.277 -0.268506,-0.5 -0.59375,-0.5 l -10.4375,0 z"
+ transform="matrix(0.72727273,0,0,0.72727273,19.618433,1038.9464)"
+ id="rect5513"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3921381,0,0,1.3921381,-0.1371048,0.09814145)"
+ id="text3454"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ <g
+ id="text3099"
+ style="font-size:12.77633667px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" />
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/common_ncd.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/common_ncd.svg
new file mode 100644
index 00000000..306d25ae
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/common_ncd.svg
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg2">
+ <defs
+ id="defs4" />
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <path
+ d="M 3.265625,1030.3622 C 1.4540676,1030.3622 0,1031.8163 0,1033.6278 l 0,15.4688 c 0,1.8115 1.4540676,3.2656 3.265625,3.2656 l 15.46875,0 c 1.811557,0 3.265625,-1.4541 3.265625,-3.2656 l 0,-15.4688 c 0,-1.8115 -1.454068,-3.2656 -3.265625,-3.2656 l -15.46875,0 z m -1.03125,3.5665 2.1054687,0 4.3398438,5.6719 0,-5.6719 2.0195315,0 0,6.4882 c -0.376791,-0.11 -0.7954402,-0.1719 -1.2031252,-0.1719 -0.7967217,0 -1.5359397,0.2523 -2.1914063,0.6446 l -3.09375,-3.9961 0,5.543 -1.9765625,0 0,-8.5078 z m 7.5625,7.6054 c 0.859652,0 1.568578,0.2225 2.105469,0.7305 0.319568,0.3003 0.570675,0.7266 0.730469,1.2891 l -1.417969,0.3437 c -0.0831,-0.3643 -0.209012,-0.6484 -0.472656,-0.8593 -0.263654,-0.2112 -0.611187,-0.3009 -0.9882817,-0.3009 -0.5209101,0 -0.9646969,0.1847 -1.2890625,0.5587 -0.32437,0.3737 -0.4726584,0.9673 -0.4726563,1.8047 -2.1e-6,0.8885 0.1530793,1.5565 0.4726563,1.9335 0.3195719,0.377 0.7777397,0.5156 1.2890625,0.5156 0.3770947,0 0.6736697,-0.1045 0.9453127,-0.3437 0.271633,-0.2397 0.440346,-0.6027 0.558594,-1.1172 l 1.375,0.4297 c -0.210926,0.7671 -0.540709,1.3035 -1.03125,1.6758 -0.490553,0.3722 -1.093465,0.6016 -1.8476567,0.6016 -0.9331613,0 -1.719514,-0.3509 -2.3203126,-0.9884 -0.6008014,-0.6376 -0.9023441,-1.4723 -0.9023437,-2.5781 -4e-7,-1.1696 0.2983465,-2.1029 0.9023437,-2.75 0.6039945,-0.6471 1.378988,-0.9453 2.3632813,-0.9453 z m 4.082031,0.1292 2.621094,0 c 0.584818,0 1.025234,0 1.332031,0.085 0.412246,0.121 0.737235,0.3774 1.03125,0.6875 0.294003,0.3099 0.534101,0.6682 0.6875,1.1172 0.153395,0.4489 0.214838,1.0173 0.214844,1.6757 -6e-6,0.5784 -0.07105,1.0853 -0.214844,1.5039 -0.175772,0.5113 -0.447477,0.8866 -0.773437,1.2032 -0.246079,0.2396 -0.569644,0.4243 -0.988282,0.5585 -0.313187,0.099 -0.721994,0.1719 -1.246093,0.1719 l -2.664063,0 0,-7.0039 z m 1.417969,1.1601 0,4.6406 1.074219,0 c 0.396269,0 0.683606,0 0.859375,-0.043 0.230091,-0.058 0.406783,-0.1635 0.558593,-0.3008 0.151794,-0.1375 0.290845,-0.3727 0.386719,-0.6875 0.09588,-0.3148 0.128906,-0.7458 0.128906,-1.2891 0,-0.5433 -0.03304,-0.9552 -0.128906,-1.246 -0.09588,-0.291 -0.257121,-0.5246 -0.429687,-0.6875 -0.172575,-0.163 -0.37929,-0.2862 -0.644532,-0.3438 -0.19814,-0.051 -0.581729,-0.043 -1.160156,-0.043 l -0.644531,0 z"
+ id="rect3025"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ <g
+ transform="matrix(1.1210095,0,0,0.89205311,0.85292267,0.75710579)"
+ id="text2985"
+ style="font-size:54.32864761px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Sans" />
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/common_sc.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/common_sc.svg
new file mode 100644
index 00000000..d44eca4f
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/common_sc.svg
@@ -0,0 +1,71 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg4880">
+ <defs
+ id="defs4882">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ </defs>
+ <metadata
+ id="metadata4885">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="matrix(1.2336999,0,0,1.5324837,39.905588,-1425.8443)"
+ id="text5639-4"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(-26.889408,-3.6392125)"
+ id="g3487"
+ style="fill:#649be6;fill-opacity:1">
+ <g
+ transform="translate(0,1.25e-5)"
+ id="g3529"
+ style="fill:#649be6;fill-opacity:1">
+ <g
+ transform="matrix(1.375,0,0,1.375,-0.0859375,-1424.9121)"
+ id="layer1"
+ style="fill:#649be6;fill-opacity:1">
+ <path
+ d="m 21.618433,1038.9464 c -1.108,0 -2,0.892 -2,2 l 0,12 c 0,1.108 0.892,2 2,2 l 8.590909,0 3.409091,0 c 1.108,0 2,-0.892 2,-2 l 0,-3.9319 0,-8.0681 c 0,-1.108 -0.892,-2 -2,-2 l -12,0 z m 1,2.2954 9.818182,0 c 0.893285,0 1.636364,0.6895 1.636364,1.5227 l 0,5.9319 c 0,0.8332 -0.743079,1.5 -1.636364,1.5 l -3.954546,0 c 0.214921,0.4189 0.459101,1.0376 0.204546,1.3409 -0.440604,0.5249 -1.68418,0.5161 -2.136364,0 -0.259688,-0.2965 -0.03349,-0.9195 0.159091,-1.3409 l -4.090909,0 c -0.893285,0 -1.636364,-0.6668 -1.636364,-1.5 l 0,-5.9319 c 0,-0.8332 0.743079,-1.5227 1.636364,-1.5227 z m 0,0.6137 c -0.534699,0 -0.977273,0.4103 -0.977273,0.909 l 0,5.9319 c 0,0.4987 0.442574,0.8863 0.977273,0.8863 l 9.818182,0 c 0.5347,0 0.977273,-0.3876 0.977273,-0.8863 l 0,-5.9319 c 0,-0.4987 -0.442573,-0.909 -0.977273,-0.909 l -9.818182,0 z m 0.977273,0.5681 7.863636,0 c 0.570106,0 1.022728,0.4511 1.022728,0.9773 l 0,4.6818 c 0,0.5263 -0.452622,0.9546 -1.022728,0.9546 l -7.863636,0 c -0.570106,0 -1.022727,-0.4283 -1.022727,-0.9546 l 0,-4.6818 c 0,-0.5262 0.452621,-0.9773 1.022727,-0.9773 z m 1.636363,1.1364 c -0.347252,0 -0.640823,0.062 -0.886363,0.1591 -0.245542,0.097 -0.437707,0.2469 -0.568182,0.4318 -0.130476,0.1849 -0.204546,0.3785 -0.204545,0.5909 -1e-6,0.33 0.1317,0.5887 0.40909,0.8182 0.197254,0.1631 0.533698,0.3199 1.022728,0.4318 0.380124,0.087 0.643151,0.1477 0.75,0.1818 0.156157,0.051 0.278236,0.1126 0.340909,0.1819 0.06267,0.069 0.06818,0.1513 0.06818,0.25 -3e-6,0.1536 -0.07831,0.2716 -0.227273,0.3863 -0.148971,0.1148 -0.365266,0.1818 -0.659091,0.1818 -0.277392,0 -0.495741,-0.053 -0.659091,-0.1818 -0.163353,-0.1289 -0.264759,-0.3386 -0.318182,-0.6136 l -0.886363,0.068 c 0.05959,0.4665 0.239298,0.8244 0.545454,1.0681 0.306155,0.2438 0.724236,0.3637 1.295455,0.3637 0.392453,0 0.73699,-0.035 1,-0.1364 0.263003,-0.1014 0.469801,-0.2686 0.613636,-0.4773 0.143823,-0.2086 0.204541,-0.4201 0.204546,-0.659 -5e-6,-0.2637 -0.06162,-0.5026 -0.181819,-0.6819 -0.120205,-0.1792 -0.287338,-0.3284 -0.5,-0.4318 -0.212668,-0.1033 -0.510724,-0.1987 -0.954545,-0.2954 -0.443826,-0.097 -0.748573,-0.1836 -0.863636,-0.2728 -0.09041,-0.07 -0.136365,-0.1513 -0.136364,-0.25 -1e-6,-0.1081 0.06252,-0.2082 0.159091,-0.2727 0.149994,-0.1005 0.3713,-0.1363 0.636363,-0.1364 0.256841,10e-5 0.439759,0.043 0.568182,0.1364 0.128419,0.094 0.210958,0.263 0.25,0.4773 l 0.931818,-0.046 c -0.01439,-0.3831 -0.19064,-0.7023 -0.477272,-0.9318 -0.286639,-0.2295 -0.705622,-0.3409 -1.272728,-0.3409 z m 4.59091,0 c -0.632862,0 -1.134383,0.2069 -1.522728,0.5909 -0.388345,0.3841 -0.590909,0.9195 -0.590909,1.6136 0,0.6563 0.204618,1.1671 0.590909,1.5455 0.38629,0.3784 0.85456,0.5682 1.454546,0.5682 0.484915,0 0.889139,-0.097 1.204545,-0.3182 0.315398,-0.2209 0.523474,-0.5675 0.659091,-1.0227 l -0.886364,-0.25 c -0.07603,0.3053 -0.188986,0.5168 -0.363636,0.6591 -0.174655,0.1422 -0.37118,0.2045 -0.613636,0.2045 -0.328761,0 -0.589983,-0.094 -0.795455,-0.3182 -0.205475,-0.2238 -0.318183,-0.6091 -0.318182,-1.1363 -1e-6,-0.4969 0.109624,-0.8463 0.318182,-1.0682 0.208554,-0.2219 0.483257,-0.3409 0.818182,-0.3409 0.242456,0 0.444119,0.057 0.613636,0.1818 0.169514,0.1252 0.264755,0.3065 0.318182,0.5227 l 0.909091,-0.2045 c -0.102741,-0.3338 -0.271802,-0.5945 -0.477273,-0.7728 -0.345199,-0.3015 -0.765459,-0.4545 -1.318181,-0.4545 z m -3.659091,8.1136 c 0.01712,0.127 0.05896,0.2308 0.136363,0.3182 0.561624,0.6346 2.111849,0.6455 2.659091,0 0.0732,-0.086 0.09968,-0.1961 0.113637,-0.3182 0.979074,0.1291 1.636363,0.3885 1.636363,0.6819 0,0.4236 -1.376853,0.75 -3.090909,0.75 -1.714056,0 -3.113636,-0.3264 -3.113636,-0.75 0,-0.2934 0.680017,-0.5528 1.659091,-0.6819 z"
+ id="rect5513"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3921381,0,0,1.3921381,-0.1371048,0.09814145)"
+ id="text3454"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ <g
+ id="text3099"
+ style="font-size:12.77633667px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" />
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/host.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/host.svg
new file mode 100644
index 00000000..67ddc915
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/host.svg
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="22px" height="22px" viewBox="0 0 22 22" enable-background="new 0 0 22 22" xml:space="preserve">
+<path fill="#FFFFFF" stroke="#649BE6" stroke-miterlimit="10" d="M17.826,20.546c0,0.526-0.447,0.954-1,0.954H6.719
+ c-0.552,0-1-0.428-1-0.954V1.455c0-0.527,0.448-0.955,1-0.955h10.107c0.553,0,1,0.427,1,0.955V20.546z"/>
+<rect x="7.78" y="3.429" fill="#649BE6" width="7.986" height="1"/>
+<rect x="7.78" y="5.054" fill="#649BE6" width="7.986" height="1"/>
+<rect x="7.78" y="6.804" fill="#649BE6" width="7.986" height="1"/>
+<path fill="#649BE6" d="M14.96,18.938c0,0.381-0.308,0.688-0.688,0.688h-5c-0.38,0-0.688-0.308-0.688-0.688l0,0
+ c0-0.379,0.308-0.688,0.688-0.688h5C14.652,18.25,14.96,18.559,14.96,18.938L14.96,18.938z"/>
+<circle fill="#649BE6" cx="11.771" cy="12.5" r="1"/>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-Virtual network.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-Virtual network.svg
new file mode 100644
index 00000000..769f80ba
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-Virtual network.svg
@@ -0,0 +1,186 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(2.0604683,1034.7666)"
+ id="layer1-03" />
+ <g
+ id="text21552"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z M 11,2 14.71875,5.71875 11,9.4375 7.28125,5.71875 11,2 z M 5.71875,7.1875 9.4375,10.90625 5.71875,14.625 2,10.90625 5.71875,7.1875 z m 10.5625,0 L 20,10.90625 16.28125,14.625 12.5625,10.90625 16.28125,7.1875 z M 11,12.5625 14.71875,16.28125 11,20 7.28125,16.28125 11,12.5625 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="matrix(1.15625,0,0,1.2332508,1.75,1032.1122)"
+ id="layer1-6-9">
+ <g
+ id="text5399-0"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.15625,0,0,1.2282158,1.75,1035.4682)"
+ id="g22144">
+ <g
+ id="text12320"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.1250848,0,0,1.1285478,1.9999998,1032.3054)"
+ id="layer1-3-4" />
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-bind.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-bind.svg
new file mode 100644
index 00000000..188e15c7
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-bind.svg
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg4880">
+ <defs
+ id="defs4882">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ </defs>
+ <metadata
+ id="metadata4885">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g3290">
+ <path
+ d="m 0.56350258,1.4915125 19.42411142,0 L 22,3.9486836 l 0,14.4759074 -4.533414,3.575397 -14.5454031,0 -2.26105213,-3.2614 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="matrix(1.375,0,0,1.375,-0.0859375,-1424.9121)"
+ id="layer1"
+ style="fill:#649be6;fill-opacity:1">
+ <path
+ d="m 2.0625,-0.0625 c -1.10799996,0 -2,0.892 -2,2 l 0,12 c 0,1.108 0.89200004,2 2,2 l 6.53125,0 7.46875,-7.5 0,-6.5 c 0,-1.108 -0.892,-2 -2,-2 l -12,0 z m -0.28125,1.40625 3.53125,0 c 0.6990338,0 1.2190013,0.035139 1.5625,0.09375 0.3434873,0.058611 0.6350641,0.158963 0.90625,0.34375 0.2711729,0.1849498 0.5067067,0.4426186 0.6875,0.75 C 8.6495287,2.8384686 8.7499919,3.1807154 8.75,3.5625 8.7499919,3.976195 8.6292139,4.3420215 8.40625,4.6875 8.1832731,5.0329785 7.8816528,5.2960108 7.5,5.46875 8.0383326,5.6250456 8.4607342,5.9035356 8.75,6.28125 9.0392495,6.6589644 9.1874919,7.1147599 9.1875,7.625 9.1874919,8.02681 9.0930493,8.4015819 8.90625,8.78125 8.7194311,9.1609181 8.4483985,9.4605457 8.125,9.6875 7.8015869,9.9146171 7.4115544,10.072739 6.9375,10.125 6.6402013,10.157562 5.91819,10.14811 4.78125,10.15625 l -3,0 0,-8.8125 z m 1.78125,1.46875 0,2.03125 1.15625,0 c 0.695019,0 1.143761,-0.016597 1.3125,-0.03125 C 6.3365719,4.7766823 6.5752354,4.6748557 6.75,4.5 6.9247548,4.3253071 6.9999935,4.0977395 7,3.8125 6.9999935,3.5393083 6.9319011,3.3270355 6.78125,3.15625 6.6305875,2.9854645 6.3910373,2.8798934 6.09375,2.84375 5.9169764,2.824213 5.4333978,2.8125 4.59375,2.8125 l -1.03125,0 z m 0,3.5 0,2.375 1.65625,0 C 5.8615402,8.6875 6.2647429,8.660818 6.4375,8.625 6.7026474,8.576158 6.9270184,8.4681535 7.09375,8.28125 7.2604686,8.0945093 7.3437435,7.8446553 7.34375,7.53125 7.3437435,7.2660358 7.2535466,7.028537 7.125,6.84375 6.9964306,6.658963 6.8368011,6.5219973 6.59375,6.4375 6.3506875,6.3528399 5.8115244,6.3125 5,6.3125 l -1.4375,0 z m 12.5,3.6875 -5.9375,5.9375 3.9375,0 c 1.108,0 2,-0.892 2,-2 l 0,-3.9375 z"
+ transform="translate(0,1036.3622)"
+ id="rect5513"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ <g
+ transform="matrix(1.6280795,0,0,1.6280795,-33.77627,-653.55881)"
+ id="text5587"
+ style="font-size:7.58050871px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-dns.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-dns.svg
new file mode 100644
index 00000000..5983dcdd
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-dns.svg
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg4880">
+ <defs
+ id="defs4882">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ </defs>
+ <metadata
+ id="metadata4885">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g3345">
+ <path
+ d="m 0.5635033,1.4915122 19.4241107,0 L 22,3.9486832 l 0,14.4759078 -4.533414,3.575397 -14.5454024,0 -2.2610521,-3.2614 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="matrix(1.375,0,0,1.375,-0.0859375,-1424.9121)"
+ id="layer1"
+ style="fill:#649be6;fill-opacity:1">
+ <path
+ d="m 2.0625,-0.0625 c -1.10799991,0 -2,0.892 -2,2 l 0,12 c 0,1.108 0.89200009,2 2,2 l 6.53125,0 7.46875,-7.5 0,-6.5 c 0,-1.108 -0.892,-2 -2,-2 l -12,0 z m 11,2.25 c 0.643064,0 1.143718,0.1810524 1.46875,0.53125 0.325024,0.3501976 0.483686,0.7903714 0.5,1.375 L 14,4.15625 C 13.95573,3.8292013 13.864369,3.6120121 13.71875,3.46875 13.573126,3.3254879 13.353741,3.2500111 13.0625,3.25 12.761934,3.2500111 12.545085,3.315334 12.375,3.46875 12.265491,3.567163 12.187498,3.7100379 12.1875,3.875 c -2e-6,0.1505066 0.05373,0.2679156 0.15625,0.375 0.130476,0.1360288 0.465479,0.2898912 0.96875,0.4375 0.503266,0.1476088 0.852596,0.2797712 1.09375,0.4375 0.241146,0.1577399 0.426194,0.3827435 0.5625,0.65625 0.136298,0.2735065 0.218746,0.6289591 0.21875,1.03125 -4e-6,0.3646754 -0.0869,0.6816335 -0.25,1 -0.163101,0.3183665 -0.38927,0.5639078 -0.6875,0.71875 -0.298237,0.1548422 -0.679982,0.25 -1.125,0.25 -0.647728,0 -1.121589,-0.1905913 -1.46875,-0.5625 -0.347163,-0.3719087 -0.557432,-0.9130136 -0.625,-1.625 l 1,-0.125 c 0.06058,0.4196553 0.189767,0.7094345 0.375,0.90625 0.185229,0.1968043 0.435454,0.3125 0.75,0.3125 0.33318,0 0.581076,-0.1060899 0.75,-0.28125 0.168918,-0.1751044 0.249996,-0.359319 0.25,-0.59375 -4e-6,-0.1505066 -0.05393,-0.3006034 -0.125,-0.40625 C 13.96018,6.3005922 13.864573,6.2344011 13.6875,6.15625 13.56634,6.1042013 13.274789,6.0081422 12.84375,5.875 12.28922,5.7042423 11.911175,5.4988976 11.6875,5.25 11.372956,4.8997913 11.21875,4.472352 11.21875,3.96875 c 0,-0.324151 0.0708,-0.6240612 0.21875,-0.90625 0.147951,-0.2821776 0.34657,-0.5086412 0.625,-0.65625 0.278427,-0.1475977 0.606237,-0.21875 1,-0.21875 z m -12.125,0.09375 1.875,0 c 0.4263783,0 0.7763215,0.044018 1,0.125 0.30056,0.1100045 0.5356406,0.3130101 0.75,0.59375 0.2143511,0.2807399 0.3881578,0.6246124 0.5,1.03125 0.1118329,0.4066376 0.1562452,0.9037914 0.15625,1.5 C 5.2187452,6.0551031 5.1673434,6.495858 5.0625,6.875 4.9343481,7.3380776 4.7689006,7.7134646 4.53125,8 4.3518398,8.2170666 4.1177199,8.4096878 3.8125,8.53125 3.5841616,8.62097 3.2571092,8.65625 2.875,8.65625 l -1.9375,0 0,-6.375 z m 5.1875,0 1,0 2.09375,4.25 0,-4.25 0.96875,0 0,6.375 -1.03125,0 L 7.09375,4.5 l 0,4.15625 -0.96875,0 0,-6.375 z M 1.96875,3.375 l 0,4.21875 0.78125,0 c 0.2889113,0 0.4968499,-0.022042 0.625,-0.0625 C 3.5427534,7.4792013 3.6705741,7.3744488 3.78125,7.25 3.8919193,7.1255512 3.9925979,6.9413254 4.0625,6.65625 4.1323947,6.3711635 4.1562463,5.960772 4.15625,5.46875 4.1562463,4.9767391 4.1323951,4.6071254 4.0625,4.34375 3.9925981,4.0803857 3.8758139,3.8663588 3.75,3.71875 3.6241795,3.5711523 3.474633,3.4896044 3.28125,3.4375 3.1367904,3.396931 2.8592187,3.375 2.4375,3.375 l -0.46875,0 z M 16.0625,10 l -5.9375,5.9375 3.9375,0 c 1.108,0 2,-0.892 2,-2 l 0,-3.9375 z"
+ transform="translate(0,1036.3622)"
+ id="rect5513"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-ems.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-ems.svg
new file mode 100644
index 00000000..2ffaf40c
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-ems.svg
@@ -0,0 +1,75 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg4880">
+ <defs
+ id="defs4882">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ </defs>
+ <metadata
+ id="metadata4885">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="matrix(1.2336999,0,0,1.5324837,39.905588,-1425.8443)"
+ id="text5639-4"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="g3487">
+ <path
+ d="m 0.563503,1.4915117 19.424111,0 L 22,3.9486825 l 0,14.4759085 -4.533414,3.575397 -14.545403,0 -2.261052,-3.2614 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(0,1.25e-5)"
+ id="g3529">
+ <g
+ transform="matrix(1.375,0,0,1.375,-0.0859375,-1424.9121)"
+ id="layer1"
+ style="fill:#649be6;fill-opacity:1">
+ <path
+ d="m 2.0625,-0.0625 c -1.10799991,0 -2,0.892 -2,2 l 0,12 c 0,1.108 0.89200009,2 2,2 l 6.53125,0 7.46875,-7.5 0,-6.5 c 0,-1.108 -0.892,-2 -2,-2 z m 14,10.0625 -5.9375,5.9375 3.9375,0 c 1.108,0 2,-0.892 2,-2 z"
+ transform="translate(0,1036.3622)"
+ id="rect5513"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3921381,0,0,1.3921381,-0.1371048,0.09814145)"
+ id="text3454"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold">
+ <path
+ d="m 12.75,2.6875 c -0.357586,4.7e-6 -0.684653,0.048345 -0.9375,0.15625 C 11.559651,2.9516647 11.384358,3.1062055 11.25,3.3125 11.115641,3.5188027 11.03125,3.7630245 11.03125,4 c 0,0.3681671 0.151855,0.6814806 0.4375,0.9375 0.203124,0.1819685 0.558918,0.3126649 1.0625,0.4375 0.391436,0.097333 0.639972,0.1806659 0.75,0.21875 0.160805,0.057131 0.27921,0.1102717 0.34375,0.1875 0.06453,0.077231 0.09375,0.1712254 0.09375,0.28125 C 13.718746,6.2338879 13.6534,6.40324 13.5,6.53125 13.346596,6.6592616 13.115069,6.7187508 12.8125,6.71875 12.526854,6.7187508 12.293211,6.643881 12.125,6.5 11.956786,6.3561209 11.83626,6.1193047 11.78125,5.8125 L 10.875,5.90625 c 0.06136,0.5205088 0.247233,0.9156093 0.5625,1.1875 0.315266,0.2718913 0.755532,0.4062499 1.34375,0.40625 0.404131,-1e-7 0.760413,-0.04305 1.03125,-0.15625 0.27083,-0.1131997 0.476884,-0.2985023 0.625,-0.53125 0.148108,-0.2327466 0.218746,-0.4833973 0.21875,-0.75 -4e-6,-0.2941064 -0.06372,-0.550047 -0.1875,-0.75 -0.123783,-0.1999489 -0.28101,-0.3534318 -0.5,-0.46875 C 13.749752,4.7284369 13.394529,4.639163 12.9375,4.53125 12.480467,4.4233429 12.180988,4.3182 12.0625,4.21875 11.9694,4.140466 11.937498,4.0475295 11.9375,3.9375 c -2e-6,-0.1206018 0.0568,-0.240556 0.15625,-0.3125 0.154458,-0.1121379 0.352049,-0.156246 0.625,-0.15625 0.264483,4e-6 0.461504,0.051518 0.59375,0.15625 0.13224,0.10474 0.241045,0.2921582 0.28125,0.53125 l 0.9375,-0.0625 C 14.516435,3.6663449 14.357662,3.3185262 14.0625,3.0625 13.767331,2.8064825 13.333982,2.6875047 12.75,2.6875 z m -11.40625,0.09375 0,4.65625 3.53125,0 0,-0.8125 -2.59375,0 0,-1.25 2.34375,0 0,-0.78125 -2.34375,0 0,-1.03125 2.5,0 0,-0.78125 -3.4375,0 z m 4.34375,0 0,4.65625 0.875,0 0,-3.6875 0.90625,3.6875 0.90625,0 0.90625,-3.6875 0,3.6875 0.875,0 0,-4.65625 -1.40625,0 -0.8125,3.15625 -0.84375,-3.15625 -1.40625,0 z"
+ id="path3459"
+ style="font-size:6.5px" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-mediator.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-mediator.svg
new file mode 100644
index 00000000..cf48e03b
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-mediator.svg
@@ -0,0 +1,78 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg4880">
+ <defs
+ id="defs4882">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ </defs>
+ <metadata
+ id="metadata4885">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g6607">
+ <path
+ d="m 0.563503,1.4915112 19.424111,0 L 22,3.948682 l 0,14.475909 -4.533414,3.575397 -14.545403,0 -2.261052,-3.2614 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(0,1.25e-5)"
+ id="g3561">
+ <g
+ id="g3529">
+ <g
+ transform="matrix(1.375,0,0,1.375,-0.0859375,-1424.9121)"
+ id="layer1"
+ style="fill:#649be6;fill-opacity:1">
+ <path
+ d="m 2.0625,-0.0625 c -1.10799991,0 -2,0.892 -2,2 l 0,12 c 0,1.108 0.89200009,2 2,2 l 6.53125,0 7.46875,-7.5 0,-6.5 c 0,-1.108 -0.892,-2 -2,-2 z m 14,10.0625 -5.9375,5.9375 3.9375,0 c 1.108,0 2,-0.892 2,-2 z"
+ transform="translate(0,1036.3622)"
+ id="rect5513"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3921381,0,0,1.3921381,-0.1371048,0.09814145)"
+ id="text3454"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <text
+ x="2.9483745"
+ y="11.366343"
+ id="text3536"
+ xml:space="preserve"
+ style="font-size:10.580513px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"><tspan
+ x="2.9483745"
+ y="11.366343"
+ id="tspan3538">ME</tspan></text>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-netnumen.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-netnumen.svg
new file mode 100644
index 00000000..34aeb5d8
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-netnumen.svg
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg4880">
+ <defs
+ id="defs4882">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ </defs>
+ <metadata
+ id="metadata4885">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g3702">
+ <path
+ d="m 0.563503,1.4915106 19.424111,0 L 22,3.9486814 l 0,14.4759096 -4.533414,3.575397 -14.545403,0 -2.261052,-3.2614 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="matrix(1.375,0,0,1.375,-0.0859375,-1424.9121)"
+ id="layer1"
+ style="fill:#649be6;fill-opacity:1">
+ <path
+ d="m 2.0625,-0.0625 c -1.10799996,0 -2,0.892 -2,2 l 0,12 c 0,1.108 0.89200004,2 2,2 l 6.53125,0 7.46875,-7.5 0,-6.5 c 0,-1.108 -0.892,-2 -2,-2 l -12,0 z m -0.28125,1.28125 1.75,0 3.65625,5.9375 0,-5.9375 1.65625,0 0,8.90625 -1.8125,0 -3.59375,-5.8125 0,5.8125 -1.65625,0 0,-8.90625 z M 16.0625,10 l -5.9375,5.9375 3.9375,0 c 1.108,0 2,-0.892 2,-2 l 0,-3.9375 z"
+ transform="translate(0,1036.3622)"
+ id="rect5513"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ <g
+ id="text5639"
+ style="font-size:12.46147919px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-ntp.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-ntp.svg
new file mode 100644
index 00000000..379ce5a3
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-ntp.svg
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg4880">
+ <defs
+ id="defs4882">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ </defs>
+ <metadata
+ id="metadata4885">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g3757">
+ <g
+ id="g3763">
+ <path
+ d="m 0.5635025,1.491474 19.4241115,0 L 22,3.9486448 l 0,14.4759082 -4.533415,3.575397 -14.5454025,0 -2.261052,-3.2614 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="matrix(1.375,0,0,1.375,-0.0859375,-1424.9121)"
+ id="layer1"
+ style="fill:#649be6;fill-opacity:1">
+ <path
+ d="m 2.0625,-0.0625 c -1.10799996,0 -2,0.892 -2,2 l 0,12 c 0,1.108 0.89200004,2 2,2 l 6.53125,0 7.46875,-7.5 0,-6.5 c 0,-1.108 -0.892,-2 -2,-2 l -12,0 z m -1.09375,2.34375 1.0625,0 2.21875,4.25 0,-4.25 1,0 0,6.375 -1.09375,0 L 1.96875,4.5 l 0,4.15625 -1,0 0,-6.375 z m 5.0625,0 4.28125,0 0,1.09375 -1.59375,0 0,5.28125 -1.09375,0 0,-5.28125 -1.59375,0 0,-1.09375 z m 5,0 1.75,0 c 0.66306,1.09e-5 1.079872,0.030025 1.28125,0.09375 0.309425,0.095533 0.572504,0.3051921 0.78125,0.625 0.208737,0.3198188 0.312494,0.7435117 0.3125,1.25 -6e-6,0.3907304 -0.06717,0.702484 -0.1875,0.96875 C 14.848411,5.485016 14.716657,5.7230481 14.53125,5.875 14.345834,6.0269411 14.129048,6.1070504 13.9375,6.15625 13.677184,6.2170438 13.30611,6.25 12.8125,6.25 l -0.6875,0 0,2.40625 -1.09375,0 0,-6.375 z M 12.125,3.375 l 0,1.8125 0.59375,0 c 0.42976,0 0.698855,-0.058344 0.84375,-0.125 0.144888,-0.066548 0.261478,-0.1706768 0.34375,-0.3125 0.08227,-0.1418124 0.124996,-0.3118758 0.125,-0.5 -4e-6,-0.2315375 -0.07208,-0.4120028 -0.1875,-0.5625 C 13.728325,3.5370028 13.583063,3.443877 13.40625,3.40625 13.27609,3.3773729 13.017923,3.375 12.625,3.375 l -0.5,0 z m 3.9375,6.625 -5.9375,5.9375 3.9375,0 c 1.108,0 2,-0.892 2,-2 l 0,-3.9375 z"
+ transform="translate(0,1036.3622)"
+ id="rect5513"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ <g
+ transform="scale(0.92114662,1.0856035)"
+ id="text5639"
+ style="font-size:8.18998528px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-ota.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-ota.svg
new file mode 100644
index 00000000..a2b18fc4
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-ota.svg
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg4880">
+ <defs
+ id="defs4882">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ </defs>
+ <metadata
+ id="metadata4885">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g3869">
+ <path
+ d="m 0.5635023,1.4915237 19.4241117,0 L 22,3.9486945 22,18.424603 17.466585,22 2.921183,22 0.6601303,18.7386 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="matrix(1.375,0,0,1.375,-0.0859375,-1424.9121)"
+ id="layer1"
+ style="fill:#649be6;fill-opacity:1">
+ <path
+ d="m 2.0625,-0.0625 c -1.10799991,0 -2,0.892 -2,2 l 0,12 c 0,1.108 0.89200009,2 2,2 l 6.53125,0 7.46875,-7.5 0,-6.5 c 0,-1.108 -0.892,-2 -2,-2 l -12,0 z m 1.15625,2.25 c 0.7549006,0 1.3593203,0.2932692 1.8125,0.875 C 5.4844204,3.6442531 5.6874947,4.4326127 5.6875,5.46875 5.6874947,6.4962051 5.4809254,7.3259569 5.03125,7.90625 4.5815653,8.4865431 3.9713207,8.75 3.21875,8.75 2.456854,8.75 1.8559291,8.4836564 1.40625,7.90625 0.9565689,7.3288547 0.71874969,6.5129884 0.71875,5.5 0.71874969,4.8516981 0.81264294,4.3149287 0.96875,3.875 1.0852469,3.5508602 1.2359584,3.257591 1.4375,3 1.6390395,2.742409 1.8537636,2.56196 2.09375,2.4375 c 0.3192013,-0.1678599 0.7079364,-0.25 1.125,-0.25 z m 2.90625,0.09375 4.09375,0 0,1.09375 -1.53125,0 0,5.28125 -1.03125,0 0,-5.28125 -1.53125,0 0,-1.09375 z m 6.21875,0 1.09375,0 2.0625,6.375 -1.125,0 -0.4375,-1.4375 -2.0625,0 -0.40625,1.4375 -1.125,0 2,-6.375 z m -9.125,1 C 2.7923665,3.2812611 2.4484525,3.4492846 2.1875,3.8125 1.926544,4.1757376 1.7812487,4.7365126 1.78125,5.46875 c -1.3e-6,0.7206686 0.1383041,1.2531024 0.40625,1.625 0.2679423,0.3719199 0.6188463,0.5625 1.03125,0.5625 0.4123982,0 0.735547,-0.1622391 1,-0.53125 C 4.4831953,6.7559891 4.6249958,6.175533 4.625,5.4375 4.6249958,4.7081604 4.5074556,4.171391 4.25,3.8125 3.9925369,3.4536202 3.6451278,3.2812611 3.21875,3.28125 z m 9.65625,0.5 -0.6875,2.34375 1.40625,0 L 12.875,3.78125 z M 16.0625,10 l -5.9375,5.9375 3.9375,0 c 1.108,0 2,-0.892 2,-2 l 0,-3.9375 z"
+ transform="translate(0,1036.3622)"
+ id="rect5513"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-tomcat.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-tomcat.svg
new file mode 100644
index 00000000..ca672889
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-tomcat.svg
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg4880">
+ <defs
+ id="defs4882">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ </defs>
+ <metadata
+ id="metadata4885">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="matrix(1.2927463,0,0,1.4624873,-0.0859375,-1424.9121)"
+ id="text5639"
+ style="font-size:9.64237309px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="g3955">
+ <path
+ d="m 0.5635014,1.4915235 19.4241126,0 L 22,3.948694 22,18.424603 17.466585,22 2.9211824,22 0.6601294,18.7386 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <path
+ d="m 2.75,1.3e-6 c -1.5234999,0 -2.75,1.2265 -2.75,2.75 L 0,19.25 C 0,20.773501 1.2265001,22 2.75,22 L 11.730469,22 22,11.687501 22,2.7500013 c 0,-1.5235 -1.2265,-2.75 -2.75,-2.75 l -16.5,0 z m 10.054688,3.09375 c 1.091505,1.46e-5 1.982369,0.3443499 2.664062,1.0742187 0.405758,0.4315069 0.699453,1.0827178 0.902344,1.890625 L 14.609375,6.5312513 C 14.503874,6.0079442 14.299596,5.588141 13.964844,5.2851575 13.630082,4.9822032 13.197549,4.8125159 12.71875,4.8125013 c -0.661403,1.46e-5 -1.177994,0.279337 -1.589844,0.8164062 -0.411855,0.5370838 -0.644533,1.4184027 -0.644531,2.6210935 -2e-6,1.276152 0.238762,2.165355 0.644531,2.707031 0.405763,0.541661 0.897645,0.816406 1.546875,0.816406 0.4788,0 0.901187,-0.171341 1.246094,-0.515625 0.344894,-0.344284 0.580328,-0.893759 0.730469,-1.632812 l 1.761718,0.644531 c -0.267812,1.101706 -0.709189,1.914431 -1.332031,2.449219 -0.622858,0.534787 -1.405679,0.816406 -2.363281,0.816406 -1.184841,0 -2.159037,-0.459205 -2.9218754,-1.375 -0.762841,-0.915795 -1.160157,-2.192945 -1.160156,-3.781249 -10e-7,-1.6800912 0.393257,-2.9805852 1.160156,-3.9101567 0.7668964,-0.9295569 1.7580494,-1.3749854 3.0078134,-1.375 z M 0.6875,3.2656263 l 7.0898436,0 0,1.71875 -2.621094,0 0,8.3789057 -1.8046871,0 0,-8.3789057 -2.6640625,0 0,-1.71875 z M 22,13.835938 13.835938,22 19.25,22 C 20.7735,22 22,20.773501 22,19.25 l 0,-5.414062 z"
+ id="rect5513"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-trend.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-trend.svg
new file mode 100644
index 00000000..e939b4a5
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-trend.svg
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg4880">
+ <defs
+ id="defs4882">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ </defs>
+ <metadata
+ id="metadata4885">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g4041">
+ <path
+ d="m 0.563501,1.4915112 19.424113,0 L 22,3.9486817 l 0,14.4759093 -4.533415,3.575397 -14.545403,0 -2.261053,-3.2614 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="matrix(1.375,0,0,1.375,-0.0859375,-1424.9121)"
+ id="layer1"
+ style="fill:#649be6;fill-opacity:1">
+ <path
+ d="m 2.0625,-0.0625 c -1.10799991,0 -2,0.892 -2,2 l 0,12 c 0,1.108 0.89200009,2 2,2 l 6.53125,0 7.46875,-7.5 0,-6.5 c 0,-1.108 -0.892,-2 -2,-2 l -12,0 z m -1.5,2.375 5.15625,0 0,1.25 -1.90625,0 0,6.09375 -1.3125,0 0,-6.09375 -1.9375,0 0,-1.25 z m 6,0 1.96875,0 1.15625,5 1.1875,-5 1.96875,0 0,7.34375 -1.21875,0 0,-5.78125 -1.3125,5.78125 -1.25,0 -1.28125,-5.78125 0,5.78125 -1.21875,0 0,-7.34375 z m 9.5,7.6875 -5.9375,5.9375 3.9375,0 c 1.108,0 2,-0.892 2,-2 l 0,-3.9375 z"
+ transform="translate(0,1036.3622)"
+ id="rect5513"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ <g
+ transform="scale(0.94017912,1.0636271)"
+ id="text5639"
+ style="font-size:9.64237309px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-tsm.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-tsm.svg
new file mode 100644
index 00000000..5a910ee6
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-tsm.svg
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg4880">
+ <defs
+ id="defs4882">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ </defs>
+ <metadata
+ id="metadata4885">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="matrix(1.2927463,0,0,1.4624873,26.947961,-1428.268)"
+ id="text5639-6"
+ style="font-size:9.64237309px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="g4126">
+ <path
+ d="m 0.5635008,1.4915114 19.4241132,0 L 22,3.9486819 l 0,14.4759091 -4.533415,3.575397 -14.5454032,0 -2.261053,-3.2614 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="matrix(1.375,0,0,1.375,-0.0859375,-1424.9121)"
+ id="layer1"
+ style="fill:#649be6;fill-opacity:1">
+ <path
+ d="m 2.0625,-0.0625 c -1.10799991,0 -2,0.892 -2,2 l 0,12 c 0,1.108 0.89200009,2 2,2 l 6.53125,0 7.46875,-7.5 0,-6.5 c 0,-1.108 -0.892,-2 -2,-2 l -12,0 z m 5.03125,2.25 c 0.6430635,0 1.1437183,0.1810524 1.46875,0.53125 0.325024,0.3501976 0.4836864,0.7903714 0.5,1.375 L 8.03125,4.15625 C 7.9869777,3.8292013 7.8956188,3.6120121 7.75,3.46875 7.6043752,3.3254879 7.3849913,3.2500111 7.09375,3.25 6.7931843,3.2500111 6.5450847,3.3153344 6.375,3.46875 6.2654908,3.5671633 6.2187486,3.7100379 6.21875,3.875 6.2187486,4.0255066 6.2724805,4.1429156 6.375,4.25 6.5054755,4.3860288 6.8404786,4.5398912 7.34375,4.6875 7.8470164,4.8351088 8.1963467,4.9672712 8.4375,5.125 8.6786461,5.2827399 8.8636938,5.5077435 9,5.78125 9.1362983,6.0547565 9.2187455,6.4102091 9.21875,6.8125 c -4.5e-6,0.3646754 -0.086905,0.6816335 -0.25,1 -0.1631005,0.3183665 -0.3892701,0.5639078 -0.6875,0.71875 -0.2982369,0.1548422 -0.6799822,0.25 -1.125,0.25 -0.6477281,0 -1.1215886,-0.1905913 -1.46875,-0.5625 C 5.3403368,7.8468413 5.1300683,7.3057364 5.0625,6.59375 l 1,-0.125 c 0.060577,0.4196553 0.1897675,0.7094345 0.375,0.90625 0.1852293,0.1968043 0.4354545,0.3125 0.75,0.3125 0.3331803,0 0.5810755,-0.1060899 0.75,-0.28125 C 8.1064181,7.2311456 8.1874967,7.046931 8.1875,6.8125 8.1874967,6.6619934 8.1335602,6.5118966 8.0625,6.40625 7.9914335,6.3005922 7.8958233,6.2344011 7.71875,6.15625 7.5975898,6.1042013 7.3060384,6.0081422 6.875,5.875 6.3204701,5.7042423 5.9424242,5.4988976 5.71875,5.25 5.4042061,4.8997913 5.2499996,4.472352 5.25,3.96875 5.2499996,3.644599 5.3207975,3.3446888 5.46875,3.0625 5.6167011,2.7803224 5.8153198,2.5538588 6.09375,2.40625 6.3721776,2.2586523 6.6999864,2.1875 7.09375,2.1875 z m -6.53125,0.09375 4.09375,0 0,1.09375 -1.53125,0 0,5.28125 -1.03125,0 0,-5.28125 -1.53125,0 0,-1.09375 z m 9.53125,0 1.53125,0 0.9375,4.34375 0.90625,-4.34375 1.5625,0 0,6.375 -0.96875,0 0,-5 -1,5 -1,0 -1.03125,-5 0,5 -0.9375,0 0,-6.375 z M 16.0625,10 l -5.9375,5.9375 3.9375,0 c 1.108,0 2,-0.892 2,-2 l 0,-3.9375 z"
+ transform="translate(0,1036.3622)"
+ id="rect5513"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-weblogic.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-weblogic.svg
new file mode 100644
index 00000000..4bc81632
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app-weblogic.svg
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg4880">
+ <defs
+ id="defs4882">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ </defs>
+ <metadata
+ id="metadata4885">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g4208">
+ <path
+ d="m 0.5635008,1.4915108 19.4241132,0 L 22,3.9486813 l 0,14.4759097 -4.533415,3.575397 -14.5454032,0 -2.261053,-3.2614 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="matrix(1.375,0,0,1.375,-0.0859375,-1424.9121)"
+ id="layer1"
+ style="fill:#649be6;fill-opacity:1">
+ <path
+ d="m 2.0625,-0.0625 c -1.10799991,0 -2,0.892 -2,2 l 0,12 c 0,1.108 0.89200009,2 2,2 l 6.53125,0 7.46875,-7.5 0,-6.5 c 0,-1.108 -0.892,-2 -2,-2 l -12,0 z m -1.625,2.34375 1.0625,0 0.78125,4.375 0.9375,-4.375 1.21875,0 L 5.34375,6.75 6.125,2.28125 l 1.03125,0 -1.21875,6.375 -1.125,0 -1,-4.75 -1.03125,4.75 -1.125,0 -1.21875,-6.375 z m 7.28125,0.0625 1.03125,0 0,5.25 2.5625,0 0,1.0625 -3.59375,0 0,-6.3125 z M 16.0625,10 l -5.9375,5.9375 3.9375,0 c 1.108,0 2,-0.892 2,-2 l 0,-3.9375 z"
+ transform="translate(0,1036.3622)"
+ id="rect5513"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app.svg
new file mode 100644
index 00000000..b399b36f
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-app.svg
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg4880">
+ <defs
+ id="defs4882">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ </defs>
+ <metadata
+ id="metadata4885">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,6)"
+ id="text7462"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="g3192">
+ <path
+ d="m 2.9211827,1.4915136 17.0664313,0 C 21.87426,1.3871367 21.423866,1.8932247 22,3.9486847 l 0,14.4759063 c -2.85343,0.458037 -3.186403,1.268606 -4.533414,3.575397 l -14.5454033,0 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="matrix(1.375,0,0,1.375,-0.0859375,-1424.9121)"
+ id="layer1"
+ style="fill:#649be6;fill-opacity:1">
+ <path
+ d="m 2.0625,-0.0625 c -1.10799996,0 -2,0.892 -2,2 l 0,12 c 0,1.108 0.89200004,2 2,2 l 6.53125,0 7.46875,-7.5 0,-6.5 c 0,-1.108 -0.892,-2 -2,-2 l -4.96875,0 -4.625,0 -2.40625,0 z m 6,1.25 c 3.184248,0 5.78125,2.5970024 5.78125,5.78125 0,3.184247 -2.597002,5.8125 -5.78125,5.8125 -3.1842476,0 -5.78125,-2.628253 -5.78125,-5.8125 0,-3.1842476 2.5970024,-5.78125 5.78125,-5.78125 z m 0,1.65625 c -2.3011154,0 -4.15625,1.8238846 -4.15625,4.125 0,2.3011152 1.8551346,4.15625 4.15625,4.15625 2.301116,0 4.15625,-1.8551348 4.15625,-4.15625 0,-2.3011154 -1.855134,-4.125 -4.15625,-4.125 z m -0.5625,1.625 1.0625,0 2,5.03125 -1.09375,0 -0.4375,-1.15625 -2,0 L 6.625,9.5 5.5625,9.5 7.5,4.46875 z M 8.03125,5.65625 7.34375,7.5 l 1.375,0 -0.6875,-1.84375 z M 16.0625,10 l -5.9375,5.9375 3.9375,0 c 1.108,0 2,-0.892 2,-2 l 0,-3.9375 z"
+ transform="translate(0,1036.3622)"
+ id="rect5513"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ <g
+ transform="matrix(1.6280795,0,0,1.6280795,-33.77627,-653.55881)"
+ id="text5587"
+ style="font-size:7.58050871px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-cluster-hacmp.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-cluster-hacmp.svg
new file mode 100644
index 00000000..68a5ad63
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-cluster-hacmp.svg
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg4880">
+ <defs
+ id="defs4882">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ </defs>
+ <metadata
+ id="metadata4885">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="matrix(1.375,0,0,1.3748969,0,-1424.9754)"
+ id="layer1"
+ style="fill:#649be6;fill-opacity:1">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <path
+ d="m 1.34375,1036.4235 0,1.2607 4.1967567,0 0,5.0428 2.1936712,0 0,1.4547 -3.2654279,0 0,-5.3984 -4.46875,0 0,13.6414 4.46875,0 0,-6.0772 3.2654279,0 0,0.5495 4.4687501,0 0,-8.1137 -4.4687501,0 0,2.683 -1.2561712,0 0,-5.0428 z m 7.7341779,0 0,1.2607 4.1080221,0 0,9.2128 0.9375,0 0,-10.4735 z m -2.4216779,11.0953 -1.90625,4.5503 1.0625,0 0.375,-1.0991 1.9375,0 0.4375,1.0991 1.0625,0 -1.9375,-4.5503 z m 3.4375,0 0,4.5503 1,0 0,-4.5503 z m 1.5625,0 1.5,2.0289 -1.625,2.5214 1.15625,0 1.0625,-1.6809 1.09375,1.6809 1.15625,0 -1.65625,-2.489 1.53125,-2.0613 -1.15625,0 -0.9375,1.2854 -0.96875,-1.2854 z m -4.5,0.8652 0.65625,1.7779 -1.3125,0 z"
+ id="rect6001"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-cluster-nec.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-cluster-nec.svg
new file mode 100644
index 00000000..4236655e
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-cluster-nec.svg
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg4880">
+ <defs
+ id="defs4882">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ </defs>
+ <metadata
+ id="metadata4885">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-1425.084)"
+ id="layer1"
+ style="fill:#649be6;fill-opacity:1">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <path
+ d="m 1.34375,0.0625 0,1.25 4.1875,0 0,5.0625 2.1875,0 0,1.4375 -3.25,0 0,-5.40625 -4.46875,0 0,13.65625 4.46875,0 0,-6.0625 3.25,0 0,0.53125 4.46875,0 0,-8.125 -4.46875,0 0,2.6875 -1.25,0 0,-5.03125 -5.125,0 z m 7.71875,0 0,1.25 4.125,0 0,9.21875 0.9375,0 0,-10.46875 -5.0625,0 z M 14.4375,11 c -0.539262,0 -0.950342,0.23425 -1.28125,0.65625 -0.33091,0.4221 -0.500001,0.9872 -0.5,1.75 -10e-7,0.7212 0.17084,1.30295 0.5,1.71875 0.329158,0.4158 0.738753,0.625 1.25,0.625 0.413197,0 0.762493,-0.1321 1.03125,-0.375 0.268752,-0.2428 0.446941,-0.59355 0.5625,-1.09375 l -0.75,-0.3125 c -0.06478,0.3356 -0.163681,0.5937 -0.3125,0.75 -0.148825,0.1565 -0.324653,0.25 -0.53125,0.25 -0.280137,0 -0.512418,-0.1291 -0.6875,-0.375 -0.175087,-0.2459 -0.281251,-0.6706 -0.28125,-1.25 -10e-7,-0.5461 0.103538,-0.9437 0.28125,-1.1875 0.177709,-0.2439 0.40211,-0.34375 0.6875,-0.34375 0.206597,0 0.386803,0.05 0.53125,0.1875 0.144441,0.1376 0.23573,0.3249 0.28125,0.5625 L 16,12.34375 C 15.912454,11.97695 15.768831,11.6959 15.59375,11.5 15.299605,11.1686 14.908474,11 14.4375,11 z m -9.125,0.09375 0,4.5625 0.71875,0 0,-2.96875 1.5625,2.96875 0.78125,0 0,-4.5625 -0.71875,0 0,3.0625 -1.59375,-3.0625 -0.75,0 z m 3.875,0 0,4.5625 2.9375,0 0,-0.75 -2.15625,0 0,-1.25 1.9375,0 0,-0.78125 -1.9375,0 0,-1 2.09375,0 0,-0.78125 -2.875,0 z"
+ transform="translate(0,1036.3622)"
+ id="rect6001"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-cluster-ns.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-cluster-ns.svg
new file mode 100644
index 00000000..f6d602b4
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-cluster-ns.svg
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg4880">
+ <defs
+ id="defs4882">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ </defs>
+ <metadata
+ id="metadata4885">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="matrix(1.4509338,0,0,1.375,0,-1425.0843)"
+ id="layer1"
+ style="fill:#649be6;fill-opacity:1">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <path
+ d="m 1.34375,0.0625 0,1.25 4.1875,0 0,5.0625 2.1875,0 0,1.4375 -3.25,0 0,-5.40625 -4.46875,0 0,13.65625 4.46875,0 0,-6.0625 3.25,0 0,0.53125 4.46875,0 0,-8.125 -4.46875,0 0,2.6875 -1.25,0 0,-5.03125 z m 7.71875,0 0,1.25 4.125,0 0,9.21875 0.9375,0 0,-10.46875 z m 4.318899,11.23814 c -0.33008,0 -0.610353,0.05625 -0.84375,0.15625 -0.233399,0.0996 -0.407227,0.2471 -0.53125,0.4375 -0.124025,0.1904 -0.1875,0.37505 -0.1875,0.59375 0,0.3399 0.142577,0.6387 0.40625,0.875 0.187499,0.168 0.503905,0.3223 0.96875,0.4375 0.361326,0.0895 0.617185,0.1525 0.71875,0.1875 0.148435,0.0527 0.25293,0.1165 0.3125,0.1875 0.05957,0.0713 0.0625,0.1485 0.0625,0.25 -3e-6,0.1582 -0.0459,0.28805 -0.1875,0.40625 -0.141604,0.1182 -0.376956,0.1875 -0.65625,0.1875 -0.263674,0 -0.469729,-0.08595 -0.625,-0.21875 -0.155275,-0.1328 -0.26172,-0.3418 -0.3125,-0.625 l -0.84375,0.09375 c 0.05664,0.4805 0.240234,0.84275 0.53125,1.09375 0.291014,0.251 0.70703,0.375 1.25,0.375 0.373045,0 0.687497,-0.05175 0.9375,-0.15625 0.249997,-0.1045 0.457028,-0.25395 0.59375,-0.46875 0.136718,-0.2148 0.187496,-0.4414 0.1875,-0.6875 -4e-6,-0.2715 -0.042,-0.5029 -0.15625,-0.6875 -0.114261,-0.1846 -0.297855,-0.3311 -0.5,-0.4375 -0.202151,-0.1065 -0.515628,-0.2125 -0.9375,-0.3125 -0.421877,-0.0996 -0.671877,-0.18925 -0.78125,-0.28125 -0.08594,-0.0723 -0.125002,-0.17975 -0.125,-0.28125 -2e-6,-0.1114 0.0332,-0.184 0.125,-0.25 0.142576,-0.1033 0.341795,-0.15625 0.59375,-0.15625 0.244138,0 0.440427,0.05925 0.5625,0.15625 0.122068,0.0967 0.18164,0.24805 0.21875,0.46875 l 0.875,-0.03125 c -0.01367,-0.3945 -0.165043,-0.73245 -0.4375,-0.96875 -0.272464,-0.2363 -0.67969,-0.34375 -1.21875,-0.34375 z m -6.7597922,-0.08942 0,4.3125 0.78125,0 0,-2.8125 1.75,2.8125 0.8750002,0 0,-4.3125 -0.8125002,0 0,2.875 -1.75,-2.875 z"
+ transform="translate(0,1036.3622)"
+ id="rect6001"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-cluster-sg.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-cluster-sg.svg
new file mode 100644
index 00000000..54400322
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-cluster-sg.svg
@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg9974">
+ <defs
+ id="defs9976">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ </defs>
+ <metadata
+ id="metadata9979">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="scale(1.3845193,1.375)"
+ id="layer1"
+ style="fill:#649be6;fill-opacity:1">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3"
+ style="fill:#649be6;fill-opacity:1">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <path
+ d="m 1.34375,1036.4247 0,1.25 4.1875,0 0,5.0625 2.1875,0 0,1.4375 -3.25,0 0,-5.4062 -4.46875,0 0,13.6562 4.46875,0 0,-6.0625 3.25,0 0,0.5313 4.46875,0 0,-8.125 -4.46875,0 0,2.6875 -1.25,0 0,-5.0313 z m 7.71875,0 0,1.25 4.125,0 0,9.2188 0.9375,0 0,-10.4688 z m -1.5064653,11.4725 0,4.3125 0.875,0 0,-1.875 1.6875003,0 0,1.875 0.875,0 0,-4.3125 -0.875,0 0,1.6875 -1.6875003,0 0,-1.6875 z m 5.0527073,0 0,4.3125 0.875,0 0,-1.625 0.5625,0 c 0.392575,0 0.699216,-0.022 0.90625,-0.062 0.15234,-0.033 0.290036,-0.1162 0.4375,-0.2187 0.147457,-0.1026 0.27929,-0.2266 0.375,-0.4063 0.0957,-0.1796 0.124997,-0.3925 0.125,-0.6562 -3e-6,-0.3418 -0.08399,-0.628 -0.25,-0.8438 -0.166019,-0.2158 -0.347659,-0.3735 -0.59375,-0.4375 -0.160159,-0.042 -0.503909,-0.062 -1.03125,-0.062 z m 0.875,0.75 0.40625,0 c 0.312498,0 0.521482,0.011 0.625,0.031 0.140622,0.025 0.25195,0.086 0.34375,0.1875 0.0918,0.1016 0.156247,0.2188 0.15625,0.375 0,0.127 -0.02832,0.2477 -0.09375,0.3437 -0.06543,0.096 -0.166018,0.1425 -0.28125,0.1875 -0.115237,0.045 -0.345705,0.094 -0.6875,0.094 l -0.46875,0 z"
+ id="rect6001-0"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-cluster-vcs.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-cluster-vcs.svg
new file mode 100644
index 00000000..dfec65ee
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-cluster-vcs.svg
@@ -0,0 +1,78 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg9974">
+ <defs
+ id="defs9976">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-8" />
+ </defs>
+ <metadata
+ id="metadata9979">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="scale(1.375,1.375)"
+ id="layer1"
+ style="fill:#649be6;fill-opacity:1">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-7"
+ style="fill:#649be6;fill-opacity:1">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639-9"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068-3"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125-1"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <path
+ d="m 1.34375,0.0625 0,1.25 4.1875,0 0,5.0625 2.1875,0 0,1.4375 -3.25,0 0,-5.40625 -4.46875,0 0,13.65625 4.46875,0 0,-6.0625 3.25,0 0,0.53125 4.46875,0 0,-8.125 -4.46875,0 0,2.6875 -1.25,0 0,-5.03125 z m 7.71875,0 0,1.25 4.125,0 0,9.21875 0.9375,0 0,-10.46875 z m 1.71875,11.540281 c -0.544703,1.1e-5 -0.9782528,0.198244 -1.3125,0.59375 -0.3342492,0.395506 -0.5000003,0.941407 -0.5,1.65625 -3e-7,0.675781 0.1675193,1.204077 0.5,1.59375 0.332479,0.389673 0.764843,0.59375 1.28125,0.59375 0.417366,0 0.759781,-0.11623 1.03125,-0.34375 0.271463,-0.22752 0.445774,-0.562496 0.5625,-1.03125 l -0.75,-0.28125 c -0.06544,0.31445 -0.193429,0.540994 -0.34375,0.6875 -0.150326,0.14618 -0.322569,0.21875 -0.53125,0.21875 -0.282964,0 -0.51065,-0.113288 -0.6875,-0.34375 -0.1768571,-0.230462 -0.250001,-0.613282 -0.25,-1.15625 -10e-7,-0.511714 0.070496,-0.865232 0.25,-1.09375 0.179502,-0.228508 0.430481,-0.343739 0.71875,-0.34375 0.208682,1.1e-5 0.385344,0.0586 0.53125,0.1875 0.145899,0.128903 0.235261,0.308596 0.28125,0.53125 l 0.78125,-0.21875 c -0.08843,-0.343739 -0.229402,-0.597647 -0.40625,-0.78125 -0.297113,-0.310541 -0.680523,-0.468739 -1.15625,-0.46875 z m 3.59375,0 c -0.29888,1.1e-5 -0.538664,0.05663 -0.75,0.15625 -0.211338,0.09962 -0.3877,0.247067 -0.5,0.4375 -0.112299,0.190433 -0.15625,0.375005 -0.15625,0.59375 0,0.33984 0.105,0.638674 0.34375,0.875 0.169777,0.167965 0.485344,0.322258 0.90625,0.4375 0.327173,0.08986 0.533031,0.152295 0.625,0.1875 0.134405,0.05274 0.227306,0.116249 0.28125,0.1875 0.05394,0.07129 0.09375,0.148483 0.09375,0.25 -2e-6,0.158202 -0.09054,0.288024 -0.21875,0.40625 -0.12822,0.118331 -0.309605,0.1875 -0.5625,0.1875 -0.238751,0 -0.421904,-0.08592 -0.5625,-0.21875 -0.140598,-0.132771 -0.23527,-0.341793 -0.28125,-0.625 l -0.78125,0.09375 c 0.05129,0.480471 0.236491,0.842795 0.5,1.09375 0.263508,0.25106 0.633352,0.375 1.125,0.375 0.337784,0 0.617378,-0.05221 0.84375,-0.15625 0.226366,-0.104459 0.407451,-0.253946 0.53125,-0.46875 0.123795,-0.214804 0.187496,-0.4414 0.1875,-0.6875 -4e-6,-0.271479 -0.0528,-0.502931 -0.15625,-0.6875 -0.103461,-0.184569 -0.254462,-0.331054 -0.4375,-0.4375 -0.183044,-0.106446 -0.461753,-0.212875 -0.84375,-0.3125 -0.382,-0.0996 -0.619715,-0.189401 -0.71875,-0.28125 -0.07781,-0.07227 -0.125001,-0.179628 -0.125,-0.28125 -10e-7,-0.111322 0.04188,-0.183583 0.125,-0.25 0.129101,-0.103461 0.303111,-0.15625 0.53125,-0.15625 0.221062,0 0.389466,0.05957 0.5,0.15625 0.11053,0.09668 0.18515,0.248051 0.21875,0.46875 l 0.78125,-0.03125 c -0.01238,-0.394529 -0.128296,-0.732413 -0.375,-0.96875 -0.24671,-0.236316 -0.636893,-0.343739 -1.125,-0.34375 z m -9.3125,0.0625 1.40625,4.3125 0.84375,0 1.375,-4.3125 -0.8125,0 -0.96875,3.1875 -0.96875,-3.1875 z"
+ transform="translate(0,1036.3622)"
+ id="rect6001-0-9"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ <g
+ transform="scale(0.9515661,1.0508991)"
+ id="text6194"
+ style="font-size:5.70939684px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-cluster.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-cluster.svg
new file mode 100644
index 00000000..29e8c256
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-cluster.svg
@@ -0,0 +1,77 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg4880">
+ <defs
+ id="defs4882">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ </defs>
+ <metadata
+ id="metadata4885">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="matrix(1.0004885,0,0,1,0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.0004885,0,0,1,2.0434155,-1034.2663)"
+ id="layer1-5">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639-1"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <path
+ d="m 1.8078413,1034.2663 0,3.6094 3.3368912,0 0,5.9727 2.8235234,0 0.8556131,0 0,2.1054 -5.0481175,0 0,-6.6172 -5.8181693,0 0,16.8868 5.8181693,0 0,-7.3047 5.0481175,0 0,7.2617 5.86095,0 0,-16.8438 -5.86095,0 0,1.5469 -0.8556131,0 0,-6.6172 -6.1604146,0 z m 11.9785837,0 0,3.6094 3.336892,0 0,18.3047 2.823523,0 0,-21.9141 -6.160415,0 z m -8.6416925,16.0274 0,5.9726 2.8235234,0 0,-5.9726 -2.8235234,0 z"
+ id="rect6001-0"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068-9"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(0.95279946,0,0,1,0,-1030.4247)"
+ id="layer1-9">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639-6"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068-3"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-database-mssql.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-database-mssql.svg
new file mode 100644
index 00000000..aa9da92e
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-database-mssql.svg
@@ -0,0 +1,77 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg4880">
+ <defs
+ id="defs4882">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ </defs>
+ <metadata
+ id="metadata4885">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="matrix(1.151751,0,0,1.15625,1.7499998,-1196.5438)"
+ id="layer1"
+ style="fill:#f9f9f9">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#f9f9f9;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#f9f9f9;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#f9f9f9;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.9515661,1.0508991)"
+ id="text6194"
+ style="font-size:5.70939684px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#f9f9f9;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6359"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#f9f9f9;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="g6103">
+ <g
+ id="g6098">
+ <g
+ id="g4413">
+ <path
+ d="m 2.5169492,1.4915234 17.4706648,0 L 22,3.9486939 22,18.424603 17.466585,22 2.921182,22 0.660129,18.7386 0.571857,2.9829806 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <path
+ d="M 3.65625,2e-7 C 1.621777,2e-7 0,1.7026763 0,3.8125002 L 0,18.1875 C 0,20.297324 1.621777,22 3.65625,22 l 14.6875,0 C 20.378224,22 22,20.297324 22,18.1875 L 22,3.8125002 C 22.000001,1.7026763 20.378225,2e-7 18.34375,2e-7 l -14.6875,0 z m 7.34375,1.75 c 5.002726,0 9.082515,1.7418663 9.21875,3.90625 7.81e-4,0.012407 -5.22e-4,0.018816 0,0.03125 0.001,0.024869 0,0.037523 0,0.0625 0,2.2161844 -4.129995,4.03125 -9.21875,4.03125 -5.088756,0 -9.21875,-1.8150656 -9.21875,-4.03125 0,-2.2161844 4.129994,-4 9.21875,-4 z m -9.25,4.125 c 0.02169,0.2455811 0.0625,0.6506823 0.0625,0.78125 0,2.2161844 4.129993,4.0312498 9.21875,4.0312498 5.088755,0 9.21875,-1.8150654 9.21875,-4.0312498 l 0,2.6875 c 0,2.2161838 -4.129994,3.9999998 -9.21875,3.9999998 -5.088756,0 -9.21875,-1.783816 -9.21875,-3.9999998 0,-0.1760929 -0.02913,-0.5924415 -0.0625,-0.96875 l 0,-2.5 z m 0,3.90625 c 0.02169,0.2455808 0.0625,0.6506818 0.0625,0.7812498 0,1.468833 1.827544,2.738797 4.53125,3.4375 L 2.0625,14 c -0.157912,-0.294292 -0.25,-0.590933 -0.25,-0.90625 0,-0.176093 -0.02913,-0.592441 -0.0625,-0.96875 l 0,-2.3437498 z m 18.5,0.7812498 0,2.53125 C 20.25,13.409067 20.15791,13.705708 20,14 l -4.28125,0 C 18.422457,13.301297 20.25,12.031333 20.25,10.5625 z M 1.75,13.53125 C 1.7628,13.676184 1.76474,13.829263 1.78125,14 L 1.75,14 l 0,-0.46875 z m 2.0625,1.15625 c 0.620863,0 1.092439,0.164278 1.40625,0.4375 0.313803,0.273338 0.484249,0.606359 0.5,1.0625 L 4.6875,16.25 C 4.64476,15.994816 4.546841,15.799309 4.40625,15.6875 4.265652,15.575344 4.093686,15.53125 3.8125,15.53125 c -0.29019,0 -0.523287,0.03681 -0.6875,0.15625 -0.105729,0.07631 -0.156252,0.215059 -0.15625,0.34375 -2e-6,0.117475 0.05727,0.197769 0.15625,0.28125 0.125971,0.106375 0.420353,0.197222 0.90625,0.3125 0.485892,0.115625 0.829672,0.251975 1.0625,0.375 0.232821,0.123141 0.399649,0.286556 0.53125,0.5 0.131592,0.213328 0.218745,0.498694 0.21875,0.8125 -5e-6,0.284553 -0.09254,0.532888 -0.25,0.78125 -0.15747,0.248478 -0.337066,0.441672 -0.625,0.5625 -0.287941,0.120712 -0.664096,0.1875 -1.09375,0.1875 -0.625367,0 -1.102324,-0.147281 -1.4375,-0.4375 -0.335178,-0.290219 -0.559765,-0.694537 -0.625,-1.25 l 0.96875,-0.125 c 0.05849,0.32745 0.196162,0.59645 0.375,0.75 C 3.335084,18.934916 3.571313,19 3.875,19 c 0.321677,0 0.555657,-0.05072 0.71875,-0.1875 0.163086,-0.136553 0.249996,-0.317081 0.25,-0.5 C 4.843746,18.195025 4.81861,18.082441 4.75,18 4.68139,17.91791 4.54596,17.842184 4.375,17.78125 4.258022,17.74078 4.009907,17.665984 3.59375,17.5625 3.058364,17.429184 2.684702,17.256634 2.46875,17.0625 2.165065,16.789162 1.999999,16.486644 2,16.09375 c -10e-7,-0.252872 0.07591,-0.498484 0.21875,-0.71875 0.142843,-0.22015 0.356182,-0.384837 0.625,-0.5 0.268815,-0.115625 0.58858,-0.1875 0.96875,-0.1875 z m 5.09375,0 c 0.733338,0 1.289089,0.237025 1.71875,0.6875 0.429652,0.450591 0.656245,1.095488 0.65625,1.90625 -5e-6,0.429084 -0.06828,0.799747 -0.1875,1.125 -0.08999,0.248362 -0.208297,0.486113 -0.40625,0.71875 0.245192,0.176097 0.493307,0.302303 0.78125,0.40625 L 11.09375,20.25 C 10.943028,20.20491 10.831464,20.141356 10.6875,20.0625 10.656,20.04631 10.411657,19.902731 10,19.625 c -0.323934,0.142219 -0.700089,0.21875 -1.09375,0.21875 -0.760338,0 -1.31922,-0.238181 -1.75,-0.6875 C 6.725467,18.706816 6.499999,18.094209 6.5,17.28125 c -1e-6,-0.810762 0.224343,-1.455659 0.65625,-1.90625 0.431905,-0.450475 1.009908,-0.6875 1.75,-0.6875 z m 9.125,0 c 0.620863,0 1.092439,0.164278 1.40625,0.4375 0.313803,0.273338 0.484256,0.606359 0.5,1.0625 L 18.90625,16.25 c -0.04274,-0.255184 -0.140658,-0.450691 -0.28125,-0.5625 -0.140598,-0.112156 -0.312564,-0.15625 -0.59375,-0.15625 -0.290189,0 -0.523288,0.03681 -0.6875,0.15625 -0.105731,0.07631 -0.187501,0.215059 -0.1875,0.34375 -1e-6,0.117475 0.08852,0.197769 0.1875,0.28125 0.12597,0.106375 0.420353,0.197222 0.90625,0.3125 0.485891,0.115625 0.829672,0.251975 1.0625,0.375 0.232821,0.123141 0.39965,0.286556 0.53125,0.5 0.131588,0.213328 0.218745,0.498694 0.21875,0.8125 -5e-6,0.284553 -0.09254,0.532888 -0.25,0.78125 -0.15747,0.248478 -0.368316,0.441672 -0.65625,0.5625 -0.287941,0.120712 -0.632845,0.1875 -1.0625,0.1875 -0.625366,0 -1.102324,-0.147281 -1.4375,-0.4375 -0.335178,-0.290219 -0.559765,-0.694537 -0.625,-1.25 L 17,18.03125 c 0.05849,0.32745 0.196162,0.59645 0.375,0.75 C 17.553834,18.934916 17.790064,19 18.09375,19 c 0.321678,0 0.555657,-0.05072 0.71875,-0.1875 0.163088,-0.136553 0.249998,-0.317081 0.25,-0.5 0,-0.117475 -0.02515,-0.230059 -0.09375,-0.3125 -0.06861,-0.08209 -0.20404,-0.157816 -0.375,-0.21875 -0.116978,-0.04047 -0.365092,-0.115266 -0.78125,-0.21875 -0.535386,-0.133316 -0.909048,-0.305866 -1.125,-0.5 -0.303686,-0.273338 -0.46875,-0.575856 -0.46875,-0.96875 0,-0.252872 0.0759,-0.498484 0.21875,-0.71875 0.142844,-0.22015 0.324932,-0.384837 0.59375,-0.5 0.268815,-0.115625 0.61983,-0.1875 1,-0.1875 z m -5.9375,0.15625 1,0 0,4.0625 2.46875,0 0,0.84375 -3.46875,0 0,-4.90625 z M 8.875,15.5625 C 8.467835,15.5625 8.159318,15.715447 7.90625,16 7.653178,16.284553 7.499998,16.709831 7.5,17.28125 c -2e-6,0.580322 0.153178,1.024594 0.40625,1.3125 0.253068,0.287906 0.581831,0.4375 0.96875,0.4375 0.143966,0 0.278024,-0.04634 0.40625,-0.09375 -0.20246,-0.1332 -0.415798,-0.237922 -0.625,-0.3125 l 0.25,-0.59375 C 9.234676,18.144562 9.575811,18.336684 9.875,18.5625 10.003218,18.411262 10.123385,18.2146 10.1875,18 10.25161,17.785516 10.25,17.558981 10.25,17.28125 10.249996,16.707634 10.126942,16.283513 9.875,16 9.623051,15.716603 9.282158,15.5625 8.875,15.5625 z"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-database-oracle.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-database-oracle.svg
new file mode 100644
index 00000000..99d5a5b3
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-database-oracle.svg
@@ -0,0 +1,77 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg4880">
+ <defs
+ id="defs4882">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ </defs>
+ <metadata
+ id="metadata4885">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g6150">
+ <g
+ id="g6139">
+ <g
+ transform="matrix(1.151751,0,0,1.1816367,1.7499998,-1222.8536)"
+ id="layer1"
+ style="fill:#ffffff">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.9515661,1.0508991)"
+ id="text6194"
+ style="font-size:5.70939684px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6359"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="g4517">
+ <path
+ d="m 3.4491525,1.4915236 16.5384615,0 L 22,3.9486941 22,18.424603 17.466585,22 2.9211825,22 0.6601295,18.7386 0.58178039,4.7541115 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <path
+ d="M 3.65625,0 C 1.621777,0 0,1.7026759 0,3.8124997 L 0,18.1875 C 0,20.297324 1.621777,22 3.65625,22 l 14.6875,0 C 20.378224,22 22,20.297324 22,18.1875 L 22,3.8124997 C 22.000001,1.7026759 20.378225,0 18.34375,0 L 3.65625,0 z M 11,1.7499997 c 5.002727,0 9.082515,1.788095 9.21875,4 7.81e-4,0.012679 -5.22e-4,0.018543 0,0.03125 0.001,0.025415 0,0.036974 0,0.0625 C 20.21875,8.1085928 16.088755,9.9375 11,9.9375 c -5.0887559,0 -9.21875,-1.8289072 -9.21875,-4.0937503 0,-2.2648431 4.1299941,-4.09375 9.21875,-4.09375 z m -9.25,4.21875 c 0.021688,0.2509731 0.0625,0.6790656 0.0625,0.8125 0,2.2648431 4.1299938,4.0937503 9.21875,4.0937503 5.088756,0 9.21875,-1.8289072 9.21875,-4.0937503 l 0,2.71875 c 0,2.2648433 -4.129994,4.0937503 -9.21875,4.0937503 -5.088756,0 -9.21875,-1.828907 -9.21875,-4.0937503 0,-0.1799593 -0.029127,-0.6154292 -0.0625,-1 l 0,-2.53125 z m 0,3.9687503 c 0.021688,0.250973 0.0625,0.679066 0.0625,0.8125 0,1.501083 1.8275439,2.817207 4.53125,3.53125 l -4.28125,0 c -0.157912,-0.300754 -0.25,-0.615259 -0.25,-0.9375 0,-0.179959 -0.029127,-0.615429 -0.0625,-1 l 0,-2.40625 z m 18.5,0.8125 0,2.59375 c 0,0.322241 -0.09209,0.636746 -0.25,0.9375 l -4.28125,0 C 18.422457,13.567207 20.25,12.251083 20.25,10.75 z m -18.5,3.03125 c 0.012799,0.148116 0.014741,0.325515 0.03125,0.5 l -0.03125,0 0,-0.5 z m 2.53125,1.1875 c 0.728839,0 1.3124656,0.223589 1.75,0.6875 0.4375254,0.463911 0.6562448,1.14255 0.65625,1.96875 -5.2e-6,0.819347 -0.2220987,1.474771 -0.65625,1.9375 -0.4341601,0.462729 -1.0234105,0.6875 -1.75,0.6875 -0.735593,0 -1.3158452,-0.227134 -1.75,-0.6875 -0.4341567,-0.460484 -0.6875003,-1.129733 -0.6875,-1.9375 -3e-7,-0.516966 0.1305323,-0.93054 0.28125,-1.28125 0.1124751,-0.258542 0.2429163,-0.513382 0.4375,-0.71875 0.1945818,-0.205368 0.3932987,-0.338243 0.625,-0.4375 0.3081815,-0.133879 0.6910847,-0.21875 1.09375,-0.21875 z m 10.312501,0 c 0.605116,0 1.059577,0.195484 1.437499,0.5625 0.224946,0.216948 0.45002,0.531253 0.5625,0.9375 l -1.03125,0.25 c -0.05849,-0.26315 -0.158168,-0.503937 -0.34375,-0.65625 -0.185587,-0.152313 -0.422061,-0.21875 -0.6875,-0.21875 -0.366673,0 -0.677927,0.136246 -0.90625,0.40625 -0.228323,0.270122 -0.3125,0.739107 -0.3125,1.34375 0,0.641629 0.08755,1.102751 0.3125,1.375 0.22495,0.272367 0.546326,0.406368 0.90625,0.40625 0.265439,1.18e-4 0.49629,-0.107904 0.6875,-0.28125 0.191207,-0.17311 0.291763,-0.440875 0.375,-0.8125 l 1,0.3125 c -0.148472,0.553951 -0.435954,0.981059 -0.78125,1.25 -0.345303,0.268822 -0.750368,0.40625 -1.28125,0.40625 -0.65686,0 -1.202093,-0.227134 -1.625,-0.6875 C 12.483341,19.102016 12.25,18.4548 12.25,17.65625 c 0,-0.844634 0.231091,-1.532663 0.65625,-2 0.425156,-0.467337 0.994648,-0.6875 1.6875,-0.6875 z m -7.156251,0.125 2.1249995,0 c 0.5286325,0 0.9166725,0.0031 1.1562505,0.09375 0.239568,0.09099 0.418526,0.298231 0.5625,0.53125 0.143964,0.233137 0.218745,0.449982 0.21875,0.75 -5e-6,0.380842 -0.0943,0.720724 -0.3125,0.96875 -0.218207,0.248144 -0.534597,0.435364 -0.96875,0.5 0.215949,0.129271 0.359401,0.251574 0.5,0.40625 0.140591,0.154558 0.324047,0.417833 0.5625,0.8125 l 0.625,0.96875 -1.1875,0 -0.7187505,-1.09375 c -0.256447,-0.394548 -0.468023,-0.647316 -0.5625,-0.75 -0.09448,-0.102802 -0.175525,-0.180701 -0.2812495,-0.21875 -0.1057296,-0.03781 -0.2705515,-0.03125 -0.5,-0.03125 l -0.21875,0 0,2.09375 -1,0 0,-5.03125 z m 10.03125,0.03125 0.96875,0 0,4.15625 1.6875,0 0,0.84375 -2.65625,0 0,-5 z m -13.1875,0.71875 c -0.4116632,0 -0.7168064,0.179131 -0.96875,0.46875 -0.2519469,0.289737 -0.4062513,0.697403 -0.40625,1.28125 -1.3e-6,0.574748 0.1475545,1.015909 0.40625,1.3125 0.2586921,0.296591 0.5705838,0.468868 0.96875,0.46875 0.3981609,1.18e-4 0.7134267,-0.174522 0.96875,-0.46875 0.2553158,-0.294228 0.374996,-0.723927 0.375,-1.3125 -4e-6,-0.581602 -0.095183,-0.995058 -0.34375,-1.28125 -0.2485747,-0.286074 -0.5883421,-0.46875 -1,-0.46875 z m 4.15625,0.09375 0,1.28125 0.75,0 c 0.4791435,0 0.7870225,-0.02114 0.90625,-0.0625 0.11922,-0.04136 0.18251,-0.117484 0.25,-0.21875 0.06748,-0.101621 0.124997,-0.222687 0.125,-0.375 -3e-6,-0.170865 -0.03615,-0.301321 -0.125,-0.40625 -0.08886,-0.105166 -0.213038,-0.1911 -0.3750005,-0.21875 -0.08099,-0.01182 -0.31384,0 -0.7187495,0 l -0.8125,0 z"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-database-sybase.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-database-sybase.svg
new file mode 100644
index 00000000..2fd9aacc
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-database-sybase.svg
@@ -0,0 +1,71 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg4880">
+ <defs
+ id="defs4882">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ </defs>
+ <metadata
+ id="metadata4885">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="matrix(1.151751,0,0,1.1816367,1.7499998,-1222.8536)"
+ id="layer1"
+ style="fill:#ffffff">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.9515661,1.0508991)"
+ id="text6194"
+ style="font-size:5.70939684px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6359"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="g4605">
+ <path
+ d="m 3.0762712,1.491524 16.9113428,0 L 22,3.948695 22,18.424603 17.466585,22 2.9211828,22 0.6601298,18.7386 0.57655518,3.8214151 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <path
+ d="M 3.6562502,-1.9999998e-8 C 1.621777,-1.9999998e-8 0,1.702676 0,3.8125 l 0,14.375 C 0,20.297324 1.621777,22 3.6562502,22 L 18.34375,22 C 20.378224,22 22,20.297324 22,18.1875 L 22,3.8125 C 22.000001,1.702676 20.378225,-2.0000002e-8 18.34375,-2.0000002e-8 l -14.6874998,0 z M 11,1.75 c 5.002726,0 9.082515,1.788095 9.21875,4 7.81e-4,0.01268 -5.22e-4,0.01854 0,0.03125 0.001,0.02541 0,0.03697 0,0.0625 C 20.21875,8.108593 16.088755,9.9375 11,9.9375 5.9112442,9.9375 1.78125,8.108593 1.78125,5.84375 1.78125,3.578907 5.9112442,1.75 11,1.75 z M 1.75,5.96875 c 0.021688,0.250973 0.0625,0.679065 0.0625,0.8125 0,2.264843 4.129994,4.09375 9.21875,4.09375 5.088755,0 9.21875,-1.828907 9.21875,-4.09375 l 0,2.71875 c 0,2.264843 -4.129994,4.09375 -9.21875,4.09375 C 5.942494,13.59375 1.8125,11.764843 1.8125,9.5 1.8125,9.320041 1.783373,8.884571 1.75,8.5 l 0,-2.53125 z m 0,3.96875 c 0.021688,0.250973 0.0625,0.679066 0.0625,0.8125 0,1.501083 1.827544,2.817207 4.53125,3.53125 l -4.28125,0 c -0.157912,-0.300754 -0.25,-0.615259 -0.25,-0.9375 0,-0.179959 -0.029127,-0.615429 -0.0625,-1 l 0,-2.40625 z m 18.5,0.8125 0,2.59375 c 0,0.322241 -0.09209,0.636746 -0.25,0.9375 l -4.28125,0 C 18.422457,13.567207 20.25,12.251083 20.25,10.75 z m -18.5,3.03125 c 0.012799,0.148116 0.014741,0.325515 0.03125,0.5 l -0.03125,0 0,-0.5 z m 2.0625002,1.1875 c 0.620863,0 1.092439,0.158279 1.40625,0.4375 0.313803,0.279339 0.484249,0.658844 0.5,1.125 l -1.03125,0.03125 C 4.6447602,16.301713 4.5468412,16.114264 4.4062502,16 c -0.140597,-0.114619 -0.312563,-0.1875 -0.59375,-0.1875 -0.290189,0 -0.523287,0.06544 -0.6875,0.1875 -0.105729,0.07799 -0.156252,0.212234 -0.15625,0.34375 -2e-6,0.120054 0.05727,0.195936 0.15625,0.28125 0.125971,0.108711 0.420353,0.225941 0.90625,0.34375 0.485892,0.118164 0.829672,0.249274 1.0625,0.375 0.232821,0.125844 0.399649,0.28187 0.53125,0.5 0.131592,0.218012 0.218746,0.491804 0.21875,0.8125 -4e-6,0.290801 -0.09254,0.558684 -0.25,0.8125 -0.15747,0.253934 -0.337066,0.470269 -0.625,0.59375 -0.287941,0.123363 -0.664096,0.1875 -1.09375,0.1875 -0.625367,0 -1.102324,-0.140909 -1.4375,-0.4375 -0.335178,-0.296591 -0.559765,-0.744842 -0.625,-1.3125 l 0.96875,-0.09375 c 0.05849,0.33464 0.196162,0.593079 0.375,0.75 0.178834,0.15704 0.415064,0.21875 0.71875,0.21875 0.321678,0 0.555657,-0.04771 0.71875,-0.1875 0.163087,-0.139551 0.249997,-0.344315 0.25,-0.53125 -4e-6,-0.120054 -0.02514,-0.196999 -0.09375,-0.28125 -0.06861,-0.0839 -0.20404,-0.156478 -0.375,-0.21875 -0.116978,-0.04136 -0.365093,-0.112994 -0.78125,-0.21875 -0.535386,-0.136243 -0.909048,-0.332853 -1.125,-0.53125 -0.303685,-0.279339 -0.468751,-0.59848 -0.46875,-1 -1e-6,-0.258424 0.0759,-0.524898 0.21875,-0.75 0.142843,-0.224984 0.356182,-0.382309 0.625,-0.5 0.268815,-0.118164 0.58858,-0.1875 0.96875,-0.1875 z m 14.2187498,0 c 0.620864,0 1.092439,0.158279 1.40625,0.4375 0.313803,0.279339 0.484244,0.658844 0.5,1.125 l -1.03125,0.03125 c -0.04274,-0.260787 -0.109408,-0.448236 -0.25,-0.5625 -0.140598,-0.114619 -0.343813,-0.1875 -0.625,-0.1875 -0.290188,0 -0.523288,0.06544 -0.6875,0.1875 -0.105731,0.07799 -0.156251,0.212234 -0.15625,0.34375 -1e-6,0.120054 0.05727,0.195936 0.15625,0.28125 0.125972,0.108711 0.420354,0.225941 0.90625,0.34375 0.485893,0.118164 0.829671,0.249274 1.0625,0.375 0.232821,0.125844 0.4309,0.28187 0.5625,0.5 0.131588,0.218012 0.187495,0.491804 0.1875,0.8125 -5e-6,0.290801 -0.09254,0.558684 -0.25,0.8125 -0.157471,0.253934 -0.368316,0.470269 -0.65625,0.59375 -0.28794,0.123363 -0.632845,0.1875 -1.0625,0.1875 -0.625366,0 -1.102324,-0.140909 -1.4375,-0.4375 -0.335178,-0.296591 -0.559765,-0.744842 -0.625,-1.3125 L 17,18.40625 c 0.05849,0.33464 0.196163,0.593079 0.375,0.75 0.178835,0.15704 0.415064,0.21875 0.71875,0.21875 0.321678,0 0.586907,-0.04771 0.75,-0.1875 0.163088,-0.139551 0.218747,-0.344315 0.21875,-0.53125 0,-0.120054 -0.02515,-0.196999 -0.09375,-0.28125 -0.06861,-0.0839 -0.20404,-0.156478 -0.375,-0.21875 -0.116978,-0.04136 -0.365092,-0.112994 -0.78125,-0.21875 -0.535386,-0.136243 -0.909047,-0.332853 -1.125,-0.53125 -0.303684,-0.279339 -0.468751,-0.59848 -0.46875,-1 -1e-6,-0.258424 0.0759,-0.524898 0.21875,-0.75 0.142844,-0.224984 0.324931,-0.382309 0.59375,-0.5 0.268815,-0.118164 0.619831,-0.1875 1,-0.1875 z m -11.8437498,0.125 1.1875,0 1.15625,1.96875 1.125,-1.96875 1.1562498,0 -1.8124998,2.9375 0,2.09375 -1.03125,0 0,-2.125 -1.78125,-2.90625 z m 5.1249998,0 2,0 c 0.391412,0 0.651413,-0.003 0.84375,0.03125 0.19233,0.03309 0.348154,0.112166 0.5,0.21875 0.151838,0.106347 0.305018,0.229713 0.40625,0.40625 0.101227,0.176537 0.156245,0.374438 0.15625,0.59375 -5e-6,0.237627 -0.06265,0.457735 -0.1875,0.65625 -0.124852,0.198397 -0.2863,0.338243 -0.5,0.4375 0.301431,0.0898 0.52553,0.283052 0.6875,0.5 0.161959,0.216948 0.249995,0.425704 0.25,0.71875 -5e-6,0.230774 -0.0829,0.500738 -0.1875,0.71875 -0.104602,0.21813 -0.225168,0.369665 -0.40625,0.5 -0.181089,0.130453 -0.390811,0.188736 -0.65625,0.21875 -0.166467,0.01891 -0.61339,0.02652 -1.25,0.03125 l -1.65625,0 0,-5.03125 z m 0.96875,0.84375 0,1.125 0.6875,0 c 0.389163,0 0.624272,0.01772 0.71875,0 0.17096,-0.02127 0.308397,-0.08718 0.40625,-0.1875 0.09785,-0.100439 0.156247,-0.242357 0.15625,-0.40625 0,-0.156921 -0.04065,-0.245674 -0.125,-0.34375 -0.08437,-0.09808 -0.208539,-0.166703 -0.375,-0.1875 -0.09898,-0.01182 -0.404854,0 -0.875,0 l -0.59375,0 z m 0,2 0,1.34375 0.9375,0 c 0.359919,0 0.590764,-0.01234 0.6875,-0.03125 0.148465,-0.02718 0.281639,-0.0795 0.375,-0.1875 0.09335,-0.107529 0.124997,-0.257537 0.125,-0.4375 0,-0.152313 -0.02177,-0.268889 -0.09375,-0.375 C 14.24052,18.143653 14.136092,18.048447 14,18 13.863901,17.951553 13.579399,17.9375 13.125,17.9375 l -0.84375,0 z"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-database-sybaseiq.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-database-sybaseiq.svg
new file mode 100644
index 00000000..e9712b38
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-database-sybaseiq.svg
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg4880">
+ <defs
+ id="defs4882">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ </defs>
+ <metadata
+ id="metadata4885">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g6242">
+ <g
+ id="g4659">
+ <path
+ d="m 3.1694915,1.491524 16.8181225,0 L 22,3.948695 22,18.424603 17.466585,22 2.9211832,22 0.6601302,18.7386 0.57811943,4.1005451 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <path
+ d="M 3.6562502,0 C 1.621777,0 0,1.702677 0,3.8125 l 0,14.375 C 0,20.297324 1.621777,22 3.6562502,22 L 18.34375,22 C 20.378224,22 22,20.297324 22,18.1875 L 22,3.8125 C 22.000001,1.702677 20.378225,0 18.34375,0 L 3.6562502,0 z M 11,1.75 c 5.002726,0 9.082515,1.788095 9.21875,4 7.81e-4,0.01268 -5.22e-4,0.01854 0,0.03125 0.001,0.02541 0,0.03697 0,0.0625 C 20.21875,8.108593 16.088755,9.9375 11,9.9375 5.9112442,9.9375 1.78125,8.108593 1.78125,5.84375 1.78125,3.578907 5.9112442,1.75 11,1.75 z m 0.90625,0.90625 c -0.856773,6e-6 -1.531252,0.261725 -2.0312498,0.78125 -0.500001,0.519536 -0.750001,1.221358 -0.75,2.15625 -1e-6,0.937502 0.251301,1.669272 0.75,2.1875 0.4986958,0.51823 1.1822888,0.78125 2.0624998,0.78125 0.455726,0 0.874996,-0.08594 1.25,-0.25 0.476558,0.320313 0.744787,0.513021 0.78125,0.53125 0.166661,0.09114 0.325515,0.135416 0.5,0.1875 l 0.4375,-0.8125 C 14.572911,8.098959 14.252599,7.953126 13.96875,7.75 c 0.229161,-0.268228 0.395828,-0.55729 0.5,-0.84375 0.138015,-0.374998 0.218744,-0.817706 0.21875,-1.3125 -6e-6,-0.934892 -0.25261,-1.636714 -0.75,-2.15625 C 13.4401,2.917975 12.755204,2.656256 11.90625,2.65625 z M 7.0937502,2.75 l 0,5.71875 1.15625,0 0,-5.71875 -1.15625,0 z M 11.90625,3.625 c 0.471351,5e-6 0.864579,0.173182 1.15625,0.5 0.291662,0.326827 0.437495,0.807296 0.4375,1.46875 -5e-6,0.320315 -0.05079,0.627607 -0.125,0.875 -0.07422,0.247398 -0.195317,0.450523 -0.34375,0.625 C 12.684892,6.833335 12.317705,6.630211 11.9375,6.5 L 11.625,7.15625 c 0.242184,0.08594 0.484372,0.221356 0.71875,0.375 C 12.195309,7.58594 12.041663,7.59375 11.875,7.59375 11.427081,7.593751 11.042966,7.457033 10.75,7.125 10.45703,6.792971 10.312498,6.263023 10.3125,5.59375 10.312498,4.9349 10.45703,4.453129 10.75,4.125 11.042966,3.79688 11.434893,3.625005 11.90625,3.625 z M 1.75,5.96875 c 0.02169,0.250973 0.0625,0.679066 0.0625,0.8125 0,2.264843 4.1299942,4.09375 9.21875,4.09375 5.088755,0 9.21875,-1.828907 9.21875,-4.09375 l 0,2.71875 c 0,2.264843 -4.129994,4.09375 -9.21875,4.09375 C 5.9424942,13.59375 1.8125,11.764843 1.8125,9.5 1.8125,9.320041 1.78337,8.884571 1.75,8.5 l 0,-2.53125 z m 0,3.96875 c 0.02169,0.250973 0.0625,0.679066 0.0625,0.8125 0,1.501083 1.8275442,2.817207 4.5312502,3.53125 l -4.2812502,0 c -0.157912,-0.300754 -0.25,-0.615259 -0.25,-0.9375 0,-0.179959 -0.02913,-0.615429 -0.0625,-1 l 0,-2.40625 z m 18.5,0.8125 0,2.59375 c 0,0.322241 -0.09209,0.636746 -0.25,0.9375 l -4.28125,0 C 18.422457,13.567207 20.25,12.251083 20.25,10.75 z m -18.5,3.03125 c 0.0128,0.148116 0.01474,0.325515 0.03125,0.5 l -0.03125,0 0,-0.5 z m 2.0625002,1.1875 c 0.620863,0 1.092439,0.158279 1.40625,0.4375 0.313803,0.279339 0.484249,0.658844 0.5,1.125 l -1.03125,0.03125 C 4.6447602,16.301713 4.5468412,16.114264 4.4062502,16 c -0.140597,-0.114619 -0.312563,-0.1875 -0.59375,-0.1875 -0.290189,0 -0.523287,0.06544 -0.6875,0.1875 -0.105729,0.07799 -0.156252,0.212234 -0.15625,0.34375 -2e-6,0.120054 0.05727,0.195936 0.15625,0.28125 0.125971,0.108711 0.420353,0.225941 0.90625,0.34375 0.485892,0.118164 0.829672,0.249274 1.0625,0.375 0.232821,0.125844 0.399649,0.28187 0.53125,0.5 0.131592,0.218012 0.218746,0.491804 0.21875,0.8125 -4e-6,0.290801 -0.09254,0.558684 -0.25,0.8125 -0.15747,0.253934 -0.337066,0.470269 -0.625,0.59375 -0.287941,0.123363 -0.664096,0.1875 -1.09375,0.1875 -0.625367,0 -1.102324,-0.140909 -1.4375,-0.4375 C 2.102322,19.515909 1.877735,19.067658 1.8125,18.5 l 0.9687502,-0.09375 c 0.05849,0.33464 0.196162,0.593079 0.375,0.75 0.178834,0.15704 0.415064,0.21875 0.71875,0.21875 0.321678,0 0.555657,-0.04771 0.71875,-0.1875 0.163087,-0.139551 0.249997,-0.344315 0.25,-0.53125 -4e-6,-0.120054 -0.02514,-0.196999 -0.09375,-0.28125 -0.06861,-0.0839 -0.20404,-0.156478 -0.375,-0.21875 -0.116978,-0.04136 -0.365093,-0.112994 -0.78125,-0.21875 -0.535386,-0.136243 -0.909048,-0.332853 -1.125,-0.53125 C 2.165065,17.126911 1.999999,16.80777 2,16.40625 c -10e-7,-0.258424 0.0759,-0.524898 0.21875,-0.75 0.1428432,-0.224984 0.3561822,-0.382309 0.6250002,-0.5 0.268815,-0.118164 0.58858,-0.1875 0.96875,-0.1875 z m 14.2187498,0 c 0.620864,0 1.092439,0.158279 1.40625,0.4375 0.313803,0.279339 0.484244,0.658844 0.5,1.125 l -1.03125,0.03125 c -0.04274,-0.260787 -0.109408,-0.448236 -0.25,-0.5625 -0.140598,-0.114619 -0.343813,-0.1875 -0.625,-0.1875 -0.290188,0 -0.523288,0.06544 -0.6875,0.1875 -0.105731,0.07799 -0.156251,0.212234 -0.15625,0.34375 -1e-6,0.120054 0.05727,0.195936 0.15625,0.28125 0.125972,0.108711 0.420354,0.225941 0.90625,0.34375 0.485893,0.118164 0.829671,0.249274 1.0625,0.375 0.232821,0.125844 0.4309,0.28187 0.5625,0.5 0.131588,0.218012 0.187495,0.491804 0.1875,0.8125 -5e-6,0.290801 -0.09254,0.558684 -0.25,0.8125 -0.157471,0.253934 -0.368316,0.470269 -0.65625,0.59375 -0.28794,0.123363 -0.632845,0.1875 -1.0625,0.1875 -0.625366,0 -1.102324,-0.140909 -1.4375,-0.4375 -0.335178,-0.296591 -0.559765,-0.744842 -0.625,-1.3125 L 17,18.40625 c 0.05849,0.33464 0.196163,0.593079 0.375,0.75 0.178835,0.15704 0.415064,0.21875 0.71875,0.21875 0.321678,0 0.586907,-0.04771 0.75,-0.1875 0.163088,-0.139551 0.218747,-0.344315 0.21875,-0.53125 0,-0.120054 -0.02515,-0.196999 -0.09375,-0.28125 -0.06861,-0.0839 -0.20404,-0.156478 -0.375,-0.21875 -0.116978,-0.04136 -0.365092,-0.112994 -0.78125,-0.21875 -0.535386,-0.136243 -0.909047,-0.332853 -1.125,-0.53125 -0.303684,-0.279339 -0.468751,-0.59848 -0.46875,-1 -1e-6,-0.258424 0.0759,-0.524898 0.21875,-0.75 0.142844,-0.224984 0.324931,-0.382309 0.59375,-0.5 0.268815,-0.118164 0.619831,-0.1875 1,-0.1875 z m -11.8437498,0.125 1.1875,0 1.15625,1.96875 1.125,-1.96875 1.1562498,0 -1.8124998,2.9375 0,2.09375 -1.03125,0 0,-2.125 -1.78125,-2.90625 z m 5.1249998,0 2,0 c 0.391412,0 0.651413,-0.003 0.84375,0.03125 0.19233,0.03309 0.348154,0.112166 0.5,0.21875 0.151838,0.106347 0.305018,0.229713 0.40625,0.40625 0.101227,0.176537 0.156245,0.374438 0.15625,0.59375 -5e-6,0.237627 -0.06265,0.457735 -0.1875,0.65625 -0.124852,0.198397 -0.2863,0.338243 -0.5,0.4375 0.301431,0.0898 0.52553,0.283052 0.6875,0.5 0.161959,0.216948 0.249995,0.425704 0.25,0.71875 -5e-6,0.230774 -0.0829,0.500738 -0.1875,0.71875 -0.104602,0.21813 -0.225168,0.369665 -0.40625,0.5 -0.181089,0.130453 -0.390811,0.188736 -0.65625,0.21875 -0.166467,0.01891 -0.61339,0.02652 -1.25,0.03125 l -1.65625,0 0,-5.03125 z m 0.96875,0.84375 0,1.125 0.6875,0 c 0.389163,0 0.624272,0.01772 0.71875,0 0.17096,-0.02127 0.308397,-0.08718 0.40625,-0.1875 0.09785,-0.100439 0.156247,-0.242357 0.15625,-0.40625 0,-0.156921 -0.04065,-0.245674 -0.125,-0.34375 -0.08437,-0.09808 -0.208539,-0.166703 -0.375,-0.1875 -0.09898,-0.01182 -0.404854,0 -0.875,0 l -0.59375,0 z m 0,2 0,1.34375 0.9375,0 c 0.359919,0 0.590764,-0.01234 0.6875,-0.03125 0.148465,-0.02718 0.281639,-0.0795 0.375,-0.1875 0.09335,-0.107529 0.124997,-0.257537 0.125,-0.4375 0,-0.152313 -0.02177,-0.268889 -0.09375,-0.375 C 14.24052,18.143653 14.136092,18.048447 14,18 13.863901,17.95155 13.579399,17.9375 13.125,17.9375 l -0.84375,0 z"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-database.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-database.svg
new file mode 100644
index 00000000..7329d5e0
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-database.svg
@@ -0,0 +1,71 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg4880">
+ <defs
+ id="defs4882">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ </defs>
+ <metadata
+ id="metadata4885">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="matrix(1.1206226,0,0,1.125,1.9999997,-1163.9075)"
+ id="layer1"
+ style="fill:#ffffff">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.9515661,1.0508991)"
+ id="text6194"
+ style="font-size:5.70939684px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="g6063">
+ <g
+ id="g4384">
+ <path
+ d="m 3.2627119,1.4915233 16.7249021,0 L 22,3.9486938 22,18.424603 17.466585,22 2.9211819,22 0.66012888,18.7386 0.57916848,4.2880244 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <path
+ d="M 3.65625,0 C 1.6217774,0 3.9999954e-7,1.7026765 3.9999954e-7,3.8125004 l 0,14.3749996 C 3.9999954e-7,20.297324 1.6217774,22 3.65625,22 l 14.6875,0 C 20.378224,22 22,20.297324 22,18.1875 L 22,3.8125004 C 22.000001,1.7026765 20.378225,0 18.34375,0 L 3.65625,0 z M 11,2.0000004 c 4.867517,0 8.836197,1.6753632 8.96875,3.78125 7.6e-4,0.012071 -5.08e-4,0.050402 0,0.0625 0.001,0.024197 0,0.038198 0,0.0625 0,2.1562875 -4.017529,3.90625 -8.96875,3.90625 -4.951222,0 -8.9687496,-1.7499625 -8.9687496,-3.90625 0,-2.1562875 4.0175276,-3.90625 8.9687496,-3.90625 z m -8.9999996,4 c 0.021102,0.2389438 0.0625,0.6542112 0.0625,0.78125 0,2.1562875 4.0175276,3.9062496 8.9687496,3.9062496 C 15.982471,10.6875 20,8.9375379 20,6.7812504 l 0,2.59375 c 0,2.1562876 -4.017528,3.9062496 -8.96875,3.9062496 -4.951222,0 -8.9687496,-1.749962 -8.9687496,-3.9062496 0,-0.1713337 -0.030029,-0.571362 -0.0625,-0.9375 l 0,-2.4375 z m 0,3.8125 c 0.021102,0.2389436 0.0625,0.6229606 0.0625,0.7499996 0,2.156288 4.0175276,3.90625 8.9687496,3.90625 C 15.982472,14.46875 20,12.718788 20,10.5625 l 0,2.46875 c 0,2.156288 -4.017528,3.90625 -8.96875,3.90625 -4.951222,0 -8.9687496,-1.749962 -8.9687496,-3.90625 0,-0.171334 -0.030029,-0.571362 -0.0625,-0.9375 l 0,-2.2812496 z m 0,3.6562496 c 0.021102,0.238944 0.0625,0.622962 0.0625,0.75 0,2.156288 4.0175276,3.90625 8.9687496,3.90625 C 15.982472,18.125 20,16.375038 20,14.21875 l 0,1.65625 c -0.0091,0.06154 -0.03125,0.179375 -0.03125,0.21875 C 19.96875,18.250038 15.951222,20 11,20 6.048778,20 2.0312504,18.250038 2.0312504,16.09375 c 0,-0.04376 -0.023556,-0.156875 -0.03125,-0.21875 l 0,-2.40625 z"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-dellmd.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-dellmd.svg
new file mode 100644
index 00000000..0db5029d
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-dellmd.svg
@@ -0,0 +1,199 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg9974">
+ <defs
+ id="defs9976">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-8" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-9" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-6" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-4" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-1" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-6" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-7" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-3" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-9" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-5" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-60" />
+ </defs>
+ <metadata
+ id="metadata9979">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="matrix(1.15625,0,0,1.2789327,1.75,1.7500001)"
+ id="layer1"
+ style="fill:#ffffff">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3"
+ style="fill:#ffffff">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84"
+ style="fill:#ffffff">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37"
+ style="fill:#ffffff">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.95422797,1.0479676)"
+ id="text5938"
+ style="font-size:6.67959595px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="g6594">
+ <path
+ d="m 2.1440678,1.491524 17.8435462,0 L 22,3.948695 22,18.424603 20.311615,20.824881 17.466585,22 2.921183,22 0.66013,18.7386 0.57603605,3.7287199 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <path
+ d="M 3.65625,-4e-7 C 1.621777,-4e-7 0,1.702676 0,3.8125 l 0,14.375 C 0,20.297324 1.621777,22 3.65625,22 l 14.6875,0 C 20.378224,22 22,20.297324 22,18.1875 L 22,3.8125 C 22.000001,1.702676 20.378225,-4e-7 18.34375,-4e-7 z M 3.5,1.75 l 15,0 c 0.964953,0 1.75,0.942814 1.75,2.125 l 0,7.0625 c 0,1.182185 -0.785047,2.15625 -1.75,2.15625 l -15,0 c -0.964953,0 -1.75,-0.974065 -1.75,-2.15625 l 0,-7.0625 C 1.75,2.692814 2.535047,1.75 3.5,1.75 z m -0.375,1.46875 0,8.40625 15.75,0 0,-8.40625 z m 0.9375,1.5 6.09375,0 0,2.625 -6.09375,0 z m 7.5625,0 6.09375,0 0,2.625 -6.09375,0 z M 4.03125,8.25 l 6.09375,0 0,2.625 -6.09375,0 z m 7.59375,0 6.09375,0 0,2.625 -6.09375,0 z m -9.875,5.59375 1.9375,0 c 0.439017,6e-6 0.800941,0.04342 1.03125,0.125 0.309469,0.110748 0.560537,0.279825 0.78125,0.5625 0.220705,0.282686 0.384843,0.621805 0.5,1.03125 0.115147,0.409454 0.156245,0.930922 0.15625,1.53125 C 6.156245,17.621229 6.10795,18.055737 6,18.4375 5.86805,18.903778 5.682195,19.336491 5.4375,19.625 5.252772,19.843567 5.033017,20.002606 4.71875,20.125 4.483643,20.21533 4.143435,20.25 3.75,20.25 l -2,0 z m 5.3125,0 3.9375,0 0,1.09375 -2.84375,0 0,1.40625 2.625,0 0,1.0625 -2.625,0 0,1.75 2.9375,0 0,1.09375 -4.03125,0 z m 5,0.0625 1.03125,0 0,5.25 2.625,0 0,1.09375 -3.65625,0 z m 4.46875,0 1.09375,0 0,5.25 2.625,0 0,1.09375 -3.71875,0 z M 2.8125,14.9375 l 0,4.21875 0.78125,0 c 0.297475,0 0.524301,-0.0217 0.65625,-0.0625 0.172726,-0.05246 0.323543,-0.12469 0.4375,-0.25 0.11395,-0.125316 0.209276,-0.337947 0.28125,-0.625 C 5.04072,17.9317 5.0625,17.557923 5.0625,17.0625 5.062496,16.567084 5.04072,16.171449 4.96875,15.90625 4.89678,15.641058 4.817043,15.42988 4.6875,15.28125 4.55795,15.132629 4.355365,15.021212 4.15625,14.96875 4.007508,14.92796 3.746719,14.93751 3.3125,14.9375 z"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-emc.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-emc.svg
new file mode 100644
index 00000000..c57296df
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-emc.svg
@@ -0,0 +1,198 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg9974">
+ <defs
+ id="defs9976">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-8" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-9" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-6" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-4" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-1" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-6" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-7" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-3" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-9" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-5" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-60" />
+ </defs>
+ <metadata
+ id="metadata9979">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="matrix(1.15625,0,0,1.2517202,1.75,1.75)"
+ id="layer1"
+ style="fill:#ffffff">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3"
+ style="fill:#ffffff">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84"
+ style="fill:#ffffff">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37"
+ style="fill:#ffffff">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="g6451">
+ <path
+ d="m 2.3305085,1.4915237 17.6571055,0 L 22,3.9486948 22,18.424603 17.466585,22 2.9211832,22 0.6601302,18.7386 0.58125883,4.660894 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <path
+ d="M 3.6562502,0 C 1.621777,0 0,1.7026759 0,3.8124997 L 0,18.1875 C 0,20.297324 1.621777,22 3.6562502,22 L 18.34375,22 C 20.378224,22 22,20.297324 22,18.1875 L 22,3.8124997 C 22.000001,1.7026759 20.378225,0 18.34375,0 L 3.6562502,0 z m -0.15625,1.7499997 14.9999998,0 c 0.964953,0 1.75,0.9054688 1.75,2.0625 l 0,6.9375003 c 0,1.157031 -0.785047,2.09375 -1.75,2.09375 l -14.9999998,0 C 2.5350472,12.84375 1.75,11.907031 1.75,10.75 l 0,-6.9375003 c 0,-1.1570312 0.7850472,-2.0625 1.7500002,-2.0625 z m -0.375,1.4375 0,8.2187503 15.7499998,0 0,-8.2187503 -15.7499998,0 z m 0.9375,1.46875 6.0937498,0 0,2.5625 -6.0937498,0 0,-2.5625 z m 7.5624998,0 6.09375,0 0,2.5625 -6.09375,0 0,-2.5625 z m -7.5937498,3.46875 6.0937498,0 0,2.5312503 -6.0937498,0 0,-2.5312503 z m 7.5937498,0 6.09375,0 0,2.5312503 -6.09375,0 0,-2.5312503 z M 17.1875,13.75 c 0.708727,6e-6 1.244868,0.265253 1.6875,0.71875 0.263463,0.268115 0.49326,0.623013 0.625,1.125 l -1.15625,0.3125 c -0.06851,-0.325149 -0.220142,-0.592998 -0.4375,-0.78125 -0.217365,-0.188246 -0.501611,-0.281244 -0.8125,-0.28125 -0.429457,6e-6 -0.763831,0.197544 -1.03125,0.53125 -0.267422,0.333715 -0.406251,0.846471 -0.40625,1.59375 -10e-7,0.792921 0.14278,1.350939 0.40625,1.6875 0.263467,0.336564 0.578447,0.500001 1,0.5 0.310889,1e-6 0.588548,-0.09858 0.8125,-0.3125 0.223944,-0.213915 0.402517,-0.57204 0.5,-1.03125 l 1.125,0.40625 c -0.173894,0.684536 -0.470582,1.198966 -0.875,1.53125 -0.404429,0.332284 -0.909468,0.5 -1.53125,0.5 -0.769331,0 -1.410931,-0.305981 -1.90625,-0.875 -0.495321,-0.569018 -0.718751,-1.294378 -0.71875,-2.28125 -10e-7,-1.043911 0.220794,-1.891169 0.71875,-2.46875 0.497953,-0.57757 1.188515,-0.874994 2,-0.875 z m -14.6874998,0.125 4.3125,0 0,1.0625 -3.15625,0 0,1.40625 2.9375,0 0,1.0625 -2.9375,0 0,1.65625 3.25,0 0,1.0625 -4.40625,0 0,-6.25 z m 5.40625,0 1.71875,0 1.0937498,4.25 1,-4.25 1.78125,0 0,6.25 -1.09375,0 0,-4.90625 -1.15625,4.90625 -1.125,0 -1.1562498,-4.90625 0,4.90625 -1.0625,0 0,-6.25 z"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-eternus.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-eternus.svg
new file mode 100644
index 00000000..505fc65c
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-eternus.svg
@@ -0,0 +1,195 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg9974">
+ <defs
+ id="defs9976">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-8" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-9" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-6" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-4" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-1" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-6" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-7" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-3" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-9" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-5" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-60" />
+ </defs>
+ <metadata
+ id="metadata9979">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="matrix(1.15625,0,0,1.2403409,1.75,1.7500002)"
+ id="layer1">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:6.63076401px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="g6590">
+ <path
+ d="m 1.3092649,2.796609 1.4894353,-1.305085 17.1889138,0 L 22,3.948695 22,18.424603 20.471296,20.085802 17.466585,22 2.9211832,22 0.6601302,18.7386 0.5807282,4.566121 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.70267 0,3.8125 l 0,14.375 C 0,20.29732 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.29732 22,18.1875 L 22,3.8125 C 22,1.70267 20.37823,0 18.34375,0 z M 3.5,1.75 l 15,0 c 0.964953,0 1.75,0.915987 1.75,2.0625 l 0,6.84375 c 0,1.146513 -0.785047,2.09375 -1.75,2.09375 l -15,0 c -0.9649531,0 -1.75,-0.947237 -1.75,-2.09375 l 0,-6.84375 C 1.75,2.665987 2.5350469,1.75 3.5,1.75 z m -0.375,1.4375 0,8.125 15.75,0 0,-8.125 z m 0.9375,1.4375 6.09375,0 0,2.5625 -6.09375,0 z m 7.5625,0 6.09375,0 0,2.5625 -6.09375,0 z m -7.59375,3.4375 6.09375,0 0,2.53125 -6.09375,0 z m 7.59375,0 6.09375,0 0,2.53125 -6.09375,0 z m 6.5,5.75 c 0.652479,6e-6 1.138959,0.158025 1.46875,0.5 0.329783,0.341988 0.483442,0.835343 0.5,1.40625 L 19.0625,15.75 c -0.04492,-0.319368 -0.133499,-0.547593 -0.28125,-0.6875 -0.147757,-0.139898 -0.391995,-0.187495 -0.6875,-0.1875 -0.304968,5e-6 -0.514925,0.06896 -0.6875,0.21875 -0.111116,0.0961 -0.187502,0.213906 -0.1875,0.375 -2e-6,0.146972 0.05222,0.270427 0.15625,0.375 0.132385,0.132841 0.45811,0.262112 0.96875,0.40625 0.510636,0.144144 0.880316,0.314721 1.125,0.46875 0.244676,0.154037 0.424199,0.357917 0.5625,0.625 0.138288,0.267086 0.218745,0.575897 0.21875,0.96875 -5e-6,0.356116 -0.08452,0.689109 -0.25,1 -0.165489,0.310893 -0.384902,0.567544 -0.6875,0.71875 C 19.009897,20.18246 18.607784,20.25 18.15625,20.25 17.499039,20.25 16.977245,20.081929 16.625,19.71875 16.272753,19.355571 16.099804,18.820272 16.03125,18.125 l 1,-0.125 c 0.06147,0.409815 0.218305,0.714063 0.40625,0.90625 0.187943,0.192191 0.430848,0.312501 0.75,0.3125 0.338059,1e-6 0.578602,-0.110254 0.75,-0.28125 0.171391,-0.17099 0.249997,-0.364818 0.25,-0.59375 0,-0.146966 -0.02165,-0.271841 -0.09375,-0.375 -0.07211,-0.103155 -0.195334,-0.204944 -0.375,-0.28125 -0.122934,-0.05087 -0.406401,-0.151239 -0.84375,-0.28125 -0.56265,-0.166749 -0.960551,-0.350684 -1.1875,-0.59375 -0.31915,-0.341978 -0.5,-0.75822 -0.5,-1.25 0,-0.316539 0.06863,-0.630681 0.21875,-0.90625 0.150116,-0.275559 0.373743,-0.449604 0.65625,-0.59375 0.282504,-0.14414 0.662969,-0.249994 1.0625,-0.25 z m -16.375,0.125 3.875,0 0,1.03125 -2.8125,0 0,1.375 2.59375,0 0,1.03125 -2.59375,0 0,1.71875 2.875,0 0,1.03125 -3.9375,0 z m 4.46875,0 4.125,0 0,1.03125 -1.5000002,0 0,5.15625 -1.0625,0 0,-5.15625 -1.5624998,0 z m 4.8125,0 1.0625,0 2.125,4.15625 0,-4.15625 0.96875,0 0,6.1875 -1.09375,0 L 12,16.09375 l 0,4.03125 -0.96875,0 z"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-fujitsu.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-fujitsu.svg
new file mode 100644
index 00000000..56a23abe
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-fujitsu.svg
@@ -0,0 +1,215 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg9974">
+ <defs
+ id="defs9976">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-8" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-9" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-6" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-4" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-1" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-6" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-7" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-3" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-9" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-5" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-60" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-33" />
+ </defs>
+ <metadata
+ id="metadata9979">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,6)"
+ id="text11166"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,6)"
+ id="text12646"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="matrix(1.15625,0,0,1.2489451,1.75,1.7500005)"
+ id="layer1"
+ style="fill:#ffffff">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3"
+ style="fill:#ffffff">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84"
+ style="fill:#ffffff">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37"
+ style="fill:#ffffff">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="g6878">
+ <path
+ d="m 2.8919205,1.4915224 17.0956935,0 L 22,3.9486932 22,18.424603 17.466586,22 2.9211824,22 0.66013033,18.7386 0.57759733,4.0073376 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <path
+ d="M 3.6562499,0 C 1.6217799,0 -5.0000001e-8,1.7026706 -5.0000001e-8,3.8125003 l 0,14.3749997 C -5.0000001e-8,20.29732 1.6217799,22 3.6562499,22 L 18.34375,22 C 20.37823,22 22,20.29732 22,18.1875 L 22,3.8125003 C 22,1.7026706 20.37823,0 18.34375,0 z m -0.15625,1.7500003 15.0000001,0 c 0.964953,0 1.75,0.9080339 1.75,2.0625 l 0,6.9062497 c 0,1.154466 -0.785047,2.125 -1.75,2.125 l -15.0000001,0 C 2.5350468,12.84375 1.75,11.873216 1.75,10.71875 l 0,-6.9062497 c 0,-1.1544661 0.7850468,-2.0625 1.7499999,-2.0625 z m -0.375,1.4375 0,8.1874997 15.7500001,0 0,-8.1874997 z m 0.9375,1.4375 6.0937501,0 0,2.59375 -6.0937501,0 z m 7.5625001,0 6.09375,0 0,2.59375 -6.09375,0 z m -7.5937501,3.5 6.0937501,0 0,2.5312497 -6.0937501,0 z m 7.5937501,0 6.09375,0 0,2.5312497 -6.09375,0 z m -5.9687501,5.7187497 0.15625,0 3.8125,0 0.125,0 0,1.09375 -0.125,0 -2.6875,0 0,1.5 2.28125,0 0.15625,0 0,1.03125 -0.15625,0 -2.28125,0 0,2.65625 -0.125,0 -1,0 -0.15625,0 z m 9.2500001,0 1.1875,0 0.09375,0 0,4 c 0,0.517956 -0.0094,0.908602 -0.09375,1.1875 -0.113289,0.364276 -0.327284,0.654443 -0.625,0.875 -0.297723,0.220557 -0.700086,0.34375 -1.1875,0.34375 -0.142932,0 -0.281584,-0.007 -0.40625,-0.03125 -0.444964,-0.04643 -0.772263,-0.20949 -1.03125,-0.5 C 12.535492,19.372975 12.377636,18.856288 12.375,18.1875 l 1.125,-0.125 0.09375,0 c 0.01317,0.358585 0.07194,0.602015 0.15625,0.75 0.113073,0.201023 0.281419,0.320095 0.5,0.34375 0.239361,-0.0081 0.397695,-0.06647 0.5,-0.21875 0.108017,-0.160792 0.156247,-0.524678 0.15625,-1.03125 z"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-hds.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-hds.svg
new file mode 100644
index 00000000..60c2e56a
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-hds.svg
@@ -0,0 +1,103 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg4880">
+ <defs
+ id="defs4882">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ </defs>
+ <metadata
+ id="metadata4885">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,6)"
+ id="text3193"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="matrix(1.15625,0,0,1.2460045,1.75,1.7500003)"
+ id="layer1-1">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639-7"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068-4"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125-0"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="g6968">
+ <path
+ d="m 2.89192,1.4915221 17.095694,0 L 22,3.9486929 22,18.424603 17.466586,22 2.921182,22 0.66013,18.7386 0.5776,4.0073373 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <path
+ d="M 3.6562496,0 C 1.6217796,0 -3.6e-7,1.7026698 -3.6e-7,3.8124997 l 0,14.3750003 C -3.6e-7,20.29732 1.6217796,22 3.6562496,22 L 18.34375,22 C 20.37823,22 22,20.29732 22,18.1875 L 22,3.8124997 C 22,1.7026698 20.37823,0 18.34375,0 L 3.6562496,0 z m -0.15625,1.7499997 15.0000004,0 c 0.964953,0 1.75,0.9107521 1.75,2.0625 l 0,6.9062503 c 0,1.151748 -0.785047,2.09375 -1.75,2.09375 l -15.0000004,0 c -0.9649531,0 -1.75,-0.942002 -1.75,-2.09375 l 0,-6.9062503 c 0,-1.1517479 0.7850469,-2.0625 1.75,-2.0625 z m -0.375,1.4375 0,8.1875003 15.7500004,0 0,-8.1875003 -15.7500004,0 z m 0.9375,1.4375 6.0937504,0 0,2.5625 -6.0937504,0 0,-2.5625 z m 7.5625004,0 6.09375,0 0,2.5625 -6.09375,0 0,-2.5625 z m -7.5937504,3.46875 6.0937504,0 0,2.5312503 -6.0937504,0 0,-2.5312503 z m 7.5937504,0 6.09375,0 0,2.5312503 -6.09375,0 0,-2.5312503 z m 5.0625,5.6875003 c 0.72717,7e-6 1.257458,0.156461 1.625,0.5 0.367534,0.343548 0.544058,0.832735 0.5625,1.40625 l -1.15625,0.03125 c -0.05007,-0.320825 -0.147835,-0.546954 -0.3125,-0.6875 -0.164671,-0.140537 -0.389418,-0.187495 -0.71875,-0.1875 -0.339876,5e-6 -0.651421,0.06828 -0.84375,0.21875 -0.123834,0.09654 -0.187501,0.24442 -0.1875,0.40625 -10e-7,0.147643 0.07157,0.238699 0.1875,0.34375 0.14754,0.133447 0.524656,0.292706 1.09375,0.4375 0.569089,0.144803 0.977307,0.314017 1.25,0.46875 0.272685,0.15474 0.502116,0.356699 0.65625,0.625 0.154128,0.268308 0.218745,0.574103 0.21875,0.96875 -5e-6,0.357742 -0.09683,0.687689 -0.28125,1 C 18.596817,19.624812 18.337235,19.879352 18,20.03125 17.662757,20.18315 17.253221,20.25 16.75,20.25 c -0.732445,0 -1.294933,-0.166412 -1.6875,-0.53125 -0.392569,-0.364836 -0.611095,-0.926555 -0.6875,-1.625 L 15.46875,18 c 0.0685,0.411686 0.228042,0.681935 0.4375,0.875 0.209456,0.193068 0.488064,0.312501 0.84375,0.3125 0.376756,1e-6 0.683982,-0.07823 0.875,-0.25 0.191012,-0.17177 0.281245,-0.363772 0.28125,-0.59375 -5e-6,-0.147637 -0.07589,-0.30262 -0.15625,-0.40625 -0.08036,-0.10363 -0.174768,-0.173346 -0.375,-0.25 -0.137006,-0.0511 -0.481336,-0.150644 -0.96875,-0.28125 -0.627056,-0.16751 -1.059571,-0.380825 -1.3125,-0.625 -0.355683,-0.34354 -0.562501,-0.755975 -0.5625,-1.25 -10e-7,-0.317987 0.0827,-0.598173 0.25,-0.875 0.167301,-0.276816 0.435154,-0.480194 0.75,-0.625 0.314843,-0.144798 0.710986,-0.249993 1.15625,-0.25 z m -13.7500004,0.125 1.15625,0 0,2.4375 2.3125,0 0,-2.4375 1.15625,0 0,6.21875 -1.15625,0 0,-2.71875 -2.3125,0 0,2.71875 -1.15625,0 0,-6.21875 z m 5.84375,0 2.1562504,0 c 0.482144,6e-6 0.809567,0.04552 1.0625,0.125 0.33987,0.107892 0.663855,0.287103 0.90625,0.5625 0.242386,0.275407 0.436029,0.632347 0.5625,1.03125 0.126459,0.398912 0.156244,0.883878 0.15625,1.46875 -6e-6,0.513898 -0.03769,0.940566 -0.15625,1.3125 -0.144913,0.454273 -0.356267,0.81267 -0.625,1.09375 C 12.640875,19.712941 12.345139,19.912007 12,20.03125 11.741797,20.119268 11.432085,20.125 11,20.125 l -2.2187504,0 0,-6.21875 z m 1.15625,1.0625 0,4.125 0.8750004,0 c 0.325371,-0.03171 0.573839,-0.02275 0.71875,-0.0625 0.189694,-0.0511 0.343599,-0.127916 0.46875,-0.25 0.125144,-0.122084 0.233455,-0.345337 0.3125,-0.625 0.07904,-0.279659 0.124996,-0.642333 0.125,-1.125 -4e-6,-0.482661 -0.04596,-0.835379 -0.125,-1.09375 -0.07905,-0.258363 -0.201481,-0.480196 -0.34375,-0.625 C 11.826473,15.167706 11.656175,15.051111 11.4375,15 11.274147,14.960252 10.976875,14.96875 10.5,14.96875 l -0.5625004,0 z"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-hpaio.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-hpaio.svg
new file mode 100644
index 00000000..aa2c67b8
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-hpaio.svg
@@ -0,0 +1,203 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg9974">
+ <defs
+ id="defs9976">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-8" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-9" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-6" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-4" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-1" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-6" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-7" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-3" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-9" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-5" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-60" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-33" />
+ </defs>
+ <metadata
+ id="metadata9979">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="matrix(1.15625,0,0,1.2236547,1.75,1.7500001)"
+ id="layer1">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="g7181">
+ <path
+ d="m 2.8919199,1.491522 17.0956941,0 L 22,3.9486928 22,18.424603 17.466586,22 2.9211822,22 0.6601299,18.7386 0.5775999,4.0073372 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <path
+ d="M 3.6562502,0 C 1.62178,0 0,1.70267 0,3.8125 l 0,14.375 C 0,20.29732 1.62178,22 3.6562502,22 L 18.34375,22 C 20.37823,22 22,20.29732 22,18.1875 L 22,3.8125 C 22,1.70267 20.37823,0 18.34375,0 L 3.6562502,0 z M 3.5000002,1.75 18.5,1.75 c 0.964953,0 1.75,0.9001612 1.75,2.03125 l 0,6.75 c 0,1.131089 -0.785047,2.09375 -1.75,2.09375 l -14.9999998,0 C 2.5350469,12.625 1.75,11.662339 1.75,10.53125 l 0,-6.75 C 1.75,2.6501612 2.5350469,1.75 3.5000002,1.75 z m -0.375,1.40625 0,8.03125 15.7499998,0 0,-8.03125 -15.7499998,0 z m 0.9375,1.4375 6.0937498,0 0,2.5 -6.0937498,0 0,-2.5 z m 7.5624998,0 6.09375,0 0,2.5 -6.09375,0 0,-2.5 z m -7.5937498,3.375 6.0937498,0 0,2.5 -6.0937498,0 0,-2.5 z m 7.5937498,0 6.09375,0 0,2.5 -6.09375,0 0,-2.5 z m 3.34375,5.59375 c 0.808606,6e-6 1.48333,0.283355 1.96875,0.875 0.48541,0.591655 0.718744,1.446217 0.71875,2.5 -6e-6,1.04496 -0.237083,1.84732 -0.71875,2.4375 -0.481676,0.590181 -1.131389,0.875 -1.9375,0.875 -0.816099,0 -1.455828,-0.287763 -1.9375,-0.875 -0.481672,-0.587236 -0.71875,-1.407257 -0.71875,-2.4375 0,-0.65935 0.08279,-1.208828 0.25,-1.65625 0.124785,-0.329672 0.28412,-0.613019 0.5,-0.875 0.215878,-0.26197 0.46169,-0.467171 0.71875,-0.59375 0.34191,-0.170712 0.709515,-0.249994 1.15625,-0.25 z m -8.4999998,0.125 1.15625,0 2.21875,6.4375 -1.1875,0 -0.5,-1.4375 -2.1875,0 -0.46875,1.4375 -1.15625,0 2.125,-6.4375 z m 3.9687498,0 1.03125,0 0,1.125 -1.03125,0 0,-1.125 z M 15,14.65625 c -0.456716,5e-6 -0.845482,0.224341 -1.125,0.59375 -0.279521,0.36942 -0.375002,0.880289 -0.375,1.625 -2e-6,0.732945 0.150491,1.309256 0.4375,1.6875 0.287004,0.378245 0.620756,0.59375 1.0625,0.59375 0.441737,0 0.810483,-0.218448 1.09375,-0.59375 0.283258,-0.3753 0.437495,-0.936894 0.4375,-1.6875 -5e-6,-0.741767 -0.161729,-1.322496 -0.4375,-1.6875 C 15.81797,14.822506 15.456712,14.656255 15,14.65625 z m -7.9374998,0.5 -0.75,2.40625 1.5,0 -0.75,-2.40625 z m 3.3749998,0.28125 1.03125,0 0,4.6875 -1.03125,0 0,-4.6875 z"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-hpeva.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-hpeva.svg
new file mode 100644
index 00000000..b9e6ae6e
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-hpeva.svg
@@ -0,0 +1,207 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg9974">
+ <defs
+ id="defs9976">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-8" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-9" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-6" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-4" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-1" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-6" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-7" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-3" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-9" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-5" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-60" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-33" />
+ </defs>
+ <metadata
+ id="metadata9979">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,6)"
+ id="text10688"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="matrix(1.15625,0,0,1.2622601,3.7966098,-0.0193326)"
+ id="layer1">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="g7299">
+ <path
+ d="m 2.89192,1.4915223 17.095694,0 L 22,3.9486931 22,18.424603 17.466586,22 2.921182,22 0.66013,18.7386 0.5776,4.0073375 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <path
+ d="M 3.65625,0 C 1.6217799,0 -2e-7,1.7026697 -2e-7,3.8124997 l 0,14.3750003 C -2e-7,20.29732 1.6217799,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.29732 22,18.1875 L 22,3.8124997 C 22,1.7026697 20.37823,0 18.34375,0 L 3.65625,0 z m -0.1875,1.7499997 15.03125,0 c 0.964953,0 1.75,0.9269762 1.75,2.09375 l 0,6.9687503 c 0,1.166774 -0.785047,2.125 -1.75,2.125 l -15.03125,0 c -0.9649534,0 -1.7187502,-0.958226 -1.7187502,-2.125 l 0,-6.9687503 c 0,-1.1667738 0.7537968,-2.09375 1.7187502,-2.09375 z m -0.34375,1.46875 0,8.2812503 15.75,0 0,-8.2812503 -15.75,0 z m 0.9375,1.4375 6.09375,0 0,2.625 -6.09375,0 0,-2.625 z m 7.5625,0 6.09375,0 0,2.625 -6.09375,0 0,-2.625 z m -7.59375,3.53125 6.09375,0 0,2.5625003 -6.09375,0 0,-2.5625003 z m 7.59375,0 6.09375,0 0,2.5625003 -6.09375,0 0,-2.5625003 z m -8.65625,5.7187503 4.3125,0 0,1.0625 -3.15625,0 0,1.40625 2.9375,0 0,1.0625 -2.9375,0 0,1.75 3.25,0 0,1.0625 -4.40625,0 0,-6.34375 z m 4.8125,0 1.28125,0 1.46875,4.6875 1.40625,-4.6875 1.28125,0 -2.125,6.34375 -1.21875,0 -2.09375,-6.34375 z m 7.65625,0 1.28125,0 2.3125,6.34375 -1.28125,0 -0.5,-1.46875 -2.3125,0 -0.5,1.46875 -1.21875,0 2.21875,-6.34375 z m 0.625,1.5 -0.75,2.3125 1.53125,0 -0.78125,-2.3125 z"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-hpmsa.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-hpmsa.svg
new file mode 100644
index 00000000..8b3a7bd9
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-hpmsa.svg
@@ -0,0 +1,203 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg9974">
+ <defs
+ id="defs9976">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-8" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-9" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-6" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-4" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-1" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-6" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-7" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-3" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-9" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-5" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-60" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-33" />
+ </defs>
+ <metadata
+ id="metadata9979">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="matrix(1.15625,0,0,1.2236547,1.75,1.7500001)"
+ id="layer1">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="g7439">
+ <path
+ d="m 2.89192,1.4915222 17.095694,0 L 22,3.948693 22,18.424603 17.466586,22 2.921182,22 0.66013,18.7386 0.5776,4.0073374 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <path
+ d="M 3.65625,-2e-7 C 1.62178,-2e-7 0,1.7026698 0,3.8124998 L 0,18.1875 C 0,20.29732 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.29732 22,18.1875 L 22,3.8124998 C 22,1.7026698 20.37823,-2e-7 18.34375,-2e-7 l -14.6875,0 z m -0.15625,1.75 15,0 c 0.964953,0 1.75,0.9001612 1.75,2.03125 l 0,6.7500002 c 0,1.131089 -0.785047,2.09375 -1.75,2.09375 l -15,0 c -0.964954,0 -1.75,-0.962661 -1.75,-2.09375 l 0,-6.7500002 c 0,-1.1310888 0.785046,-2.03125 1.75,-2.03125 z m -0.375,1.40625 0,8.0312502 15.75,0 0,-8.0312502 -15.75,0 z m 0.9375,1.4375 6.09375,0 0,2.5 -6.09375,0 0,-2.5 z m 7.5625,0 6.09375,0 0,2.5 -6.09375,0 0,-2.5 z M 4.03125,7.96875 l 6.09375,0 0,2.5 -6.09375,0 0,-2.5 z m 7.59375,0 6.09375,0 0,2.5 -6.09375,0 0,-2.5 z m -0.5625,5.59375 c 0.688813,6e-6 1.245595,0.175088 1.59375,0.53125 0.348147,0.356175 0.545025,0.81166 0.5625,1.40625 l -1.125,0.09375 c -0.04742,-0.33261 -0.156521,-0.60429 -0.3125,-0.75 -0.155985,-0.145701 -0.406789,-0.218744 -0.71875,-0.21875 -0.321949,6e-6 -0.567815,0.06275 -0.75,0.21875 -0.1173,0.100088 -0.187502,0.269723 -0.1875,0.4375 -2e-6,0.153068 0.07769,0.266094 0.1875,0.375 0.139758,0.138351 0.460924,0.287383 1,0.4375 0.53907,0.150124 0.96044,0.33958 1.21875,0.5 0.258302,0.160427 0.447746,0.346839 0.59375,0.625 0.145994,0.278167 0.218745,0.6221 0.21875,1.03125 -5e-6,0.370887 -0.07531,0.707461 -0.25,1.03125 -0.174704,0.323791 -0.430553,0.592522 -0.75,0.75 C 12.024296,20.188734 11.632928,20.25 11.15625,20.25 10.462441,20.25 9.934359,20.065745 9.5625,19.6875 9.190638,19.309255 8.978625,18.755362 8.90625,18.03125 l 1.03125,-0.125 c 0.06489,0.426816 0.207839,0.737341 0.40625,0.9375 0.198407,0.200165 0.506827,0.312501 0.84375,0.3125 0.356884,1e-6 0.600308,-0.103167 0.78125,-0.28125 0.180936,-0.178087 0.249996,-0.386572 0.25,-0.625 -3e-6,-0.153062 -0.01763,-0.267563 -0.09375,-0.375 -0.07612,-0.107436 -0.216579,-0.233024 -0.40625,-0.3125 -0.12978,-0.05298 -0.413296,-0.114594 -0.875,-0.25 -0.593981,-0.173665 -1.010414,-0.403103 -1.25,-0.65625 -0.336922,-0.356164 -0.500001,-0.800319 -0.5,-1.3125 -10e-7,-0.329671 0.09152,-0.619249 0.25,-0.90625 0.158476,-0.28699 0.389261,-0.506122 0.6875,-0.65625 0.298236,-0.150118 0.609473,-0.218744 1.03125,-0.21875 z m -8.3125,0.125 1.6875,0 0.96875,4.375 1,-4.375 1.65625,0 0,6.4375 -1.03125,0 0,-5.0625 -1.09375,5.0625 -1.03125,0 -1.125,-5.0625 0,5.0625 -1.03125,0 0,-6.4375 z m 13.125,0 1.15625,0 2.21875,6.4375 -1.21875,0 -0.5,-1.4375 -2.15625,0 -0.46875,1.4375 -1.15625,0 2.125,-6.4375 z m 0.59375,1.46875 -0.78125,2.40625 1.53125,0 -0.75,-2.40625 z"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-ibm.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-ibm.svg
new file mode 100644
index 00000000..12f6627c
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-ibm.svg
@@ -0,0 +1,203 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg9974">
+ <defs
+ id="defs9976">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-8" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-9" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-6" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-4" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-1" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-6" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-7" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-3" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-9" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-5" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-60" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-33" />
+ </defs>
+ <metadata
+ id="metadata9979">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="matrix(1.15625,0,0,1.2291667,1.75,1.75)"
+ id="layer1">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="g7793">
+ <path
+ d="m 2.8919201,1.4915222 17.0956939,0 L 22,3.948693 22,18.424603 17.466586,22 2.9211821,22 0.66013011,18.7386 0.57760011,4.0073374 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <path
+ d="M 3.65625,0 C 1.6217797,0 -3e-7,1.7026697 -3e-7,3.8124997 l 0,14.3750003 C -3e-7,20.29732 1.6217797,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.29732 22,18.1875 L 22,3.8124997 C 22,1.7026697 20.37823,0 18.34375,0 L 3.65625,0 z M 3.5,1.7499997 l 15,0 c 0.964953,0 1.75,0.8950661 1.75,2.03125 l 0,6.8125003 c 0,1.136184 -0.785047,2.0625 -1.75,2.0625 l -15,0 c -0.964953,0 -1.7500003,-0.926316 -1.7500003,-2.0625 l 0,-6.8125003 c 0,-1.1361839 0.7850473,-2.03125 1.7500003,-2.03125 z m -0.375,1.40625 0,8.0937503 15.75,0 0,-8.0937503 -15.75,0 z m 0.9375,1.4375 6.09375,0 0,2.53125 -6.09375,0 0,-2.53125 z m 7.5625,0 6.09375,0 0,2.53125 -6.09375,0 0,-2.53125 z m -7.59375,3.40625 6.09375,0 0,2.5000003 -6.09375,0 0,-2.5000003 z m 7.59375,0 6.09375,0 0,2.5000003 -6.09375,0 0,-2.5000003 z M 4.5,13.75 l 1.125,0 0,6.5 -1.125,0 0,-6.5 z m 2.15625,0 2.21875,0 c 0.43425,6e-6 0.755363,0.01964 0.96875,0.0625 0.213379,0.04287 0.425286,0.113993 0.59375,0.25 0.168456,0.136018 0.262688,0.36756 0.375,0.59375 0.112302,0.226201 0.187495,0.43786 0.1875,0.71875 -5e-6,0.304556 -0.08024,0.58947 -0.21875,0.84375 -0.138516,0.254288 -0.294162,0.435361 -0.53125,0.5625 0.334421,0.115319 0.570304,0.315815 0.75,0.59375 0.179686,0.27794 0.249995,0.624488 0.25,1 -5e-6,0.295682 -0.0402,0.564333 -0.15625,0.84375 -0.116055,0.279418 -0.2991,0.520441 -0.5,0.6875 -0.200909,0.16706 -0.42426,0.274064 -0.71875,0.3125 C 9.690313,20.242399 9.237532,20.2441 8.53125,20.25 l -1.875,0 0,-6.500001 z m 5.53125,0 1.65625,0 1,4.4375 1,-4.4375 1.65625,0 0,6.5 -1.03125,0 0,-5.09375 -1.09375,5.09375 -1.0625,0 -1.09375,-5.09375 0,5.09375 -1.03125,0 0,-6.5 z m -4.40625,1.09375 0,1.5 0.71875,0 c 0.431755,0 0.707676,-0.04772 0.8125,-0.0625 0.18967,-0.0266 0.360182,-0.09013 0.46875,-0.21875 0.10856,-0.12862 0.124996,-0.290063 0.125,-0.5 -4e-6,-0.201058 -0.03141,-0.374331 -0.125,-0.5 C 9.68766,14.936842 9.559679,14.870361 9.375,14.84375 c -0.109815,-0.01478 -0.44715,0 -0.96875,0 l -0.625,0 z m 0,2.5625 0,1.71875 1,0 c 0.39931,0 0.673931,-0.0046 0.78125,-0.03125 0.164713,-0.03548 0.271424,-0.08125 0.375,-0.21875 0.103568,-0.137488 0.187496,-0.363118 0.1875,-0.59375 -4e-6,-0.195146 -0.04514,-0.363985 -0.125,-0.5 -0.07987,-0.136011 -0.192764,-0.187902 -0.34375,-0.25 -0.150994,-0.0621 -0.46462,-0.125 -0.96875,-0.125 l -0.90625,0 z"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-ibmsm.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-ibmsm.svg
new file mode 100644
index 00000000..a8a113aa
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-ibmsm.svg
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g7975">
+ <path
+ d="m 2.89192,1.4915223 17.095694,0 L 22,3.948693 22,18.424603 17.466586,22 2.921182,22 0.66013,18.7386 0.5776,4.0073374 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z M 3.5,1.75 l 15,0 c 0.964953,0 1.75,0.8918986 1.75,2.03125 l 0,6.8125 c 0,1.139351 -0.785047,2.09375 -1.75,2.09375 l -15,0 c -0.9649531,0 -1.75,-0.954399 -1.75,-2.09375 l 0,-6.8125 C 1.75,2.6418986 2.5350469,1.75 3.5,1.75 z m -0.375,1.4375 0,8.0625 15.75,0 0,-8.0625 -15.75,0 z m 0.9375,1.40625 6.09375,0 0,2.5625 -6.09375,0 0,-2.5625 z m 7.5625,0 6.09375,0 0,2.5625 -6.09375,0 0,-2.5625 z m -7.59375,3.4375 6.09375,0 0,2.5 -6.09375,0 0,-2.5 z m 7.59375,0 6.09375,0 0,2.5 -6.09375,0 0,-2.5 z M 7.84375,13.5 c 0.6888128,6e-6 1.2143447,0.203736 1.5625,0.5625 0.348147,0.358776 0.5137755,0.80732 0.53125,1.40625 L 8.875,15.5625 C 8.827578,15.227461 8.6872284,14.959275 8.53125,14.8125 8.375265,14.665739 8.155711,14.593755 7.84375,14.59375 c -0.3219488,5e-6 -0.5678151,0.06161 -0.75,0.21875 -0.1173001,0.100819 -0.1875015,0.268498 -0.1875,0.4375 -1.5e-6,0.154186 0.046437,0.265299 0.15625,0.375 0.139758,0.139362 0.5234245,0.286287 1.0625,0.4375 0.5390701,0.15122 0.9291905,0.338409 1.1875,0.5 0.2583018,0.161599 0.4477465,0.376057 0.59375,0.65625 0.145995,0.280199 0.218745,0.619111 0.21875,1.03125 -5e-6,0.373596 -0.106555,0.705095 -0.28125,1.03125 -0.1747039,0.326156 -0.399303,0.591371 -0.71875,0.75 C 8.8055458,20.189881 8.4141777,20.25 7.9375,20.25 7.2436908,20.25 6.7156094,20.068508 6.34375,19.6875 5.9718886,19.306492 5.728625,18.760651 5.65625,18.03125 L 6.75,17.90625 c 0.064888,0.429933 0.1765895,0.704628 0.375,0.90625 0.198407,0.201627 0.475577,0.3125 0.8125,0.3125 0.3568836,0 0.6003077,-0.07061 0.78125,-0.25 C 8.8996863,18.695617 8.9999965,18.49017 9,18.25 8.9999966,18.095819 8.982364,17.983222 8.90625,17.875 8.8301273,17.766772 8.6896706,17.64256 8.5,17.5625 8.3702201,17.509131 8.0554536,17.417644 7.59375,17.28125 6.9997695,17.106315 6.614587,16.879996 6.375,16.625 6.0380786,16.266234 5.8749995,15.828423 5.875,15.3125 c -5e-7,-0.332079 0.060272,-0.617152 0.21875,-0.90625 0.1584766,-0.289085 0.3892616,-0.505028 0.6875,-0.65625 0.2982357,-0.151211 0.640723,-0.249994 1.0625,-0.25 z m 3.1875,0.125 1.65625,0 1.03125,4.4375 0.96875,-4.4375 1.65625,0 0,6.5 -1.03125,0 0,-5.125 -1.09375,5.125 -1.0625,0 -1.0625,-5.125 0,5.125 -1.0625,0 0,-6.5 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-macrosan.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-macrosan.svg
new file mode 100644
index 00000000..3dbf3b02
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-macrosan.svg
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="22px" height="22px" viewBox="0 0 22 22" enable-background="new 0 0 22 22" xml:space="preserve">
+<g>
+ <rect x="11.73" y="6.984" fill="#6494CE" width="7.263" height="2.785"/>
+ <rect x="11.73" y="3.171" fill="#6494CE" width="7.263" height="2.828"/>
+ <rect x="2.708" y="6.984" fill="#6494CE" width="7.261" height="2.785"/>
+ <rect x="2.751" y="3.171" fill="#6494CE" width="7.261" height="2.828"/>
+ <path fill="#6494CE" d="M19.938,0H2.063C0.915,0,0,1.004,0,2.271v7.584c0,1.267,0.915,2.314,2.063,2.314h17.876
+ c1.146,0,2.062-1.047,2.062-2.314V2.271C22,1.004,21.085,0,19.938,0z M20.368,10.584H1.633V1.585h18.735V10.584z"/>
+ <path fill="#6494CE" d="M7.005,18.135c-0.165,0.483-0.288,0.852-0.366,1.102c-0.069-0.226-0.179-0.565-0.328-1.018L4.68,13.354
+ H3.307v6.871h0.879v-5.849l1.992,5.849h0.824l2-5.75v5.75h0.88v-6.871H8.656L7.005,18.135z"/>
+ <path fill="#6494CE" d="M18.025,16.606c-0.274-0.125-0.782-0.271-1.523-0.438c-0.74-0.168-1.199-0.331-1.374-0.49
+ c-0.18-0.159-0.269-0.362-0.269-0.609c0-0.284,0.125-0.527,0.378-0.729c0.252-0.202,0.653-0.303,1.205-0.303
+ c0.529,0,0.929,0.111,1.2,0.332c0.272,0.223,0.431,0.55,0.477,0.986l0.876-0.067c-0.017-0.401-0.128-0.764-0.338-1.082
+ c-0.211-0.318-0.511-0.56-0.901-0.725c-0.39-0.163-0.84-0.245-1.351-0.245c-0.464,0-0.886,0.078-1.264,0.233
+ c-0.379,0.156-0.669,0.385-0.865,0.687c-0.198,0.301-0.296,0.625-0.296,0.974c0,0.314,0.081,0.6,0.241,0.854
+ c0.161,0.254,0.407,0.468,0.735,0.64c0.254,0.134,0.696,0.277,1.331,0.429c0.633,0.151,1.041,0.264,1.227,0.335
+ c0.288,0.11,0.495,0.245,0.62,0.405c0.125,0.161,0.188,0.35,0.188,0.565c0,0.213-0.064,0.408-0.194,0.588
+ c-0.131,0.179-0.329,0.321-0.595,0.424c-0.267,0.104-0.574,0.154-0.922,0.154c-0.392,0-0.743-0.067-1.057-0.203
+ c-0.314-0.135-0.546-0.313-0.693-0.534c-0.149-0.22-0.243-0.502-0.284-0.845l-0.859,0.075c0.012,0.458,0.137,0.87,0.378,1.234
+ c0.239,0.364,0.568,0.636,0.991,0.816c0.421,0.182,0.943,0.272,1.566,0.272c0.494,0,0.936-0.091,1.328-0.271
+ c0.394-0.18,0.695-0.431,0.905-0.754s0.315-0.667,0.315-1.032c0-0.369-0.097-0.696-0.287-0.978
+ C18.724,17.024,18.427,16.792,18.025,16.606z"/>
+</g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-netapp.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-netapp.svg
new file mode 100644
index 00000000..bfe8c830
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-netapp.svg
@@ -0,0 +1,146 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g8210">
+ <path
+ d="m 2.89192,1.4915222 17.095694,0 L 22,3.948693 22,18.424603 17.466586,22 2.921182,22 0.66013,18.7386 0.5776,4.0073374 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z M 3.5,1.75 l 15,0 c 0.964953,0 1.75,0.9159872 1.75,2.0625 l 0,6.84375 c 0,1.146513 -0.785047,2.09375 -1.75,2.09375 l -15,0 c -0.9649531,0 -1.75,-0.947237 -1.75,-2.09375 l 0,-6.84375 C 1.75,2.6659872 2.5350469,1.75 3.5,1.75 z m -0.375,1.4375 0,8.125 15.75,0 0,-8.125 -15.75,0 z m 0.9375,1.4375 6.09375,0 0,2.5625 -6.09375,0 0,-2.5625 z m 7.5625,0 6.09375,0 0,2.5625 -6.09375,0 0,-2.5625 z m -7.59375,3.4375 6.09375,0 0,2.53125 -6.09375,0 0,-2.53125 z m 7.59375,0 6.09375,0 0,2.53125 -6.09375,0 0,-2.53125 z m -5.875,5.625 1.09375,0 2.25,4.40625 0,-4.40625 1,0 0,6.5625 L 9,20.25 6.78125,16 l 0,4.25 -1.03125,0 0,-6.5625 z m 7.125,0 1.15625,0 2.21875,6.5625 -1.1875,0 -0.53125,-1.46875 -2.15625,0 -0.46875,1.46875 -1.15625,0 2.125,-6.5625 z m 0.59375,1.53125 -0.78125,2.4375 1.53125,0 -0.75,-2.4375 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.15625,0,0,1.2403409,1.75,1032.1122)"
+ id="layer1-35">
+ <g
+ id="text5399-1"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639-0"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068-1"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125-6"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84-4">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-0"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724-6"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751-1"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37-8">
+ <g
+ id="text5141-9"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804-8"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-sun.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-sun.svg
new file mode 100644
index 00000000..71b49c78
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-sun.svg
@@ -0,0 +1,146 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g8436">
+ <path
+ d="m 2.89192,1.4915218 17.095694,0 L 22,3.948693 22,18.424603 17.466586,22 2.921182,22 0.6601302,18.7386 0.5776002,4.007337 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z M 3.5,1.75 l 15,0 c 0.964953,0 1.75,0.897022 1.75,2.03125 l 0,6.78125 c 0,1.134228 -0.785047,2.0625 -1.75,2.0625 l -15,0 c -0.9649531,0 -1.75,-0.928272 -1.75,-2.0625 l 0,-6.78125 C 1.75,2.647022 2.5350469,1.75 3.5,1.75 z m -0.375,1.40625 0,8.0625 15.75,0 0,-8.0625 -15.75,0 z m 0.9375,1.4375 6.09375,0 0,2.53125 -6.09375,0 0,-2.53125 z m 7.5625,0 6.09375,0 0,2.53125 -6.09375,0 0,-2.53125 z M 4.03125,8 10.125,8 l 0,2.5 -6.09375,0 0,-2.5 z m 7.59375,0 6.09375,0 0,2.5 -6.09375,0 0,-2.5 z m -6.09375,5.53125 c 0.6888128,6e-6 1.2143448,0.174099 1.5625,0.53125 C 7.4418971,14.419664 7.6075256,14.90376 7.625,15.5 L 6.5625,15.5625 C 6.5150781,15.228967 6.3747286,14.989865 6.21875,14.84375 6.0627652,14.697645 5.843211,14.625005 5.53125,14.625 c -0.3219488,5e-6 -0.5678151,0.06232 -0.75,0.21875 -0.1173004,0.100365 -0.1875015,0.238008 -0.1875,0.40625 -1.5e-6,0.153493 0.077687,0.297042 0.1875,0.40625 0.1397579,0.138735 0.4921745,0.255718 1.03125,0.40625 0.53907,0.150541 0.9291904,0.339136 1.1875,0.5 0.2583019,0.160872 0.4477466,0.377317 0.59375,0.65625 0.1459944,0.278939 0.2187453,0.620965 0.21875,1.03125 -4.7e-6,0.371917 -0.1065552,0.706561 -0.28125,1.03125 -0.1747039,0.324689 -0.3993031,0.592085 -0.71875,0.75 C 6.4930457,20.189171 6.1016776,20.25 5.625,20.25 4.9311907,20.25 4.4031095,20.066795 4.03125,19.6875 3.6593887,19.308205 3.4161255,18.757371 3.34375,18.03125 l 1.09375,-0.125 c 0.064888,0.428 0.1765895,0.736785 0.375,0.9375 0.1984071,0.200721 0.475577,0.28125 0.8125,0.28125 0.3568836,0 0.6003079,-0.07142 0.78125,-0.25 C 6.5871858,18.696424 6.6874964,18.489091 6.6875,18.25 6.6874965,18.096513 6.6698648,17.982735 6.59375,17.875 6.5176275,17.767259 6.3771706,17.642197 6.1875,17.5625 6.0577201,17.509371 5.7429536,17.448281 5.28125,17.3125 4.6872695,17.138352 4.3020869,16.9101 4.0625,16.65625 c -0.3369215,-0.357153 -0.5000005,-0.798897 -0.5,-1.3125 -5e-7,-0.330586 0.060271,-0.649703 0.21875,-0.9375 0.1584768,-0.287785 0.3892615,-0.474458 0.6875,-0.625 0.2982357,-0.150535 0.640723,-0.249994 1.0625,-0.25 z m 3.1875,0.125 1.125,0 0,3.5 c 0,0.557876 0.0038,0.928455 0.03125,1.09375 0.047417,0.265655 0.196555,0.464134 0.375,0.625 0.178441,0.160866 0.40928,0.250001 0.71875,0.25 0.314456,1e-6 0.559021,-0.06674 0.71875,-0.21875 0.159722,-0.152012 0.248802,-0.341119 0.28125,-0.5625 C 12.001194,18.122374 12,17.732349 12,17.21875 l 0,-3.5625 1.125,0 0,3.40625 c 0,0.779255 -0.03386,1.334515 -0.09375,1.65625 -0.0599,0.321738 -0.182781,0.591122 -0.34375,0.8125 -0.160978,0.22138 -0.355467,0.3999 -0.625,0.53125 C 11.79296,20.193856 11.43425,20.25 11,20.25 10.475899,20.25 10.083283,20.174405 9.8125,20.03125 9.5417123,19.888092 9.3134785,19.697509 9.15625,19.46875 8.9990194,19.239993 8.8936642,19.000896 8.84375,18.75 8.771375,18.378086 8.71875,17.819873 8.71875,17.09375 l 0,-3.4375 z m 5.5625,0 1.09375,0 2.25,4.34375 0,-4.34375 1.03125,0 0,6.46875 -1.125,0 -2.1875,-4.21875 0,4.21875 -1.0625,0 0,-6.46875 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.15625,0,0,1.2270508,1.75,1032.1122)"
+ id="layer1-1">
+ <g
+ id="text5399-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639-9"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068-8"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125-8"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84-0">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-8"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724-7"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751-7"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37-8">
+ <g
+ id="text5141-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804-8"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-zte.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-zte.svg
new file mode 100644
index 00000000..fe382335
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-diskraid-zte.svg
@@ -0,0 +1,146 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g8662">
+ <path
+ d="m 2.89192,1.4915068 17.095694,0 L 22,3.9486776 l 0,14.4759104 -4.533414,3.575397 -14.545404,0 L 0.66013,18.738585 0.5776,4.007322 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z M 3.5,1.75 l 15,0 c 0.964953,0 1.75,0.8950661 1.75,2.03125 l 0,6.8125 c 0,1.136184 -0.785047,2.0625 -1.75,2.0625 l -15,0 c -0.9649531,0 -1.75,-0.926316 -1.75,-2.0625 l 0,-6.8125 C 1.75,2.6450661 2.5350469,1.75 3.5,1.75 z m -0.375,1.40625 0,8.09375 15.75,0 0,-8.09375 -15.75,0 z m 0.9375,1.4375 6.09375,0 0,2.53125 -6.09375,0 0,-2.53125 z m 7.5625,0 6.09375,0 0,2.53125 -6.09375,0 0,-2.53125 z M 4.03125,8 10.125,8 l 0,2.5 -6.09375,0 0,-2.5 z m 7.59375,0 6.09375,0 0,2.5 -6.09375,0 0,-2.5 z m -7.3125,5.75 4,0 0,1 -3,4.375 3.125,0 0,1.125 -4.4375,0 0,-1.1875 2.875,-4.21875 -2.5625,0 0,-1.09375 z m 4.4375,0 4.375,0 0,1.09375 -1.625,0 0,5.40625 -1.125,0 0,-5.40625 -1.625,0 0,-1.09375 z m 5.09375,0 4.0625,0 0,1.09375 -2.96875,0 0,1.4375 2.75,0 0,1.09375 -2.75,0 0,1.75 3.0625,0 0,1.125 -4.15625,0 0,-6.5 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.15625,0,0,1.2291667,1.75,1032.1122)"
+ id="layer1-7">
+ <g
+ id="text5399-1"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3-0">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639-7"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068-3"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125-4"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84-9">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-6"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724-5"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751-1"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37-0">
+ <g
+ id="text5141-9"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804-9"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938-6"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-checkpoint.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-checkpoint.svg
new file mode 100644
index 00000000..fe5000e0
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-checkpoint.svg
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g9135">
+ <path
+ d="m 2.8919556,1.4915218 17.0956944,0 2.012386,2.457171 0,14.4759102 L 17.466622,22 2.9212176,22 0.66016556,18.7386 0.57763556,4.0073368 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(4.4444444e-7,-1030.3622)"
+ id="layer1">
+ <path
+ d="M 3.65625,0 C 1.6318877,0 0.01600491,1.6859888 0,3.78125 -7.9912669e-5,3.7917117 0,3.8020181 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 l 0,-14.375 c 0,-0.010482 8e-5,-0.020788 0,-0.03125 C 21.983995,1.6859888 20.368122,0 18.34375,0 L 5.1875,0 3.65625,0 z m 1.53125,1.375 2.25,0 0,2.40625 7.5625,0 0,-2.40625 2.1875,0 0,2.40625 3.4375,0 0,1.21875 -0.375,0 0,3.75 0.375,0 0,10.53125 -3.4375,0 0,1.34375 -2.1875,0 0,-1.34375 -7.5625,0 0,1.34375 -2.25,0 0,-1.34375 -3.8125,0 0,-10.53125 6.875,0 0,-3.75 -6.875,0 0,-1.21875 3.8125,0 0,-2.40625 z M 10.5,5 l 0,3.75 7.5625,0 0,-3.75 L 10.5,5 z m -2.34375,5.28125 c -0.9650071,0 -1.751588,0.303 -2.34375,0.9375 -0.592163,0.6344 -0.875,1.57195 -0.875,2.71875 0,1.084 0.285969,1.90615 0.875,2.53125 0.589028,0.6251 1.335122,0.9375 2.25,0.9375 0.7394173,0 1.33156,-0.1975 1.8125,-0.5625 0.480931,-0.3651 0.824457,-0.9355 1.03125,-1.6875 L 9.59375,14.75 c -0.115926,0.5044 -0.296187,0.85885 -0.5625,1.09375 -0.266321,0.2356 -0.599043,0.34375 -0.96875,0.34375 -0.501304,0 -0.905438,-0.1927 -1.21875,-0.5625 -0.313315,-0.3697 -0.500001,-0.97265 -0.5,-1.84375 -1e-6,-0.821 0.181985,-1.3835 0.5,-1.75 0.318012,-0.3666 0.708046,-0.5625 1.21875,-0.5625 0.369707,0 0.710263,0.1048 0.96875,0.3125 0.25848,0.2068 0.418534,0.48655 0.5,0.84375 l 1.375,-0.34375 c -0.156663,-0.5515 -0.374191,-0.9554 -0.6875,-1.25 -0.5263709,-0.4983 -1.2196887,-0.75 -2.0625,-0.75 z m 3.96875,0.125 0,6.875 1.40625,0 0,-2.59375 0.90625,0 c 0.629758,0 1.074132,-0.0588 1.40625,-0.125 0.24438,-0.054 0.513444,-0.1477 0.75,-0.3125 0.236547,-0.1646 0.44022,-0.3993 0.59375,-0.6875 C 17.34102,13.2742 17.406243,12.9229 17.40625,12.5 17.406243,11.9516 17.26631,11.5337 17,11.1875 16.733678,10.8413 16.426021,10.6031 16.03125,10.5 15.774328,10.431 15.189693,10.40625 14.34375,10.40625 l -2.21875,0 z m 1.40625,1.15625 0.65625,0 c 0.501299,0 0.86519,0.0023 1.03125,0.03125 0.225583,0.041 0.415238,0.1495 0.5625,0.3125 0.147254,0.1629 0.187496,0.40565 0.1875,0.65625 -4e-6,0.2037 -0.05129,0.3466 -0.15625,0.5 -0.104967,0.1536 -0.252649,0.27225 -0.4375,0.34375 -0.184859,0.073 -0.576704,0.125 -1.125,0.125 l -0.71875,0 0,-1.96875 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-cisco.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-cisco.svg
new file mode 100644
index 00000000..601e923b
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-cisco.svg
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <path
+ d="M 3.65625,0 C 1.6318877,0 0.01600491,1.6859888 0,3.78125 -7.9912669e-5,3.7917117 0,3.8020181 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 l 0,-14.375 c 0,-0.010482 8e-5,-0.020788 0,-0.03125 C 21.983995,1.6859888 20.368122,0 18.34375,0 l -13.125,0 -1.5625,0 z m 1.5625,1.375 2.21875,0 0,2.40625 7.5625,0 0,-2.40625 2.1875,0 0,2.40625 3.4375,0 0,1.21875 -0.375,0 0,3.78125 0.375,0 0,10.5 -3.4375,0 0,1.34375 -2.1875,0 0,-1.34375 -7.5625,0 0,1.34375 -2.21875,0 0,-1.34375 -3.84375,0 0,-10.5 6.875,0 L 8.25,5 1.375,5 l 0,-1.21875 3.84375,0 0,-2.40625 z M 10.5,5 l 0,3.78125 7.5625,0 L 18.0625,5 10.5,5 z m -3.25,5.5625 c -0.959388,0 -1.7550379,0.334325 -2.34375,0.96875 -0.5887149,0.634425 -0.84375,1.54075 -0.84375,2.6875 0,1.08405 0.2581505,1.906175 0.84375,2.53125 0.5855968,0.625075 1.3716998,0.96875 2.28125,0.96875 0.7351086,0 1.3031096,-0.197437 1.78125,-0.5625 C 9.4468795,16.791187 9.7944115,16.220738 10,15.46875 L 8.65625,15.03125 C 8.540999,15.535737 8.38976,15.921263 8.125,16.15625 7.8602304,16.391787 7.5550523,16.5 7.1875,16.5 6.6891145,16.5 6.2489865,16.307237 5.9375,15.9375 5.6260094,15.567762 5.4687486,14.964812 5.46875,14.09375 c -1.4e-6,-0.820875 0.152587,-1.383425 0.46875,-1.75 0.3161589,-0.366575 0.7422697,-0.5625 1.25,-0.5625 0.3675523,0 0.6805181,0.07404 0.9375,0.28125 0.2569737,0.2068 0.4190086,0.517775 0.5,0.875 L 10,12.59375 C 9.8442492,12.042238 9.6239824,11.638275 9.3125,11.34375 8.7891942,10.845587 8.0878994,10.5625 7.25,10.5625 z m 8,0 c -0.959388,0 -1.755038,0.334325 -2.34375,0.96875 -0.588714,0.634425 -0.875,1.54075 -0.875,2.6875 0,1.08405 0.2894,1.906175 0.875,2.53125 0.585597,0.625075 1.340451,0.96875 2.25,0.96875 0.73511,0 1.33436,-0.197437 1.8125,-0.5625 0.478129,-0.365063 0.825661,-0.935512 1.03125,-1.6875 l -1.34375,-0.4375 c -0.115251,0.504487 -0.32899,0.890013 -0.59375,1.125 C 15.79773,16.391787 15.492554,16.5 15.125,16.5 c -0.498384,0 -0.876013,-0.192763 -1.1875,-0.5625 -0.311491,-0.369738 -0.468753,-0.972688 -0.46875,-1.84375 -3e-6,-0.820875 0.152587,-1.383425 0.46875,-1.75 0.316159,-0.366575 0.711021,-0.5625 1.21875,-0.5625 0.367552,0 0.680518,0.07404 0.9375,0.28125 0.256974,0.2068 0.450256,0.517775 0.53125,0.875 L 18,12.59375 c -0.155751,-0.551512 -0.438518,-0.955475 -0.75,-1.25 -0.523306,-0.498163 -1.162101,-0.78125 -2,-0.78125 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-cisco2.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-cisco2.svg
new file mode 100644
index 00000000..de7c0afd
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-cisco2.svg
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g9356">
+ <path
+ d="m 2.8919915,1.4915009 17.0956945,0 2.012386,2.457171 0,14.4759101 -4.533414,3.575397 -14.5454045,0 -2.26105198,-3.2614 -0.08253,-14.7312631 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(3.5516742e-5,-1030.3622)"
+ id="layer1">
+ <path
+ d="M 3.65625,0 C 1.6318877,0 0.01600491,1.6859888 0,3.78125 -7.9912669e-5,3.7917117 0,3.8020181 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 l 0,-14.375 c 0,-0.010482 8e-5,-0.020788 0,-0.03125 C 21.983995,1.6859888 20.368122,0 18.34375,0 L 5.1875,0 3.65625,0 z m 1.53125,1.375 2.25,0 0,2.40625 7.5625,0 0,-2.40625 2.1875,0 0,2.40625 3.4375,0 0,1.21875 -0.375,0 0,3.75 0.375,0 0,10.53125 -3.4375,0 0,1.34375 -2.1875,0 0,-1.34375 -7.5625,0 0,1.34375 -2.25,0 0,-1.34375 -3.8125,0 0,-10.53125 6.875,0 0,-3.75 -6.875,0 0,-1.21875 3.8125,0 0,-2.40625 z M 10.5,5 l 0,3.75 7.5625,0 0,-3.75 L 10.5,5 z m -4.78125,5.28125 c -0.965008,0 -1.782838,0.303 -2.375,0.9375 C 2.751587,11.85315 2.5,12.7907 2.5,13.9375 c 0,1.084 0.25472,1.90615 0.84375,2.53125 0.589028,0.6251 1.366372,0.9375 2.28125,0.9375 0.739417,0 1.331559,-0.1975 1.8125,-0.5625 0.480931,-0.3651 0.824457,-0.9355 1.03125,-1.6875 L 7.125,14.75 c -0.115926,0.5044 -0.296188,0.85885 -0.5625,1.09375 -0.266321,0.2356 -0.567793,0.34375 -0.9375,0.34375 -0.501304,0 -0.936688,-0.1927 -1.25,-0.5625 -0.313315,-0.3697 -0.468751,-0.97265 -0.46875,-1.84375 -1e-6,-0.821 0.150735,-1.3835 0.46875,-1.75 0.318012,-0.3666 0.739296,-0.5625 1.25,-0.5625 0.369707,0 0.679012,0.1048 0.9375,0.3125 0.258479,0.2068 0.449784,0.48655 0.53125,0.84375 l 1.375,-0.34375 c -0.156664,-0.5516 -0.374191,-0.9554 -0.6875,-1.25 -0.526372,-0.4983 -1.21969,-0.75 -2.0625,-0.75 z m 10.78125,0 c -0.965008,0 -1.782839,0.303 -2.375,0.9375 -0.592163,0.6344 -0.84375,1.57195 -0.84375,2.71875 0,1.084 0.254719,1.90615 0.84375,2.53125 0.589028,0.6251 1.366372,0.9375 2.28125,0.9375 0.739418,0 1.331559,-0.1975 1.8125,-0.5625 0.480931,-0.3651 0.824457,-0.9355 1.03125,-1.6875 L 17.90625,14.75 c -0.115927,0.5044 -0.264937,0.85885 -0.53125,1.09375 -0.266321,0.2356 -0.599042,0.34375 -0.96875,0.34375 -0.501304,0 -0.936689,-0.1927 -1.25,-0.5625 -0.313316,-0.3697 -0.468751,-0.97265 -0.46875,-1.84375 -10e-7,-0.821 0.150734,-1.3835 0.46875,-1.75 0.318011,-0.3666 0.739297,-0.5625 1.25,-0.5625 0.369708,0 0.710262,0.1048 0.96875,0.3125 0.258479,0.2068 0.418534,0.48655 0.5,0.84375 l 1.375,-0.34375 c -0.156663,-0.5516 -0.374191,-0.9554 -0.6875,-1.25 -0.526372,-0.4983 -1.21969,-0.75 -2.0625,-0.75 z M 9.03125,12.75 l 0,2.0625 3.21875,0 0,-2.0625 -3.21875,0 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-h3c.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-h3c.svg
new file mode 100644
index 00000000..5887e351
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-h3c.svg
@@ -0,0 +1,116 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g9599">
+ <path
+ d="m 2.8919558,1.4915217 17.0956942,0 2.012386,2.457171 0,14.4759103 L 17.466622,22 2.9212178,22 0.66016576,18.7386 0.57763576,4.0073367 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(4.4444445e-7,-1030.3622)"
+ id="layer1">
+ <path
+ d="M 3.65625,0 C 1.6318877,0 0.01600491,1.6859888 0,3.78125 -7.9912669e-5,3.7917117 0,3.8020181 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 l 0,-14.375 c 0,-0.010482 8e-5,-0.020788 0,-0.03125 C 21.983995,1.6859888 20.368122,0 18.34375,0 L 5.1875,0 3.65625,0 z m 1.53125,1.375 2.25,0 0,2.40625 7.5625,0 0,-2.40625 2.1875,0 0,2.40625 3.4375,0 0,1.21875 -0.375,0 0,3.75 0.375,0 0,10.53125 -3.4375,0 0,1.34375 -2.1875,0 0,-1.34375 -7.5625,0 0,1.34375 -2.25,0 0,-1.34375 -3.8125,0 0,-10.53125 6.875,0 0,-3.75 -6.875,0 0,-1.21875 3.8125,0 0,-2.40625 z M 10.5,5 l 0,3.75 7.5625,0 0,-3.75 L 10.5,5 z m 6,5.3125 c -0.85048,7e-6 -1.540617,0.365546 -2.0625,1 -0.521885,0.634466 -0.78125,1.509526 -0.78125,2.65625 0,1.084068 0.262127,1.90619 0.78125,2.53125 0.519122,0.625061 1.22495,0.9375 2.03125,0.9375 0.651661,0 1.169887,-0.13499 1.59375,-0.5 0.423853,-0.36501 0.692749,-0.935545 0.875,-1.6875 l -1.15625,-0.4375 c -0.102176,0.504437 -0.265294,0.858767 -0.5,1.09375 -0.234714,0.234986 -0.549172,0.375001 -0.875,0.375 -0.441809,1e-6 -0.786374,-0.192789 -1.0625,-0.5625 -0.276132,-0.369709 -0.406251,-1.003986 -0.40625,-1.875 -10e-7,-0.820878 0.125984,-1.414668 0.40625,-1.78125 0.280269,-0.366572 0.674906,-0.562494 1.125,-0.5625 0.325828,6e-6 0.58469,0.105719 0.8125,0.3125 0.227802,0.206792 0.396952,0.517827 0.46875,0.875 l 1.1875,-0.34375 c -0.138071,-0.551427 -0.348877,-0.955479 -0.625,-1.25 C 17.848598,10.595588 17.242783,10.312507 16.5,10.3125 z m -13.4375,0.125 0,6.9375 1.1875,0 0,-3.0625 2.40625,0 0,3.0625 1.25,0 0,-6.9375 -1.25,0 0,2.71875 -2.40625,0 0,-2.71875 -1.1875,0 z m 7.75,0 c -0.334118,7e-6 -0.605776,0.0762 -0.875,0.21875 -0.2692271,0.142564 -0.5057605,0.313422 -0.65625,0.5625 C 9.130759,11.46784 9.0120544,11.770798 8.9375,12.1875 L 10,12.40625 c 0.03037,-0.300776 0.140422,-0.530838 0.28125,-0.6875 0.140824,-0.156651 0.301185,-0.218744 0.5,-0.21875 0.201572,6e-6 0.347251,0.0809 0.46875,0.21875 0.121494,0.137864 0.218747,0.330653 0.21875,0.5625 -3e-6,0.272588 -0.08432,0.491765 -0.25,0.65625 -0.16568,0.164494 -0.403965,0.228154 -0.71875,0.21875 l -0.15625,1.0625 c 0.207095,-0.06579 0.413388,-0.09375 0.5625,-0.09375 0.226423,3e-6 0.405104,0.118254 0.5625,0.3125 0.15739,0.194257 0.218747,0.449139 0.21875,0.78125 -3e-6,0.350914 -0.05446,0.636964 -0.21875,0.84375 -0.1643,0.206788 -0.35352,0.312501 -0.59375,0.3125 -0.223667,1e-6 -0.436358,-0.07767 -0.59375,-0.25 C 10.123855,15.95268 10.035895,15.669598 10,15.34375 L 8.84375,15.5 c 0.057987,0.579631 0.2945202,1.078757 0.65625,1.4375 0.3617278,0.358744 0.825501,0.5 1.375,0.5 0.579868,0 1.079405,-0.198893 1.46875,-0.625 0.389338,-0.426106 0.531246,-0.957802 0.53125,-1.5625 -4e-6,-0.416705 -0.07278,-0.736732 -0.28125,-1.03125 -0.208481,-0.294511 -0.464581,-0.509152 -0.8125,-0.59375 0.582629,-0.360307 0.843746,-0.8328 0.84375,-1.4375 -4e-6,-0.426101 -0.153091,-0.817865 -0.4375,-1.15625 -0.345165,-0.413568 -0.803416,-0.593743 -1.375,-0.59375 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,1030.3622)"
+ id="g18127">
+ <g
+ id="text8828-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-3-6">
+ <g
+ id="text7004-7"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-juniper.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-juniper.svg
new file mode 100644
index 00000000..c223be01
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-juniper.svg
@@ -0,0 +1,109 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g9848">
+ <path
+ d="m 2.8919556,1.491522 17.0956944,0 2.012386,2.457171 0,14.47591 L 17.466622,22 2.9212176,22 0.66016556,18.7386 0.57763556,4.007337 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(4.4444444e-7,-1030.3622)"
+ id="layer1">
+ <path
+ d="M 3.65625,0 C 1.6318877,0 0.01600491,1.6859888 0,3.78125 -7.9912669e-5,3.7917117 0,3.8020181 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 l 0,-14.375 c 0,-0.010482 8e-5,-0.020788 0,-0.03125 C 21.983995,1.6859888 20.368122,0 18.34375,0 l -13.125,0 -1.5625,0 z m 1.5625,1.375 2.21875,0 0,2.40625 7.5625,0 0,-2.40625 2.1875,0 0,2.40625 3.4375,0 0,1.21875 -0.375,0 0,3.75 0.375,0 0,10.53125 -3.4375,0 0,1.34375 -2.1875,0 0,-1.34375 -7.5625,0 0,1.34375 -2.21875,0 0,-1.34375 -3.84375,0 0,-10.53125 6.875,0 0,-3.75 -6.875,0 0,-1.21875 3.84375,0 0,-2.40625 z M 10.5,5 l 0,3.75 7.5625,0 0,-3.75 L 10.5,5 z m -2.03125,5.65625 0,4.4375 C 8.4687469,15.65145 8.377707,16.010478 8.25,16.1875 8.1222862,16.364524 7.9021211,16.468751 7.59375,16.46875 7.288489,16.468751 7.0557628,16.310019 6.90625,16.0625 6.8065718,15.899579 6.7655728,15.644778 6.75,15.25 l -1.28125,0.125 c 0.00312,0.736289 0.1980579,1.306824 0.5625,1.6875 0.3644407,0.380676 0.855318,0.59375 1.53125,0.59375 0.5762512,0 1.0542645,-0.132181 1.40625,-0.375 C 9.3207281,17.038433 9.5535555,16.713542 9.6875,16.3125 9.7871714,16.005454 9.8124959,15.570233 9.8125,15 l 0,-4.34375 -1.34375,0 z m 2.84375,0 0,6.875 1.375,0 0,-2.625 0.90625,0 c 0.626088,0 1.107319,-0.02796 1.4375,-0.09375 0.242957,-0.05327 0.483572,-0.179257 0.71875,-0.34375 0.235169,-0.164487 0.409866,-0.336748 0.5625,-0.625 0.152626,-0.288244 0.249993,-0.670772 0.25,-1.09375 -7e-6,-0.548294 -0.14149,-0.966283 -0.40625,-1.3125 -0.26477,-0.346205 -0.607529,-0.5841 -1,-0.6875 -0.255425,-0.06892 -0.783984,-0.09374 -1.625,-0.09375 l -2.21875,0 z m 1.375,1.15625 0.6875,0 c 0.498379,7e-6 0.803657,0.03118 0.96875,0.0625 0.224267,0.04074 0.416095,0.118332 0.5625,0.28125 0.146396,0.162928 0.218746,0.343104 0.21875,0.59375 -4e-6,0.203659 -0.02066,0.408981 -0.125,0.5625 -0.104356,0.153528 -0.284976,0.271692 -0.46875,0.34375 -0.183782,0.07207 -0.517399,0.09375 -1.0625,0.09375 l -0.78125,0 0,-1.9375 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,-7.0312501e-8,1030.3622)"
+ id="g18142">
+ <g
+ id="text12458"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-neteye.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-neteye.svg
new file mode 100644
index 00000000..84186ec5
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-neteye.svg
@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g10056">
+ <path
+ d="m 2.8919556,1.4915225 17.0956944,0 2.012386,2.457171 0,14.4759095 L 17.466622,22 2.9212176,22 0.66016556,18.7386 0.57763556,4.0073375 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(4.4444444e-7,-1030.3622)"
+ id="layer1">
+ <path
+ d="M 3.65625,0 C 1.6318877,0 0.01600491,1.6859888 0,3.78125 -7.9912669e-5,3.7917117 0,3.8020181 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 l 0,-14.375 c 0,-0.010482 8e-5,-0.020788 0,-0.03125 C 21.983995,1.6859888 20.368122,0 18.34375,0 L 5.1875,0 3.65625,0 z m 1.53125,1.375 2.25,0 0,2.40625 7.5625,0 0,-2.40625 2.1875,0 0,2.40625 3.4375,0 0,1.21875 -0.375,0 0,3.75 0.375,0 0,1.78125 -3.3125,0 0,6.90625 3.3125,0 0,1.84375 -3.4375,0 0,1.34375 -2.1875,0 0,-1.34375 -7.5625,0 0,1.34375 -2.25,0 0,-1.34375 -3.8125,0 0,-1.84375 0.5,0 0,-4.5 2.15625,4.5 1.09375,0 0,-6.90625 -1,0 0,4.59375 -2.1875,-4.59375 -0.5625,0 0,-1.78125 6.875,0 0,-3.75 -6.875,0 0,-1.21875 3.8125,0 0,-2.40625 z M 10.5,5 l 0,3.75 7.5625,0 0,-3.75 L 10.5,5 z m -3.9375,5.53125 0,6.90625 3.625,0 0,-1.15625 -2.1875,0 0,-1.875 1.8125,0 0,-1.15625 -1.8125,0 0,-1.5625 2.0625,0 0,-1.15625 -3.5,0 z m 4.1875,0 1.96875,4 0,2.90625 1.0625,0 0,-2.90625 1.9375,-4 -1.25,0 -1.1875,2.75 -1.25,-2.75 -1.28125,0 z m 7.9375,1.15625 1.9375,0 0,1.5625 -1.9375,0 0,-1.5625 z m 0,2.71875 1.9375,0 0,1.875 -1.9375,0 0,-1.875 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,1030.3622)"
+ id="g18158">
+ <g
+ id="text8828-1"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-8-2">
+ <g
+ id="text7004-9"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(-20.478065,4.2020185)"
+ id="text9174"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-zte.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-zte.svg
new file mode 100644
index 00000000..4e11ceb7
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-zte.svg
@@ -0,0 +1,127 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g10272">
+ <g
+ transform="translate(2.050883,-0.0932)"
+ id="g10245">
+ <path
+ d="m 0.84110806,1.5847221 17.09569394,0 2.012386,2.457171 0,14.4759099 -4.533414,3.575397 -14.54540394,0 -2.26105196,-3.2614 -0.08253,-14.7312629 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(-2.0508475,-1030.269)"
+ id="layer1">
+ <path
+ d="M 3.65625,0 C 1.6318877,0 0.01600491,1.6859888 0,3.78125 -7.9912669e-5,3.7917117 0,3.8020181 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 1.53125,0 13.15625,0 C 20.37823,22 22,20.2973 22,18.1875 l 0,-14.375 c 0,-0.010482 8e-5,-0.020788 0,-0.03125 C 21.983995,1.6859888 20.368122,0 18.34375,0 L 5.1875,0 3.65625,0 z m 1.53125,1.375 2.25,0 0,2.40625 7.5625,0 0,-2.40625 2.1875,0 0,2.40625 3.4375,0 0,1.21875 -0.375,0 0,3.75 0.375,0 0,10.53125 -3.4375,0 0,0.78125 0,0.5625 -2.1875,0 0,-0.5625 0,-0.78125 -7.5625,0 0,0.78125 0,0.5625 -2.25,0 0,-0.5625 0,-0.78125 -3.8125,0 0,-10.53125 6.875,0 0,-3.75 -6.875,0 0,-1.21875 3.8125,0 0,-2.40625 z M 10.5,5 l 0,3.75 7.5625,0 0,-3.75 L 10.5,5 z m -7.875,5.6875 0,1.1875 3.1875,0 -3.625,4.4375 0,1.25 5.59375,0 0,-1.15625 -3.90625,0 3.78125,-4.625 0,-1.09375 -5.03125,0 z m 5.53125,0 0,1.1875 2.0625,0 0,5.6875 1.375,0 0,-5.6875 2.0625,0 0,-1.1875 -5.5,0 z m 6.40625,0 0,6.875 5.25,0 0,-1.15625 -3.875,0 0,-1.875 3.5,0 0,-1.15625 -3.5,0 0,-1.5 3.75,0 0,-1.1875 -5.125,0 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,1030.3622)"
+ id="g18178">
+ <g
+ id="text8828-2"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-0">
+ <g
+ id="text7004-78"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-8-1">
+ <g
+ id="text7004-9-5"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-ztemf.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-ztemf.svg
new file mode 100644
index 00000000..6559b484
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-ztemf.svg
@@ -0,0 +1,127 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g10468">
+ <path
+ d="m 2.8919556,1.4915216 17.0956944,0 2.012386,2.457171 0,14.4759104 L 17.466622,22 2.9212176,22 0.66016556,18.7386 0.57763556,4.0073366 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(4.4444444e-7,-1030.3622)"
+ id="layer1">
+ <path
+ d="M 3.65625,0 C 1.6318877,0 0.01600491,1.6859888 0,3.78125 -7.9912669e-5,3.7917117 0,3.8020181 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 1.53125,0 13.15625,0 C 20.37823,22 22,20.2973 22,18.1875 l 0,-14.375 c 0,-0.010482 8e-5,-0.020788 0,-0.03125 C 21.983995,1.6859888 20.368122,0 18.34375,0 L 5.1875,0 3.65625,0 z m 1.53125,1.375 2.25,0 0,0.25 C 6.6483513,2.4878239 6.15625,3.6448176 6.15625,4.90625 c 0,0.028636 -4.942e-4,0.065231 0,0.09375 l -3.5,0 -1.28125,0 0,-1.21875 1.28125,0 2.53125,0 0,-2.0625 0,-0.34375 z m 9.8125,0 2.1875,0 0,0.34375 0,2.0625 2.5,0 0.9375,0 0,1.21875 -0.375,0 0,3.75 0.375,0 0,10.53125 -3.4375,0 0,0.78125 0,0.5625 -2.1875,0 0,-0.5625 0,-0.78125 -7.5625,0 0,0.78125 0,0.5625 -2.25,0 0,-0.5625 0,-0.78125 -3.8125,0 0,-10.53125 1.28125,0 5.40625,0 c 0.8145885,0.6191599 1.8353734,1 2.9375,1 1.102127,0 2.122912,-0.3808401 2.9375,-1 l 4.125,0 0,-3.75 -2.21875,0 c 5.03e-4,-0.028784 0,-0.064845 0,-0.09375 0,-1.0261657 -0.300074,-1.9661802 -0.84375,-2.75 L 15,1.71875 15,1.375 z m -6.03125,0.71875 4.0625,0 0,1.03125 -2.84375,0 0,1.375 2.4375,0 0,1 -2.4375,0 0,2.53125 -1.21875,0 0,-5.9375 z M 2.625,10.6875 l 0,1.1875 0.03125,0 3.15625,0 -3.15625,3.84375 -0.46875,0.59375 0,1.25 0.46875,0 5.125,0 0,-1.15625 -3.90625,0 3.78125,-4.625 0,-1.09375 -5,0 -0.03125,0 z m 5.53125,0 0,1.1875 2.0625,0 0,5.6875 1.375,0 0,-5.6875 2.0625,0 0,-1.1875 -5.5,0 z m 6.40625,0 0,6.875 5.125,0 0.125,0 0,-1.15625 -0.125,0 -3.75,0 0,-1.875 3.5,0 0,-1.15625 -3.5,0 0,-1.5 3.75,0 0,-1.1875 -5.125,0 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,1030.3622)"
+ id="g18200">
+ <g
+ id="text8828-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-5">
+ <g
+ id="text7004-8"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-8-6">
+ <g
+ id="text7004-9-2"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="text7004-0"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-zteutm.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-zteutm.svg
new file mode 100644
index 00000000..24f5288e
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall-zteutm.svg
@@ -0,0 +1,128 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(3,3.4955)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-1427.3285)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.375,1.375)"
+ id="g18225">
+ <g
+ id="text8828-24"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-1">
+ <g
+ id="text7004-82"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-8-11">
+ <g
+ id="text7004-9-9"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-6">
+ <g
+ id="text7004-0-7"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text9161"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="g11077">
+ <path
+ d="m 2.8919553,1.4915225 17.0956947,0 2.012386,2.457171 0,14.4759095 L 17.466622,22 2.9212173,22 0.66016526,18.7386 0.57763526,4.0073375 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <path
+ d="M 3.6562504,0 C 1.6318876,0 0.01600484,1.6859885 -5.5555558e-8,3.7812497 c -7.9900000442e-5,0.010462 0,0.020768 0,0.03125 l 0,14.3750003 C -5.5555558e-8,20.2973 1.6217799,22 3.6562504,22 l 1.53125,0 13.1562496,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8124997 c 0,-0.010482 8e-5,-0.020788 0,-0.03125 C 21.984,1.6859885 20.368122,0 18.34375,0 L 5.1875004,0 3.6562504,0 z m 1.53125,1.3749997 2.25,0 0,0.25 c -0.789149,0.8628239 -1.28125,2.0198176 -1.28125,3.28125 0,0.028636 -4.95e-4,0.065231 0,0.09375 l -3.5,0 -1.2812505,0 0,-1.21875 1.2812505,0 2.53125,0 0,-2.0625 0,-0.34375 z m 9.8124996,0 2.1875,0 0,0.34375 0,2.0625 2.5,0 0.9375,0 0,1.21875 -0.375,0 0,3.75 0.375,0 0,10.5312503 -3.4375,0 0,0.78125 0,0.5625 -2.1875,0 0,-0.5625 0,-0.78125 -7.5624996,0 0,0.78125 0,0.5625 -2.25,0 0,-0.5625 0,-0.78125 -3.8125005,0 0,-10.5312503 1.2812505,0 5.40625,0 c 0.814588,0.6191599 1.835373,1 2.9374996,1 1.102127,0 2.122912,-0.3808401 2.9375,-1 l 4.125,0 0,-3.75 -2.21875,0 c 5.03e-4,-0.028784 0,-0.064845 0,-0.09375 0,-1.0261657 -0.300074,-1.9661802 -0.84375,-2.75 l 0,-0.4375 0,-0.34375 z m -6.1874996,0.71875 1.1874996,0 0,3.1875 c -1.6e-6,0.5075705 0.03296,0.8496113 0.0625,1 0.05102,0.2417007 0.151731,0.4473889 0.34375,0.59375 0.192014,0.1463633 0.44824,0.218751 0.78125,0.21875 0.338376,1e-6 0.578121,-0.080443 0.75,-0.21875 0.171871,-0.1383044 0.277584,-0.2985824 0.3125,-0.5 0.03491,-0.2014141 0.09375,-0.5327127 0.09375,-1 l 0,-3.28125 1.15625,0 0,3.09375 c -6e-6,0.7089864 -0.0293,1.2072769 -0.09375,1.5 -0.06446,0.2927257 -0.170537,0.5485848 -0.34375,0.75 -0.173222,0.2014163 -0.397465,0.3492432 -0.6875,0.46875 -0.290043,0.1195067 -0.688968,0.1562499 -1.15625,0.15625 -0.563967,-10e-8 -0.98987,-0.026001 -1.2812496,-0.15625 -0.291384,-0.1302488 -0.518312,-0.3231197 -0.6875,-0.53125 -0.169191,-0.2081291 -0.25879,-0.3967276 -0.3125,-0.625 -0.07788,-0.3383773 -0.125001,-0.8393533 -0.125,-1.5 l 0,-3.15625 z M 2.6249999,10.6875 l 0,1.1875 0.031251,0 3.15625,0 -3.15625,3.84375 -0.4687505,0.59375 0,1.25 0.4687505,0 5.125,0 0,-1.15625 -3.90625,0 3.78125,-4.625 0,-1.09375 -5,0 -0.031251,0 z m 5.5312505,0 0,1.1875 2.0624996,0 0,5.6875 1.375,0 0,-5.6875 2.0625,0 0,-1.1875 -5.4999996,0 z m 6.4062496,0 0,6.875 5.125,0 0.125,0 0,-1.15625 -0.125,0 -3.75,0 0,-1.875 3.5,0 0,-1.15625 -3.5,0 0,-1.5 3.75,0 0,-1.1875 -5.125,0 z"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall.svg
new file mode 100644
index 00000000..daac742b
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-firewall.svg
@@ -0,0 +1,102 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g8817">
+ <path
+ d="m 2.89192,1.4915221 17.095694,0 L 22,3.9486929 22,18.424603 17.466586,22 2.921182,22 0.66013,18.7386 0.5776,4.0073373 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z M 2,2 l 4.25,0 0,3.09375 -4.25,0 L 2,2 z m 6.09375,0 6.1875,0 0,3.09375 -6.1875,0 0,-3.09375 z M 16.0625,2 20,2 l 0,3.09375 -3.9375,0 0,-3.09375 z m -13.53125,4.09375 6.21875,0 0,3.09375 -6.21875,0 0,-3.09375 z m 8.03125,0 6.1875,0 0,3.09375 -6.1875,0 0,-3.09375 z m 8,0 1.4375,0 0,3.09375 -1.4375,0 0,-3.09375 z M 2,10.125 l 4.5,0 0,3.125 -4.5,0 0,-3.125 z m 6.4375,0 6.1875,0 0,3.125 -6.1875,0 0,-3.125 z m 8,0 3.5625,0 0,3.125 -3.5625,0 0,-3.125 z m -13.90625,4.21875 6.21875,0 0,3.09375 -6.21875,0 0,-3.09375 z m 8.03125,0 6.1875,0 0,3.09375 -6.1875,0 0,-3.09375 z m 8,0 1.4375,0 0,3.09375 -1.4375,0 0,-3.09375 z M 2,18.40625 l 4.25,0 L 6.25,20 2,20 2,18.40625 z m 6.09375,0 6.1875,0 0,1.59375 -6.1875,0 0,-1.59375 z m 7.96875,0 3.9375,0 0,1.59375 -3.9375,0 0,-1.59375 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.125,0,0,1.125,2,-133.54527)"
+ id="layer1-83">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-gather.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-gather.svg
new file mode 100644
index 00000000..cbff7f40
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-gather.svg
@@ -0,0 +1,295 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(20.805085,4.2413)"
+ id="layer1-8-8">
+ <g
+ id="text5399-8"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639-9"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068-1"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125-3"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84-5">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-9"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724-8"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37-0">
+ <g
+ id="text5141-7"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804-6"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,48.110565,-1426.5827)"
+ id="layer1-849-6">
+ <g
+ id="text7004-1"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,17.805085,0.7458)"
+ id="g18225">
+ <g
+ id="text8828-24"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-1">
+ <g
+ id="text7004-82"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-8-11">
+ <g
+ id="text7004-9-9"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-6">
+ <g
+ id="text7004-0-7"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text9161"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(13.813559,11.9786)"
+ id="layer1-8-2">
+ <g
+ id="text5399-0"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3-9">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639-7"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068-3"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125-7"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-6"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724-0"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751-1"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37-6">
+ <g
+ id="text5141-5"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804-7"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938-5"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,41.119039,-1418.8454)"
+ id="layer1-849-4">
+ <g
+ id="text7004-12"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,10.813559,8.4831)"
+ id="g18225-0">
+ <g
+ id="text8828-24-0"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-1-1">
+ <g
+ id="text7004-82-4"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-8-11-6">
+ <g
+ id="text7004-9-9-0"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-6-7">
+ <g
+ id="text7004-0-7-1"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text9161-7"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="g11201">
+ <g
+ id="g11177">
+ <path
+ d="m 2.891919,1.4915218 17.095695,0 L 22,3.9486928 22,18.424603 17.466586,22 2.921181,22 0.660129,18.7386 0.577599,4.0073368 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z M 6.5625,2 c 0.1649615,-0.017958 0.3380706,-0.00736 0.5,0 0.777261,0.035345 1.5073445,0.3683937 2.09375,1 1.563748,1.6842834 1.47904,4.9379721 -0.1875,7.25 -0.3455789,0.479429 -0.7475979,0.836114 -1.15625,1.15625 l 0,8.03125 c -0.7499523,0.704545 -1.5000477,0.832509 -2.25,0 l 0,-7.09375 C 4.6713402,12.389881 3.791205,12.092557 3.125,11.375 1.561252,9.6907166 1.6459596,6.4682779 3.3125,4.15625 4.2238893,2.8918598 5.4077694,2.1257038 6.5625,2 z M 10.5,2.78125 c 0.731571,0.5973434 2.508213,0.8953302 3.71875,0.8125 9.531972,-0.652215 6.649609,8.490017 -4.25,9.03125 L 8.1875,12.4375 C 8.8435361,11.812127 9.3851271,11.004592 10,10.125 11.681235,7.7199494 11.450966,5.04248 10.5,2.78125 z M 6.75,3.84375 C 5.9133373,3.8057038 4.9852143,4.2854788 4.3125,5.21875 3.2361571,6.711984 3.1775461,8.7871978 4.1875,9.875 5.1974539,10.962802 6.8924071,10.649484 7.96875,9.15625 9.0450929,7.663016 9.1037039,5.5565522 8.09375,4.46875 7.7150172,4.0608241 7.2519977,3.8665775 6.75,3.84375 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.1249283,0,0,1.1256714,2.0003405,1032.3369)"
+ id="g18487">
+ <g
+ transform="translate(4.909344,-0.31306078)"
+ id="layer1-8-1">
+ <g
+ transform="scale(0.95964169,1.0420556)"
+ id="text4237-8"
+ style="font-size:5.75785017px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-group-dev.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-group-dev.svg
new file mode 100644
index 00000000..67a5784f
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-group-dev.svg
@@ -0,0 +1,121 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg2">
+ <defs
+ id="defs4" />
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g11398">
+ <g
+ id="g11374">
+ <path
+ d="m 2.8919186,1.4915221 17.0956954,0 L 22,3.9486931 22,18.424603 17.466586,22 2.9211806,22 0.6601286,18.7386 0.5775986,4.0073371 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ id="layer1-1">
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z M 4.3125,3.75 9.5,3.75 c 0.466547,0 0.875,0.36845 0.875,0.78125 l 0,1.8125 8.65625,0 C 19.555189,6.34375 20,6.6852 20,7.125 l 0,10.3125 c 0,0.4399 -0.444811,0.8125 -0.96875,0.8125 l -16.0625,0 C 2.4448106,18.25 2,17.8774 2,17.4375 L 2,7.125 C 2,6.6852 2.4448106,6.34375 2.96875,6.34375 l 0.5,0 0,-1.8125 C 3.46875,4.11845 3.8459536,3.75 4.3125,3.75 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.125,0,0,1.125,2,1032.3622)"
+ id="layer1-9" />
+ </g>
+ <rect
+ width="0.52165401"
+ height="3.7819917"
+ rx="0.79304153"
+ ry="0.71008277"
+ x="16.660326"
+ y="8.4369955"
+ transform="translate(0,1030.3622)"
+ id="rect4075"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-ibp-ibp2000.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-ibp-ibp2000.svg
new file mode 100644
index 00000000..71f0dfeb
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-ibp-ibp2000.svg
@@ -0,0 +1,133 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg4880">
+ <defs
+ id="defs4882">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ </defs>
+ <metadata
+ id="metadata4885">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1-1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639-6"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ <g
+ id="g3685">
+ <g
+ id="text3577"
+ style="font-size:9.94177628px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold">
+ <g
+ id="g3656">
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 z"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <path
+ d="m 3.7473517,3.8951271 0,7.1249999 1.4375,0 0,-7.1249999 -1.4375,0 z m 2.8125,0 0,7.1249999 2.40625,0 c 0.9158562,-0.0065 1.5105133,-0.03661 1.7500003,-0.0625 0.381873,-0.04207 0.708226,-0.129651 0.96875,-0.3125 0.260513,-0.182847 0.443258,-0.444174 0.59375,-0.7499999 0.150479,-0.305825 0.249993,-0.613873 0.25,-0.9375 -7e-6,-0.411002 -0.141996,-0.758289 -0.375,-1.0625 -0.233016,-0.304204 -0.566347,-0.530033 -1,-0.65625 0.307439,-0.139156 0.570382,-0.346678 0.75,-0.625 0.179608,-0.2783132 0.249994,-0.6041607 0.25,-0.9375 -6e-6,-0.3074386 -0.07312,-0.5649206 -0.21875,-0.8125 -0.145638,-0.2475672 -0.312809,-0.4448756 -0.53125,-0.59375 -0.218453,-0.1488608 -0.473305,-0.265567 -0.75,-0.3125 -0.276705,-0.046919 -0.6868961,-0.062493 -1.2500003,-0.0625 l -2.84375,0 z m 7.1875003,0 0,7.1249999 1.4375,0 0,-2.6874999 0.9375,0 c 0.650484,3e-6 1.125702,-0.02579 1.46875,-0.09375 0.252423,-0.055013 0.505658,-0.173843 0.75,-0.34375 0.244332,-0.1699 0.435168,-0.421011 0.59375,-0.71875 0.158575,-0.297731 0.249994,-0.656851 0.25,-1.09375 -6e-6,-0.5663391 -0.131174,-1.0173878 -0.40625,-1.375 -0.275087,-0.3575995 -0.623487,-0.5806966 -1.03125,-0.6875 -0.265378,-0.07119 -0.844965,-0.1249929 -1.71875,-0.125 l -2.28125,0 z m -5.7500003,1.1875 0.8125,0 c 0.6763737,5.9e-6 1.0763507,0.015075 1.2187503,0.03125 0.239478,0.029132 0.441136,0.1124629 0.5625,0.25 0.12136,0.1375464 0.187495,0.31119 0.1875,0.53125 -5e-6,0.229779 -0.07798,0.4217276 -0.21875,0.5625 -0.140782,0.140781 -0.347799,0.22088 -0.5937503,0.25 -0.1359267,0.01617 -0.4713815,0.031254 -1.03125,0.03125 l -0.9375,0 0,-1.65625 z m 7.1875003,0.03125 0.6875,0 c 0.517797,5.9e-6 0.859724,-0.00111 1.03125,0.03125 0.233006,0.042077 0.410392,0.1442205 0.5625,0.3125 0.152096,0.1682907 0.249995,0.3973547 0.25,0.65625 -5e-6,0.2103613 -0.07909,0.403928 -0.1875,0.5625 -0.108419,0.158581 -0.246565,0.26932 -0.4375,0.34375 -0.190943,0.074441 -0.558659,0.093754 -1.125,0.09375 l -0.78125,0 0,-2 z m -7.1875003,2.8125 1.15625,0 c 0.6537196,3e-6 1.0854523,0.025792 1.2812503,0.09375 0.195788,0.067964 0.333935,0.163636 0.4375,0.3125 0.10355,0.14887 0.156245,0.348909 0.15625,0.5625 -5e-6,0.25243 -0.0532,0.443266 -0.1875,0.59375 -0.13431,0.150488 -0.317661,0.24242 -0.53125,0.28125 -0.139164,0.02913 -0.4822034,0.031251 -1.0000003,0.03125 l -1.3125,0 0,-1.875 z"
+ id="path3648" />
+ </g>
+ </g>
+ <text
+ x="3.6670709"
+ y="18.5068"
+ id="text3660"
+ xml:space="preserve"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"><tspan
+ x="3.6670709"
+ y="18.5068"
+ id="tspan3662">2000</tspan></text>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-ibp.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-ibp.svg
new file mode 100644
index 00000000..ce6cd3bc
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-ibp.svg
@@ -0,0 +1,128 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg4880">
+ <defs
+ id="defs4882">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ </defs>
+ <metadata
+ id="metadata4885">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g11681">
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1-1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639-6"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ <path
+ d="m 2.891919,1.4915217 17.095695,0 L 22,3.9486927 22,18.424603 17.466586,22 2.921181,22 0.660129,18.7386 0.577599,4.0073367 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ id="text3577"
+ style="font-size:9.94177628px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold">
+ <g
+ id="g3656">
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 z"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <path
+ d="m 3.28125,7.4375 0,7.125 1.4375,0 0,-7.125 -1.4375,0 z m 2.8125,0 0,7.125 2.40625,0 c 0.9158562,-0.0065 1.510513,-0.03661 1.75,-0.0625 0.381873,-0.04207 0.708226,-0.129651 0.96875,-0.3125 0.260513,-0.182847 0.443258,-0.444174 0.59375,-0.75 0.150479,-0.305825 0.249993,-0.613873 0.25,-0.9375 -7e-6,-0.411002 -0.141996,-0.758289 -0.375,-1.0625 -0.233016,-0.304204 -0.566347,-0.530033 -1,-0.65625 0.307439,-0.139156 0.570382,-0.346678 0.75,-0.625 0.179608,-0.2783132 0.249994,-0.6041607 0.25,-0.9375 -6e-6,-0.3074386 -0.07312,-0.5649206 -0.21875,-0.8125 C 11.323112,8.1586828 11.155941,7.9613744 10.9375,7.8125 10.719047,7.6636392 10.464195,7.546933 10.1875,7.5 9.9107958,7.453081 9.5006042,7.4375071 8.9375,7.4375 l -2.84375,0 z m 7.1875,0 0,7.125 1.4375,0 0,-2.6875 0.9375,0 c 0.650484,3e-6 1.125702,-0.02579 1.46875,-0.09375 0.252423,-0.05501 0.505658,-0.173843 0.75,-0.34375 0.244332,-0.1699 0.435168,-0.421011 0.59375,-0.71875 0.158575,-0.297731 0.249994,-0.656851 0.25,-1.09375 C 18.718744,9.0586609 18.587576,8.6076122 18.3125,8.25 18.037413,7.8924005 17.689013,7.6693034 17.28125,7.5625 17.015872,7.4913096 16.436285,7.4375071 15.5625,7.4375 l -2.28125,0 z m -5.75,1.1875 0.8125,0 c 0.6763737,5.9e-6 1.0763507,0.015075 1.21875,0.03125 0.2394784,0.029132 0.441136,0.1124629 0.5625,0.25 0.12136,0.1375464 0.187495,0.31119 0.1875,0.53125 C 10.312495,9.667279 10.23452,9.8592276 10.09375,10 9.9529684,10.140781 9.745951,10.22088 9.5,10.25 9.3640733,10.26617 9.0286185,10.281254 8.46875,10.28125 l -0.9375,0 0,-1.65625 z m 7.1875,0.03125 0.6875,0 c 0.517797,5.9e-6 0.859724,-0.00111 1.03125,0.03125 C 16.670506,8.7295772 16.847892,8.8317205 17,9 c 0.152096,0.1682907 0.249995,0.3973547 0.25,0.65625 -5e-6,0.2103613 -0.07909,0.403928 -0.1875,0.5625 -0.108419,0.158581 -0.246565,0.26932 -0.4375,0.34375 -0.190943,0.07444 -0.558659,0.09375 -1.125,0.09375 l -0.78125,0 0,-2 z m -7.1875,2.8125 1.15625,0 c 0.6537196,3e-6 1.0854521,0.02579 1.28125,0.09375 0.195788,0.06796 0.333935,0.163636 0.4375,0.3125 0.10355,0.14887 0.156245,0.348909 0.15625,0.5625 -5e-6,0.25243 -0.0532,0.443266 -0.1875,0.59375 -0.13431,0.150488 -0.317661,0.24242 -0.53125,0.28125 -0.1391633,0.02913 -0.4822031,0.03125 -1,0.03125 l -1.3125,0 0,-1.875 z"
+ id="path3648" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-net.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-net.svg
new file mode 100644
index 00000000..28c2e906
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-net.svg
@@ -0,0 +1,105 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g11909">
+ <path
+ d="m 2.891917,1.4915225 17.095697,0 L 22,3.9486935 22,18.424603 17.466586,22 2.921179,22 0.660128,18.7386 0.577598,4.0073375 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z M 11,2 c 4.970563,0 9,4.0294125 9,9 0,4.970587 -4.029437,9 -9,9 C 6.0294371,20 2,15.970587 2,11 2,6.0294125 6.0294371,2 11,2 z M 10.09375,3.75 C 9.7847969,3.788925 9.451953,3.861 9.15625,3.9375 8.7865446,4.674375 8.4587384,5.4499625 8.21875,6.3125 l 1.875,0 0,-2.53125 c 0,-0.01125 -6.13e-4,-0.02 0,-0.03125 z m 1.8125,0 c 6.13e-4,0.01125 0,0.02 0,0.03125 l 0,2.53125 1.71875,0 C 13.379023,5.44535 13.064798,4.6447 12.6875,3.90625 12.436614,3.846625 12.166391,3.782625 11.90625,3.75 z m 2.90625,1.03125 c 0.204481,0.4894875 0.34721,0.9938375 0.5,1.53125 l 1.3125,0 C 16.1148,5.7024125 15.493893,5.1982875 14.8125,4.78125 z M 7.03125,4.875 C 6.4191578,5.273475 5.841974,5.7541625 5.375,6.3125 l 1.15625,0 c 0.139509,-0.500625 0.3155585,-0.9776 0.5,-1.4375 z m 10.6875,3.21875 C 17.65974,8.11175 17.565014,8.125 17.5,8.125 l -1.78125,0 c 0.100361,0.639 0.13339,1.2906 0.15625,1.96875 l 2.375,0 c -0.08836,-0.7007625 -0.259074,-1.375625 -0.53125,-2 z M 4.25,8.125 C 3.987992,8.737 3.83631,9.4093 3.75,10.09375 l 2.21875,0 C 5.9887255,9.4150375 6.0898613,8.765125 6.1875,8.125 l -1.9375,0 z m 3.59375,0 C 7.747698,8.7600625 7.676095,9.419425 7.65625,10.09375 l 2.4375,0 0,-1.96875 -2.25,0 z m 4.0625,0 0,1.96875 2.28125,0 C 14.164751,9.4188625 14.13034,8.75995 14.03125,8.125 l -2.125,0 z M 3.75,11.90625 c 0.086304,0.68445 0.237992,1.356751 0.5,1.96875 l 2.0625,0 C 6.1783899,13.234651 6.0547537,12.590138 6,11.90625 l -2.25,0 z m 3.9375,0 c 0.053332,0.683325 0.1497465,1.329863 0.28125,1.96875 l 2.125,0 0,-1.96875 -2.40625,0 z m 4.21875,0 0,1.96875 2,0 c 0.126853,-0.630561 0.230332,-1.295438 0.28125,-1.96875 l -2.28125,0 z m 3.9375,0 c -0.05224,0.671062 -0.15251,1.339201 -0.28125,1.96875 l 2.1875,0 c 0.262008,-0.611999 0.41369,-1.2843 0.5,-1.96875 l -2.40625,0 z m -10.4375,3.8125 c 0.6013856,0.709425 1.3588059,1.311362 2.1875,1.75 -0.291285,-0.5544 -0.592855,-1.116512 -0.8125,-1.75 l -1.375,0 z m 3.0625,0 c 0.3173321,0.922162 0.7201445,1.75255 1.1875,2.5 0.1357841,0.02362 0.2991981,0.01438 0.4375,0.03125 l 0,-2.53125 -1.625,0 z m 3.4375,0 0,2.53125 c 0.115523,-0.01462 0.261221,-0.011 0.375,-0.03125 0.454606,-0.739913 0.846923,-1.592575 1.15625,-2.5 l -1.53125,0 z m 3.21875,0 c -0.218845,0.641025 -0.489273,1.2201 -0.78125,1.78125 0.857266,-0.442125 1.631798,-1.051913 2.25,-1.78125 l -1.46875,0 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.125,0,0,1.125,2,1032.3622)"
+ id="layer1-9" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-alteon.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-alteon.svg
new file mode 100644
index 00000000..14c35424
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-alteon.svg
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="22px" height="22px" viewBox="0 0 22 22" enable-background="new 0 0 22 22" xml:space="preserve">
+<g>
+ <path fill="#6494CE" d="M17.875,0H4.125C1.848,0,0,1.847,0,4.125v13.75C0,20.153,1.848,22,4.125,22h13.75
+ C20.153,22,22,20.153,22,17.875V4.125C22,1.847,20.153,0,17.875,0z M13.056,1.826c0.949,0,1.719,0.77,1.719,1.719
+ s-0.77,1.719-1.719,1.719c-0.95,0-1.719-0.77-1.719-1.719S12.105,1.826,13.056,1.826z M8.429,1.826c0.949,0,1.719,0.77,1.719,1.719
+ s-0.77,1.719-1.719,1.719S6.71,4.494,6.71,3.545S7.48,1.826,8.429,1.826z M3.803,5.264c-0.949,0-1.719-0.77-1.719-1.719
+ s0.77-1.719,1.719-1.719s1.719,0.77,1.719,1.719S4.752,5.264,3.803,5.264z M12.346,20.324l-0.975-2.535H7.872l-0.919,2.535H5.778
+ l3.213-8.367h1.193l3.424,8.367H12.346z M13.056,10.979c-0.95,0-1.719-0.77-1.719-1.719s0.769-1.719,1.719-1.719
+ c0.949,0,1.719,0.77,1.719,1.719S14.005,10.979,13.056,10.979z M15.365,20.324h-1.027v-8.367h1.027V20.324z M17.682,10.979
+ c-0.949,0-1.719-0.77-1.719-1.719s0.77-1.719,1.719-1.719S19.4,8.311,19.4,9.26S18.631,10.979,17.682,10.979z M17.682,5.264
+ c-0.949,0-1.719-0.77-1.719-1.719s0.77-1.719,1.719-1.719S19.4,2.596,19.4,3.545S18.631,5.264,17.682,5.264z"/>
+ <path fill="#6494CE" d="M9.561,12.837c-0.106,0.536-0.257,1.069-0.45,1.598l-0.919,2.453h2.837l-0.874-2.315
+ C9.888,13.868,9.691,13.288,9.561,12.837z"/>
+</g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-appdirector.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-appdirector.svg
new file mode 100644
index 00000000..e634b00d
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-appdirector.svg
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="22px" height="22px" viewBox="0 0 22 22" enable-background="new 0 0 22 22" xml:space="preserve">
+<g>
+ <path fill="#6494CE" d="M17.532,13.382c-0.185-0.049-0.525-0.073-1.022-0.073h-2.116v2.958h2.139c0.708,0,1.21-0.132,1.508-0.396
+ c0.297-0.263,0.445-0.634,0.445-1.111c0-0.347-0.087-0.643-0.262-0.89C18.048,13.624,17.817,13.461,17.532,13.382z"/>
+ <path fill="#6494CE" d="M17.875,0H4.125C1.848,0,0,1.847,0,4.125v13.75C0,20.152,1.848,22,4.125,22h13.751
+ C20.152,22,22,20.152,22,17.875V4.125C22,1.847,20.152,0,17.875,0z M17.682,1.826c0.949,0,1.719,0.77,1.719,1.719
+ c0,0.949-0.77,1.719-1.719,1.719s-1.719-0.77-1.719-1.719C15.963,2.596,16.732,1.826,17.682,1.826z M17.682,7.541
+ c0.949,0,1.719,0.77,1.719,1.719c0,0.949-0.77,1.719-1.719,1.719s-1.719-0.77-1.719-1.719C15.963,8.311,16.732,7.541,17.682,7.541z
+ M13.057,1.826c0.948,0,1.719,0.77,1.719,1.719c0,0.949-0.771,1.719-1.719,1.719c-0.951,0-1.72-0.77-1.72-1.719
+ C11.337,2.596,12.105,1.826,13.057,1.826z M8.429,1.826c0.949,0,1.719,0.77,1.719,1.719c0,0.949-0.77,1.719-1.719,1.719
+ c-0.949,0-1.719-0.77-1.719-1.719C6.71,2.596,7.48,1.826,8.429,1.826z M3.803,5.264c-0.949,0-1.719-0.77-1.719-1.719
+ c0-0.949,0.77-1.719,1.719-1.719c0.949,0,1.719,0.77,1.719,1.719C5.522,4.494,4.752,5.264,3.803,5.264z M11.176,20.607
+ l-0.965-2.506H6.75l-0.909,2.506H4.678l3.178-8.275h1.18l3.387,8.275H11.176z M11.337,9.26c0-0.949,0.769-1.719,1.72-1.719
+ c0.948,0,1.719,0.77,1.719,1.719c0,0.949-0.771,1.719-1.719,1.719C12.105,10.979,11.337,10.209,11.337,9.26z M18.943,16.512
+ c-0.448,0.487-1.258,0.731-2.428,0.731h-2.122v3.364h-1.096v-8.275h3.122c0.549,0,0.969,0.026,1.259,0.079
+ c0.406,0.067,0.747,0.196,1.021,0.387s0.496,0.456,0.663,0.799c0.168,0.343,0.251,0.719,0.251,1.129
+ C19.614,15.43,19.391,16.024,18.943,16.512z"/>
+ <path fill="#6494CE" d="M8.421,13.201c-0.105,0.531-0.254,1.058-0.446,1.581l-0.909,2.427h2.806l-0.864-2.292
+ C8.745,14.222,8.549,13.649,8.421,13.201z"/>
+</g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-atca-lb10.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-atca-lb10.svg
new file mode 100644
index 00000000..61027b02
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-atca-lb10.svg
@@ -0,0 +1,121 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g12545">
+ <path
+ d="m 2.8919179,1.491522 17.0956961,0 L 22,3.948693 22,18.424603 17.466586,22 2.9211799,22 0.660128,18.7386 0.577598,4.007337 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z m 7.46875,4.9375 4,0 c 0.791391,1.47e-5 1.423618,0.049605 1.8125,0.125 0.388868,0.075395 0.724235,0.2297354 1.03125,0.46875 0.306999,0.2390293 0.57657,0.5712594 0.78125,0.96875 0.204662,0.3975201 0.28124,0.8188626 0.28125,1.3125 -10e-6,0.5352148 -0.122578,1.021878 -0.375,1.46875 -0.252436,0.4468867 -0.599174,0.807814 -1.03125,1.03125 0.609458,0.202655 1.078768,0.542815 1.40625,1.03125 0.327465,0.488449 0.46874,1.058833 0.46875,1.71875 -10e-6,0.519621 -0.06976,1.008964 -0.28125,1.5 -0.211502,0.491051 -0.508875,0.862666 -0.875,1.15625 -0.366142,0.293585 -0.838314,0.494953 -1.375,0.5625 -0.336577,0.04159 -1.1191,0.08347 -2.40625,0.09375 l -3.4375,0 0,-11.4375 z m -8.46875,0.09375 2.03125,0 0,9.40625 5.03125,0 0,1.9375 -7.0625,0 0,-11.34375 z m 10.5,1.8125 0,2.65625 1.3125,0 C 15.255592,9.5000147 15.746467,9.463219 15.9375,9.4375 16.28316,9.390764 16.552144,9.2572873 16.75,9.03125 16.947842,8.8052274 17.062492,8.4939348 17.0625,8.125 17.062492,7.7716734 16.98306,7.4708493 16.8125,7.25 16.641934,7.0291799 16.399066,6.92178 16.0625,6.875 15.862373,6.848987 15.26308,6.84375 14.3125,6.84375 l -1.15625,0 z m 0,4.53125 0,3.0625 1.875,0 c 0.727715,0 1.179419,-0.04701 1.375,-0.09375 0.300178,-0.06231 0.561241,-0.195884 0.75,-0.4375 0.188746,-0.241631 0.281243,-0.563441 0.28125,-0.96875 -7e-6,-0.342936 -0.07322,-0.635971 -0.21875,-0.875 -0.145552,-0.239015 -0.349836,-0.390876 -0.625,-0.5 -0.275175,-0.109198 -0.893758,-0.187485 -1.8125,-0.1875 l -1.625,0 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-5">
+ <g
+ transform="scale(0.93557545,1.0688609)"
+ id="text7308-9"
+ style="font-size:9.30973721px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-cisco-ucs.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-cisco-ucs.svg
new file mode 100644
index 00000000..c2659b8a
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-cisco-ucs.svg
@@ -0,0 +1,121 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g12748">
+ <path
+ d="m 2.8919179,1.4915217 17.0956961,0 L 22,3.9486927 22,18.424603 17.466586,22 2.9211799,22 0.660128,18.7386 0.577598,4.0073367 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z m 7.6875,7.09375 c 0.806697,1.47e-5 1.464932,0.2677617 1.96875,0.8125 0.299884,0.3220665 0.506301,0.8032535 0.65625,1.40625 L 12.6875,9.65625 C 12.609524,9.2656815 12.403654,8.9448755 12.15625,8.71875 11.908838,8.4926245 11.603865,8.4062647 11.25,8.40625 c -0.488822,1.47e-5 -0.851866,0.2241438 -1.15625,0.625 -0.3043891,0.4008562 -0.4687518,1.039861 -0.46875,1.9375 -1.8e-6,0.952458 0.1688592,1.595719 0.46875,2 0.299886,0.404281 0.676425,0.59375 1.15625,0.59375 0.353865,0 0.65134,-0.118011 0.90625,-0.375 0.254901,-0.256959 0.451536,-0.635898 0.5625,-1.1875 L 14,12.46875 c -0.197933,0.822273 -0.508425,1.444614 -0.96875,1.84375 -0.460333,0.399152 -1.073517,0.59375 -1.78125,0.59375 -0.875678,0 -1.5612109,-0.347744 -2.125,-1.03125 C 8.5612083,13.191494 8.2499996,12.216697 8.25,11.03125 8.2499996,9.7773012 8.5582093,8.8187936 9.125,8.125 9.6917879,7.4312211 10.42009,7.0937647 11.34375,7.09375 z m 6.09375,0 c 0.827689,1.47e-5 1.487899,0.2104463 1.90625,0.625 0.418338,0.4145684 0.604002,0.9641759 0.625,1.65625 l -1.3125,0.0625 C 18.599256,9.050356 18.499928,8.7946014 18.3125,8.625 c -0.187433,-0.1695869 -0.500143,-0.25 -0.875,-0.25 -0.38686,0 -0.687334,0.068451 -0.90625,0.25 -0.140949,0.1165464 -0.218751,0.2734732 -0.21875,0.46875 -1e-6,0.1781698 0.0868,0.3107397 0.21875,0.4375 0.167936,0.1610333 0.570986,0.3565193 1.21875,0.53125 0.647756,0.174731 1.09586,0.375777 1.40625,0.5625 0.31038,0.186723 0.57456,0.426229 0.75,0.75 0.175428,0.323771 0.281244,0.742528 0.28125,1.21875 -6e-6,0.43169 -0.133843,0.810629 -0.34375,1.1875 -0.209928,0.376886 -0.522398,0.629202 -0.90625,0.8125 -0.383863,0.183298 -0.833465,0.3125 -1.40625,0.3125 -0.833693,0 -1.490668,-0.247241 -1.9375,-0.6875 -0.446835,-0.440259 -0.694281,-1.032166 -0.78125,-1.875 l 1.3125,-0.1875 c 0.07796,0.496797 0.230336,0.892026 0.46875,1.125 0.238408,0.232974 0.532646,0.34375 0.9375,0.34375 0.428838,0 0.782577,-0.105187 1,-0.3125 0.217415,-0.20727 0.343746,-0.44123 0.34375,-0.71875 -4e-6,-0.178155 -0.09604,-0.343695 -0.1875,-0.46875 -0.09146,-0.12507 -0.24084,-0.251233 -0.46875,-0.34375 -0.155946,-0.06158 -0.50771,-0.154891 -1.0625,-0.3125 -0.713738,-0.20214 -1.243359,-0.486593 -1.53125,-0.78125 -0.404851,-0.414554 -0.59375,-0.9038522 -0.59375,-1.5 0,-0.3837197 0.122062,-0.7284409 0.3125,-1.0625 0.190428,-0.3340297 0.454131,-0.6065193 0.8125,-0.78125 0.358365,-0.1747307 0.774436,-0.2499853 1.28125,-0.25 z m -15.625,0.125 1.3125,0 0,4.09375 c -1.9e-6,0.647528 0.06076,1.089397 0.09375,1.28125 0.056977,0.308354 0.1918271,0.532027 0.40625,0.71875 0.2144178,0.186723 0.5031348,0.25 0.875,0.25 0.3778562,0 0.6205672,-0.07352 0.8125,-0.25 0.1919244,-0.17645 0.36726,-0.368041 0.40625,-0.625 C 5.757731,12.430541 5.7499962,11.971148 5.75,11.375 l 0,-4.15625 1.34375,0 0,3.9375 c -5.9e-6,0.904502 -0.053032,1.564053 -0.125,1.9375 -0.071979,0.373447 -0.2128272,0.71179 -0.40625,0.96875 -0.1934335,0.25696 -0.4261251,0.4413 -0.75,0.59375 -0.3238843,0.152465 -0.7281973,0.25 -1.25,0.25 -0.6297692,0 -1.1433729,-0.08379 -1.46875,-0.25 C 2.768369,14.490073 2.5014286,14.265528 2.3125,14 2.1235691,13.734472 2.0287269,13.447468 1.96875,13.15625 1.8817818,12.72456 1.8124993,12.092834 1.8125,11.25 l 0,-4.03125 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-dcs.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-dcs.svg
new file mode 100644
index 00000000..1b855b01
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-dcs.svg
@@ -0,0 +1,137 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g13003">
+ <path
+ d="m 2.891918,1.4915223 17.095696,0 L 22,3.9486933 22,18.424603 17.466586,22 2.92118,22 0.660128,18.7386 0.577598,4.0073373 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z m 14.375,6.71875 0,0.03125 c 0.902934,0 1.606119,0.2354 2.0625,0.6875 0.45637,0.4524 0.695844,1.0263 0.71875,1.78125 L 19.34375,9.3125 C 19.281575,8.89025 19.173216,8.5912 18.96875,8.40625 18.764277,8.2213 18.440186,8.125 18.03125,8.125 c -0.422028,0 -0.729932,0.0825 -0.96875,0.28125 -0.153764,0.1275 -0.250003,0.31825 -0.25,0.53125 -3e-6,0.1944 0.04356,0.3306 0.1875,0.46875 0.183203,0.1758 0.66835,0.372 1.375,0.5625 0.706644,0.19065 1.192643,0.39005 1.53125,0.59375 0.338597,0.2037 0.621111,0.4905 0.8125,0.84375 0.191376,0.35325 0.281244,0.79305 0.28125,1.3125 -6e-6,0.471 -0.11476,0.90135 -0.34375,1.3125 -0.229011,0.41115 -0.550001,0.7063 -0.96875,0.90625 -0.418758,0.2001 -0.937644,0.3125 -1.5625,0.3125 -0.909483,0 -1.606297,-0.2697 -2.09375,-0.75 -0.487455,-0.4803 -0.748877,-1.143 -0.84375,-2.0625 L 16.59375,12.25 c 0.08505,0.54195 0.239914,0.96465 0.5,1.21875 0.260084,0.2541 0.589592,0.375 1.03125,0.375 0.467823,0 0.856561,-0.0863 1.09375,-0.3125 0.23718,-0.22605 0.312496,-0.5098 0.3125,-0.8125 -4e-6,-0.1944 -0.02522,-0.3635 -0.125,-0.5 -0.0998,-0.1365 -0.282619,-0.27405 -0.53125,-0.375 C 18.704877,11.77625 18.323978,11.6719 17.71875,11.5 16.940127,11.2795 16.376564,10.9777 16.0625,10.65625 15.620845,10.204 15.40625,9.68165 15.40625,9.03125 15.40625,8.61275 15.542265,8.2081 15.75,7.84375 15.95774,7.4794 16.234052,7.19065 16.625,7 17.015944,6.80935 17.478362,6.71875 18.03125,6.71875 z M 11.375,6.75 c 0.880032,0 1.60663,0.28085 2.15625,0.875 0.327146,0.35145 0.523919,0.90475 0.6875,1.5625 L 12.8125,9.5625 C 12.727435,9.13635 12.519895,8.778 12.25,8.53125 11.980096,8.2845 11.667284,8.18765 11.28125,8.1875 10.74799,8.18765 10.332055,8.4065 10,8.84375 c -0.332061,0.4374 -0.5000015,1.1458 -0.5,2.125 -1.5e-6,1.03905 0.1728455,1.7465 0.5,2.1875 0.327148,0.44115 0.757804,0.65625 1.28125,0.65625 0.386034,0 0.690666,-0.12545 0.96875,-0.40625 0.278073,-0.28035 0.503948,-0.7107 0.625,-1.3125 l 1.40625,0.5 c -0.215925,0.89715 -0.591579,1.5958 -1.09375,2.03125 -0.502182,0.43545 -1.134178,0.65625 -1.90625,0.65625 -0.955285,0 -1.728708,-0.37935 -2.34375,-1.125 C 8.322455,13.4106 7.9999985,12.35565 8,11.0625 7.9999985,9.6945 8.319182,8.6319 8.9375,7.875 9.5558135,7.1181 10.367371,6.75 11.375,6.75 z M 1,6.875 l 2.625,0 C 4.223683,6.87515 4.68593,6.9575 5,7.0625 5.4220205,7.205 5.8240145,7.4501 6.125,7.8125 6.4259735,8.17505 6.6242105,8.6 6.78125,9.125 6.938276,9.65015 6.9999925,10.3238 7,11.09375 c -7.5e-6,0.67665 -0.07154,1.2604 -0.21875,1.75 -0.17994,0.59805 -0.4163115,1.0676 -0.75,1.4375 C 5.779337,14.5616 5.4285635,14.7806 5,14.9375 4.679387,15.053 4.2552745,15.125 3.71875,15.125 L 1,15.125 1,6.875 z m 1.46875,1.40625 0,5.4375 1.0625,0 C 3.9369145,13.71875 4.195063,13.676 4.375,13.625 4.610545,13.5575 4.8445985,13.4733 5,13.3125 5.1553925,13.15185 5.276849,12.86825 5.375,12.5 5.473145,12.1319 5.5,11.6354 5.5,11 5.499994,10.36475 5.473145,9.90255 5.375,9.5625 5.276855,9.2223 5.1141565,8.94065 4.9375,8.75 4.760833,8.5595 4.5527815,8.44235 4.28125,8.375 4.0784125,8.3225 3.65464,8.28125 3.0625,8.28125 l -0.59375,0 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-delta.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-delta.svg
new file mode 100644
index 00000000..4be4ec00
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-delta.svg
@@ -0,0 +1,129 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g13201">
+ <path
+ d="m 2.891918,1.4915223 17.095696,0 L 22,3.9486933 22,18.424603 17.466586,22 2.92118,22 0.660128,18.7386 0.577598,4.0073373 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z M 1.875,7.21875 l 2.4375,0 c 0.5487929,1.47e-5 0.9933526,0.060279 1.28125,0.15625 0.3868517,0.1302139 0.6928472,0.3551751 0.96875,0.6875 0.275892,0.3323396 0.4810474,0.7373845 0.625,1.21875 0.1439405,0.4813655 0.1874937,1.106714 0.1875,1.8125 -6.3e-6,0.620133 -0.021306,1.144923 -0.15625,1.59375 C 7.0538053,13.235677 6.805881,13.660812 6.5,14 6.2690806,14.25696 5.9240995,14.449853 5.53125,14.59375 5.237355,14.700009 4.8668138,14.78125 4.375,14.78125 l -2.5,0 0,-7.5625 z m 14.1875,0 1.4375,0 2.625,7.5625 -1.4375,0 -0.59375,-1.71875 -2.625,0 -0.5625,1.71875 -1.40625,0 2.5625,-7.5625 z m -7.46875,0.09375 1.34375,0 0,6.1875 3.3125,0 0,1.28125 -4.65625,0 0,-7.46875 z m -5.375,1.1875 0,5 1,0 c 0.3718588,0 0.6475575,-0.04584 0.8125,-0.09375 0.215916,-0.06173 0.3575488,-0.165164 0.5,-0.3125 C 5.6736927,12.946429 5.7850288,12.712469 5.875,12.375 5.9649617,12.037531 5.9999952,11.582436 6,11 5.9999952,10.417564 5.9649614,9.9680288 5.875,9.65625 5.7850293,9.3444712 5.6619355,9.1122454 5.5,8.9375 5.3380559,8.7627693 5.1551537,8.6554326 4.90625,8.59375 4.7203155,8.5458383 4.3552956,8.5 3.8125,8.5 l -0.59375,0 z M 16.75,8.96875 l -0.90625,2.8125 1.8125,0 L 16.75,8.96875 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-dp.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-dp.svg
new file mode 100644
index 00000000..d95470c5
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-dp.svg
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="22px" height="22px" viewBox="0 0 22 22" enable-background="new 0 0 22 22" xml:space="preserve">
+<g>
+ <path fill="#608CC1" d="M17.18,8.225c-0.196-0.052-0.562-0.079-1.094-0.079H13.82v3.166h2.29c0.758,0,1.295-0.141,1.614-0.423
+ c0.316-0.282,0.479-0.679,0.479-1.19c0-0.371-0.095-0.688-0.282-0.952C17.732,8.484,17.485,8.31,17.18,8.225z"/>
+ <path fill="#608CC1" d="M19.078,0H2.922C1.298,0,0,1.298,0,2.922v16.156C0,20.701,1.298,22,2.922,22h16.156
+ C20.701,22,22,20.701,22,19.078V2.922C22,1.298,20.701,0,19.078,0z M9.561,13.271c-0.157,0.52-0.358,0.949-0.604,1.29
+ c-0.246,0.342-0.515,0.608-0.807,0.804c-0.292,0.196-0.645,0.344-1.057,0.444C6.68,15.909,6.206,15.96,5.67,15.96H2.474V7.101
+ h3.051c0.689,0,1.214,0.042,1.577,0.127c0.507,0.117,0.94,0.329,1.299,0.635C8.868,8.257,9.217,8.762,9.45,9.376
+ c0.231,0.614,0.347,1.316,0.347,2.106C9.796,12.154,9.718,12.751,9.561,13.271z M18.691,11.576c-0.48,0.522-1.346,0.783-2.6,0.783
+ H13.82v3.601h-1.172V7.101h3.342c0.588,0,1.036,0.028,1.348,0.085c0.436,0.072,0.798,0.21,1.093,0.414
+ c0.293,0.204,0.532,0.488,0.709,0.854c0.181,0.367,0.271,0.77,0.271,1.208C19.411,10.417,19.17,11.054,18.691,11.576z"/>
+ <path fill="#608CC1" d="M7.023,8.328c-0.314-0.121-0.82-0.182-1.517-0.182H3.646v6.768h1.892c0.584,0,1.042-0.055,1.375-0.162
+ c0.332-0.11,0.597-0.264,0.794-0.459c0.278-0.279,0.494-0.653,0.649-1.122c0.155-0.468,0.233-1.038,0.233-1.706
+ c0-0.927-0.152-1.639-0.456-2.137C7.828,8.831,7.458,8.497,7.023,8.328z"/>
+</g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-f5bigip.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-f5bigip.svg
new file mode 100644
index 00000000..70c371d1
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-f5bigip.svg
@@ -0,0 +1,145 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g13705">
+ <path
+ d="m 2.891917,1.4915218 17.095697,0 L 22,3.9486928 22,18.424603 17.466586,22 2.921179,22 0.660128,18.7386 0.577598,4.0073368 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z m 0.65625,5.75 6.1875,0 0,1.78125 -4.34375,0 0,2.40625 3.71875,0 0,1.75 -3.71875,0 0,4.375 -1.84375,0 0,-10.3125 z m 8.40625,0.125 4.5625,0 0,1.84375 -3.21875,0 L 13.75,9.5 c 0.385188,-0.2200264 0.785915,-0.34375 1.1875,-0.34375 0.766281,0 1.404784,0.3320684 1.9375,0.96875 0.532705,0.636711 0.812492,1.452846 0.8125,2.46875 -8e-6,0.847361 -0.194739,1.616468 -0.625,2.28125 -0.585987,0.908236 -1.396669,1.375 -2.4375,1.375 -0.831852,0 -1.506736,-0.270946 -2.03125,-0.78125 -0.524517,-0.510289 -0.835056,-1.201089 -0.9375,-2.0625 L 13.375,13.1875 c 0.04917,0.444741 0.164478,0.802675 0.40625,1.0625 0.241766,0.259841 0.528218,0.40625 0.84375,0.40625 0.360602,0 0.68753,-0.196514 0.9375,-0.53125 0.24996,-0.33472 0.343744,-0.825856 0.34375,-1.5 -6e-6,-0.632008 -0.09584,-1.090239 -0.34375,-1.40625 -0.247921,-0.315997 -0.602519,-0.46875 -1,-0.46875 -0.495833,0 -0.919115,0.249073 -1.3125,0.75 l -1.375,-0.25 0.84375,-5.375 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-f5bigip2.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-f5bigip2.svg
new file mode 100644
index 00000000..5713d8e7
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-f5bigip2.svg
@@ -0,0 +1,161 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g13477">
+ <path
+ d="m 7.0629787,5.9661003 12.8553223,0 1.513239,1.842878 0,10.8569327 -3.408958,2.681548 -10.9375993,0 -1.7002263,-2.44605 -0.062059,-11.0484477 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1"
+ style="fill:#649be6;fill-opacity:1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8"
+ style="fill:#649be6;fill-opacity:1">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3"
+ style="fill:#649be6;fill-opacity:1">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84"
+ style="fill:#649be6;fill-opacity:1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37"
+ style="fill:#649be6;fill-opacity:1">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849"
+ style="fill:#649be6;fill-opacity:1">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2"
+ style="fill:#649be6;fill-opacity:1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29"
+ style="fill:#649be6;fill-opacity:1" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2"
+ style="fill:#649be6;fill-opacity:1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1"
+ style="fill:#649be6;fill-opacity:1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6"
+ style="fill:#649be6;fill-opacity:1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3751377,0,0,1.3682188,0,-387.60805)"
+ id="layer1-4"
+ style="fill:#649be6;fill-opacity:1">
+ <path
+ d="M 1.78125,0 C 0.7841883,0 0,0.7429 0,1.6875 l 0,9.40625 c 0,0.837171 0.6321191,1.54162 1.46875,1.6875 l 0,-9.21875 c 0,-1.0012 0.83931,-1.78125 1.875,-1.78125 l 10.15625,0 0,-0.09375 C 13.5,0.7429 12.715812,0 11.71875,0 z"
+ transform="translate(0,1036.3622)"
+ id="rect7203-4"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-1"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <path
+ d="m 4.2791882,1039.6377 c -0.9970617,0 -1.7948338,0.7559 -1.7948338,1.7005 l 0,9.4028 c 0,0.9446 0.7977721,1.7005 1.7948338,1.7005 l 9.9243758,0 c 0.997062,0 1.794834,-0.7559 1.794834,-1.7005 l 0,-9.4028 c 0,-0.9446 -0.797772,-1.7005 -1.794834,-1.7005 l -9.9243758,0 z m 0.8446276,3.351 3.8008243,0 0,1.0253 -2.6658559,0 0,1.4004 2.2963319,0 0,1.0253 -2.2963319,0 0,2.5508 -1.1349684,0 0,-6.0018 z m 5.1733442,0.075 2.79783,0 0,1.0753 -1.979596,0 -0.184763,1.0253 c 0.236612,-0.128 0.492366,-0.2 0.739049,-0.2 0.470707,0 0.860524,0.2046 1.187759,0.5752 0.327227,0.3705 0.501493,0.8341 0.501498,1.4254 -5e-6,0.4931 -0.131622,0.9385 -0.395919,1.3254 -0.359957,0.5285 -0.865138,0.8002 -1.504494,0.8002 -0.510986,0 -0.918352,-0.1531 -1.240548,-0.4501 -0.3221971,-0.297 -0.5177531,-0.6991 -0.5806809,-1.2004 l 1.0557849,-0.125 c 0.0302,0.2588 0.115432,0.4739 0.263946,0.6252 0.148511,0.1512 0.307674,0.225 0.501498,0.225 0.221508,0 0.427131,-0.1053 0.580681,-0.3001 0.153544,-0.1948 0.211154,-0.4829 0.211157,-0.8752 -3e-6,-0.3678 -0.05887,-0.6413 -0.211157,-0.8253 -0.152291,-0.1839 -0.362914,-0.275 -0.607076,-0.275 -0.304578,0 -0.576587,0.1586 -0.818233,0.4501 l -0.8446281,-0.1501 0.5278921,-3.1259 z"
+ id="rect7203-5-6"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-gbe2c.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-gbe2c.svg
new file mode 100644
index 00000000..03dd3c58
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-gbe2c.svg
@@ -0,0 +1,166 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g13955">
+ <path
+ d="m 2.891918,1.4915225 17.095696,0 L 22,3.9486935 22,18.424603 17.466586,22 2.92118,22 0.6601279,18.7386 0.5775979,4.0073375 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z M 4.9375,3.40625 c 0.7942461,0 1.3971609,0.13555 1.84375,0.46875 0.4465781,0.3331 0.7469828,0.7873 0.875,1.375 L 6.34375,5.5 C 6.253555,5.1858 6.092494,4.96305 5.84375,4.78125 5.594997,4.59935 5.3098918,4.46875 4.9375,4.46875 c -0.5644155,0 -1.0418829,0.2046 -1.375,0.5625 C 3.2293783,5.38905 3.0937482,5.921 3.09375,6.625 c -1.8e-6,0.7593 0.1937644,1.33915 0.53125,1.71875 0.3374812,0.3797 0.7342905,0.5625 1.28125,0.5625 0.2705649,0 0.5404724,-0.0816 0.8125,-0.1875 0.2720189,-0.1058 0.5238191,-0.2237 0.71875,-0.375 l 0,-0.8125 -1.5,0 0,-1.09375 2.8125,0 0,2.53125 C 7.479425,9.23055 7.0759932,9.51955 6.5625,9.71875 6.0489964,9.91805 5.5265868,10 5,10 4.3308483,10 3.7474951,9.87435 3.25,9.59375 2.7525009,9.31295 2.4064524,8.8972 2.15625,8.375 1.9060461,7.8528 1.7499996,7.27005 1.75,6.65625 c -4e-7,-0.6663 0.1582025,-1.2321 0.4375,-1.75 C 2.4667957,4.38845 2.8680201,3.9639 3.40625,3.6875 3.8164647,3.4751 4.3265352,3.40625 4.9375,3.40625 z m 4,0.0625 2.53125,0 c 0.506222,0 0.907497,0.05275 1.15625,0.09375 0.248744,0.043 0.459864,0.1159 0.65625,0.25 0.196375,0.1334 0.369073,0.30865 0.5,0.53125 0.130914,0.2225 0.187494,0.50475 0.1875,0.78125 -6e-6,0.2996 -0.05729,0.5623 -0.21875,0.8125 -0.161474,0.2503 -0.411118,0.4373 -0.6875,0.5625 0.389847,0.1141 0.696771,0.25775 0.90625,0.53125 0.209466,0.2735 0.281243,0.6304 0.28125,1 -7e-6,0.2909 -0.02097,0.6 -0.15625,0.875 -0.135286,0.2749 -0.328303,0.4607 -0.5625,0.625 -0.234207,0.1643 -0.500452,0.2746 -0.84375,0.3125 -0.215295,0.023 -0.77041,0.02525 -1.59375,0.03125 l -2.15625,0 0,-6.40625 z m 6.4375,0 4.75,0 0,1.09375 -3.4375,0 0,1.40625 3.21875,0 0,1.0625 -3.21875,0 0,1.78125 3.5625,0 0,1.0625 -4.875,0 0,-6.40625 z m -5.15625,1.09375 0,1.4375 0.875,0 C 11.597062,6 11.877804,6.015 12,6 12.221106,5.974 12.37344,5.8758 12.5,5.75 12.626552,5.6235 12.718745,5.48785 12.71875,5.28125 12.718745,5.08345 12.64034,4.9361 12.53125,4.8125 12.422146,4.6888 12.277787,4.5886 12.0625,4.5625 c -0.128016,-0.015 -0.4857,0 -1.09375,0 l -0.75,0 z m 0,2.53125 0,1.71875 1.21875,0 c 0.465491,0 0.718644,-0.0355 0.84375,-0.0625 C 12.473262,8.716 12.629258,8.6355 12.75,8.5 12.870733,8.3653 12.937495,8.1644 12.9375,7.9375 12.937495,7.7454 12.905596,7.60255 12.8125,7.46875 12.7194,7.33535 12.582261,7.2485 12.40625,7.1875 12.230231,7.1265 11.837683,7.09375 11.25,7.09375 l -1.03125,0 z M 14,12.375 c 0.842808,0 1.536129,0.28315 2.0625,0.78125 0.313309,0.2946 0.530837,0.6985 0.6875,1.25 L 15.375,14.75 c -0.08147,-0.3573 -0.241521,-0.6683 -0.5,-0.875 -0.258488,-0.2068 -0.567793,-0.3125 -0.9375,-0.3125 -0.510704,0 -0.931989,0.1959 -1.25,0.5625 -0.318015,0.3666 -0.500002,0.96045 -0.5,1.78125 -2e-6,0.8711 0.186684,1.47395 0.5,1.84375 0.313311,0.3696 0.748694,0.5625 1.25,0.5625 0.369706,0 0.671179,-0.10855 0.9375,-0.34375 0.266312,-0.2349 0.44657,-0.6206 0.5625,-1.125 l 1.375,0.4375 c -0.206794,0.752 -0.550319,1.29115 -1.03125,1.65625 -0.48094,0.3649 -1.104334,0.5625 -1.84375,0.5625 -0.91488,0 -1.660972,-0.3124 -2.25,-0.9375 -0.589031,-0.6251 -0.90625,-1.44715 -0.90625,-2.53125 0,-1.1467 0.314086,-2.08425 0.90625,-2.71875 C 12.279661,12.6781 13.03499,12.375 14,12.375 z m -6.34375,0.09375 c 0.6798876,0 1.205237,0.1959 1.59375,0.5625 0.3885044,0.3666 0.5937451,0.8298 0.59375,1.375 -4.9e-6,0.3101 -0.076279,0.56325 -0.1875,0.84375 -0.1112307,0.2804 -0.2587529,0.59915 -0.5,0.90625 -0.159794,0.2036 -0.4582964,0.46155 -0.875,0.84375 -0.4167103,0.3823 -0.7012761,0.65595 -0.8125,0.78125 -0.1112293,0.1251 -0.1810732,0.28715 -0.25,0.40625 l 2.625,0 0,1.1875 -4.65625,0 c 0.05013,-0.4638 0.2180985,-0.86615 0.46875,-1.28125 0.2506501,-0.4152 0.7293279,-1.0014 1.46875,-1.6875 0.5952935,-0.5546 0.990272,-0.9276 1.125,-1.125 0.1817186,-0.2725 0.2499964,-0.5463 0.25,-0.8125 -3.6e-6,-0.2946 -0.06053,-0.5294 -0.21875,-0.6875 -0.1582267,-0.1583 -0.4086537,-0.21875 -0.6875,-0.21875 -0.2757185,0 -0.462079,0.11535 -0.625,0.28125 -0.162925,0.1661 -0.2561866,0.4271 -0.28125,0.8125 L 5.375,14.53125 C 5.453328,13.80445 5.6801752,13.2539 6.09375,12.9375 6.5073228,12.621 7.0358867,12.46875 7.65625,12.46875 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(9.0931163,1049.8819)"
+ id="g18814">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-29"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-hpblc.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-hpblc.svg
new file mode 100644
index 00000000..66ff6674
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-hpblc.svg
@@ -0,0 +1,174 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g14827">
+ <path
+ d="m 2.891918,1.4915216 17.095696,0 L 22,3.9486926 22,18.424603 17.466586,22 2.92118,22 0.660128,18.7386 0.577598,4.0073366 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,6.5625 0,1.34375 0,6.9375 c 0.01722469,0.09155 0.00776157,0.09953 0.09375,0.375 C 0.45652837,20.736363 1.8994077,22 3.65625,22 l 14.6875,0 c 1.756851,0 3.199724,-1.263637 3.5625,-2.96875 0.08599,-0.27547 0.07653,-0.283445 0.09375,-0.375 l 0,-6.9375 0,-1.34375 0,-6.5625 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z m 1.25,2.875 1.375,0 0,2.75 2.75,0 0,-2.75 1.375,0 0,6.9375 -1.375,0 0,-3.03125 -2.75,0 0,3.03125 -1.375,0 0,-6.9375 z m 6.90625,0 2.25,0 c 0.845943,6.9e-6 1.399327,0.056078 1.65625,0.125 0.394769,0.1034 0.733678,0.3412947 1,0.6875 0.266311,0.3462176 0.374994,0.7954561 0.375,1.34375 -6e-6,0.4229779 -0.06523,0.7742553 -0.21875,1.0625 C 16.72147,6.3820021 16.517797,6.5855134 16.28125,6.75 16.044692,6.9144926 15.83813,7.0404894 15.59375,7.09375 15.261632,7.1595493 14.754757,7.1875028 14.125,7.1875 l -0.875,0 0,2.625 -1.4375,0 0,-6.9375 z M 13.25,4.09375 13.25,6 14,6 c 0.548296,3.8e-6 0.908891,0.00957 1.09375,-0.0625 C 15.278601,5.8654417 15.395035,5.7472778 15.5,5.59375 15.604954,5.4402306 15.687496,5.2349084 15.6875,5.03125 15.687496,4.7806039 15.616006,4.6004284 15.46875,4.4375 15.321489,4.2745819 15.131832,4.1657364 14.90625,4.125 14.74019,4.0936747 14.376299,4.0937555 13.875,4.09375 l -0.625,0 z m -11.75,7.625 19,0 0,7.3125 -19,0 0,-7.3125 z m 15.3125,1.125 c -0.858561,5e-6 -1.535658,0.21907 -2.0625,0.6875 -0.526844,0.468439 -0.8125,1.122101 -0.8125,1.96875 0,0.800389 0.288444,1.444756 0.8125,1.90625 0.524054,0.461495 1.15479,0.6875 1.96875,0.6875 0.657854,0 1.19711,-0.13675 1.625,-0.40625 0.427881,-0.269493 0.722268,-0.663568 0.90625,-1.21875 l -1.15625,-0.3125 c -0.103139,0.372437 -0.294314,0.639007 -0.53125,0.8125 -0.236943,0.173502 -0.514827,0.25 -0.84375,0.25 -0.446007,0 -0.814999,-0.133285 -1.09375,-0.40625 -0.278752,-0.272964 -0.406251,-0.700662 -0.40625,-1.34375 -10e-7,-0.60607 0.123314,-1.073095 0.40625,-1.34375 0.282932,-0.270647 0.67063,-0.406245 1.125,-0.40625 0.328925,5e-6 0.582526,0.09733 0.8125,0.25 0.229967,0.15268 0.42752,0.330041 0.5,0.59375 L 19.25,14.34375 C 19.110619,13.936622 18.872497,13.6237 18.59375,13.40625 18.12544,13.038446 17.56234,12.843755 16.8125,12.84375 z M 2.75,12.9375 2.75,18 4.8125,18 c 0.7888669,-0.0047 1.2937189,0.01851 1.5,0 0.3289239,-0.03007 0.5880993,-0.119306 0.8125,-0.25 0.2243909,-0.130694 0.4016239,-0.312646 0.53125,-0.53125 0.1296144,-0.218602 0.2187442,-0.456173 0.21875,-0.6875 -5.8e-6,-0.293781 -0.1118036,-0.532551 -0.3125,-0.75 C 7.3617928,15.563808 7.0610238,15.433973 6.6875,15.34375 6.9523104,15.244282 7.1890371,15.073943 7.34375,14.875 7.4984528,14.676064 7.5624945,14.45702 7.5625,14.21875 7.5624945,13.998993 7.500433,13.801969 7.375,13.625 7.2495561,13.448041 7.0944031,13.293919 6.90625,13.1875 6.718087,13.081098 6.5195793,13.002294 6.28125,12.96875 6.0429124,12.935206 5.6725263,12.937505 5.1875,12.9375 l -2.4375,0 z m 6.1875,0.03125 0,5.03125 4.34375,0 0,-0.84375 -3.09375,0 0,-4.1875 -1.25,0 z m -5,0.8125 0.75,0 c 0.5825902,0 0.9085957,-0.01155 1.03125,0 0.2062732,0.02083 0.3642145,0.08919 0.46875,0.1875 0.1045289,0.09831 0.1874956,0.217703 0.1875,0.375 -4.4e-6,0.164244 -0.066247,0.30563 -0.1875,0.40625 -0.1212612,0.100623 -0.2881517,0.166682 -0.5,0.1875 -0.1170799,0.01155 -0.4240107,4e-6 -0.90625,0 l -0.84375,0 0,-1.15625 z m 0,2.03125 1.0625,0 c 0.5630773,0 0.8938509,0.04517 1.0625,0.09375 0.1686414,0.04858 0.2857952,0.112339 0.375,0.21875 0.089196,0.106411 0.1249959,0.222326 0.125,0.375 -4.5e-6,0.180436 -0.040573,0.329941 -0.15625,0.4375 -0.115687,0.107566 -0.2535272,0.190993 -0.4375,0.21875 -0.119867,0.02083 -0.3977489,1e-6 -0.84375,0 l -1.1875,0 0,-1.34375 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,1030.3622)"
+ id="g18839">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-9">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-9"
+ style="font-size:7.13911057px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text7599"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text7710"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.79259781,1.2616739)"
+ id="text7727"
+ style="font-size:4.7555871px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3227"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0977352,0.91096649)"
+ id="text3238"
+ style="font-size:5.67335844px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-ibm-blade.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-ibm-blade.svg
new file mode 100644
index 00000000..60d28fd2
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-ibm-blade.svg
@@ -0,0 +1,156 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g15279">
+ <path
+ d="m 2.891918,1.4915237 17.095696,0 L 22,3.9486947 l 0,14.4759103 -4.533414,3.575397 -14.545406,0 -2.261052,-3.2614 -0.08253,-14.7312633 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,7.90625 0,6.46875 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,11.46875 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z m -1.6875,1.875 1.5625,0 0,8.78125 -1.5625,0 0,-8.78125 z m 3.03125,0 3.03125,0 c 0.6068722,1.47e-5 1.0767884,0.035992 1.375,0.09375 0.2982012,0.057758 0.577068,0.1604658 0.8125,0.34375 0.23542,0.1832989 0.405543,0.4451875 0.5625,0.75 0.156944,0.3048418 0.249993,0.6527183 0.25,1.03125 -7e-6,0.4104239 -0.08768,0.7510785 -0.28125,1.09375 -0.193579,0.3426862 -0.449915,0.6099143 -0.78125,0.78125 0.467359,0.1554044 0.811372,0.4379511 1.0625,0.8125 0.251114,0.3745636 0.343743,0.7751938 0.34375,1.28125 -7e-6,0.3984754 -0.02532,0.8109523 -0.1875,1.1875 -0.162189,0.3765477 -0.406739,0.6498591 -0.6875,0.875 -0.280774,0.225126 -0.6509456,0.385694 -1.0625,0.4375 -0.2581021,0.03189 -0.8567078,0.08567 -1.84375,0.09375 L 5,10.65625 5,1.875 z m 7.71875,0 2.3125,0 1.375,6 1.375,-6 2.34375,0 0,8.78125 -1.46875,0 0,-6.90625 -1.5,6.90625 -1.53125,0 -1.5,-6.90625 0,6.90625 -1.40625,0 0,-8.78125 z m -6.1875,1.46875 0,2.03125 1.03125,0 C 8.1658849,5.3750147 8.5410082,5.3320467 8.6875,5.3125 8.9525678,5.2766397 9.1295258,5.2045404 9.28125,5.03125 9.4329639,4.8579154 9.5312448,4.6266641 9.53125,4.34375 9.5312448,4.0727991 9.4432873,3.8256016 9.3125,3.65625 9.1817026,3.486913 9.0080922,3.3796103 8.75,3.34375 c -0.1534675,-0.019988 -0.5835543,0 -1.3125,0 l -0.90625,0 z m 0,3.5 0,2.3125 1.40625,0 c 0.5580432,0 0.9437701,-0.02664 1.09375,-0.0625 C 9.2614397,9.0459852 9.4490011,8.9352978 9.59375,8.75 9.738488,8.564717 9.8124944,8.310794 9.8125,8 9.8124944,7.737 9.7366045,7.5270489 9.625,7.34375 9.5133853,7.1604511 9.3672567,7.0524337 9.15625,6.96875 8.9452334,6.885125 8.4857807,6.84375 7.78125,6.84375 l -1.25,0 z M 2,11.71875 l 18,0 0,7.3125 -18,0 0,-7.3125 z m 6.5,1.03125 0,5.90625 2.03125,0 c 0.760006,-0.0055 1.207516,-0.0405 1.40625,-0.0625 0.31689,-0.03493 0.596309,-0.09834 0.8125,-0.25 0.216181,-0.1518 0.406367,-0.339925 0.53125,-0.59375 0.124873,-0.253825 0.156244,-0.543962 0.15625,-0.8125 -6e-6,-0.341138 -0.05665,-0.62255 -0.25,-0.875 -0.193364,-0.25245 -0.483891,-0.458 -0.84375,-0.5625 0.255122,-0.115362 0.444697,-0.269 0.59375,-0.5 0.149043,-0.230862 0.249995,-0.5046 0.25,-0.78125 -5e-6,-0.255062 -0.09791,-0.482075 -0.21875,-0.6875 -0.120855,-0.205425 -0.22498,-0.345 -0.40625,-0.46875 -0.181279,-0.124162 -0.42664,-0.2115 -0.65625,-0.25 C 11.676632,12.774 11.342282,12.75 10.875,12.75 l -2.375,0 z m 1.21875,1 0.6875,0 c 0.561276,0 0.913082,-0.01375 1.03125,0 0.198727,0.0242 0.336788,0.104625 0.4375,0.21875 0.100704,0.114125 0.156246,0.254763 0.15625,0.4375 -4e-6,0.190575 -0.03943,0.351875 -0.15625,0.46875 -0.116825,0.1166 -0.327152,0.194 -0.53125,0.21875 -0.112797,0.02063 -0.379153,0 -0.84375,0 l -0.78125,0 0,-1.34375 z m 0,2.3125 0.9375,0 c 0.542477,0 0.900021,0.03738 1.0625,0.09375 0.162472,0.05637 0.320308,0.18875 0.40625,0.3125 0.08593,0.123613 0.124996,0.229012 0.125,0.40625 -4e-6,0.20955 -0.07605,0.406125 -0.1875,0.53125 -0.111455,0.1243 -0.229008,0.18575 -0.40625,0.21875 -0.115482,0.022 -0.414066,0.03125 -0.84375,0.03125 l -1.09375,0 0,-1.59375 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-96">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-4"
+ style="font-size:7.13911057px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text7599-2"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-imm.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-imm.svg
new file mode 100644
index 00000000..7b26f5b1
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-imm.svg
@@ -0,0 +1,160 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g15561">
+ <path
+ d="m 2.8919179,1.491522 17.0956961,0 L 22,3.948693 22,18.424603 17.466586,22 2.9211799,22 0.660128,18.7386 0.577598,4.007337 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z m -1.34375,7.5625 1.375,0 0,6.875 -1.375,0 0,-6.875 z m 2.6875,0 2.09375,0 1.25,4.6875 1.25,-4.6875 2.0625,0 0,6.875 -1.3125,0 0,-5.40625 -1.375,5.40625 -1.3125,0 -1.34375,-5.40625 0,5.40625 -1.3125,0 0,-6.875 z m 8.03125,0 2.09375,0 1.25,4.6875 1.25,-4.6875 2.0625,0 0,6.875 -1.3125,0 0,-5.40625 -1.375,5.40625 -1.3125,0 -1.375,-5.40625 0,5.40625 -1.28125,0 0,-6.875 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,1030.3622)"
+ id="g18879">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-25">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-44"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-secfox.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-secfox.svg
new file mode 100644
index 00000000..b0cbd540
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-secfox.svg
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="22px" height="22px" viewBox="0 0 22 22" enable-background="new 0 0 22 22" xml:space="preserve">
+<path fill="#608CC1" d="M19.078,0H2.922C1.298,0,0,1.298,0,2.922v16.156C0,20.701,1.298,22,2.922,22h16.156
+ C20.701,22,22,20.701,22,19.078V2.922C22,1.298,20.701,0,19.078,0z M8.721,14.791c-0.27,0.416-0.658,0.741-1.164,0.972
+ c-0.505,0.232-1.074,0.348-1.707,0.348c-0.802,0-1.474-0.116-2.016-0.351c-0.542-0.233-0.967-0.584-1.274-1.054
+ c-0.309-0.47-0.471-1-0.487-1.593l1.105-0.097c0.053,0.443,0.174,0.808,0.365,1.091c0.191,0.284,0.489,0.514,0.892,0.688
+ c0.403,0.176,0.856,0.264,1.36,0.264c0.447,0,0.842-0.066,1.184-0.2c0.342-0.132,0.597-0.314,0.765-0.547
+ c0.167-0.23,0.25-0.484,0.25-0.759c0-0.276-0.081-0.52-0.242-0.728c-0.161-0.207-0.427-0.381-0.797-0.522
+ c-0.238-0.093-0.764-0.236-1.577-0.433c-0.814-0.194-1.384-0.38-1.71-0.552c-0.423-0.223-0.739-0.497-0.946-0.826
+ c-0.207-0.328-0.311-0.695-0.311-1.102c0-0.447,0.127-0.865,0.38-1.254c0.254-0.388,0.625-0.684,1.112-0.885
+ C4.393,7.051,4.935,6.95,5.531,6.95c0.657,0,1.236,0.106,1.737,0.317C7.77,7.479,8.155,7.79,8.425,8.201
+ C8.695,8.612,8.84,9.077,8.86,9.597L7.736,9.682c-0.061-0.56-0.265-0.983-0.614-1.269C6.774,8.126,6.26,7.983,5.579,7.983
+ c-0.709,0-1.226,0.13-1.55,0.39C3.705,8.633,3.543,8.946,3.543,9.313c0,0.318,0.115,0.58,0.344,0.785
+ c0.226,0.206,0.814,0.417,1.768,0.632c0.952,0.216,1.606,0.405,1.96,0.565c0.516,0.236,0.896,0.539,1.142,0.902
+ c0.246,0.365,0.368,0.785,0.368,1.26C9.126,13.93,8.991,14.373,8.721,14.791z M18.311,8.146h-4.805v2.743h4.157v1.045h-4.157v4.025
+ h-1.171V7.101h5.976V8.146z"/>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-secsis.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-secsis.svg
new file mode 100644
index 00000000..00756e97
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-secsis.svg
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="22px" height="22px" viewBox="0 0 22 22" enable-background="new 0 0 22 22" xml:space="preserve">
+<path fill="#6393CD" d="M19.078,0H2.922C1.298,0,0,1.298,0,2.922v16.156C0,20.701,1.298,22,2.922,22h16.156
+ C20.701,22,22,20.701,22,19.078V2.922C22,1.298,20.701,0,19.078,0z M8.721,14.791c-0.27,0.416-0.658,0.741-1.164,0.972
+ c-0.505,0.232-1.074,0.348-1.707,0.348c-0.802,0-1.474-0.116-2.016-0.351c-0.542-0.233-0.967-0.584-1.274-1.054
+ c-0.309-0.47-0.471-1-0.487-1.593l1.105-0.097c0.053,0.443,0.174,0.808,0.365,1.091c0.191,0.284,0.489,0.514,0.892,0.688
+ c0.403,0.176,0.856,0.264,1.36,0.264c0.447,0,0.842-0.066,1.184-0.2c0.342-0.132,0.597-0.314,0.765-0.547
+ c0.167-0.23,0.25-0.484,0.25-0.759c0-0.276-0.081-0.52-0.242-0.728c-0.161-0.207-0.427-0.381-0.797-0.522
+ c-0.238-0.093-0.764-0.236-1.577-0.433c-0.814-0.194-1.384-0.38-1.71-0.552c-0.423-0.223-0.739-0.497-0.946-0.826
+ c-0.207-0.328-0.311-0.695-0.311-1.102c0-0.447,0.127-0.865,0.38-1.254c0.254-0.388,0.625-0.684,1.112-0.885
+ C4.393,7.051,4.935,6.95,5.531,6.95c0.657,0,1.236,0.106,1.737,0.317C7.77,7.479,8.155,7.79,8.425,8.201
+ C8.695,8.612,8.84,9.077,8.86,9.597L7.736,9.682c-0.061-0.56-0.265-0.983-0.614-1.269C6.774,8.126,6.26,7.983,5.579,7.983
+ c-0.709,0-1.226,0.13-1.55,0.39C3.705,8.633,3.543,8.946,3.543,9.313c0,0.318,0.115,0.58,0.344,0.785
+ c0.226,0.206,0.814,0.417,1.768,0.632c0.952,0.216,1.606,0.405,1.96,0.565c0.516,0.236,0.896,0.539,1.142,0.902
+ c0.246,0.365,0.368,0.785,0.368,1.26C9.126,13.93,8.991,14.373,8.721,14.791z M18.522,14.791c-0.271,0.416-0.658,0.741-1.163,0.972
+ c-0.508,0.232-1.077,0.348-1.708,0.348c-0.803,0-1.475-0.116-2.015-0.351c-0.542-0.233-0.967-0.584-1.275-1.054s-0.47-1-0.486-1.593
+ l1.107-0.097c0.051,0.443,0.172,0.808,0.365,1.091c0.19,0.284,0.485,0.514,0.891,0.688c0.4,0.176,0.854,0.264,1.359,0.264
+ c0.445,0,0.841-0.066,1.185-0.2c0.341-0.132,0.596-0.314,0.763-0.547c0.169-0.23,0.252-0.484,0.252-0.759
+ c0-0.276-0.08-0.52-0.241-0.728c-0.161-0.207-0.427-0.381-0.798-0.522c-0.239-0.093-0.766-0.236-1.576-0.433
+ c-0.816-0.194-1.386-0.38-1.711-0.552c-0.424-0.223-0.738-0.497-0.945-0.826c-0.209-0.328-0.312-0.695-0.312-1.102
+ c0-0.447,0.126-0.865,0.382-1.254c0.252-0.388,0.623-0.684,1.111-0.885c0.486-0.202,1.028-0.302,1.625-0.302
+ c0.655,0,1.235,0.106,1.737,0.317c0.499,0.212,0.886,0.523,1.157,0.934c0.269,0.411,0.414,0.876,0.436,1.396l-1.125,0.085
+ c-0.06-0.56-0.267-0.983-0.613-1.269c-0.349-0.286-0.864-0.429-1.544-0.429c-0.709,0-1.228,0.13-1.55,0.39
+ c-0.324,0.259-0.485,0.573-0.485,0.939c0,0.318,0.112,0.58,0.344,0.785c0.226,0.206,0.813,0.417,1.767,0.632
+ c0.953,0.216,1.606,0.405,1.961,0.565c0.516,0.236,0.896,0.539,1.141,0.902c0.248,0.365,0.371,0.785,0.371,1.26
+ C18.928,13.93,18.791,14.373,18.522,14.791z"/>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-segw.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-segw.svg
new file mode 100644
index 00000000..0bc8c10e
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-segw.svg
@@ -0,0 +1,153 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g15795">
+ <path
+ d="m 2.8919179,1.491522 17.0956961,0 L 22,3.948693 22,18.424603 17.466586,22 2.9211799,22 0.660128,18.7386 0.577598,4.007337 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z m 3.25,5.875 c 1.0833716,0 1.9211681,0.2698928 2.46875,0.8125 0.5475693,0.5426366 0.816266,1.3128957 0.84375,2.21875 L 8.5,8.96875 C 8.4254149,8.4620178 8.2765746,8.0969957 8.03125,7.875 7.7859153,7.6530336 7.3969054,7.5625147 6.90625,7.5625 6.3998859,7.5625147 6.0052923,7.6686316 5.71875,7.90625 5.5342594,8.0587297 5.4687475,8.2443926 5.46875,8.5 c -2.5e-6,0.2331948 0.077285,0.4278227 0.25,0.59375 0.2198126,0.210782 0.7458866,0.4275526 1.59375,0.65625 0.8478548,0.2287269 1.4687281,0.474342 1.875,0.71875 0.4062597,0.244408 0.7078644,0.576217 0.9375,1 0.229621,0.423783 0.374993,0.970398 0.375,1.59375 -7e-6,0.565035 -0.162738,1.100451 -0.4375,1.59375 -0.2747762,0.493284 -0.6538209,0.822589 -1.15625,1.0625 C 8.4038092,15.958677 7.8122232,16.125 7.0625,16.125 5.9712699,16.125 5.0848642,15.826263 4.5,15.25 3.9151327,14.673737 3.5825825,13.821924 3.46875,12.71875 l 1.6875,-0.1875 c 0.1020552,0.650247 0.3441881,1.132555 0.65625,1.4375 0.3120565,0.304945 0.7200841,0.468765 1.25,0.46875 C 7.6238101,14.437515 8.0591623,14.271304 8.34375,14 8.628327,13.728682 8.7499944,13.425747 8.75,13.0625 8.7499944,12.82932 8.6822155,12.632429 8.5625,12.46875 8.4427733,12.305071 8.2358159,12.152337 7.9375,12.03125 7.7333808,11.950564 7.257422,11.80005 6.53125,11.59375 5.5970314,11.329178 4.9705747,11.010674 4.59375,10.625 4.0638365,10.082378 3.7812492,9.4052992 3.78125,8.625 3.7812492,8.1227356 3.9069941,7.6559956 4.15625,7.21875 4.4055037,6.7815191 4.7809275,6.4474769 5.25,6.21875 5.7190681,5.9900526 6.2428749,5.875 6.90625,5.875 z m 5.03125,0.1875 6.40625,0 0,1.65625 -4.625,0 0,2.21875 4.34375,0 0,1.65625 -4.34375,0 0,2.65625 4.8125,0 0,1.6875 -6.59375,0 0,-9.875 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-7">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3-5"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-vc.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-vc.svg
new file mode 100644
index 00000000..7a42c2b5
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-vc.svg
@@ -0,0 +1,173 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g16170">
+ <g
+ id="g16131">
+ <path
+ d="m 2.891918,1.491522 17.095696,0 L 22,3.948693 22,18.424603 17.466586,22 2.92118,22 0.660128,18.7386 0.577598,4.007337 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z m 11.6875,6.78125 c 1.000672,0 1.812534,0.31775 2.4375,0.90625 0.371993,0.3479 0.688995,0.81725 0.875,1.46875 L 17,9.59375 C 16.90327,9.17175 16.681893,8.8067 16.375,8.5625 16.068094,8.3181 15.688954,8.21875 15.25,8.21875 c -0.606362,0 -1.091175,0.192 -1.46875,0.625 -0.377583,0.433 -0.531252,1.1552 -0.53125,2.125 -2e-6,1.0288 0.159248,1.7508 0.53125,2.1875 0.371996,0.4367 0.873547,0.625 1.46875,0.625 0.438954,0 0.808797,-0.0969 1.125,-0.375 0.316193,-0.2777 0.549854,-0.74795 0.6875,-1.34375 l 1.59375,0.53125 c -0.245526,0.8883 -0.647738,1.53755 -1.21875,1.96875 -0.571025,0.431 -1.309587,0.65625 -2.1875,0.65625 -1.086241,0 -1.956894,-0.3867 -2.65625,-1.125 -0.69936,-0.7384 -1.093751,-1.7194 -1.09375,-3 -10e-7,-1.3546 0.39067,-2.438 1.09375,-3.1875 0.703076,-0.7496 1.604238,-1.125 2.75,-1.125 z m -12,0.125 1.8125,0 2.0625,6.03125 1.96875,-6.03125 1.78125,0 -2.9375,8.1875 -1.75,0 -2.9375,-8.1875 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-zteatca.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-zteatca.svg
new file mode 100644
index 00000000..b22a6976
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-zteatca.svg
@@ -0,0 +1,191 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g16551">
+ <path
+ d="m 2.891918,1.4915224 17.095696,0 L 22,3.9486934 22,18.424603 17.466586,22 2.92118,22 0.660128,18.7386 0.577598,4.0073374 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,7.90625 0,7.0625 0.09375,0.28125 C 0.46673863,20.752775 1.9094813,22 3.65625,22 l 14.6875,0 c 1.746777,0 3.189514,-1.247225 3.5625,-2.9375 0.0022,-0.0097 -0.0021,-0.02147 0,-0.03125 l 0.09375,-0.25 0,-7.0625 0,-0.5 0,-7.40625 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z M 2.625,3.125 l 5.03125,0 0,1.09375 -3.78125,4.6875 3.90625,0 0,1.15625 -5.59375,0 0,-1.3125 3.625,-4.4375 -3.1875,0 0,-1.1875 z m 5.53125,0 5.5,0 0,1.1875 -2.0625,0 0,5.75 -1.375,0 0,-5.75 -2.0625,0 0,-1.1875 z m 6.40625,0 5.125,0 0,1.1875 -3.75,0 0,1.53125 3.5,0 0,1.15625 -3.5,0 0,1.90625 3.875,0 0,1.15625 -5.25,0 0,-6.9375 z M 2,11.71875 l 18,0 0,7.3125 -18,0 0,-7.3125 z m 8.65625,0.65625 c -0.8271508,6e-6 -1.5236833,0.268683 -2.03125,0.8125 -0.507569,0.543828 -0.7500004,1.298344 -0.75,2.28125 -4e-7,0.929202 0.2451165,1.651734 0.75,2.1875 0.5048812,0.535766 1.153318,0.812499 1.9375,0.8125 0.633785,-1e-6 1.181514,-0.155884 1.59375,-0.46875 0.412226,-0.312866 0.697748,-0.824217 0.875,-1.46875 L 11.875,16.1875 c -0.09937,0.432374 -0.271733,0.767336 -0.5,0.96875 -0.228275,0.20142 -0.495609,0.28125 -0.8125,0.28125 -0.42969,0 -0.7939476,-0.151854 -1.0625,-0.46875 C 9.2314435,16.651858 9.1249984,16.121585 9.125,15.375 c -1.6e-6,-0.703609 0.1336652,-1.217038 0.40625,-1.53125 0.2725807,-0.314205 0.593503,-0.468745 1.03125,-0.46875 0.316891,5e-6 0.590939,0.104008 0.8125,0.28125 0.221553,0.17725 0.367671,0.381352 0.4375,0.6875 l 1.21875,-0.25 c -0.134283,-0.472651 -0.356451,-0.810053 -0.625,-1.0625 -0.451176,-0.426996 -1.027592,-0.656244 -1.75,-0.65625 z m -8.03125,0.09375 0,0.96875 1.75,0 0,4.90625 1.21875,0 0,-4.90625 1.71875,0 0,-0.96875 -4.6875,0 z m 13.15625,0 -2.34375,5.875 1.25,0 L 15.21875,17 l 2.34375,0 0.53125,1.34375 1.28125,0 -2.375,-5.875 -1.21875,0 z m 0.59375,1.375 0.8125,2.1875 -1.625,0 0.8125,-2.1875 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,1030.3622)"
+ id="g19868">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-7">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-4"
+ style="font-size:7.13911057px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text7599"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text7710"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text7727"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-zteips.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-zteips.svg
new file mode 100644
index 00000000..511411c5
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-zteips.svg
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg2985">
+ <defs
+ id="defs2987" />
+ <metadata
+ id="metadata2990">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(-16.542373,7.1525424)"
+ id="layer1">
+ <rect
+ width="0"
+ height="16.575762"
+ x="4.5821676"
+ y="-0.052963413"
+ id="rect3917"
+ style="fill:#0000ff;fill-rule:evenodd;stroke:none" />
+ <g
+ id="text4015"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="g16650">
+ <path
+ d="m 2.891918,1.4915217 17.095696,0 L 22,3.9486927 22,18.424603 17.466586,22 2.92118,22 0.660128,18.7386 0.577598,4.0073367 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <path
+ d="M 3.6562503,0 C 1.6217773,0 2.9999954e-7,1.7026761 2.9999954e-7,3.8125 l 0,14.375 C 2.9999954e-7,20.297324 1.6217773,22 3.6562503,22 L 18.34375,22 C 20.378224,22 22,20.297324 22,18.1875 L 22,3.8125 C 22.000001,1.7026761 20.378225,0 18.34375,0 L 3.6562503,0 z m 0.03125,2 C 4.6124442,2 5.34375,2.7512669 5.34375,3.6875 5.34375,4.0816542 5.222914,4.4308391 5,4.71875 l 2.03125,4 C 7.08838,8.71279 7.1288,8.6875 7.1875,8.6875 c 0.314837,0 0.623408,0.065821 0.875,0.21875 l 2.65625,-2.5 C 10.65374,6.2254001 10.625,6.0160987 10.625,5.8125 c 0,-0.936233 0.731305,-1.6875 1.65625,-1.6875 0.924944,0 1.6875,0.751267 1.6875,1.6875 0,0.012844 2.81e-4,0.018474 0,0.03125 l 3.25,1.5 c 0.294184,-0.2593725 0.672976,-0.4375 1.09375,-0.4375 0.924944,0 1.6875,0.8137669 1.6875,1.75 0,0.936233 -0.762556,1.6875 -1.6875,1.6875 -0.924944,0 -1.65625,-0.751267 -1.65625,-1.6875 0,-0.051378 -0.0044,-0.1060349 0,-0.15625 L 13.5,7 c -0.305527,0.3294969 -0.737078,0.5 -1.21875,0.5 -0.277484,0 -0.519557,-0.066591 -0.75,-0.1875 L 8.8125,9.90625 c 0.04109,0.146999 0.09375,0.308436 0.09375,0.46875 0,0.936233 -0.793806,1.6875 -1.71875,1.6875 -0.924945,0 -1.65625,-0.751267 -1.65625,-1.6875 0,-0.4055882 0.171532,-0.7707418 0.40625,-1.0625 L 3.9375003,5.34375 c -0.074754,0.010325 -0.1724517,0.03125 -0.25,0.03125 -0.9249451,0 -1.6875,-0.7512669 -1.6875,-1.6875 0,-0.9362331 0.7625549,-1.6875 1.6875,-1.6875 z m -0.03125,11.71875 4.5937497,0 0,0.96875 -3.46875,4.25 3.59375,0 0,1.0625 -5.1249997,0 0,-1.125 3.3124997,-4.09375 -2.9062497,0 0,-1.0625 z m 5.0937497,0 5.03125,0 0,1.0625 -1.90625,0 0,5.21875 -1.25,0 0,-5.21875 -1.875,0 0,-1.0625 z m 5.84375,0 4.6875,0 0,1.0625 -3.40625,0 0,1.40625 3.1875,0 0,1.0625 -3.1875,0 0,1.6875 3.53125,0 0,1.0625 -4.8125,0 0,-6.28125 z"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-ztepower.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-ztepower.svg
new file mode 100644
index 00000000..4c168e48
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-ztepower.svg
@@ -0,0 +1,223 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g16909">
+ <g
+ transform="translate(3,3.4955)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-1427.3285)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-1424.998)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-1437.8303)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-1424.998)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-1424.998)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-1553.2731)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-1424.998)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,9.6265)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.375,1.375)"
+ id="g19868">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-7">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-4"
+ style="font-size:7.13911057px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text7599"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text7710"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text7727"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.375,1.375)"
+ id="g19893">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-6"
+ style="font-size:7.13911057px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text7599-7"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text7710-5"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.79259781,1.2616739)"
+ id="text7727-0"
+ style="font-size:4.7555871px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <rect
+ width="13.898305"
+ height="5.9661016"
+ x="1.1525424"
+ y="1.6949153"
+ id="rect3224"
+ style="opacity:0;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="scale(1.060294,0.94313463)"
+ id="text3431"
+ style="font-size:6.60194254px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <path
+ d="m 2.8919176,1.491522 17.0956964,0 L 22,3.948693 22,18.424603 17.466586,22 2.9211796,22 0.6601277,18.7386 0.5775977,4.007337 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <path
+ d="m 2.8919178,1.491522 17.0956962,0 L 22,3.948693 22,18.424603 17.466586,22 2.9211798,22 0.6601279,18.7386 0.5775979,4.007337 z"
+ id="rect3155-1"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <path
+ d="M 3.6562503,0 C 1.6217803,0 3e-7,1.7027004 3e-7,3.8125004 l 0,7.9062496 0,7.0625 0.09375,0.28125 C 0.466739,20.752775 1.9094816,22 3.6562503,22 L 18.34375,22 c 1.746777,0 3.189514,-1.247225 3.5625,-2.9375 0.0022,-0.0097 -0.0021,-0.02147 0,-0.03125 l 0.09375,-0.25 0,-7.0625 0,-0.5 0,-1.2499996 0,-6.15625 C 22,1.7027004 20.37823,0 18.34375,0 L 3.6562503,0 z m -1.03125,3.1250004 5.0312497,0 0,1.09375 -3.7812497,4.6875 3.9062497,0 0,1.1562496 -5.5937497,0 0,-1.3124996 3.6249997,-4.4375 -3.1874997,0 0,-1.1875 z m 5.5312497,0 5.500001,0 0,1.1875 -2.062501,0 0,5.7499996 -1.375,0 0,-5.7499996 -2.0625,0 0,-1.1875 z m 6.406251,0 5.124999,0 0,1.1875 -3.749999,0 0,1.53125 3.499999,0 0,1.15625 -3.499999,0 0,1.90625 3.874999,0 0,1.1562496 -5.249999,0 0,-6.9374996 z M 0.9687503,11.71875 l 0.3125,0 19.4374997,0 0.4375,0 0,7.3125 -0.4375,0 -19.4374997,0 -0.3125,0 0,-7.3125 z m 0.71875,1.1875 0,5.21875 1.1875,0 0,-1.96875 0.78125,0 c 0.539792,0 0.9653282,-0.04425 1.25,-0.09375 C 5.1157192,16.02125 5.297237,16.00054 5.5,15.875 5.702755,15.749875 5.868403,15.563475 6,15.34375 6.131588,15.124025 6.218746,14.853688 6.21875,14.53125 6.218746,14.11325 6.103264,13.764 5.875,13.5 5.646725,13.236 5.369625,13.047675 5.0312503,12.96875 4.8110317,12.9165 4.3500942,12.90625 3.6250003,12.90625 l -1.9375,0 z m 4.9374997,0 1.40625,5.21875 1.28125,0 1.21875,-3.90625 1.15625,3.90625 1.25,0 1.46875,-5.21875 -1.21875,0 -0.90625,3.65625 -1.03125,-3.65625 -1.40625,0 L 8.75,16.5 7.875,12.90625 l -1.25,0 z m 8.375001,0 0,5.21875 1.187499,0 0,-2.1875 0.21875,0 c 0.273923,0 0.467525,0.05525 0.59375,0.09375 0.126211,0.03987 0.293452,0.112738 0.40625,0.21875 0.112791,0.105875 0.287594,0.372737 0.59375,0.78125 l 0.875,1.09375 1.4375,0 -0.71875,-1.03125 C 19.309077,16.685237 19.074092,16.4413 18.90625,16.28125 18.7384,16.1212 18.507808,15.946287 18.25,15.8125 c 0.518305,-0.06738 0.926997,-0.2119 1.1875,-0.46875 0.260496,-0.25685 0.374996,-0.605787 0.375,-1 -4e-6,-0.310475 -0.07813,-0.571188 -0.25,-0.8125 -0.171881,-0.241313 -0.401494,-0.405675 -0.6875,-0.5 -0.286015,-0.09488 -0.743901,-0.125 -1.375,-0.125 l -2.499999,0 z m -12.1250007,0.90625 0.59375,0 c 0.4296848,0 0.7326641,-0.02337 0.875,0 0.1933566,0.03163 0.3425264,0.12515 0.46875,0.25 0.1262112,0.12375 0.1874959,0.277625 0.1875,0.46875 -2.7e-6,0.155238 -0.066288,0.257987 -0.15625,0.375 -0.089966,0.116875 -0.216556,0.22625 -0.375,0.28125 -0.1584509,0.055 -0.4675319,0.0625 -0.9375,0.0625 l -0.65625,0 0,-1.4375 z m 13.3124997,0 0.90625,0 c 0.483396,0 0.809561,-0.01375 0.90625,0 0.193354,0.02887 0.331423,0.07846 0.4375,0.1875 0.106081,0.108625 0.156246,0.260675 0.15625,0.4375 0,0.157713 -0.04444,0.26995 -0.125,0.375 -0.08057,0.105875 -0.201414,0.175712 -0.34375,0.21875 -0.142339,0.04262 -0.490481,0.09375 -1.0625,0.09375 l -0.875,0 0,-1.3125 z"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-ztesgs.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-ztesgs.svg
new file mode 100644
index 00000000..9e0add21
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-ztesgs.svg
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg2985">
+ <defs
+ id="defs2987" />
+ <metadata
+ id="metadata2990">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g17091">
+ <path
+ d="m 3.3667007,4.9406763 15.1614903,0 1.784705,1.3402752 0,7.8959515 -4.020503,1.950217 -12.899741,0 -1.7255757,-1.965387 -0.352854,-7.8487938 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="matrix(1.3643411,0,0,1.375,0.17054264,0)"
+ id="layer1"
+ style="fill:#649be6;fill-opacity:1">
+ <rect
+ width="0"
+ height="16.575762"
+ x="4.5821676"
+ y="-0.052963413"
+ id="rect3917"
+ style="fill:#649be6;fill-opacity:1;fill-rule:evenodd;stroke:none" />
+ <path
+ d="M 7.90625,0 -0.125,2 c 0.609123,5.9538031 -0.54929778,13.025659 7.90625,14 l 0.15625,0 0.15625,0 C 16.549298,15.025659 15.390877,7.9538031 16,2 L 7.96875,0 7.9375,0 7.90625,0 z m -5.96875,5.1875 3.6875,0 0,0.78125 -2.75,3.40625 2.84375,0 0,0.84375 -4.0625,0 0,-0.9375 2.625,-3.25 -2.34375,0 0,-0.84375 z m 4.0625,0 4,0 0,0.84375 -1.5,0 0,4.1875 -1,0 0,-4.1875 -1.5,0 0,-0.84375 z m 4.65625,0 3.6875,0 0,0.84375 -2.6875,0 0,1.125 2.5,0 0,0.84375 -2.5,0 0,1.375 2.78125,0 0,0.84375 -3.78125,0 0,-5.03125 z"
+ id="rect3975"
+ style="fill:#649be6;fill-opacity:1;fill-rule:evenodd;stroke:none" />
+ <g
+ id="text4015"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-zxsdr-nt.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-zxsdr-nt.svg
new file mode 100644
index 00000000..96ffa125
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other-zxsdr-nt.svg
@@ -0,0 +1,186 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g17349">
+ <path
+ d="m 2.891917,1.4915222 17.095697,0 L 22,3.9486932 22,18.424603 17.466586,22 2.921179,22 0.660128,18.7386 0.577598,4.0073372 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z m -1.625,5.625 2,0 4.25,7.1875 0,-7.1875 2,0 0,10.75 -2.125,0 -4.21875,-7 0,7 -1.90625,0 0,-10.75 z m 9.6875,0 8.25,0 0,1.8125 -3.09375,0 0,8.9375 -2.0625,0 0,-8.9375 -3.09375,0 0,-1.8125 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,1030.3622)"
+ id="g19916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-6-1">
+ <g
+ transform="scale(0.93557545,1.0688609)"
+ id="text7308-8"
+ style="font-size:9.30973721px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.98171941,1.018621)"
+ id="text7810"
+ style="font-size:10.73881721px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other.svg
new file mode 100644
index 00000000..ccdf1532
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-other.svg
@@ -0,0 +1,110 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g12119">
+ <path
+ d="m 2.891918,1.491522 17.095696,0 L 22,3.948693 22,18.424603 17.466586,22 2.92118,22 0.660128,18.7386 0.577598,4.007337 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z M 5.3125,4.9375 8,5.625 4.9375,16.96875 l -2.625,-0.6875 3,-11.34375 z m 4.3125,0.03125 2.75,0 0,11.75 -2.75,0 0,-11.75 z m 7,0.0625 L 19.6875,16.375 17,17.0625 13.96875,5.71875 16.625,5.03125 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-router-cisco.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-router-cisco.svg
new file mode 100644
index 00000000..7b3ea331
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-router-cisco.svg
@@ -0,0 +1,186 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g18949">
+ <path
+ d="m 0.27966118,12.444915 a 10.673729,10.021187 0 1 1 -21.34745818,0 10.673729,10.021187 0 1 1 21.34745818,0 z"
+ transform="matrix(0.98372369,0,0,1.0477801,21.190992,-2.098856)"
+ id="path18500"
+ style="fill:#ffffff;fill-rule:evenodd;stroke:none" />
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,1030.3622)"
+ id="g19940"
+ style="fill:#649be6;fill-opacity:1">
+ <g
+ id="layer2"
+ style="fill:#649be6;fill-opacity:1" />
+ <g
+ id="layer1-16"
+ style="fill:#649be6;fill-opacity:1">
+ <path
+ d="M 7.96875,0 C 3.5515207,0 0,3.5515207 0,7.96875 0,12.385979 3.5515207,16 7.96875,16 8.112083,16 8.2647361,15.976233 8.40625,15.96875 7.8294057,15.917653 7.375,15.465565 7.375,14.875 l 0,-1.15625 L 6,12.3125 l 1.375,0 0,-1.4375 0,-1.125 C 7.375,9.4381464 7.2475455,8.6491478 6.71875,8.5 L 7.75,8.5 c 0.5437988,0 0.7076076,0.8848514 0.71875,1.25 0.010595,-2.914e-4 0.020582,0 0.03125,0 l 6.375,0 c 0.312428,0 0.608632,0.1398822 0.8125,0.34375 C 15.871676,9.420743 16,8.6990838 16,7.96875 16,3.5515207 12.385979,0 7.96875,0 z m -0.0625,1.71875 1.9375,1.9375 -1.375,0 0,2.53125 c 0,0.3254127 -0.1492783,1.28125 -0.71875,1.28125 l -1.03125,0 C 7.2475451,7.319602 7.375,6.5306032 7.375,6.21875 l 0,-2.5625 -1.375,0 1.90625,-1.9375 z m -5.375,3.84375 0,1.375 2.625,0 c 0.3118536,0 1.0696027,-0.1274548 1.21875,-0.65625 l 0,1.03125 c 1e-7,0.5694718 -0.9558377,0.71875 -1.28125,0.71875 l -2.5625,0 0,1.375 L 0.625,7.46875 2.53125,5.5625 z m 10.90625,0 1.90625,1.90625 -1.90625,1.9375 0,-1.375 -2.59375,0 c -0.311855,-10e-8 -1.1008531,0.1587046 -1.25,0.6875 l 0,-1.0625 C 9.593751,7.086778 10.549586,6.9375 10.875,6.9375 l 2.5625,0 0,-1.375 z m -3.5,5.15625 c -0.5585081,4e-6 -1.001031,0.221301 -1.34375,0.625 -0.3427206,0.403706 -0.5000002,0.957847 -0.5,1.6875 -2e-7,0.689785 0.1590928,1.227278 0.5,1.625 0.3409057,0.397722 0.7830054,0.59375 1.3125,0.59375 0.427945,0 0.78415,-0.111496 1.0625,-0.34375 0.278344,-0.232253 0.474067,-0.584036 0.59375,-1.0625 L 10.78125,13.5625 c -0.0671,0.32097 -0.189619,0.569232 -0.34375,0.71875 -0.154135,0.14952 -0.317278,0.218751 -0.53125,0.21875 -0.2901346,10e-7 -0.5374182,-0.108506 -0.71875,-0.34375 -0.1813348,-0.235243 -0.2812511,-0.633279 -0.28125,-1.1875 -1.1e-6,-0.52232 0.097195,-0.891747 0.28125,-1.125 0.1840518,-0.233247 0.4231753,-0.374997 0.71875,-0.375 0.213972,3e-6 0.412898,0.08718 0.5625,0.21875 0.149597,0.131581 0.234098,0.303984 0.28125,0.53125 L 11.53125,12 C 11.44058,11.64913 11.30633,11.374902 11.125,11.1875 10.820356,10.870523 10.425284,10.718754 9.9375,10.71875 z m 4.03125,0 c -0.558508,4e-6 -1.001031,0.221301 -1.34375,0.625 -0.342721,0.403706 -0.53125,0.957847 -0.53125,1.6875 0,0.689785 0.190343,1.227278 0.53125,1.625 0.340906,0.397722 0.783006,0.59375 1.3125,0.59375 0.427945,0 0.78415,-0.111496 1.0625,-0.34375 0.278344,-0.232253 0.474067,-0.584036 0.59375,-1.0625 L 14.8125,13.5625 c -0.0671,0.32097 -0.189619,0.569232 -0.34375,0.71875 -0.154135,0.14952 -0.348529,0.218751 -0.5625,0.21875 -0.290136,10e-7 -0.506168,-0.108506 -0.6875,-0.34375 -0.181331,-0.235243 -0.281251,-0.633279 -0.28125,-1.1875 -10e-7,-0.52232 0.0972,-0.891747 0.28125,-1.125 0.184052,-0.233247 0.423175,-0.374997 0.71875,-0.375 0.213972,3e-6 0.381648,0.08718 0.53125,0.21875 0.149597,0.131581 0.265348,0.303984 0.3125,0.53125 L 15.5625,12 c -0.09067,-0.35087 -0.22492,-0.625098 -0.40625,-0.8125 -0.304644,-0.316977 -0.699716,-0.468746 -1.1875,-0.46875 z"
+ id="path3026"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ <g
+ transform="scale(0.9537189,1.048527)"
+ id="text3110"
+ style="font-size:2.55049467px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Sans" />
+ </g>
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-router-juniper.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-router-juniper.svg
new file mode 100644
index 00000000..199c918e
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-router-juniper.svg
@@ -0,0 +1,170 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(3,3.4955)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-1427.3285)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-1424.998)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-1437.8303)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-1424.998)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-1424.998)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-1553.2731)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-1424.998)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,9.6265)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,16.40678,-4.8474576)"
+ id="layer2-8"
+ style="fill:#649be6;fill-opacity:1" />
+ <g
+ transform="matrix(1.3113635,0,0,1.4417246,-3.8220332,8.1101695)"
+ id="text3110-4"
+ style="font-size:2.55049467px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Sans" />
+ <g
+ transform="matrix(1.375,0,0,1.375,16.40678,-4.8474576)"
+ id="text10075"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <path
+ d="M 10.95703,3.2e-7 C 4.883341,3.2e-7 0,4.8833409 0,10.957032 0,17.030722 4.883341,22 10.95703,22 c 0.197083,0 0.406981,-0.03268 0.601563,-0.04297 -0.793161,-0.07026 -1.417968,-0.69188 -1.417968,-1.503907 l 0,-1.589843 -1.8906256,-1.933594 1.8906256,0 0,-1.976563 0,-1.546875 c 0,-0.428798 -0.1752506,-1.513671 -0.9023446,-1.71875 l 1.4179686,0 c 0.747723,0 0.97296,1.216671 0.988281,1.71875 0.01457,-4e-4 0.0283,0 0.04297,0 l 8.765625,0 C 22.177006,14.381605 21.902361,12.177437 22,10.95703 22,4.8833389 17.030721,-1.68e-6 10.957031,-1.68e-6 z m -0.08594,2.36328198 2.664063,2.6640616 -1.890626,0 0,3.480469 c 0,0.447442 -0.205257,1.7617191 -0.98828,1.7617191 l -1.4179686,0 C 9.9653714,10.064453 10.140623,8.9795799 10.140623,8.5507819 l 0,-3.523438 -1.8906256,0 2.6210926,-2.6640616 z m -7.390624,5.2851556 0,1.890626 3.6093754,0 c 0.428798,0 1.470703,-0.175251 1.675781,-0.902345 l 0,1.4179691 c 0,0.783024 -1.314277,0.988281 -1.761718,0.988281 l -3.5234384,0 0,1.890625 -2.621093,-2.664062 2.621093,-2.6210941 z m 14.996093,0 2.621094,2.6210941 -2.621094,2.664062 0,-1.890625 -3.566406,0 c -0.428801,0 -1.513673,0.218219 -1.71875,0.945313 l 0,-1.460938 c 1e-6,-0.7830231 1.314275,-0.9882801 1.761719,-0.9882801 l 3.523437,0 0,-1.890626 z m -4.640625,6.6601561 0,4.425781 c -2e-6,0.557702 -0.04342,0.940168 -0.171875,1.117188 -0.128462,0.177024 -0.334353,0.257814 -0.644531,0.257812 -0.30705,2e-6 -0.537111,-0.09624 -0.6875,-0.34375 -0.100263,-0.162922 -0.156211,-0.464597 -0.171875,-0.859375 l -1.332031,0.171875 c 0.0031,0.73629 0.192016,1.295106 0.558593,1.675782 0.366576,0.380677 0.866983,0.558593 1.546875,0.558593 0.579628,0 1.063921,-0.1439 1.417969,-0.386718 0.354041,-0.242818 0.595747,-0.544271 0.730469,-0.945313 0.100265,-0.307046 0.171871,-0.761798 0.171875,-1.332031 l 0,-4.339844 -1.417969,0 z m 2.878907,0 0,6.875 1.417968,0 0,-2.578125 0.902344,0 c 0.629757,0 1.085853,-0.06311 1.417969,-0.128906 0.24438,-0.05327 0.493912,-0.13629 0.730469,-0.300781 0.236546,-0.164486 0.448032,-0.399248 0.601562,-0.6875 0.153519,-0.288246 0.214838,-0.651242 0.214844,-1.074219 -6e-6,-0.548294 -0.120409,-0.985814 -0.386719,-1.332031 -0.266322,-0.346206 -0.59351,-0.5841 -0.988281,-0.6875 -0.256922,-0.06893 -0.829837,-0.08594 -1.675781,-0.08594 l -2.234375,0 z m 1.417968,1.160156 0.644532,0 c 0.501298,0 0.865189,0.01169 1.03125,0.04297 0.225581,0.04074 0.411332,0.137863 0.558593,0.300781 0.147256,0.162928 0.214839,0.393886 0.214844,0.644532 -5e-6,0.203658 -0.06692,0.362106 -0.171875,0.515625 -0.104967,0.153528 -0.244837,0.271686 -0.429687,0.34375 -0.18486,0.07206 -0.568893,0.08594 -1.117188,0.08594 l -0.730469,0 0,-1.933594 z"
+ id="path3026-1"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-router-zte.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-router-zte.svg
new file mode 100644
index 00000000..8c23c762
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-router-zte.svg
@@ -0,0 +1,178 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,1030.3622)"
+ id="g19972"
+ style="fill:#649be6;fill-opacity:1">
+ <g
+ id="layer2-84"
+ style="fill:#649be6;fill-opacity:1" />
+ <g
+ id="layer1-9"
+ style="fill:#649be6;fill-opacity:1">
+ <path
+ d="M 7.96875,0 C 3.5515207,0 0,3.5515207 0,7.96875 0,12.385979 3.5515207,16 7.96875,16 8.112083,16 8.2647361,15.976233 8.40625,15.96875 7.8294057,15.917653 7.375,15.465565 7.375,14.875 l 0,-1.15625 L 6,12.3125 l 1.375,0 0,-1.4375 0,-1.125 C 7.375,9.4381464 7.2475455,8.6491478 6.71875,8.5 L 7.75,8.5 c 0.5437988,0 0.7076076,0.8848514 0.71875,1.25 0.010595,-2.914e-4 0.020582,0 0.03125,0 l 6.375,0 c 0.312428,0 0.608632,0.1398822 0.8125,0.34375 C 15.871676,9.420743 16,8.6990838 16,7.96875 16,3.5515207 12.385979,0 7.96875,0 z m -0.0625,1.71875 1.9375,1.9375 -1.375,0 0,2.53125 c 0,0.3254127 -0.1492783,1.28125 -0.71875,1.28125 l -1.03125,0 C 7.2475451,7.319602 7.375,6.5306032 7.375,6.21875 l 0,-2.5625 -1.375,0 1.90625,-1.9375 z m -5.375,3.84375 0,1.375 2.625,0 c 0.3118536,0 1.0696027,-0.1274548 1.21875,-0.65625 l 0,1.03125 c 1e-7,0.5694718 -0.9558377,0.71875 -1.28125,0.71875 l -2.5625,0 0,1.375 L 0.625,7.46875 2.53125,5.5625 z m 10.90625,0 1.90625,1.90625 -1.90625,1.9375 0,-1.375 -2.59375,0 c -0.311855,-10e-8 -1.1008531,0.1587046 -1.25,0.6875 l 0,-1.0625 C 9.593751,7.086778 10.549586,6.9375 10.875,6.9375 l 2.5625,0 0,-1.375 z m -5.34375,5.25 0,0.71875 1.40625,0 -1.5625,2.84375 0,0.8125 2.4375,0 0,-0.75 -1.71875,0 1.65625,-2.9375 0,-0.6875 -2.21875,0 z m 2.4375,0 0,0.71875 0.90625,0 0,3.65625 0.59375,0 0,-3.65625 0.90625,0 0,-0.71875 -2.40625,0 z m 2.78125,0 0,4.375 2.28125,0 0,-0.75 -1.65625,0 0,-1.1875 1.5,0 0,-0.75 -1.5,0 0,-0.96875 1.59375,0 0,-0.71875 -2.21875,0 z"
+ id="path3026-2"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ <g
+ transform="scale(0.82747797,1.2084914)"
+ id="text3110-0"
+ style="font-size:2.21289325px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Sans" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-router.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-router.svg
new file mode 100644
index 00000000..4a604382
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-router.svg
@@ -0,0 +1,175 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g18326">
+ <path
+ d="m -4.1016951,12.724576 a 11.139831,11.139831 0 1 1 -22.2796609,0 11.139831,11.139831 0 1 1 22.2796609,0 z"
+ transform="matrix(0.9288703,0,0,0.87447699,25.25062,-0.08073903)"
+ id="path17688"
+ style="fill:#ffffff;fill-rule:evenodd;stroke:none" />
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3749999,0,0,1.375,0,1030.3622)"
+ id="layer1-2-5"
+ style="fill:#649be6;fill-opacity:1">
+ <path
+ d="M 7.984283,0 C 3.567054,0 0,3.567054 0,7.9842833 0,12.401512 3.567054,16 7.984283,16 12.401513,16 16.000001,12.401512 16.000001,7.9842833 16.000001,3.567054 12.401513,0 7.984283,0 z m -0.06287,1.728881 1.917486,1.9174848 -1.383104,0 0,2.546169 c 0,0.3254127 -0.122081,1.2888016 -0.691552,1.2888016 l -1.037329,0 C 7.255712,7.3321884 7.387034,6.5358222 7.387034,6.223969 l 0,-2.5776032 -1.383105,0 1.917486,-1.9174848 z m -5.375246,3.8349701 0,1.3831041 2.609037,0 c 0.311854,0 1.076787,-0.1313227 1.225934,-0.6601179 l 0,1.0373281 c 0,0.5694718 -0.96339,0.6915521 -1.288802,0.6915521 l -2.546169,0 0,1.3831041 L 0.628684,7.4813364 2.546169,5.5638511 z m 10.876229,0 1.917485,1.9174853 -1.917485,1.9174852 0,-1.3831041 -2.577603,0 c -0.311855,-10e-8 -1.108221,0.1627567 -1.257368,0.6915521 l 0,-1.0373281 c 1e-6,-0.569472 0.963388,-0.7229863 1.288802,-0.7229863 l 2.546169,0 0,-1.3831041 z m -6.695482,2.9233792 1.037328,0 c 0.569472,0 0.691552,0.9948226 0.691552,1.3202357 l 0,2.514734 1.383104,0 -1.917485,1.94892 -1.917486,-1.94892 1.383105,0 0,-2.5776024 c 0,-0.3118536 -0.131322,-1.1082195 -0.660118,-1.2573673 z"
+ id="path3026-3"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-sdn-controller.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-sdn-controller.svg
new file mode 100644
index 00000000..eeaf68ec
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-sdn-controller.svg
@@ -0,0 +1,176 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3671057,0,0,1.3771882,0.00336756,-396.90323)"
+ id="layer1-67"
+ style="fill:#649be6;fill-opacity:1">
+ <path
+ d="M 7.9375,0 C 6.6475314,0.01050427 5.3328602,0.3310625 4.125,1 0.2599251,3.1407 -1.1405718,8.01 1,11.875 c 1.7589387,3.175894 5.3482139,4.659898 8.71875,3.90625 L 11.03125,13.5 11.488803,12.723699 10.75,11.28125 11.5625,10.84375 C 11.135275,10.477416 10.819986,10.006879 10.625,9.46875 L 9.9375,9.84375 9.09375,8.3125 10.53125,7.53125 c 0.385728,-1.3642255 1.63948,-2.375 3.125,-2.375 0.791605,0 1.497965,0.3086332 2.0625,0.78125 C 15.553189,5.3205446 15.32344,4.7090015 15,4.125 13.528304,1.4677438 10.775431,-0.0231094 7.9375,0 z M 8.28125,1.53125 C 8.9907355,1.56225 9.7155052,1.6828 10.375,1.9375 L 9.34375,2.5 C 8.9934693,2.1479 8.6510915,1.82385 8.28125,1.53125 z M 6.25,1.75 C 6.8614184,2.1617 7.4665563,2.65045 8.03125,3.21875 L 6.6875,3.96875 5.59375,2 C 5.58846,1.99 5.5994,1.97775 5.59375,1.96875 5.8101549,1.88275 6.0293328,1.8119 6.25,1.75 z m -2.09375,1 c 0.005,0.01 0.026732,0.02325 0.03125,0.03125 L 5.28125,4.75 3.8125,5.5625 C 3.6276804,4.7885 3.5611501,4.01355 3.53125,3.28125 3.7283142,3.09465 3.9324093,2.913 4.15625,2.75 z m 7.8125,0.09375 c 0.48057,0.3683 0.9108,0.8057 1.28125,1.3125 L 11.40625,5.1875 c -0.309783,-0.5174 -0.646753,-1.01505 -1,-1.46875 l 1.40625,-0.75 c 0.05045,-0.028 0.117591,-0.0862 0.15625,-0.125 z M 9.125,4.46875 c 0.3505622,0.4512 0.6604307,0.9226 0.96875,1.4375 l -1.78125,1 L 7.46875,5.375 z m -6.84375,0.5 C 2.335948,5.40585 2.3928887,5.83185 2.5,6.28125 l -0.875,0.5 C 1.7476606,6.14595 1.9768528,5.54215 2.28125,4.96875 z M 6.0625,6.15625 6.90625,7.6875 5,8.71875 C 4.7250487,8.18585 4.5112636,7.6601 4.3125,7.125 z M 3,7.84375 c 0.1998087,0.5398 0.4107553,1.0886 0.6875,1.625 l -1.71875,0.9375 C 1.7410892,9.83685 1.5598778,9.24505 1.5,8.65625 z m 4.6875,1.25 L 8.53125,10.625 6.875,11.53125 C 6.4976004,11.09105 6.1482148,10.6333 5.8125,10.125 z M 4.5,10.875 c 0.3370377,0.5082 0.7136658,0.9348 1.09375,1.375 L 4,13.15625 c -0.4673069,-0.363 -0.8881306,-0.8174 -1.25,-1.3125 z m 4.8125,1.1875 1.09375,1.96875 c -0.114753,0.046 -0.227352,0.11725 -0.34375,0.15625 -0.685253,-0.3799 -1.3560864,-0.8571 -2,-1.4375 z M 6.75,13.46875 C 7.1936093,13.86675 7.6597115,14.1943 8.125,14.5 7.2917089,14.516 6.46063,14.3551 5.6875,14.0625 z"
+ transform="translate(0,1036.3622)"
+ id="path9674"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ <path
+ d="m 13.642885,1042.4849 c -1.309817,0 -2.35858,1.0519 -2.35858,2.3249 0,0.9017 0.53779,1.6516 1.314066,2.0303 l 0,4.6828 c 0,0.3293 0.267551,0.5894 0.606492,0.5894 l 0.876045,0 c 0.338941,0 0.606492,-0.2601 0.606492,-0.5894 l 0,-4.6828 c 0.776276,-0.3787 1.314066,-1.1286 1.314066,-2.0303 0,-1.273 -1.048763,-2.3249 -2.358581,-2.3249 z"
+ id="path9870-0-9-3"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ <path
+ d="m 11.651108,1050.4652 3.869741,0 0.569079,1.859 -4.894084,0 z"
+ id="rect9989"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-sdn-host.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-sdn-host.svg
new file mode 100644
index 00000000..5577c282
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-sdn-host.svg
@@ -0,0 +1,167 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3743148,0,0,1.3743208,0.01096373,1030.3659)"
+ id="layer1-38"
+ style="fill:#649be6;fill-opacity:1">
+ <path
+ d="M 7.78125,0 C 6.4918979,0.033489 5.1955309,0.37225962 4,1.0625 0.17430016,3.2712689 -1.1462799,8.1742812 1.0625,12 c 1.6677779,2.888676 4.8837016,4.346233 8,3.9375 C 8.701589,15.682653 8.5,15.355237 8.5,15.03125 c 0,-0.357213 0.2558704,-0.667512 0.6875,-0.9375 l -0.5,0 C 8.0326296,14.09375 7.5,13.56112 7.5,12.90625 L 7.5,11.25 6.96875,11.5625 C 6.5836335,11.129204 6.2196972,10.689736 5.875,10.1875 L 7.5,9.25 l 0,-1 C 7.5,7.5951296 8.0326296,7.0625 8.6875,7.0625 l 3.65625,0 C 12.27223,6.8954286 12.203656,6.7270462 12.125,6.5625 L 13.96875,5.5 c 0.216556,0.5148427 0.386111,1.0283922 0.46875,1.5625 l 1.03125,0 c 0.163718,0 0.327233,0.034092 0.46875,0.09375 C 15.824463,6.0732159 15.517129,5.0039472 14.9375,4 13.418963,1.3698179 10.617825,-0.0736758 7.78125,0 z m 0.375,1.53125 c 0.7097681,0.018191 1.4299588,0.1321505 2.09375,0.375 l -1,0.5625 C 8.8935927,2.1230141 8.5311472,1.8171291 8.15625,1.53125 z m -2,0.25 C 6.7747903,2.181954 7.3628423,2.6606341 7.9375,3.21875 L 6.625,4 5.5,2.03125 c 0.214721,-0.090489 0.4366538,-0.1844054 0.65625,-0.25 z m 5.71875,1 c 0.486938,0.3596172 0.901846,0.8124059 1.28125,1.3125 L 11.34375,5.125 c -0.318945,-0.5117944 -0.638802,-0.9902775 -1,-1.4375 l 1.375,-0.78125 c 0.05004,-0.02889 0.118831,-0.084924 0.15625,-0.125 z m -7.8125,0.0625 0.03125,0 1.125,1.96875 -1.4375,0.8125 C 3.5826613,4.8544901 3.4803938,4.1064377 3.4375,3.375 3.6311005,3.1847187 3.842005,3.0109989 4.0625,2.84375 z M 9.03125,4.4375 C 9.38967,4.8821704 9.7450915,5.3656673 10.0625,5.875 l -1.75,1 -0.875,-1.5 1.59375,-0.9375 z m -6.8125,0.625 C 2.28115,5.4984333 2.3849153,5.9276899 2.5,6.375 L 1.59375,6.90625 C 1.7050573,6.2690047 1.9247093,5.6411904 2.21875,5.0625 z M 6,6.1875 6.875,7.6875 5.03125,8.78125 C 4.7468737,8.2534234 4.4895241,7.718972 4.28125,7.1875 L 6,6.1875 z M 3,7.90625 c 0.209307,0.5360722 0.432526,1.093738 0.71875,1.625 L 2.03125,10.5 C 1.7935308,9.9348442 1.6015452,9.3687176 1.53125,8.78125 L 3,7.90625 z m 6.5625,0 c -0.77368,0 -1.40625,0.6013198 -1.40625,1.375 l 0,3.03125 c 0,0.77368 0.63257,1.40625 1.40625,1.40625 l 1.59375,0 L 11.0625,14.25 c -0.806035,0.153304 -1.375,0.477335 -1.375,0.84375 C 9.6875,15.603793 10.762662,16 12.09375,16 13.424838,16 14.5,15.603793 14.5,15.09375 c 0,-0.377636 -0.591222,-0.727887 -1.4375,-0.875 l -0.09375,-0.5 1.625,0 C 15.36743,13.71875 16,13.08618 16,12.3125 l 0,-3.03125 c 0,-0.7736802 -0.63257,-1.375 -1.40625,-1.375 l -5.03125,0 z m -0.4375,1.0625 5.9375,0 0,3.6875 -5.9375,0 0,-3.6875 z M 4.5625,10.9375 c 0.346041,0.502039 0.737228,0.910486 1.125,1.34375 l -1.59375,0.9375 c -0.4736137,-0.35461 -0.8794251,-0.824049 -1.25,-1.3125 L 4.5625,10.9375 z M 6.84375,13.5 C 7.2943075,13.889973 7.7794469,14.202733 8.25,14.5 7.4172606,14.53065 6.5593666,14.40379 5.78125,14.125 L 6.84375,13.5 z"
+ id="path9674-4-1"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-sdn-switch.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-sdn-switch.svg
new file mode 100644
index 00000000..da541ba3
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-sdn-switch.svg
@@ -0,0 +1,167 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3742887,0,0,1.3747689,0.01138117,1030.3659)"
+ id="layer1-4"
+ style="fill:#649be6;fill-opacity:1">
+ <path
+ d="M 7.78125,0 C 6.4916817,0.0334946 5.1957316,0.37214406 4,1.0625 0.17365903,3.271639 -1.14665,8.1736399 1.0625,12 c 0.9102337,1.576572 2.2846553,2.722771 3.84375,3.375 l 0,-2.625 -0.8125,0.46875 c -0.473693,-0.354669 -0.879362,-0.823968 -1.25,-1.3125 l 1.625,-0.9375 L 4.25,10.90625 1.8125,10.78125 2.28125,10.34375 2.03125,10.5 C 1.793492,9.9347499 1.601556,9.368816 1.53125,8.78125 L 3,7.90625 C 3.156934,8.3081962 3.3377253,8.7226449 3.53125,9.125 L 4.65625,8 C 4.5256715,7.7274786 4.3891641,7.4628756 4.28125,7.1875 l 1.75,-1 L 6.1875,6.46875 7.625,5.03125 7.78125,5.1875 9.0625,4.4375 c 0.35848,0.444745 0.6825375,0.928082 1,1.4375 L 9.03125,6.4375 10.25,7.65625 l 0.625,-0.375 1.625,-0.9375 1.46875,-0.875 c 0.115114,0.2736726 0.228413,0.5636194 0.3125,0.84375 l 0.0625,0 1.4375,-0.21875 C 15.604916,5.3778227 15.324675,4.6706065 14.9375,4 13.418709,1.3693777 10.6183,-0.07368813 7.78125,0 z m 0.375,1.53125 c 0.709887,0.018194 1.4298475,0.1321099 2.09375,0.375 l -1,0.5625 C 8.893537,2.1229561 8.531209,1.8171771 8.15625,1.53125 z m -2,0.25 C 6.774894,2.182021 7.362747,2.6605401 7.9375,3.21875 L 6.625,4 5.5,2.03125 c 0.214757,-0.090503 0.436618,-0.1843944 0.65625,-0.25 z m 5.71875,1 c 0.487021,0.359677 0.901783,0.781073 1.28125,1.28125 l -1.8125,1.0625 c -0.318998,-0.51188 -0.638742,-0.990203 -1,-1.4375 l 1.375,-0.8125 C 11.7688,2.846105 11.837575,2.8213328 11.875,2.78125 z M 4.09375,2.84375 5.21875,4.8125 3.78125,5.625 C 3.582644,4.854357 3.51165,4.10656 3.46875,3.375 3.662382,3.184686 3.873218,3.0110271 4.09375,2.84375 z M 2.21875,5.0625 C 2.28117,5.498505 2.384894,5.927615 2.5,6.375 L 1.59375,6.90625 C 1.705077,6.268898 1.924661,5.641287 2.21875,5.0625 z m 5.1875,1.75 -3.25,3.28125 1.96875,0 0,4.46875 L 7.25,16 l 1.46875,0 0,-5.90625 1.96875,0 L 7.40625,6.8125 z m 5.15625,0 -1.125,1.40625 0,4.5 -1.96875,0 L 12.71875,16 16,12.71875 l -1.96875,0 0,-5.90625 -1.46875,0 z"
+ id="path9674-4"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-sdn-vnet.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-sdn-vnet.svg
new file mode 100644
index 00000000..ba73c4b6
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-sdn-vnet.svg
@@ -0,0 +1,167 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3740419,0,0,1.375315,0.01137913,1030.3659)"
+ id="layer1-92"
+ style="fill:#649be6;fill-opacity:1">
+ <path
+ d="M 7.78125,0 C 6.4916817,0.0334946 5.1957316,0.37214406 4,1.0625 0.17365903,3.271639 -1.14665,8.1736399 1.0625,12 2.7883977,14.989344 6.161376,16.435285 9.375,15.875 8.3211435,15.633273 7.4048703,15.103251 6.6875,14.34375 6.3805067,14.280576 6.0730926,14.229562 5.78125,14.125 l 0.5,-0.28125 C 5.9566748,13.406897 5.6812367,12.930687 5.5,12.40625 l -1.40625,0.8125 c -0.473693,-0.354669 -0.879362,-0.823968 -1.25,-1.3125 l 1.71875,-1 c 0.2507283,0.363757 0.5347583,0.680519 0.8125,1 -0.099049,-0.408423 -0.1875,-0.811121 -0.1875,-1.25 0,-0.8009547 0.1864155,-1.5667946 0.5,-2.25 l -0.65625,0.375 C 4.746827,8.253335 4.489558,7.719061 4.28125,7.1875 l 1.75,-1 0.53125,0.90625 C 6.929586,6.67798 7.3340507,6.3177556 7.8125,6.03125 L 7.4375,5.375 9.0625,4.4375 C 9.2951673,4.7261566 9.5044247,5.0260241 9.71875,5.34375 10.001518,5.2979024 10.266784,5.25 10.5625,5.25 c 0.945008,0 1.852938,0.2600081 2.625,0.6875 l 0.78125,-0.46875 c 0.186437,0.4432379 0.313747,0.9166936 0.40625,1.375 0.01051,0.010515 0.02082,0.020649 0.03125,0.03125 0.714546,0.7264065 1.225355,1.6507757 1.4375,2.6875 C 16.213433,7.7217872 15.950027,5.7537483 14.9375,4 13.418709,1.3693777 10.6183,-0.07368813 7.78125,0 z m 0.375,1.53125 c 0.709887,0.018194 1.4298475,0.1321099 2.09375,0.375 l -1,0.5625 C 8.893537,2.1229561 8.531209,1.8171771 8.15625,1.53125 z m -2,0.25 C 6.774894,2.182021 7.362747,2.6605401 7.9375,3.21875 L 6.625,4 5.5,2.03125 c 0.214757,-0.090503 0.436618,-0.1843944 0.65625,-0.25 z m 5.71875,1 c 0.487021,0.359677 0.901783,0.781073 1.28125,1.28125 l -1.8125,1.0625 c -0.318998,-0.51188 -0.638742,-0.990203 -1,-1.4375 l 1.375,-0.8125 C 11.7688,2.846105 11.837575,2.8213328 11.875,2.78125 z M 4.09375,2.84375 5.21875,4.8125 3.78125,5.625 C 3.582644,4.854357 3.51165,4.10656 3.46875,3.375 3.662382,3.184686 3.873218,3.0110271 4.09375,2.84375 z M 2.21875,5.0625 C 2.28117,5.498505 2.384894,5.927615 2.5,6.375 L 1.59375,6.90625 C 1.705077,6.268898 1.924661,5.641287 2.21875,5.0625 z m 8.3125,1.125 c -2.4777175,0 -4.46875,2.0222837 -4.46875,4.5 0,2.477716 1.9910325,4.46875 4.46875,4.46875 2.477717,0 4.5,-1.991034 4.5,-4.46875 0,-2.4777163 -2.022283,-4.5 -4.5,-4.5 z M 3,7.90625 c 0.209337,0.536163 0.432477,1.093649 0.71875,1.625 L 2.03125,10.5 C 1.793492,9.9347499 1.601556,9.368816 1.53125,8.78125 L 3,7.90625 z M 10.21875,8 c 0.306474,0 0.5625,0.256027 0.5625,0.5625 0,0.01623 0.0013,0.01544 0,0.03125 L 12.75,9.625 c 0.135367,-0.115092 0.303766,-0.1875 0.5,-0.1875 0.429062,0 0.78125,0.3331967 0.78125,0.75 0,0.416804 -0.352188,0.75 -0.78125,0.75 -0.196234,0 -0.364633,-0.06726 -0.5,-0.1875 l -1.1875,0.78125 c 0,0.01642 0.0023,0.01546 0,0.03125 L 13,12.53125 c 0.07664,-0.06075 0.140473,-0.09375 0.25,-0.09375 0.258879,0 0.5,0.186017 0.5,0.4375 0,0.251482 -0.241121,0.46875 -0.5,0.46875 -0.25888,0 -0.4375,-0.217268 -0.4375,-0.46875 l -1.46875,-1.03125 c -0.0459,0.01817 -0.104147,0.03125 -0.15625,0.03125 -0.208402,0 -0.40625,-0.141302 -0.40625,-0.34375 0,-0.202448 0.197848,-0.375 0.40625,-0.375 0.07497,0 0.127431,0.02651 0.1875,0.0625 l 1.1875,-0.75 C 12.52376,10.37695 12.5,10.291701 12.5,10.1875 c 0,-0.07961 0.0081,-0.178338 0.03125,-0.25 l -1.90625,-1 c -0.09772,0.09772 -0.253013,0.15625 -0.40625,0.15625 -0.06851,0 -0.127757,-0.04064 -0.1875,-0.0625 L 8.625,10.8125 c 0.135025,0.155129 0.1875,0.370669 0.1875,0.59375 0,0.490356 -0.384643,0.875 -0.875,0.875 -0.490358,0 -0.875,-0.384644 -0.875,-0.875 0,-0.490358 0.384642,-0.875 0.875,-0.875 0.133638,0 0.26172,0.04127 0.375,0.09375 L 9.78125,8.8125 C 9.73147,8.73001 9.6875,8.668389 9.6875,8.5625 9.6875,8.256027 9.9122755,8 10.21875,8 z"
+ id="path9674-4-6"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server-aix.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server-aix.svg
new file mode 100644
index 00000000..facb8b3d
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server-aix.svg
@@ -0,0 +1,170 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,1030.3622)"
+ id="layer1-77"
+ style="fill:#649be6;fill-opacity:1">
+ <path
+ d="M 8,0 C 3.5817219,0 0,3.5817219 0,8 c 0,4.418278 3.5817219,8 8,8 4.418278,0 8,-3.581722 8,-8 C 16,3.5817219 12.418278,0 8,0 z m 0,1 c 3.865993,0 7,3.1340068 7,7 0,3.865993 -3.134007,7 -7,7 C 4.1340068,15 1,11.865993 1,8 1,4.1340068 4.1340068,1 8,1 z M 8,2 C 4.6862914,2 2,4.6862914 2,8 2,8.5649446 2.1040437,9.1067307 2.25,9.625 L 4,5.0625 l 1.0625,0 2.03125,5 -1.125,0 -0.4375,-1.125 -2,0 -0.40625,1.125 -0.75,0 C 3.216197,12.359917 5.4111652,14 8,14 c 2.588835,0 4.783803,-1.640083 5.625,-3.9375 l -1.125,0 -1.125,-1.71875 -1.125,1.71875 -1.1875,0 L 10.75,7.46875 9.21875,5.0625 l 1.1875,0 1,1.59375 0.96875,-1.59375 0.875,0 C 12.224049,3.2264495 10.252685,2 8,2 z m -0.40625,3.0625 1,0 0,5 -1,0 0,-5 z M 13.375,5.34375 12,7.5 13.65625,9.96875 C 13.870818,9.3514742 14,8.690356 14,8 14,7.0483649 13.76933,6.1431312 13.375,5.34375 z m -8.84375,0.875 -0.6875,1.875 1.375,0 -0.6875,-1.875 z"
+ id="path3980"
+ style="fill:#649be6;fill-opacity:1;fill-rule:evenodd;stroke:none" />
+ <g
+ id="text4018"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server-hpux.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server-hpux.svg
new file mode 100644
index 00000000..5c669aaf
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server-hpux.svg
@@ -0,0 +1,181 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g20131">
+ <path
+ d="m 2.891918,1.4915224 17.095696,0 L 22,3.9486934 22,18.424603 17.466586,22 2.92118,22 0.660128,18.7386 0.577598,4.0073374 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z M 2,2 l 1.34375,0 0,2.9375 2.625,0 0,-2.9375 1.3125,0 0,7.46875 -1.3125,0 0,-3.28125 -2.625,0 0,3.28125 L 2,9.46875 2,2 z m 6.65625,0 2.15625,0 c 0.810751,7.5e-6 1.347517,0.018801 1.59375,0.09375 0.378347,0.1124412 0.682258,0.3735237 0.9375,0.75 0.255228,0.3764896 0.374994,0.8412653 0.375,1.4375 -6e-6,0.4599618 -0.07161,0.8740522 -0.21875,1.1875 -0.147143,0.3134558 -0.335794,0.5398812 -0.5625,0.71875 -0.226715,0.1788753 -0.453286,0.3170822 -0.6875,0.375 -0.3183,0.071552 -0.771441,0.093752 -1.375,0.09375 l -0.875,0 0,2.8125 -1.34375,0 0,-7.46875 z M 10,3.28125 10,5.375 l 0.75,0 c 0.525486,4.1e-6 0.854081,-0.015383 1.03125,-0.09375 0.177161,-0.078359 0.305652,-0.2080482 0.40625,-0.375 C 12.288089,4.7393073 12.374996,4.5652157 12.375,4.34375 12.374996,4.0711883 12.297377,3.8021742 12.15625,3.625 12.015115,3.4478373 11.809947,3.3567987 11.59375,3.3125 11.434598,3.278438 11.105444,3.2812561 10.625,3.28125 l -0.625,0 z M 19.4375,9.09375 19.75,9.375 20,9.9375 l -0.53125,0.53125 -4,3.5 1.375,2.15625 0.09375,0.59375 -0.25,0.34375 -0.53125,-0.09375 -1.25,-2.1875 -0.3125,-0.125 -0.1875,0.0625 -4.1875,5.1875 L 9.34375,20 c 0,0 0.069374,0.02752 -0.125,-0.28125 -0.1943734,-0.308766 -0.03125,-0.625 -0.03125,-0.625 L 14.0625,13.5 14,13.125 13.25,12.0625 13.03125,12.09375 10.84375,14.4375 9.15625,15.84375 8.375,16.28125 7.46875,16.25 6.9375,15.96875 6.71875,15.03125 5.3125,16.1875 l -0.65625,0.25 -0.625,-0.15625 -0.375,-0.5625 0.125,-1.28125 0.625,-1.15625 1.8125,-2.625 L 6.75,10.375 7,10.53125 7.125,11.1875 6.53125,12.3125 5.25,14.03125 l -0.03125,0.5 0.21875,0.125 0.78125,-0.40625 3,-3.25 0.625,-0.5625 0.40625,0.09375 0.09375,0.625 -0.5,0.78125 -1.5625,2.125 -0.09375,0.46875 0.375,0.0625 0.65625,-0.25 3.09375,-2.96875 0.75,-0.53125 0.46875,0.0625 0.375,0.25 0.90625,1.46875 4.125,-3.34375 0.5,-0.1875 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="matrix(1.1316306,0,0,1.1293764,2.0000004,1032.2916)"
+ id="layer1-2-7">
+ <g
+ id="text4018"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.93786046,1.0662567)"
+ id="text4055"
+ style="font-size:8.69168949px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server-klinux.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server-klinux.svg
new file mode 100644
index 00000000..37a36108
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server-klinux.svg
@@ -0,0 +1,191 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g20564">
+ <path
+ d="m 2.891918,1.491522 17.095696,0 L 22,3.948693 22,18.424603 17.466586,22 2.92118,22 0.660128,18.7386 0.577598,4.007337 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z M 14.375,2 c 1.471617,0 2.65625,1.3219114 2.65625,3 0,0.9051016 -0.353446,1.7251676 -0.90625,2.28125 0.602655,0.8502107 1.175046,1.779804 1.625,2.21875 1.099591,1.072694 1.5625,2.401425 1.5625,4.15625 0,0.180628 -0.04809,0.323441 -0.0625,0.5 -0.290723,-0.07526 -0.604646,-0.09375 -0.9375,-0.09375 -0.252559,0 -0.520046,-0.01312 -0.75,0.03125 0.07126,-0.388261 0.125,-0.769001 0.125,-1.1875 C 17.664469,11.419949 16.681973,9.6075174 15.9375,8 15.92382,8.00735 15.92104,7.99362 15.90625,8 L 14.9375,8.40625 c -0.4249,0.1831031 -0.865122,0.1987478 -1.28125,0 L 12.8125,8 C 12.71757,7.95465 12.636934,7.918294 12.59375,7.84375 c -0.05406,0.087092 -0.109606,0.1884906 -0.15625,0.25 -1.039286,1.4610971 -1.977961,2.891627 -2,5.15625 0,0.327743 0.02884,0.613683 0.09375,0.9375 -0.06967,-0.0038 -0.116303,0 -0.1875,0 -0.5496481,0 -1.0580231,0.07975 -1.46875,0.28125 -0.037223,-0.2811 -0.09375,-0.520166 -0.09375,-0.8125 0,-2.081108 0.6540291,-3.337305 2.125,-4.375 C 11.206936,9.0691316 11.591511,8.3352081 12,7.71875 12.146944,7.4969912 12.284525,7.2773622 12.4375,7.0625 12.006093,6.521266 11.75,5.7959582 11.75,5 c 0,-1.6780886 1.15338,-3 2.625,-3 z M 9.65625,2.03125 6.5625,7.875 9.03125,9.375 2,16.84375 5.6875,10.3125 2.3125,9.78125 l 7.34375,-7.75 z m 3.65625,2.4375 c -0.445775,0 -0.84375,0.387538 -0.84375,0.90625 0,0.389034 0.206023,0.7545497 0.5,0.90625 -0.129526,-0.1282238 -0.1875,-0.3890691 -0.1875,-0.625 0,-0.3899686 0.184603,-0.6875 0.46875,-0.6875 0.284147,0 0.53125,0.2975314 0.53125,0.6875 0.08493,-0.04023 0.168488,-0.051824 0.25,-0.0625 0.01207,-0.067212 0.0625,-0.1471784 0.0625,-0.21875 0,-0.518712 -0.335477,-0.90625 -0.78125,-0.90625 z M 15.4375,4.5 c -0.445774,0 -0.8125,0.387538 -0.8125,0.90625 0,0.1357582 0.01783,0.2551841 0.0625,0.375 0.05417,0.031017 0.133461,0.086728 0.1875,0.125 -0.0053,-0.039327 0,-0.082314 0,-0.125 0,-0.3899685 0.247103,-0.75 0.53125,-0.75 0.284147,0 0.5,0.3600315 0.5,0.75 0,0.2071707 -0.02145,0.402085 -0.125,0.53125 C 16.075227,6.1608001 16.25,5.7952841 16.25,5.40625 16.25,4.887538 15.883274,4.5 15.4375,4.5 z m -1.09375,1.4375 c -0.216621,1e-7 -0.430785,0.080257 -0.59375,0.21875 l -0.8125,0.75 c -0.244446,0.2077403 -0.348617,0.4744829 -0.21875,0.71875 0.02408,0.017689 0.06344,0.048024 0.09375,0.0625 l 0.84375,0.40625 c 0.416128,0.1987479 0.85635,0.1831034 1.28125,0 L 15.90625,7.6875 c 0.04016,-0.017302 0.02892,-0.070608 0.0625,-0.09375 0.105745,-0.2298228 0.04353,-0.4911598 -0.1875,-0.6875 l -0.84375,-0.75 C 14.774532,6.0177551 14.560372,5.9374999 14.34375,5.9375 z M 12.9375,7.03125 c 0.163922,0.1945321 0.741552,0.3125 1.4375,0.3125 0.695947,0 1.242328,-0.1179681 1.40625,-0.3125 0.0402,0.040738 0.03125,0.080315 0.03125,0.125 0,0.2482482 -0.614466,0.4375 -1.4375,0.4375 -0.823035,0 -1.53125,-0.1892518 -1.53125,-0.4375 0,-0.044684 0.0535,-0.084261 0.09375,-0.125 z M 11.90625,9.75 l 1,0 0,2.21875 2.0625,-2.21875 1.34375,0 -1.875,1.9375 2,3.0625 -1.3125,0 -1.375,-2.34375 -0.84375,0.8125 0,1.53125 -1,0 0,-5 z M 17.5,14.46875 c 0.162289,-0.01918 0.336877,0 0.53125,0 1.554979,0 1.96875,1.007305 1.96875,2.46875 0,1.461448 -2.382519,2.90625 -3.9375,2.90625 -1.554987,0 -0.09375,-1.882305 -0.09375,-3.34375 0,-1.278766 0.395233,-1.897059 1.53125,-2.03125 z m -7.28125,0.1875 c 1.554979,0 2.0625,0.569804 2.0625,2.03125 C 12.28125,18.148948 13.742488,20 12.1875,20 10.632522,20 8.25,18.586448 8.25,17.125 c 0,-1.461448 0.4137708,-2.46875 1.96875,-2.46875 z m 2.71875,2.9375 c 0.359635,0.178311 0.750647,0.3125 1.15625,0.3125 0.396266,0 0.741853,-0.140246 1.09375,-0.3125 l -0.125,0.3125 c 0,0 -0.283685,1.114961 -0.375,1.5625 C 14.472343,19.49966 14.254496,19.5 14.03125,19.5 c -0.210904,0 -0.389759,-0.0038 -0.59375,-0.03125 l -0.25,-1 -0.25,-0.875 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(2.0604683,1034.7666)"
+ id="layer1-03" />
+ <g
+ transform="matrix(1.1271466,0,0,1.125,3.3156841,1032.1081)"
+ id="g21099">
+ <g
+ transform="matrix(1.1673496,0,0,1.1716247,-2.708065,-2.7459952)"
+ id="layer1-6-7">
+ <g
+ id="text4267-0"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.92423852,1.0819718)"
+ id="text4597-6"
+ style="font-size:5.17998075px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ <g
+ id="text21552"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server-redhat.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server-redhat.svg
new file mode 100644
index 00000000..ed3eb1b4
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server-redhat.svg
@@ -0,0 +1,171 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(-12.584746,-8.9492)"
+ id="g20917">
+ <path
+ d="m -28.059324,8.3898306 a 7.4110169,6.9915257 0 1 1 -14.822034,0 7.4110169,6.9915257 0 1 1 14.822034,0 z"
+ transform="matrix(1.4505432,0,0,1.5375757,75.036008,7.0491529)"
+ id="path20792"
+ style="fill:#ffffff;fill-rule:evenodd;stroke:none" />
+ <g
+ transform="translate(12.584746,-1021.413)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <path
+ d="M 10.969188,1030.3622 C 4.9136432,1030.3622 0,1035.3104 0,1041.393 c 0,6.0826 4.9136432,10.9692 10.969188,10.9692 6.055546,0 11.030812,-4.8866 11.030812,-10.9692 0,-6.0826 -4.975266,-11.0308 -11.030812,-11.0308 z m -0.9859939,1.9104 0.6778709,0.1848 0.80112,0.1849 0.677871,-0.1232 0.369748,-0.062 0.492997,-0.1232 c 0,0 0.452617,-0.098 0.677871,-0.062 0.220718,0.036 0.468508,-0.017 0.677872,0.062 0.289145,0.1088 0.558051,0.3017 0.801121,0.493 0.416836,0.3279 0.801119,1.3557 0.801119,1.3557 l 0.431373,1.1709 0.492998,1.4174 0.123255,1.0476 -0.123255,1.2941 0.924369,-0.8011 c 0.716625,0.1757 1.56133,0.6173 2.403362,1.1708 0,0 0.153262,0.9601 0.123255,1.4174 -0.0258,0.3974 -0.103248,0.83 -0.308123,1.1709 -0.357561,0.595 -0.958541,0.98 -1.540622,1.3557 -0.461505,0.298 -0.946165,0.5467 -1.478991,0.6779 -0.816987,0.2011 -1.685554,0.1364 -2.526611,0.1232 -0.797345,-0.013 -1.558418,-0.035 -2.341738,-0.1848 -0.931226,-0.1785 -1.893488,-0.446 -2.7731089,-0.8011 -1.0173701,-0.4108 -2.8963591,-1.6023 -2.8963591,-1.6023 0,0 -1.6467708,-0.9492 -2.4649858,-1.7255 -0.326758,-0.3099 -1.0476191,-1.4173 -1.0476191,-1.4173 0,0 -0.191906,-1.0387 0.06163,-1.2325 0,0 0.8189251,-0.6177 1.1708691,-0.6779 0.851432,-0.1456 1.6989707,-0.183 2.6498598,-0.3081 l 0,0.062 0.492997,0.493 1.355742,0.9244 1.971989,0.7395 0.985995,0.4313 c 0,0 0.747868,0.062 0.985995,0.062 0.238139,0 0.06163,-0.493 0.06163,-0.493 l -0.369748,-0.3698 -0.123255,-0.3081 -0.184875,-0.493 -0.308122,-0.3697 -2.0336139,-0.6779 -1.6638661,-0.6163 -0.862745,-0.6778 0.184874,-0.8628 0.369747,-0.8011 0.308124,-0.493 0.492998,-0.3081 0.6778711,-0.1849 z m 3.2044809,0.5546 -0.184874,0.3081 0.554623,0.1849 0.431372,0.1232 -0.431372,0.6779 1.294117,-0.3081 0.123255,-0.6163 -0.677871,-0.2465 z m -4.37535,0.8627 -0.308123,0.9244 0.6778711,0.6779 0.369747,-0.1233 0.9243699,-0.1849 1.04762,-0.3081 0.123255,-0.3697 -0.801121,-0.1849 -1.1708689,0.1849 z m -3.6974788,8.0729 0.3697467,0 0.554623,0.3081 0.8011211,0.8627 1.109242,0.1233 1.4173681,1.7255 6.1624649,0.1232 -0.492997,2.2801 -1.047619,1.3558 -0.616246,0.5546 -0.06163,-0.062 0.06163,0.493 0.677871,-0.1233 2.341736,-1.7255 0,-0.493 2.464986,0 0.985995,0.2465 c -1.97608,2.8158 -5.252473,4.6219 -8.87395,4.6219 -4.644986,0 -8.5970639,-2.9107 -10.10644297,-7.1485 l 0.43137197,-0.1232 0.1848741,-0.7395 0.184875,-0.1233 2.1568621,0.1233 1.478991,0.986 0.5546227,-0.1233 -0.06163,-0.6162 -0.8011197,-0.7395 -0.308124,-0.493 -0.06163,-0.6163 0.184874,-0.3081 z m 6.2240888,4.4986 c -0.229344,0.049 0.02413,0.2014 -0.184874,0.3081 -0.408563,0.2084 0.492626,0.6162 0.492998,0.6162 0,0 0.488858,0.2603 0.739496,0.2465 0.22697,-0.013 0.616246,-0.2465 0.616246,-0.2465 0.380871,-0.3697 0.192231,-0.8877 0,-0.7395 l -0.492997,0.3082 -0.492998,0 c 0,0 -0.423232,-0.5477 -0.677871,-0.493 z"
+ id="rect4165-0"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server-solaris.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server-solaris.svg
new file mode 100644
index 00000000..ba66a1fa
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server-solaris.svg
@@ -0,0 +1,173 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g21227">
+ <path
+ d="m 2.891918,1.491522 17.095696,0 L 22,3.9486931 22,18.424603 17.466586,22 2.92118,22 0.660128,18.7386 0.577598,4.0073371 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z m 6.5625,2 0.875,6.09375 C 10.809462,8.0188293 10.520236,8 10.21875,8 9.9172641,8 9.6592883,8.0188293 9.375,8.09375 L 10.21875,2 z M 4.46875,5.03125 8.4375,8.5 C 7.9164702,8.8044399 7.4813167,9.25209 7.09375,9.78125 l -2.625,-4.75 z m 11.5625,0 -2.625,4.75 C 13.018683,9.25209 12.58353,8.8044399 12.0625,8.5 L 16.03125,5.03125 z M 2,10.5 6.40625,10.90625 c -0.2434371,0.572375 -0.4237155,1.234871 -0.5,1.90625 L 2,10.5 z m 16.5,0 -3.9375,2.3125 c -0.07629,-0.671379 -0.256563,-1.333875 -0.5,-1.90625 L 18.5,10.5 z m -5.0625,3.46875 c 2.439137,0 4.704766,0.18957 6.5625,0.53125 -1.259076,-0.141526 -2.609436,-0.21875 -4.0625,-0.21875 -5.812255,0 -10.5625,1.267877 -10.5625,2.8125 0,1.544623 4.750245,2.78125 10.5625,2.78125 0.181582,0 0.320675,0.0025 0.5,0 C 15.482277,19.9429 14.474384,20 13.4375,20 7.1112365,20 2,18.63219 2,16.96875 c 0,-1.66344 5.1112365,-3 11.4375,-3 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="matrix(1.1294118,0,0,1.4545455,1.6470588,1031.8705)"
+ id="g13337" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server-suse.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server-suse.svg
new file mode 100644
index 00000000..773a6e91
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server-suse.svg
@@ -0,0 +1,185 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g21554">
+ <path
+ d="m 2.8919176,1.491522 17.0956964,0 L 22,3.948693 22,18.424603 17.466586,22 2.9211796,22 0.66012769,18.7386 0.57759769,4.007337 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z M 11,3 12.9375,3.1875 14.5,3.46875 l 0.90625,0.375 -0.125,-0.65625 1.53125,0.1875 c 0.84062,0.091207 1.541072,0.4077877 2.28125,0.78125 C 19.673863,4.6707347 19.770782,5.405373 20,6.125 L 19.75,6.40625 C 19.206372,6.802118 18.743569,6.7033694 18.125,6.75 17.593155,6.7316291 17.25524,6.4361002 16.8125,6.21875 L 16.09375,5.8125 15.78125,5.90625 15.875,6.125 c 0.31713,0.5352617 0.781871,0.6036045 1.34375,0.8125 0.846414,0.4541505 1.333067,0.2895235 2.09375,0.0625 0.307841,-0.1194533 0.300361,-0.2463705 0.34375,-0.375 0.384525,0.1907168 0.136567,0.608701 0.03125,0.65625 -1.304211,1.0446896 -3.1445,0.7826832 -4.5625,0.6875 l -0.46875,0.125 c -0.442747,0.7727209 -0.164426,1.1511071 0,1.90625 l 0.40625,0.5625 -0.125,0.09375 L 14.15625,10.1875 13.25,9.71875 12.4375,8.78125 12.09375,8.4375 C 11.592741,8.0990136 11.169114,8.2629384 10.65625,8.25 l -0.5,0.1875 c -0.6867493,0.5387554 -0.46875,1.1514966 -0.46875,2 l -0.5,-0.25 L 8.5625,9.8125 8.3125,9.28125 7.96875,8.5625 7.4375,7.875 C 6.6316199,7.3232661 5.9911594,7.3702068 5.0625,7.40625 4.3033909,7.48022 4.1066703,7.7755924 3.65625,8.34375 L 3.5,9.0625 3.5625,9.84375 c 0.4915494,1.220874 1.0719247,1.473448 2.25,1.34375 C 7.3202326,10.58867 6.8371609,9.6563359 6.28125,9.09375 5.8973641,8.7384348 5.4225686,8.9203671 5.25,9 4.3233933,9.4509084 5.2288824,10.033522 5.375,9.75 l 0.4375,-0.15625 0.125,0.125 0.09375,0.34375 -0.125,0.46875 L 5.0625,10.4375 C 4.7230257,10.350672 4.6551416,10.400863 4.3125,9.90625 4.0648963,8.9143931 4.5466643,8.2936741 5.28125,8.09375 6.1377752,7.9625233 6.5747985,8.142549 7.09375,8.65625 8.7017585,11.212557 6.1790539,12.317228 4.8125,12.21875 1.9926901,11.2065 1.7109477,9.2150672 2.9375,7.09375 l 1.21875,-1.5 C 5.2170636,4.6536657 6.476977,4.161376 7.75,3.59375 8.8194488,3.071527 9.8455581,3.037579 11,3 z m 7.0625,1.125 C 17.475479,4.125 17,4.5951287 17,5.1875 17,5.7798713 17.475479,6.25 18.0625,6.25 c 0.587021,0 1.0625,-0.4701287 1.0625,-1.0625 0,-0.5923713 -0.475479,-1.0625 -1.0625,-1.0625 z m 0,0.375 c 0.385756,0 0.71875,0.2982274 0.71875,0.6875 0,0.3892726 -0.332994,0.71875 -0.71875,0.71875 -0.385756,0 -0.6875,-0.3294774 -0.6875,-0.71875 0,-0.3892726 0.301744,-0.6875 0.6875,-0.6875 z m 0.0625,0.1875 c -0.178684,0 -0.3125,0.1634371 -0.3125,0.34375 0,0.1803129 0.133816,0.3125 0.3125,0.3125 0.178684,0 0.3125,-0.1321871 0.3125,-0.3125 0,-0.1803129 -0.133816,-0.34375 -0.3125,-0.34375 z m -14.15625,8.75 c 0.6179752,6e-6 1.0938992,0.173627 1.40625,0.46875 0.3123436,0.295133 0.4843225,0.663561 0.5,1.15625 L 4.84375,15.125 c -0.042544,-0.275609 -0.1100624,-0.473011 -0.25,-0.59375 -0.1399432,-0.120723 -0.345121,-0.187495 -0.625,-0.1875 -0.2888393,5e-6 -0.555301,0.05825 -0.71875,0.1875 -0.105237,0.08293 -0.1250014,0.173478 -0.125,0.3125 -1.4e-6,0.126836 0.026479,0.284759 0.125,0.375 0.1253851,0.114637 0.4538632,0.21936 0.9375,0.34375 0.483632,0.124396 0.8620051,0.242073 1.09375,0.375 0.2317379,0.132932 0.4002615,0.30076 0.53125,0.53125 0.1309804,0.230495 0.1874957,0.535971 0.1875,0.875 -4.3e-6,0.307324 -0.093272,0.575453 -0.25,0.84375 C 5.5932625,18.455799 5.3803448,18.650759 5.09375,18.78125 4.8071485,18.911736 4.4589059,19 4.03125,19 3.4087923,19 2.9273674,18.844672 2.59375,18.53125 2.260131,18.217833 2.0649322,17.756264 2,17.15625 L 2.9375,17.0625 c 0.058215,0.353667 0.1969941,0.615395 0.375,0.78125 0.1780028,0.165858 0.4164761,0.218751 0.71875,0.21875 0.3201815,1e-6 0.556416,-0.03993 0.71875,-0.1875 C 4.9123281,17.727437 4.9999967,17.541316 5,17.34375 4.9999966,17.21692 4.9432875,17.089027 4.875,17 4.8067062,16.91097 4.7014148,16.878356 4.53125,16.8125 4.4148167,16.7686 4.164222,16.674697 3.75,16.5625 3.2171046,16.418598 2.8399477,16.241013 2.625,16.03125 2.3227276,15.736126 2.1874996,15.393153 2.1875,14.96875 2.1874996,14.695578 2.2328198,14.425313 2.375,14.1875 2.5171789,13.949694 2.7324325,13.780648 3,13.65625 3.2675649,13.53186 3.5903487,13.437506 3.96875,13.4375 z m 8.78125,0 c 0.617975,6e-6 1.093898,0.173627 1.40625,0.46875 0.312344,0.295133 0.484322,0.663561 0.5,1.15625 L 13.6875,15.125 c -0.04255,-0.275615 -0.172562,-0.473011 -0.3125,-0.59375 -0.139943,-0.120734 -0.345121,-0.187494 -0.625,-0.1875 -0.28884,6e-6 -0.492802,0.05824 -0.65625,0.1875 -0.105237,0.08293 -0.187502,0.173478 -0.1875,0.3125 -2e-6,0.126836 0.05773,0.284759 0.15625,0.375 0.125386,0.114637 0.422613,0.21936 0.90625,0.34375 0.483631,0.124396 0.862006,0.242073 1.09375,0.375 0.231738,0.132932 0.400263,0.30076 0.53125,0.53125 0.130984,0.230495 0.218745,0.535971 0.21875,0.875 -5e-6,0.307324 -0.09328,0.575453 -0.25,0.84375 -0.156737,0.268299 -0.400906,0.463259 -0.6875,0.59375 C 13.588397,18.911736 13.240156,19 12.8125,19 c -0.622457,0 -1.103882,-0.155328 -1.4375,-0.46875 -0.333619,-0.313416 -0.528818,-0.774986 -0.59375,-1.375 l 1,-0.09375 c 0.05821,0.353667 0.165744,0.615395 0.34375,0.78125 0.178002,0.165861 0.385226,0.218751 0.6875,0.21875 0.320182,1e-6 0.587668,-0.03993 0.75,-0.1875 0.162326,-0.147563 0.249998,-0.333684 0.25,-0.53125 0,-0.12683 -0.02546,-0.254723 -0.09375,-0.34375 -0.06829,-0.08903 -0.204835,-0.121644 -0.375,-0.1875 -0.116437,-0.04391 -0.367028,-0.137803 -0.78125,-0.25 -0.532895,-0.143902 -0.910052,-0.321487 -1.125,-0.53125 -0.302272,-0.295124 -0.46875,-0.638097 -0.46875,-1.0625 0,-0.273172 0.07657,-0.543437 0.21875,-0.78125 0.142179,-0.237806 0.357433,-0.406852 0.625,-0.53125 0.267564,-0.12439 0.559099,-0.218744 0.9375,-0.21875 z M 17.6875,13.5 c 0.67108,6e-6 1.174571,0.250774 1.5625,0.75 0.387923,0.499235 0.579487,1.282143 0.5625,2.3125 l -2.96875,0 c -0.0179,0.731478 0.223669,1.072309 0.6875,1.21875 0.271859,0.05537 1.171439,0.0053 1.28125,0.125 0.185015,0.201671 0.139334,0.620749 -0.03125,0.78125 -0.117943,0.110971 -1.162615,0.03225 -1.34375,0.09375 -0.748041,-0.13843 -0.99366,-0.40359 -1.40625,-0.84375 -0.297316,-0.462545 -0.4375,-1.045013 -0.4375,-1.75 0,-0.842149 0.171741,-1.491845 0.5625,-1.96875 0.390756,-0.476896 0.933785,-0.718744 1.53125,-0.71875 z m 0.0625,1.03125 c -0.260507,5e-6 -0.486358,0.09878 -0.65625,0.3125 -0.169898,0.213732 -0.252813,0.476906 -0.25,0.84375 l 1.78125,0 C 18.6165,15.298327 18.513637,15.015067 18.34375,14.8125 18.173852,14.609936 17.993513,14.531255 17.75,14.53125 z m -10.9375,0.5 0.9375,0 0,1.78125 c -1.3e-6,0.546354 0.027793,0.845577 0.0625,0.96875 0.034705,0.123173 0.095696,0.271798 0.1875,0.34375 0.0918,0.07195 0.1714378,0.09375 0.3125,0.09375 0.1612094,1e-6 0.3411218,-0.09114 0.46875,-0.1875 0.1276233,-0.09634 0.2029772,-0.201064 0.25,-0.34375 0.047018,-0.142685 0.062499,-0.475139 0.0625,-1.03125 l 0,-1.625 0.96875,0 0,3.875 -0.875,0 0,-0.59375 c -0.1298676,0.207321 -0.2884123,0.380486 -0.5,0.5 C 8.4759076,18.932015 8.2350983,18.999999 8,19 7.7604202,18.999999 7.5340682,18.927135 7.34375,18.8125 7.1534299,18.697864 7.0225826,18.519821 6.9375,18.3125 6.8524151,18.10518 6.8124994,17.834612 6.8125,17.46875 l 0,-2.4375 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="matrix(1.125,0,0,1.135255,1.9296875,1032.3334)"
+ id="layer1-1">
+ <g
+ id="text4018-2"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.93786046,1.0662567)"
+ id="text4055-9"
+ style="font-size:8.69168949px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="matrix(0.96586816,0,0,1.0782902,-3.4929079,0.85654197)"
+ id="text4149"
+ style="font-size:8.00532722px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server-windows.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server-windows.svg
new file mode 100644
index 00000000..967d48e2
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server-windows.svg
@@ -0,0 +1,176 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g21912">
+ <g
+ id="g21872">
+ <path
+ d="m 2.6031189,0.745761 17.0956961,0 2.012386,2.457171 0,14.47591 -4.533414,3.575397 -14.5454061,0 -2.2610519,-3.2614 -0.08253,-14.731263 z"
+ id="rect3155"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z M 8.875,2.75 c 1.560853,0.012427 2.764292,0.4680522 3.78125,1.15625 L 10.75,10.0625 C 8.6272174,8.589396 6.1542079,8.9408002 3.6875,9.53125 l 2,-6.28125 C 6.8791434,2.8860874 7.9384883,2.7425441 8.875,2.75 z m 4.6875,1.6875 c 2.122783,1.473104 4.564542,1.1216998 7.03125,0.53125 L 18.625,11.25 c -3.177714,0.970434 -5.372867,0.444866 -7,-0.65625 L 13.5625,4.4375 z m -7,5.84375 c 1.5608528,0.01243 2.7955421,0.499302 3.8125,1.1875 l -1.90625,6.125 C 6.3459674,16.120645 3.8729579,16.47205 1.40625,17.0625 l 1.96875,-6.25 c 1.1916434,-0.363913 2.2509883,-0.538706 3.1875,-0.53125 z m 4.84375,1.65625 c 2.122783,1.473104 4.595792,1.09045 7.0625,0.5 l -2,6.3125 C 13.291036,19.720434 11.127133,19.163617 9.5,18.0625 l 1.90625,-6.125 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="matrix(1.2113313,0,0,1.2113313,1.3282767,1032.2157)"
+ id="layer1-03" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server-zxve.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server-zxve.svg
new file mode 100644
index 00000000..be1011b3
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server-zxve.svg
@@ -0,0 +1,179 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0.04296875,1030.3193)"
+ id="g21070"
+ style="fill:#649be6;fill-opacity:1">
+ <path
+ d="m 2.6875,0.03125 c -1.4831511,0 -2.71875,1.2043489 -2.71875,2.6875 l 0,10.59375 c 0,1.483151 1.2355989,2.71875 2.71875,2.71875 l 10.59375,0 c 1.483151,0 2.6875,-1.235599 2.6875,-2.71875 l 0,-10.59375 c 0,-1.4831511 -1.204349,-2.6875 -2.6875,-2.6875 l -10.59375,0 z m 0,1 10.59375,0 c 0.947749,0 1.6875,0.7397512 1.6875,1.6875 l 0,10.59375 c 0,0.947749 -0.739751,1.71875 -1.6875,1.71875 l -10.59375,0 c -0.9477488,0 -1.71875,-0.771001 -1.71875,-1.71875 l 0,-10.59375 c 0,-0.9477488 0.7710012,-1.6875 1.71875,-1.6875 z M 10.125,2 C 9.0984052,2 8.28125,2.9258204 8.28125,4.09375 c 0,0.5539775 0.1990524,1.0608076 0.5,1.4375 -0.1067143,0.1495416 -0.2099923,0.2831585 -0.3125,0.4375 -0.2849597,0.4290475 -0.5402428,0.9461181 -0.75,1.09375 -1.0261422,0.7222231 -1.5,1.5828234 -1.5,3.03125 0,0.203461 0.036533,0.398109 0.0625,0.59375 0.286521,-0.140241 0.6478185,-0.21875 1.03125,-0.21875 0.049666,0 0.076401,-0.0027 0.125,0 C 7.3922211,10.243377 7.375,10.040605 7.375,9.8125 7.3903745,8.2363492 8.0562494,7.2669062 8.78125,6.25 8.8137888,6.2071902 8.8372844,6.1231148 8.875,6.0625 8.905125,6.114382 8.965025,6.155937 9.03125,6.1875 L 9.625,6.46875 c 0.2902889,0.1383261 0.609842,0.1274376 0.90625,0 L 11.1875,6.1875 c 0.01032,-0.00444 0.0217,0.00512 0.03125,0 0.519341,1.1188128 1.202683,2.3718018 1.21875,3.40625 0,0.2912703 -0.04404,0.573524 -0.09375,0.84375 0.160415,-0.03088 0.355067,-0.03125 0.53125,-0.03125 0.232198,0 0.453443,0.01012 0.65625,0.0625 0.01005,-0.122883 0.03125,-0.249284 0.03125,-0.375 0,-1.2213376 -0.32668,-2.1284175 -1.09375,-2.875 -0.313885,-0.3055012 -0.704591,-0.9707635 -1.125,-1.5625 0.385633,-0.3870267 0.625,-0.93256 0.625,-1.5625 C 11.96875,2.9258204 11.151594,2 10.125,2 z m -3.28125,0.03125 -5.125,5.375 2.34375,0.375 L 1.5,12.34375 6.40625,7.125 4.6875,6.09375 6.84375,2.03125 z M 9.375,3.71875 c 0.3109696,0 0.53125,0.2639826 0.53125,0.625 C 9.90625,4.393563 9.883417,4.4532212 9.875,4.5 9.818138,4.50743 9.777993,4.534501 9.71875,4.5625 c 0,-0.2714135 -0.1767806,-0.5 -0.375,-0.5 C 9.1455306,4.0625 9,4.2910865 9,4.5625 9,4.7267051 9.0658941,4.8795078 9.15625,4.96875 8.9511732,4.8631686 8.8125,4.614513 8.8125,4.34375 c 0,-0.3610174 0.2515295,-0.625 0.5625,-0.625 z m 1.5,0.03125 c 0.31097,0 0.5625,0.2639826 0.5625,0.625 0,0.2707631 -0.138674,0.5194186 -0.34375,0.625 0.07224,-0.089897 0.09375,-0.2308116 0.09375,-0.375 0,-0.2714135 -0.145531,-0.5 -0.34375,-0.5 -0.198219,0 -0.375,0.2285865 -0.375,0.5 0,0.029709 -0.0037,0.066378 0,0.09375 -0.0377,-0.026637 -0.08721,-0.072163 -0.125,-0.09375 -0.03116,-0.08339 -0.0625,-0.155514 -0.0625,-0.25 0,-0.3610174 0.28278,-0.625 0.59375,-0.625 z m -0.78125,1 c 0.151115,-1e-7 0.323815,0.05986 0.4375,0.15625 l 0.5625,0.5 c 0.161168,0.1366504 0.230017,0.3400461 0.15625,0.5 -0.02342,0.016106 -0.03449,0.019208 -0.0625,0.03125 L 10.53125,6.25 C 10.234842,6.3774377 9.9152889,6.3883262 9.625,6.25 L 9.03125,5.9375 C 9.010102,5.927425 8.985547,5.949811 8.96875,5.9375 8.8781555,5.767493 8.9544758,5.5508347 9.125,5.40625 l 0.5625,-0.5 C 9.8011837,4.8098603 9.9426352,4.7500001 10.09375,4.75 z M 9.125,5.5 C 9.096922,5.528354 9.0625,5.56265 9.0625,5.59375 c 0,0.1727778 0.4883547,0.3125 1.0625,0.3125 0.574144,0 1,-0.1397222 1,-0.3125 C 11.125,5.562649 11.1218,5.528353 11.09375,5.5 10.979399,5.6353919 10.61049,5.71875 10.125,5.71875 9.6395097,5.71875 9.239351,5.635392 9.125,5.5 z m 3.1875,5.1875 c -0.792481,0.0934 -1.0625,0.516244 -1.0625,1.40625 0,1.017149 -1.053502,2.3125 0.03125,2.3125 1.084747,0 2.78125,-0.98285 2.78125,-2 0,-1.017149 -0.321504,-1.71875 -1.40625,-1.71875 -0.135593,0 -0.230538,-0.01335 -0.34375,0 z m -5.09375,0.125 c -1.084746,0 -1.375,0.7016 -1.375,1.71875 0,1.01715 1.6652547,2 2.75,2 1.0847524,0 0.0625,-1.29535 0.0625,-2.3125 0,-1.017149 -0.352754,-1.40625 -1.4375,-1.40625 z m 1.90625,2.0625 0.15625,0.59375 0.1875,0.6875 c 0.1423032,0.01911 0.2591243,0.03125 0.40625,0.03125 0.155735,0 0.318658,-0.0097 0.46875,-0.03125 0.0637,-0.311483 0.25,-1.09375 0.25,-1.09375 L 10.6875,12.875 c -0.245482,0.119887 -0.504816,0.1875 -0.78125,0.1875 -0.2829477,0 -0.5303702,-0.0634 -0.78125,-0.1875 z"
+ id="rect4701"
+ style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#649be6;fill-opacity:1;stroke:none;stroke-width:0.99757689;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
+ <g
+ transform="matrix(0.91787765,0,0,0.91736642,-0.6374356,-0.15374916)"
+ id="layer1-0"
+ style="fill:#649be6;fill-opacity:1">
+ <g
+ id="text4267"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.92423852,1.0819718)"
+ id="text4597"
+ style="font-size:5.17998075px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server.svg
new file mode 100644
index 00000000..314edb3b
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-server.svg
@@ -0,0 +1,195 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3750001,0,0,1.375,2.4666128e-8,1030.3622)"
+ id="g20034"
+ style="fill:#649be6;fill-opacity:1">
+ <g
+ transform="matrix(-0.82693708,0,0,1,8.969311,-5.6078e-4)"
+ id="layer1-5"
+ style="fill:#649be6;fill-opacity:1">
+ <path
+ d="M 0.8125,0 C 0.37159462,0 0,0.43557111 0,0.96875 l 0,14.0625 C 0,15.564429 0.37159462,16 0.8125,16 L 4.46875,16 4.5,16 9,16 c 0.4409055,0 0.78125,-0.435571 0.78125,-0.96875 l 0,-4.65625 0,-0.8125 0,-8.59375 C 9.78125,0.43557111 9.4721555,0 9.03125,0 L 0.8125,0 z m 9.71875,0.09375 c 0.296864,0.15740697 0.5,0.49280982 0.5,0.875 l 0,8.59375 0,0.8125 0,4.65625 c 0,0.314576 -0.153955,0.57279 -0.375,0.75 L 14.75,14.5625 C 15.409952,14.366037 16,14.078578 16,13.46875 L 16,2.4375 C 16,1.8276721 15.409912,1.540316 14.75,1.34375 l -4.21875,-1.25 z M 1.875,2.1875 l 6.0625,0 c 0.2970226,0 0.53125,0.2970662 0.53125,0.65625 l 0,3.28125 c 0,0.3591838 -0.2342274,0.625 -0.53125,0.625 l -6.0625,0 C 1.5779777,6.75 1.3125,6.4841838 1.3125,6.125 l 0,-3.28125 C 1.3125,2.4845662 1.5779777,2.1875 1.875,2.1875 z m 0.25,0.9375 c -0.133115,0 -0.25,0.1993258 -0.25,0.46875 0,0.2694242 0.116885,0.5 0.25,0.5 l 5.5625,0 c 0.1331154,0 0.21875,-0.2305758 0.21875,-0.5 C 7.90625,3.3243258 7.8206154,3.125 7.6875,3.125 l -5.5625,0 z m 0,1.75 c -0.133115,0 -0.25,0.1993258 -0.25,0.46875 0,0.2694242 0.116885,0.5 0.25,0.5 l 5.5625,0 c 0.1331154,0 0.21875,-0.2305758 0.21875,-0.5 C 7.90625,5.0743258 7.8206154,4.875 7.6875,4.875 l -5.5625,0 z M 4.90625,10.5 c 0.5522847,0 1,0.447715 1,1 0,0.552285 -0.4477153,1 -1,1 -0.5522847,0 -1,-0.447715 -1,-1 0,-0.552285 0.4477153,-1 1,-1 z"
+ transform="matrix(-1.2092818,0,0,1,10.846425,5.6078e-4)"
+ id="rect4165"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ <g
+ transform="scale(0.95964169,1.0420556)"
+ id="text4237"
+ style="font-size:5.75785017px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(4.909344,-0.31306078)"
+ id="layer1-8-4"
+ style="fill:#649be6;fill-opacity:1">
+ <g
+ transform="scale(0.95964169,1.0420556)"
+ id="text4237-8"
+ style="font-size:5.75785017px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(-0.82693708,0,0,1,10.828757,-0.00430943)"
+ id="layer1-0"
+ style="fill:#649be6;fill-opacity:1">
+ <g
+ transform="scale(0.95964169,1.0420556)"
+ id="text4237-81"
+ style="font-size:5.75785017px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-storage-cisco-mds.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-storage-cisco-mds.svg
new file mode 100644
index 00000000..b7fee602
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-storage-cisco-mds.svg
@@ -0,0 +1,177 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(2.0604683,1034.7666)"
+ id="layer1-03" />
+ <g
+ id="text21552"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,1030.3622)"
+ id="g21668"
+ style="fill:#649be6;fill-opacity:1">
+ <path
+ d="M 2.40625,0 C 1.0774955,0 0,1.0774955 0,2.40625 l 0,11.1875 C 0,14.922504 1.0774955,16 2.40625,16 l 11.1875,0 C 14.922504,16 16,14.922504 16,13.59375 L 16,2.40625 C 16,1.0774955 14.922504,0 13.59375,0 L 2.40625,0 z m 0.375,1.90625 10.5,0 c 0.417915,0 0.75,0.446 0.75,1 0,0.554 -0.332085,1 -0.75,1 l -10.5,0 c -0.4179148,0 -0.75,-0.446 -0.75,-1 0,-0.554 0.3320852,-1 0.75,-1 z M 2.75,5.375 l 10.5,0 c 0.417915,0 0.75,0.446 0.75,1 0,0.554 -0.332085,1 -0.75,1 l -10.5,0 C 2.3320852,7.375 2,6.929 2,6.375 c 0,-0.554 0.3320852,-1 0.75,-1 z M 5,9.15625 c 0.6129524,5.1e-6 1.1171837,0.1689503 1.5,0.53125 0.2278602,0.2141971 0.3860632,0.536462 0.5,0.9375 l -1,0.25 C 5.9407516,10.615238 5.8129847,10.400395 5.625,10.25 5.4370086,10.099614 5.2063773,10.031254 4.9375,10.03125 c -0.3714215,4e-6 -0.6749694,0.139652 -0.90625,0.40625 -0.231284,0.266605 -0.3437514,0.684248 -0.34375,1.28125 -1.4e-6,0.633465 0.115884,1.074871 0.34375,1.34375 0.2278627,0.268881 0.5416644,0.406251 0.90625,0.40625 0.2688774,10e-7 0.493812,-0.0791 0.6875,-0.25 0.1936814,-0.170897 0.3219364,-0.445637 0.40625,-0.8125 l 1,0.3125 c -0.1503952,0.546876 -0.4002322,0.953288 -0.75,1.21875 -0.3497758,0.265462 -0.8059927,0.40625 -1.34375,0.40625 -0.6653665,0 -1.196616,-0.23291 -1.625,-0.6875 -0.4283859,-0.454589 -0.6562503,-1.086587 -0.65625,-1.875 -3e-7,-0.833981 0.2255854,-1.47607 0.65625,-1.9375 C 3.7431626,9.3823291 4.2981751,9.1562551 5,9.15625 z m 6.3125,0 c 0.612952,5.1e-6 1.117184,0.1689503 1.5,0.53125 0.22786,0.2141971 0.417314,0.536462 0.53125,0.9375 l -1,0.25 c -0.05925,-0.259762 -0.187015,-0.474605 -0.375,-0.625 -0.187991,-0.150386 -0.418622,-0.218746 -0.6875,-0.21875 -0.371421,4e-6 -0.674969,0.139652 -0.90625,0.40625 -0.231284,0.266605 -0.343751,0.684248 -0.34375,1.28125 -10e-7,0.633465 0.115884,1.074871 0.34375,1.34375 0.227863,0.268881 0.510415,0.406251 0.875,0.40625 0.268878,10e-7 0.493812,-0.0791 0.6875,-0.25 0.193682,-0.170897 0.353187,-0.445637 0.4375,-0.8125 l 0.96875,0.3125 c -0.150395,0.546876 -0.400232,0.953288 -0.75,1.21875 -0.349776,0.265462 -0.805992,0.40625 -1.34375,0.40625 -0.665366,0 -1.196616,-0.23291 -1.625,-0.6875 -0.428386,-0.454589 -0.6562503,-1.086587 -0.65625,-1.875 -3e-7,-0.833981 0.2255854,-1.47607 0.65625,-1.9375 0.430662,-0.4614209 0.985675,-0.6874949 1.6875,-0.6875 z"
+ id="rect7693-27"
+ style="fill:#649be6;fill-opacity:1;fill-rule:evenodd;stroke:none" />
+ <g
+ transform="translate(-0.29442775,0)"
+ id="text7920"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-storage-md3000.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-storage-md3000.svg
new file mode 100644
index 00000000..8b345f61
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-storage-md3000.svg
@@ -0,0 +1,168 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(2.0604683,1034.7666)"
+ id="layer1-03" />
+ <g
+ id="text21552"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <path
+ d="M 3.3085936,1030.3622 C 1.481557,1030.3622 0,1031.8438 0,1033.6709 l 0,15.3828 c 0,1.8269 1.481557,3.3085 3.3085936,3.3085 l 15.3828124,0 c 1.827037,0 3.308594,-1.4816 3.308594,-3.3085 l 0,-15.3828 c 0,-1.8271 -1.481557,-3.3087 -3.308594,-3.3087 l -15.3828124,0 z m 0.515625,2.6212 14.4375004,0 c 0.574633,0 1.03125,0.6132 1.03125,1.375 0,0.7617 -0.456617,1.375 -1.03125,1.375 l -14.4375004,0 c -0.5746316,0 -1.03125,-0.6133 -1.03125,-1.375 0,-0.7618 0.4566184,-1.375 1.03125,-1.375 z m -0.042969,4.7694 14.4375004,0 c 0.574633,0 1.03125,0.6133 1.03125,1.375 0,0.7618 -0.456617,1.375 -1.03125,1.375 l -14.4375004,0 c -0.5746319,0 -1.03125,-0.6132 -1.03125,-1.375 0,-0.7617 0.4566181,-1.375 1.03125,-1.375 z m -2.1484375,5.4571 2.0195314,0 c 0.4595784,0 0.8331235,0.082 1.0742186,0.1719 0.3239639,0.121 0.5853569,0.2922 0.8164064,0.6016 0.2310424,0.3092 0.3950731,0.669 0.515625,1.1172 0.1205461,0.4479 0.1718708,1.0188 0.171875,1.6757 -5.5e-6,0.5772 -0.015895,1.0861 -0.1289064,1.5039 -0.1381296,0.5102 -0.3454068,0.9304 -0.6015625,1.2461 -0.19338,0.2391 -0.4444508,0.3817 -0.7734375,0.5156 -0.2461182,0.099 -0.5764178,0.2149 -0.9882811,0.2149 l -2.1054689,0 0,-7.0469 z m 6.015625,0 3.2656259,0 0,1.2032 -1.8906259,0 0,1.5468 1.6328129,0 0,1.1601 -1.6328129,0 0,1.9337 2.0195319,0 0,1.2031 -3.3945319,0 0,-7.0469 z m 4.5546879,0.085 1.375,0 0,5.7578 2.148437,0 0,1.2031 -3.523437,0 0,-6.9609 z m 4.597656,0.043 1.417969,0 0,5.7578 2.148437,0 0,1.2031 -3.566406,0 0,-6.9609 z M 2.75,1044.413 l 0,4.6407 0.8164061,0 c 0.3114087,0 0.5493717,-0.041 0.6875,-0.085 0.1808167,-0.058 0.3103941,-0.121 0.4296878,-0.2578 0.1192811,-0.1375 0.2254366,-0.3734 0.3007811,-0.6875 0.075336,-0.3142 0.1289064,-0.747 0.1289064,-1.289 -4.2e-6,-0.5422 -0.05357,-0.9561 -0.1289064,-1.2462 -0.07535,-0.2901 -0.1651705,-0.5249 -0.3007811,-0.6875 -0.1356164,-0.1627 -0.3071834,-0.2863 -0.5156253,-0.3438 -0.1557076,-0.044 -0.4907553,-0.043 -0.9453125,-0.043 l -0.4726561,0 z"
+ id="rect7693-9"
+ style="fill:#649be6;fill-opacity:1;fill-rule:evenodd;stroke:none" />
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-storage-netvault.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-storage-netvault.svg
new file mode 100644
index 00000000..1c99075d
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-storage-netvault.svg
@@ -0,0 +1,186 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(2.0604683,1034.7666)"
+ id="layer1-03" />
+ <g
+ id="text21552"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,1030.3622)"
+ id="g21736"
+ style="fill:#649be6;fill-opacity:1">
+ <path
+ d="M 2.40625,0 C 1.0774955,0 0,1.0774955 0,2.40625 l 0,11.1875 C 0,14.922504 1.0774955,16 2.40625,16 l 11.1875,0 C 14.922504,16 16,14.922504 16,13.59375 L 16,2.40625 C 16,1.0774955 14.922504,0 13.59375,0 L 2.40625,0 z m 0.375,1.90625 10.5,0 c 0.417915,0 0.75,0.446 0.75,1 0,0.554 -0.332085,1 -0.75,1 l -10.5,0 c -0.4179148,0 -0.75,-0.446 -0.75,-1 0,-0.554 0.3320852,-1 0.75,-1 z M 2.75,5.375 l 10.5,0 c 0.417915,0 0.75,0.446 0.75,1 0,0.554 -0.332085,1 -0.75,1 l -10.5,0 C 2.3320852,7.375 2,6.929 2,6.375 c 0,-0.554 0.3320852,-1 0.75,-1 z m -1.4375,3.84375 1,0 2.0625,3.34375 0,-3.34375 0.9375,0 0,5 -1.03125,0 -2,-3.25 0,3.25 -0.96875,0 0,-5 z m 4.5625,0 1.09375,0 1.25,3.6875 1.25,-3.6875 1.0625,0 -1.8125,5 -1.0625,0 -1.78125,-5 z m 4.8125,0 4,0 0,0.84375 -1.5,0 0,4.15625 -1,0 0,-4.15625 -1.5,0 0,-0.84375 z"
+ id="rect7693-8"
+ style="fill:#649be6;fill-opacity:1;fill-rule:evenodd;stroke:none" />
+ <text
+ x="20.861963"
+ y="12.026293"
+ id="text8055-1"
+ xml:space="preserve"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"><tspan
+ x="20.861963"
+ y="12.026293"
+ id="tspan8057-0"
+ style="fill:#649be6;fill-opacity:1" /></text>
+ <g
+ id="text8070"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-storage-ops.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-storage-ops.svg
new file mode 100644
index 00000000..07f9642b
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-storage-ops.svg
@@ -0,0 +1,186 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(2.0604683,1034.7666)"
+ id="layer1-03" />
+ <g
+ id="text21552"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,1030.3622)"
+ id="g21775"
+ style="fill:#649be6;fill-opacity:1">
+ <path
+ d="M 2.40625,0 C 1.0774955,0 0,1.0774955 0,2.40625 l 0,11.1875 C 0,14.922504 1.0774955,16 2.40625,16 l 11.1875,0 C 14.922504,16 16,14.922504 16,13.59375 L 16,2.40625 C 16,1.0774955 14.922504,0 13.59375,0 L 2.40625,0 z m 0.375,1.90625 10.5,0 c 0.417915,0 0.75,0.446 0.75,1 0,0.554 -0.332085,1 -0.75,1 l -10.5,0 c -0.4179148,0 -0.75,-0.446 -0.75,-1 0,-0.554 0.3320852,-1 0.75,-1 z M 2.75,5.375 l 10.5,0 c 0.417915,0 0.75,0.446 0.75,1 0,0.554 -0.332085,1 -0.75,1 l -10.5,0 C 2.3320852,7.375 2,6.929 2,6.375 c 0,-0.554 0.3320852,-1 0.75,-1 z m 0.59375,3.65625 c 0.7382778,5.1e-6 1.3380493,0.2294971 1.78125,0.6875 0.4431917,0.458012 0.6562448,1.090498 0.65625,1.90625 -5.2e-6,0.808921 -0.2164763,1.449382 -0.65625,1.90625 -0.4397827,0.456868 -1.0140009,0.6875 -1.75,0.6875 -0.7451192,0 -1.3414727,-0.23291 -1.78125,-0.6875 C 1.1539708,13.076661 0.9374997,12.453777 0.9375,11.65625 0.9374997,11.145836 1.0035804,10.721358 1.15625,10.375 1.2701817,10.119796 1.4278963,9.8903038 1.625,9.6875 1.8221016,9.4847052 2.046548,9.3479865 2.28125,9.25 2.5934225,9.1178435 2.9358701,9.0312551 3.34375,9.03125 z m 9.65625,0 c 0.628904,5.1e-6 1.119626,0.1305388 1.4375,0.40625 0.317867,0.2757206 0.484045,0.664717 0.5,1.125 l -1.03125,0.03125 C 13.86295,10.336267 13.767413,10.144047 13.625,10.03125 13.482582,9.9184617 13.284829,9.8750043 13,9.875 c -0.293947,4.3e-6 -0.521161,0.066736 -0.6875,0.1875 -0.107098,0.07748 -0.156251,0.182621 -0.15625,0.3125 -10e-7,0.118493 0.02474,0.196943 0.125,0.28125 0.127602,0.107099 0.445311,0.227542 0.9375,0.34375 0.492185,0.116214 0.857907,0.250817 1.09375,0.375 0.235836,0.124189 0.429195,0.28467 0.5625,0.5 0.133297,0.215334 0.187496,0.49577 0.1875,0.8125 -4e-6,0.287111 -0.05925,0.5306 -0.21875,0.78125 -0.15951,0.250652 -0.395837,0.440593 -0.6875,0.5625 -0.29167,0.121907 -0.658532,0.1875 -1.09375,0.1875 -0.633466,0 -1.129233,-0.144694 -1.46875,-0.4375 C 11.254231,13.488445 11.06608,13.060548 11,12.5 l 0.96875,-0.09375 c 0.05924,0.330405 0.193847,0.563803 0.375,0.71875 0.181151,0.154949 0.41113,0.250001 0.71875,0.25 0.325843,10e-7 0.584795,-0.08089 0.75,-0.21875 0.165198,-0.137857 0.249996,-0.284178 0.25,-0.46875 -4e-6,-0.118488 -0.02425,-0.229328 -0.09375,-0.3125 -0.0695,-0.08317 -0.201826,-0.157224 -0.375,-0.21875 -0.118492,-0.04101 -0.390953,-0.11393 -0.8125,-0.21875 -0.542319,-0.134438 -0.937501,-0.304034 -1.15625,-0.5 -0.307618,-0.275713 -0.4375,-0.603512 -0.4375,-1 0,-0.255204 0.07406,-0.4965778 0.21875,-0.71875 0.144693,-0.2221633 0.352701,-0.3837843 0.625,-0.5 C 12.303547,9.1025441 12.614907,9.0312551 13,9.03125 z M 6.5625,9.125 l 1.625,0 c 0.6152316,5e-6 1.0318979,0.012375 1.21875,0.0625 0.2871057,0.0752 0.5250608,0.2482144 0.71875,0.5 0.19368,0.2517946 0.281246,0.569991 0.28125,0.96875 -4e-6,0.30762 -0.0446,0.571617 -0.15625,0.78125 -0.111657,0.209638 -0.2654661,0.380374 -0.4375,0.5 -0.1720413,0.119631 -0.322269,0.180015 -0.5,0.21875 C 9.0709606,12.2041 8.7080052,12.25 8.25,12.25 l -0.65625,0 0,1.875 -1.03125,0 0,-5 z M 3.375,9.90625 c -0.4169945,4.2e-6 -0.7760436,0.151534 -1.03125,0.4375 -0.2552098,0.285973 -0.3750013,0.704756 -0.375,1.28125 -1.3e-6,0.567385 0.1442043,0.988446 0.40625,1.28125 0.2620423,0.292807 0.5966773,0.437501 1,0.4375 0.4033172,10e-7 0.7101202,-0.146972 0.96875,-0.4375 C 4.6023723,12.615724 4.7499958,12.206057 4.75,11.625 4.7499958,11.050784 4.6267864,10.595056 4.375,10.3125 4.1232062,10.029952 3.791989,9.9062542 3.375,9.90625 z m 4.21875,0.0625 0,1.4375 0.5625,0 c 0.3987606,3e-6 0.6468071,-0.04134 0.78125,-0.09375 0.1344371,-0.05241 0.2361623,-0.138343 0.3125,-0.25 0.076331,-0.11165 0.1249966,-0.226885 0.125,-0.375 C 9.3749966,10.505209 9.325843,10.337243 9.21875,10.21875 9.1116506,10.100264 8.9765596,10.029626 8.8125,10 8.6917292,9.9772175 8.427081,9.9687541 8.0625,9.96875 l -0.46875,0 z"
+ id="rect7693-0"
+ style="fill:#649be6;fill-opacity:1;fill-rule:evenodd;stroke:none" />
+ <text
+ x="20.861963"
+ y="12.026293"
+ id="text8055-72"
+ xml:space="preserve"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"><tspan
+ x="20.861963"
+ y="12.026293"
+ id="tspan8057-2"
+ style="fill:#649be6;fill-opacity:1" /></text>
+ <g
+ id="text8095"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-storage-sanswitch-brocade.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-storage-sanswitch-brocade.svg
new file mode 100644
index 00000000..e3bb47d0
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-storage-sanswitch-brocade.svg
@@ -0,0 +1,187 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(2.0604683,1034.7666)"
+ id="layer1-03" />
+ <g
+ id="text21552"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,1030.3622)"
+ id="g21814"
+ style="fill:#649be6;fill-opacity:1">
+ <path
+ d="M 2.40625,0 C 1.0774955,0 0,1.0774955 0,2.40625 l 0,11.1875 C 0,14.922504 1.0774955,16 2.40625,16 l 11.1875,0 C 14.922504,16 16,14.922504 16,13.59375 L 16,2.40625 C 16,1.0774955 14.922504,0 13.59375,0 L 2.40625,0 z m 0.375,1.90625 10.5,0 c 0.417915,0 0.75,0.446 0.75,1 0,0.554 -0.332085,1 -0.75,1 l -10.5,0 c -0.4179148,0 -0.75,-0.446 -0.75,-1 0,-0.554 0.3320852,-1 0.75,-1 z M 2.75,5.375 l 10.5,0 c 0.417915,0 0.75,0.446 0.75,1 0,0.554 -0.332085,1 -0.75,1 l -10.5,0 C 2.3320852,7.375 2,6.929 2,6.375 c 0,-0.554 0.3320852,-1 0.75,-1 z m 8.5625,3.75 c 0.612952,5.1e-6 1.117184,0.1689502 1.5,0.53125 0.22786,0.2141965 0.386063,0.536462 0.5,0.9375 l -1,0.25 c -0.05925,-0.259762 -0.187015,-0.474605 -0.375,-0.625 C 11.749509,10.068364 11.550128,10.000004 11.28125,10 c -0.371421,4e-6 -0.67497,0.139652 -0.90625,0.40625 -0.231284,0.266605 -0.375002,0.684248 -0.375,1.28125 -2e-6,0.633465 0.115884,1.074871 0.34375,1.34375 0.227862,0.268881 0.541664,0.406251 0.90625,0.40625 0.268877,10e-7 0.493812,-0.0791 0.6875,-0.25 0.193682,-0.170897 0.321937,-0.445637 0.40625,-0.8125 l 1,0.3125 c -0.150395,0.546876 -0.400232,0.953288 -0.75,1.21875 -0.349775,0.265462 -0.805992,0.40625 -1.34375,0.40625 -0.665366,0 -1.196617,-0.23291 -1.625,-0.6875 C 9.196614,13.170411 8.9687496,12.538413 8.96875,11.75 8.9687496,10.916019 9.1943354,10.27393 9.625,9.8125 10.055663,9.3510791 10.610675,9.1250051 11.3125,9.125 z m -8.75,0.09375 2,0 c 0.3964815,5e-6 0.6801726,-0.00179 0.875,0.03125 0.1948206,0.033045 0.3774377,0.1139371 0.53125,0.21875 0.1538046,0.1048224 0.2724568,0.231939 0.375,0.40625 0.1025347,0.174321 0.1562456,0.377283 0.15625,0.59375 -4.4e-6,0.234704 -0.06104,0.46029 -0.1875,0.65625 -0.126469,0.195967 -0.2835327,0.339521 -0.5,0.4375 0.3053344,0.08887 0.5234332,0.25456 0.6875,0.46875 0.1640579,0.214195 0.2499953,0.460614 0.25,0.75 -4.7e-6,0.227866 -0.050297,0.440919 -0.15625,0.65625 -0.1059615,0.215333 -0.2540733,0.371257 -0.4375,0.5 -0.1834349,0.128744 -0.3873735,0.220378 -0.65625,0.25 -0.1686231,0.01823 -0.6051461,0.02669 -1.25,0.03125 l -1.6875,0 0,-5 z m 1,0.84375 0,1.15625 0.6875,0 c 0.3942032,3e-6 0.6230441,-0.01986 0.71875,-0.03125 C 5.141924,11.167 5.2758757,11.099124 5.375,11 c 0.099118,-0.09912 0.1562465,-0.213213 0.15625,-0.375 -3.5e-6,-0.154944 -0.039554,-0.278153 -0.125,-0.375 -0.085452,-0.09684 -0.2063834,-0.166988 -0.375,-0.1875 -0.1002633,-0.01139 -0.3987656,0 -0.875,0 l -0.59375,0 z m 0,1.96875 0,1.34375 0.9375,0 c 0.3645805,0 0.5895152,-0.01074 0.6875,-0.03125 0.1503873,-0.02734 0.2804328,-0.08154 0.375,-0.1875 0.09456,-0.105956 0.1562464,-0.259765 0.15625,-0.4375 -3.6e-6,-0.150389 -0.052087,-0.27018 -0.125,-0.375 C 5.5208299,12.238932 5.4191047,12.172854 5.28125,12.125 5.1433889,12.077151 4.8352837,12.031252 4.375,12.03125 l -0.8125,0 z"
+ id="rect7693-5"
+ style="fill:#649be6;fill-opacity:1;fill-rule:evenodd;stroke:none" />
+ <text
+ x="20.861963"
+ y="12.026293"
+ id="text8055-4"
+ xml:space="preserve"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"><tspan
+ x="20.861963"
+ y="12.026293"
+ id="tspan8057-1"
+ style="fill:#649be6;fill-opacity:1" /></text>
+ <g
+ transform="translate(0,-0.12041537)"
+ id="text8059"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-storage-sanswitch-hp.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-storage-sanswitch-hp.svg
new file mode 100644
index 00000000..8833e25d
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-storage-sanswitch-hp.svg
@@ -0,0 +1,187 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(2.0604683,1034.7666)"
+ id="layer1-03" />
+ <g
+ id="text21552"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,1030.3622)"
+ id="g21594"
+ style="fill:#649be6;fill-opacity:1">
+ <path
+ d="M 2.40625,0 C 1.0774955,0 0,1.0774955 0,2.40625 l 0,11.1875 C 0,14.922504 1.0774955,16 2.40625,16 l 11.1875,0 C 14.922504,16 16,14.922504 16,13.59375 L 16,2.40625 C 16,1.0774955 14.922504,0 13.59375,0 L 2.40625,0 z m 0.375,1.90625 10.5,0 c 0.417915,0 0.75,0.446 0.75,1 0,0.554 -0.332085,1 -0.75,1 l -10.5,0 c -0.4179148,0 -0.75,-0.446 -0.75,-1 0,-0.554 0.3320852,-1 0.75,-1 z M 2.75,5.375 l 10.5,0 c 0.417915,0 0.75,0.446 0.75,1 0,0.554 -0.332085,1 -0.75,1 l -10.5,0 C 2.3320852,7.375 2,6.929 2,6.375 c 0,-0.554 0.3320852,-1 0.75,-1 z m 0.0625,3.8125 1,0 0,1.96875 2,0 0,-1.96875 1,0 0,5 -1,0 0,-2.1875 -2,0 0,2.1875 -1,0 0,-5 z m 6.53125,0 1.625,0 c 0.615232,0 1.031898,0.012375 1.21875,0.0625 0.287106,0.0752 0.525062,0.2482144 0.71875,0.5 0.193681,0.251795 0.281245,0.569991 0.28125,0.96875 -5e-6,0.30762 -0.0446,0.571618 -0.15625,0.78125 -0.111657,0.209638 -0.265466,0.380373 -0.4375,0.5 -0.172041,0.119631 -0.353519,0.180015 -0.53125,0.21875 -0.241539,0.04785 -0.573245,0.09375 -1.03125,0.09375 l -0.6875,0 0,1.875 -1,0 0,-5 z m 1,0.84375 0,1.40625 0.5625,0 c 0.39876,0 0.678057,-0.01009 0.8125,-0.0625 0.134437,-0.05241 0.236163,-0.138343 0.3125,-0.25 0.07633,-0.11165 0.124997,-0.226885 0.125,-0.375 -3e-6,-0.182288 -0.08041,-0.350257 -0.1875,-0.46875 -0.1071,-0.118485 -0.242191,-0.189123 -0.40625,-0.21875 -0.120771,-0.02278 -0.354169,-0.03124 -0.71875,-0.03125 l -0.5,0 z"
+ id="rect7693"
+ style="fill:#649be6;fill-opacity:1;fill-rule:evenodd;stroke:none" />
+ <text
+ x="20.861963"
+ y="12.026293"
+ id="text8055"
+ xml:space="preserve"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"><tspan
+ x="20.861963"
+ y="12.026293"
+ id="tspan8057"
+ style="fill:#649be6;fill-opacity:1" /></text>
+ <g
+ transform="translate(0.37633745,0)"
+ id="text8083"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-storage-sanswitch-zte.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-storage-sanswitch-zte.svg
new file mode 100644
index 00000000..b5765c61
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-storage-sanswitch-zte.svg
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="22px" height="22px" viewBox="0 0 22 22" enable-background="new 0 0 22 22" xml:space="preserve">
+<path fill="#6393CD" d="M18.691,0H3.309C1.482,0,0,1.482,0,3.309v15.383C0,20.518,1.482,22,3.309,22h15.383
+ C20.518,22,22,20.518,22,18.691V3.309C22,1.482,20.518,0,18.691,0z M3.824,2.621h14.438c0.574,0,1.031,0.613,1.031,1.375
+ s-0.457,1.375-1.031,1.375H3.824c-0.575,0-1.031-0.613-1.031-1.375S3.25,2.621,3.824,2.621z M3.781,7.391h14.438
+ c0.574,0,1.031,0.613,1.031,1.375s-0.457,1.375-1.031,1.375H3.781c-0.575,0-1.031-0.613-1.031-1.375S3.207,7.391,3.781,7.391z
+ M7.55,19.498H2.103v-0.846l3.53-4.414c0.25-0.313,0.489-0.585,0.714-0.816H2.503v-0.813h4.935v0.813l-3.868,4.779l-0.418,0.484
+ H7.55V19.498z M13.477,13.422h-2.279v6.076h-0.913v-6.076H8.015v-0.813h5.461V13.422z M19.572,19.498H14.43v-6.89h4.981v0.813
+ h-4.068v2.11h3.811v0.808h-3.811v2.346h4.229V19.498z"/>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-storage.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-storage.svg
new file mode 100644
index 00000000..05cd4779
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-storage.svg
@@ -0,0 +1,183 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(2.0604683,1034.7666)"
+ id="layer1-03" />
+ <g
+ id="text21552"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,1030.3622)"
+ id="g21632"
+ style="fill:#649be6;fill-opacity:1">
+ <path
+ d="M 2.40625,0 C 1.0774955,0 0,1.0774955 0,2.40625 l 0,11.1875 C 0,14.922504 1.0774955,16 2.40625,16 l 11.1875,0 C 14.922504,16 16,14.922504 16,13.59375 L 16,2.40625 C 16,1.0774955 14.922504,0 13.59375,0 L 2.40625,0 z m 0.46875,3.25 10.25,0 C 13.608648,3.25 14,3.6559241 14,4.15625 l 0,0.1875 C 14,4.8440759 13.608648,5.25 13.125,5.25 l -10.25,0 C 2.3913516,5.25 2,4.8440759 2,4.34375 L 2,4.15625 C 2,3.6559241 2.3913516,3.25 2.875,3.25 z m 0,4.1875 10.25,0 c 0.483648,0 0.875,0.4059241 0.875,0.90625 l 0,0.1875 C 14,9.0315759 13.608648,9.4375 13.125,9.4375 l -10.25,0 C 2.3913516,9.4375 2,9.0315759 2,8.53125 L 2,8.34375 C 2,7.8434241 2.3913516,7.4375 2.875,7.4375 z m 0,4.1875 10.25,0 c 0.483648,0 0.875,0.405924 0.875,0.90625 l 0,0.1875 c 0,0.500326 -0.391352,0.90625 -0.875,0.90625 l -10.25,0 C 2.3913516,13.625 2,13.219076 2,12.71875 l 0,-0.1875 C 2,12.030924 2.3913516,11.625 2.875,11.625 z"
+ id="rect7693-2"
+ style="fill:#649be6;fill-opacity:1;fill-rule:evenodd;stroke:none" />
+ <text
+ x="20.861963"
+ y="12.026293"
+ id="text8055-7"
+ xml:space="preserve"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"><tspan
+ x="20.861963"
+ y="12.026293"
+ id="tspan8057-6"
+ style="fill:#649be6;fill-opacity:1" /></text>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-switch-at.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-switch-at.svg
new file mode 100644
index 00000000..6df9f224
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-switch-at.svg
@@ -0,0 +1,201 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="22"
+ height="22"
+ id="svg15992"
+ version="1.1"
+ inkscape:version="0.48.4 r9939"
+ sodipodi:docname="it-switch-at.svg">
+ <defs
+ id="defs15994" />
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="15.59446"
+ inkscape:cx="14.648729"
+ inkscape:cy="7.6382661"
+ inkscape:document-units="px"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:window-width="1440"
+ inkscape:window-height="844"
+ inkscape:window-x="-4"
+ inkscape:window-y="-4"
+ inkscape:window-maximized="1" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(0,-1030.3622)">
+ <g
+ id="layer1-8"
+ transform="translate(3,1033.8577)">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="layer1-2"
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)">
+ <g
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
+ id="text7308-2"
+ transform="scale(0.93557544,1.0688609)" />
+ </g>
+ <g
+ id="layer1-29"
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)" />
+ <g
+ id="layer1-3-2"
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)">
+ <g
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
+ id="text7308-5"
+ transform="scale(0.93557544,1.0688609)" />
+ </g>
+ <g
+ id="layer1-3-1"
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)">
+ <g
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
+ id="text7308-7"
+ transform="scale(0.93557544,1.0688609)" />
+ </g>
+ <g
+ id="layer1-6"
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)">
+ <g
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
+ id="text7308-3"
+ transform="scale(0.93557544,1.0688609)" />
+ </g>
+ <g
+ id="layer1-2-2"
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)">
+ <g
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
+ id="text7308-2-5"
+ transform="scale(0.93557544,1.0688609)" />
+ </g>
+ <g
+ id="g18916"
+ transform="translate(16.574815,1039.9887)">
+ <g
+ id="layer1-37-1"
+ transform="translate(0,-1036.3622)">
+ <g
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
+ id="text7308-75"
+ transform="scale(0.93557544,1.0688609)" />
+ </g>
+ <g
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
+ id="text3074-3" />
+ <g
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
+ id="text3330-4" />
+ <g
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
+ id="text3334-3" />
+ <g
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
+ id="text3420"
+ transform="scale(1.0025516,0.99745489)" />
+ </g>
+ <g
+ id="layer1-03"
+ transform="translate(2.0604683,1034.7666)" />
+ <g
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
+ id="text21552" />
+ <g
+ id="layer1-2-1"
+ transform="matrix(1.3776908,0,0,1.375,0,1030.3622)"
+ style="fill:#649be6;fill-opacity:1">
+ <path
+ style="fill:#649be6;fill-opacity:1;stroke:none"
+ id="rect5183"
+ d="M 3.65625,0 0,3.5625 2.1875,5.65625 C 3.1203415,5.0418048 4.2369453,4.6875 5.4375,4.6875 c 0.7452958,0 1.4681623,0.1547386 2.125,0.40625 l 2.90625,0 0,-3.09375 -6.8125,0 0,-2 z m 8.65625,3.8125 0,2 -3.46875,0 c 1.0678079,0.7213968 1.850233,1.8140412 2.1875,3.09375 l 1.28125,0 0,1.9375 3.65625,-3.5 L 12.3125,3.8125 z M 5.40625,5.21875 C 2.4268411,5.21875 0,7.6143411 0,10.59375 0,13.573159 2.4268411,16 5.40625,16 c 2.9794089,0 5.375,-2.426841 5.375,-5.40625 0,-2.9794089 -2.3955911,-5.375 -5.375,-5.375 z m -2.46875,3.0625 1,0 1.84375,4.65625 -1,0 -0.40625,-1.0625 -1.875,0 -0.375,1.0625 -1,0 1.8125,-4.65625 z m 3.03125,0 3.6875,0 0,0.78125 -1.375,0 0,3.875 -0.9375,0 0,-3.875 -1.375,0 0,-0.78125 z M 3.4375,9.375 l -0.625,1.71875 1.25,0 L 3.4375,9.375 z"
+ inkscape:connector-curvature="0" />
+ <g
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
+ id="text5227" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-switch-cisco.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-switch-cisco.svg
new file mode 100644
index 00000000..aacd00cb
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-switch-cisco.svg
@@ -0,0 +1,176 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(2.0604683,1034.7666)"
+ id="layer1-03" />
+ <g
+ id="text21552"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="matrix(1.3776908,0,0,1.375,0,1030.3622)"
+ id="layer1-4"
+ style="fill:#649be6;fill-opacity:1">
+ <path
+ d="M 3.65625,0 0,3.5625 2.1875,5.65625 C 3.1203415,5.0418048 4.2369453,4.6875 5.4375,4.6875 c 0.7452958,0 1.4681623,0.1547386 2.125,0.40625 l 2.90625,0 0,-3.09375 -6.8125,0 0,-2 z m 8.65625,3.8125 0,2 -3.46875,0 c 1.0678079,0.7213968 1.850233,1.8140412 2.1875,3.09375 l 1.28125,0 0,1.9375 3.65625,-3.5 L 12.3125,3.8125 z M 5.40625,5.21875 C 2.4268411,5.21875 0,7.6143411 0,10.59375 0,13.573159 2.4268411,16 5.40625,16 c 2.9794089,0 5.375,-2.426841 5.375,-5.40625 0,-2.9794089 -2.3955911,-5.375 -5.375,-5.375 z M 3.1875,8.1875 c 0.5691701,4.7e-6 1.0507777,0.1948287 1.40625,0.53125 C 4.8053345,8.9176472 4.9567015,9.1901079 5.0625,9.5625 L 4.125,9.78125 C 4.0699836,9.5400425 3.9558073,9.358402 3.78125,9.21875 3.6066866,9.0791054 3.4059218,9.0000039 3.15625,9 2.8113586,9.0000039 2.5272605,9.1274452 2.3125,9.375 2.0977362,9.6225619 1.9999987,10.008141 2,10.5625 c -1.3e-6,0.588218 0.1009101,1.031577 0.3125,1.28125 0.2115867,0.249676 0.4739563,0.375001 0.8125,0.375 0.2496718,10e-7 0.4763969,-0.09131 0.65625,-0.25 0.179847,-0.15869 0.2967088,-0.409341 0.375,-0.75 L 5.0625,11.5 C 4.9228474,12.007813 4.6997844,12.409749 4.375,12.65625 4.0502082,12.90275 3.624346,12.999999 3.125,13 2.5071597,12.999999 2.0227852,12.797119 1.625,12.375 1.227213,11.952882 1.0312497,11.388347 1.03125,10.65625 1.0312497,9.8818386 1.2250972,9.2722204 1.625,8.84375 2.0249011,8.4152877 2.5358055,8.1875047 3.1875,8.1875 z m 4.71875,0 c 0.5691702,4.7e-6 1.0195278,0.1948287 1.375,0.53125 C 9.4928345,8.9176472 9.6442015,9.1901079 9.75,9.5625 L 8.8125,9.78125 C 8.7574836,9.5400425 8.6433073,9.358402 8.46875,9.21875 8.2941865,9.0791054 8.0934218,9.0000039 7.84375,9 7.4988586,9.0000039 7.2147605,9.1274452 7,9.375 6.7852362,9.6225619 6.6874987,10.008141 6.6875,10.5625 c -1.3e-6,0.588218 0.1009101,1.031577 0.3125,1.28125 0.2115868,0.249676 0.4739563,0.375001 0.8125,0.375 0.2496719,10e-7 0.4763968,-0.09131 0.65625,-0.25 0.179847,-0.15869 0.2967089,-0.409341 0.375,-0.75 L 9.78125,11.5 C 9.6415973,12.007813 9.3872844,12.409749 9.0625,12.65625 8.7377082,12.90275 8.3430961,12.999999 7.84375,13 7.2259097,12.999999 6.7102852,12.797119 6.3125,12.375 5.9147131,11.952882 5.7187497,11.388347 5.71875,10.65625 5.7187497,9.8818386 5.9125971,9.2722204 6.3125,8.84375 6.712401,8.4152877 7.2545555,8.1875047 7.90625,8.1875 z"
+ id="rect5183-1"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ <g
+ id="text5227-2"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-switch-h3c.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-switch-h3c.svg
new file mode 100644
index 00000000..c0eb9459
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-switch-h3c.svg
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="22px" height="22px" viewBox="0 0 22 22" enable-background="new 0 0 22 22" xml:space="preserve">
+<g>
+ <path fill="#6393CD" d="M14.992,11.68c0.695-0.442,1.516-0.707,2.401-0.707c1.025,0,1.959,0.354,2.715,0.932L22,10.098
+ l-5.037-4.855v2.75h-4.779C13.491,8.873,14.459,10.17,14.992,11.68z"/>
+ <path fill="#6393CD" d="M7.491,6.445c1.026,0,2.023,0.213,2.928,0.559h4.004V2.75H5.037V0L0,4.898l3.014,2.879
+ C4.298,6.933,5.837,6.445,7.491,6.445z"/>
+ <path fill="#6393CD" d="M7.448,7.176C3.343,7.176,0,10.47,0,14.566S3.343,22,7.448,22c2.767,0,5.163-1.519,6.435-3.763
+ c-0.609-0.765-0.987-1.722-0.987-2.774c0-1.332,0.592-2.515,1.515-3.338C13.401,9.244,10.69,7.176,7.448,7.176z M7.194,18.907H6.28
+ v-3.246H2.692v3.246H1.779v-6.89h0.914v2.829H6.28v-2.829h0.914V18.907z M12.236,18.402c-0.438,0.418-0.994,0.627-1.666,0.627
+ c-0.607,0-1.11-0.18-1.51-0.541c-0.401-0.359-0.628-0.827-0.685-1.398l0.846-0.113c0.098,0.479,0.264,0.824,0.498,1.035
+ c0.234,0.213,0.518,0.318,0.854,0.318c0.398,0,0.736-0.139,1.011-0.413c0.274-0.277,0.412-0.618,0.412-1.026
+ c0-0.388-0.126-0.707-0.382-0.96c-0.253-0.253-0.577-0.379-0.969-0.379c-0.161,0-0.36,0.031-0.599,0.095l0.094-0.743
+ c0.057,0.006,0.102,0.01,0.136,0.01c0.362,0,0.687-0.095,0.976-0.282s0.433-0.479,0.433-0.869c0-0.312-0.105-0.567-0.316-0.771
+ c-0.21-0.204-0.482-0.306-0.814-0.306c-0.33,0-0.604,0.104-0.825,0.31c-0.219,0.207-0.361,0.518-0.423,0.931l-0.849-0.15
+ c0.105-0.566,0.34-1.007,0.706-1.318c0.369-0.312,0.825-0.467,1.371-0.467c0.377,0,0.724,0.081,1.04,0.242
+ c0.317,0.161,0.56,0.381,0.728,0.66c0.169,0.279,0.252,0.575,0.252,0.89c0,0.297-0.079,0.567-0.239,0.813
+ c-0.16,0.244-0.397,0.438-0.71,0.582c0.408,0.094,0.724,0.289,0.95,0.586c0.226,0.295,0.339,0.666,0.339,1.11
+ C12.896,17.474,12.677,17.983,12.236,18.402z"/>
+ <path fill="#6393CD" d="M18.891,17.803c-0.354,0.294-0.787,0.44-1.3,0.44c-0.42,0-0.811-0.107-1.172-0.324
+ c-0.36-0.216-0.627-0.542-0.798-0.979c-0.171-0.437-0.257-0.948-0.257-1.535c0-0.454,0.073-0.895,0.217-1.322
+ s0.395-0.769,0.751-1.022s0.801-0.381,1.33-0.381c0.462,0,0.846,0.115,1.149,0.344c0.304,0.228,0.537,0.593,0.697,1.096
+ l0.899-0.212c-0.186-0.637-0.514-1.13-0.984-1.48c-0.471-0.352-1.053-0.526-1.742-0.526c-0.609,0-1.167,0.139-1.674,0.415
+ c-0.508,0.278-0.899,0.684-1.174,1.218s-0.411,1.16-0.411,1.878c0,0.657,0.121,1.272,0.364,1.848
+ c0.244,0.571,0.599,1.011,1.064,1.313c0.467,0.303,1.072,0.454,1.814,0.454c0.721,0,1.328-0.197,1.826-0.591
+ s0.842-0.964,1.033-1.713l-0.913-0.23C19.486,17.07,19.246,17.507,18.891,17.803z"/>
+</g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-switch-juniper.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-switch-juniper.svg
new file mode 100644
index 00000000..87b950cd
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-switch-juniper.svg
@@ -0,0 +1,176 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(2.0604683,1034.7666)"
+ id="layer1-03" />
+ <g
+ id="text21552"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="matrix(1.3776908,0,0,1.375,0,1030.3622)"
+ id="layer1-9"
+ style="fill:#649be6;fill-opacity:1">
+ <path
+ d="M 3.65625,0 0,3.5625 2.1875,5.65625 C 3.1203415,5.0418048 4.2369453,4.6875 5.4375,4.6875 c 0.7452958,0 1.4681623,0.1547386 2.125,0.40625 l 2.90625,0 0,-3.09375 -6.8125,0 0,-2 z m 8.65625,3.8125 0,2 -3.46875,0 c 1.0678079,0.7213968 1.850233,1.8140412 2.1875,3.09375 l 1.28125,0 0,1.9375 3.65625,-3.5 L 12.3125,3.8125 z M 5.40625,5.21875 C 2.4268411,5.21875 0,7.6143411 0,10.59375 0,13.573159 2.4268411,16 5.40625,16 c 2.9794089,0 5.375,-2.426841 5.375,-5.40625 0,-2.9794089 -2.3955911,-5.375 -5.375,-5.375 z m -1.875,2.84375 1,0 0,3.15625 C 4.5312467,11.633465 4.510413,11.964194 4.4375,12.1875 4.339515,12.479168 4.163734,12.698405 3.90625,12.875 3.6487606,13.051595 3.2965474,13.156249 2.875,13.15625 2.3805327,13.156249 2.0166008,13.026856 1.75,12.75 1.4833982,12.473145 1.3460286,12.066733 1.34375,11.53125 l 0.9375,-0.125 c 0.011392,0.287111 0.052082,0.506511 0.125,0.625 0.1093736,0.180014 0.2766912,0.250001 0.5,0.25 0.225584,10e-7 0.3753235,-0.05875 0.46875,-0.1875 0.093422,-0.128742 0.1562477,-0.4069 0.15625,-0.8125 l 0,-3.21875 z m 2.09375,0 1.625,0 c 0.6152316,5e-6 1.0006479,0.012375 1.1875,0.0625 0.2871058,0.0752 0.5250612,0.2482144 0.71875,0.5 0.1936806,0.2517946 0.3124957,0.5699909 0.3125,0.96875 -4.3e-6,0.3076204 -0.075851,0.571617 -0.1875,0.78125 -0.1116577,0.209638 -0.2342162,0.380374 -0.40625,0.5 -0.1720414,0.119631 -0.3535191,0.180015 -0.53125,0.21875 -0.2415395,0.04785 -0.6044949,0.09375 -1.0625,0.09375 l -0.65625,0 0,1.875 -1,0 0,-5 z m 1,0.84375 0,1.40625 0.5625,0 c 0.3987606,3e-6 0.6468072,-0.01009 0.78125,-0.0625 C 8.1031871,10.19759 8.2361623,10.111657 8.3125,10 8.3888314,9.8883469 8.4062467,9.7731153 8.40625,9.625 8.4062467,9.442712 8.3570932,9.2747434 8.25,9.15625 8.1429007,9.0377645 8.0078096,8.9671265 7.84375,8.9375 7.7229791,8.9147177 7.489581,8.9062541 7.125,8.90625 l -0.5,0 z"
+ id="rect5183-0"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ <g
+ id="text5227-8"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-switch-zte.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-switch-zte.svg
new file mode 100644
index 00000000..e64ea626
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-switch-zte.svg
@@ -0,0 +1,177 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(2.0604683,1034.7666)"
+ id="layer1-03" />
+ <g
+ id="text21552"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="matrix(1.3776908,0,0,1.375,0,1030.3622)"
+ id="layer1-7"
+ style="fill:#649be6;fill-opacity:1">
+ <path
+ d="M 3.65625,0 0,3.5625 2.1875,5.65625 C 3.1203415,5.0418048 4.2369453,4.6875 5.4375,4.6875 c 0.7452958,0 1.4681623,0.1547386 2.125,0.40625 l 2.90625,0 0,-3.09375 -6.8125,0 0,-2 z m 8.65625,3.8125 0,2 -3.46875,0 c 1.0678079,0.7213968 1.850233,1.8140412 2.1875,3.09375 l 1.28125,0 0,1.9375 3.65625,-3.5 L 12.3125,3.8125 z M 5.40625,5.21875 C 2.4268411,5.21875 0,7.6143411 0,10.59375 0,13.573159 2.4268411,16 5.40625,16 c 2.9794089,0 5.375,-2.426841 5.375,-5.40625 0,-2.9794089 -2.3955911,-5.375 -5.375,-5.375 z m -3.875,3.15625 2.3125,0 0,0.6875 -1.75,3.03125 1.8125,0 0,0.75 -2.5625,0 0,-0.8125 L 3,9.125 l -1.46875,0 0,-0.75 z m 2.5625,0 2.53125,0 0,0.75 -0.9375,0 0,3.71875 -0.65625,0 0,-3.71875 -0.9375,0 0,-0.75 z m 2.9375,0 2.375,0 0,0.75 -1.71875,0 0,1 1.59375,0 0,0.75 -1.59375,0 0,1.21875 1.78125,0 0,0.75 -2.4375,0 0,-4.46875 z"
+ id="rect5183-4"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ <g
+ transform="scale(0.84425639,1.1844743)"
+ id="text5227-5"
+ style="font-size:5.26473427px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-switch.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-switch.svg
new file mode 100644
index 00000000..d24b524a
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-switch.svg
@@ -0,0 +1,182 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(2.0604683,1034.7666)"
+ id="layer1-03" />
+ <g
+ id="text21552"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="matrix(1.3749999,0,0,1.374743,7.6900945e-7,1030.3663)"
+ id="g22077"
+ style="fill:#649be6;fill-opacity:1">
+ <g
+ transform="translate(4.909344,-0.31306078)"
+ id="layer1-8-0"
+ style="fill:#649be6;fill-opacity:1">
+ <g
+ transform="scale(0.95964169,1.0420556)"
+ id="text4237-8"
+ style="font-size:5.75785017px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#649be6;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <path
+ d="M 8.21875,0 A 7.9999999,7.9999999 0 0 0 0,8 8,8 0 1 0 16,8 7.9999999,7.9999999 0 0 0 8.21875,0 z m -3.625,1.75 0,1.21875 8.78125,0 0,1.5 -8.78125,0 0,1.21875 L 2.625,3.71875 4.59375,1.75 z m 6.78125,4.28125 2,2 -2,1.96875 0,-1.21875 -8.75,0 0,-1.5 8.75,0 0,-1.25 z m -6.78125,4.25 0,1.25 8.78125,0 0,1.5 -8.78125,0 0,1.21875 -1.96875,-1.96875 1.96875,-2 z"
+ id="path7209"
+ style="fill:#649be6;fill-opacity:1;stroke:none" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-tapelib-hpmsl.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-tapelib-hpmsl.svg
new file mode 100644
index 00000000..ef15e7d2
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-tapelib-hpmsl.svg
@@ -0,0 +1,176 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(2.0604683,1034.7666)"
+ id="layer1-03" />
+ <g
+ id="text21552"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z m -0.8125,1.75 16.3125,0 c 0.605135,0 1.09375,0.5108157 1.09375,1.15625 l 0,9.3125 c 0,0.645434 -0.488615,1.15625 -1.09375,1.15625 l -16.3125,0 C 2.2386148,13.375 1.75,12.864184 1.75,12.21875 l 0,-9.3125 C 1.75,2.2608157 2.2386148,1.75 2.84375,1.75 z M 5.75,5.03125 c -0.6051352,0 -1.0625,0.5108157 -1.0625,1.15625 l 0,2.1875 c 0,0.6454343 0.4573648,1.1875 1.0625,1.1875 l 10.5,0 c 0.605135,0 1.0625,-0.5420657 1.0625,-1.1875 l 0,-2.1875 c 0,-0.6454343 -0.457365,-1.15625 -1.0625,-1.15625 l -10.5,0 z m 9.375,0.25 c 0.984673,0 1.75,0.8560028 1.75,1.90625 0,1.0502472 -0.765327,1.875 -1.75,1.875 -0.984674,0 -1.78125,-0.8247528 -1.78125,-1.875 0,-1.0502472 0.796576,-1.90625 1.78125,-1.90625 z M 6.875,5.5 c 0.9846727,0 1.78125,0.8247529 1.78125,1.875 0,1.0502472 -0.7965773,1.9375 -1.78125,1.9375 -0.9846727,0 -1.75,-0.8872528 -1.75,-1.9375 0,-1.0502471 0.7653273,-1.875 1.75,-1.875 z m -1,8.59375 1.15625,0 0,2.40625 2.3125,0 0,-2.40625 1.15625,0 0,6.15625 -1.15625,0 0,-2.6875 -2.3125,0 0,2.6875 -1.15625,0 0,-6.15625 z m 5.8125,0 1.875,0 c 0.711361,0 1.190201,6.77e-4 1.40625,0.0625 0.331965,0.09274 0.619797,0.314485 0.84375,0.625 0.223942,0.310525 0.312495,0.69573 0.3125,1.1875 -5e-6,0.379373 -0.05841,0.71022 -0.1875,0.96875 -0.129105,0.258536 -0.301086,0.477471 -0.5,0.625 -0.198924,0.147534 -0.356999,0.202224 -0.5625,0.25 -0.279281,0.05901 -0.720432,0.125 -1.25,0.125 l -0.75,0 0,2.3125 -1.1875,0 0,-6.15625 z m 1.1875,1.03125 0,1.71875 0.65625,0 c 0.461067,0 0.7508,0.0021 0.90625,-0.0625 0.155443,-0.06463 0.255482,-0.174799 0.34375,-0.3125 0.08826,-0.137692 0.156247,-0.317337 0.15625,-0.5 -3e-6,-0.224807 -0.06367,-0.385118 -0.1875,-0.53125 -0.123833,-0.146123 -0.279056,-0.244709 -0.46875,-0.28125 -0.139641,-0.02806 -0.453453,-0.03125 -0.875,-0.03125 l -0.53125,0 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="matrix(1.15625,0,0,1.2332508,1.75,1032.1122)"
+ id="layer1-6-9">
+ <g
+ id="text5399-0"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-tapelib-ibmts.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-tapelib-ibmts.svg
new file mode 100644
index 00000000..c771f701
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-tapelib-ibmts.svg
@@ -0,0 +1,183 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(2.0604683,1034.7666)"
+ id="layer1-03" />
+ <g
+ id="text21552"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z m -0.8125,1.75 16.3125,0 c 0.605135,0 1.09375,0.5134508 1.09375,1.15625 l 0,9.28125 c 0,0.642799 -0.488615,1.15625 -1.09375,1.15625 l -16.3125,0 C 2.2386138,13.34375 1.75,12.830299 1.75,12.1875 l 0,-9.28125 C 1.75,2.2634508 2.2386138,1.75 2.84375,1.75 z M 5.75,5 C 5.1448638,5 4.6875,5.5134509 4.6875,6.15625 l 0,2.1875 c 0,0.6427991 0.4573638,1.1875 1.0625,1.1875 l 10.5,0 c 0.605135,0 1.0625,-0.5447009 1.0625,-1.1875 l 0,-2.1875 C 17.3125,5.5134509 16.855135,5 16.25,5 L 5.75,5 z m 9.375,0.28125 c 0.984673,0 1.75,0.8290406 1.75,1.875 0,1.0459594 -0.765327,1.875 -1.75,1.875 -0.984674,0 -1.78125,-0.8290406 -1.78125,-1.875 0,-1.0459594 0.796576,-1.875 1.78125,-1.875 z m -8.25,0.1875 c 0.9846717,0 1.78125,0.8290407 1.78125,1.875 0,1.0459594 -0.7965783,1.9375 -1.78125,1.9375 -0.9846729,0 -1.75,-0.8915406 -1.75,-1.9375 0,-1.0459593 0.7653271,-1.875 1.75,-1.875 z m 6.46875,8.40625 c 0.727169,6e-6 1.257458,0.161367 1.625,0.5 0.367534,0.338645 0.575308,0.809674 0.59375,1.375 l -1.15625,0.0625 c -0.05007,-0.316246 -0.179085,-0.580211 -0.34375,-0.71875 -0.164671,-0.13853 -0.420668,-0.187494 -0.75,-0.1875 -0.339876,6e-6 -0.58892,0.101677 -0.78125,0.25 -0.123832,0.09516 -0.187502,0.215481 -0.1875,0.375 -2e-6,0.145535 0.07157,0.240204 0.1875,0.34375 0.14754,0.131542 0.493406,0.263521 1.0625,0.40625 0.569089,0.142736 1.008557,0.316225 1.28125,0.46875 0.272685,0.15253 0.439616,0.360528 0.59375,0.625 0.154128,0.264477 0.249995,0.610987 0.25,1 -5e-6,0.352633 -0.09683,0.660898 -0.28125,0.96875 -0.184432,0.307855 -0.444016,0.537772 -0.78125,0.6875 -0.337243,0.149732 -0.778029,0.218749 -1.28125,0.21875 -0.732445,-1e-6 -1.263683,-0.171621 -1.65625,-0.53125 C 11.326182,19.359121 11.076405,18.813474 11,18.125 l 1.15625,-0.09375 c 0.0685,0.405809 0.196791,0.684693 0.40625,0.875 0.209455,0.190312 0.488066,0.312501 0.84375,0.3125 0.376757,1e-6 0.652732,-0.111932 0.84375,-0.28125 0.191013,-0.169318 0.281247,-0.335807 0.28125,-0.5625 0,-0.145529 -0.01339,-0.272849 -0.09375,-0.375 C 14.357141,17.897849 14.200232,17.794322 14,17.71875 13.862992,17.668381 13.549914,17.566242 13.0625,17.4375 12.435443,17.272379 12.002928,17.084439 11.75,16.84375 c -0.355683,-0.338635 -0.531251,-0.763027 -0.53125,-1.25 -10e-7,-0.313446 0.0827,-0.602125 0.25,-0.875 0.167302,-0.272865 0.403904,-0.482262 0.71875,-0.625 0.314843,-0.142726 0.710986,-0.218744 1.15625,-0.21875 z M 5.9375,14 l 4.59375,0 0,1.03125 -1.6875,0 0,5.09375 -1.15625,0 0,-5.09375 -1.75,0 0,-1.03125 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="matrix(1.15625,0,0,1.2332508,1.75,1032.1122)"
+ id="layer1-6-9">
+ <g
+ id="text5399-0"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.15625,0,0,1.2282158,1.75,1032.1506)"
+ id="g22144">
+ <g
+ id="text12320"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-tapelib-sunts.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-tapelib-sunts.svg
new file mode 100644
index 00000000..7478e4a8
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it-tapelib-sunts.svg
@@ -0,0 +1,196 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(2.0604683,1034.7666)"
+ id="layer1-03" />
+ <g
+ id="text21552"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z m -0.8125,1.75 16.3125,0 c 0.605135,0 1.09375,0.5178991 1.09375,1.15625 l 0,9.21875 c 0,0.638351 -0.488615,1.125 -1.09375,1.125 l -16.3125,0 C 2.2386148,13.25 1.75,12.763351 1.75,12.125 l 0,-9.21875 C 1.75,2.2678991 2.2386148,1.75 2.84375,1.75 z M 5.75,5 C 5.1448648,5 4.6875,5.4866492 4.6875,6.125 l 0,2.1875 C 4.6875,8.9508508 5.1448648,9.5 5.75,9.5 l 10.5,0 c 0.605135,0 1.0625,-0.5491492 1.0625,-1.1875 l 0,-2.1875 C 17.3125,5.4866492 16.855135,5 16.25,5 L 5.75,5 z m 9.375,0.25 c 0.984673,0 1.75,0.8362789 1.75,1.875 0,1.0387211 -0.765327,1.875 -1.75,1.875 -0.984674,0 -1.78125,-0.8362789 -1.78125,-1.875 0,-1.0387211 0.796576,-1.875 1.78125,-1.875 z m -8.25,0.1875 c 0.9846727,0 1.78125,0.836279 1.78125,1.875 0,1.0387211 -0.7965773,1.90625 -1.78125,1.90625 -0.9846727,0 -1.75,-0.8675289 -1.75,-1.90625 0,-1.038721 0.7653273,-1.875 1.75,-1.875 z m -1.625,8.5 c 0.7271696,7e-6 1.2574576,0.13246 1.625,0.46875 0.3675338,0.3363 0.575302,0.813585 0.59375,1.375 l -1.15625,0.0625 c -0.050063,-0.314053 -0.1790858,-0.54992 -0.34375,-0.6875 -0.1646709,-0.137572 -0.4206674,-0.218745 -0.75,-0.21875 -0.3398765,5e-6 -0.5889201,0.102705 -0.78125,0.25 -0.1238321,0.0945 -0.1875016,0.216584 -0.1875,0.375 -1.6e-6,0.144528 0.071573,0.240921 0.1875,0.34375 0.1475404,0.130632 0.493406,0.26451 1.0625,0.40625 0.5690884,0.141748 1.0085563,0.317282 1.28125,0.46875 0.2726854,0.151475 0.4396163,0.36236 0.59375,0.625 0.1541247,0.262648 0.2499949,0.551179 0.25,0.9375 -5.1e-6,0.350194 -0.096827,0.694278 -0.28125,1 C 7.1593175,19.649473 6.8997353,19.882557 6.5625,20.03125 6.2252569,20.179946 5.8157215,20.25 5.3125,20.25 4.5800559,20.25 4.0175665,20.07589 3.625,19.71875 3.2324314,19.361611 2.982655,18.83996 2.90625,18.15625 l 1.15625,-0.125 c 0.068501,0.403 0.196791,0.686009 0.40625,0.875 0.2094554,0.188995 0.4880653,0.312501 0.84375,0.3125 0.3767568,1e-6 0.6527321,-0.08185 0.84375,-0.25 C 6.3472613,18.8006 6.4374962,18.600125 6.4375,18.375 6.4374965,18.230478 6.4241036,18.101444 6.34375,18 6.2633884,17.898557 6.1064826,17.793787 5.90625,17.71875 5.7692433,17.668725 5.4561637,17.596601 4.96875,17.46875 4.3416934,17.304774 3.9091784,17.082773 3.65625,16.84375 3.300567,16.507458 3.1249994,16.108602 3.125,15.625 c -6e-7,-0.311278 0.082698,-0.604013 0.25,-0.875 C 3.5423015,14.479024 3.778904,14.298001 4.09375,14.15625 4.4085929,14.014507 4.8047362,13.937507 5.25,13.9375 z m 3.375,0.09375 1.15625,0 0,3.3125 c 0,0.52529 0.033516,0.844362 0.0625,1 0.050057,0.250139 0.1241181,0.47353 0.3125,0.625 0.188378,0.151477 0.485796,0.218751 0.8125,0.21875 0.331967,1e-6 0.581377,-0.04436 0.75,-0.1875 0.168616,-0.143134 0.246995,-0.322802 0.28125,-0.53125 0.03425,-0.208446 0.0625,-0.54765 0.0625,-1.03125 l 0,-3.40625 1.1875,0 0,3.21875 c 0,0.733737 -0.06177,1.259558 -0.125,1.5625 -0.06324,0.302945 -0.142568,0.541553 -0.3125,0.75 -0.169942,0.208448 -0.402959,0.376322 -0.6875,0.5 C 11.84045,20.186179 11.458432,20.25 11,20.25 10.446714,20.25 10.035861,20.197292 9.75,20.0625 9.4641342,19.927703 9.228484,19.746647 9.0625,19.53125 8.8965141,19.315855 8.7714426,19.079991 8.71875,18.84375 8.6423438,18.49356 8.625,17.964961 8.625,17.28125 l 0,-3.25 z m 5.84375,0 1.15625,0 2.375,4.09375 0,-4.09375 1.09375,0 0,6.09375 -1.1875,0 -2.34375,-3.96875 0,3.96875 -1.09375,0 0,-6.09375 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="matrix(1.15625,0,0,1.2332508,1.75,1032.1122)"
+ id="layer1-6-9">
+ <g
+ id="text5399-0"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.15625,0,0,1.2282158,1.75,1035.4682)"
+ id="g22144">
+ <g
+ id="text12320"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.15625,0,0,1.2197163,1.75,1032.1122)"
+ id="g22157">
+ <g
+ id="layer1-80">
+ <g
+ id="text5399-7"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text9726"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it.svg
new file mode 100644
index 00000000..a1fa9f74
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/it.svg
@@ -0,0 +1,111 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg2">
+ <defs
+ id="defs4" />
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g3112">
+ <rect
+ width="17.067265"
+ height="17.988041"
+ x="3.2227204"
+ y="2.367713"
+ id="rect3035"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ id="layer1-1">
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z m 3.21875,3.78125 8.25,0 0,4.53125 -4.65625,0 0,1 4.65625,0 0,3.125 -4.65625,0 0,1 4.65625,0 0,3.78125 1.625,0 0,1 -11.5,0 0,-1 1.625,0 0,-13.4375 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.125,0,0,1.125,2,1032.3622)"
+ id="layer1-9" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/networkTree.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/networkTree.svg
new file mode 100644
index 00000000..44739fec
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/networkTree.svg
@@ -0,0 +1,349 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="g3565">
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(2.0604683,1034.7666)"
+ id="layer1-03" />
+ <g
+ id="text21552"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="matrix(1.15625,0,0,1.2332508,1.75,1032.1122)"
+ id="layer1-6-9">
+ <g
+ id="text5399-0"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.15625,0,0,1.2282158,1.75,1035.4682)"
+ id="g22144">
+ <g
+ id="text12320"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.1250848,0,0,1.1285478,1.9999998,1032.3054)"
+ id="layer1-3-4" />
+ <g
+ transform="matrix(0.91666667,0,0,0.91666667,-4e-8,1030.3622)"
+ id="g23063"
+ style="fill:#000000">
+ <g
+ transform="matrix(0.01602479,0,0,0.01604987,-0.0148518,7.5361455)"
+ id="layer1-4"
+ style="fill:#000000" />
+ <g
+ transform="matrix(1.1251994,0,0,1.125,2.9999998,3)"
+ id="g5818-5"
+ style="fill:#000000" />
+ </g>
+ <g
+ transform="matrix(0.91666667,0,0,1,28.823069,1038.8021)"
+ id="g23116">
+ <g
+ transform="matrix(1.25,0,0,1.25,2,2)"
+ id="layer1-2-0"
+ style="fill:#ffffff">
+ <g
+ id="text5399-1"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3-4-5"
+ style="fill:#ffffff">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639-9"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068-8"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125-2"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84-4"
+ style="fill:#ffffff">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5-9"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724-2"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751-9"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37-9"
+ style="fill:#ffffff">
+ <g
+ id="text5141-8"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804-3"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938-8"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ <g
+ transform="translate(43.124145,1027.7513)"
+ id="g22866">
+ <g
+ transform="matrix(0.01602479,0,0,0.01604987,-0.0148518,7.5361455)"
+ id="layer1-9" />
+ </g>
+ <g
+ transform="matrix(0.91666667,0,0,0.91666667,-4e-8,1030.3622)"
+ id="g22992"
+ style="fill:#b3b3b3">
+ <g
+ transform="matrix(0.01602479,0,0,0.01604987,-0.0148518,7.5361455)"
+ id="layer1-1"
+ style="fill:#b3b3b3" />
+ <g
+ transform="matrix(1.1251994,0,0,1.125,2.9999998,3)"
+ id="g5818"
+ style="fill:#b3b3b3" />
+ </g>
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="matrix(1.125,0,0,1.0860769,2,1032.3622)"
+ id="layer1-0">
+ <g
+ id="text5399-8"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3-1-2">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639-0"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068-9"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125-2-0"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84-4-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-9"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724-1"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751-5"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37-7">
+ <g
+ id="text5141-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804-3-2"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(0.91666667,0,0,0.91666667,-4e-8,1030.3622)"
+ id="g23227"
+ style="fill:#808080">
+ <g
+ transform="matrix(0.01602479,0,0,0.01604987,-0.0148518,7.5361455)"
+ id="layer1-8-2"
+ style="fill:#808080" />
+ <g
+ transform="matrix(1.1251994,0,0,1.125,2.9999998,3)"
+ id="g5818-55"
+ style="fill:#808080" />
+ </g>
+ </g>
+ <path
+ d="m 10.723782,2.1610171 c -1.5255113,0 -2.7621824,1.2366711 -2.7621824,2.7621823 0,0.4249638 0.1047718,0.8142826 0.2762182,1.1739274 -0.046899,-0.00236 -0.090623,0 -0.138109,0 -1.5255112,0 -2.7621823,1.2366711 -2.7621823,2.7621822 0,0.4739981 0.1003932,0.9222421 0.3107455,1.312036 -1.1494161,0.334271 -2.0025821,1.366793 -2.0025821,2.624073 0,0.606454 0.2211016,1.167175 0.5524364,1.622782 -1.1705706,0.320601 -2.0371094,1.386287 -2.0371094,2.658601 0,1.525511 1.2366711,2.762182 2.7621823,2.762182 0.8085208,0 1.531969,-0.344057 2.0371093,-0.897709 0.5055462,0.560613 1.2573015,0.897709 2.0716368,0.897709 0.7799487,0 1.4657827,-0.308802 1.9680547,-0.828655 0.502272,0.519853 1.222634,0.828655 2.002582,0.828655 0.814336,0 1.531564,-0.337096 2.037109,-0.897709 0.505141,0.553652 1.228589,0.897709 2.03711,0.897709 1.525511,0 2.762182,-1.236671 2.762182,-2.762182 0,-1.296051 -0.902153,-2.36075 -2.106164,-2.658601 0.323599,-0.452403 0.517909,-1.024144 0.517909,-1.622782 0,-1.38176 -1.023023,-2.489647 -2.347855,-2.693127 0.139775,-0.330463 0.207164,-0.7234951 0.207164,-1.1048729 0,-1.5255111 -1.236671,-2.7621822 -2.762182,-2.7621822 -0.08361,0 -0.159972,0.027254 -0.241691,0.034527 0.22406,-0.3991828 0.3798,-0.856221 0.3798,-1.3465638 0,-1.5255112 -1.236671,-2.7621823 -2.762182,-2.7621823 z m -0.172637,5.5243645 c 0.05843,0.00369 0.113279,0 0.172637,0 0.0831,0 0.160456,0.00718 0.241691,0 C 10.88131,7.835952 10.778888,7.9679712 10.723782,8.1342362 10.68072,7.9784966 10.619504,7.8287784 10.551145,7.6853816 z m 0.13811,2.0371093 c 0.03089,0.1185382 0.05791,0.2334961 0.103581,0.3452731 -0.08236,0.0042 -0.161399,0.02322 -0.241691,0.03453 0.05971,-0.1183971 0.09569,-0.2523943 0.13811,-0.3798001 z"
+ id="path3125"
+ style="fill:#ffffff;fill-rule:evenodd;stroke:none" />
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/new.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/new.svg
new file mode 100644
index 00000000..b02def09
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/new.svg
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="8px" height="8px" viewBox="0 0 8 8" enable-background="new 0 0 8 8" xml:space="preserve">
+<polygon fill="#6393CD" points="8,3 5,3 5,0 3,0 3,3 0,3 0,5 3,5 3,8 5,8 5,5 8,5 "/>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/popupmenufollower.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/popupmenufollower.svg
new file mode 100644
index 00000000..b285c884
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/popupmenufollower.svg
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="18px" height="18px" viewBox="0 0 18 18" enable-background="new 0 0 18 18" xml:space="preserve">
+<g id="layer1" transform="translate(0,-1040.3622)">
+ <g id="g3792">
+ <path id="rect2985" fill="#E45E12" d="M3.366,1040.362h11.268c1.859,0,3.366,1.508,3.366,3.366v11.268
+ c0,1.86-1.507,3.366-3.366,3.366H3.366c-1.859,0-3.366-1.506-3.366-3.366v-11.268C0,1041.87,1.507,1040.362,3.366,1040.362z"/>
+ <path id="path3761" fill="#FFFFFF" d="M3.422,1043.034l-1.219,1.313l5.203,4.828l-4.453,5.25l1.359,1.172l5.016-5.906l0.563-0.656
+ l-0.656-0.609L3.422,1043.034z M10.031,1043.034l-1.219,1.313l5.203,4.828l-4.453,5.25l1.359,1.172l5.016-5.906l0.516-0.656
+ l-0.609-0.609L10.031,1043.034z"/>
+ </g>
+</g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/resourceType.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/resourceType.svg
new file mode 100644
index 00000000..4caf88a0
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/resourceType.svg
@@ -0,0 +1,211 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg9974">
+ <defs
+ id="defs9976">
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-8" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-9" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-6" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-4" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-1" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-6" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-7" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-3" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font3933-9" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-5" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-60" />
+ <font
+ horiz-origin-x="0"
+ horiz-origin-y="0"
+ horiz-adv-x="1024"
+ vert-origin-x="45"
+ vert-origin-y="90"
+ vert-adv-y="90"
+ id="font4968-33" />
+ </defs>
+ <metadata
+ id="metadata9979">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="matrix(1.15625,0,0,1.2291667,1.75,1.75)"
+ id="layer1">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="g3435">
+ <path
+ d="M 3.6562499,0 C 1.6217799,0 -7.5000001e-8,1.70267 -7.5000001e-8,3.8125 l 0,14.375 C -7.5000001e-8,20.29732 1.6217799,22 3.6562499,22 L 18.34375,22 C 20.37823,22 22,20.29732 22,18.1875 L 22,3.8125 C 22,1.70267 20.37823,0 18.34375,0 z"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <path
+ d="m 3.4218749,3.59375 0,3.5 9.2500001,0 0,-3.5 -9.2500001,0 z m 13.4062501,0 c -0.966498,0 -1.75,0.7835017 -1.75,1.75 0,0.9664983 0.783502,1.75 1.75,1.75 0.966498,0 1.75,-0.7835017 1.75,-1.75 0,-0.9664983 -0.783502,-1.75 -1.75,-1.75 z"
+ id="rect3263"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <path
+ d="m 3.4218749,9.3117053 0,3.4999997 9.2500001,0 0,-3.4999997 -9.2500001,0 z m 13.4062501,0 c -0.966498,0 -1.75,0.7835017 -1.75,1.7499997 0,0.966499 0.783502,1.75 1.75,1.75 0.966498,0 1.75,-0.783501 1.75,-1.75 0,-0.966498 -0.783502,-1.7499997 -1.75,-1.7499997 z"
+ id="rect3263-1"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <path
+ d="m 3.4218749,15.029661 0,3.5 9.2500001,0 0,-3.5 -9.2500001,0 z m 13.4062501,0 c -0.966498,0 -1.75,0.783502 -1.75,1.75 0,0.966499 0.783502,1.75 1.75,1.75 0.966498,0 1.75,-0.783501 1.75,-1.75 0,-0.966498 -0.783502,-1.75 -1.75,-1.75 z"
+ id="rect3263-4"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/stop.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/stop.svg
new file mode 100644
index 00000000..4938127a
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/stop.svg
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
+ width="10px" height="10px" viewBox="0 0 10 10" enable-background="new 0 0 10 10" xml:space="preserve">
+<g id="g4763">
+ <g id="layer1-7" transform="matrix(0.91787765,0,0,0.91736642,-0.6374356,-0.15374916)">
+ <g id="text4267">
+ </g>
+ <g id="text4597" transform="scale(0.92423852,1.0819718)">
+ </g>
+ </g>
+ <path id="rect4876" inkscape:connector-curvature="0" fill="#C9161D" d="M1.504,0C0.67,0,0,0.67,0,1.504v6.992
+ C0,9.33,0.67,10,1.504,10h6.992C9.33,10,10,9.33,10,8.496V1.504C10,0.67,9.33,0,8.496,0H1.504z M1.855,1.25h6.289
+ c0.334,0,0.605,0.271,0.605,0.605v6.289c0,0.334-0.271,0.605-0.605,0.605H1.855c-0.334,0-0.605-0.271-0.605-0.605V1.855
+ C1.25,1.521,1.521,1.25,1.855,1.25z M2.891,2.891v4.219h4.219V2.891H2.891z"/>
+</g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/tree-icon.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/tree-icon.svg
new file mode 100644
index 00000000..a6fcc03f
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/tree-icon.svg
@@ -0,0 +1,291 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="22"
+ height="22"
+ id="svg15992"
+ version="1.1"
+ inkscape:version="0.48.4 r9939"
+ sodipodi:docname="uep-moc-uca-public.svg">
+ <defs
+ id="defs15994" />
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="19.671598"
+ inkscape:cx="20.671554"
+ inkscape:cy="10.790811"
+ inkscape:document-units="px"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:window-width="1440"
+ inkscape:window-height="844"
+ inkscape:window-x="-4"
+ inkscape:window-y="-4"
+ inkscape:window-maximized="1" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(0,-1030.3622)">
+ <g
+ id="layer1-8"
+ transform="translate(3,1033.8577)">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="layer1-2"
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)">
+ <g
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
+ id="text7308-2"
+ transform="scale(0.93557544,1.0688609)" />
+ </g>
+ <g
+ id="layer1-29"
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)" />
+ <g
+ id="layer1-3-2"
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)">
+ <g
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
+ id="text7308-5"
+ transform="scale(0.93557544,1.0688609)" />
+ </g>
+ <g
+ id="layer1-3-1"
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)">
+ <g
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
+ id="text7308-7"
+ transform="scale(0.93557544,1.0688609)" />
+ </g>
+ <g
+ id="layer1-6"
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)">
+ <g
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
+ id="text7308-3"
+ transform="scale(0.93557544,1.0688609)" />
+ </g>
+ <g
+ id="layer1-2-2"
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)">
+ <g
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
+ id="text7308-2-5"
+ transform="scale(0.93557544,1.0688609)" />
+ </g>
+ <g
+ id="g18916"
+ transform="translate(16.574815,1039.9887)">
+ <g
+ id="layer1-37-1"
+ transform="translate(0,-1036.3622)">
+ <g
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
+ id="text7308-75"
+ transform="scale(0.93557544,1.0688609)" />
+ </g>
+ <g
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
+ id="text3074-3" />
+ <g
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
+ id="text3330-4" />
+ <g
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
+ id="text3334-3" />
+ <g
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
+ id="text3420"
+ transform="scale(1.0025516,0.99745489)" />
+ </g>
+ <g
+ id="layer1-03"
+ transform="translate(2.0604683,1034.7666)" />
+ <g
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
+ id="text21552" />
+ <g
+ id="layer1-6-9"
+ transform="matrix(1.15625,0,0,1.2332508,1.75,1032.1122)">
+ <g
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
+ id="text5399-0" />
+ </g>
+ <g
+ id="g22144"
+ transform="matrix(1.15625,0,0,1.2282158,1.75,1035.4682)">
+ <g
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
+ id="text12320" />
+ </g>
+ <g
+ id="layer1-3-4"
+ transform="matrix(1.1250848,0,0,1.1285478,1.9999998,1032.3054)" />
+ <g
+ id="g23063"
+ transform="matrix(0.91666667,0,0,0.91666667,-4e-8,1030.3622)"
+ style="fill:#000000">
+ <g
+ id="layer1-4"
+ transform="matrix(0.01602479,0,0,0.01604987,-0.0148518,7.5361455)"
+ style="fill:#000000" />
+ <g
+ style="fill:#000000"
+ id="g5818-5"
+ transform="matrix(1.1251994,0,0,1.125,2.9999998,3)" />
+ </g>
+ <g
+ id="g23116"
+ transform="matrix(0.91666667,0,0,1,28.823069,1038.8021)">
+ <g
+ style="fill:#ffffff"
+ id="layer1-2-0"
+ transform="matrix(1.25,0,0,1.25,2,2)">
+ <g
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
+ id="text5399-1" />
+ <g
+ style="fill:#ffffff"
+ id="layer1-3-4-5"
+ transform="translate(0,-1036.4247)">
+ <g
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
+ id="text5639-9"
+ transform="scale(0.89723629,1.1145336)" />
+ <g
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
+ id="text6068-8"
+ transform="scale(1.0195853,0.98079088)" />
+ <g
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
+ id="text6125-2" />
+ </g>
+ <g
+ style="fill:#ffffff"
+ id="layer1-84-4"
+ transform="translate(0,-1036.3622)">
+ <g
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
+ id="text7308-5-9"
+ transform="scale(0.93557544,1.0688609)" />
+ </g>
+ <g
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
+ id="text5724-2"
+ transform="scale(0.9686171,1.0323997)" />
+ <g
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
+ id="text5751-9" />
+ <g
+ style="fill:#ffffff"
+ id="layer1-37-9">
+ <g
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
+ id="text5141-8" />
+ </g>
+ <g
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
+ id="text5804-3"
+ transform="scale(1.0995518,0.90946149)" />
+ <g
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold"
+ id="text5938-8"
+ transform="scale(0.94725198,1.0556853)" />
+ </g>
+ </g>
+ <path
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="M 3.65625 0 C 1.62178 0 0 1.7027 0 3.8125 L 0 18.1875 C 0 20.2973 1.62178 22 3.65625 22 L 18.34375 22 C 20.37823 22 22 20.2973 22 18.1875 L 22 3.8125 C 22 1.7027 20.37823 0 18.34375 0 L 3.65625 0 z M 8.9375 2.75 L 13.0625 2.75 L 13.0625 6.875 L 12.15625 6.875 L 12.15625 8.9375 L 17.1875 8.9375 L 17.1875 11 L 17.1875 15.125 L 19.25 15.125 L 19.25 19.25 L 13.0625 19.25 L 13.0625 15.125 L 15.125 15.125 L 15.125 11 L 6.875 11 L 6.875 15.125 L 8.9375 15.125 L 8.9375 19.25 L 2.75 19.25 L 2.75 15.125 L 4.8125 15.125 L 4.8125 11 L 4.8125 8.9375 L 10.03125 8.9375 L 10.03125 6.875 L 8.9375 6.875 L 8.9375 2.75 z "
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4" />
+ <g
+ id="g22866"
+ transform="matrix(0.91666667,0,0,0.91666667,-4.0000003e-8,1030.3622)"
+ style="fill:#808080">
+ <g
+ id="layer1-9"
+ transform="matrix(0.01602479,0,0,0.01604987,-0.0148518,7.5361455)"
+ style="fill:#808080" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/uep-moc-root.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/uep-moc-root.svg
new file mode 100644
index 00000000..23a7a739
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/uep-moc-root.svg
@@ -0,0 +1,355 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(2.0604683,1034.7666)"
+ id="layer1-03" />
+ <g
+ id="text21552"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="matrix(1.15625,0,0,1.2332508,1.75,1032.1122)"
+ id="layer1-6-9">
+ <g
+ id="text5399-0"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.15625,0,0,1.2282158,1.75,1035.4682)"
+ id="g22144">
+ <g
+ id="text12320"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.1250848,0,0,1.1285478,1.9999998,1032.3054)"
+ id="layer1-3-4" />
+ <g
+ transform="matrix(0.91666667,0,0,0.91666667,-4e-8,1030.3622)"
+ id="g23063"
+ style="fill:#000000">
+ <g
+ transform="matrix(0.01602479,0,0,0.01604987,-0.0148518,7.5361455)"
+ id="layer1-4"
+ style="fill:#000000" />
+ <g
+ transform="matrix(1.1251994,0,0,1.125,2.9999998,3)"
+ id="g5818-5"
+ style="fill:#000000" />
+ </g>
+ <g
+ transform="matrix(0.91666667,0,0,1,28.823069,1038.8021)"
+ id="g23116">
+ <g
+ transform="matrix(1.25,0,0,1.25,2,2)"
+ id="layer1-2-0"
+ style="fill:#ffffff">
+ <g
+ id="text5399-1"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3-4-5"
+ style="fill:#ffffff">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639-9"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068-8"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125-2"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84-4"
+ style="fill:#ffffff">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5-9"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724-2"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751-9"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37-9"
+ style="fill:#ffffff">
+ <g
+ id="text5141-8"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804-3"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938-8"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ <g
+ transform="translate(43.124145,1027.7513)"
+ id="g22866">
+ <g
+ transform="matrix(0.01602479,0,0,0.01604987,-0.0148518,7.5361455)"
+ id="layer1-9" />
+ </g>
+ <g
+ transform="matrix(0.91666667,0,0,0.91666667,-4e-8,1030.3622)"
+ id="g22992"
+ style="fill:#b3b3b3">
+ <g
+ transform="matrix(0.01602479,0,0,0.01604987,-0.0148518,7.5361455)"
+ id="layer1-1"
+ style="fill:#b3b3b3" />
+ <g
+ transform="matrix(1.1251994,0,0,1.125,2.9999998,3)"
+ id="g5818"
+ style="fill:#b3b3b3" />
+ </g>
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z m 0.46875,3.59375 6.40625,0 0.28125,1.09375 7.46875,0 0.53125,1.15625 -15.71875,0 1.03125,-2.25 z M 2,7.65625 l 18,0 -1.09375,10.75 -15.78125,0 L 2,7.65625 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="matrix(1.125,0,0,1.0860769,2,1032.3622)"
+ id="layer1-0">
+ <g
+ id="text5399-8"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3-1-2">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639-0"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068-9"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125-2-0"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84-4-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-9"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724-1"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751-5"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37-7">
+ <g
+ id="text5141-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804-3-2"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(0.91666667,0,0,0.91666667,-4e-8,1030.3622)"
+ id="g23227"
+ style="fill:#808080">
+ <g
+ transform="matrix(0.01602479,0,0,0.01604987,-0.0148518,7.5361455)"
+ id="layer1-8-2"
+ style="fill:#808080" />
+ <g
+ transform="matrix(1.1251994,0,0,1.125,2.9999998,3)"
+ id="g5818-55"
+ style="fill:#808080" />
+ </g>
+ <g
+ transform="matrix(0.91666667,0,0,0.91666667,-4e-8,1030.3622)"
+ id="g23270"
+ style="fill:#666666">
+ <g
+ transform="matrix(0.01602479,0,0,0.01604987,-0.0148518,7.5361455)"
+ id="layer1-5"
+ style="fill:#666666" />
+ <g
+ transform="matrix(1.1251994,0,0,1.125,2.9999998,3)"
+ id="g5818-4"
+ style="fill:#666666" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/uep-moc-uca-public.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/uep-moc-uca-public.svg
new file mode 100644
index 00000000..ad51e7f8
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/uep-moc-uca-public.svg
@@ -0,0 +1,329 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(2.0604683,1034.7666)"
+ id="layer1-03" />
+ <g
+ id="text21552"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="matrix(1.15625,0,0,1.2332508,1.75,1032.1122)"
+ id="layer1-6-9">
+ <g
+ id="text5399-0"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.15625,0,0,1.2282158,1.75,1035.4682)"
+ id="g22144">
+ <g
+ id="text12320"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.1250848,0,0,1.1285478,1.9999998,1032.3054)"
+ id="layer1-3-4" />
+ <g
+ transform="matrix(0.91666667,0,0,0.91666667,-4e-8,1030.3622)"
+ id="g23063"
+ style="fill:#000000">
+ <g
+ transform="matrix(0.01602479,0,0,0.01604987,-0.0148518,7.5361455)"
+ id="layer1-4"
+ style="fill:#000000" />
+ <g
+ transform="matrix(1.1251994,0,0,1.125,2.9999998,3)"
+ id="g5818-5"
+ style="fill:#000000" />
+ </g>
+ <g
+ transform="matrix(0.91666667,0,0,1,28.823069,1038.8021)"
+ id="g23116">
+ <g
+ transform="matrix(1.25,0,0,1.25,2,2)"
+ id="layer1-2-0"
+ style="fill:#ffffff">
+ <g
+ id="text5399-1"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3-4-5"
+ style="fill:#ffffff">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639-9"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068-8"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125-2"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84-4"
+ style="fill:#ffffff">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5-9"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724-2"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751-9"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37-9"
+ style="fill:#ffffff">
+ <g
+ id="text5141-8"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804-3"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938-8"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ <g
+ transform="translate(43.124145,1027.7513)"
+ id="g22866">
+ <g
+ transform="matrix(0.01602479,0,0,0.01604987,-0.0148518,7.5361455)"
+ id="layer1-9" />
+ </g>
+ <g
+ transform="matrix(0.91666667,0,0,0.91666667,-4e-8,1030.3622)"
+ id="g22992"
+ style="fill:#b3b3b3">
+ <g
+ transform="matrix(0.01602479,0,0,0.01604987,-0.0148518,7.5361455)"
+ id="layer1-1"
+ style="fill:#b3b3b3" />
+ <g
+ transform="matrix(1.1251994,0,0,1.125,2.9999998,3)"
+ id="g5818"
+ style="fill:#b3b3b3" />
+ </g>
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z M 3.5,2 18.5,2 C 19.334554,2 20,2.6630701 20,3.46875 L 20,12.5 c 0,0.80568 -0.665446,1.4375 -1.5,1.4375 l -4.125,0 0,1.5625 3.25,0 0,1.4375 -3.25,0 -1.6875,0 0,-3 -3.375,0 0,3 -1.6875,0 -3.25,0 0,-1.4375 3.25,0 0,-1.5625 -4.125,0 C 2.665446,13.9375 2,13.30568 2,12.5 L 2,3.46875 C 2,2.6630701 2.665446,2 3.5,2 z m 0.4375,1.90625 0,7.96875 14.125,0 0,-7.96875 -14.125,0 z m 0.4375,14.6875 13.25,0 0,1.40625 -13.25,0 0,-1.40625 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="matrix(1.125,0,0,1.0860769,2,1032.3622)"
+ id="layer1-0">
+ <g
+ id="text5399-8"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3-1-2">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639-0"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068-9"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125-2-0"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84-4-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-9"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724-1"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751-5"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37-7">
+ <g
+ id="text5141-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804-3-2"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/uep-topo-commongroup20x20.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/uep-topo-commongroup20x20.svg
new file mode 100644
index 00000000..2b3b2f4a
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/uep-topo-commongroup20x20.svg
@@ -0,0 +1,278 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(2.0604683,1034.7666)"
+ id="layer1-03" />
+ <g
+ id="text21552"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="matrix(1.15625,0,0,1.2332508,1.75,1032.1122)"
+ id="layer1-6-9">
+ <g
+ id="text5399-0"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.15625,0,0,1.2282158,1.75,1035.4682)"
+ id="g22144">
+ <g
+ id="text12320"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.1250848,0,0,1.1285478,1.9999998,1032.3054)"
+ id="layer1-3-4" />
+ <g
+ transform="matrix(0.91666667,0,0,0.91666667,-4e-8,1030.3622)"
+ id="g23063"
+ style="fill:#000000">
+ <g
+ transform="matrix(0.01602479,0,0,0.01604987,-0.0148518,7.5361455)"
+ id="layer1-4"
+ style="fill:#000000" />
+ <g
+ transform="matrix(1.1251994,0,0,1.125,2.9999998,3)"
+ id="g5818-5"
+ style="fill:#000000" />
+ </g>
+ <g
+ transform="matrix(0.91666667,0,0,1,28.823069,1038.8021)"
+ id="g23116">
+ <g
+ transform="matrix(1.25,0,0,1.25,2,2)"
+ id="layer1-2-0"
+ style="fill:#ffffff">
+ <g
+ id="text5399-1"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3-4-5"
+ style="fill:#ffffff">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639-9"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068-8"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125-2"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84-4"
+ style="fill:#ffffff">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5-9"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724-2"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751-9"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37-9"
+ style="fill:#ffffff">
+ <g
+ id="text5141-8"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804-3"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938-8"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z M 2.75,4.59375 l 16.5,0 0,3.1875 -1.53125,0 0,5.4375 c 0.889658,0.237377 1.53125,1.065797 1.53125,2.0625 0,1.181276 -0.923412,2.125 -2.0625,2.125 -1.139088,0 -2.0625,-0.943724 -2.0625,-2.125 0,-0.996703 0.672842,-1.825123 1.5625,-2.0625 l 0,-5.4375 -5.15625,0 0,5.4375 c 0.889659,0.237377 1.53125,1.065797 1.53125,2.0625 0,1.181276 -0.923412,2.125 -2.0625,2.125 -1.1390867,0 -2.0625,-0.943724 -2.0625,-2.125 0,-0.996703 0.641592,-1.825123 1.53125,-2.0625 l 0,-5.4375 -5.15625,0 0,5.4375 c 0.889658,0.237377 1.5625,1.065797 1.5625,2.0625 0,1.181276 -0.9234124,2.125 -2.0625,2.125 -1.1390867,0 -2.0625,-0.943724 -2.0625,-2.125 0,-0.996703 0.641592,-1.825123 1.53125,-2.0625 l 0,-5.4375 -1.53125,0 0,-3.1875 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="translate(43.124145,1027.7513)"
+ id="g22866">
+ <g
+ transform="matrix(0.01602479,0,0,0.01604987,-0.0148518,7.5361455)"
+ id="layer1-9" />
+ </g>
+ <g
+ transform="matrix(0.91666667,0,0,0.91666667,-4e-8,1030.3622)"
+ id="g22992"
+ style="fill:#b3b3b3">
+ <g
+ transform="matrix(0.01602479,0,0,0.01604987,-0.0148518,7.5361455)"
+ id="layer1-1"
+ style="fill:#b3b3b3" />
+ <g
+ transform="matrix(1.1251994,0,0,1.125,2.9999998,3)"
+ id="g5818"
+ style="fill:#b3b3b3" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/uep-topo-group20x20.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/uep-topo-group20x20.svg
new file mode 100644
index 00000000..5242752a
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/uep-topo-group20x20.svg
@@ -0,0 +1,277 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(2.0604683,1034.7666)"
+ id="layer1-03" />
+ <g
+ id="text21552"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="matrix(1.15625,0,0,1.2332508,1.75,1032.1122)"
+ id="layer1-6-9">
+ <g
+ id="text5399-0"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.15625,0,0,1.2282158,1.75,1035.4682)"
+ id="g22144">
+ <g
+ id="text12320"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.1250848,0,0,1.1285478,1.9999998,1032.3054)"
+ id="layer1-3-4" />
+ <g
+ transform="matrix(0.91666667,0,0,0.91666667,-4e-8,1030.3622)"
+ id="g23063"
+ style="fill:#000000">
+ <g
+ transform="matrix(0.01602479,0,0,0.01604987,-0.0148518,7.5361455)"
+ id="layer1-4"
+ style="fill:#000000" />
+ <g
+ transform="matrix(1.1251994,0,0,1.125,2.9999998,3)"
+ id="g5818-5"
+ style="fill:#000000" />
+ </g>
+ <g
+ transform="matrix(0.91666667,0,0,1,28.823069,1038.8021)"
+ id="g23116">
+ <g
+ transform="matrix(1.25,0,0,1.25,2,2)"
+ id="layer1-2-0"
+ style="fill:#ffffff">
+ <g
+ id="text5399-1"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3-4-5"
+ style="fill:#ffffff">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639-9"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068-8"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125-2"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84-4"
+ style="fill:#ffffff">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5-9"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724-2"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751-9"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37-9"
+ style="fill:#ffffff">
+ <g
+ id="text5141-8"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804-3"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938-8"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ <g
+ transform="translate(43.124145,1027.7513)"
+ id="g22866">
+ <g
+ transform="matrix(0.01602479,0,0,0.01604987,-0.0148518,7.5361455)"
+ id="layer1-9" />
+ </g>
+ <g
+ transform="matrix(0.91666667,0,0,0.91666667,-4e-8,1030.3622)"
+ id="g22992"
+ style="fill:#b3b3b3">
+ <g
+ transform="matrix(0.01602479,0,0,0.01604987,-0.0148518,7.5361455)"
+ id="layer1-1"
+ style="fill:#b3b3b3" />
+ <g
+ transform="matrix(1.1251994,0,0,1.125,2.9999998,3)"
+ id="g5818"
+ style="fill:#b3b3b3" />
+ </g>
+ <path
+ d="M 3.6562497,1030.3622 C 1.6217797,1030.3622 0,1032.0649 0,1034.1747 l 0,14.375 c 0,2.1098 1.6217797,3.8125 3.6562497,3.8125 l 14.6875003,0 c 2.03448,0 3.65625,-1.7027 3.65625,-3.8125 l 0,-14.375 c 0,-2.1098 -1.62177,-3.8125 -3.65625,-3.8125 l -14.6875003,0 z m -0.90625,4.5938 16.5000003,0 0,3.1875 -1.53125,0 0,5.375 1.53125,0 0,4.25 -4.125,0 0,-4.25 1.5625,0 0,-5.375 -5.15625,0 0,5.375 1.53125,0 0,4.25 -4.1250003,0 0,-4.25 1.5312503,0 0,-5.375 -5.1562503,0 0,5.375 1.5625,0 0,4.25 -4.125,0 0,-4.25 1.53125,0 0,-5.375 -1.53125,0 0,-3.1875 z"
+ id="rect3001-7-4-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/uep-topo-root.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/uep-topo-root.svg
new file mode 100644
index 00000000..899d4e11
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/uep-topo-root.svg
@@ -0,0 +1,259 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(2.0604683,1034.7666)"
+ id="layer1-03" />
+ <g
+ id="text21552"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="matrix(1.15625,0,0,1.2332508,1.75,1032.1122)"
+ id="layer1-6-9">
+ <g
+ id="text5399-0"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.15625,0,0,1.2282158,1.75,1035.4682)"
+ id="g22144">
+ <g
+ id="text12320"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.1250848,0,0,1.1285478,1.9999998,1032.3054)"
+ id="layer1-3-4" />
+ <g
+ transform="matrix(0.91666667,0,0,0.91666667,-4e-8,1030.3622)"
+ id="g23063"
+ style="fill:#000000">
+ <g
+ transform="matrix(0.01602479,0,0,0.01604987,-0.0148518,7.5361455)"
+ id="layer1-4"
+ style="fill:#000000" />
+ <g
+ transform="matrix(1.1251994,0,0,1.125,2.9999998,3)"
+ id="g5818-5"
+ style="fill:#000000" />
+ </g>
+ <g
+ transform="matrix(0.91666667,0,0,0.91666667,-4e-8,1030.3622)"
+ id="g23116"
+ style="fill:#4d4d4d">
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z M 3.375,1.84375 l 15.25,0 c 0.850009,0 1.53125,0.6812412 1.53125,1.53125 l 0,9.53125 c 0,0.850009 -0.681241,1.53125 -1.53125,1.53125 l -6.0625,0 0.59375,3.09375 c -1.100787,0.482103 -2.376349,0.694797 -4.3125,0 L 9.625,14.4375 l -6.25,0 c -0.8500088,0 -1.53125,-0.681241 -1.53125,-1.53125 l 0,-9.53125 c 0,-0.8500088 0.6812412,-1.53125 1.53125,-1.53125 z m 0.4375,2 0,8.375 14.375,0 0,-8.375 -14.375,0 z M 7.28125,16.875 c 0.4006063,1.137204 1.8945274,2 3.71875,2 1.824223,0 3.318144,-0.862796 3.71875,-2 0.666505,0.346602 1.09375,0.800622 1.09375,1.28125 0,1.114499 -2.164447,2 -4.8125,2 -2.6480533,0 -4.8125,-0.885501 -4.8125,-2 0,-0.480628 0.427245,-0.934648 1.09375,-1.28125 z"
+ transform="scale(1.0909091,1.0909091)"
+ id="rect4569"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="matrix(1.25,0,0,1.25,2,2)"
+ id="layer1-2-0"
+ style="fill:#4d4d4d">
+ <g
+ id="text5399-1"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#4d4d4d;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3-4-5"
+ style="fill:#4d4d4d">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639-9"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#4d4d4d;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068-8"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#4d4d4d;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125-2"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#4d4d4d;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84-4"
+ style="fill:#4d4d4d">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5-9"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#4d4d4d;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724-2"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#4d4d4d;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751-9"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#4d4d4d;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37-9"
+ style="fill:#4d4d4d">
+ <g
+ id="text5141-8"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#4d4d4d;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804-3"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#4d4d4d;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938-8"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#4d4d4d;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/uep-topo-undefinedgroup20x20.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/uep-topo-undefinedgroup20x20.svg
new file mode 100644
index 00000000..4c0b3644
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/uep-topo-undefinedgroup20x20.svg
@@ -0,0 +1,342 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(2.0604683,1034.7666)"
+ id="layer1-03" />
+ <g
+ id="text21552"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="matrix(1.15625,0,0,1.2332508,1.75,1032.1122)"
+ id="layer1-6-9">
+ <g
+ id="text5399-0"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.15625,0,0,1.2282158,1.75,1035.4682)"
+ id="g22144">
+ <g
+ id="text12320"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.1250848,0,0,1.1285478,1.9999998,1032.3054)"
+ id="layer1-3-4" />
+ <g
+ transform="matrix(0.91666667,0,0,0.91666667,-4e-8,1030.3622)"
+ id="g23063"
+ style="fill:#000000">
+ <g
+ transform="matrix(0.01602479,0,0,0.01604987,-0.0148518,7.5361455)"
+ id="layer1-4"
+ style="fill:#000000" />
+ <g
+ transform="matrix(1.1251994,0,0,1.125,2.9999998,3)"
+ id="g5818-5"
+ style="fill:#000000" />
+ </g>
+ <g
+ transform="matrix(0.91666667,0,0,1,28.823069,1038.8021)"
+ id="g23116">
+ <g
+ transform="matrix(1.25,0,0,1.25,2,2)"
+ id="layer1-2-0"
+ style="fill:#ffffff">
+ <g
+ id="text5399-1"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3-4-5"
+ style="fill:#ffffff">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639-9"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068-8"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125-2"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84-4"
+ style="fill:#ffffff">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5-9"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724-2"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751-9"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37-9"
+ style="fill:#ffffff">
+ <g
+ id="text5141-8"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804-3"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938-8"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ <g
+ transform="translate(43.124145,1027.7513)"
+ id="g22866">
+ <g
+ transform="matrix(0.01602479,0,0,0.01604987,-0.0148518,7.5361455)"
+ id="layer1-9" />
+ </g>
+ <g
+ transform="matrix(0.91666667,0,0,0.91666667,-4e-8,1030.3622)"
+ id="g22992"
+ style="fill:#b3b3b3">
+ <g
+ transform="matrix(0.01602479,0,0,0.01604987,-0.0148518,7.5361455)"
+ id="layer1-1"
+ style="fill:#b3b3b3" />
+ <g
+ transform="matrix(1.1251994,0,0,1.125,2.9999998,3)"
+ id="g5818"
+ style="fill:#b3b3b3" />
+ </g>
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z M 2.75,4.59375 l 16.5,0 0,3.1875 -1.53125,0 0,5.375 1.53125,0 0,4.25 -4.125,0 0,-4.25 1.5625,0 0,-5.375 -5.15625,0 0,5.375 1.53125,0 0,4.25 -4.125,0 0,-4.25 1.53125,0 0,-5.375 -5.15625,0 0,5.375 1.5625,0 0,4.25 -4.125,0 0,-4.25 1.53125,0 0,-5.375 -1.53125,0 0,-3.1875 z m 1.03125,9.625 0,2.125 2.0625,0 0,-2.125 -2.0625,0 z m 6.1875,0 0,2.125 2.0625,0 0,-2.125 -2.0625,0 z m 6.1875,0 0,2.125 2.0625,0 0,-2.125 -2.0625,0 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="matrix(1.125,0,0,1.0860769,2,1032.3622)"
+ id="layer1-0">
+ <g
+ id="text5399-8"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3-1-2">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639-0"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068-9"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125-2-0"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84-4-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-9"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724-1"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751-5"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37-7">
+ <g
+ id="text5141-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804-3-2"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(0.91666667,0,0,0.91666667,-4e-8,1030.3622)"
+ id="g23227"
+ style="fill:#808080">
+ <g
+ transform="matrix(0.01602479,0,0,0.01604987,-0.0148518,7.5361455)"
+ id="layer1-8-2"
+ style="fill:#808080" />
+ <g
+ transform="matrix(1.1251994,0,0,1.125,2.9999998,3)"
+ id="g5818-55"
+ style="fill:#808080" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/uep-topo-virtual20x20.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/uep-topo-virtual20x20.svg
new file mode 100644
index 00000000..3b25a6b8
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/uep-topo-virtual20x20.svg
@@ -0,0 +1,355 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="22"
+ id="svg15992">
+ <defs
+ id="defs15994" />
+ <metadata
+ id="metadata15997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1030.3622)"
+ id="layer1">
+ <g
+ transform="translate(3,1033.8577)"
+ id="layer1-8">
+ <g
+ id="text5399"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37">
+ <g
+ id="text5141"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.3669903,0,0,1.375,30.30548,-396.96631)"
+ id="layer1-849">
+ <g
+ id="text7004"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,26.097206,-407.46806)"
+ id="layer1-29" />
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-3-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-7"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.5,0,0,1.5,-29.444014,-522.91085)"
+ id="layer1-6">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-3"
+ style="font-size:6.13837099px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.375,0,0,1.375,0,-394.63583)"
+ id="layer1-2-2">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-2-5"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(16.574815,1039.9887)"
+ id="g18916">
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-37-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-75"
+ style="font-size:8.38767338px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ id="text3074-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3330-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text3334-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0025516,0.99745489)"
+ id="text3420"
+ style="font-size:8.28998661px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(2.0604683,1034.7666)"
+ id="layer1-03" />
+ <g
+ id="text21552"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="matrix(1.15625,0,0,1.2332508,1.75,1032.1122)"
+ id="layer1-6-9">
+ <g
+ id="text5399-0"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.15625,0,0,1.2282158,1.75,1035.4682)"
+ id="g22144">
+ <g
+ id="text12320"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(1.1250848,0,0,1.1285478,1.9999998,1032.3054)"
+ id="layer1-3-4" />
+ <g
+ transform="matrix(0.91666667,0,0,0.91666667,-4e-8,1030.3622)"
+ id="g23063"
+ style="fill:#000000">
+ <g
+ transform="matrix(0.01602479,0,0,0.01604987,-0.0148518,7.5361455)"
+ id="layer1-4"
+ style="fill:#000000" />
+ <g
+ transform="matrix(1.1251994,0,0,1.125,2.9999998,3)"
+ id="g5818-5"
+ style="fill:#000000" />
+ </g>
+ <g
+ transform="matrix(0.91666667,0,0,1,28.823069,1038.8021)"
+ id="g23116">
+ <g
+ transform="matrix(1.25,0,0,1.25,2,2)"
+ id="layer1-2-0"
+ style="fill:#ffffff">
+ <g
+ id="text5399-1"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3-4-5"
+ style="fill:#ffffff">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639-9"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068-8"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125-2"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84-4"
+ style="fill:#ffffff">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-5-9"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724-2"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751-9"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37-9"
+ style="fill:#ffffff">
+ <g
+ id="text5141-8"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804-3"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938-8"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ </g>
+ <g
+ transform="translate(43.124145,1027.7513)"
+ id="g22866">
+ <g
+ transform="matrix(0.01602479,0,0,0.01604987,-0.0148518,7.5361455)"
+ id="layer1-9" />
+ </g>
+ <g
+ transform="matrix(0.91666667,0,0,0.91666667,-4e-8,1030.3622)"
+ id="g22992"
+ style="fill:#b3b3b3">
+ <g
+ transform="matrix(0.01602479,0,0,0.01604987,-0.0148518,7.5361455)"
+ id="layer1-1"
+ style="fill:#b3b3b3" />
+ <g
+ transform="matrix(1.1251994,0,0,1.125,2.9999998,3)"
+ id="g5818"
+ style="fill:#b3b3b3" />
+ </g>
+ <path
+ d="M 3.65625,0 C 1.62178,0 0,1.7027 0,3.8125 l 0,14.375 C 0,20.2973 1.62178,22 3.65625,22 l 14.6875,0 C 20.37823,22 22,20.2973 22,18.1875 L 22,3.8125 C 22,1.7027 20.37823,0 18.34375,0 L 3.65625,0 z M 12.8125,2.75 16.15625,5.78125 19.25,3 l 0,6.1875 -2.21875,-1.96875 0,12.03125 -1.5625,0 -0.5,0 -2.59375,0 0,-8.1875 2.59375,0 0,-4.09375 -2.15625,1.96875 0,-6.1875 z M 2.75,11.0625 l 3.09375,0 0,8.1875 -3.09375,0 0,-8.1875 z m 4.8125,0 3.09375,0 0,8.1875 -3.09375,0 0,-8.1875 z"
+ transform="translate(0,1030.3622)"
+ id="rect3001-7-4-4"
+ style="fill:#649be6;fill-opacity:1;fill-rule:nonzero;stroke:none" />
+ <g
+ transform="matrix(1.125,0,0,1.0860769,2,1032.3622)"
+ id="layer1-0">
+ <g
+ id="text5399-8"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="translate(0,-1036.4247)"
+ id="layer1-3-1-2">
+ <g
+ transform="scale(0.89723629,1.1145336)"
+ id="text5639-0"
+ style="font-size:7.97739649px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#cccccc;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.0195853,0.98079088)"
+ id="text6068-9"
+ style="font-size:6.62408876px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text6125-2-0"
+ style="font-size:6px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1-84-4-1">
+ <g
+ transform="scale(0.93557544,1.0688609)"
+ id="text7308-9"
+ style="font-size:8.03458023px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(0.9686171,1.0323997)"
+ id="text5724-1"
+ style="font-size:9.88508701px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="text5751-5"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ id="layer1-37-7">
+ <g
+ id="text5141-3"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="scale(1.0995518,0.90946149)"
+ id="text5804-3-2"
+ style="font-size:6.36623049px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(0.94725198,1.0556853)"
+ id="text5938-4"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+ <g
+ transform="matrix(0.91666667,0,0,0.91666667,-4e-8,1030.3622)"
+ id="g23227"
+ style="fill:#808080">
+ <g
+ transform="matrix(0.01602479,0,0,0.01604987,-0.0148518,7.5361455)"
+ id="layer1-8-2"
+ style="fill:#808080" />
+ <g
+ transform="matrix(1.1251994,0,0,1.125,2.9999998,3)"
+ id="g5818-55"
+ style="fill:#808080" />
+ </g>
+ <g
+ transform="matrix(0.91666667,0,0,0.91666667,-4e-8,1030.3622)"
+ id="g23270"
+ style="fill:#666666">
+ <g
+ transform="matrix(0.01602479,0,0,0.01604987,-0.0148518,7.5361455)"
+ id="layer1-5"
+ style="fill:#666666" />
+ <g
+ transform="matrix(1.1251994,0,0,1.125,2.9999998,3)"
+ id="g5818-4"
+ style="fill:#666666" />
+ </g>
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/uep-topo-wsf-disconnected8x8.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/uep-topo-wsf-disconnected8x8.svg
new file mode 100644
index 00000000..9c93fefd
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/uep-topo-wsf-disconnected8x8.svg
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="10"
+ height="10"
+ id="svg2">
+ <defs
+ id="defs4" />
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1042.3622)"
+ id="layer1">
+ <path
+ d="M 5,0 C 2.2385762,0 0,2.2385763 0,5 0,7.7614237 2.2385762,10 5,10 7.7614238,10 10,7.7614237 10,5 10,2.2385763 7.7614238,0 5,0 z M 2.9375,2.21875 5,4.28125 7.0625,2.21875 7.78125,2.9375 5.71875,5 7.78125,7.0625 7.0625,7.75 5,5.6875 2.9375,7.75 2.21875,7.0625 4.28125,5 2.21875,2.9375 2.9375,2.21875 z"
+ transform="translate(0,1042.3622)"
+ id="path2987"
+ style="fill:#d40000;fill-rule:evenodd;stroke:none" />
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/usf-amf-try-activate.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/usf-amf-try-activate.svg
new file mode 100644
index 00000000..0feced33
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/usf-amf-try-activate.svg
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="10"
+ height="10"
+ id="svg2">
+ <defs
+ id="defs4" />
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1042.3622)"
+ id="layer1">
+ <path
+ d="M 5,0 C 2.2385762,0 0,2.2385763 0,5 0,7.7614237 2.2385762,10 5,10 7.7614238,10 10,7.7614237 10,5 10,2.2385763 7.7614238,0 5,0 z m -2.9375,2.3125 5.875,0 0,0.90625 -2.1875,0 0,4.46875 -1.5,0 0,-4.46875 -2.1875,0 0,-0.90625 z"
+ transform="translate(0,1042.3622)"
+ id="path2987"
+ style="fill:#35aa47;fill-opacity:1;fill-rule:evenodd;stroke:none" />
+ <g
+ id="text3791"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ <g
+ transform="scale(1.1761694,0.85021766)"
+ id="text3799"
+ style="font-size:8.80317307px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/usf-amf-try-active-wait.svg b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/usf-amf-try-active-wait.svg
new file mode 100644
index 00000000..28a38f6b
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/ressvgs/usf-amf-try-active-wait.svg
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="10"
+ height="10"
+ id="svg2">
+ <defs
+ id="defs4" />
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1042.3622)"
+ id="layer1">
+ <path
+ d="M 5,0 C 2.2385762,0 0,2.2385763 0,5 0,7.7614237 2.2385762,10 5,10 7.7614238,10 10,7.7614237 10,5 10,2.2385763 7.7614238,0 5,0 z M 1.71875,2.5 2.75,2.5 3.5,5.9375 4.40625,2.5 5.625,2.5 6.5,6 7.28125,2.5 l 1,0 L 7.0625,7.5 6,7.5 5,3.75 4,7.5 l -1.09375,0 -1.1875,-5 z"
+ transform="translate(0,1042.3622)"
+ id="path2987"
+ style="fill:#35aa47;fill-opacity:1;fill-rule:evenodd;stroke:none" />
+ <g
+ id="text3791"
+ style="font-size:7px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Arial;-inkscape-font-specification:Arial Bold" />
+ </g>
+</svg>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/search-icon-blue.png b/uiframe-iui/src/main/resources/webroot/framework/img/search-icon-blue.png
new file mode 100644
index 00000000..345c3db0
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/search-icon-blue.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/search-icon-brown.png b/uiframe-iui/src/main/resources/webroot/framework/img/search-icon-brown.png
new file mode 100644
index 00000000..2038c6a5
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/search-icon-brown.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/search-icon-purple.png b/uiframe-iui/src/main/resources/webroot/framework/img/search-icon-purple.png
new file mode 100644
index 00000000..af6a91cf
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/search-icon-purple.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/search-icon-red.png b/uiframe-iui/src/main/resources/webroot/framework/img/search-icon-red.png
new file mode 100644
index 00000000..84aefe3f
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/search-icon-red.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/search-icon-white.png b/uiframe-iui/src/main/resources/webroot/framework/img/search-icon-white.png
new file mode 100644
index 00000000..c7532f45
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/search-icon-white.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/search-icon.png b/uiframe-iui/src/main/resources/webroot/framework/img/search-icon.png
new file mode 100644
index 00000000..bae1d730
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/search-icon.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/select-caret.png b/uiframe-iui/src/main/resources/webroot/framework/img/select-caret.png
new file mode 100644
index 00000000..c24827e3
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/select-caret.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/sidebar-menu-arrow-right.png b/uiframe-iui/src/main/resources/webroot/framework/img/sidebar-menu-arrow-right.png
new file mode 100644
index 00000000..c5a8914c
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/sidebar-menu-arrow-right.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/sidebar-menu-arrow-rtl.png b/uiframe-iui/src/main/resources/webroot/framework/img/sidebar-menu-arrow-rtl.png
new file mode 100644
index 00000000..c5a8914c
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/sidebar-menu-arrow-rtl.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/sidebar-menu-arrow.png b/uiframe-iui/src/main/resources/webroot/framework/img/sidebar-menu-arrow.png
new file mode 100644
index 00000000..a02299ab
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/sidebar-menu-arrow.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/sidebar-search-close-blue.png b/uiframe-iui/src/main/resources/webroot/framework/img/sidebar-search-close-blue.png
new file mode 100644
index 00000000..ef92187e
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/sidebar-search-close-blue.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/sidebar-search-close-brown.png b/uiframe-iui/src/main/resources/webroot/framework/img/sidebar-search-close-brown.png
new file mode 100644
index 00000000..9a020b35
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/sidebar-search-close-brown.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/sidebar-search-close-light.png b/uiframe-iui/src/main/resources/webroot/framework/img/sidebar-search-close-light.png
new file mode 100644
index 00000000..25ce84aa
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/sidebar-search-close-light.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/sidebar-search-close-purple.png b/uiframe-iui/src/main/resources/webroot/framework/img/sidebar-search-close-purple.png
new file mode 100644
index 00000000..72d593bf
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/sidebar-search-close-purple.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/sidebar-search-close.png b/uiframe-iui/src/main/resources/webroot/framework/img/sidebar-search-close.png
new file mode 100644
index 00000000..0a520a4e
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/sidebar-search-close.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/sidebar-toggler-grey.jpg b/uiframe-iui/src/main/resources/webroot/framework/img/sidebar-toggler-grey.jpg
new file mode 100644
index 00000000..83855dd5
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/sidebar-toggler-grey.jpg
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/sidebar-toggler-light.jpg b/uiframe-iui/src/main/resources/webroot/framework/img/sidebar-toggler-light.jpg
new file mode 100644
index 00000000..d2c3d97e
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/sidebar-toggler-light.jpg
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/source/logo.png b/uiframe-iui/src/main/resources/webroot/framework/img/source/logo.png
new file mode 100644
index 00000000..a36c5e8b
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/source/logo.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/source/logo_white.png b/uiframe-iui/src/main/resources/webroot/framework/img/source/logo_white.png
new file mode 100644
index 00000000..2a48ef41
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/source/logo_white.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/source/netnumenLogo.png b/uiframe-iui/src/main/resources/webroot/framework/img/source/netnumenLogo.png
new file mode 100644
index 00000000..d899116f
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/source/netnumenLogo.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/source/zte_bg_1.jpg b/uiframe-iui/src/main/resources/webroot/framework/img/source/zte_bg_1.jpg
new file mode 100644
index 00000000..4a7b0722
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/source/zte_bg_1.jpg
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/source/zte_bg_2.jpg b/uiframe-iui/src/main/resources/webroot/framework/img/source/zte_bg_2.jpg
new file mode 100644
index 00000000..db94b166
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/source/zte_bg_2.jpg
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/source/zte_bg_3.jpg b/uiframe-iui/src/main/resources/webroot/framework/img/source/zte_bg_3.jpg
new file mode 100644
index 00000000..f2949dfe
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/source/zte_bg_3.jpg
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/source/zte_logo_ white.png b/uiframe-iui/src/main/resources/webroot/framework/img/source/zte_logo_ white.png
new file mode 100644
index 00000000..a36c5e8b
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/source/zte_logo_ white.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/source/zte_logo_16.gif b/uiframe-iui/src/main/resources/webroot/framework/img/source/zte_logo_16.gif
new file mode 100644
index 00000000..362b825a
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/source/zte_logo_16.gif
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/source/zte_logo_white.png b/uiframe-iui/src/main/resources/webroot/framework/img/source/zte_logo_white.png
new file mode 100644
index 00000000..a36c5e8b
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/source/zte_logo_white.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/source/ztelogo.png b/uiframe-iui/src/main/resources/webroot/framework/img/source/ztelogo.png
new file mode 100644
index 00000000..ebe122a2
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/source/ztelogo.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/syncfusion-icons-white.png b/uiframe-iui/src/main/resources/webroot/framework/img/syncfusion-icons-white.png
new file mode 100644
index 00000000..625dcc09
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/syncfusion-icons-white.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/img/user.png b/uiframe-iui/src/main/resources/webroot/framework/img/user.png
new file mode 100644
index 00000000..f9d5ac4b
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/img/user.png
Binary files differ
diff --git a/uiframe-iui/src/main/resources/webroot/framework/index.html b/uiframe-iui/src/main/resources/webroot/framework/index.html
new file mode 100644
index 00000000..c4e31505
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/index.html
@@ -0,0 +1,25 @@
+<!--
+
+ Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+-->
+<html>
+
+<head>
+ <meta http-equiv="Refresh" content="1;url=login.html"> </head>
+
+<body> Loading... </body>
+
+</html>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/js/Main2moreMenu.js b/uiframe-iui/src/main/resources/webroot/framework/js/Main2moreMenu.js
new file mode 100644
index 00000000..b1647fd0
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/js/Main2moreMenu.js
@@ -0,0 +1,17 @@
+/*
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+var sideBarMenu_to_moreMenu_frame = new Array();
+var horBarMenu_to_moreMenu_frame = new Array();
diff --git a/uiframe-iui/src/main/resources/webroot/framework/js/core/ZteFrameWork.js b/uiframe-iui/src/main/resources/webroot/framework/js/core/ZteFrameWork.js
new file mode 100644
index 00000000..3face17a
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/js/core/ZteFrameWork.js
@@ -0,0 +1,3997 @@
+/*
+主框架
+*/
+/*string类型的去前后空格和format方法*/
+String.prototype.trim = function() {
+ return this.replace(/(^\s*)|(\s*$)/g, "");
+};
+String.prototype.format=function() {
+ if(arguments.length==0) return this;
+ for(var s=this, i=0; i<arguments.length; i++)
+ s=s.replace(new RegExp("\\{"+i+"\\}","g"), arguments[i]);
+ return s;
+};
+String.prototype.startWith=function(str){
+ var reg=new RegExp("^"+str);
+ return reg.test(this);
+};
+String.prototype.endWith=function(str){
+ var reg=new RegExp(str+"$");
+ return reg.test(this);
+};
+
+/*全屏 参考:http://www.alixixi.com/web/a/2015031794521.shtml */
+var s=!function(w,d){
+ var fs={
+ supportsFullScreen:false,
+ isFullScreen:false,
+ requestFullScreen:'',
+ exitFullScreen:'',
+ fullscreenchange:'',
+ prefix:''
+ },
+ aP=['webkit','moz','ms'], //opera 15 支持全屏是webkit内核
+ len=aP.length,
+ i=0;
+ if(d.exitFullscreen){
+ fs.supportsFullScreen=true
+ }else{
+ for(; i<len; i++){
+ if(d[aP[i]+'ExitFullscreen']||d[aP[i]+'CancelFullScreen']){
+ fs.supportsFullScreen=true;
+ fs.prefix=aP[i];
+ break
+ }
+ }
+ }
+ if(fs.supportsFullScreen){
+ var p=fs.prefix;
+ fs.fullscreenchange=function(fn){
+ d.addEventListener(p=='ms' ? 'MSFullscreenChange' : p+'fullscreenchange',function(){
+ fn && fn()
+ },false)
+ };
+ fs.fullscreenchange(function(){
+ fs.isFullScreen=(function(p){
+ switch (p) {
+ case '':
+ return d.fullscreen;
+ case 'webkit':
+ return d.webkitIsFullScreen;
+ case 'moz':
+ return d.mozFullScreen;
+ case 'ms':
+ return d.msFullscreenElement ? true : false
+ }
+ })(p)
+ });
+ fs.requestFullScreen=function(elem){
+ var elem=elem||d.documentElement;
+ try{
+ p ? elem[p+'RequestFullScreen']() : elem.requestFullScreen() //chrome,ff,标准
+ }catch(e){
+ elem[p+'RequestFullscreen']() //elem.msRequestFullscreen
+ }
+ };
+ fs.exitFullScreen=function(){
+ try{
+ p ? d[p+'ExitFullscreen']() : d.exitFullscreen() //ie,新版chrome或标准
+ }catch(e){
+ d[p+'CancelFullScreen']() //老版chrome 火狐
+ }
+ }
+ }
+ w.screenfull=fs
+}(window,document);
+/*
+ * Purl (A JavaScript URL parser) v2.3.1
+ * Developed and maintanined by Mark Perkins, mark@allmarkedup.com
+ * Source repository: https://github.com/allmarkedup/jQuery-URL-Parser
+ * Licensed under an MIT-style license. See https://github.com/allmarkedup/jQuery-URL-Parser/blob/master/LICENSE for details.
+ */
+;(function(factory) {
+ if (typeof define === 'function' && define.amd) {
+ define(factory);
+ } else {
+ window.purl = factory();
+ }
+})(function() {
+ var tag2attr = {
+ a : 'href',
+ img : 'src',
+ form : 'action',
+ base : 'href',
+ script : 'src',
+ iframe : 'src',
+ link : 'href',
+ embed : 'src',
+ object : 'data'
+ },
+
+ key = ['source', 'protocol', 'authority', 'userInfo', 'user', 'password', 'host', 'port', 'relative', 'path', 'directory', 'file', 'query', 'fragment'], // keys available to query
+ aliases = { 'anchor' : 'fragment' }, // aliases for backwards compatability
+ parser = {
+ strict : /^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*):?([^:@]*))?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/, //less intuitive, more accurate to the specs
+ loose : /^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*):?([^:@]*))?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/ // more intuitive, fails on relative paths and deviates from specs
+ },
+ isint = /^[0-9]+$/;
+
+ function parseUri( url, strictMode ) {
+ var str = decodeURI( url ),
+ res = parser[ strictMode || false ? 'strict' : 'loose' ].exec( str ),
+ uri = { attr : {}, param : {}, seg : {} },
+ i = 14;
+ while ( i-- ) {
+ uri.attr[ key[i] ] = res[i] || '';
+ }
+ // build query and fragment parameters
+ uri.param['query'] = parseString(uri.attr['query']);
+ uri.param['fragment'] = parseString(uri.attr['fragment']);
+ // split path and fragement into segments
+ uri.seg['path'] = uri.attr.path.replace(/^\/+|\/+$/g,'').split('/');
+ uri.seg['fragment'] = uri.attr.fragment.replace(/^\/+|\/+$/g,'').split('/');
+ // compile a 'base' domain attribute
+ uri.attr['base'] = uri.attr.host ? (uri.attr.protocol ? uri.attr.protocol+'://'+uri.attr.host : uri.attr.host) + (uri.attr.port ? ':'+uri.attr.port : '') : '';
+
+ return uri;
+ }
+
+ function getAttrName( elm ) {
+ var tn = elm.tagName;
+ if ( typeof tn !== 'undefined' ) return tag2attr[tn.toLowerCase()];
+ return tn;
+ }
+
+ function promote(parent, key) {
+ if (parent[key].length === 0) return parent[key] = {};
+ var t = {};
+ for (var i in parent[key]) t[i] = parent[key][i];
+ parent[key] = t;
+ return t;
+ }
+
+ function parse(parts, parent, key, val) {
+ var part = parts.shift();
+ if (!part) {
+ if (isArray(parent[key])) {
+ parent[key].push(val);
+ } else if ('object' == typeof parent[key]) {
+ parent[key] = val;
+ } else if ('undefined' == typeof parent[key]) {
+ parent[key] = val;
+ } else {
+ parent[key] = [parent[key], val];
+ }
+ } else {
+ var obj = parent[key] = parent[key] || [];
+ if (']' == part) {
+ if (isArray(obj)) {
+ if ('' !== val) obj.push(val);
+ } else if ('object' == typeof obj) {
+ obj[keys(obj).length] = val;
+ } else {
+ obj = parent[key] = [parent[key], val];
+ }
+ } else if (~part.indexOf(']')) {
+ part = part.substr(0, part.length - 1);
+ if (!isint.test(part) && isArray(obj)) obj = promote(parent, key);
+ parse(parts, obj, part, val);
+ // key
+ } else {
+ if (!isint.test(part) && isArray(obj)) obj = promote(parent, key);
+ parse(parts, obj, part, val);
+ }
+ }
+ }
+
+ function merge(parent, key, val) {
+ if (~key.indexOf(']')) {
+ var parts = key.split('[');
+ parse(parts, parent, 'base', val);
+ } else {
+ if (!isint.test(key) && isArray(parent.base)) {
+ var t = {};
+ for (var k in parent.base) t[k] = parent.base[k];
+ parent.base = t;
+ }
+ if (key !== '') {
+ set(parent.base, key, val);
+ }
+ }
+ return parent;
+ }
+
+ function parseString(str) {
+ return reduce(String(str).split(/&|;/), function(ret, pair) {
+ try {
+ pair = decodeURIComponent(pair.replace(/\+/g, ' '));
+ } catch(e) {
+ // ignore
+ }
+ var eql = pair.indexOf('='),
+ brace = lastBraceInKey(pair),
+ key = pair.substr(0, brace || eql),
+ val = pair.substr(brace || eql, pair.length);
+
+ val = val.substr(val.indexOf('=') + 1, val.length);
+
+ if (key === '') {
+ key = pair;
+ val = '';
+ }
+
+ return merge(ret, key, val);
+ }, { base: {} }).base;
+ }
+
+ function set(obj, key, val) {
+ var v = obj[key];
+ if (typeof v === 'undefined') {
+ obj[key] = val;
+ } else if (isArray(v)) {
+ v.push(val);
+ } else {
+ obj[key] = [v, val];
+ }
+ }
+
+ function lastBraceInKey(str) {
+ var len = str.length,
+ brace,
+ c;
+ for (var i = 0; i < len; ++i) {
+ c = str[i];
+ if (']' == c) brace = false;
+ if ('[' == c) brace = true;
+ if ('=' == c && !brace) return i;
+ }
+ }
+
+ function reduce(obj, accumulator){
+ var i = 0,
+ l = obj.length >> 0,
+ curr = arguments[2];
+ while (i < l) {
+ if (i in obj) curr = accumulator.call(undefined, curr, obj[i], i, obj);
+ ++i;
+ }
+ return curr;
+ }
+
+ function isArray(vArg) {
+ return Object.prototype.toString.call(vArg) === "[object Array]";
+ }
+
+ function keys(obj) {
+ var key_array = [];
+ for ( var prop in obj ) {
+ if ( obj.hasOwnProperty(prop) ) key_array.push(prop);
+ }
+ return key_array;
+ }
+
+ function purl( url, strictMode ) {
+ if ( arguments.length === 1 && url === true ) {
+ strictMode = true;
+ url = undefined;
+ }
+ strictMode = strictMode || false;
+ url = url || window.location.toString();
+
+ return {
+ data : parseUri(url, strictMode),
+ // get various attributes from the URI
+ attr : function( attr ) {
+ attr = aliases[attr] || attr;
+ return typeof attr !== 'undefined' ? this.data.attr[attr] : this.data.attr;
+ },
+ // return query string parameters
+ param : function( param ) {
+ return typeof param !== 'undefined' ? this.data.param.query[param] : this.data.param.query;
+ },
+
+ // return fragment parameters
+ fparam : function( param ) {
+ return typeof param !== 'undefined' ? this.data.param.fragment[param] : this.data.param.fragment;
+ },
+ // return path segments
+ segment : function( seg ) {
+ if ( typeof seg === 'undefined' ) {
+ return this.data.seg.path;
+ } else {
+ seg = seg < 0 ? this.data.seg.path.length + seg : seg - 1; // negative segments count from the end
+ return this.data.seg.path[seg];
+ }
+ },
+ // return fragment segments
+ fsegment : function( seg ) {
+ if ( typeof seg === 'undefined' ) {
+ return this.data.seg.fragment;
+ } else {
+ seg = seg < 0 ? this.data.seg.fragment.length + seg : seg - 1; // negative segments count from the end
+ return this.data.seg.fragment[seg];
+ }
+ }
+ };
+ }
+ purl.jQuery = function($){
+ if ($ != null) {
+ $.fn.url = function( strictMode ) {
+ var url = '';
+ if ( this.length ) {
+ url = $(this).attr( getAttrName(this[0]) ) || '';
+ }
+ return purl( url, strictMode );
+ };
+ $.url = purl;
+ }
+ };
+ purl.jQuery(window.jQuery);
+ return purl;
+});
+//把框架所有的ajax请求集中到一起,发一条请求,获取所有的配置信息。
+ZteFrameWork_conf = {
+ userName:store.get('username'),
+ changePassItem:FrameConst.change_pass?FrameConst.change_pass:true,
+ helpMenuItem:false,
+ aboutMenuItem:false,
+ flightMenuItem:false,
+ fullscreenMenuItem:false,
+ logoutMenuItem:true,
+ defaultThemeColor:"ztebluelight2",
+ dbType:"other",
+ acceptLanguage:"zh-CN"
+};
+$("#currentUser").html(ZteFrameWork_conf.userName);
+
+$.ajax({
+ url : FrameConst.REST_FRAMECOMMIFO,
+ type : "GET",
+ cache:false,
+ contentType : 'application/json; charset=utf-8',
+ success: function(data){
+ var tempConf = data;
+ if( tempConf.helpMenuItem && tempConf.helpMenuItem != "" ){
+ ZteFrameWork_conf.helpMenuItem = tempConf.helpMenuItem;
+ }
+ if( tempConf.aboutMenuItem && tempConf.aboutMenuItem != "" ){
+ ZteFrameWork_conf.aboutMenuItem = tempConf.aboutMenuItem;
+ }
+ if( tempConf.flightMenuItem && tempConf.flightMenuItem != "" ){
+ ZteFrameWork_conf.flightMenuItem = tempConf.flightMenuItem;
+ }
+ if( tempConf.fullscreenMenuItem && tempConf.fullscreenMenuItem != "" ){
+ ZteFrameWork_conf.fullscreenMenuItem = tempConf.fullscreenMenuItem;
+ }
+ if( tempConf.logoutMenuItem && tempConf.logoutMenuItem != "" ){
+ ZteFrameWork_conf.logoutMenuItem = tempConf.logoutMenuItem;
+ }
+ if( tempConf.defaultThemeColor && tempConf.defaultThemeColor != "" ){
+ ZteFrameWork_conf.defaultThemeColor = tempConf.defaultThemeColor;
+ }
+ if( tempConf.dbType && tempConf.dbType != "" ){
+ ZteFrameWork_conf.dbType = tempConf.dbType;
+ }
+ if( tempConf.acceptLanguage && tempConf.acceptLanguage != "" ){
+ ZteFrameWork_conf.acceptLanguage = tempConf.acceptLanguage;
+ }
+ if( tempConf.changePassItem && tempConf.changePassItem != "" ){
+ ZteFrameWork_conf.changePassItem = tempConf.changePassItem;
+ }
+
+ setFrameWorkByConf();
+ //userName = data;
+ //console.info('login user is :' + data);
+ },
+ error:function(data){
+ setFrameWorkByConf();
+ }
+});
+
+function setThemeColor( configColor ){
+ var panel = $('.zte-theme-panel');
+ $('.theme-colors > ul > li', panel).each(function () {
+ var color = $(this).attr("data-style");
+ if (color == configColor) {
+ // 匹配上了才重设默认主题
+ $(this).addClass("current");
+ $('#style_color').attr("href", "css/themes/" + color + ".css");
+ //if (store) {
+ store('style_color', color);
+ //}
+ }
+ });
+};
+
+function setFrameWorkByConf(){
+ //设置用户相关的框架下拉菜单是否可用
+ var helpMenuItem = ZteFrameWork_conf.helpMenuItem;
+ var aboutMenuItem = ZteFrameWork_conf.aboutMenuItem;
+ var flightMenuItem = ZteFrameWork_conf.flightMenuItem;
+ var fullscreenMenuItem = ZteFrameWork_conf.fullscreenMenuItem;
+ var logoutMenuItem = ZteFrameWork_conf.logoutMenuItem;
+ var changePassMenuItem = ZteFrameWork_conf.changePassMenuItem;
+ if (!helpMenuItem || helpMenuItem === "false") {
+ $('#uep_ict_help_url').parent('li').remove();
+ }
+ if(!aboutMenuItem|| aboutMenuItem === "false"){
+ $('[data-target="#aboutDlg"]').parent('li').remove();
+ }
+ if(!helpMenuItem && !aboutMenuItem){
+ $('#uep_ict_help_div').remove();
+ }
+ if (!flightMenuItem|| flightMenuItem === "false") {
+ $('#header_notification_bar').html("<div>&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp</div>");
+ }
+ if (!fullscreenMenuItem|| fullscreenMenuItem === "false") {
+ //$('#trigger_fullscreen').parent().css("display", "none");
+ $('#trigger_fullscreen_div').html("");
+ }
+ if (!logoutMenuItem || logoutMenuItem === "false") {
+ //$('#trigger_logout').parent().css("display", "none");
+ $('#trigger_logout_div').html("");
+ }
+ if ((!fullscreenMenuItem && !logoutMenuItem) || (fullscreenMenuItem === "false" && logoutMenuItem === "false")) {
+ $('#full_logout_divider').css("display", "none");
+ }
+ if (!changePassMenuItem ) {
+ $('#changePwd_labellink').css('display','none');
+ $('#full_logout_divider').css('display','none');
+ }
+
+ //设置二次开发者选择的框架皮肤
+ var defaultColor = ZteFrameWork_conf.defaultThemeColor;
+ var panel = $('.zte-theme-panel');
+ $('ul > li', panel).removeClass("current");
+ if (store && !store('style_color')) { // cookie没有才设置默认主题
+ setThemeColor(defaultColor);
+ }else{
+ setThemeColor(store('style_color'));
+ }
+};
+
+/*新增的hashtabel实现类,用户后续iframe的缓存,前进后退时打开过的页面的菜单id的缓存等*/
+function Hashtable()
+{
+ this._hash = {};
+ this._count = 0;
+ this.add = function(key, value)
+ {
+ if (this._hash.hasOwnProperty(key))
+ return false;
+ else {
+ this._hash[key] = value; this._count++; return true;
+ }
+ } ;
+ this.hash = function() { return this._hash; };
+ this.remove = function(key) { delete this._hash[key]; this._count--; } ;
+ this.count = function() { return this._count; };
+ this.items = function(key) { if (this.contains(key)) return this._hash[key]; };
+ this.contains = function(key) { return this._hash.hasOwnProperty(key); };
+ this.clear = function() { this._hash = {}; this._count = 0; };
+ this.replace = function(key, value)
+ { //有则删除后增加///相当于更新
+ if(this.contains(key)){
+ this.remove(key);
+ }
+ return this.add(key, value);
+ } ;
+};
+
+var fMenuSiderDivId = 'page-f-sidebar-menu';
+var fMenuMegaDivId = 'f_hormenu';
+var megaSiderDivId = 'page-megachild-sidebar-menu';
+var megaDivId = 'main_hormenu';
+var zteframework_menu_horizontal = "horizontal";
+var zteframework_menu_vertical = "vertical";
+var zteframework_menu_fmenu = "fmenu";
+var zteframework_showNav = "true";
+var zteframework_smallView = 960;//原来为992,但是在投影仪上不准(投影仪设置为1024,但是实际尺寸比1024小),边栏菜单也会被移除,这个设置一个稍小的值。
+
+/*下面是主框架的核心*/
+var ZteFrameWork = function () {
+ var defaultLanage=getLanguage();
+ var isRTL = false;//文档顺序
+ var isTouch=function(){
+ try {
+ document.createEvent("TouchEvent");
+ return true;
+ } catch (e) {
+ return false;
+ }
+ };
+ var isDesktop = !isTouch;
+ var isIE8 = false;
+ var isIE9 = false;
+ var isIE10 = false;
+ var gdocTitle="";
+ var _sidebarWidth = 225;
+ var _sidebarCollapsedWidth = 35;
+ var responsiveHandlers = [];
+ var cachedIframes=new Hashtable();
+ var cachedIframesObject=new Hashtable();
+ var breadcrumbBtnMenus=new Hashtable();
+ var _menuCategorys=new Hashtable();
+ var _iframe="page-mainIframe"; //全局变量保存的是当前正在打开使用的iframe
+ var _sceneURLRootPath="";
+ var _hashSource="";//信号量
+ var _isClicked=false;//信号量
+ //var _breadcrumbSource=false;
+
+ // 皮肤颜色
+ var layoutColorCodes = {
+ 'blue': '#4b8df8',
+ 'red': '#e02222',
+ 'green': '#35aa47',
+ 'purple': '#852b99',
+ 'grey': '#555555',
+ 'light-grey': '#fafafa',
+ 'yellow': '#ffb848',
+ 'ztebluelight': '#3366cc'
+ };
+ // 获取真实的设备窗口大小,参考了 http://andylangton.co.uk/articles/javascript/get-viewport-size-javascript/
+ var _getViewPort = function () {
+ var e = window, a = 'inner';
+ if (!('innerWidth' in window)) {
+ a = 'client';
+ e = document.documentElement || document.body;
+ }
+ return {
+ width: e[a + 'Width'],
+ height: e[a + 'Height']
+ }
+ }
+ // 初始化
+ var dealInit = function () {
+ var sence = '0';
+ var menuSence = getUrlParam("menu");
+ var confSence = 0;
+ if (menuSence) {
+ sence = menuSence;
+ } else {
+ sence = confSence;
+ }
+ switch (sence) {
+ case "1":
+ gdocTitle = $('#com_zte_ums_ict_framework_ui_page_title_1').text().trim();
+ break;
+ case "2":
+ gdocTitle = $('#com_zte_ums_ict_framework_ui_page_title_2').text().trim();
+ break;
+ case "3":
+ gdocTitle = $('#com_zte_ums_ict_framework_ui_page_title_3').text().trim();
+ break;
+ case "0":
+ default:
+ gdocTitle = $('#com_zte_ums_ict_framework_ui_page_title').text().trim();
+ break;
+ }
+ if ($('body').css('direction') === 'rtl') {
+ isRTL = true;
+ }
+ isIE8 = !! navigator.userAgent.match(/MSIE 8.0/);
+ isIE9 = !! navigator.userAgent.match(/MSIE 9.0/);
+ isIE10 = !! navigator.userAgent.match(/MSIE 10.0/);
+ if (isIE10) {
+ $('html').addClass('ie10'); // IE10
+ }
+ if (isIE10 || isIE9 || isIE8) {
+ $('html').addClass('ie'); // IE10
+ }
+ var deviceAgent = navigator.userAgent.toLowerCase();
+ if (deviceAgent.match(/(iphone|ipod|ipad)/)) {
+ $(document).on('focus', 'input, textarea', function () {
+ $('.page-header').hide();
+ if($('.page-footer')&&$('.page-footer').length>0)
+ $('.page-footer').hide();
+ });
+ $(document).on('blur', 'input, textarea', function () {
+ $('.page-header').show();
+ if($('.page-footer')&&$('.page-footer').length>0)
+ $('.page-footer').show();
+ });
+ } else {
+ $(document).on('focus', 'input, textarea', function () {
+ if($('.page-footer')&&$('.page-footer').length>0)
+ $('.page-footer').hide();
+ });
+ $(document).on('blur', 'input, textarea', function () {
+ if($('.page-footer')&&$('.page-footer').length>0)
+ $('.page-footer').show();
+ });
+ }
+ }
+ //处理滚动到
+ var dealScrollTo=function (el, offeset) {
+
+ }
+ var dealstartPageLoading=function(message) {
+ $('.page-loading').remove();
+ $('body').append('<div class="page-loading"><img src="'+ ICTFRAME_CONST_SPINNER_GIF_PATH +'"/>&nbsp;&nbsp;<span>' + (message ? message : $.i18n.prop('com_zte_ums_ict_framework_ui_loading')) + '</span></div>');
+ }
+ var dealstopPageLoading=function() {
+ $('.page-loading').remove();
+ }
+ var dealSidebarState = function () {
+ // 窗体宽度小尺寸(平板和iphone模式下)时移出左边栏
+ var viewport = _getViewPort();
+ if (viewport.width < zteframework_smallView) {
+ $('body').removeClass("page-sidebar-closed");
+ }else{
+ if (getCookie('sidebar_closed') === '1') {
+ $('body').addClass('page-sidebar-closed');
+ }
+ }
+ }
+ // ZteFrameWork.addResponsiveHandler()回调函数.
+ var runResponsiveHandlers = function () {
+ //重新初始化其他订阅的元素elements
+ for (var i = 0; i < responsiveHandlers.length; i++) {
+ var each = responsiveHandlers[i];
+ each.call();
+ }
+ }
+ // 窗体重新调整大小时初始化调整边栏状态高度
+ var dealResponsive = function () {
+ dealSidebarState();
+ ajustHorMenuDropDirection();
+ dealSidebarAndContentHeight();
+ dealFixedSidebar();
+ runResponsiveHandlers();
+ }
+ // 页面重载入时初始化调整内部布局
+ var dealResponsiveOnInit = function () {
+ dealSidebarState();
+ dealSidebarAndContentHeight();
+ setTimeout(function () {
+ ajustHorMenuDropDirection(true);
+ }, 100);
+ }
+ // 窗体重新调整大小时初始化调整布局
+ var dealResponsiveOnResize = function () {
+ var resize;
+ if (isIE8) {
+ var currheight;
+ $(window).resize(function () {
+ if (currheight == document.documentElement.clientHeight) {
+ return;
+ }
+ if (resize) {
+ clearTimeout(resize);
+ }
+ resize = setTimeout(function () {
+ dealResponsive();
+ }, 50);
+ currheight = document.documentElement.clientHeight;
+ });
+ } else {
+ $(window).resize(function () {
+ if (resize) {
+ clearTimeout(resize);
+ }
+ resize = setTimeout(function () {
+ dealResponsive();
+ }, 50);
+ });
+ }
+ }
+ var changeSiderBar = function(hideAllMenu){
+ var siderbarpos = $(".nav-pos-direction", $(".zte-theme-panel")).val();
+ var sidermenu = $("#page-sidebar-menu");
+ var hormenu = $("#main_hormenu");
+ var fhorMenu = $("#" + fMenuMegaDivId);
+ var fsiderMenu = $("#" + fMenuSiderDivId);
+ if(hideAllMenu){
+ sidermenu.css('display','block');// 侧边栏显示
+ hormenu.css("display", "none");//隐藏水平菜单栏
+ fhorMenu.css('display','none');
+ fsiderMenu.css('display','none');
+ return;
+ }
+ if (zteframework_menu_horizontal == siderbarpos) {
+ sidermenu.css('display','none');// 侧边栏隐藏
+ fhorMenu.css('display','none');// 侧边栏隐藏
+ fsiderMenu.css('display','none');// 侧边栏隐藏
+ hormenu.css("display", "block");//显示水平菜单栏
+ } else if (zteframework_menu_vertical == siderbarpos) {
+ sidermenu.css('display','block');// 侧边栏显示
+ hormenu.css("display", "none");//隐藏水平菜单栏
+ fhorMenu.css('display','none');// 侧边栏隐藏
+ fsiderMenu.css('display','none');// 侧边栏隐藏
+ } else if (zteframework_menu_fmenu == siderbarpos) {
+ sidermenu.css('display','none');
+ hormenu.css("display", "none");
+ fhorMenu.css('display','block');
+ fsiderMenu.css('display','block');
+ //除了toggle按钮之外,是否还有其他儿子是要显示的,如果没有,那么竖菜单不显示;反之,显示。
+ var lis = fsiderMenu.children(".sidebar-toggler-wrapper").siblings();
+ if(lis.length > 0 && lis.css('display') != "none"){
+ fsiderMenu.css('display','block');
+ //
+ $("body").removeClass("page-full-width");
+ if ($('body').hasClass("page-sidebar-closed")) {
+ $(".page-content").css("marginLeft", _sidebarCollapsedWidth);
+ } else {
+ $(".page-content").css("marginLeft", _sidebarWidth);
+ }
+ }
+ }
+ }
+ //根据当前菜单在屏幕的位置,和一级菜单下二级菜单的排列,来决定菜单是向左展开还是向右展开
+ var ajustHorMenuDropDirection = function( isInit ){
+ //获取屏幕宽度
+ var bodyWidth = document.body.clientWidth;
+ //循环,获取每个一级菜单在屏幕中的位置
+ var levelOneAdropdowns = $('a.dropdown-toggle', '#main_hormenu' );
+ //每一个文字span的图标、他父亲的margin\padding等占用的位置
+ var marginCount = 5 * 2 + 17.5 + 2 * 2 + 30 + 15 * 2 + 3;
+ for( var i = 0 ; i < levelOneAdropdowns.length ; i++ ){
+ var a = $(levelOneAdropdowns[i]);
+ var leftOffset = a.offset().left;
+ //获取二级菜单的数量
+ var ul = a.parent().children('.dropdown-menu');
+ var groupDivs = $('.zteDivWidth' , ul);
+ var widthOfDropDownMenu = 0;
+ for(var j = 0 ; j < groupDivs.length && groupDivs.length >0 ; j++ ){//循环获取每个分组的宽度
+ var eachDiv = groupDivs[j];
+ var maxLengthText = "";
+ var maxLength = 0;
+ var spans = $('span' , eachDiv).each(function(){
+ var innerText = this.innerText;
+ if( innerText.length > maxLength ){
+ maxLength= innerText.length;
+ maxLengthText = innerText;
+ }
+ });
+ widthOfDropDownMenu = widthOfDropDownMenu + getStringWidth(maxLengthText , 14) + marginCount;
+ }
+ //预估每个组占宽度150PX,多预计一点
+ if( widthOfDropDownMenu + leftOffset > bodyWidth ){
+ console.log("ajust class dropdown-menu-right ,id = "+ a.attr("id") );
+ ul.addClass('dropdown-menu-right');
+ //var right = bodyWidth - (leftOffset + a.width() + 15);
+ //ul.attr('style' ,'right:' + right );
+ }else{
+ ul.removeClass('dropdown-menu-right');
+ //ul.removeAttr('style');
+ }
+ }
+ }
+ // 屏幕大小发生变化或者移动设备旋转屏幕时处理响应式布局.
+ var dealSidebarAndContentHeight = function (isToggler) {
+ var content = $('.page-content');
+ var contentbody = $('.page-content-body');
+ var sidebar = $('.page-sidebar');
+ var body = $('body');
+ var height;
+ var viewport = _getViewPort();
+ var scrAvaHeight=Math.min(window.screen.availHeight,viewport.height)-5;
+ var footer=$('.footer');
+ var pgbread=$('.page-breadcrumb');
+ var pageableDiv=$('#pageableDiv');
+ console.log("pageableDiv height:"+pageableDiv.outerHeight(true));
+ var pheader=$('.header');
+ var childPagetype=!!cachedIframesObject.items(_iframe)?cachedIframesObject.items(_iframe).childpageType:"";
+ if(childPagetype==="isc")//smartclient的子页面固定高度为视口可用内容区高度
+ {
+ $('.sidebar-option', panel).val("fixed");
+ }
+ dealShownav();
+ var available_height =scrAvaHeight - ((!footer||footer.length<=0)?0:footer.outerHeight(true)) - pheader.outerHeight(true);
+ var _pageableDivHeight=(!pageableDiv||pageableDiv.length<=0||pageableDiv.is(":visible")==false)?0:pageableDiv.outerHeight(true);
+ var h= scrAvaHeight-pheader.outerHeight(true)-((!footer||footer.length<=0||footer.is(":visible")==false)?0:footer.outerHeight(true))-pgbread.outerHeight(true)-_pageableDivHeight-(contentbody.outerHeight(true)-contentbody.height());
+ var miframe=_iframe==""?"page-mainIframe": _iframe;
+ var pagemyIframe=$('.page-content .page-content-body .'+miframe); //.page-mainIframe
+ if(pagemyIframe&&pagemyIframe.length>0){
+ //处理iframe,下面计算中间iframe的高度
+ var deviceAgent = navigator.userAgent.toLowerCase();
+ if (deviceAgent.match(/(iphone|ipod|ipad)/)) { //||viewport.height<=480
+ var w=viewport.width-content.offset().left-(pagemyIframe.offset().left-content.offset().left)*2;//宽度=总宽度-左边栏宽度-内容区内边距。左右两个
+ pagemyIframe.width(w);
+ }
+ //对桌面必须计算高度
+ var tmp_style = sidebar.attr('style');// firefox下执行 sidebar.height()会改变style样式,这里缓存下执行前的style样式,执行完后重新赋给页面元素
+ console.log("pym:parent iframe "+miframe+" sidebar.height:"+sidebar.height()+" h:"+h);
+ h=sidebar.height()>h?sidebar.height():h;
+ //IE下,把iframe的高度再减掉7,因为IE10及以下版本,计算的高度会比IE实际显示区域大,导致出现IE滚动条。
+ /*h=h-ICTFRAME_CONST_IFRAME_HEIGHT_AJUST;
+ if(isIE){
+ h=h-ICTFRAME_CONST_IFRAME_HEIGHT_AJUST_IE;
+ }*/
+ sidebar.attr('style',tmp_style);
+ if (isDesktop) {
+ //pagemyIframe.attr("height",h);
+ if(cachedIframesObject.items(miframe).setMinHeight){
+ var minHeight=Math.min(scrAvaHeight,h);
+ console.log("pym:parent iframe "+miframe+" window.screen.availHeight:"+scrAvaHeight+" viewport.height:"+viewport.height+" h:"+h+" minHeight:"+minHeight);
+ cachedIframesObject.items(miframe).setMinHeight(minHeight);
+ }
+ }else{
+ //pagemyIframe.attr("height","100%");//去掉这里错误的设置,ipad上测试高度不正确
+ var _h=h;
+ try{
+ _h=pagemyIframe.contents().height();
+ }catch(e){}
+ h=_h>h?_h:h;
+ if(cachedIframesObject.items(miframe).setMinHeight){
+ var minHeight=Math.min(scrAvaHeight,h);
+ console.log("pym:parent iframe "+miframe+" window.screen.availHeight:"+scrAvaHeight+" viewport.height:"+viewport.height+" h:"+h+" minHeight:"+minHeight);
+ cachedIframesObject.items(miframe).setMinHeight(minHeight);
+ }
+ }
+ }
+
+ if (body.hasClass("page-footer-fixed") === true && body.hasClass("page-sidebar-fixed") === true) {
+ if (content.height() < available_height) {
+ //content.attr('style', 'min-height:' + available_height + 'px !important');
+ dealAddStyle(content,'min-height',available_height + 'px',true);
+ }
+ } else{
+ if (body.hasClass("page-footer-fixed") === true && body.hasClass("page-sidebar-fixed") === false) {
+ if (content.height() < available_height) {
+ //content.attr('style', 'min-height:' + available_height + 'px !important');
+ dealAddStyle(content,'min-height',available_height + 'px',true);
+ }
+ } else {
+ if (body.hasClass('page-sidebar-fixed')) {
+ height = _calculateFixedSidebarViewportHeight();
+ } else {
+ // firefox下执行 sidebar.height()会改变style样式,这里缓存下执行前的style样式,执行完后重新赋给页面元素
+ var tmp_style = sidebar.attr('style');
+ // height = sidebar.height() + 20;
+ sidebar.attr('style',tmp_style);
+ var headerHeight = pheader.outerHeight(true);
+ var footerHeight = (!footer||footer.length<=0)?0:footer.outerHeight(true);
+ if ($(window).width() > 1024 && (height + headerHeight + footerHeight) < scrAvaHeight) {
+ height = scrAvaHeight - headerHeight - footerHeight;
+ }
+ }
+ if (height <= content.height()) {//这里为了避免内容区域很小的时候出现内容区域无法充满屏幕,把min-height修改为height
+ //content.attr('style', 'min-height:' + height + 'px !important');
+ dealAddStyle(content,'min-height',height + 'px',true);
+ }
+ }
+ }
+ // 屏幕小尺寸时会隐藏边栏,这时菜单由小屏幕右上图标控制,当屏幕变化到大尺寸屏幕时,
+ // 需要按原菜单出现方式恢复菜单显示。
+ var screenwidth = $(window).width();
+ if(screenwidth >= zteframework_smallView){
+ changeSiderBar();
+ if($(".page-sidebar-menu li").css('display') != "none"){
+ if ($('body').hasClass("page-sidebar-closed") && $(".sidebar-toggler").hasClass("close-by-viewportChange")) {
+ if( !isToggler ){
+ $(".sidebar-toggler")[1].click();
+ }
+ $(".sidebar-toggler").removeClass("close-by-viewportChange");
+ }
+ }
+ }
+ else {
+ changeSiderBar(true);
+ }
+ }
+ var showIframe=function(iframe){
+ var resize,pagemainIframe;
+ if (cachedIframes.count()>0) {
+ for (var i in cachedIframes.hash()) {
+ cachedIframes.replace(i,0);
+ var pagemyIframe=$('.page-content .page-content-body .'+i);
+ if(pagemyIframe&&pagemyIframe.length>0){
+ if(iframe==i){
+ pagemyIframe.show();
+ cachedIframes.replace(i,1);
+ } else{
+ if("page-mainIframe"===i){//2015年12月10日 wimax要求页面切换后删除没有配置cacheNum的缓存页面
+ pagemainIframe=i;
+ pagemyIframe.attr("src","");
+ pagemyIframe.remove();
+ }else{
+ pagemyIframe.hide();
+ }
+ cachedIframes.replace(i,0);
+ }
+ }
+ }
+ }
+ if(pagemainIframe){
+ delete cachedIframes._hash[pagemainIframe];
+ delete cachedIframesObject._hash[pagemainIframe];
+ }
+ if (!cachedIframes.contains(iframe)) {
+ cachedIframes.add(iframe,1);
+ //增加的iframe加载完毕后 停止加载中提示信息
+ myIframe=$('.'+iframe);
+ myIframe.show();
+ myIframe.load(function(){
+ /*if (!isDesktop) {
+ if (resize) {
+ clearInterval(resize);
+ }
+ resize = setInterval(dealIframeHeight, 400,$(this));
+ }*/
+ ZteFrameWork.stopPageLoading();
+ });
+ }
+ }
+ var hidemenu=function(){
+ $('.hor-menu').hide();
+ dealAddStyle($('.page-content'),'margin-left','0px',true);
+ dealAddStyle($('.page-sidebar'),'display','none',true);
+ var fsiderMenu = $("#" + fMenuSiderDivId);
+ fsiderMenu.children().css('display' , 'none');
+ }
+ var hideAlarmLight=function(){
+ //$('#header_notification_bar').hide();
+ //$('#header_notification_bar').empty();
+ $('#header_notification_bar').html("<div>&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp</div>");
+ }
+ var dealShownav=function(){
+ var showNav=ZteFrameWork.getLocationURLParameter('showNav');
+ if( showNav=="false"){
+ zteframework_showNav = showNav;
+ hidemenu();
+ hideAlarmLight();
+ }
+ }
+ /* 点击菜单时,处理对应该菜单项的横,左菜单项 */
+ var dealRelateMenu = function(source) {
+ // 点击子菜单时,对应的横竖菜单项也联动为选择样式,(高亮,箭头变化)
+ var panel = $('.zte-theme-panel');
+ var navPosOption = $('.nav-pos-direction', panel).val();
+ var targetsource = null;
+ var targetContainer = null;
+ if (navPosOption === "vertical") {
+ // 当前是左菜单,则处理对应的横菜单
+ targetsource = $("#"+source.attr("id"), $("#main_hormenu"));
+ targetContainer = $(".header ul");
+ } else if (navPosOption === "horizontal") {
+ var rtn = dealMgaBarRelated(source);
+ dealFMenuRelated(source , megaSiderDivId);
+ targetContainer = rtn[0];
+ targetsource = rtn[1];
+ }else if(navPosOption === zteframework_menu_fmenu){
+ dealFMenuRelated(source , fMenuSiderDivId);
+ }
+ if (targetContainer) {
+ // 移除原有菜单项的活动及箭头样式
+ targetContainer.children('li.active').removeClass('active');
+ targetContainer.find('.arrow.open').removeClass('open');
+ }
+ if (targetsource) {
+ // 增加活动及箭头样式
+ targetsource.parents('li').each(function () {
+ $(this).addClass('iframe active');
+ $(this).find('a > span.arrow').addClass('open');
+ });
+ targetsource.parents('li').addClass('active');
+ if (navPosOption === "horizontal") {
+ if (targetsource.parent().parent().parent().is("li")) {
+ $('.arrow', targetsource.parent().parent().parent()).addClass("open");
+ }
+ }
+ }
+ }
+ var dealMgaBarRelated = function(source){
+ // 当前是横菜单,则处理对应的左菜单
+ targetsource = $("#"+source.attr("id"), $("[class='page-sidebar-menu']"));
+ targetContainer = $("#page-sidebar-menu ul");
+ // 将先前左菜单展开的子菜单收缩
+ $("li.open",targetContainer).each(function() {
+ var style = $("ul.sub-menu", this).attr("style");
+ if (style) {
+ $("ul.sub-menu", this).removeAttr("style");
+ $(this).removeClass('open');
+ }
+ });
+ // 当前是横菜单,但在屏幕缩小的情况下显示的是tip垂直菜单,而横菜单是隐藏的,所以需额外处理横菜单
+ if (source.parent().parent().parent().parent().attr("class").indexOf("page-sidebar-menu") >= 0) {
+ var tiptargetsource = $("#"+source.attr("id"), $("#main_hormenu"));
+ var tiptargetContainer = $(".header ul");
+ tiptargetContainer.children('li.active').removeClass('active');
+ tiptargetContainer.find('.arrow.open').removeClass('open');
+ tiptargetsource.parents('li').each(function () {
+ $(this).addClass('iframe active');
+ $(this).find('a > span.arrow').addClass('open');
+ });
+ tiptargetsource.parents('li').addClass('active');
+ }
+ return [targetContainer ,targetsource ];
+ }
+ var dealFMenuRelated = function(source , siderDivId ){
+ var fsiderMenu = $("#" + siderDivId);
+ if(isMoreMenuItemClick){//更多菜单点击 , 临时方案,增加信号量,使用之后就置为false
+ isMoreMenuItemClick = false
+ }else if($(source).parents('li').hasClass('mega-menu-dropdown')){//F的横向菜单的点击
+ var id = source.attr('id');
+ //非被点击的一级菜单的二级菜单都不显示
+ $('#' + siderDivId + '>li').hide();
+ var level2Lis = $("a[hparentid= " + id + "]" , fsiderMenu).parent();
+ level2Lis.show();
+ if(level2Lis.length > 0){//把竖向菜单的收起放大按钮显示出来
+ $('#' + siderDivId + '>li.sidebar-toggler-wrapper').show();
+ }
+ if($("a[hparentid= " + id + "]" , fsiderMenu).length > 0){ //有子孙菜单时,把F菜单的竖菜单显示出来
+ dealFSidermenu(source ,siderDivId );
+ }else{//否则隐藏竖菜单
+ fsiderMenu.css('display','none');
+ $("body").addClass("page-full-width");
+ $(".page-content").css("marginLeft", _sidebarWidth);
+ }
+
+ }else{//F菜单的竖向菜单点击
+ //处理一种特殊情况,告警灯打开新页面,所有的菜单都不出现,因此,虽然这个source在竖菜单,但竖菜单这个时候实际上是没有显示的
+ if( zteframework_showNav == "true") {
+ $('#' + siderDivId + '>li').hide();
+ var lis = $(source).parents('li');
+ var id = lis.eq(lis.length-1).children( 'a' ).attr('hparentid');
+ //var id = $(source).parents('li').children('a').attr('hparentId');
+ var level2Lis = $("a[hparentid=" + id + "]" , fsiderMenu).parent();
+ level2Lis.show();
+ if(level2Lis.length > 0) {//把竖向菜单的收起放大按钮显示出来
+ $('#'+ siderDivId + '>li.sidebar-toggler-wrapper').show();
+ }
+ //$('#' + siderDivId + '>li')[0].show();
+ dealFSidermenu(source , siderDivId);
+ }
+ }
+ }
+ var dealFSidermenu = function(source , siderDivId){
+ var fsiderMenu = $("#" + siderDivId);
+ fsiderMenu.css('display','block');
+ $('ul.sub-menu',fsiderMenu).css('display','block');
+ $('.arrow',fsiderMenu).addClass('open');
+ $("body").removeClass("page-full-width");
+ if ($('body').hasClass("page-sidebar-closed")) {
+ $(".page-content").css("marginLeft", _sidebarCollapsedWidth);
+ } else {
+ $(".page-content").css("marginLeft", _sidebarWidth);
+ }
+ var href = source.attr("href");
+ $('li.iframe' ,fsiderMenu ).removeClass('active');
+ var selectedIframeLi = $("a[href ='" + href + "']" ,fsiderMenu ).parent();
+ selectedIframeLi.addClass('active');
+ selectedIframeLi.parent().parent().addClass("open").addClass("active");
+ selectedIframeLi.parent().css('display','block');
+ selectedIframeLi.parent().parent().children('a').children('.arrow').addClass('open');
+ }
+ var dealMenuItemClick=function(source,e,menuContainerStr){
+ var url = source.attr("href");
+ if(!url||url.length<2)
+ return;
+ e.preventDefault();
+ if(!_isClicked){//导航情况下,首先要模拟点开菜单分组
+ _isClicked=true;//如果菜单有子菜单点击一次来展开子菜单,注意这个信号量的变化,避免死循环
+ var mainMenu=source.parents('li').last();
+ if(!mainMenu.hasClass('open')){
+ dealLiAClick(mainMenu.children('a:eq(0)'));
+ }
+ }
+ if(menuContainerStr&&menuContainerStr.length>0){
+ var menuContainer = $('.'+menuContainerStr+' ul');
+
+ menuContainer.children('li.active').removeClass('active');
+ // menuContainer.children('arrow.open').removeClass('open');
+ //menuContainer.find('.arrow.open').addClass('open');
+ }
+ source.parents('li').each(function () {
+ $(this).addClass('iframe active');
+ $(this).children('a > span.arrow').addClass('open');
+ });
+ source.parents('li').addClass('active');
+ // 处理点击菜单对应的横或左菜单项的选择样式
+ dealRelateMenu(source);
+ if(menuContainerStr&&menuContainerStr.length>0){
+ if ($(window).width() <= 991 && $('.'+menuContainerStr).hasClass("in")) {
+ $('.navbar-toggle').click();
+ }
+ }
+ if(dealMultTabPage(source))
+ return true;
+ dealScrollTo();
+ var breadmenuID=e.data&&e.data.breadcrumbBtnMenuItem&&e.data.breadcrumbBtnMenuItem.length>0?e.data.breadcrumbBtnMenuItem:"";
+ if(breadmenuID.length>0){//面包削导航来的,只需要重新生成面包削即可
+ //找到更多菜单按钮
+ var moreMenuItem = $('#' + breadmenuID , $('#pageableDiv'));
+ if( moreMenuItem.length == 0 ){
+ moreMenuItem = $('#' + breadmenuID , $('.more-botton-zone'));
+ }
+ dealBreadcrumbBtnMenuItemClick(moreMenuItem,e);
+ //dealBreadcrumb(source,false,e);
+ }else{//非面包削导航来的,
+ dealstartPageLoading();
+ if(dealIframe(source,e))//当返回true时说明是正常加载iframe了,否则面包削不能切换
+ dealBreadcrumb(source,false,e);
+ }
+ //dealShownav();
+ };
+ var dealMenuItemGetFocus=function(source,e,menuContainerStr){
+ var url = source.attr("href");
+ if(!url||url.length<2)
+ return;
+ e.preventDefault();
+ if(!_isClicked){//导航情况下,首先要模拟点开菜单分组
+ _isClicked=true;//如果菜单有子菜单点击一次来展开子菜单,注意这个信号量的变化,避免死循环
+ var mainMenu=source.parents('li').last();
+ dealLiAClick(mainMenu.children('a:eq(0)'));
+ }
+ if(menuContainerStr&&menuContainerStr.length>0){
+ var menuContainer = $('.'+menuContainerStr+' ul');
+
+ menuContainer.children('li.active').removeClass('active');
+ menuContainer.children('arrow.open').removeClass('open');
+ }
+ source.parents('li').each(function () {
+ $(this).addClass('iframe active');
+ $(this).children('a > span.arrow').addClass('open');
+ });
+ source.parents('li').addClass('active');
+
+ if(menuContainerStr&&menuContainerStr.length>0){
+ if ($(window).width() <= 991 && $('.'+menuContainerStr).hasClass("in")) {
+ $('.navbar-toggle').click();
+ }
+ }
+ };
+ //处理iframe的核心处理类,逻辑较为复杂,注意各种参数的处理
+ var dealIframe=function(aObject,e){
+ _hashSource="";
+ var url = aObject.attr("href");
+ if(!url||url.length<2)
+ return;
+ url=ZteFrameWork.handlBaseURL(url);
+ //-----------2015年9月21日新增V5中大O需要的按照实例(根据选择的系统实例变化url的ip和端口地址)进行动态切换菜单的功能
+ var category= aObject.attr("category");//处理菜单中定义的Category属性
+ if(category&&category.length>0){//处理Category属性
+ var newIpPort=_menuCategorys.items(category);
+ if(newIpPort&&newIpPort.ipPort&&newIpPort.ipPort.trim()!=""){//如果找到了
+ var newIpPortstr=ZteFrameWork.getDomainURL(newIpPort.ipPort);//去掉ip和port后多余的部分
+ var urlipport=ZteFrameWork.getDomainURL(url);
+ console.log("old url:"+url);
+ url=newIpPortstr+url.replace(urlipport,"");
+ console.log("newIpPort:"+newIpPortstr+" newURL:"+url);
+ }
+ }
+ //------------
+ dealstartPageLoading();
+ var cacheNum= aObject.attr("cacheNum");//当第三方应用需要框架缓存曾经打开过的页面时使用。
+ var shiftJS= aObject.attr("shiftJS");//当第三方应用不需要后面的href页面进行重新加载仅仅执行某个脚本打开某个功能时使用
+ var _iframeName= aObject.attr("iframeName");//对有些第三方应用设置了顶层frame名字的,这个必须设置
+ var _iframeAutoScroll= aObject.attr("iframeAutoScroll");//设置iframe的滚动条是否出现,可以设置为auto,yes或者no,默认为no 不出现.
+ _iframeAutoScroll=!!_iframeAutoScroll?(_iframeAutoScroll==='yes'?'yes':_iframeAutoScroll==='auto'?'auto':'no'):'no';
+ _xdomain= aObject.attr("xdomain");//对有些第三方应用如果跨域了,需要设置这个信任域属性,以便于来跨域通讯.这里取值是一个正则表达式
+ _xdomain=_xdomain&&_xdomain.length>0?_xdomain:"*";
+ var _cssfile= aObject.attr("cssSrc");//设置iframe中页面需要动态加载的css文件.
+ _cssfile=(_cssfile&&_cssfile.length>0)?_cssfile:"";
+ var _runShiftJS="";
+ var pageContentBody=$('.page-content .page-content-body');
+ var tabHtml="";
+ var tabContentHtml="";
+ var tabID="";
+ var tabContentID="";
+ var iframename='';
+ function createIframe(pdiv,url,id,name,clsname,xdom,autoScroll){
+ var pymParent = new pym.Parent(pdiv, url, {xdomain:xdom});
+ pymParent.iframe.id=id;
+ pymParent.iframe.name=name;
+ //pymParent.iframe.setAttribute('display', "none");
+ //pymParent.iframe.style.height="100%";
+ //pymParent.iframe.setAttribute('height', "100%");
+ pymParent.iframe.setAttribute('class', clsname);
+ pymParent.iframe.setAttribute('allowfullscreen','');
+ pymParent.iframe.setAttribute('mozallowfullscreen','');
+ pymParent.iframe.setAttribute('oallowfullscreen','');
+ pymParent.iframe.setAttribute('msallowfullscreen','');
+ pymParent.iframe.setAttribute('webkitallowfullscreen','');
+ //pymParent.iframe.setAttribute('scrolling',autoScroll);
+ pymParent.iframe.setAttribute('onload', 'ZteFrameWork.SyncCSS(this,0,"'+_cssfile+'");ZteFrameWork.stopPageLoading();');
+ cachedIframesObject.replace(id,pymParent);//缓存iframe对象实体
+ pymParent.onMessage('height', function(he){
+ console.log("The frame "+id+" receive message height is "+he);
+ var pagemyIframe=$('.page-content .page-content-body .'+id);
+ var h=Math.max(this.minHeight,he);
+ pagemyIframe.height(h);
+ });
+ return pymParent;
+ };
+
+ if(cacheNum){//处理缓存iframe和iframename标签
+ cacheNum="page-mainIframe"+cacheNum;
+ iframename="fraMain"+cacheNum;
+ }else{
+ cacheNum="page-mainIframe";
+ iframename="fraMain";
+ }
+ iframename=!!_iframeName?_iframeName:iframename;
+ _iframe= cacheNum;//注意这里_iframe是一个全局变量
+
+ var miframe=_iframe==""?"page-mainIframe": _iframe;
+ var pagemyIframe=$('.page-content .page-content-body .'+miframe);
+ var nagivJS=e&&e.data&&e.data.action?e.data.action:"";
+ nagivJS=(!!nagivJS&&nagivJS.length>0)?(nagivJS.trim().toLowerCase()=="null"?nagivJS:"javascript:$('.page-content .page-content-body ."+miframe+"')[0].contentWindow."+nagivJS.trim()+";"):"";
+ nagivJS=nagivJS.trim();
+
+ _runShiftJS=(!!shiftJS&&shiftJS.length>0)?(shiftJS.trim().toLowerCase()=="null"?shiftJS:"javascript:$('.page-content .page-content-body ."+miframe+"')[0].contentWindow."+shiftJS+";"):"";
+ if(pagemyIframe&&pagemyIframe.length>0){//如果iframe已经添加了,则直接更改url或者执行切换或导航函数
+ var src=pagemyIframe.attr("src");
+ if((!!shiftJS||nagivJS.length>0)&&(src==url||src.split('?')[0]==url.split('?')[0])&& cacheNum!="page-mainIframe") { //url相同时,处理缓存shiftJS标签
+ //这里shiftJS必须定义iframe中的页面定义到window上的函数;
+ //pagemyIframe.attr("scrolling",_iframeAutoScroll);
+ cachedIframesObject.items(miframe).settings.xdomain=_xdomain;
+ if(nagivJS.length>0&&nagivJS.toLowerCase()!="null")
+ _runShiftJS=nagivJS;//如果是nagivJS导航过来的,nagivJS优先级高于shiftJS,如果有nagivJS就用nagivJS替换_runShiftJS; 直接执行一次导航切换
+ try{
+ if(_runShiftJS.trim().toLowerCase()!="null")
+ eval(_runShiftJS);
+ }catch(e){
+ if (e instanceof EvalError) {
+ console.log(e.name + " EvalError: " + e.message);
+ } else if (e instanceof SyntaxError) {
+ console.log(e.name + " SyntaxError: " + e.message);
+ }else if (e instanceof Error) {
+ if(e.name.toLowerCase().trim()=="typeerror")
+ {
+ //console.log($.i18n.prop('com_zte_ums_ict_framework_ui_clickTooFast'));
+ var parm={runShiftJS:_runShiftJS};
+ pagemyIframe.one('load',parm,function(e){
+ var runShiftJS=e&&e.data&&e.data.runShiftJS?e.data.runShiftJS:"";
+ if(runShiftJS.length>0&&runShiftJS.toLowerCase()!="null")
+ eval(runShiftJS);//点击太快了,页面没有加载完毕,那就加载完毕了再次执行
+ })
+ }
+ }
+ return false;//返回false 后续不再做其他动作了
+ }
+ finally{
+ ZteFrameWork.stopPageLoading();
+ }
+ }else{//否则url不同,或者url相同但没有shiftjs
+ if(nagivJS.length>0&&nagivJS.toLowerCase()!="null"){//如果是代码导航过来的去掉url参数中的默认action动作
+ url=url.split('?')[0];//去掉?参数,防止默认执行动作,只响应nagivJS指定的动作;
+ }
+ if(src.split('#')[0]!=url.split('#')[0])//如果相等说明是通过锚点导航的,真实url没有变化,对SPA应用比较普遍
+ {
+ pagemyIframe.attr("src","");//url和src不同说明更换了页面,需要清空重新加载
+ }else //if (src.trim()==url.trim()) //没有shiftjs并且url相同,说明不需要再次加载了,已经加载过了
+ {
+ ZteFrameWork.stopPageLoading();
+ }
+ pagemyIframe.attr("src",url);
+
+ if(nagivJS.length>0&&nagivJS.toLowerCase()!="null"){//如果是nagivJS导航过来的,iframe加载完毕后执行一次导航切换脚本
+ var parm={nagivJS:nagivJS};
+ pagemyIframe.one('load',parm,function(e){
+ var nagivJS=e&&e.data&&e.data.nagivJS?e.data.nagivJS:"";
+ if(nagivJS.length>0&&nagivJS.toLowerCase()!="null")
+ eval(nagivJS);//如果没有加载过,加载后也要执行跳转的函数
+ });
+ }
+ if(_cssfile.length>0&&_cssfile.toLowerCase()!="null"){//如果配置了cssSrc,每次切换都重新执行一边这个css文件,防止有遗漏
+ parm={syncCSSJS:'ZteFrameWork.SyncCSS(this,10,"'+_cssfile+'");ZteFrameWork.stopPageLoading();'};
+ pagemyIframe.one('load',parm,function(e){
+ var syncCSSJS=e&&e.data&&e.data.syncCSSJS?e.data.syncCSSJS:"";
+ if(syncCSSJS.length>0&&syncCSSJS.toLowerCase()!="null")
+ eval(syncCSSJS);
+ });
+ }
+ }
+
+ }else{//否则添加新的iframe元素 overflow:visible;
+ if(nagivJS.length>0&&nagivJS.toLowerCase()!="null"){//如果是代码导航过来的去掉url参数中的默认action动作
+ url=url.split('?')[0];//去掉?参数,防止默认执行动作,只响应nagivJS指定的动作;
+ }
+ var pdiv="pdiv_"+miframe;
+ if($("#"+pdiv).length<=0){//检查下,如果该div没有添加过就添加
+ pageContentBody.append("<div id='"+pdiv+"'></div>");
+ }
+ dealstartPageLoading();
+ pymParent=createIframe(pdiv, url,miframe,miframe,miframe,_xdomain,_iframeAutoScroll);
+ pagemyIframe=$(pymParent.iframe);
+
+ if(nagivJS.length>0&&nagivJS.toLowerCase()!="null"){//如果是nagivJS导航过来的,iframe加载完毕后执行一次导航切换
+ var parm={nagivJS:nagivJS};
+ pagemyIframe=$('.page-content .page-content-body .'+miframe);
+ if(pagemyIframe&&pagemyIframe.length>0){
+ pagemyIframe.one('load',parm,function(e){
+ var nagivJS=e&&e.data&&e.data.nagivJS?e.data.nagivJS:"";
+ if(nagivJS.length>0&&nagivJS.toLowerCase()!="null")
+ eval(nagivJS);//如果没有加载过,加载后也要执行跳转的函数
+ })
+ }
+ }
+
+ }
+ showIframe(miframe);
+ ZteFrameWork.fixContentHeight(); // 调整高度
+ return true;
+ }
+ // 处理边栏菜单
+ var dealLiAClick=function(source){
+ if (source.next().hasClass('sub-menu') == false) {
+ if ($('.btn-navbar').hasClass('collapsed') == false) {
+ $('.btn-navbar').click();
+ }
+ return;
+ }
+
+ if (source.next().hasClass('sub-menu always-open')) {
+ return;
+ }
+ var parent = source.parent().parent();
+ var the = source;
+ var menu = $('.page-sidebar-menu');
+ var sub = source.next();
+ var autoScroll = menu.data("auto-scroll") ? menu.data("auto-scroll") : true;
+ var slideSpeed = menu.data("slide-speed") ? parseInt(menu.data("slide-speed")) : 200;
+ parent.children('li.open').children('a').children('.arrow').removeClass('open');
+ parent.children('li.open').children('.sub-menu:not(.always-open)').slideUp(200);
+ parent.children('li.open').removeClass('open');
+ var slideOffeset = -200;
+ if (sub.is(":visible")) {
+ $('.arrow', source).removeClass("open");
+ source.parent().removeClass("open");
+ sub.slideUp(slideSpeed, function () {
+ if (autoScroll == true && $('body').hasClass('page-sidebar-closed') == false) {
+ if ($('body').hasClass('page-sidebar-fixed')) {
+
+ } else {
+ dealScrollTo(the, slideOffeset);
+ }
+ }
+ dealSidebarAndContentHeight();
+ });
+ } else {
+ $('.arrow', source).addClass("open");
+ source.parent().addClass("open");
+ sub.slideDown(slideSpeed, function () {
+ if (autoScroll == true && $('body').hasClass('page-sidebar-closed') == false) {
+ if ($('body').hasClass('page-sidebar-fixed')) {
+ dealScrollTo(the, slideOffeset);
+ }
+ }
+ dealSidebarAndContentHeight();
+ });
+ }
+ }
+ var dealSidebarMenu = function () {//这里注册和处理边栏菜单的各类点击事件
+ $('.page-sidebar').on('click', 'li > a', function (e) {
+ if ($(this).next().hasClass('sub-menu') == false) {
+ if ($('.btn-navbar').hasClass('collapsed') == false) {
+ $('.btn-navbar').click();
+ }
+ return;
+ }
+ if ($(this).next().hasClass('sub-menu always-open')) {
+ return;
+ }
+ dealLiAClick($(this));
+ e.preventDefault();
+ });
+
+ // 处理左边导航中的菜单连接,显示在iframe中
+ $('.page-sidebar').on('click', ' li > a.iframe', function (e) {
+ //dealMenuItemClick($(this),e,"page-sidebar")
+ e.preventDefault();
+ var menuItemID=$(this).attr("id");
+ if(!!menuItemID&&menuItemID.length>0){
+ _setLocationHash(menuItemID);
+ _hashSource="dhByInterface";
+ }//else{
+ _isClicked=true;
+ dealMenuItemClick($(this),e,"page-sidebar");
+ //}
+ });
+ // 处理更多菜单的菜单连接,显示在iframe中dropdown-menu
+ $('.page-breadcrumb').on('click', ' li > a.iframe', function (e) {
+ var url = $(this).attr("href");
+ if(url.length<2)
+ return;
+ e.preventDefault();
+ dealBreadcrumbBtnMenuItemClick($(this),e);
+ });
+ // 处理可翻页更多菜单中的菜单连接,显示在iframe中dropdown-menu
+ $('#pageableDiv').on('click', ' div > a.iframe', function (e) {
+ var url = $(this).attr("href");
+ if(url.length<2)
+ return;
+ e.preventDefault();
+ dealBreadcrumbBtnMenuItemClick($(this),e);
+ });
+ // 处理可翻页更多菜单中的菜单连接,显示在iframe中dropdown-menu
+ $('#pageableDiv').on('click', ' li > a.iframe', function (e) {
+ var url = $(this).attr("href");
+ if(url.length<2)
+ return;
+ e.preventDefault();
+ if(e.target){
+ var tg=$("span",e.target);
+ tg=tg.length>0?tg[0]:e.target;
+ $(".open a>div>span",e.target.parentNode.parentNode.parentNode.parentNode.parentNode).replaceWith(tg.outerHTML);
+ }
+ dealBreadcrumbBtnMenuItemClick($(this),e);
+ });
+
+ // 处理header下拉菜单中的菜单连接,显示在iframe中
+ $('.dropdown').on('click', ' li > a.iframe', function (e) {
+ var url = $(this).attr("href");
+ if(url.length<2)
+ return;
+ e.preventDefault();
+ dealScrollTo();
+ dealstartPageLoading();
+
+ dealIframe($(this),e)
+ dealBreadcrumb($(this),false,e);
+ });
+ }
+ var getSceneURL=function(url){
+ if(url&&url.trim().length>0){
+ url=url.trim();
+ //url=
+ _sceneURLRootPath=_sceneURLRootPath+url;
+ }
+ }
+ var gurl="";//临时全局变量,存储当前加载的more菜单,如果加载过了,就不再加载了。下面的方法中会用到
+ var moreMenusisLoaded=true;
+ var waittime=null;
+ var getBreadcrumbRightButtons=function(url,e){
+ if (url.length<2){
+ return;
+ }
+ url=ZteFrameWork.handlBaseURL(url);
+ if (gurl==url){
+ if(e===true){
+ $('#pageableDiv').show();
+ }else if(e&&e.target&&e.currentTarget){
+ var defaultDisplay=$(e.target).attr("defaultDisplay");
+ defaultDisplay=(!defaultDisplay)?$(e.currentTarget).attr("defaultDisplay"):defaultDisplay;
+ if(defaultDisplay&&defaultDisplay.trim()=="false"){
+ $('#pageableDiv').hide();
+ }else{
+ $('#pageableDiv').show();
+ }
+ }
+ return;
+
+ }else{
+ gurl=url;
+ clearMoreOperations();
+ }
+ //处理e参数,注意e可能为null
+ var breadmenuID=e&&e.data&&e.data.breadcrumbBtnMenuItem&&e.data.breadcrumbBtnMenuItem.length>0?e.data.breadcrumbBtnMenuItem:"";
+ breadmenuID=breadmenuID.length<=0?(e&&e.breadcrumbBtnMenuItem&&e.breadcrumbBtnMenuItem.length>0?e.breadcrumbBtnMenuItem:""):breadmenuID;
+ moreMenusisLoaded=false;
+ $.ajax({
+ type: "GET",
+ cache: false,
+ url: url,
+ dataType: "html",
+ success: function (res) {
+ try{
+ //$('.page-breadcrumb').append(res);
+ var resScriptsSriped = stripHtmlScripts(res);
+ //$('.page-breadcrumb').append(resScriptsSriped);
+ $('.more-botton-zone').children().remove();
+ //V5新增逻辑,如果displayType = pageableDiv,那么就用滑动的DIV来显示更多菜单里面的内容,如果没有配置,或为其他值,就按原有方式显示
+ var tempDiv = $('<div style="display:none"></div>');
+ tempDiv.children().remove();
+ tempDiv.append(resScriptsSriped);
+
+ //获取UL属性
+ var displayType = $('.dropdown-menu',tempDiv).attr('displayType');
+ if( displayType && displayType != 'pageableDiv'){
+ $('.more-botton-zone').append(resScriptsSriped);
+ $('#pageableDiv').hide();
+ }else{
+ var tempUl = $('.dropdown-menu',tempDiv);
+ if(tempUl.length>0){
+ moreOperations(tempUl[0]);
+ if(e&&e.target&&e.currentTarget){
+ var defaultDisplay=$(e.target).attr("defaultDisplay");
+ defaultDisplay=(!defaultDisplay)?$(e.currentTarget).attr("defaultDisplay"):defaultDisplay;
+ if(defaultDisplay&&defaultDisplay.trim()=="false"){
+ $('#pageableDiv').hide();
+ }else{
+ $('#pageableDiv').show();
+ }
+ }
+ }
+ }
+ runHtmlScripts(res);
+ }catch(ex){
+ }finally{
+ moreMenusisLoaded=true;
+ }
+ groupButtonAuthentication();
+ if(breadmenuID.length>0){//面包削导航来的,只需要重新生成面包削即可
+ var menuitem=undefined;
+ var panel = $('.zte-theme-panel');
+ var navPosOption = $('.nav-pos-direction', panel).val();
+ //var items=$("a[id='"+breadmenuID+"']");
+ var items = undefined;
+ if (navPosOption === "vertical"){ //从垂直菜单里面找
+ items=$("#page-sidebar-menu a[id='"+breadmenuID+"']");
+
+ }else{//从水平菜单里面找
+ items=$(".hor-menu a[id='"+breadmenuID+"']");
+ }
+ if (!items || items.length < 1) {
+ items=$(".page-content a[id='"+breadmenuID+"']");
+ }
+ if(items.length>0){
+ for(var i=0;i<items.length;i++){
+ if($(items[i]).parentsUntil('.more-botton-zone .btn-group').hasClass('dropdown-menu')){
+ menuitem=$(items[i]);
+ break;
+ }
+ if($(items[i]).parentsUntil('#pageableDiv').hasClass('row1')){
+ menuitem=$(items[i]);
+ break;
+ }
+ }
+ }
+ if(!!menuitem&&menuitem.length>0)
+ dealBreadcrumbBtnMenuItemClick(menuitem,e);
+ }
+ },
+ error: function (xhr, ajaxOptions, thrownError) {//加载操作菜单失败!com_zte_ums_ict_framework_ui_loadmenuerror
+ $('.page-breadcrumb').append('<h4>'+$.i18n.prop('com_zte_ums_ict_framework_ui_loadmenuerror')+'</h4>');
+ moreMenusisLoaded=true;
+ }
+ });
+ }
+
+ //处理多tab也场景 ----redirect 该标签暂时保留,不建议使用了
+ dealMultTabPage=function(clickedObject){
+ var url = clickedObject.attr("href");
+ if(!url||url.length<2)
+ return;
+ var redirect=clickedObject.attr("redirect"); //处理多tab页面的需求
+ if (!!redirect&&redirect.length>0){
+ var miframe=_iframe==""?"page-mainIframe": _iframe;
+ var pagemyIframe=$('.page-content .page-content-body .'+miframe); //.page-mainIframe
+ //var pagemyIframe=$('.page-content .page-content-body .page-mainIframe');
+ var oldhref="";
+ if(pagemyIframe&&pagemyIframe.length>0){
+ oldhref=pagemyIframe.attr("src");
+ if(url.split("?")[0]==oldhref.split("?")[0])
+ {
+ eval(redirect);
+ dealBreadcrumb(clickedObject,false,e);
+ return true;
+ }
+ }
+ };
+ return false;
+ };
+ //处理主菜单面包削导航
+ var globleCurrentBreadcrumb="";
+ var globleCurrentMainMenuItemID="";
+ var dhByBreadcrumb = false;
+ var dealBreadcrumb=function(clickedObject,notGenUID,e){//notGenUID为true就不重新生成id
+ var mbreadcrumb=$('.breadcrumbUl');
+ ZteFrameWork.setPageTitle(clickedObject.find('span').text().trim());
+ var clieckedObj= clickedObject.parent('li');
+ if(clieckedObj.length == 0){ //分页式更多菜单,a链接的父亲是div
+ clieckedObj= clickedObject.parent('div');
+ }
+ //如果点击的是F菜单的竖菜单,还需要找到横菜单上的对应父亲加入到clieckedObj
+ var navPosOption = $('.nav-pos-direction', panel).val();
+ var parentid = clickedObject.attr('hparentid');
+ var breadcrumGroupButtonSrc=clickedObject.attr("breadcrumGroupButtonSrc");
+ globleCurrentMainMenuItemID=clickedObject.attr("id");
+ var mhmtl="";
+ var url="";
+ var tempObj=null;
+ //var breadChangeType = e? (e.data ? e.data.breadChangeType:null):null;
+ if( dhByBreadcrumb ){
+ mhmtl = dealClickBreadcrumb(clieckedObj);
+ dhByBreadcrumb = "";
+ }else{
+ while (clieckedObj&&clieckedObj.length>0){
+ if(clieckedObj.children('a')){
+ if(!notGenUID){
+ url=ZteFrameWork.getUniqueID("aid");//+Math.floor(Math.random() * (new Date()).getTime());
+ clieckedObj.children('a').attr("name",url);
+ }else{
+ url=clieckedObj.children('a').attr("name");
+ }
+ tempObj=clieckedObj.clone();
+ tempObj.children('a').removeClass('iframe');
+ tempObj.children('a').removeClass('active');
+ tempObj.children('a').attr("href","javascript:ZteFrameWork.goToURL('"+url+"');");
+ var arrowdown = $(".fa-angle-down", tempObj.children('a'));
+ if (arrowdown) {
+ arrowdown.remove();
+ }
+ if(tempObj.children('a').length>0){
+ mhmtl=tempObj.children('a')[0].outerHTML+"<i class='fa fa-angle-right'></i>"+mhmtl;
+ }
+ //如果是F菜单和横菜单的子竖菜单点击,需要做特殊处理
+ if( clieckedObj.parent('ul').attr('id') == fMenuSiderDivId || clieckedObj.parent('ul').attr('id') == megaSiderDivId){
+ var id = clieckedObj.children( 'a' ).attr('hparentid');
+ //判断是F菜单还是横菜单
+ var megaMenu = null;
+ if(navPosOption == zteframework_menu_horizontal){
+ magaMenu = $('#'+megaDivId);
+ }else if(navPosOption == zteframework_menu_fmenu){
+ magaMenu = $('#'+fMenuMegaDivId);
+ }
+ clieckedObj = $("a[id=" + id + "]" , magaMenu).parent('li');
+ }else{
+ clieckedObj=clieckedObj.parents('li');
+ }
+ }
+ }
+ if(clieckedObj[0]&&clieckedObj[0].length>0) {
+ mhmtl=clieckedObj.children('a')[0].outerHTML+"<i class='fa fa-angle-right'></i>"+mhmtl;
+ }
+ }
+ mbreadcrumb.empty();
+ $('.more-botton-zone').empty();
+ globleCurrentBreadcrumb=mhmtl;
+ store("globleCurrentBreadcrumb",globleCurrentBreadcrumb);
+ mbreadcrumb.append(mhmtl);
+ if(breadcrumGroupButtonSrc&&breadcrumGroupButtonSrc.length>0){
+ getBreadcrumbRightButtons(breadcrumGroupButtonSrc,e);
+ }else{
+ $('#pageableDiv').hide();
+ }
+
+ };
+ //面包屑发起的点击,就不重新生成面包屑,只是把该面包屑的后续节点移出。
+ var dealClickBreadcrumb = function(clieckedObj){
+ var index = globleCurrentBreadcrumb.indexOf(clieckedObj.children('a').attr("name"));
+ if( index > -1 ){//截取
+ var indexofSign = globleCurrentBreadcrumb.indexOf("<i class='fa fa-angle-right'>",index);
+ var newBreadcrumb = globleCurrentBreadcrumb.substring(0,indexofSign) + "<i class='fa fa-angle-right'></i>";
+ return newBreadcrumb;
+ }
+ }
+ //处理面包削中菜单点击后的导航(更多菜单的面包屑)
+ var dealBreadcrumbBtnGroupMenus=function(clickedObject,notGenUID , e ){
+ var mbreadcrumb=$('.breadcrumbUl');
+ var clieckedObj= clickedObject.parent();
+ var breadcrumGroupButtonSrc=clickedObject.attr("breadcrumGroupButtonSrc");
+ var mhmtl="";
+ var url="";
+ var tempObj=null;
+ var menuid=clickedObject.attr("id");
+ if (!breadcrumbBtnMenus.contains(menuid)) {//把当前面包削中的菜单id和该子菜单对应的父菜单关联缓存起来
+ breadcrumbBtnMenus.add(menuid,globleCurrentMainMenuItemID);
+ }
+ while (clieckedObj&&clieckedObj.length>0){
+ tempObj=clieckedObj.clone();
+ if(tempObj.children('a')){
+ tempObj.children('a').removeClass('iframe');
+ url=tempObj.children('a').attr("href");
+ tempObj.children('a').attr("onclick","ZteFrameWork.openbreadcrumbLink($(this),event);");
+ var tempdiv = tempObj.children('a').children('div');
+ if( tempdiv.length > 0 ){
+ var innerofDiv = tempdiv[0].innerHTML;
+ tempdiv.remove();
+ tempObj.children('a')[0].innerHTML = innerofDiv;
+ }
+ if(tempObj.children('a').length>0){
+ mhmtl=tempObj.children('a')[0].outerHTML+"<i class='fa fa-angle-right'></i>"+mhmtl;
+ }
+ clieckedObj=clieckedObj.parents('li');
+ }
+
+ }
+ if(clieckedObj[0]&&clieckedObj[0].length>0) {
+ mhmtl=clieckedObj.children('a')[0].outerHTML+"<i class='fa fa-angle-right'></i>"+mhmtl;
+ }
+
+ if(breadcrumGroupButtonSrc&&breadcrumGroupButtonSrc.length>0){
+ getBreadcrumbRightButtons(breadcrumGroupButtonSrc,true);
+ }else{
+ $('#pageableDiv').hide();
+ }
+ mbreadcrumb.empty();
+ var category= clickedObject.attr("category");//处理菜单中定义的Category属性
+ if(category&&category.length>0){//处理Category属性
+ var newIpPort=_menuCategorys.items(category);
+ if(newIpPort&&newIpPort.ipTitle&&newIpPort.ipTitle.trim()!=""){//如果找到了
+ mhmtl=newIpPort.ipTitle+'<i class="fa fa-angle-right"></i>'+mhmtl;
+ }
+ }
+ mhmtl=globleCurrentBreadcrumb+mhmtl;
+ mbreadcrumb.append(mhmtl);
+ };
+ var isMoreMenuItemClick = false;
+ var dealBreadcrumbBtnMenuItemClick=function(clickObj,e){
+ dealScrollTo();
+ var menuItemID=clickObj.attr("id");
+ if(!!menuItemID&&menuItemID.length>0){
+ _setLocationHash(menuItemID);
+ var breadmenuID=e&&e.data&&e.data.breadcrumbBtnMenuItem&&e.data.breadcrumbBtnMenuItem.length>0?e.data.breadcrumbBtnMenuItem:"";
+ _hashSource=breadmenuID&&breadmenuID.length>0?"":"dhByInterface";//hash进来的,不是导航进来的。
+ }
+ if(!(e&&e.breadcrumbBtnMenuItem&&e.breadcrumbBtnMenuItem.length>0)){//如果仅仅是tab跳转设置bread进来的,就框架不处理菜单点击,直接重新建立bread即可
+ dealstartPageLoading();
+ dealIframe(clickObj,e);
+ }
+ dealBreadcrumbBtnGroupMenus(clickObj,false,e);
+ }
+ // 固定边栏布局时计算边栏高度.
+ var _calculateFixedSidebarViewportHeight = function () {
+ var viewport = _getViewPort();
+ var sidebarHeight =viewport.height - $('.header').height() + 1;
+ if ($('body').hasClass("page-footer-fixed")) {
+ sidebarHeight = sidebarHeight - (!$('.footer')||$('.footer').length<=0)?0:$('.footer').outerHeight();
+ }
+ return sidebarHeight;
+ }
+ // 处理固定边栏
+ var dealFixedSidebar = function () {
+ var menu = $('.page-sidebar-menu');
+ if (menu.parent('.slimScrollDiv').size() === 1) {
+ menu.removeAttr('style');
+ $('.page-sidebar').removeAttr('style');
+ }
+
+ if ($('.page-sidebar-fixed').size() === 0) {
+ dealSidebarAndContentHeight();
+ return;
+ }
+
+ var viewport = _getViewPort();
+ if (viewport.width >= zteframework_smallView) {
+ var sidebarHeight = _calculateFixedSidebarViewportHeight();
+ dealSidebarAndContentHeight();
+ }
+ }
+ // 固定边栏时处理菜单 hover 效果.
+ var dealFixedSidebarHoverable = function () {
+ if ($('body').hasClass('page-sidebar-fixed') === false) {
+ return;
+ }
+ $('.page-sidebar').off('mouseenter').on('mouseenter', function () {
+ dealSiderBarMouseenter();
+ });
+ $('.page-sidebar').off('mouseleave').on('mouseleave', function () {
+ dealSiderBarMouseLeave();
+ });
+ }
+ var dealSiderBarMouseenter=function(){
+ var body = $('body');
+ var siderbar=$('.page-sidebar');
+ if ((body.hasClass('page-sidebar-closed') === false || body.hasClass('page-sidebar-fixed') === false) || $(this).hasClass('page-sidebar-hovering')) {
+ return;
+ }
+ body.removeClass('page-sidebar-closed').addClass('page-sidebar-hover-on');
+ var siderbartoggle=$('.sidebar-toggler');
+
+ if (body.hasClass("page-sidebar-reversed")) {
+ siderbar.width(_sidebarWidth);
+ dealSiderBarWidthChange();
+ } else {
+ siderbar.addClass('page-sidebar-hovering');
+ siderbar.animate({
+ width: _sidebarWidth
+ }, 350, '', function () {
+ siderbar.removeClass('page-sidebar-hovering');
+ dealSiderBarWidthChange();
+ });
+ }
+ }
+ var dealSiderBarMouseLeave=function(){
+ var body = $('body');
+ if ((body.hasClass('page-sidebar-hover-on') === false || body.hasClass('page-sidebar-fixed') === false) || $(this).hasClass('page-sidebar-hovering')) {
+ return;
+ }
+ var siderbar=$('.page-sidebar');
+ var siderbartoggle=$('.sidebar-toggler');
+ if (body.hasClass("page-sidebar-reversed")) {
+ body.addClass('page-sidebar-closed').removeClass('page-sidebar-hover-on');
+ siderbar.width(_sidebarCollapsedWidth);
+ if(siderbartoggle){
+ siderbartoggle.removeAttr('style');
+ }
+ dealSiderBarWidthChange();
+ } else {
+ siderbar.addClass('page-sidebar-hovering');
+ siderbar.animate({
+ width: _sidebarCollapsedWidth
+ }, 350, '', function () {
+ body.addClass('page-sidebar-closed').removeClass('page-sidebar-hover-on');
+ dealSiderBarWidthChange();
+ siderbar.removeClass('page-sidebar-hovering');
+ if(siderbartoggle){
+ siderbartoggle.removeAttr('style');
+ }
+ });
+ }
+
+ }
+ //处理style css
+ var dealAddStyle=function(element, property, value, important) {
+ var styleText=element.attr('style')?element.attr('style'):"";
+ styles=styleText.split(";");
+ var find="";
+ for(i=0;i<styles.length;i++){
+ if(styles[i].indexOf(property)>=0){
+ find=styles[i];//看是否已经添加过,如果添加过就需要替换掉
+ break;
+ }
+ }
+ styleText=find.length>0?styleText.replace(find,""):styleText;
+ styleText=(styleText + ';'+property + ':' + value + ((important) ? ' !important' : '') + ';').replace(/;;/g,";");
+ element.attr('style',styleText );
+ }
+ var dealSiderBarWidthChange=function(){
+
+ }
+ // 处理边栏菜单切换时的关闭和隐藏.
+ var dealSidebarToggler = function () {
+ var viewport = _getViewPort();
+ if (getCookie('sidebar_closed') === '1' && viewport.width >= zteframework_smallView) {
+ $('body').addClass('page-sidebar-closed');
+ }
+ $('.page-sidebar, .sidebar-toggler').on('click', '.sidebar-toggler', function (e) {
+ e.preventDefault();
+ var body = $('body');
+ var sidebar = $('.page-sidebar');
+ if(body.hasClass('page-sidebar-closed')){
+ $(this).removeAttr('style');
+ }
+ } );
+ $('.page-sidebar, .header').on('click', '.sidebar-toggler', function (e) {
+ var body = $('body');
+ var sidebar = $('.page-sidebar');
+ if ((body.hasClass("page-sidebar-hover-on") && body.hasClass('page-sidebar-fixed')) || sidebar.hasClass('page-sidebar-hovering')) {
+ body.removeClass('page-sidebar-hover-on');
+ sidebar.css('width', '').hide().show();
+ dealSidebarAndContentHeight(); //fix content & sidebar height
+ setCookie('sidebar_closed', '0');
+ dealSiderBarWidthChange();
+ e.stopPropagation();
+ runResponsiveHandlers();
+ return;
+ }
+ $(".sidebar-search", sidebar).removeClass("open");
+ var panel = $('.zte-theme-panel');
+ var sidebarPosOption = $('.sidebar-pos-option', panel).val();
+ var pcontent = $("[class='page-content']");
+ if (body.hasClass("page-sidebar-closed")) {
+ body.removeClass("page-sidebar-closed");
+ if (body.hasClass('page-sidebar-fixed')) {
+ sidebar.css('width', '');
+ }
+ setCookie('sidebar_closed', '0');
+ pcontent.css("marginLeft",_sidebarWidth);
+ dealSiderBarWidthChange();
+ } else {
+ body.addClass("page-sidebar-closed");
+ $(this).removeAttr('style');
+ setCookie('sidebar_closed', '1');
+ pcontent.css("marginLeft", _sidebarCollapsedWidth);
+ dealSiderBarWidthChange();
+ }
+ //针对侧边栏伸缩的情况需加入对.page-content的判断。
+ dealSidebarAndContentHeight(true);
+ runResponsiveHandlers();
+ });
+ }
+ // 处理水平菜单
+ var dealHorizontalMenu = function () {
+ $('.header').on('click', '.hor-menu .hor-menu-search-form-toggler', function (e) {
+ if ($(this).hasClass('off')) {
+ $(this).removeClass('off');
+ $('.header .hor-menu .search-form').hide();
+ } else {
+ $(this).addClass('off');
+ $('.header .hor-menu .search-form').show();
+ }
+ e.preventDefault();
+ });
+ // 处理水平菜单 处理header下拉菜单中的菜单连接,显示在iframe中
+ $('.header').on('click', ' li > a.iframe', function (e) {
+ //dealMenuItemClick($(this),e,"header");
+ e.preventDefault();
+ var menuItemID=$(this).attr("id");
+ if(!!menuItemID&&menuItemID.length>0){
+ _setLocationHash(menuItemID);
+ _hashSource="dhByInterface";
+ }//else{
+ _isClicked=true;
+ dealMenuItemClick($(this),e,"header");
+ //}
+ });
+ //处理TAB点击
+ $('.header').on('click', '.hor-menu a[data-toggle="tab"]', function (e) {
+ e.preventDefault();
+ var nav = $(".hor-menu .nav");
+ var active_link = nav.find('li.current');
+ $('li.active', active_link).removeClass("active");
+ $('.selected', active_link).remove();
+ var new_link = $(this).parents('li').last();
+ new_link.addClass("current");
+ new_link.find("a:first").append('<span class="selected"></span>');
+ });
+ }
+ // 增加一个对服务端的心跳
+ var doHeartbeat = function() {
+ //心跳超时次数
+ var heartBeatTimes = 0;
+ return setInterval(function() {
+ var userName;
+ if( userName == null ){
+ var userName = ZteFrameWork_conf.userName;
+ }
+ var heartUrl = FrameConst.REST_HEARTBEAT + "?username=" + encodeURIComponent(userName);
+ $.ajax(heartUrl, {
+ dataType : "text",
+ cache : false
+ }).done(function(data) {
+ // if (data != "true") { //收到不属于取值范围内的回复,说明出现不可预知情况,取消心跳。是原framework.js中的逻辑,比较奇怪,先保留注释。
+ // disableHeartbeat();
+ // }
+ //收到心跳回应消息,心跳超时次数置0
+ if( data == "true" ){
+ heartBeatTimes = 0;
+ }
+ });
+ heartBeatTimes++;
+ //心跳超时6次即1分钟,转到登录界面,认为链路断。
+ if(heartBeatTimes >= 6){
+ disableHeartbeat();
+ //console.log(com_zte_ums_aos_framework_ui_heartbeat_timeout);
+ bootbox.alert($.i18n.prop('com_zte_ums_aos_framework_ui_heartbeat_fail'), function () {
+ window.location.replace("login.html");
+ });
+ }
+ }, 10000);
+ };
+ if( FrameConst.do_heartbeat ){
+ var heartbeatTimer = doHeartbeat();
+ }
+ window.enableHeartbeat = function() {
+ if (!heartbeatTimer) {
+ //重新启动心跳功能,心跳超时次数置0
+ heartBeatTimes = 0;
+ heartbeatTimer = doHeartbeat();
+ return "Enabled";
+ }
+ return "Already enabled!";
+ };
+ window.disableHeartbeat = function() {
+ if (heartbeatTimer) {
+ clearInterval(heartbeatTimer);
+ heartbeatTimer = null;
+ return "Disabled";
+ }
+ return "Already disabled!";
+ };
+ window.doLogout = function(){
+ window.location=FrameConst.REST_LOGOUT;
+ };
+ //处理ict注销确认
+ $('#trigger_logout').click(function(){
+ bootbox.confirm($.i18n.prop('com_zte_ums_ict_framework_ui_confirmlogout'), function(result) { //你确认要注销吗?
+ if(result){
+ doLogout();
+ }
+ });
+ });
+ // Handle full screen mode toggle
+ var isscreenFull=false;
+ var dealFullScreenMode = function() {
+ // 处理全屏事件
+ function toggleFullScreen() {
+ if(!screenfull.supportsFullScreen){//不支持全屏
+ if (isIE&&typeof window.ActiveXObject !== "undefined") { // Older IE.
+ var wscript = new ActiveXObject("WScript.Shell");
+ if (wscript !== null) {
+ wscript.SendKeys("{F11}");
+ isscreenFull=!isscreenFull;
+ }
+ }else{
+ isscreenFull=screenfull.supportsFullScreen;
+ };
+ }else{
+ screenfull.isFullScreen?screenfull.exitFullScreen():screenfull.requestFullScreen();
+ isscreenFull= screenfull.isFullscreen;
+ }
+ setTimeout(function(){
+ if(isscreenFull){
+ $("#fullscreen_label").text($.i18n.prop('com_zte_ums_ict_framework_ui_group_exitfullscreen'));
+ }else{
+ $("#fullscreen_label").text($.i18n.prop('com_zte_ums_ict_framework_ui_group_fullscreen'));
+ }
+ },500);
+ }
+
+ $('#trigger_fullscreen').click(function() {
+ toggleFullScreen();
+ });
+ }
+ //清理当前正在显示的iframe之外缓存的iframe,
+ var dealClearCachedIframes=function(isall){
+ if (cachedIframes.count()>0) {
+ for (var i in cachedIframes.hash()) {
+ var pagemyIframe=$('.page-content .page-content-body .'+i);
+ if(pagemyIframe&&pagemyIframe.length>0){
+ if(isall==true){
+ pagemyIframe.attr("src","");
+ pagemyIframe.remove();
+ }else if(i!=_iframe)
+ pagemyIframe.attr("src","");
+ pagemyIframe.remove();
+ }
+ }
+ }
+ cachedIframes.clear();
+ if (cachedIframesObject.count()>0) {//清理缓存的iframe实体对象。
+ for (var i in cachedIframesObject.hash()) {
+ if(i!=_iframe)
+ cachedIframesObject.remove(i);
+ }
+ }
+ }
+ var lastSelectedLayout = '';
+ var dealTheme = function () {
+ var panel = $('.zte-theme-panel');
+ if ($('body').hasClass('page-boxed') == false) {
+ $('.layout-option', panel).val("fluid");
+ }
+ $('.sidebar-option', panel).val("default");
+ $('.language-option', panel).val(defaultLanage);
+ $('.header-option', panel).val("fixed");
+ $('.footer-option', panel).val("default");
+ if ( $('.sidebar-pos-option').attr("disabled") === false) {
+ $('.sidebar-pos-option', panel).val(ZteFrameWork.isRTL() ? 'right' : 'left');
+ }
+ var _resetLayout = function () {
+ dealResetLayout();
+ }
+ var _setLayout = function () {
+ dealSetLayout();
+ }
+ var setColor = function (color) {
+ var color_ = (ZteFrameWork.isRTL() ? color + '-rtl' : color);
+ $('#style_color').attr("href", ICTFRAME_CONST_THEME_COLOR_CSS_PREFFIX + color_ + ".css");
+ setCookie('style_color', color);
+ syncColorCSS();
+ }
+ $('.toggler', panel).click(function () {
+ $('.toggler').hide();
+ $('.toggler-close').show();
+ $('.zte-theme-panel > .theme-options').show();
+ });
+
+ $('.toggler-close', panel).click(function () {
+ $('.toggler').show();
+ $('.toggler-close').hide();
+ $('.zte-theme-panel > .theme-options').hide();
+ });
+ $('.theme-colors > ul > li', panel).click(function () {
+ var color = $(this).attr("data-style");
+ setColor(color);
+ $('ul > li', panel).removeClass("current");
+ $(this).addClass("current");
+ });
+ $('.layout-option,.header-option, .sidebar-option, .footer-option, .sidebar-pos-option, .nav-pos-direction', panel).change(_setLayout);
+ if (getCookie('style_color') != undefined) {
+ setColor(getCookie('style_color'));
+ }
+ $('.language-option', panel).change(function(){
+ var languageOption = $('.language-option', panel).val();
+ setCookie('language-option', languageOption);
+ window.location.reload();
+ });
+ }
+ var dealResetLayout = function () {
+ $("body").
+ removeClass("page-boxed").
+ removeClass("page-footer-fixed").
+ removeClass("page-sidebar-fixed").
+ removeClass("page-header-fixed").
+ removeClass("page-sidebar-reversed");
+ $('.header > .header-inner').removeClass("container");
+ if ($('.page-container').parent(".container").size() === 1) {
+ $('.page-container').insertAfter('body > .clearfix');
+ }
+ if ($('.footer > .container').size() === 1) {
+ $('.footer').html($('.footer > .container').html());
+ } else if ($('.footer').parent(".container").size() === 1) {
+ $('.footer').insertAfter('.page-container');
+ }
+ $('body > .container').remove();
+ }
+ /*
+ * 此方法在客户端初始化和设置面板上选择菜单方向的时候用。
+ * param navPosOption
+ */
+ var dealNavPos = function(navPosOption) {
+ // 横竖边栏切换功能禁用,则返回
+ var panel = $('.zte-theme-panel');
+ if ($('.nav-pos-direction', panel).attr("disabled") == "disabled") {
+ return;
+ }
+ var sidermenu = $("#page-sidebar-menu");
+ var hormenu = $("#main_hormenu");
+ var sidermenu = $("#page-sidebar-menu");
+ var hormenu = $("#main_hormenu");
+ var horSiderMenu = $('#' + megaSiderDivId );
+ var fhorMenu = $("#" + fMenuMegaDivId);
+ var fsiderMenu = $("#" + fMenuSiderDivId);
+ var pcontent = $("[class='page-content']");
+ if (sidermenu && sidermenu.length > 0 && hormenu && hormenu.length > 0 && fhorMenu && fhorMenu.length > 0) {
+ if (navPosOption === zteframework_menu_horizontal) {
+ sidermenu.css('display','none');// 侧边栏隐藏
+ fhorMenu.css('display','none');
+ fsiderMenu.css('display','none');
+ pcontent.css("marginLeft",0);
+ $("body").addClass("page-full-width");//调整内容显示
+ hormenu.css("display", "block");//显示水平菜单栏
+ // 导航位置为水平菜单时,边栏和边栏位置为默认和靠左,且将其切换功能禁用掉
+ $('.sidebar-option', panel).val("default");
+ $('.sidebar-option', panel).attr("disabled", true);
+ $('.sidebar-pos-option', panel).val("left");
+ $('.sidebar-pos-option', panel).attr("disabled", true);
+ } else if (navPosOption === zteframework_menu_vertical ) {
+ $("body").removeClass("page-full-width");
+ sidermenu.css('display','block');//侧边栏显示
+ var body = $('body');
+ if (body.hasClass("page-sidebar-closed")) {
+ pcontent.css("marginLeft", _sidebarCollapsedWidth);
+ } else {
+ pcontent.css("marginLeft", _sidebarWidth);
+ }
+ hormenu.css("display", "none");//隐藏水平菜单栏
+ fhorMenu.css('display','none');
+ fsiderMenu.css('display','none');
+ horSiderMenu.css('display','none');
+ $('.sidebar-option', panel).attr("disabled", false);
+ $('.sidebar-pos-option', panel).attr("disabled", false);
+ } else if(navPosOption === zteframework_menu_fmenu ){
+ sidermenu.css('display','none');// 侧边栏隐藏
+ hormenu.css("display", "none");//隐藏水平菜单栏
+ fsiderMenu.css('display','none');
+ fhorMenu.css('display','block');
+ pcontent.css("marginLeft",0);
+ $("body").addClass("page-full-width");//调整内容显示
+ // 导航位置为水平菜单时,边栏和边栏位置为默认和靠左,且将其切换功能禁用掉
+ $('.sidebar-option', panel).val("default");
+ $('.sidebar-option', panel).attr("disabled", true);
+ $('.sidebar-pos-option', panel).val("left");
+ $('.sidebar-pos-option', panel).attr("disabled", true);
+ }
+ }
+ }
+ var dealSetLayout = function(){
+ var panel = $('.zte-theme-panel');
+ var layoutOption = $('.layout-option', panel).val();
+ var languageOption = $('.language-option', panel).val();
+ var headerOption = $('.header-option', panel).val();
+ var footerOption = $('.footer-option', panel).val();
+ var navPosOption = $('.nav-pos-direction', panel).val();
+ dealNavPos(navPosOption);
+ var sidebarOption = $('.sidebar-option', panel).val();
+ var sidebarPosOption = $('.sidebar-pos-option', panel).val();
+ if (sidebarOption == "fixed" && headerOption == "default") {
+ alert($.i18n.prop('com_zte_ums_ict_framework_ui_fixedsidedefaultheaderError')); //页头不支持固定边栏,先固定页头才能固定边栏.
+ $('.header-option', panel).val("fixed");
+ $('.sidebar-option', panel).val("fixed");
+ sidebarOption = 'fixed';
+ headerOption = 'fixed';
+ }
+ if (sidebarOption == "fixed" && sidebarPosOption == "right") {
+ alert($.i18n.prop('com_zte_ums_ict_framework_ui_fixedsiderightpositionError')); //固定边栏情况下,边栏不能靠右。.
+ $('.sidebar-pos-option', panel).val("left");
+ sidebarPosOption = 'left';
+ }
+ dealResetLayout(); // reset layout to default state
+ if (layoutOption === "boxed") {
+ $("body").addClass("page-boxed");
+ // set header
+ $('.header > .header-inner').addClass("container");
+ var cont = $('body > .clearfix').after('<div class="container"></div>');
+ // set content
+ $('.page-container').appendTo('body > .container');
+ // set footer
+ if (footerOption === 'fixed') {
+ $('.footer').html('<div class="container">' + $('.footer').html() + '</div>');
+ } else {
+ $('.footer').appendTo('body > .container');
+ }
+ }
+ if (lastSelectedLayout != layoutOption) {
+ runResponsiveHandlers();
+ }
+ lastSelectedLayout = layoutOption;
+ //header
+ if (headerOption === 'fixed') {
+ $("body").addClass("page-header-fixed");
+ $(".header").removeClass("navbar-static-top").addClass("navbar-fixed-top");
+ } else {
+ $("body").removeClass("page-header-fixed");
+ $(".header").removeClass("navbar-fixed-top").addClass("navbar-static-top");
+ }
+ //sidebar
+ if ($('body').hasClass('page-full-width') === false) {
+ if (sidebarOption === 'fixed') {
+ $("body").addClass("page-sidebar-fixed");
+ } else {
+ $("body").removeClass("page-sidebar-fixed");
+ }
+ }
+ //footer
+ if (footerOption === 'fixed') {
+ $("body").addClass("page-footer-fixed");
+ } else {
+ $("body").removeClass("page-footer-fixed");
+ }
+ //sidebar position
+ if (ZteFrameWork.isRTL()) {
+ if (sidebarPosOption === 'left') {
+ $("body").addClass("page-sidebar-reversed");
+ $('#frontend-link').tooltip('destroy').tooltip({placement: 'right'});
+ } else {
+ var pcontent = $("[class='page-content']");
+ pcontent.css("marginLeft",0);//侧边栏靠右,则左边内容填充为0
+ $("body").removeClass("page-sidebar-reversed");
+ $('#frontend-link').tooltip('destroy').tooltip({placement: 'left'});
+ }
+ } else {
+ if (sidebarPosOption === 'right') {
+ var pcontent = $("[class='page-content']");
+ pcontent.css("marginLeft",0);//侧边栏靠右,则左边内容填充为0
+ $("body").addClass("page-sidebar-reversed");
+ $('#frontend-link').tooltip('destroy').tooltip({placement: 'left'});
+ } else {
+ $("body").removeClass("page-sidebar-reversed");
+ $('#frontend-link').tooltip('destroy').tooltip({placement: 'right'});
+ }
+ }
+ dealSidebarAndContentHeight();
+ dealFixedSidebar();
+ dealFixedSidebarHoverable();
+ dealSiderBarWidthChange();
+ setCookie('layout-option', layoutOption);
+ setCookie('language-option', languageOption);
+ setCookie('header-option', headerOption);
+ setCookie('sidebar-option', sidebarOption);
+ setCookie('sidebar-pos-option', sidebarPosOption);
+ setCookie('nav-pos-direction', navPosOption);
+ }
+ var setCookie = function (key, value) {
+ if (store) {
+ store(key, value);
+ }
+ }
+ var getCookie = function (key) {
+ if (store) {
+ return store(key);
+ } else {
+ return undefined;
+ }
+ }
+ /*下面处理前进后退和锚点访问*/
+ var _getLocationHash = function() {
+ return location.hash.replace("#_", "");
+ }
+ /*统一入口设置锚点*/
+ var _setLocationHash = function(menuItemID) {
+ location.hash = getLocationHashByMenuId(menuItemID);
+ }
+ var getLocationHashByMenuId = function(menuItemID){
+ return "#_" + menuItemID;
+ }
+ // hash control
+ var loadCurrentHash = function(e,data){
+ var locationhash = _getLocationHash(); //important
+ if(!!locationhash&&locationhash.length>0){
+ if(_hashSource.trim()=="dhByInterface"){
+ _hashSource="";
+ }else{
+ processChangedHash(locationhash,data);
+ }
+ }
+ }
+ // hash control 这种写法安全点
+ var processChangedHash = function(path) {
+ var id = path;
+ var action = undefined;
+ var spIndex = path.indexOf("/");
+ if(spIndex != -1) {
+ id = path.substring(0,spIndex);
+ action = path.substring(spIndex+1);
+ }
+ ZteFrameWork.goToURLByIDAndNewAction(id,action);
+ }
+ var syncColorCSS=function(){//注册皮肤切换事件处理函数,处理iframe中的皮肤切换
+ var pagemyIframe=null;
+ if (cachedIframes.count()>0) {
+ for (var i in cachedIframes.hash()) {
+ pagemyIframe=$('.page-content .page-content-body .'+i);
+ if(pagemyIframe&&pagemyIframe.length>0){
+ ZteFrameWork.SyncCSS(pagemyIframe[0],1,"");
+ }
+ }
+ }
+ }
+ var getCurrentVisibleIframe=function(){
+ var pagemyIframe=null;
+ if (cachedIframes.count()>0) {
+ for (var i in cachedIframes.hash()) {
+ if(cachedIframes.items(i)===1){
+ pagemyIframe=$('.page-content .page-content-body .'+i);
+ }
+ }
+ }
+ return pagemyIframe;
+ }
+ //处理跨域请求代理,通过该代理进行iframe间传递参数,注意这里的代理页面proxy.html必须部署到要跨域的对端域的服务器web根目录下
+ var dealCrossProxy=function(ifrm,crossproxysrc,ifmHeadlins,flag){//crossproxysrc这个是proxy.html对应的url根路径
+ var url=$.url(ZteFrameWork.getCurrentScript(document));
+ var proxyHtmlPath=url.attr("directory")+"proxy/proxy.html"//这中情况适用于使用了该界面集成框架的应用系统
+ var _ifmProxy=$('<iframe id="ifm_Proxy" name="ifm_Proxy" oldproxyorigin="'+crossproxysrc+'" src="'+crossproxysrc+proxyHtmlPath+'" style="border: 0px; margin: 0px; padding: 0px; width: 100%; display:none;" ></iframe>');
+ var _ifm=$('#ifm_Proxy');
+ _ifm.hide();
+ var pageContentBody=$('.page-content .page-content-body');
+ var linksrcs=new Array();
+ var linksids=new Array();
+ var linktyps=new Array();
+ var _src="";
+ for (i=0;i<ifmHeadlins.length;i++){
+ if(typeof ifmHeadlins[i].link.href!== "undefined"){
+ _src=ifmHeadlins[i].link.href;
+ linktyps.push("css");
+ }
+ else if(typeof ifmHeadlins[i].link.src!== "undefined"){
+ if(!!ifmHeadlins[i].link.src&&ifmHeadlins[i].link.src.length>0){
+ _src=ifmHeadlins[i].link.src;
+ linktyps.push("javascriptfile");
+ }else{
+ _src=ifmHeadlins[i].link.text;
+ linktyps.push("javascripttext");
+ }
+ }else{
+ linktyps.push("undefined");
+ }
+ linksrcs.push(_src);
+ linksids.push({"pos":ifmHeadlins[i].pos,"scope":ifmHeadlins[i].scope,"id":ifmHeadlins[i].link.id});
+ }
+ var parm={iFrame:ifrm,cssLinktyps:linktyps,cssLinksrcs:linksrcs,cssLinkids:linksids,origin:crossproxysrc,flag:flag};
+ if(_ifm&&_ifm.length<=0){//没有添加过
+ _ifmProxy.appendTo(pageContentBody);
+ _ifmProxy.one('load',parm,function(e){
+ var data={iFrame:e.data.iFrame,cssLinktyps:e.data.cssLinktyps,cssLinksrcs:e.data.cssLinksrcs,cssLinkids:e.data.cssLinkids,flag:flag};
+ $('#ifm_Proxy')[0].contentWindow.postMessage(data,e.data.origin);//window.location.origin
+ });
+ }else if(_ifm.attr("oldproxyorigin")!=crossproxysrc){//代理已经添加过了,看是否是同一个网站的代理,如果不是需要重新加载
+ _ifm.attr("src","");
+ _ifm.attr("oldproxyorigin",crossproxysrc);
+ _ifm.one('load',parm,function(e){
+ var data={iFrame:e.data.iFrame,cssLinktyps:e.data.cssLinktyps,cssLinksrcs:e.data.cssLinksrcs,cssLinkids:e.data.cssLinkids,flag:flag};
+ $('#ifm_Proxy')[0].contentWindow.postMessage(data,e.data.origin);//window.location.origin
+ });
+ _ifm.attr("src",_ifmProxy.attr("src"));
+ }else{//已经添加过,直接触发消息发送即可
+ var data={iFrame:parm.iFrame,cssLinktyps:parm.cssLinktyps,cssLinksrcs:parm.cssLinksrcs,cssLinkids:parm.cssLinkids,flag:flag};
+ _ifm[0].contentWindow.postMessage(data,parm.origin);//window.location.origin
+ }
+ }
+ return {
+ init: function () {
+ if(zte_http_headers){
+ store("zte_http_headers",zte_http_headers);
+ }
+ dealInit();
+ dealResponsiveOnResize();
+ dealResponsiveOnInit();
+ dealClearCachedIframes(true); ////清理当前正在显示的iframe之外缓存的iframe,
+ breadcrumbBtnMenus.clear();
+ dealFixedSidebar(); // deals fixed sidebar menu
+ dealFixedSidebarHoverable(); // deals fixed sidebar on hover effect
+ dealSidebarMenu(); // deals main menu
+ dealHorizontalMenu(); // deals horizontal menu
+ dealSidebarToggler(); // deals sidebar hide/show
+ dealTheme(); // deals style customer tool
+ dealSetLayout();
+ $(function() {
+ $(window).on('hashchange',function(){
+ loadCurrentHash();
+ });
+ });
+ dealFullScreenMode(); // deals full screen
+ $("#header_dropdown_user").css('display','block');
+ $("#com_zte_ums_ict_framework_img_netnumenLogo").css('display','inline');
+ $("#com_zte_ums_ict_framework_ui_main_title").css('display','inline');
+ handeCtxMenuitem();
+ },
+ //公开清理缓存的所有Iframe的方法:isALL==true则清理所有,否则清理当前正在显示的iframe之外缓存的iframe,。
+ clearCachedIframes:function(isAll){
+ dealClearCachedIframes(isAll);
+ },
+
+ setBaseURLRoot:function(ipportStr){//菜单url的跟ip和端口例如:http://10.74.151.122:21180
+ if (store) {
+ store('baseURLRoot', ipportStr);
+ }
+ var url = $.url(ipportStr);
+ location.hash=url.attr('fragment');
+ var auth=url.attr('query');
+ if (store) {
+ store('baseURLRootAuth', auth);
+ }
+ },
+ getBaseURLRoot:function(ipportStr){//菜单url的跟ip和端口例如:http://10.74.151.122:21180
+ var rooturl="";
+ if (store) {
+ rooturl=store('baseURLRoot');
+ }
+ return !rooturl?"":rooturl;
+ },
+ clearBaseURLRoot:function(){//菜单url的跟ip和端口例如:http://10.74.151.122:21180
+ if (store) {
+ store('baseURLRoot', "",-1);
+ }
+ },
+ setPageTitle:function(title){//设置页面标题
+ $('title').html(title+" - "+gdocTitle);
+ },
+ getLanguage:function(){//获取语言
+ return ZteFrameWork_conf.acceptLanguage;
+ },
+
+ getLocationHash:function(){
+ return _getLocationHash();
+ },
+ setSceneURLRootPath:function(sceneURLRootPath){
+ if(sceneURLRootPath&&sceneURLRootPath.trim().length>0){//如果定义了场景的全局参数
+ _sceneURLRootPath=sceneURLRootPath.trim();
+ if(_sceneURLRootPath.charAt(_sceneURLRootPath.length-1)!='/')
+ {
+ _sceneURLRootPath=_sceneURLRootPath+'/';
+ }
+ }
+ },
+ //public function to add callback a function which will be called on window resize
+ addResponsiveHandler: function (func) {
+ responsiveHandlers.push(func);
+ },
+
+ hiddenAlarmLight:function(){
+ hideAlarmLight();
+ },
+
+ hiddenMenu:function(){
+ hidemenu();
+ },
+ setBreadcrumbByMenuID:function(id){
+ //var breaditem=$('#'+id);
+ var menuitem=undefined;
+ // var items=$("a[id='"+id+"']");
+ var items = undefined;
+ var panel = $('.zte-theme-panel');
+ var navPosOption = $('.nav-pos-direction', panel).val();
+ if (navPosOption === "vertical"){ //从垂直菜单里面找
+ items=$("#page-sidebar-menu a[id='"+id+"']");
+ if (!items || items.length < 1) {
+ items=$(".page-content a[id='"+id+"']");
+ }
+ }else if(navPosOption === zteframework_menu_horizontal){//从水平菜单里面找
+ items=$("#main_hormenu a[id='"+id+"']");
+ if(items.length == 0){
+ //横菜单没有找到,再在横菜单的子菜单找一次
+ items=$("#page-megachild-sidebar-menu a[id='"+id+"']");
+ }
+ }else if(navPosOption === zteframework_menu_fmenu){
+ items=$("#f_hormenu a[id='"+id+"']");
+ if(items.length == 0){
+ //横菜单没有找到,再在竖菜单找一次。
+ items=$("#page-f-sidebar-menu a[id='"+id+"']");
+ }
+ }
+ var isbreadcrumbMenuItem=false;
+ if(items.length>0){
+ for(var i=0;i<items.length;i++){
+ if($(items[i]).parentsUntil('.header-inner').hasClass('hor-menu')){
+ menuitem=$(items[i]);
+ break;
+ }else if($(items[i]).parentsUntil('.page-container').hasClass('page-sidebar')){
+ menuitem=$(items[i]);
+ break;
+ }else if($(items[i]).parentsUntil('.more-botton-zone .btn-group').hasClass('dropdown-menu')){
+ menuitem=$(items[i]);
+ isbreadcrumbMenuItem=true;
+ break;
+ }else if($(items[i]).parentsUntil('#pageableDiv').hasClass('row1')){
+ menuitem=$(items[i]);
+ isbreadcrumbMenuItem=true;
+ break;
+ }
+ }
+ }
+
+ if(menuitem&&menuitem.length>0){
+ if(isbreadcrumbMenuItem){
+ dealBreadcrumbBtnGroupMenus(menuitem,false);
+ }else{
+ dealBreadcrumb(menuitem,true,null);
+ }
+ }else{
+ var breadcrumbBtnMenuItemParent="";
+ if(!menuitem||menuitem.length<=0){//没有找到该菜单,可能是面包削中的,需要额外处理
+ var menuItemID=id;
+ if (breadcrumbBtnMenus.contains(menuItemID)) {//有缓存
+ breadcrumbBtnMenuItemParent="#"+breadcrumbBtnMenus.items(menuItemID);
+ menuitem=$(breadcrumbBtnMenuItemParent);
+ //_breadcrumbSource=true;
+ }
+ }
+ var parm=undefined;
+ if(breadcrumbBtnMenuItemParent&&breadcrumbBtnMenuItemParent.length>0){
+ parm={breadcrumbBtnMenuItem:menuItemID};
+ }
+ if(parm&&menuitem&&menuitem.length>0) {
+ dealBreadcrumb(menuitem,true,parm);
+ }
+ }
+ },
+ setSiderbarCollapseWidth:function(width){
+ _sidebarCollapsedWidth = width;
+ },
+ getSiderbarCollapseWidth:function(){
+ return _sidebarCollapsedWidth;
+ },
+ setSidebarWidth:function(width){
+ _sidebarWidth = width;
+ },
+ getSidebarWidth:function(){
+ return _sidebarWidth;
+ },
+ //2015年10月26日新增动态切换菜单的功能,这里的菜单还需要再次更换菜单项访问的ip端口信息
+ handlBaseURL:function(url){
+ var baseURLRoot=ZteFrameWork.getBaseURLRoot();
+ if (baseURLRoot.length>0) {//2015年10月26日新增动态切换菜单的功能,这里的菜单还需要再次更换菜单项访问的ip端口信息
+ baseURLRoot=ZteFrameWork.getDomainURL(baseURLRoot);//去掉ip和port后多余的部分
+ console.log("old a link href url:"+url);
+ url=baseURLRoot+url.replace(ZteFrameWork.getDomainURL(url),"");
+ console.log("baseURLRoot:"+baseURLRoot+" newURL:"+url);
+ };
+ return url;
+ },
+
+ startPageLoading: function(message) {
+ dealstartPageLoading(message);
+ },
+ stopPageLoading: function() {
+ dealstopPageLoading();
+ },
+ //public function to get a paremeter by name from URL
+ getLocationURLParameter: function (paramName,separator) {
+ var searchString = decodeURIComponent(window.location.search.substring(1)).toLowerCase(),
+ i, val, params = searchString.split(separator?separator:"&");
+ paramName=paramName.toLowerCase();
+ for (i = 0; i < params.length; i++) {
+ val = params[i].split("=");
+ if (val[0] == paramName) {
+ return unescape(val[1]);
+ }
+ }
+ return null;
+ },
+ //public function to get a paremeter by name from URL
+ getURLParameter: function (paramName,url) {
+ var searchString = decodeURIComponent(url).toLowerCase(),
+ i, val, params = searchString.split("&");
+ paramName=paramName.toLowerCase();
+ for (i = 0; i < params.length; i++) {
+ val = params[i].split("=");
+ if (val[0] == paramName) {
+ return unescape(val[1]);
+ }
+ }
+ return null;
+ },
+ // check for device touch support
+ isTouchDevice: function () {
+ return isTouch;
+ },
+ getUniqueID: function(prefix) {
+ return prefix+'_' + Math.floor(Math.random() * (new Date()).getTime());
+ },
+ // check IE8 mode
+ isIE8: function () {
+ return isIE8;
+ },
+ // check IE9 mode
+ isIE9: function () {
+ return isIE9;
+ },
+ //check RTL mode
+ isRTL: function () {
+ return isRTL;
+ },
+ getViewPort:function(){
+ return _getViewPort();
+ },
+ // get layout color code by color name
+ getLayoutColorCode: function (name) {
+ if (layoutColorCodes[name]) {
+ return layoutColorCodes[name];
+ } else {
+ return '';
+ }
+ } ,
+ fixContentHeight: function () {
+ dealSidebarAndContentHeight();
+ },
+ dealAtoIframe:function(aObj,event){
+ var containerStr=aObj.parentsUntil('.page-container').hasClass('page-sidebar')?'page-sidebar':"";//
+ containerStr=aObj.parentsUntil('.header-inner').hasClass('hor-menu')?'header':containerStr;
+ dealMenuItemClick(aObj,event,containerStr);
+ _isClicked=false;
+ },
+ getDomainURL:function(urlAddress){
+ var url = $.url(urlAddress);
+ var protocol=url.attr('protocol');
+ var host=url.attr('host');
+ var port=url.attr('port');
+ var crossOrign=protocol+"://"+host+(port.length>0?":"+port:"");
+ return crossOrign;
+ },
+ getCurrentScript:function(doc) {//doc为 document对象
+ /* 注意该功能在其他脚本中调用时出safari获取到的脚本路径为本方法所在脚本的路径,
+ 其他浏览器获取到的为调用该方法的脚本所在路径
+ 取得正在解析的script节点
+ */
+ if(doc&&doc.currentScript) { //firefox 4+
+ console.log("0、 "+doc.currentScript.src);
+ return doc.currentScript.src;
+ }
+ // 参考 https://github.com/samyk/jiagra/blob/master/jiagra.js
+ var stack;
+ try {
+ a.b.c(); //强制报错,以便捕获e.stack
+ } catch(e) {//safari的错误对象只有line,sourceId 或者高版本还有sourceURL
+ stack = e.stack;
+ if(e.sourceURL){//safari 浏览器没有e.stack但有e.sourceURL
+ stack=e.sourceURL;
+ }else if(!stack && window.opera){
+ //opera 9没有e.stack,但有e.Backtrace,但不能直接取得,需要对e对象转字符串进行抽取
+ stack = (String(e).match(/of linked script \S+/g) || []).join(" ");
+ }
+ console.log("1、 "+stack);
+ }
+ if(stack) {
+ /*e.stack最后一行在所有支持的浏览器大致如下:
+ *chrome23:
+ * at http://113.93.50.63/data.js:4:1
+ *firefox17:
+ *@http://113.93.50.63/query.js:4
+ *opera12:
+ *@http://113.93.50.63/data.js:4
+ *IE10:
+ * at Global code (http://113.93.50.63/data.js:4:1)
+ */
+ console.log("2、 "+stack);
+ stack = stack.split( /[@ ]/g).pop();//取得最后一行,最后一个空格或@之后的部分
+ stack = stack[0] == "(" ? stack.slice(1,-1) : stack;
+ console.log("3、 "+stack);
+ return stack.replace(/(:\d+)?:\d+$/i, "");//去掉行号与或许存在的出错字符起始位置
+ }
+ if(doc){
+ var nodes = doc.getElementsByTagName("script"); //只在head标签中寻找
+ for(var i = 0, node; node = nodes[i++];) {
+ if(node.readyState === "interactive") {
+ console.log("4、 "+(node.className = node.src));
+ return node.className = node.src;
+ }
+ }
+ }
+ },
+ /*下面的flag为0表示默认不触发孙子iframe中的onload事件,为1表示要触发,flag为10则对cssSrc重复执行,其他不做重复执行*/
+ SyncCSS:function(ifrm,flag,cssSrc){//将主框架中的皮肤css应用到打开的iframe页面中
+ if(!ifrm)return;
+ var ifmHeadlins = new Array();
+ if(cssSrc&&cssSrc.length>0&&cssSrc.endWith(".css")){
+ var _div = $('<a href="'+cssSrc+'"></a>');
+ var csslink=document.createElement("link");
+ csslink.href=_div[0].href;//这里同步菜单定义中cssSrc属性指定的css文件到iframe
+ _div = null;
+ csslink.rel="stylesheet";
+ csslink.type="text/css";
+ csslink.id="ifram_csssrc";
+ ifmHeadlins.push({"pos":"head","scope":"all","link":csslink});//pos是添加到子iframe中的位置,scope是子窗体作用返回,one表示直接子窗体,all表示嵌套所有子窗体
+ }
+ if(flag!=10){//当flag为10时下面的css和js都不执行
+ if($('#style_color').length>0){
+ var csslink=document.createElement("link");
+ csslink.href=$('#style_color')[0].href.replace(".css","_ifrm.css");//这里同步的皮肤页面修改为原皮肤页面文件名后缀添加ifrm的css皮肤文件
+ csslink.rel="stylesheet";
+ csslink.type="text/css";
+ csslink.id="style_color";
+ ifmHeadlins.push({"pos":"head","scope":"all","link":csslink});//pos是添加到子iframe中的位置,scope是子窗体作用返回,one表示直接子窗体,all表示嵌套所有子窗体
+ }
+ // 将 font-awesome字体图标应用到模块iframe
+ if($('#font_awesome').length>0){
+ var awesomelink=document.createElement("link");
+ awesomelink.href=$('#font_awesome')[0].href;
+ awesomelink.rel="stylesheet";
+ awesomelink.type="text/css";
+ awesomelink.id="font_awesome";
+ ifmHeadlins.push({"pos":"head","scope":"all","link":awesomelink});
+ }
+ // 将pym.js or pym.min.js应用到模块iframe
+ var pymjsObj=$("script[src*='/pym.']");//模糊查找
+ pymjsObj=pymjsObj.length>0?pymjsObj:$("script[src*='/pym1.']");
+ if(pymjsObj.length>0){
+ var pymjs=document.createElement("script");
+ pymjs.src=pymjsObj[0].src;
+ pymjs.type="text/javascript";
+ pymjs.id=!!pymjsObj[0].id?pymjsObj[0].id:"pymjs";
+ ifmHeadlins.push({"pos":"head","scope":"one","link":pymjs});
+ pymjs=document.createElement("script"); //pym脚本文件加载后要执行new pym.Child()进行iframe子窗体实例化,便于子窗体和父窗体通讯new pym.Child({ id: '"+_iframe+"' ,polling: 1000})
+ var frameid=(_iframe.split('-').length>0?_iframe.split('-')[1]:"1");
+ pymjs.text="var t1;function pmchd(){console.log('In the frame "+_iframe+",pym code call is begining; '+(typeof pym!= 'undefined'));if(typeof pym != 'undefined'){pymChild"+frameid+" = new pym.Child({ id: 'pdiv_"+_iframe+"' ,polling: 500});window.clearInterval(t1); }};t1 = window.setInterval(pmchd,5);";
+ pymjs.type="text/javascript";
+ pymjs.id="pymChild";
+ ifmHeadlins.push({"pos":"htmlend","scope":"one","link":pymjs});
+ }
+ // 将hk.js or hk.min.js应用到模块iframe
+ var hkjsObj=$("script[src*='/hk.']");//模糊查找
+ hkjsObj=hkjsObj.length>0?hkjsObj:$("script[src*='/hk1.']");
+ if(hkjsObj.length>0){
+ var hkjs=document.createElement("script");
+ hkjs.src=hkjsObj[0].src;
+ hkjs.type="text/javascript";
+ hkjs.id=!!hkjsObj[0].id?hkjsObj[0].id:"hkjs";
+ ifmHeadlins.push({"pos":"head","scope":"one","link":hkjs});
+ hkjs=document.createElement("script"); ////hk.js 加载后拦截ajax请求进行转发
+ }
+ }
+ var crossOrign=ZteFrameWork.getDomainURL(ifrm.src);
+ if( window.location.origin==crossOrign){ //第一层同域处理
+ for (i=0;i<ifmHeadlins.length;i++){
+ var link=ifrm.contentDocument.getElementById(ifmHeadlins[i].link.id);
+ if(link){
+ if(link.parentNode.tagName.toUpperCase==="HEAD"){
+ ifrm.contentDocument.head.removeChild(link);
+ }else if(link.parentNode.tagName.toUpperCase==="HTML"){
+ ifrm.contentDocument.removeChild(link);
+ }
+ }
+ if(ifmHeadlins[i].pos=="head")
+ ifrm.contentDocument.head.appendChild(ifmHeadlins[i].link);
+ else if (ifmHeadlins[i].pos=="bodyend")
+ ifrm.contentDocument.body.appendChild(ifmHeadlins[i].link);
+ else if (ifmHeadlins[i].pos=="htmlend")
+ ifrm.contentDocument.body.parentNode.appendChild(ifmHeadlins[i].link);
+ }
+ //对iframe中又有嵌套一级iframe的地方进行同步,只同步scope为all的
+ var childifrms=ifrm.contentDocument.getElementsByTagName("iframe");
+ if(childifrms&&childifrms.length>0){
+ var ifmHeadlins2 = new Array();
+ for (i=0;i<ifmHeadlins.length;i++){//筛选出scope为all的
+ if(ifmHeadlins[i].scope=="one") break;
+ ifmHeadlins2.push(ifmHeadlins[i]);
+ }
+ for(j=0;j<childifrms.length;j++){
+ var parm={ifmHeadlins:ifmHeadlins2};
+ var childOrign=ZteFrameWork.getDomainURL(childifrms[j].src);
+ if(window.location.origin==childOrign){//同域
+ var ifrmload=function(e){
+ for (i=0;i<e.data.ifmHeadlins.length;i++){
+ var ifmheadlink=$(e.data.ifmHeadlins[i].link).clone()[0];////注意这里必须克隆,否则会出现元素移动,前面ifrm添加的都会被移出
+ var link=this.contentDocument.getElementById(ifmheadlink.id);
+ if(link){
+ if(link.parentNode.tagName.toUpperCase==="HEAD"){
+ this.contentDocument.head.removeChild(link);
+ }else if(link.parentNode.tagName.toUpperCase==="HTML"){
+ this.contentDocument.removeChild(link);
+ }
+ }
+ if(e.data.ifmHeadlins[i].pos=="head"){
+ this.contentDocument.head.appendChild(ifmheadlink);
+ }else if(e.data.ifmHeadlins[i].pos=="bodyend"){
+ this.contentDocument.body.appendChild(ifmheadlink);
+ }else if (ifmHeadlins2[i].pos=="htmlend"){
+ this.contentDocument.body.parentNode.appendChild(ifmheadlink);
+ }
+ }
+ }
+ $(childifrms[j]).off('onload',parm,ifrmload);
+ $(childifrms[j]).on('onload',parm,ifrmload);
+ $(childifrms[j]).trigger("onload");
+
+ }else{
+ if(ifmHeadlins2.length>0){
+ console.log('跨域访问: 系统将进入跨域访问代理处理流程 ');
+ dealCrossProxy(childifrms[j].name,childOrign,ifmHeadlins2,flag);
+ }
+ }
+ }
+ }
+ }else{
+ if(ifmHeadlins.length>0){
+ console.log('跨域访问: 系统将进入跨域访问代理处理流程 ');
+ dealCrossProxy(ifrm.name,crossOrign,ifmHeadlins,flag);
+ }
+ }
+ },
+ goToURL:function(url){
+ dhByBreadcrumb = true;//全局变量,声明此次事件是由点击面包屑发起的
+ var showNav=ZteFrameWork.getLocationURLParameter('showNav');
+ if(showNav=="false"){//如果不显示菜单,就强制刷新本页
+ location.reload();
+ }else{
+ url="a[name='"+url+"']";
+ $(url).click();
+ }
+ },
+ goToURLByName:function(name){
+ var showNav=ZteFrameWork.getLocationURLParameter('showNav');
+ if(showNav=="false"){//如果不显示菜单,就强制刷新本页
+ location.reload();
+ }else{
+ url="a[name='"+name+"']";
+ $(url).click();
+ }
+ },
+ goToURLByID:function(id){
+ if(!id){
+ return;
+ }
+ var showNav=ZteFrameWork.getLocationURLParameter('showNav');
+ if(showNav=="false"){//如果不显示菜单,就强制刷新本页
+ location.reload();
+ }else{
+ if(id.indexOf("#")<0){
+ id="#"+id;
+ }
+ $(id).click();
+ }
+ },
+ goToPortal:function(id){
+ var _url=top.location.href;
+ console.log(_url);
+ //_url="/ngict/iui/framework/";
+ var url=$.url(_url);
+ top.location=url.attr("directory")+"uifportal.html#"+id+"/";
+ },
+ //Category
+ goToURLByIDAndNewIPPort:function(id,newIPPort,newActionStr){
+ //先把NewIPPort对象:newIPPort={menuCategoryID:'vim',ipPortStr:'htpp://10.74.151.123:31180',newTitle:''}缓存到Category数组中,
+ //menuCategoryID属性是更多菜单上配置的菜单的分类id,;
+ //ipPortStr属性是该id的菜单要替换的新的ip和端口地址字符串,包括协议部分,比如http://10.74.151.64:21169
+ //newTitle属性用于放置新开ip的页面对应到面包屑上的名字,可以为“”,空标识不关注
+ _menuCategorys.replace(newIPPort.menuCategoryID,{ipPort:newIPPort.ipPortStr,ipTitle:newIPPort.newTitle});//把当前面包削中的菜单id和该子菜单对应的父菜单关联缓存起来
+ if (store) {
+ store('menuCategoryID', newIPPort.menuCategoryID+"[menuCategoryID]"+newIPPort.ipPortStr+"[menuCategoryID]"+(!!newIPPort.newTitle?newIPPort.newTitle:""));
+ }
+ //这里增加按照newIPPort.menuCategoryID分类加载more菜单的处理逻辑
+ //首先根据id找到对应的主菜单菜单项
+ var menuitem = this.findMenuItemByMenuId(id);
+ if(!menuitem||menuitem.length<=0){//主菜单中没有找到,就找more菜单,找到id对应的more菜单项所属的主菜单项
+ var mainMenuId = this.getMenuItemId_From_MoreMenuRelation(id);
+ if( !!mainMenuId&&mainMenuId.length>0 ){//more菜单中找到了id对应的主菜单项id,根据id返回主菜单项
+ menuitem = this.findMenuItemByMenuId(mainMenuId);
+ if(!!menuitem&&menuitem.length>0){
+ var more=$("#"+id,$('#pageableDiv')).parent();
+ $(".box.boxOperation", $(".carousel-inner")).removeClass("moreButtonSelected");
+ more=$('a>div.box',more);
+ if (more.hasClass('moreButtonSelected') == false){
+ more.addClass('moreButtonSelected');
+ }
+ var pagesTags=$('.item.moreButtonsTag');
+ if(pagesTags.length>0){
+ for(var i=0;i<pagesTags.length;i++){
+ var tags=$(pagesTags[i]);
+ tags.removeClass('active');
+ if($('.moreButtonSelected',tags).length>0){
+ tags.addClass('active');
+ }
+ }
+ }
+ }
+ }
+ }
+ //其次找到的菜单项中newIPPort.menuCategoryID对应的src覆盖breadcrumgroupbuttonsrc属性值,
+ if(!!menuitem&&menuitem.length>0){
+ var mulsrc=menuitem.attr(newIPPort.menuCategoryID+"-multiInsrc");
+ if(!!mulsrc){
+ menuitem.attr("breadcrumgroupbuttonsrc" ,mulsrc);
+ getBreadcrumbRightButtons(mulsrc,true);
+ }
+ }
+ if (waittime) {
+ clearInterval(waittime);
+ }
+ waittime = setInterval(function () {
+ if(moreMenusisLoaded==true){
+ clearInterval(waittime);
+ ZteFrameWork.goToURLByIDAndNewAction(id,newActionStr,null);
+ }
+ }, 10);
+ },
+ goToURLByIDAndNewAction:function(id,newActionStr,newBrowserPageOption){
+ if(!id){
+ return;
+ }
+
+ /*if(id.indexOf("#")<0){
+ id="#"+id;
+ }*/
+ var menuitem = this.findMenuItemByMenuId(id);
+ //处理新开页面情况
+ if(newBrowserPageOption){
+ var href = ICTFRAME_CONST_DEFAULTPAGE_PATH;
+ var hash = getLocationHashByMenuId(id);
+ var newin=window.open(href + newBrowserPageOption.paramStr + hash,newBrowserPageOption.windowTitle);
+ newin.name=newActionStr;//注意这种传递参数的方法,被打开的页面中需要通过top.name中获取该传递的参数。
+ return;
+ }
+ //$(window).off('hashchange', loadCurrentHash);
+ var menuItemID=menuitem?menuitem.attr("id"):"";
+ if(!!menuItemID&&menuItemID.length>0){
+ //menuItemID="#" + menuItemID;
+ //menuItemID=!!newActionStr?menuItemID:menuItemID+"/no";
+ _setLocationHash(menuItemID);
+ }
+ var breadcrumbBtnMenuItemParent="";
+ if(!menuitem||menuitem.length<=0){//没有找到该菜单,可能是面包削中的,需要额外处理
+ menuItemID=id;
+ if (breadcrumbBtnMenus.contains(menuItemID)) {//有缓存
+ breadcrumbBtnMenuItemParent=breadcrumbBtnMenus.items(menuItemID);
+ menuitem=this.findMenuItemByMenuId(breadcrumbBtnMenuItemParent);
+ //_breadcrumbSource=true;
+ }
+ // else{//在新增的可翻页的更多菜单里面找
+ // var pageDiv = $('#pageableDiv');
+ // menuitem=$('#' + menuItemID , pageDiv);
+ // }
+ if( menuitem && menuitem.length > 0){
+ isMoreMenuItemClick = true;
+ }
+ }
+ if(!menuitem||menuitem.length<=0){
+ //面包屑和主菜单都没有找到,情况可能是:更多菜单点击打开后,刷新,hash已经更改,但是对应的更多菜单的html没有加载,需要找到更多菜单和主菜单的对应关系
+ var mainMenuId = this.getMenuItemId_From_MoreMenuRelation( id );
+ if( mainMenuId ){
+ menuitem = this.findMenuItemByMenuId(mainMenuId);
+ }
+
+ }
+ if (store&&store("globleCurrentBreadcrumb")){
+ globleCurrentBreadcrumb=store("globleCurrentBreadcrumb");
+ //下面处理下刷新整个页面后从cookie中获取来的最后一次操作的面包屑对应的对应菜单的name属性回写,便于面包屑事件响应能够找到对应的菜单
+ var al=$("a",$("<div>"+globleCurrentBreadcrumb+"</div>"));
+ var alink,gal;
+ for(i=0;i<al.length;i++){
+ alink=$(al[i]);
+ gal=$("a[id='"+alink.attr("id")+"']");//从整个页面查找
+ for(j=0;j<gal.length;j++){
+ $(gal[j]).attr("name",alink.attr("name"));
+ }
+ }
+ }
+ if(menuitem&&menuitem.length>0){
+ var panel = $('.zte-theme-panel');
+ var navPosOption = $('.nav-pos-direction', panel).val();
+ if(navPosOption === zteframework_menu_fmenu){
+ var hparentid=menuitem.attr("hparentid");
+ var id=menuitem.attr("id");
+ var i=0,menuItemH=menuitem;
+ while (id!=hparentid&&i<20){
+ menuItemH=ZteFrameWork.findMenuItemByMenuId(hparentid);
+ hparentid=menuItemH.attr("hparentid");
+ id=menuItemH.attr("id");
+ i++;
+ };
+ if(!menuItemH.hasClass('active'))
+ menuItemH.parent().addClass("active");
+ }
+ }else{
+ console.log("goToURLByIDAndNewAction():Can't find the menuitem.The menu ID is:"+id+".Please check if the ID or ID cache is correct.");
+ }
+ //try{
+ var parm=undefined;
+ if(!!newActionStr&&breadcrumbBtnMenuItemParent&&breadcrumbBtnMenuItemParent.length>0){
+ parm={action:newActionStr,breadcrumbBtnMenuItem:menuItemID};
+ }else if(!!newActionStr){
+ parm={action:newActionStr};
+ }else if(breadcrumbBtnMenuItemParent&&breadcrumbBtnMenuItemParent.length>0){
+ parm={breadcrumbBtnMenuItem:menuItemID};
+ }else if(mainMenuId){
+ isMoreMenuItemClick = true;
+ parm={breadcrumbBtnMenuItem:menuItemID};
+ }
+ //if(breadChangeType){
+ // if(!parm){
+ // parm = {};
+ // }
+ // parm.breadChangeType = breadChangeType;
+ //}
+ if(parm&&parm.action || parm&&parm.breadChangeType) {
+ _hashSource="dhByInterface";
+ }
+
+ if(menuitem&&menuitem.length>0){
+ menuitem.one('click',parm,function(e){ //临时一次性的注册一次click事件处理函数,执行完毕会自动删除
+ ZteFrameWork.dealAtoIframe($(this),e);
+ //$(window).one('hashchange', loadCurrentHash);
+ return false;
+ });
+ menuitem.click();//后执行
+ }
+ /*}catch(e){}
+ finally{
+ //$(window).on('hashchange', loadCurrentHash);
+ }*/
+ },
+
+ getBreadcrumbEle:function(){
+ return $('.breadcrumbUl')[0];
+ },
+
+
+ findMenuItemByMenuId:function( id ){
+ var menuitem=undefined;
+ var panel = $('.zte-theme-panel');
+ var navPosOption = $('.nav-pos-direction', panel).val();
+
+ var items = undefined;
+ if (navPosOption === "vertical"){ //从垂直菜单里面找
+ items=$("#page-sidebar-menu a[id='"+id+"']");
+ }else if(navPosOption === zteframework_menu_horizontal){//从水平菜单里面找
+ items=$("#main_hormenu a[id='"+id+"']");
+ if(items.length == 0){
+ //横菜单没有找到,再在横菜单的子菜单找一次
+ items=$("#page-megachild-sidebar-menu a[id='"+id+"']");
+ }
+ }else if(navPosOption === zteframework_menu_fmenu){
+ items=$("#f_hormenu a[id='"+id+"']");
+ if(items.length == 0){
+ //横菜单没有找到,再在竖菜单找一次。
+ items=$("#page-f-sidebar-menu a[id='"+id+"']");
+
+ }
+
+ }
+ if( items&&items.length == 0 ){
+ console.log( 'fmenu alink length is :' + $("#page-f-sidebar-menu a").length );
+ console.log( 'cant find menu in sidemenu、megamenu and fmenu , the menu id is ' + id );
+ }
+ if(items&&items.length>0){
+ for(var i=0;i<items.length;i++){
+ if($(items[i]).parentsUntil('.header-inner').hasClass('hor-menu')){
+ menuitem=$(items[i]);
+ break;
+ }else if($(items[i]).parentsUntil('.page-container').hasClass('page-sidebar')){
+ menuitem=$(items[i]);
+ break;
+ }
+ }
+ }
+ return menuitem;
+ },
+
+ getMenuItemId_From_MoreMenuRelation:function( id ){
+ var panel = $('.zte-theme-panel');
+ var navPosOption = $('.nav-pos-direction', panel).val();
+ var mainMenuId = null;
+ if (navPosOption === zteframework_menu_vertical){
+ relationAry=sideBarMenu_to_moreMenu_frame;
+ }else if(navPosOption === zteframework_menu_horizontal){
+ relationAry=horBarMenu_to_moreMenu_frame;
+ }else if(navPosOption === zteframework_menu_fmenu){
+ relationAry=horBarMenu_to_moreMenu_frame;
+ }
+ if ( !relationAry || !id ){
+ return;
+ }
+ for ( var i = 0 ; i < relationAry.length ; i++ ){
+ var eachMain = relationAry[i];
+ var moreMenuIds = eachMain.moreMenuIds;
+ for ( var j = 0 ; j < moreMenuIds.length ; j++ ){
+ if( moreMenuIds[j] && moreMenuIds[j] == id ){
+ return eachMain.mainMenuId;
+ }
+ }
+ }
+ return null;
+ },
+
+ getMenuItemFoucsByID : function (id) {
+ if(!id){
+ return;
+ }
+ var menuitem=undefined;
+ // var items=$("a[id='"+id+"']");
+ var items = undefined;
+ var panel = $('.zte-theme-panel');
+ var navPosOption = $('.nav-pos-direction', panel).val();
+ if (navPosOption === "vertical"){ //从垂直菜单里面找
+ items=$("#page-sidebar-menu a[id='"+id+"']");
+ }else if(navPosOption === zteframework_menu_horizontal){//从水平菜单里面找
+ items=$("#main_hormenu a[id='"+id+"']");
+ if(items.length == 0){
+ //横菜单没有找到,再在横菜单的子菜单找一次
+ items=$("#page-megachild-sidebar-menu a[id='"+id+"']");
+ }
+ }else if(navPosOption === zteframework_menu_fmenu){
+ items=$("#f_hormenu a[id='"+id+"']");
+ if(items.length == 0){
+ //横菜单没有找到,再在竖菜单找一次。
+ items=$("#page-f-sidebar-menu a[id='"+id+"']");
+
+ }
+ }
+ if(items.length>0){
+ for(var i=0;i<items.length;i++){
+ if($(items[i]).parentsUntil('.header-inner').hasClass('hor-menu')){
+ menuitem=$(items[i]);
+ break;
+ }else if($(items[i]).parentsUntil('.page-container').hasClass('page-sidebar')){
+ menuitem=$(items[i]);
+ break;
+ }
+ }
+ }
+ var breadcrumbBtnMenuItemParent="";
+ if(!menuitem||menuitem.length<=0){//没有找到该菜单,可能是面包削中的,需要额外处理
+ menuItemID=id;
+ if (breadcrumbBtnMenus.contains(menuItemID)) {//有缓存
+ breadcrumbBtnMenuItemParent="#"+breadcrumbBtnMenus.items(menuItemID);
+ menuitem=$(breadcrumbBtnMenuItemParent);
+ }
+ }
+ var parm = undefined;
+ if (breadcrumbBtnMenuItemParent && breadcrumbBtnMenuItemParent.length > 0) {
+ parm = {
+ breadcrumbBtnMenuItem : menuItemID
+ };
+ }
+ if (menuitem && menuitem.length > 0) {
+ menuitem.one('click', parm, function (e) { //临时一次性的注册一次click事件处理函数,执行完毕会自动删除
+ var containerStr = $(this).parentsUntil('.page-container').hasClass('page-sidebar') ? 'page-sidebar' : ""; //
+ containerStr = $(this).parentsUntil('.header-inner').hasClass('hor-menu') ? 'header' : containerStr;
+ _isClicked = false;
+ dealMenuItemGetFocus($(this),e,containerStr);
+ return false;
+ });
+ menuitem.click(); //后执行
+ }
+ },
+ // 处理面包削中的按钮菜单增加的导航连接,显示在iframe中
+ openbreadcrumbLink:function(aObject,e) {
+ var url = aObject.attr("href");
+ if(!url||url.length<2)
+ return;
+ e.preventDefault();
+ dealScrollTo();
+ var menuItemID=aObject.attr("id");
+ if(!!menuItemID&&menuItemID.length>0){
+ _setLocationHash(menuItemID);
+ _hashSource="dhByInterface";
+ }
+ dealstartPageLoading();
+ dealIframe(aObject,e);
+ },
+ getURLParam:function(name){
+ var reg = new RegExp("(^|&)" + name.toLowerCase() + "=([^&]*)(&|$)"); //构造一个含有目标参数的正则表达式对象
+ var search =decodeURIComponent(location.search.substring(1)).toLowerCase();
+ var r =search.match(reg); //匹配目标参数
+ if (r != null) return unescape(r[2]);
+ return null; //返回参数值
+ }
+ };
+
+}();
+
+var currentRunningScriptSrcPath = {};
+//抽取html片段中任意位置的script标签(包括代码是内嵌的情况)逐个运行(不会在单个script加载不到的时候停下来)
+function runHtmlScripts(s) {
+ var div = document.createElement('div');
+ div.innerHTML = s;
+ var scripts = div.getElementsByTagName('script');
+ $(scripts).each(function(){
+ var src = this.src;
+ src=ZteFrameWork.handlBaseURL(src);
+ if(src){
+ //存储当前Script标签的绝对路径以适应该js被其他系统跨域引用的情况
+ currentRunningScriptSrcPath[src.substring(src.lastIndexOf("/") + 1)] = src.substring(0, src.lastIndexOf("/")+1);
+ $.getScript(src);
+ }else{
+ $.globalEval(this.text || this.textContent || this.innerHTML || '');
+ }
+ });
+}
+function stripHtmlScripts(s) {
+ var div = document.createElement('div');
+ div.innerHTML = s;
+ var scripts = div.getElementsByTagName('script');
+ $(scripts).each(function(){
+ /* if(this.src){
+ $.getScript(this.src);
+ }else{
+ $.globalEval(this.text || this.textContent || this.innerHTML || '');
+ } */
+ this.src=ZteFrameWork.handlBaseURL(this.src);
+ this.parentNode.removeChild(this);
+ });
+ return div.innerHTML;
+}
+function getsiderBarMenu(url){
+ if (url.length<2){
+ return;
+ }
+ url=ZteFrameWork.handlBaseURL(url);
+ ZteFrameWork.startPageLoading();//菜单加载中请稍候....
+ var pagesidebar=$('#page-sidebar-menu');
+ pagesidebar.empty();
+ pagesidebar.append("<li class='sidebar-toggler-wrapper'><div class='sidebar-toggler hidden-xs hidden-sm'></div></li>");
+ $.ajax({
+ type: "GET",
+ cache: false,
+ url: url,
+ dataType: "html",
+ success: function (res) {
+ //去除script标签以后添加到主框架以防止append方法因为加载script标签失败导致后面的代码无法运行
+ //res = stripHtmlScripts(res);
+ var resScriptsSriped = stripHtmlScripts(res);
+ pagesidebar.append(resScriptsSriped);
+ runHtmlScripts(res);
+
+ siderBarMenuAuthentication();
+ dealMysqlBackupMenu();
+ //loadi18n_WebFramework_sideMenu();
+ setTimeout(function () {
+ ZteFrameWork.stopPageLoading();
+ goToHomePage();
+ }, 1000);
+ },
+ error: function (xhr, ajaxOptions, thrownError) {
+ //$('#page-sidebar-menu').append('<h4 class="nav-load-error">'+$.i18n.prop('com_zte_ums_ict_framework_ui_loadmenuerror')+'</h4>');//加载系统菜单失败!;//加载系统菜单失败!
+ }
+ });
+};
+var setLayoutValueByCookie = function () {
+ var panel = $('.zte-theme-panel');
+ if (store('layout-option') != undefined) {
+ $('.layout-option', panel).val(store('layout-option'));
+ }
+ if (store('language-option') != undefined) {
+ $('.language-option', panel).val(store('language-option'));
+ }
+ if (store('sidebar-option') != undefined) {
+ $('.sidebar-option', panel).val(store('sidebar-option'));
+ }
+ if (store('header-option') != undefined) {
+ $('.header-option', panel).val(store('header-option'));
+ }
+ if (store('sidebar-pos-option') != undefined) {
+ $('.sidebar-pos-option', panel).val(store('sidebar-pos-option'));
+ }
+ var horMenuLoadTip = $("[class='nav-load-error']", $(".hormenu"));
+ var sideMenuLoadTip = $("[class='nav-load-error']", $("[class='page-sidebar-menu']"));
+ // 横竖菜单都无错误提示,都正确加载
+ // if ((!horMenuLoadTip || horMenuLoadTip.length <= 0) && (!sideMenuLoadTip || sideMenuLoadTip.length <= 0)) {
+ // if (store('nav-pos-direction') != undefined) {
+ // var navPosOption = store('nav-pos-direction');
+ // $('.nav-pos-direction', panel).val(navPosOption);
+ // } else {
+ $('.nav-pos-direction', panel).val('fmenu');
+ // $.ajax({
+ // "dataType" : 'json',
+ // "type" : "GET",
+ // "async" : false,
+ // url : FrameConst.REST_GET_FRAME_MENUDIRECTION + "&tmpstamp=" + new Date().getTime(),
+ // "success" : function (obj) {
+ // if (obj.value && (obj.value != "")) {
+ // $('.nav-pos-direction', panel).val(obj.value);
+ // }
+ // }
+ // });
+ //}
+ // } else {
+ // $('.nav-pos-direction', panel).attr("disabled", true);
+ // }
+}
+function getHorMenu(url){
+ setLayoutValueByCookie();
+ if (url.length<2){
+ return;
+ }
+ url=ZteFrameWork.handlBaseURL(url);
+ ZteFrameWork.startPageLoading();//菜单加载中请稍候....
+ var pagehorbar=$('#main_hormenu')
+ pagehorbar.empty();
+ $.ajax({
+ type: "GET",
+ async : false,
+ cache: false,
+ url: url,
+ dataType: "html",
+ success: function (res) {
+ //去除script标签以后添加到主框架以防止append方法因为加载script标签失败导致后面的代码无法运行
+ //res = stripHtmlScripts(res);
+ var resScriptsSriped = stripHtmlScripts(res);
+ $('#main_hormenu').append(resScriptsSriped);
+ runHtmlScripts(res);
+ // 增加mysql判断,如果数据库为mysql,去掉基础数据备份功能菜单项
+ var dbType = ZteFrameWork_conf.dbType;
+ if (dbType == "mysql") {
+ var item=$(".hor-menu a[id='uep-ict-backup-baseDataBack']");
+ item.parent().remove();
+ }
+ horMenuAuthentication('main_hormenu');
+ ZteFrameWork.stopPageLoading();
+ if($('.nav-pos-direction', panel).val() === "horizontal"){
+ setTimeout(function () {
+ //goToHomePage();//注意这里由于水平和左边栏菜单都在一个页面中出现,所以这里只调用一次
+ }, 150);
+ }
+ },
+ error: function (xhr, ajaxOptions, thrownError) {
+ //$('#main_hormenu').append('<h4 class="nav-load-error">'+$.i18n.prop('com_zte_ums_ict_framework_ui_loadmenuerror')+'</h4>');//加载系统菜单失败!
+ var pcontent = $("[class='page-content']");
+ //pcontent.css("marginLeft",225);
+ $('.nav-pos-direction', panel).attr("disabled", true);
+ }
+ });
+};
+//加载横菜单的子菜单,加到左边的siderbar里面
+function getMegaFMenu( url ){
+ if (url.length<2){
+ return;
+ }
+ url=ZteFrameWork.handlBaseURL(url);
+ ZteFrameWork.startPageLoading();//菜单加载中请稍候....
+ var siderDiv =$( '#' + megaSiderDivId );
+ siderDiv.empty();
+ siderDiv.append("<li class='sidebar-toggler-wrapper'><div class='sidebar-toggler hidden-xs hidden-sm'></div></li>");
+ $.ajax({
+ type: "GET",
+ async : false,
+ cache: false,
+ url: url,
+ dataType: "html",
+ success: function (res) {
+ //去除script标签以后添加到主框架以防止append方法因为加载script标签失败导致后面的代码无法运行
+ var resScriptsSriped = stripHtmlScripts(res);
+ siderDiv.append(resScriptsSriped);
+ runHtmlScripts(res);
+ FMenuAuthentication( megaDivId ,megaSiderDivId );
+ rebuildHorMenu();
+ ajustFMenu( megaDivId ,megaSiderDivId );
+ ZteFrameWork.stopPageLoading();
+ },
+ error: function (xhr, ajaxOptions, thrownError) {
+ //siderDiv.append('<h4 class="nav-load-error">'+$.i18n.prop('com_zte_ums_ict_framework_ui_loadmenuerror')+'</h4>');//加载系统菜单失败!
+ //var pcontent = $("[class='page-content']");
+ //pcontent.css("marginLeft",225);
+ }
+ });
+}
+
+function iniHorMenu(){
+ var hormenu=$('#main_hormenu');
+ if(!hormenu) return;
+ var url=hormenu.attr("menuSrc");
+ if(url&&url.length>0){
+ getHorMenu(url);
+ }
+ //
+ var megaFMenu = $('#'+megaSiderDivId);
+ if(!megaFMenu) return;
+ var url = megaFMenu.attr("menuSrc");
+ if(url&&url.length>0){
+ getMegaFMenu(url);
+ }
+};
+function iniFMenu(){
+ var fhormenu=$('#f_hormenu');
+ var fsidemenu=$('#page-f-sidebar-menu');
+ if(!fhormenu || !fsidemenu) return;
+ var urlmega=fhormenu.attr("menuSrc");
+ var urlsider=fsidemenu.attr("menuSrc");
+ if(urlmega&&urlmega.length>0 && urlsider && urlsider.length > 0){
+ getFMenu(urlmega , urlsider);
+ }
+};
+function getFMenu( urlMega , urlSider ){
+ if (urlMega.length<2 || urlSider.length<2){
+ return;
+ }
+ urlMega=ZteFrameWork.handlBaseURL(urlMega);
+ urlSider=ZteFrameWork.handlBaseURL(urlSider);
+ ZteFrameWork.startPageLoading();//菜单加载中请稍候....
+ var fhorbar=$('#f_hormenu');
+ fhorbar.empty();
+ var fSideBar= $("#page-f-sidebar-menu");
+ fSideBar.empty();
+ $.ajax({
+ type: "GET",
+ async : false,
+ cache: false,
+ url: urlMega,
+ dataType: "html",
+ success: function (res) {
+ var resScriptsSriped = stripHtmlScripts(res);
+ $('#f_hormenu').append(resScriptsSriped);
+ horMenuAuthentication('f_hormenu');
+ runHtmlScripts(res);
+ dealMysqlBackupMenu();
+ ZteFrameWork.stopPageLoading();
+ },
+ error: function (xhr, ajaxOptions, thrownError) {
+ $('#f_hormenu').append('<h4 class="nav-load-error">'+$.i18n.prop('com_zte_ums_ict_framework_ui_loadmenuerror')+'</h4>');//加载系统菜单失败!
+ var pcontent = $("[class='page-content']");
+ $('.nav-pos-direction', panel).attr("disabled", true);
+ }
+ });
+ var fpagesidebar=$('#' + fMenuSiderDivId);
+ fpagesidebar.empty();
+ fpagesidebar.append("<li class='sidebar-toggler-wrapper'><div class='sidebar-toggler hidden-xs hidden-sm'></div></li>");
+ $.ajax({
+ type: "GET",
+ cache: false,
+ url: urlSider,
+ dataType: "html",
+ success: function (res) {
+ var resScriptsSriped = stripHtmlScripts(res);
+ fpagesidebar.append(resScriptsSriped);
+ //先全部隐藏,后面根据与hash的匹配情况来显示
+ fpagesidebar.children().css('display','none');
+ runHtmlScripts(res);
+ dealMysqlBackupMenu();
+ FMenuAuthentication( fMenuMegaDivId ,fMenuSiderDivId );
+ ajustFMenu( fMenuMegaDivId ,fMenuSiderDivId );
+ ZteFrameWork.stopPageLoading();
+ loadi18n_WebFramework_sideMenu();
+ },
+ error: function (xhr, ajaxOptions, thrownError) {
+ $('.page-f-sidebar-menu').append('<h4 class="nav-load-error">'+$.i18n.prop('com_zte_ums_ict_framework_ui_loadmenuerror')+'</h4>');//加载系统菜单失败!;//加载系统菜单失败!
+ }
+ });
+};
+function iniSidebarMenu(){
+ var sidermenu=$('#page-sidebar-menu');
+ if(!sidermenu) return;
+ var url=sidermenu.attr("menuSrc");
+ if(url&&url.length>0){
+ getsiderBarMenu(url);
+ }
+};
+function getChangePWDDlg(url){
+ if (url.length<2){
+ return;
+ }
+ ZteFrameWork.startPageLoading();//加载中....
+ var pageChangepasswd=$('.modal-dialog .Changepasswd');
+ pageChangepasswd.empty();
+ $.ajax({
+ type: "GET",
+ cache: false,
+ url: url,
+ dataType: "html",
+ success: function (res) {
+ $('.modal-dialog .Changepasswd').append(res);
+ ChangePWD.init();
+ ZteFrameWork.stopPageLoading();
+ },
+ error: function (xhr, ajaxOptions, thrownError) {
+ $('.modal-dialog .Changepasswd').append('<h4>'+$.i18n.prop('com_zte_ums_ict_framework_ui_loadchgpwdpageError')+'</h4>');//加载修改密码页面失败!
+ }
+ });
+};
+function iniChangePWDDlg(){
+ var url=$('.modal-dialog .Changepasswd').attr("dlgsrc");
+ if(url&&url.length>0){
+ getChangePWDDlg(url);
+ }
+};
+function getHeaderMenu(url){
+ if (url.length<2){
+ return;
+ }
+ ZteFrameWork.startPageLoading();//加载中请稍候....
+ var headerMenu=$('#headerMenu');
+ headerMenu.empty();
+ $.ajax({
+ type: "GET",
+ cache: false,
+ async: false,
+ url: url,
+ dataType: "html",
+ success: function (res) {
+ $('#headerMenu').append(res);
+ ZteFrameWork.stopPageLoading();
+ },
+ error: function (xhr, ajaxOptions, thrownError) {
+ //$('#headerMenu').append('<h4>'+$.i18n.prop('com_zte_ums_ict_framework_ui_loadmenuerror')+'</h4>');//加载系统菜单失败!
+ }
+ });
+};
+function goToHomePage(){
+ locationhash = ZteFrameWork.getLocationHash();
+ if(!!locationhash&&locationhash.length>0){//有锚点,直接触发
+ var newIPPort=null;
+ if (store&&store('menuCategoryID')) {
+ var s=store('menuCategoryID').split('[menuCategoryID]');
+ if(s.length>2){
+ newIPPort={menuCategoryID:s[0],ipPortStr:s[1],newTitle:s[2]};
+ }
+ }
+ if(!!newIPPort){
+ ZteFrameWork.goToURLByIDAndNewIPPort(locationhash,newIPPort,null);
+ }else{
+ ZteFrameWork.goToURLByIDAndNewAction(locationhash,null,null);
+ }
+ }else{//否则还是模拟点击配置了start类的菜单
+ var containerStr = "";
+ //var sidermenu = $("[class='page-sidebar-menu']", $("[class='page-sidebar navbar-collapse collapse']"));
+ var sidermenu = $("#page-sidebar-menu");
+ var hormenu = $("#main_hormenu");
+ var fhormenu = $('#' + fMenuMegaDivId);
+ var fhormenusider = $('#page-f-sidebar-menu');
+ var startmenu = null;
+ var navPosOption = $('.nav-pos-direction', panel).val();
+ // 侧边栏显示,根据侧边栏CSS选择
+ if (navPosOption === "vertical") {
+ //containerStr=$('.page-sidebar').length>0?'.page-sidebar':"";
+ startmenu = $('.iframe.start' , sidermenu);
+ dealStartMenu( startmenu, sidermenu );
+ }
+ // 水平菜单显示,根据水平菜单CSS选择
+ else if (navPosOption === "horizontal") {
+ //containerStr=$('.hor-menu').length>0?'.header':containerStr;
+ startmenu = $('.iframe.start' , hormenu);
+ dealStartMenu( startmenu, hormenu );
+
+ }
+ //F菜单的恒菜单显示
+ else if (navPosOption === zteframework_menu_fmenu) {
+ //containerStr=$('.hor-menu').length>0?'.header':containerStr;
+ startmenu = $('.iframe.start' ,fhormenu);
+ if (startmenu && startmenu.length < 1) {
+ startmenu = $('.iframe.start' ,fhormenusider);
+ }
+ dealStartMenu( startmenu, fhormenu,fhormenusider );
+ }
+ }
+};
+var dealStartMenu = function(startmenu , menuContainer,menuContainer2 ){
+ var timer =setInterval(function () {
+ if(startmenu&&startmenu.length>0){
+ startmenu.click();
+ clearInterval(timer);
+ }else{
+ console.log('the start menu click event is not be triggerd ,so do it repeat!!');
+ $('a[operation]', menuContainer).each(function () {
+ startmenu = $(this);
+ return false;
+ });
+ if (menuContainer2&&startmenu && startmenu.length < 1) {
+ $('a[operation]', menuContainer2).each(function () {
+ startmenu = $(this);
+ return false;
+ });
+ }
+ }
+ }, 100);
+ handeCtxMenuitem();
+ }
+// 屏蔽横竖菜单项的右键功能
+function handeCtxMenuitem() {
+ $(".page-sidebar ul li a").each(function() {
+ if ($(this).attr("href") && $(this).attr("href") != "javascript:;" && $(this).attr("href") != "#") {
+ $(this).attr("oncontextmenu", "return false");
+ }
+ });
+ $(".hormenu li a").each(function() {
+ if ($(this).attr("href") && $(this).attr("href") != "javascript:;" && $(this).attr("href") != "#") {
+ $(this).attr("oncontextmenu", "return false");
+ }
+ });
+}
+function initBaseInfo(){
+ $("#logout_label").text($.i18n.prop('com_zte_ums_ict_framework_ui_group_logout'));
+ $("#fullscreen_label").text($.i18n.prop('com_zte_ums_ict_framework_ui_group_fullscreen'));
+ $("#changePwd_label").text($.i18n.prop('com_zte_ums_ict_framework_ui_changePwd'));
+ $("#com_zte_ums_ict_framework_moudle_about").text($.i18n.prop('com_zte_ums_ict_framework_moudle_about'));
+ $("#com_zte_ums_ict_framework_moudle_help").text($.i18n.prop('com_zte_ums_ict_framework_moudle_help'));
+ $("#zte_menu-toggler").attr("title",$.i18n.prop('com_zte_ums_ict_framework_moudle_menutoggler'));
+};
+window.closeModal = function(modalid) {
+ if(!modalid){
+ return;
+ }
+ if(modalid.indexOf("#")<0){
+ modalid="#"+modalid;
+ }
+ $(modalid).modal('hide');
+};
+function getLcsRight(lcsoperations) {
+ var lcsrights = new Array();
+ if (lcsoperations && (lcsoperations.length > 0)) {
+ // 请求后台license value
+ //----test data----
+ // var testjson = '{"data":[{"id":"mylcs","name":"xxx","value":"false"}]}';
+ // var testopt = eval('(' + testjson + ')');
+ // var testarray = testopt.data;
+ //-----end test data---
+ var keys = {
+ "keys" : lcsoperations
+ };
+ var jsonvalues = JSON.stringify(keys);
+ var data = {
+ "data" : jsonvalues
+ };
+ var url=FrameConst.REST_GETLICENSEINFO + "?tmpstamp=" + new Date().getTime();
+ url=ZteFrameWork.handlBaseURL(url);
+ $.ajax({
+ "dataType" : 'json',
+ "type" : "GET",
+ "async" : false,
+ "url" : url,
+ "data" : data,
+ //"contentType" : 'application/json; charset=utf-8',
+ "success" : function (response) {
+ if (response) {
+ lcsrights = response.data;
+ }
+ },
+ "error" : function (XMLHttpRequest, textStatus, errorThrown) {
+ lcsrights = null;
+ }
+ });
+ return lcsrights;
+ }
+ return lcsrights;
+}
+// 侧边栏菜单鉴权
+function siderBarMenuAuthentication() {
+ // license 鉴权
+ var menuids = new Array();
+ var lcsoperations = new Array();
+ //从页面DOM取得菜单license项。
+ $('a[licenseid]', $('.page-sidebar-menu')).each(function () {
+ var licenseid = $(this).attr("licenseid");
+ if (licenseid) {
+ lcsoperations.push(licenseid);
+ var id = $(this).attr("id");
+ menuids.push(id);
+ }
+ });
+ var lcsrights = getLcsRight(lcsoperations);// 取得license数据。
+ if (lcsrights && (lcsrights.length == menuids.length)) {
+ // 根据后台license值判断所在菜单项是否显示
+ for (var i = 0; i < menuids.length; i++) {
+ var id = menuids[i];
+ var lcskey = lcsoperations[i];
+ var lcsitem = lcsrights[i];
+ // 菜单项如果配了licenseid, 并且不是true字符串, 则移除菜单项
+ if (lcsitem.value != "True") {
+ $('#'+id, $('.page-sidebar-menu')).parent().remove();
+ }
+ }
+ }
+ var operations = new Array();
+ $('a[operation]', $('.page-sidebar-menu')).each(function () {
+ var operation = $(this).attr("operation");
+ if (operation) {
+ operations.push(operation);
+ }
+ }); // 遍历菜单项,提取所有的操作码
+ var rightObj = getAllOperCodeRights(operations); // 对操作码进行鉴权判断
+ $('a[operation]', $('.page-sidebar-menu')).each(function () {
+ var operation = $(this).attr("operation");
+ if (operation) {
+ if (!hasRight(operation, rightObj)) {
+ $(this).parent("li").remove(); // 删除没有权限的菜单项
+ }
+ }
+ });
+ rebuildSiderBarMenu();
+};
+// 横向菜单栏鉴权
+function horMenuAuthentication( horMenuId ) {
+ // license 鉴权
+ var menuids = new Array();
+ var lcsoperations = new Array();
+ //从页面DOM取得菜单license项。
+ $('a[licenseid]', $('#'+ horMenuId)).each(function () {
+ var licenseid = $(this).attr("licenseid");
+ if (licenseid) {
+ lcsoperations.push(licenseid);
+ var id = $(this).attr("id");
+ menuids.push(id);
+ }
+ });
+ var lcsrights = getLcsRight(lcsoperations);// 取得license数据。
+ if (lcsrights && (lcsrights.length == menuids.length)) {
+ // 根据后台license值判断所在菜单项是否显示
+ for (var i = 0; i < menuids.length; i++) {
+ var id = menuids[i];
+ var lcskey = lcsoperations[i];
+ var lcsitem = lcsrights[i];
+ // 菜单项如果配了licenseid, 并且不是true字符串, 则移除菜单项
+ if (lcsitem.value != "True") {
+ $('#'+id, $('#'+ horMenuId)).parent().remove();
+ }
+ }
+ }
+ var operations = new Array();
+ $('a[operation]', $('#'+ horMenuId)).each(function () {
+ var operation = $(this).attr("operation");
+ if (operation) {
+ operations.push(operation);
+ }
+ }); // 遍历菜单项,提取所有的操作码
+ var rightObj = getAllOperCodeRights(operations); // 对操作码进行鉴权判断
+ $('a[operation]', $('#'+ horMenuId)).each(function () {
+ var operation = $(this).attr("operation");
+ if (operation) {
+ if (!hasRight(operation, rightObj)) {
+ $(this).parent("li").remove(); // 删除没有权限的菜单项
+ }
+ }
+ });
+ rebuildHorMenu();
+};
+//根据F菜单的竖菜单来调整横菜单。获取hparentid相同的竖菜单中的第一个,来更新横菜单上对应父亲菜单的href、catchnum等信息
+function ajustFMenu(megaBarDivId , siderbarDivId){
+ var hparentIds = {};
+ $('a[hparentid]', $('#'+ siderbarDivId)).each(function () {
+ var hparentId = $(this).attr("hparentId");
+ var parentMenu = $('a[id = ' + hparentId + ']', $('#' + megaBarDivId));
+ var oldAHref = parentMenu.attr("href");
+ if (oldAHref == null || oldAHref.trim() == "#" || oldAHref == "javascript") {
+ var hrefMenu = $(this);
+ //竖菜单的第一级有可能是虚菜单,则找这个虚节点下面的第一个有href的菜单
+ if( $(this).attr('href') == null || $(this).attr('href') == "#" || $(this).attr('href') == "javascript:;"){
+ $('a[href]', $(this).parent().children('ul')).each(function () {
+ hrefMenu = $(this);
+ if (hrefMenu != null && hrefMenu != "#" && hrefMenu != "javascript") {
+ return false; //跳出循环
+ }
+ })
+ }
+ parentMenu.attr("href", hrefMenu.attr("href"));
+ parentMenu.attr("shiftjs", hrefMenu.attr("shiftjs"));
+ parentMenu.attr("cachenum", hrefMenu.attr("cachenum"));
+ parentMenu.attr("iframeName", hrefMenu.attr("iframeName"));
+ parentMenu.attr("xdomain", hrefMenu.attr("xdomain"));
+ parentMenu.attr("cssSrc", hrefMenu.attr("cssSrc"));
+ parentMenu.attr("category", hrefMenu.attr("category"));
+ parentMenu.attr("breadcrumgroupbuttonsrc", hrefMenu.attr("breadcrumgroupbuttonsrc"));
+ parentMenu.attr("operation", hrefMenu.attr("operation"));
+ parentMenu.attr("iframeautoscroll", hrefMenu.attr("iframeautoscroll"));
+ }
+ });
+}
+function FMenuAuthentication(megaBarDivId , siderbarDivId){
+ var beforeHparentId = {};
+ $('a[hparentid]', $('#'+ siderbarDivId)).each(function(){
+ var parentid = $(this).attr("hparentid");
+ beforeHparentId[parentid] = 1;
+ });
+ checkFmenuRightByAttr('licenseid' , megaBarDivId , siderbarDivId , getLcsRight);
+ checkFmenuRightByAttr('operation' , megaBarDivId , siderbarDivId, getAllOperCodeRights);
+ rebuildSiderBarMenu();
+ var afterHparentId={};
+ $('a[hparentid]', $('#'+ siderbarDivId)).each(function(){
+ var parentid = $(this).attr("hparentid");
+ afterHparentId[parentid] = 1;
+ });
+ //比较鉴权前后的父菜单差异,如果这个父菜单自己没有href属性,且鉴权后,所有的子菜单都没有权限,那么这个父菜单需要从界面上去掉
+ for( var parentid in beforeHparentId ){
+ if( afterHparentId[parentid] == null ){
+ var parent = $('#'+ parentid , $('#'+ megaBarDivId));
+ if(parent.attr('href') == null || parent.attr('href') == "javascript:;" || parent.attr('href') == "#"){
+ parent.parent().remove();
+ }
+ }
+ }
+}
+function checkFmenuRightByAttr( attrName, megaBarDivId , siderbarDivId ,callback ){
+ // license 鉴权
+ var menuids = new Array();
+ var parentMenuId = new Array();
+ var operations = new Array();
+ //从页面DOM取得菜单license项。
+ $('a['+ attrName+']', $('#'+ siderbarDivId)).each(function () {
+ var attrValue = $(this).attr(attrName);
+ if (attrValue) {
+ operations.push(attrValue);
+ var id = $(this).attr("id");
+ menuids.push({'id':id });
+ }
+ });
+ var rights = callback(operations);// 取得license数据。
+ if (rights && (rights.length == menuids.length)) {
+ // 根据后台license值判断所在菜单项是否显示
+ for (var i = 0; i < menuids.length; i++) {
+ var id = menuids[i].id;
+ var hparentId =menuids[i].hParentId;
+ var key = operations[i];
+ var item = rights[i];
+ // 菜单项如果配了licenseid, 并且不是true字符串, 则移除菜单项
+ if (item.value != "True") {
+ $('#'+id, $('#'+ siderbarDivId)).parent().remove();
+ }
+ }
+ }
+}
+// “更多操作”分组按钮鉴权
+function groupButtonAuthentication() {
+ // license 鉴权
+ var menuids = new Array();
+ var lcsoperations = new Array();
+ //从页面DOM取得菜单license项。
+ $('a[licenseid]', $('.more-botton-zone > li.btn-group')).each(function () {
+ var licenseid = $(this).attr("licenseid");
+ if (licenseid) {
+ lcsoperations.push(licenseid);
+ var id = $(this).attr("id");
+ menuids.push(id);
+ }
+ });
+ var lcsrights = getLcsRight(lcsoperations);// 取得license数据。
+ if (lcsrights && (lcsrights.length == menuids.length)) {
+ // 根据后台license值判断所在菜单项是否显示
+ for (var i = 0; i < menuids.length; i++) {
+ var id = menuids[i];
+ var lcskey = lcsoperations[i];
+ var lcsitem = lcsrights[i];
+ // 菜单项如果配了licenseid, 并且不是true字符串, 则移除菜单项
+ if (lcsitem.value != "True") {
+ $('#'+id, $('.more-botton-zone > li.btn-group')).parent().remove();
+ }
+ }
+ }
+ // 增加mysql判断,如果数据库为mysql,去掉基础数据备份功能菜单项
+ var dbType = ZteFrameWork_conf.dbType;
+ if (dbType == "mysql") {
+ $("#uep-ict-backup-baseDataBack",$('.more-botton-zone > li.btn-group')).parent().remove();
+ }
+ var operations = new Array();
+ $('a[operation]', $('.more-botton-zone > li.btn-group')).each(function () {
+ var operation = $(this).attr("operation");
+ if (operation) {
+ operations.push(operation);
+ }
+ }); // 遍历菜单项,提取所有的操作码
+ var rightObj = getAllOperCodeRights(operations); // 对操作码进行鉴权判断
+ $('a[operation]', $('.more-botton-zone > li.btn-group')).each(function () {
+ var operation = $(this).attr("operation");
+ if (operation) {
+ if (!hasRight(operation, rightObj)) {
+ $(this).parent("li").remove(); // 删除没有权限的菜单项
+ }
+ }
+ });
+ // 如果“更多菜单”下没有子菜单了,则删除整个“更多菜单”下拉框。
+ if ($('li > a', $('.more-botton-zone > li.btn-group')).length == 0) {
+ $('.more-botton-zone > li.btn-group').remove();
+ }
+};
+// 删除没有子菜单的一级菜单,查看新菜单是否配了登录默认页面,如没有则指定第一个有权限的菜单作为登录后默认页面
+function rebuildSiderBarMenu() {
+ if ($('a.start').length == 0) {
+ $('li > a[href!="javascript:;"]', $('.page-sidebar-menu')).eq(0).addClass("start");
+ }
+ $('ul.sub-menu', $('.page-sidebar-menu')).each(function () {
+ if ($(this).has('li').length == 0) {
+ $(this).parent("li").remove();
+ }
+ });
+};
+// 删除没有子菜单的一级菜单,查看新菜单是否配了登录默认页面,如没有则指定第一个有权限的菜单作为登录后默认页面
+function rebuildHorMenu() {
+ if ($('a.start').length == 0) {
+ $('li > a[href!="#"]', $('#main_hormenu')).eq(0).addClass("start");
+ }
+ $('ul.mega-menu-submenu', $('#main_hormenu')).each(function () {
+ if ($(this).has('li > a').length == 0) {
+ $(this).remove(); // 删空的分组列
+ }
+ });
+ //删除增加的分组div
+ $('div.zteDivWidth', $('#main_hormenu')).each(function () {
+ if ($(this).has('ul').length == 0) {
+ $(this).remove(); // 删空的分组列
+ }
+ });
+ $('ul.dropdown-menu', $('#main_hormenu')).each(function () {
+ if ($(this).has('ul').length == 0) {
+ $(this).parent("li").remove(); // 删空的一级菜单栏
+ }
+ });
+ $('li.divider', $('#main_hormenu')).each(function () {
+ if ($(this).next().hasClass('divider')) {
+ $(this).remove(); // 连续出现分隔线则删除一个
+ }
+ });
+ $('li.divider', $('#main_hormenu')).each(function () {
+ if ($(this).next().length == 0) {
+ $(this).remove(); // 如果分隔线在最后一行,则删除之
+ }
+ });
+}
+//获取页面菜单栏所有的操作码权限
+function getAllOperCodeRights(operations) {
+ var rights = new Array();
+ if( operations && operations.length > 0 ){
+ var data = {
+ "operations" : operations
+ };
+ var sendData = JSON.stringify(data);
+ var url=FrameConst.REST_CHECKRIGHT + "?data=" + sendData + "&tmpstamp=" + new Date().getTime();
+ url=ZteFrameWork.handlBaseURL(url);
+ $.ajax({
+ "dataType" : 'json',
+ "type" : "GET",
+ "async" : false,
+ "url" : url,
+ "data" : null,
+ //"contentType" : 'application/json; charset=utf-8',
+ "success" : function (response) {
+ rights = response.value;
+ },
+ "error" : function (XMLHttpRequest, textStatus, errorThrown) {
+ if (XMLHttpRequest.status == 401) {
+ window.location.replace("login.html");
+ } else {
+ console.log('Communication Error!');
+ }
+ }
+ });
+ }
+ return {
+ opCodes : operations,
+ rights : rights
+ };
+};
+// 判断操作码是否有权限
+function hasRight(opCode, rightObj) {
+ for (var i = 0; i < rightObj.opCodes.length; i++) {
+ if (rightObj.opCodes[i] == opCode) {
+ return (rightObj.rights[i] == true);
+ }
+ }
+ return false;
+};
+// 处理mysql环境下备份菜单的合并问题
+function dealMysqlBackupMenu() {
+ var dbType = ZteFrameWork_conf.dbType;
+ if (dbType !== undefined && dbType !== "mysql") {
+ return;
+ }
+ var sidermenu = $("[class='page-sidebar-menu']");
+ var hormenu = $(".hormenu");
+ //这段代码先这么写,html的位置不一定正确,如果后面位置不一致,再修改。
+ if (sidermenu.length > 0 && $('#uep-ict-backup-dataBackup').length > 0) {
+ $('#uep-ict-backup-dataBackup', sidermenu).attr("breadcrumGroupButtonSrc", ICTFRAME_CONST_DATABACKUP_PATH);
+ }
+ if (hormenu.length > 0 && $('#uep-ict-backup-dataBackup').length > 0) {
+ $('#uep-ict-backup-dataBackup', hormenu).attr("breadcrumGroupButtonSrc", ICTFRAME_CONST_DATABACKUP_PATH);
+ $('#uep-ict-backup-dataBackup').parent('li').attr('style', 'display:block');
+ $('#uep-ict-backup-allDbStructBackup').parent('li').attr('style', 'display:none');
+ $('#uep-ict-backup-baseDataBack').parent('li').attr('style', 'display:none');
+ }
+};
+// 浏览器缩小后导航栏隐藏的情况下点击navbar-toggle显示菜单的前置工作,
+// 浏览器缩小后导航栏隐藏的情况下点击navbar-toggle显示菜单的前置工作,
+function dealMavToggle(navtoggle) {
+ var sidermenu = $("#page-sidebar-menu");
+ var hormenu = $("#main_hormenu");
+ var panel = $(".zte-theme-panel");
+ var siderbarpos = $(".nav-pos-direction", panel).val()
+ if ("hidden" == $(navtoggle).attr("navtoggledispattr")) {
+ $(navtoggle).attr("navtoggledispattr", "display");
+ sidermenu.css('display','block');//侧边栏显示
+ hormenu.css("display", "none");//隐藏水平菜单栏
+ } else {
+ $(navtoggle).attr("navtoggledispattr", "hidden");
+ sidermenu.css('display','none');//侧边栏隐藏
+ hormenu.css("display", "none");
+ }
+};
diff --git a/uiframe-iui/src/main/resources/webroot/framework/js/core/ZteFrameWork.min.js b/uiframe-iui/src/main/resources/webroot/framework/js/core/ZteFrameWork.min.js
new file mode 100644
index 00000000..3eb6a5fc
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/js/core/ZteFrameWork.min.js
@@ -0,0 +1,150 @@
+String.prototype.trim=function(){return this.replace(/(^\s*)|(\s*$)/g,"")};String.prototype.format=function(){if(0==arguments.length)return this;for(var b=this,d=0;d<arguments.length;d++)b=b.replace(RegExp("\\{"+d+"\\}","g"),arguments[d]);return b};String.prototype.startWith=function(b){return RegExp("^"+b).test(this)};String.prototype.endWith=function(b){return RegExp(b+"$").test(this)};
+var s=!function(b,d){var h={supportsFullScreen:!1,isFullScreen:!1,requestFullScreen:"",exitFullScreen:"",fullscreenchange:"",prefix:""},k=["webkit","moz","ms"],g=k.length,n=0;if(d.exitFullscreen)h.supportsFullScreen=!0;else for(;n<g;n++)if(d[k[n]+"ExitFullscreen"]||d[k[n]+"CancelFullScreen"]){h.supportsFullScreen=!0;h.prefix=k[n];break}if(h.supportsFullScreen){var m=h.prefix;h.fullscreenchange=function(b){d.addEventListener("ms"==m?"MSFullscreenChange":m+"fullscreenchange",function(){b&&b()},!1)};
+h.fullscreenchange(function(){h.isFullScreen=function(b){switch(b){case "":return d.fullscreen;case "webkit":return d.webkitIsFullScreen;case "moz":return d.mozFullScreen;case "ms":return d.msFullscreenElement?!0:!1}}(m)});h.requestFullScreen=function(b){b=b||d.documentElement;try{m?b[m+"RequestFullScreen"]():b.requestFullScreen()}catch(h){b[m+"RequestFullscreen"]()}};h.exitFullScreen=function(){try{m?d[m+"ExitFullscreen"]():d.exitFullscreen()}catch(b){d[m+"CancelFullScreen"]()}}}b.screenfull=h}(window,
+document);
+(function(b){"function"===typeof define&&define.amd?define(b):window.purl=b()})(function(){function b(b,d){for(var h=decodeURI(b),h=I[d?"strict":"loose"].exec(h),g={attr:{},param:{},seg:{}},n=14;n--;)g.attr[u[n]]=h[n]||"";g.param.query=k(g.attr.query);g.param.fragment=k(g.attr.fragment);g.seg.path=g.attr.path.replace(/^\/+|\/+$/g,"").split("/");g.seg.fragment=g.attr.fragment.replace(/^\/+|\/+$/g,"").split("/");g.attr.base=g.attr.host?(g.attr.protocol?g.attr.protocol+"://"+g.attr.host:g.attr.host)+(g.attr.port?
+":"+g.attr.port:""):"";return g}function d(b){b=b.tagName;return"undefined"!==typeof b?l[b.toLowerCase()]:b}function h(b,d,g,k){var l=b.shift();if(l){var v=d[g]=d[g]||[];if("]"==l)if(n(v))""!==k&&v.push(k);else if("object"==typeof v){d=b=v;g=[];for(var m in d)d.hasOwnProperty(m)&&g.push(m);b[g.length]=k}else d[g]=[d[g],k];else{~l.indexOf("]")&&(l=l.substr(0,l.length-1));if(!w.test(l)&&n(v))if(0===d[g].length)v=d[g]={};else{m={};for(var u in d[g])m[u]=d[g][u];v=d[g]=m}h(b,v,l,k)}}else n(d[g])?d[g].push(k):
+d[g]="object"==typeof d[g]?k:"undefined"==typeof d[g]?k:[d[g],k]}function k(b){return g(String(b).split(/&|;/),function(b,d){try{d=decodeURIComponent(d.replace(/\+/g," "))}catch(g){}var k=d.indexOf("="),l;a:{for(var m=d.length,x,u=0;u<m;++u)if(x=d[u],"]"==x&&(l=!1),"["==x&&(l=!0),"="==x&&!l){l=u;break a}l=void 0}m=d.substr(0,l||k);l=d.substr(l||k,d.length);l=l.substr(l.indexOf("=")+1,l.length);""===m&&(m=d,l="");k=m;m=l;if(~k.indexOf("]")){var q=k.split("[");h(q,b,"base",m)}else{if(!w.test(k)&&n(b.base)){l=
+{};for(q in b.base)l[q]=b.base[q];b.base=l}""!==k&&(q=b.base,l=q[k],"undefined"===typeof l?q[k]=m:n(l)?l.push(m):q[k]=[l,m])}return b},{base:{}}).base}function g(b,d,h){for(var g=0,k=b.length>>0;g<k;)g in b&&(h=d.call(void 0,h,b[g],g,b)),++g;return h}function n(b){return"[object Array]"===Object.prototype.toString.call(b)}function m(d,h){1===arguments.length&&!0===d&&(h=!0,d=void 0);d=d||window.location.toString();return{data:b(d,h||!1),attr:function(b){b=q[b]||b;return"undefined"!==typeof b?this.data.attr[b]:
+this.data.attr},param:function(b){return"undefined"!==typeof b?this.data.param.query[b]:this.data.param.query},fparam:function(b){return"undefined"!==typeof b?this.data.param.fragment[b]:this.data.param.fragment},segment:function(b){if("undefined"===typeof b)return this.data.seg.path;b=0>b?this.data.seg.path.length+b:b-1;return this.data.seg.path[b]},fsegment:function(b){if("undefined"===typeof b)return this.data.seg.fragment;b=0>b?this.data.seg.fragment.length+b:b-1;return this.data.seg.fragment[b]}}}
+var l={a:"href",img:"src",form:"action",base:"href",script:"src",iframe:"src",link:"href",embed:"src",object:"data"},u="source protocol authority userInfo user password host port relative path directory file query fragment".split(" "),q={anchor:"fragment"},I={strict:/^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*):?([^:@]*))?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/,loose:/^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*):?([^:@]*))?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/},
+w=/^[0-9]+$/;m.jQuery=function(b){null!=b&&(b.fn.url=function(h){var g="";this.length&&(g=b(this).attr(d(this[0]))||"");return m(g,h)},b.url=m)};m.jQuery(window.jQuery);return m});ZteFrameWork_conf={userName:store.get("username"),changePassItem:FrameConst.change_pass?FrameConst.change_pass:!0,helpMenuItem:!1,aboutMenuItem:!1,flightMenuItem:!1,fullscreenMenuItem:!1,logoutMenuItem:!0,defaultThemeColor:"ztebluelight2",dbType:"other",acceptLanguage:"zh-CN"};$("#currentUser").html(ZteFrameWork_conf.userName);
+$.ajax({url:FrameConst.REST_FRAMECOMMIFO,type:"GET",cache:!1,contentType:"application/json; charset=utf-8",success:function(b){b.helpMenuItem&&""!=b.helpMenuItem&&(ZteFrameWork_conf.helpMenuItem=b.helpMenuItem);b.aboutMenuItem&&""!=b.aboutMenuItem&&(ZteFrameWork_conf.aboutMenuItem=b.aboutMenuItem);b.flightMenuItem&&""!=b.flightMenuItem&&(ZteFrameWork_conf.flightMenuItem=b.flightMenuItem);b.fullscreenMenuItem&&""!=b.fullscreenMenuItem&&(ZteFrameWork_conf.fullscreenMenuItem=b.fullscreenMenuItem);b.logoutMenuItem&&
+""!=b.logoutMenuItem&&(ZteFrameWork_conf.logoutMenuItem=b.logoutMenuItem);b.defaultThemeColor&&""!=b.defaultThemeColor&&(ZteFrameWork_conf.defaultThemeColor=b.defaultThemeColor);b.dbType&&""!=b.dbType&&(ZteFrameWork_conf.dbType=b.dbType);b.acceptLanguage&&""!=b.acceptLanguage&&(ZteFrameWork_conf.acceptLanguage=b.acceptLanguage);b.changePassItem&&""!=b.changePassItem&&(ZteFrameWork_conf.changePassItem=b.changePassItem);setFrameWorkByConf()},error:function(b){setFrameWorkByConf()}});
+function setThemeColor(b){var d=$(".zte-theme-panel");$(".theme-colors > ul > li",d).each(function(){var d=$(this).attr("data-style");d==b&&($(this).addClass("current"),$("#style_color").attr("href","css/themes/"+d+".css"),store("style_color",d))})}
+function setFrameWorkByConf(){var b=ZteFrameWork_conf.helpMenuItem,d=ZteFrameWork_conf.aboutMenuItem,h=ZteFrameWork_conf.flightMenuItem,k=ZteFrameWork_conf.fullscreenMenuItem,g=ZteFrameWork_conf.logoutMenuItem,n=ZteFrameWork_conf.changePassMenuItem;b&&"false"!==b||$("#uep_ict_help_url").parent("li").remove();d&&"false"!==d||$('[data-target="#aboutDlg"]').parent("li").remove();b||d||$("#uep_ict_help_div").remove();h&&"false"!==h||$("#header_notification_bar").html("<div>&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp</div>");
+k&&"false"!==k||$("#trigger_fullscreen_div").html("");g&&"false"!==g||$("#trigger_logout_div").html("");(!k&&!g||"false"===k&&"false"===g)&&$("#full_logout_divider").css("display","none");n||($("#changePwd_labellink").css("display","none"),$("#full_logout_divider").css("display","none"));b=ZteFrameWork_conf.defaultThemeColor;d=$(".zte-theme-panel");$("ul > li",d).removeClass("current");store&&!store("style_color")?setThemeColor(b):setThemeColor(store("style_color"))}
+function Hashtable(){this._hash={};this._count=0;this.add=function(b,d){if(this._hash.hasOwnProperty(b))return!1;this._hash[b]=d;this._count++;return!0};this.hash=function(){return this._hash};this.remove=function(b){delete this._hash[b];this._count--};this.count=function(){return this._count};this.items=function(b){if(this.contains(b))return this._hash[b]};this.contains=function(b){return this._hash.hasOwnProperty(b)};this.clear=function(){this._hash={};this._count=0};this.replace=function(b,d){this.contains(b)&&
+this.remove(b);return this.add(b,d)}}
+var fMenuSiderDivId="page-f-sidebar-menu",fMenuMegaDivId="f_hormenu",megaSiderDivId="page-megachild-sidebar-menu",megaDivId="main_hormenu",zteframework_menu_horizontal="horizontal",zteframework_menu_vertical="vertical",zteframework_menu_fmenu="fmenu",zteframework_showNav="true",zteframework_smallView=960,ZteFrameWork=function(){var b=getLanguage(),d=!1,h=function(){try{return document.createEvent("TouchEvent"),!0}catch(c){return!1}},k=!h,g=!1,n=!1,m=!1,l="",u=225,q=35,I=[],w=new Hashtable,x=new Hashtable,
+C=new Hashtable,V=new Hashtable,y="page-mainIframe",J="",v="",D=!1,ca={blue:"#4b8df8",red:"#e02222",green:"#35aa47",purple:"#852b99",grey:"#555555","light-grey":"#fafafa",yellow:"#ffb848",ztebluelight:"#3366cc"},G=function(){var c=window,t="inner";"innerWidth"in window||(t="client",c=document.documentElement||document.body);return{width:c[t+"Width"],height:c[t+"Height"]}},va=function(){var c=getUrlParam("menu");switch(c?c:0){case "1":l=$("#com_zte_ums_ict_framework_ui_page_title_1").text().trim();
+break;case "2":l=$("#com_zte_ums_ict_framework_ui_page_title_2").text().trim();break;case "3":l=$("#com_zte_ums_ict_framework_ui_page_title_3").text().trim();break;default:l=$("#com_zte_ums_ict_framework_ui_page_title").text().trim()}"rtl"===$("body").css("direction")&&(d=!0);g=!!navigator.userAgent.match(/MSIE 8.0/);n=!!navigator.userAgent.match(/MSIE 9.0/);(m=!!navigator.userAgent.match(/MSIE 10.0/))&&$("html").addClass("ie10");(m||n||g)&&$("html").addClass("ie");navigator.userAgent.toLowerCase().match(/(iphone|ipod|ipad)/)?
+($(document).on("focus","input, textarea",function(){$(".page-header").hide();$(".page-footer")&&0<$(".page-footer").length&&$(".page-footer").hide()}),$(document).on("blur","input, textarea",function(){$(".page-header").show();$(".page-footer")&&0<$(".page-footer").length&&$(".page-footer").show()})):($(document).on("focus","input, textarea",function(){$(".page-footer")&&0<$(".page-footer").length&&$(".page-footer").hide()}),$(document).on("blur","input, textarea",function(){$(".page-footer")&&0<
+$(".page-footer").length&&$(".page-footer").show()}))},F=function(c){$(".page-loading").remove();$("body").append('<div class="page-loading"><img src="'+ICTFRAME_CONST_SPINNER_GIF_PATH+'"/>&nbsp;&nbsp;<span>'+(c?c:$.i18n.prop("com_zte_ums_ict_framework_ui_loading"))+"</span></div>")},da=function(){G().width<zteframework_smallView?$("body").removeClass("page-sidebar-closed"):"1"===Q("sidebar_closed")&&$("body").addClass("page-sidebar-closed")},W=function(){for(var c=0;c<I.length;c++)I[c].call()},fa=
+function(){da();ea();B();X();W()},wa=function(){da();B();setTimeout(function(){ea(!0)},100)},xa=function(){var c;if(g){var t;$(window).resize(function(){t!=document.documentElement.clientHeight&&(c&&clearTimeout(c),c=setTimeout(function(){fa()},50),t=document.documentElement.clientHeight)})}else $(window).resize(function(){c&&clearTimeout(c);c=setTimeout(function(){fa()},50)})},ga=function(c){var t=$(".nav-pos-direction",$(".zte-theme-panel")).val(),f=$("#page-sidebar-menu"),b=$("#main_hormenu"),
+H=$("#"+fMenuMegaDivId),d=$("#"+fMenuSiderDivId);c?(f.css("display","block"),b.css("display","none"),H.css("display","none"),d.css("display","none")):zteframework_menu_horizontal==t?(f.css("display","none"),H.css("display","none"),d.css("display","none"),b.css("display","block")):zteframework_menu_vertical==t?(f.css("display","block"),b.css("display","none"),H.css("display","none"),d.css("display","none")):zteframework_menu_fmenu==t&&(f.css("display","none"),b.css("display","none"),H.css("display",
+"block"),d.css("display","block"),c=d.children(".sidebar-toggler-wrapper").siblings(),0<c.length&&"none"!=c.css("display")&&(d.css("display","block"),$("body").removeClass("page-full-width"),$("body").hasClass("page-sidebar-closed")?$(".page-content").css("marginLeft",q):$(".page-content").css("marginLeft",u)))},ea=function(c){c=document.body.clientWidth;for(var t=$("a.dropdown-toggle","#main_hormenu"),f=0;f<t.length;f++){for(var b=$(t[f]),H=b.offset().left,d=b.parent().children(".dropdown-menu"),
+g=$(".zteDivWidth",d),h=0,k=0;k<g.length&&0<g.length;k++){var l="",m=0;$("span",g[k]).each(function(){var c=this.innerText;c.length>m&&(m=c.length,l=c)});h=h+getStringWidth(l,14)+94.5}h+H>c?(console.log("ajust class dropdown-menu-right ,id = "+b.attr("id")),d.addClass("dropdown-menu-right")):d.removeClass("dropdown-menu-right")}},B=function(c){var t=$(".page-content"),f=$(".page-content-body"),b=$(".page-sidebar"),d=$("body"),g,h=G(),l=Math.min(window.screen.availHeight,h.height)-5,z=$(".footer"),
+m=$(".page-breadcrumb"),n=$("#pageableDiv");console.log("pageableDiv height:"+n.outerHeight(!0));var u=$(".header");"isc"===(x.items(y)?x.items(y).childpageType:"")&&$(".sidebar-option",panel).val("fixed");var r=ZteFrameWork.getLocationURLParameter("showNav");"false"==r&&(zteframework_showNav=r,ha(),ia());r=l-(!z||0>=z.length?0:z.outerHeight(!0))-u.outerHeight(!0);n=!n||0>=n.length||!1==n.is(":visible")?0:n.outerHeight(!0);f=l-u.outerHeight(!0)-(!z||0>=z.length||!1==z.is(":visible")?0:z.outerHeight(!0))-
+m.outerHeight(!0)-n-(f.outerHeight(!0)-f.height());m=""==y?"page-mainIframe":y;if((n=$(".page-content .page-content-body ."+m))&&0<n.length){if(navigator.userAgent.toLowerCase().match(/(iphone|ipod|ipad)/)){var q=h.width-t.offset().left-2*(n.offset().left-t.offset().left);n.width(q)}q=b.attr("style");console.log("pym:parent iframe "+m+" sidebar.height:"+b.height()+" h:"+f);f=b.height()>f?b.height():f;b.attr("style",q);if(!k){q=f;try{q=n.contents().height()}catch(Ja){}f=q>f?q:f}x.items(m).setMinHeight&&
+(n=Math.min(l,f),console.log("pym:parent iframe "+m+" window.screen.availHeight:"+l+" viewport.height:"+h.height+" h:"+f+" minHeight:"+n),x.items(m).setMinHeight(n))}!0===d.hasClass("page-footer-fixed")&&!0===d.hasClass("page-sidebar-fixed")?t.height()<r&&K(t,"min-height",r+"px",!0):!0===d.hasClass("page-footer-fixed")&&!1===d.hasClass("page-sidebar-fixed")?t.height()<r&&K(t,"min-height",r+"px",!0):(d.hasClass("page-sidebar-fixed")?g=ja():(q=b.attr("style"),b.attr("style",q),b=u.outerHeight(!0),z=
+!z||0>=z.length?0:z.outerHeight(!0),1024<$(window).width()&&g+b+z<l&&(g=l-b-z)),g<=t.height()&&K(t,"min-height",g+"px",!0));$(window).width()>=zteframework_smallView?(ga(),"none"!=$(".page-sidebar-menu li").css("display")&&$("body").hasClass("page-sidebar-closed")&&$(".sidebar-toggler").hasClass("close-by-viewportChange")&&(c||$(".sidebar-toggler")[1].click(),$(".sidebar-toggler").removeClass("close-by-viewportChange"))):ga(!0)},ya=function(c){var t;if(0<w.count())for(var f in w.hash()){w.replace(f,
+0);var b=$(".page-content .page-content-body ."+f);b&&0<b.length&&(c==f?(b.show(),w.replace(f,1)):("page-mainIframe"===f?(t=f,b.attr("src",""),b.remove()):b.hide(),w.replace(f,0)))}t&&(delete w._hash[t],delete x._hash[t]);w.contains(c)||(w.add(c,1),myIframe=$("."+c),myIframe.show(),myIframe.load(function(){ZteFrameWork.stopPageLoading()}))},ha=function(){$(".hor-menu").hide();K($(".page-content"),"margin-left","0px",!0);K($(".page-sidebar"),"display","none",!0);$("#"+fMenuSiderDivId).children().css("display",
+"none")},ia=function(){$("#header_notification_bar").html("<div>&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp</div>")},Aa=function(c){var b=$(".zte-theme-panel"),b=$(".nav-pos-direction",b).val(),f=null,p=null;"vertical"===b?(f=$("#"+c.attr("id"),$("#main_hormenu")),p=$(".header ul")):"horizontal"===b?(f=za(c),ka(c,megaSiderDivId),p=f[0],f=f[1]):b===zteframework_menu_fmenu&&ka(c,fMenuSiderDivId);p&&(p.children("li.active").removeClass("active"),p.find(".arrow.open").removeClass("open"));f&&(f.parents("li").each(function(){$(this).addClass("iframe active");
+$(this).find("a > span.arrow").addClass("open")}),f.parents("li").addClass("active"),"horizontal"===b&&f.parent().parent().parent().is("li")&&$(".arrow",f.parent().parent().parent()).addClass("open"))},za=function(c){targetsource=$("#"+c.attr("id"),$("[class='page-sidebar-menu']"));targetContainer=$("#page-sidebar-menu ul");$("li.open",targetContainer).each(function(){$("ul.sub-menu",this).attr("style")&&($("ul.sub-menu",this).removeAttr("style"),$(this).removeClass("open"))});if(0<=c.parent().parent().parent().parent().attr("class").indexOf("page-sidebar-menu")){c=
+$("#"+c.attr("id"),$("#main_hormenu"));var b=$(".header ul");b.children("li.active").removeClass("active");b.find(".arrow.open").removeClass("open");c.parents("li").each(function(){$(this).addClass("iframe active");$(this).find("a > span.arrow").addClass("open")});c.parents("li").addClass("active")}return[targetContainer,targetsource]},ka=function(c,b){var f=$("#"+b);if(R)R=!1;else if($(c).parents("li").hasClass("mega-menu-dropdown")){var p=c.attr("id");$("#"+b+">li").hide();var d=$("a[hparentid= "+
+p+"]",f).parent();d.show();0<d.length&&$("#"+b+">li.sidebar-toggler-wrapper").show();0<$("a[hparentid= "+p+"]",f).length?la(c,b):(f.css("display","none"),$("body").addClass("page-full-width"),$(".page-content").css("marginLeft",u))}else"true"==zteframework_showNav&&($("#"+b+">li").hide(),p=$(c).parents("li"),p=p.eq(p.length-1).children("a").attr("hparentid"),d=$("a[hparentid="+p+"]",f).parent(),d.show(),0<d.length&&$("#"+b+">li.sidebar-toggler-wrapper").show(),la(c,b))},la=function(c,b){var f=$("#"+
+b);f.css("display","block");$("ul.sub-menu",f).css("display","block");$(".arrow",f).addClass("open");$("body").removeClass("page-full-width");$("body").hasClass("page-sidebar-closed")?$(".page-content").css("marginLeft",q):$(".page-content").css("marginLeft",u);var p=c.attr("href");$("li.iframe",f).removeClass("active");f=$("a[href ='"+p+"']",f).parent();f.addClass("active");f.parent().parent().addClass("open").addClass("active");f.parent().css("display","block");f.parent().parent().children("a").children(".arrow").addClass("open")},
+Z=function(c,b,f){var p=c.attr("href");if(p&&!(2>p.length)){b.preventDefault();D||(D=!0,p=c.parents("li").last(),p.hasClass("open")||Y(p.children("a:eq(0)")));f&&0<f.length&&$("."+f+" ul").children("li.active").removeClass("active");c.parents("li").each(function(){$(this).addClass("iframe active");$(this).children("a > span.arrow").addClass("open")});c.parents("li").addClass("active");Aa(c);f&&0<f.length&&991>=$(window).width()&&$("."+f).hasClass("in")&&$(".navbar-toggle").click();if(dealMultTabPage(c))return!0;
+f=b.data&&b.data.breadcrumbBtnMenuItem&&0<b.data.breadcrumbBtnMenuItem.length?b.data.breadcrumbBtnMenuItem:"";0<f.length?(c=$("#"+f,$("#pageableDiv")),0==c.length&&(c=$("#"+f,$(".more-botton-zone"))),L(c,b)):(F(),S(c,b)&&M(c,!1,b))}},Ba=function(c,b,f){var p=c.attr("href");!p||2>p.length||(b.preventDefault(),D||(D=!0,b=c.parents("li").last(),Y(b.children("a:eq(0)"))),f&&0<f.length&&(b=$("."+f+" ul"),b.children("li.active").removeClass("active"),b.children("arrow.open").removeClass("open")),c.parents("li").each(function(){$(this).addClass("iframe active");
+$(this).children("a > span.arrow").addClass("open")}),c.parents("li").addClass("active"),f&&0<f.length&&991>=$(window).width()&&$("."+f).hasClass("in")&&$(".navbar-toggle").click())},S=function(c,b){function f(c,b,f,t,d,p,g){c=new pym.Parent(c,b,{xdomain:p});c.iframe.id=f;c.iframe.name=t;c.iframe.setAttribute("class",d);c.iframe.setAttribute("allowfullscreen","");c.iframe.setAttribute("mozallowfullscreen","");c.iframe.setAttribute("oallowfullscreen","");c.iframe.setAttribute("msallowfullscreen","");
+c.iframe.setAttribute("webkitallowfullscreen","");c.iframe.setAttribute("onload",'ZteFrameWork.SyncCSS(this,0,"'+m+'");ZteFrameWork.stopPageLoading();');x.replace(f,c);c.onMessage("height",function(c){console.log("The frame "+f+" receive message height is "+c);var b=$(".page-content .page-content-body ."+f);c=Math.max(this.minHeight,c);b.height(c)});return c}v="";var p=c.attr("href");if(p&&!(2>p.length)){var p=ZteFrameWork.handlBaseURL(p),d=c.attr("category");if(d&&0<d.length&&(d=V.items(d))&&d.ipPort&&
+""!=d.ipPort.trim()){var d=ZteFrameWork.getDomainURL(d.ipPort),g=ZteFrameWork.getDomainURL(p);console.log("old url:"+p);p=d+p.replace(g,"");console.log("newIpPort:"+d+" newURL:"+p)}F();var h=c.attr("cacheNum"),k=c.attr("shiftJS");c.attr("iframeName");var l=c.attr("iframeAutoScroll"),l=l?"yes"===l?"yes":"auto"===l?"auto":"no":"no";_xdomain=(_xdomain=c.attr("xdomain"))&&0<_xdomain.length?_xdomain:"*";var m=c.attr("cssSrc"),m=m&&0<m.length?m:"",n="",u=$(".page-content .page-content-body");y=h=h?
+"page-mainIframe"+h:"page-mainIframe";var d=""==y?"page-mainIframe":y,g=$(".page-content .page-content-body ."+d),r=b&&b.data&&b.data.action?b.data.action:"",r=r&&0<r.length?"null"==r.trim().toLowerCase()?r:"javascript:$('.page-content .page-content-body ."+d+"')[0].contentWindow."+r.trim()+";":"",r=r.trim(),n=k&&0<k.length?"null"==k.trim().toLowerCase()?k:"javascript:$('.page-content .page-content-body ."+d+"')[0].contentWindow."+k+";":"";if(g&&0<g.length)if(l=g.attr("src"),!(k||0<r.length)||l!=
+p&&l.split("?")[0]!=p.split("?")[0]||"page-mainIframe"==h)0<r.length&&"null"!=r.toLowerCase()&&(p=p.split("?")[0]),l.split("#")[0]!=p.split("#")[0]?g.attr("src",""):ZteFrameWork.stopPageLoading(),g.attr("src",p),0<r.length&&"null"!=r.toLowerCase()&&(p={nagivJS:r},g.one("load",p,function(c){c=c&&c.data&&c.data.nagivJS?c.data.nagivJS:"";0<c.length&&"null"!=c.toLowerCase()&&eval(c)})),0<m.length&&"null"!=m.toLowerCase()&&(p={syncCSSJS:'ZteFrameWork.SyncCSS(this,10,"'+m+'");ZteFrameWork.stopPageLoading();'},
+g.one("load",p,function(c){c=c&&c.data&&c.data.syncCSSJS?c.data.syncCSSJS:"";0<c.length&&"null"!=c.toLowerCase()&&eval(c)}));else{x.items(d).settings.xdomain=_xdomain;0<r.length&&"null"!=r.toLowerCase()&&(n=r);try{"null"!=n.trim().toLowerCase()&&eval(n)}catch(q){return q instanceof EvalError?console.log(q.name+" EvalError: "+q.message):q instanceof SyntaxError?console.log(q.name+" SyntaxError: "+q.message):q instanceof Error&&"typeerror"==q.name.toLowerCase().trim()&&(p={runShiftJS:n},g.one("load",
+p,function(c){c=c&&c.data&&c.data.runShiftJS?c.data.runShiftJS:"";0<c.length&&"null"!=c.toLowerCase()&&eval(c)})),!1}finally{ZteFrameWork.stopPageLoading()}}else if(0<r.length&&"null"!=r.toLowerCase()&&(p=p.split("?")[0]),g="pdiv_"+d,0>=$("#"+g).length&&u.append("<div id='"+g+"'></div>"),F(),pymParent=f(g,p,d,d,d,_xdomain,l),g=$(pymParent.iframe),0<r.length&&"null"!=r.toLowerCase()&&(p={nagivJS:r},(g=$(".page-content .page-content-body ."+d))&&0<g.length))g.one("load",p,function(c){c=c&&c.data&&c.data.nagivJS?
+c.data.nagivJS:"";0<c.length&&"null"!=c.toLowerCase()&&eval(c)});ya(d);ZteFrameWork.fixContentHeight();return!0}},Y=function(c){if(!1==c.next().hasClass("sub-menu"))!1==$(".btn-navbar").hasClass("collapsed")&&$(".btn-navbar").click();else if(!c.next().hasClass("sub-menu always-open")){var b=c.parent().parent(),f=$(".page-sidebar-menu"),d=c.next(),g=f.data("auto-scroll")?f.data("auto-scroll"):!0,f=f.data("slide-speed")?parseInt(f.data("slide-speed")):200;b.children("li.open").children("a").children(".arrow").removeClass("open");
+b.children("li.open").children(".sub-menu:not(.always-open)").slideUp(200);b.children("li.open").removeClass("open");d.is(":visible")?($(".arrow",c).removeClass("open"),c.parent().removeClass("open"),d.slideUp(f,function(){!0==g&&!1==$("body").hasClass("page-sidebar-closed")&&$("body").hasClass("page-sidebar-fixed");B()})):($(".arrow",c).addClass("open"),c.parent().addClass("open"),d.slideDown(f,function(){!0==g&&!1==$("body").hasClass("page-sidebar-closed")&&$("body").hasClass("page-sidebar-fixed");
+B()}))}},Ca=function(){$(".page-sidebar").on("click","li > a",function(c){!1==$(this).next().hasClass("sub-menu")?!1==$(".btn-navbar").hasClass("collapsed")&&$(".btn-navbar").click():$(this).next().hasClass("sub-menu always-open")||(Y($(this)),c.preventDefault())});$(".page-sidebar").on("click"," li > a.iframe",function(c){c.preventDefault();var b=$(this).attr("id");b&&0<b.length&&(N(b),v="dhByInterface");D=!0;Z($(this),c,"page-sidebar")});$(".page-breadcrumb").on("click"," li > a.iframe",function(c){2>
+$(this).attr("href").length||(c.preventDefault(),L($(this),c))});$("#pageableDiv").on("click"," div > a.iframe",function(c){2>$(this).attr("href").length||(c.preventDefault(),L($(this),c))});$("#pageableDiv").on("click"," li > a.iframe",function(c){if(!(2>$(this).attr("href").length)){c.preventDefault();if(c.target){var b=$("span",c.target),b=0<b.length?b[0]:c.target;$(".open a>div>span",c.target.parentNode.parentNode.parentNode.parentNode.parentNode).replaceWith(b.outerHTML)}L($(this),c)}});$(".dropdown").on("click",
+" li > a.iframe",function(c){2>$(this).attr("href").length||(c.preventDefault(),F(),S($(this),c),M($(this),!1,c))})},ma="",T=!0,U=null,aa=function(c,b){if(!(2>c.length))if(c=ZteFrameWork.handlBaseURL(c),ma==c)if(!0===b)$("#pageableDiv").show();else{if(b&&b.target&&b.currentTarget){var f=$(b.target).attr("defaultDisplay");(f=f?f:$(b.currentTarget).attr("defaultDisplay"))&&"false"==f.trim()?$("#pageableDiv").hide():$("#pageableDiv").show()}}else{ma=c;clearMoreOperations();var d=b&&b.data&&b.data.breadcrumbBtnMenuItem&&
+0<b.data.breadcrumbBtnMenuItem.length?b.data.breadcrumbBtnMenuItem:"",d=0>=d.length?b&&b.breadcrumbBtnMenuItem&&0<b.breadcrumbBtnMenuItem.length?b.breadcrumbBtnMenuItem:"":d;T=!1;$.ajax({type:"GET",cache:!1,url:c,dataType:"html",success:function(c){try{var f=stripHtmlScripts(c);$(".more-botton-zone").children().remove();var g=$('<div style="display:none"></div>');g.children().remove();g.append(f);var h=$(".dropdown-menu",g).attr("displayType");if(h&&"pageableDiv"!=h)$(".more-botton-zone").append(f),
+$("#pageableDiv").hide();else{var k=$(".dropdown-menu",g);if(0<k.length&&(moreOperations(k[0]),b&&b.target&&b.currentTarget)){var l=$(b.target).attr("defaultDisplay");(l=l?l:$(b.currentTarget).attr("defaultDisplay"))&&"false"==l.trim()?$("#pageableDiv").hide():$("#pageableDiv").show()}}runHtmlScripts(c)}catch(m){}finally{T=!0}groupButtonAuthentication();if(0<d.length){c=void 0;g=$(".zte-theme-panel");f=void 0;f="vertical"===$(".nav-pos-direction",g).val()?$("#page-sidebar-menu a[id='"+d+"']"):$(".hor-menu a[id='"+
+d+"']");if(!f||1>f.length)f=$(".page-content a[id='"+d+"']");if(0<f.length)for(g=0;g<f.length;g++){if($(f[g]).parentsUntil(".more-botton-zone .btn-group").hasClass("dropdown-menu")){c=$(f[g]);break}if($(f[g]).parentsUntil("#pageableDiv").hasClass("row1")){c=$(f[g]);break}}c&&0<c.length&&L(c,b)}},error:function(c,b,f){$(".page-breadcrumb").append("<h4>"+$.i18n.prop("com_zte_ums_ict_framework_ui_loadmenuerror")+"</h4>");T=!0}})}};dealMultTabPage=function(c){var b=c.attr("href");if(b&&!(2>b.length)){var f=
+c.attr("redirect");if(f&&0<f.length){var d=$(".page-content .page-content-body ."+(""==y?"page-mainIframe":y)),g="";if(d&&0<d.length&&(g=d.attr("src"),b.split("?")[0]==g.split("?")[0]))return eval(f),M(c,!1,e),!0}return!1}};var E="",na="",ba=!1,M=function(c,b,f){var d=$(".breadcrumbUl");ZteFrameWork.setPageTitle(c.find("span").text().trim());var g=c.parent("li");0==g.length&&(g=c.parent("div"));var h=$(".nav-pos-direction",panel).val();c.attr("hparentid");var k=c.attr("breadcrumGroupButtonSrc");na=
+c.attr("id");var l=c="",m=null;if(ba)b=E.indexOf(g.children("a").attr("name")),-1<b?(b=E.indexOf("<i class='fa fa-angle-right'>",b),c=E.substring(0,b)+"<i class='fa fa-angle-right'></i>"):c=void 0,ba="";else{for(;g&&0<g.length;)g.children("a")&&(b?l=g.children("a").attr("name"):(l=ZteFrameWork.getUniqueID("aid"),g.children("a").attr("name",l)),m=g.clone(),m.children("a").removeClass("iframe"),m.children("a").removeClass("active"),m.children("a").attr("href","javascript:ZteFrameWork.goToURL('"+l+"');"),
+(l=$(".fa-angle-down",m.children("a")))&&l.remove(),0<m.children("a").length&&(c=m.children("a")[0].outerHTML+"<i class='fa fa-angle-right'></i>"+c),g.parent("ul").attr("id")==fMenuSiderDivId||g.parent("ul").attr("id")==megaSiderDivId?(g=g.children("a").attr("hparentid"),h==zteframework_menu_horizontal?magaMenu=$("#"+megaDivId):h==zteframework_menu_fmenu&&(magaMenu=$("#"+fMenuMegaDivId)),g=$("a[id="+g+"]",magaMenu).parent("li")):g=g.parents("li"));g[0]&&0<g[0].length&&(c=g.children("a")[0].outerHTML+
+"<i class='fa fa-angle-right'></i>"+c)}d.empty();$(".more-botton-zone").empty();E=c;store("globleCurrentBreadcrumb",E);d.append(c);k&&0<k.length?aa(k,f):$("#pageableDiv").hide()},oa=function(c,b,f){b=$(".breadcrumbUl");var d=c.parent(),g=c.attr("breadcrumGroupButtonSrc");f="";var h=null,h=c.attr("id");for(C.contains(h)||C.add(h,na);d&&0<d.length;)if(h=d.clone(),h.children("a")){h.children("a").removeClass("iframe");h.children("a").attr("href");h.children("a").attr("onclick","ZteFrameWork.openbreadcrumbLink($(this),event);");
+var k=h.children("a").children("div");if(0<k.length){var l=k[0].innerHTML;k.remove();h.children("a")[0].innerHTML=l}0<h.children("a").length&&(f=h.children("a")[0].outerHTML+"<i class='fa fa-angle-right'></i>"+f);d=d.parents("li")}d[0]&&0<d[0].length&&(f=d.children("a")[0].outerHTML+"<i class='fa fa-angle-right'></i>"+f);g&&0<g.length?aa(g,!0):$("#pageableDiv").hide();b.empty();(c=c.attr("category"))&&0<c.length&&(c=V.items(c))&&c.ipTitle&&""!=c.ipTitle.trim()&&(f=c.ipTitle+'<i class="fa fa-angle-right"></i>'+
+f);f=E+f;b.append(f)},R=!1,L=function(c,b){var f=c.attr("id");f&&0<f.length&&(N(f),v=(f=b&&b.data&&b.data.breadcrumbBtnMenuItem&&0<b.data.breadcrumbBtnMenuItem.length?b.data.breadcrumbBtnMenuItem:"")&&0<f.length?"":"dhByInterface");b&&b.breadcrumbBtnMenuItem&&0<b.breadcrumbBtnMenuItem.length||(F(),S(c,b));oa(c,!1,b)},ja=function(){var c=G().height-$(".header").height()+1;$("body").hasClass("page-footer-fixed")&&(c=c-(!$(".footer")||0>=$(".footer").length)?0:$(".footer").outerHeight());return c},X=
+function(){var c=$(".page-sidebar-menu");1===c.parent(".slimScrollDiv").size()&&(c.removeAttr("style"),$(".page-sidebar").removeAttr("style"));0===$(".page-sidebar-fixed").size()?B():G().width>=zteframework_smallView&&(ja(),B())},pa=function(){!1!==$("body").hasClass("page-sidebar-fixed")&&($(".page-sidebar").off("mouseenter").on("mouseenter",function(){Da()}),$(".page-sidebar").off("mouseleave").on("mouseleave",function(){Ea()}))},Da=function(){var c=$("body"),b=$(".page-sidebar");!1===c.hasClass("page-sidebar-closed")||
+!1===c.hasClass("page-sidebar-fixed")||$(this).hasClass("page-sidebar-hovering")||(c.removeClass("page-sidebar-closed").addClass("page-sidebar-hover-on"),$(".sidebar-toggler"),c.hasClass("page-sidebar-reversed")?b.width(u):(b.addClass("page-sidebar-hovering"),b.animate({width:u},350,"",function(){b.removeClass("page-sidebar-hovering")})))},Ea=function(){var c=$("body");if(!1!==c.hasClass("page-sidebar-hover-on")&&!1!==c.hasClass("page-sidebar-fixed")&&!$(this).hasClass("page-sidebar-hovering")){var b=
+$(".page-sidebar"),f=$(".sidebar-toggler");c.hasClass("page-sidebar-reversed")?(c.addClass("page-sidebar-closed").removeClass("page-sidebar-hover-on"),b.width(q),f&&f.removeAttr("style")):(b.addClass("page-sidebar-hovering"),b.animate({width:q},350,"",function(){c.addClass("page-sidebar-closed").removeClass("page-sidebar-hover-on");b.removeClass("page-sidebar-hovering");f&&f.removeAttr("style")}))}},K=function(c,b,f,d){var g=c.attr("style")?c.attr("style"):"";styles=g.split(";");var h="";for(i=0;i<
+styles.length;i++)if(0<=styles[i].indexOf(b)){h=styles[i];break}g=0<h.length?g.replace(h,""):g;g=(g+";"+b+":"+f+(d?" !important":"")+";").replace(/;;/g,";");c.attr("style",g)},Fa=function(){var c=G();"1"===Q("sidebar_closed")&&c.width>=zteframework_smallView&&$("body").addClass("page-sidebar-closed");$(".page-sidebar, .sidebar-toggler").on("click",".sidebar-toggler",function(c){c.preventDefault();c=$("body");$(".page-sidebar");c.hasClass("page-sidebar-closed")&&$(this).removeAttr("style")});$(".page-sidebar, .header").on("click",
+".sidebar-toggler",function(c){var b=$("body"),d=$(".page-sidebar");b.hasClass("page-sidebar-hover-on")&&b.hasClass("page-sidebar-fixed")||d.hasClass("page-sidebar-hovering")?(b.removeClass("page-sidebar-hover-on"),d.css("width","").hide().show(),B(),A("sidebar_closed","0"),c.stopPropagation()):($(".sidebar-search",d).removeClass("open"),c=$(".zte-theme-panel"),$(".sidebar-pos-option",c).val(),c=$("[class='page-content']"),b.hasClass("page-sidebar-closed")?(b.removeClass("page-sidebar-closed"),b.hasClass("page-sidebar-fixed")&&
+d.css("width",""),A("sidebar_closed","0"),c.css("marginLeft",u)):(b.addClass("page-sidebar-closed"),$(this).removeAttr("style"),A("sidebar_closed","1"),c.css("marginLeft",q)),B(!0));W()})},Ga=function(){$(".header").on("click",".hor-menu .hor-menu-search-form-toggler",function(c){$(this).hasClass("off")?($(this).removeClass("off"),$(".header .hor-menu .search-form").hide()):($(this).addClass("off"),$(".header .hor-menu .search-form").show());c.preventDefault()});$(".header").on("click"," li > a.iframe",
+function(c){c.preventDefault();var b=$(this).attr("id");b&&0<b.length&&(N(b),v="dhByInterface");D=!0;Z($(this),c,"header")});$(".header").on("click",'.hor-menu a[data-toggle="tab"]',function(c){c.preventDefault();c=$(".hor-menu .nav").find("li.current");$("li.active",c).removeClass("active");$(".selected",c).remove();c=$(this).parents("li").last();c.addClass("current");c.find("a:first").append('<span class="selected"></span>')})},qa=function(){var c=0;return setInterval(function(){var b;null==b&&
+(b=ZteFrameWork_conf.userName);b=FrameConst.REST_HEARTBEAT+"?username="+encodeURIComponent(b);$.ajax(b,{dataType:"text",cache:!1}).done(function(b){"true"==b&&(c=0)});c++;6<=c&&(disableHeartbeat(),bootbox.alert($.i18n.prop("com_zte_ums_aos_framework_ui_heartbeat_fail"),function(){window.location.replace("login.html")}))},1E4)};if(FrameConst.do_heartbeat)var O=qa();window.enableHeartbeat=function(){return O?"Already enabled!":(heartBeatTimes=0,O=qa(),"Enabled")};window.disableHeartbeat=function(){return O?
+(clearInterval(O),O=null,"Disabled"):"Already disabled!"};window.doLogout=function(){window.location=FrameConst.REST_LOGOUT};$("#trigger_logout").click(function(){bootbox.confirm($.i18n.prop("com_zte_ums_ict_framework_ui_confirmlogout"),function(c){c&&doLogout()})});var P=!1,Ha=function(){function c(){if(screenfull.supportsFullScreen)screenfull.isFullScreen?screenfull.exitFullScreen():screenfull.requestFullScreen(),P=screenfull.isFullscreen;else if(isIE&&"undefined"!==typeof window.ActiveXObject){var c=
+new ActiveXObject("WScript.Shell");null!==c&&(c.SendKeys("{F11}"),P=!P)}else P=screenfull.supportsFullScreen;setTimeout(function(){P?$("#fullscreen_label").text($.i18n.prop("com_zte_ums_ict_framework_ui_group_exitfullscreen")):$("#fullscreen_label").text($.i18n.prop("com_zte_ums_ict_framework_ui_group_fullscreen"))},500)}$("#trigger_fullscreen").click(function(){c()})},ra=function(c){if(0<w.count())for(var b in w.hash()){var f=$(".page-content .page-content-body ."+b);f&&0<f.length&&(!0==c?(f.attr("src",
+""),f.remove()):b!=y&&f.attr("src",""),f.remove())}w.clear();if(0<x.count())for(b in x.hash())b!=y&&x.remove(b)},sa="",Ia=function(){var c=$(".zte-theme-panel");!1==$("body").hasClass("page-boxed")&&$(".layout-option",c).val("fluid");$(".sidebar-option",c).val("default");$(".language-option",c).val(b);$(".header-option",c).val("fixed");$(".footer-option",c).val("default");!1===$(".sidebar-pos-option").attr("disabled")&&$(".sidebar-pos-option",c).val(ZteFrameWork.isRTL()?"right":"left");var d=function(c){var b=
+ZteFrameWork.isRTL()?c+"-rtl":c;$("#style_color").attr("href",ICTFRAME_CONST_THEME_COLOR_CSS_PREFFIX+b+".css");A("style_color",c);c=null;if(0<w.count())for(var d in w.hash())(c=$(".page-content .page-content-body ."+d))&&0<c.length&&ZteFrameWork.SyncCSS(c[0],1,"")};$(".toggler",c).click(function(){$(".toggler").hide();$(".toggler-close").show();$(".zte-theme-panel > .theme-options").show()});$(".toggler-close",c).click(function(){$(".toggler").show();$(".toggler-close").hide();$(".zte-theme-panel > .theme-options").hide()});
+$(".theme-colors > ul > li",c).click(function(){var b=$(this).attr("data-style");d(b);$("ul > li",c).removeClass("current");$(this).addClass("current")});$(".layout-option,.header-option, .sidebar-option, .footer-option, .sidebar-pos-option, .nav-pos-direction",c).change(function(){ta()});void 0!=Q("style_color")&&d(Q("style_color"));$(".language-option",c).change(function(){var b=$(".language-option",c).val();A("language-option",b);window.location.reload()})},ta=function(){var c=$(".zte-theme-panel"),
+b=$(".layout-option",c).val(),f=$(".language-option",c).val(),d=$(".header-option",c).val(),g=$(".footer-option",c).val(),h=$(".nav-pos-direction",c).val();var k=$(".zte-theme-panel");if("disabled"!=$(".nav-pos-direction",k).attr("disabled")){var l=$("#page-sidebar-menu"),m=$("#main_hormenu"),l=$("#page-sidebar-menu"),m=$("#main_hormenu"),n=$("#"+megaSiderDivId),v=$("#"+fMenuMegaDivId),w=$("#"+fMenuSiderDivId),r=$("[class='page-content']");l&&0<l.length&&m&&0<m.length&&v&&0<v.length&&(h===zteframework_menu_horizontal?
+(l.css("display","none"),v.css("display","none"),w.css("display","none"),r.css("marginLeft",0),$("body").addClass("page-full-width"),m.css("display","block"),$(".sidebar-option",k).val("default"),$(".sidebar-option",k).attr("disabled",!0),$(".sidebar-pos-option",k).val("left"),$(".sidebar-pos-option",k).attr("disabled",!0)):h===zteframework_menu_vertical?($("body").removeClass("page-full-width"),l.css("display","block"),$("body").hasClass("page-sidebar-closed")?r.css("marginLeft",q):r.css("marginLeft",
+u),m.css("display","none"),v.css("display","none"),w.css("display","none"),n.css("display","none"),$(".sidebar-option",k).attr("disabled",!1),$(".sidebar-pos-option",k).attr("disabled",!1)):h===zteframework_menu_fmenu&&(l.css("display","none"),m.css("display","none"),w.css("display","none"),v.css("display","block"),r.css("marginLeft",0),$("body").addClass("page-full-width"),$(".sidebar-option",k).val("default"),$(".sidebar-option",k).attr("disabled",!0),$(".sidebar-pos-option",k).val("left"),$(".sidebar-pos-option",
+k).attr("disabled",!0)))}k=$(".sidebar-option",c).val();l=$(".sidebar-pos-option",c).val();"fixed"==k&&"default"==d&&(alert($.i18n.prop("com_zte_ums_ict_framework_ui_fixedsidedefaultheaderError")),$(".header-option",c).val("fixed"),$(".sidebar-option",c).val("fixed"),d=k="fixed");"fixed"==k&&"right"==l&&(alert($.i18n.prop("com_zte_ums_ict_framework_ui_fixedsiderightpositionError")),$(".sidebar-pos-option",c).val("left"),l="left");$("body").removeClass("page-boxed").removeClass("page-footer-fixed").removeClass("page-sidebar-fixed").removeClass("page-header-fixed").removeClass("page-sidebar-reversed");
+$(".header > .header-inner").removeClass("container");1===$(".page-container").parent(".container").size()&&$(".page-container").insertAfter("body > .clearfix");1===$(".footer > .container").size()?$(".footer").html($(".footer > .container").html()):1===$(".footer").parent(".container").size()&&$(".footer").insertAfter(".page-container");$("body > .container").remove();"boxed"===b&&($("body").addClass("page-boxed"),$(".header > .header-inner").addClass("container"),$("body > .clearfix").after('<div class="container"></div>'),
+$(".page-container").appendTo("body > .container"),"fixed"===g?$(".footer").html('<div class="container">'+$(".footer").html()+"</div>"):$(".footer").appendTo("body > .container"));sa!=b&&W();sa=b;"fixed"===d?($("body").addClass("page-header-fixed"),$(".header").removeClass("navbar-static-top").addClass("navbar-fixed-top")):($("body").removeClass("page-header-fixed"),$(".header").removeClass("navbar-fixed-top").addClass("navbar-static-top"));!1===$("body").hasClass("page-full-width")&&("fixed"===
+k?$("body").addClass("page-sidebar-fixed"):$("body").removeClass("page-sidebar-fixed"));"fixed"===g?$("body").addClass("page-footer-fixed"):$("body").removeClass("page-footer-fixed");ZteFrameWork.isRTL()?"left"===l?($("body").addClass("page-sidebar-reversed"),$("#frontend-link").tooltip("destroy").tooltip({placement:"right"})):(c=$("[class='page-content']"),c.css("marginLeft",0),$("body").removeClass("page-sidebar-reversed"),$("#frontend-link").tooltip("destroy").tooltip({placement:"left"})):"right"===
+l?(c=$("[class='page-content']"),c.css("marginLeft",0),$("body").addClass("page-sidebar-reversed"),$("#frontend-link").tooltip("destroy").tooltip({placement:"left"})):($("body").removeClass("page-sidebar-reversed"),$("#frontend-link").tooltip("destroy").tooltip({placement:"right"}));B();X();pa();A("layout-option",b);A("language-option",f);A("header-option",d);A("sidebar-option",k);A("sidebar-pos-option",l);A("nav-pos-direction",h)},A=function(c,b){store&&store(c,b)},Q=function(c){if(store)return store(c)},
+N=function(c){location.hash="#_"+c},ua=function(c,b,f,d){var g=$.url(ZteFrameWork.getCurrentScript(document)).attr("directory")+"proxy/proxy.html",g=$('<iframe id="ifm_Proxy" name="ifm_Proxy" oldproxyorigin="'+b+'" src="'+b+g+'" style="border: 0px; margin: 0px; padding: 0px; width: 100%; display:none;" ></iframe>'),h=$("#ifm_Proxy");h.hide();var k=$(".page-content .page-content-body"),l=[],m=[],n=[],q="";for(i=0;i<f.length;i++)"undefined"!==typeof f[i].link.href?(q=f[i].link.href,n.push("css")):"undefined"!==
+typeof f[i].link.src?f[i].link.src&&0<f[i].link.src.length?(q=f[i].link.src,n.push("javascriptfile")):(q=f[i].link.text,n.push("javascripttext")):n.push("undefined"),l.push(q),m.push({pos:f[i].pos,scope:f[i].scope,id:f[i].link.id});c={iFrame:c,cssLinktyps:n,cssLinksrcs:l,cssLinkids:m,origin:b,flag:d};h&&0>=h.length?(g.appendTo(k),g.one("load",c,function(c){var b={iFrame:c.data.iFrame,cssLinktyps:c.data.cssLinktyps,cssLinksrcs:c.data.cssLinksrcs,cssLinkids:c.data.cssLinkids,flag:d};$("#ifm_Proxy")[0].contentWindow.postMessage(b,
+c.data.origin)})):h.attr("oldproxyorigin")!=b?(h.attr("src",""),h.attr("oldproxyorigin",b),h.one("load",c,function(c){var b={iFrame:c.data.iFrame,cssLinktyps:c.data.cssLinktyps,cssLinksrcs:c.data.cssLinksrcs,cssLinkids:c.data.cssLinkids,flag:d};$("#ifm_Proxy")[0].contentWindow.postMessage(b,c.data.origin)}),h.attr("src",g.attr("src"))):h[0].contentWindow.postMessage({iFrame:c.iFrame,cssLinktyps:c.cssLinktyps,cssLinksrcs:c.cssLinksrcs,cssLinkids:c.cssLinkids,flag:d},c.origin)};return{init:function(){zte_http_headers&&
+store("zte_http_headers",zte_http_headers);va();xa();wa();ra(!0);C.clear();X();pa();Ca();Ga();Fa();Ia();ta();$(function(){$(window).on("hashchange",function(){var c=location.hash.replace("#_","");if(c&&0<c.length)if("dhByInterface"==v.trim())v="";else{var b=c,f=void 0,d=c.indexOf("/");-1!=d&&(b=c.substring(0,d),f=c.substring(d+1));ZteFrameWork.goToURLByIDAndNewAction(b,f)}})});Ha();$("#header_dropdown_user").css("display","block");$("#com_zte_ums_ict_framework_img_netnumenLogo").css("display","inline");
+$("#com_zte_ums_ict_framework_ui_main_title").css("display","inline");handeCtxMenuitem()},clearCachedIframes:function(c){ra(c)},setBaseURLRoot:function(c){store&&store("baseURLRoot",c);c=$.url(c);location.hash=c.attr("fragment");c=c.attr("query");store&&store("baseURLRootAuth",c)},getBaseURLRoot:function(c){c="";store&&(c=store("baseURLRoot"));return c?c:""},clearBaseURLRoot:function(){store&&store("baseURLRoot","",-1)},setPageTitle:function(c){$("title").html(c+" - "+l)},getLanguage:function(){return ZteFrameWork_conf.acceptLanguage},
+getLocationHash:function(){return location.hash.replace("#_","")},setSceneURLRootPath:function(c){c&&0<c.trim().length&&(J=c.trim(),"/"!=J.charAt(J.length-1)&&(J+="/"))},addResponsiveHandler:function(c){I.push(c)},hiddenAlarmLight:function(){ia()},hiddenMenu:function(){ha()},setBreadcrumbByMenuID:function(c){var b=void 0,f=void 0,d=$(".zte-theme-panel"),d=$(".nav-pos-direction",d).val();if("vertical"===d){if(f=$("#page-sidebar-menu a[id='"+c+"']"),!f||1>f.length)f=$(".page-content a[id='"+c+"']")}else d===
+zteframework_menu_horizontal?(f=$("#main_hormenu a[id='"+c+"']"),0==f.length&&(f=$("#page-megachild-sidebar-menu a[id='"+c+"']"))):d===zteframework_menu_fmenu&&(f=$("#f_hormenu a[id='"+c+"']"),0==f.length&&(f=$("#page-f-sidebar-menu a[id='"+c+"']")));d=!1;if(0<f.length)for(var g=0;g<f.length;g++)if($(f[g]).parentsUntil(".header-inner").hasClass("hor-menu")){b=$(f[g]);break}else if($(f[g]).parentsUntil(".page-container").hasClass("page-sidebar")){b=$(f[g]);break}else if($(f[g]).parentsUntil(".more-botton-zone .btn-group").hasClass("dropdown-menu")){b=
+$(f[g]);d=!0;break}else if($(f[g]).parentsUntil("#pageableDiv").hasClass("row1")){b=$(f[g]);d=!0;break}if(b&&0<b.length)d?oa(b,!1):M(b,!0,null);else{f="";if(!b||0>=b.length){var h=c;C.contains(h)&&(f="#"+C.items(h),b=$(f))}c=void 0;f&&0<f.length&&(c={breadcrumbBtnMenuItem:h});c&&b&&0<b.length&&M(b,!0,c)}},setSiderbarCollapseWidth:function(c){q=c},getSiderbarCollapseWidth:function(){return q},setSidebarWidth:function(c){u=c},getSidebarWidth:function(){return u},handlBaseURL:function(c){var b=ZteFrameWork.getBaseURLRoot();
+0<b.length&&(b=ZteFrameWork.getDomainURL(b),console.log("old a link href url:"+c),c=b+c.replace(ZteFrameWork.getDomainURL(c),""),console.log("baseURLRoot:"+b+" newURL:"+c));return c},startPageLoading:function(c){F(c)},stopPageLoading:function(){$(".page-loading").remove()},getLocationURLParameter:function(c,b){var f,d,g=decodeURIComponent(window.location.search.substring(1)).toLowerCase().split(b?b:"&");c=c.toLowerCase();for(f=0;f<g.length;f++)if(d=g[f].split("="),d[0]==c)return unescape(d[1]);
+return null},getURLParameter:function(c,b){var f,d,g=decodeURIComponent(b).toLowerCase().split("&");c=c.toLowerCase();for(f=0;f<g.length;f++)if(d=g[f].split("="),d[0]==c)return unescape(d[1]);return null},isTouchDevice:function(){return h},getUniqueID:function(c){return c+"_"+Math.floor(Math.random()*(new Date).getTime())},isIE8:function(){return g},isIE9:function(){return n},isRTL:function(){return d},getViewPort:function(){return G()},getLayoutColorCode:function(c){return ca[c]?ca[c]:""},fixContentHeight:function(){B()},
+dealAtoIframe:function(c,b){var f=c.parentsUntil(".page-container").hasClass("page-sidebar")?"page-sidebar":"",f=c.parentsUntil(".header-inner").hasClass("hor-menu")?"header":f;Z(c,b,f);D=!1},getDomainURL:function(c){var b=$.url(c);c=b.attr("protocol");var f=b.attr("host"),b=b.attr("port");return c+"://"+f+(0<b.length?":"+b:"")},getCurrentScript:function(c){if(c&&c.currentScript)return console.log("0\u3001 "+c.currentScript.src),c.currentScript.src;var b;try{a.b.c()}catch(f){b=f.stack,f.sourceURL?
+b=f.sourceURL:!b&&window.opera&&(b=(String(f).match(/of linked script \S+/g)||[]).join(" ")),console.log("1\u3001 "+b)}if(b)return console.log("2\u3001 "+b),b=b.split(/[@ ]/g).pop(),b="("==b[0]?b.slice(1,-1):b,console.log("3\u3001 "+b),b.replace(/(:\d+)?:\d+$/i,"");if(c){c=c.getElementsByTagName("script");b=0;for(var d;d=c[b++];)if("interactive"===d.readyState)return console.log("4\u3001 "+(d.className=d.src)),d.className=d.src}},SyncCSS:function(c,b,f){if(c){var d=[];if(f&&0<f.length&&f.endWith(".css")){f=
+$('<a href="'+f+'"></a>');var g=document.createElement("link");g.href=f[0].href;f=null;g.rel="stylesheet";g.type="text/css";g.id="ifram_csssrc";d.push({pos:"head",scope:"all",link:g})}10!=b&&(0<$("#style_color").length&&(g=document.createElement("link"),g.href=$("#style_color")[0].href.replace(".css","_ifrm.css"),g.rel="stylesheet",g.type="text/css",g.id="style_color",d.push({pos:"head",scope:"all",link:g})),0<$("#font_awesome").length&&(f=document.createElement("link"),f.href=$("#font_awesome")[0].href,
+f.rel="stylesheet",f.type="text/css",f.id="font_awesome",d.push({pos:"head",scope:"all",link:f})),g=$("script[src*='/pym.']"),g=0<g.length?g:$("script[src*='/pym1.']"),0<g.length&&(f=document.createElement("script"),f.src=g[0].src,f.type="text/javascript",f.id=g[0].id?g[0].id:"pymjs",d.push({pos:"head",scope:"one",link:f}),f=document.createElement("script"),g=0<y.split("-").length?y.split("-")[1]:"1",f.text="var t1;function pmchd(){console.log('In the frame "+y+",pym code call is begining; '+(typeof pym!= 'undefined'));if(typeof pym != 'undefined'){pymChild"+
+g+" = new pym.Child({ id: 'pdiv_"+y+"' ,polling: 500});window.clearInterval(t1); }};t1 = window.setInterval(pmchd,5);",f.type="text/javascript",f.id="pymChild",d.push({pos:"htmlend",scope:"one",link:f})),f=$("script[src*='/hk.']"),f=0<f.length?f:$("script[src*='/hk1.']"),0<f.length&&(g=document.createElement("script"),g.src=f[0].src,g.type="text/javascript",g.id=f[0].id?f[0].id:"hkjs",d.push({pos:"head",scope:"one",link:g}),g=document.createElement("script")));f=ZteFrameWork.getDomainURL(c.src);if(window.location.origin==
+f){for(i=0;i<d.length;i++)(f=c.contentDocument.getElementById(d[i].link.id))&&("HEAD"===f.parentNode.tagName.toUpperCase?c.contentDocument.head.removeChild(f):"HTML"===f.parentNode.tagName.toUpperCase&&c.contentDocument.removeChild(f)),"head"==d[i].pos?c.contentDocument.head.appendChild(d[i].link):"bodyend"==d[i].pos?c.contentDocument.body.appendChild(d[i].link):"htmlend"==d[i].pos&&c.contentDocument.body.parentNode.appendChild(d[i].link);if((c=c.contentDocument.getElementsByTagName("iframe"))&&0<
+c.length){var h=[];for(i=0;i<d.length&&"one"!=d[i].scope;i++)h.push(d[i]);for(j=0;j<c.length;j++)d={ifmHeadlins:h},f=ZteFrameWork.getDomainURL(c[j].src),window.location.origin==f?(f=function(c){for(i=0;i<c.data.ifmHeadlins.length;i++){var b=$(c.data.ifmHeadlins[i].link).clone()[0],f=this.contentDocument.getElementById(b.id);f&&("HEAD"===f.parentNode.tagName.toUpperCase?this.contentDocument.head.removeChild(f):"HTML"===f.parentNode.tagName.toUpperCase&&this.contentDocument.removeChild(f));"head"==
+c.data.ifmHeadlins[i].pos?this.contentDocument.head.appendChild(b):"bodyend"==c.data.ifmHeadlins[i].pos?this.contentDocument.body.appendChild(b):"htmlend"==h[i].pos&&this.contentDocument.body.parentNode.appendChild(b)}},$(c[j]).off("onload",d,f),$(c[j]).on("onload",d,f),$(c[j]).trigger("onload")):0<h.length&&(console.log("\u8de8\u57df\u8bbf\u95ee: \u7cfb\u7edf\u5c06\u8fdb\u5165\u8de8\u57df\u8bbf\u95ee\u4ee3\u7406\u5904\u7406\u6d41\u7a0b "),ua(c[j].name,f,h,b))}}else 0<d.length&&(console.log("\u8de8\u57df\u8bbf\u95ee: \u7cfb\u7edf\u5c06\u8fdb\u5165\u8de8\u57df\u8bbf\u95ee\u4ee3\u7406\u5904\u7406\u6d41\u7a0b "),
+ua(c.name,f,d,b))}},goToURL:function(c){ba=!0;"false"==ZteFrameWork.getLocationURLParameter("showNav")?location.reload():$("a[name='"+c+"']").click()},goToURLByName:function(c){"false"==ZteFrameWork.getLocationURLParameter("showNav")?location.reload():(url="a[name='"+c+"']",$(url).click())},goToURLByID:function(c){c&&("false"==ZteFrameWork.getLocationURLParameter("showNav")?location.reload():(0>c.indexOf("#")&&(c="#"+c),$(c).click()))},goToPortal:function(c){var b=top.location.href;console.log(b);
+b=$.url(b);top.location=b.attr("directory")+"uifportal.html#"+c+"/"},goToURLByIDAndNewIPPort:function(b,d,f){V.replace(d.menuCategoryID,{ipPort:d.ipPortStr,ipTitle:d.newTitle});store&&store("menuCategoryID",d.menuCategoryID+"[menuCategoryID]"+d.ipPortStr+"[menuCategoryID]"+(d.newTitle?d.newTitle:""));var g=this.findMenuItemByMenuId(b);if(!g||0>=g.length){var h=this.getMenuItemId_From_MoreMenuRelation(b);if(h&&0<h.length&&(g=this.findMenuItemByMenuId(h))&&0<g.length&&(h=$("#"+b,$("#pageableDiv")).parent(),
+$(".box.boxOperation",$(".carousel-inner")).removeClass("moreButtonSelected"),h=$("a>div.box",h),!1==h.hasClass("moreButtonSelected")&&h.addClass("moreButtonSelected"),h=$(".item.moreButtonsTag"),0<h.length))for(var k=0;k<h.length;k++){var l=$(h[k]);l.removeClass("active");0<$(".moreButtonSelected",l).length&&l.addClass("active")}}g&&0<g.length&&(d=g.attr(d.menuCategoryID+"-multiInsrc"))&&(g.attr("breadcrumgroupbuttonsrc",d),aa(d,!0));U&&clearInterval(U);U=setInterval(function(){!0==T&&(clearInterval(U),
+ZteFrameWork.goToURLByIDAndNewAction(b,f,null))},10)},goToURLByIDAndNewAction:function(b,d,f){if(b){var g=this.findMenuItemByMenuId(b);if(f)window.open(ICTFRAME_CONST_DEFAULTPAGE_PATH+f.paramStr+("#_"+b),f.windowTitle).name=d;else{(f=g?g.attr("id"):"")&&0<f.length&&N(f);var h="";if(!g||0>=g.length)f=b,C.contains(f)&&(h=C.items(f),g=this.findMenuItemByMenuId(h)),g&&0<g.length&&(R=!0);if(!g||0>=g.length){var k=this.getMenuItemId_From_MoreMenuRelation(b);k&&(g=this.findMenuItemByMenuId(k))}if(store&&
+store("globleCurrentBreadcrumb")){E=store("globleCurrentBreadcrumb");for(var l=$("a",$("<div>"+E+"</div>")),m,n,q=0;q<l.length;q++)for(m=$(l[q]),n=$("a[id='"+m.attr("id")+"']"),j=0;j<n.length;j++)$(n[j]).attr("name",m.attr("name"))}if(g&&0<g.length){if(b=$(".zte-theme-panel"),$(".nav-pos-direction",b).val()===zteframework_menu_fmenu){l=g.attr("hparentid");b=g.attr("id");var q=0;for(m=g;b!=l&&20>q;)m=ZteFrameWork.findMenuItemByMenuId(l),l=m.attr("hparentid"),b=m.attr("id"),q++;m.hasClass("active")||
+m.parent().addClass("active")}}else console.log("goToURLByIDAndNewAction():Can't find the menuitem.The menu ID is:"+b+".Please check if the ID or ID cache is correct.");b=void 0;d&&h&&0<h.length?b={action:d,breadcrumbBtnMenuItem:f}:d?b={action:d}:h&&0<h.length?b={breadcrumbBtnMenuItem:f}:k&&(R=!0,b={breadcrumbBtnMenuItem:f});if(b&&b.action||b&&b.breadChangeType)v="dhByInterface";g&&0<g.length&&(g.one("click",b,function(b){ZteFrameWork.dealAtoIframe($(this),b);return!1}),g.click())}}},getBreadcrumbEle:function(){return $(".breadcrumbUl")[0]},
+findMenuItemByMenuId:function(b){var d=void 0,f=$(".zte-theme-panel"),g=$(".nav-pos-direction",f).val(),f=void 0;"vertical"===g?f=$("#page-sidebar-menu a[id='"+b+"']"):g===zteframework_menu_horizontal?(f=$("#main_hormenu a[id='"+b+"']"),0==f.length&&(f=$("#page-megachild-sidebar-menu a[id='"+b+"']"))):g===zteframework_menu_fmenu&&(f=$("#f_hormenu a[id='"+b+"']"),0==f.length&&(f=$("#page-f-sidebar-menu a[id='"+b+"']")));f&&0==f.length&&(console.log("fmenu alink length is :"+$("#page-f-sidebar-menu a").length),
+console.log("cant find menu in sidemenu\u3001megamenu and fmenu , the menu id is "+b));if(f&&0<f.length)for(b=0;b<f.length;b++)if($(f[b]).parentsUntil(".header-inner").hasClass("hor-menu")){d=$(f[b]);break}else if($(f[b]).parentsUntil(".page-container").hasClass("page-sidebar")){d=$(f[b]);break}return d},getMenuItemId_From_MoreMenuRelation:function(b){var d=$(".zte-theme-panel"),d=$(".nav-pos-direction",d).val();d===zteframework_menu_vertical?relationAry=sideBarMenu_to_moreMenu_frame:d===zteframework_menu_horizontal?
+relationAry=horBarMenu_to_moreMenu_frame:d===zteframework_menu_fmenu&&(relationAry=horBarMenu_to_moreMenu_frame);if(relationAry&&b){for(d=0;d<relationAry.length;d++)for(var f=relationAry[d],g=f.moreMenuIds,h=0;h<g.length;h++)if(g[h]&&g[h]==b)return f.mainMenuId;return null}},getMenuItemFoucsByID:function(b){if(b){var d=void 0,f=void 0,g=$(".zte-theme-panel"),g=$(".nav-pos-direction",g).val();"vertical"===g?f=$("#page-sidebar-menu a[id='"+b+"']"):g===zteframework_menu_horizontal?(f=$("#main_hormenu a[id='"+
+b+"']"),0==f.length&&(f=$("#page-megachild-sidebar-menu a[id='"+b+"']"))):g===zteframework_menu_fmenu&&(f=$("#f_hormenu a[id='"+b+"']"),0==f.length&&(f=$("#page-f-sidebar-menu a[id='"+b+"']")));if(0<f.length)for(g=0;g<f.length;g++)if($(f[g]).parentsUntil(".header-inner").hasClass("hor-menu")){d=$(f[g]);break}else if($(f[g]).parentsUntil(".page-container").hasClass("page-sidebar")){d=$(f[g]);break}f="";if(!d||0>=d.length)menuItemID=b,C.contains(menuItemID)&&(f="#"+C.items(menuItemID),d=$(f));b=void 0;
+f&&0<f.length&&(b={breadcrumbBtnMenuItem:menuItemID});d&&0<d.length&&(d.one("click",b,function(b){var c=$(this).parentsUntil(".page-container").hasClass("page-sidebar")?"page-sidebar":"",c=$(this).parentsUntil(".header-inner").hasClass("hor-menu")?"header":c;D=!1;Ba($(this),b,c);return!1}),d.click())}},openbreadcrumbLink:function(b,d){var f=b.attr("href");!f||2>f.length||(d.preventDefault(),(f=b.attr("id"))&&0<f.length&&(N(f),v="dhByInterface"),F(),S(b,d))},getURLParam:function(b){b=RegExp("(^|&)"+
+b.toLowerCase()+"=([^&]*)(&|$)");b=decodeURIComponent(location.search.substring(1)).toLowerCase().match(b);return null!=b?unescape(b[2]):null}}}(),currentRunningScriptSrcPath={};
+function runHtmlScripts(b){var d=document.createElement("div");d.innerHTML=b;b=d.getElementsByTagName("script");$(b).each(function(){var b=this.src;(b=ZteFrameWork.handlBaseURL(b))?(currentRunningScriptSrcPath[b.substring(b.lastIndexOf("/")+1)]=b.substring(0,b.lastIndexOf("/")+1),$.getScript(b)):$.globalEval(this.text||this.textContent||this.innerHTML||"")})}
+function stripHtmlScripts(b){var d=document.createElement("div");d.innerHTML=b;b=d.getElementsByTagName("script");$(b).each(function(){this.src=ZteFrameWork.handlBaseURL(this.src);this.parentNode.removeChild(this)});return d.innerHTML}
+function getsiderBarMenu(b){if(!(2>b.length)){b=ZteFrameWork.handlBaseURL(b);ZteFrameWork.startPageLoading();var d=$("#page-sidebar-menu");d.empty();d.append("<li class='sidebar-toggler-wrapper'><div class='sidebar-toggler hidden-xs hidden-sm'></div></li>");$.ajax({type:"GET",cache:!1,url:b,dataType:"html",success:function(b){var k=stripHtmlScripts(b);d.append(k);runHtmlScripts(b);siderBarMenuAuthentication();dealMysqlBackupMenu();setTimeout(function(){ZteFrameWork.stopPageLoading();goToHomePage()},
+1E3)},error:function(b,d,g){}})}}
+var setLayoutValueByCookie=function(){var b=$(".zte-theme-panel");void 0!=store("layout-option")&&$(".layout-option",b).val(store("layout-option"));void 0!=store("language-option")&&$(".language-option",b).val(store("language-option"));void 0!=store("sidebar-option")&&$(".sidebar-option",b).val(store("sidebar-option"));void 0!=store("header-option")&&$(".header-option",b).val(store("header-option"));void 0!=store("sidebar-pos-option")&&$(".sidebar-pos-option",b).val(store("sidebar-pos-option"));$("[class='nav-load-error']",
+$(".hormenu"));$("[class='nav-load-error']",$("[class='page-sidebar-menu']"));$(".nav-pos-direction",b).val("fmenu")};
+function getHorMenu(b){setLayoutValueByCookie();2>b.length||(b=ZteFrameWork.handlBaseURL(b),ZteFrameWork.startPageLoading(),$("#main_hormenu").empty(),$.ajax({type:"GET",async:!1,cache:!1,url:b,dataType:"html",success:function(b){var h=stripHtmlScripts(b);$("#main_hormenu").append(h);runHtmlScripts(b);"mysql"==ZteFrameWork_conf.dbType&&$(".hor-menu a[id='uep-ict-backup-baseDataBack']").parent().remove();horMenuAuthentication("main_hormenu");ZteFrameWork.stopPageLoading();"horizontal"===$(".nav-pos-direction",
+panel).val()&&setTimeout(function(){},150)},error:function(b,h,k){$("[class='page-content']");$(".nav-pos-direction",panel).attr("disabled",!0)}}))}
+function getMegaFMenu(b){if(!(2>b.length)){b=ZteFrameWork.handlBaseURL(b);ZteFrameWork.startPageLoading();var d=$("#"+megaSiderDivId);d.empty();d.append("<li class='sidebar-toggler-wrapper'><div class='sidebar-toggler hidden-xs hidden-sm'></div></li>");$.ajax({type:"GET",async:!1,cache:!1,url:b,dataType:"html",success:function(b){var k=stripHtmlScripts(b);d.append(k);runHtmlScripts(b);FMenuAuthentication(megaDivId,megaSiderDivId);rebuildHorMenu();ajustFMenu(megaDivId,megaSiderDivId);ZteFrameWork.stopPageLoading()},
+error:function(b,d,g){}})}}function iniHorMenu(){var b=$("#main_hormenu");b&&((b=b.attr("menuSrc"))&&0<b.length&&getHorMenu(b),(b=$("#"+megaSiderDivId))&&(b=b.attr("menuSrc"))&&0<b.length&&getMegaFMenu(b))}function iniFMenu(){var b=$("#f_hormenu"),d=$("#page-f-sidebar-menu");b&&d&&(b=b.attr("menuSrc"),d=d.attr("menuSrc"),b&&0<b.length&&d&&0<d.length&&getFMenu(b,d))}
+function getFMenu(b,d){if(!(2>b.length||2>d.length)){b=ZteFrameWork.handlBaseURL(b);d=ZteFrameWork.handlBaseURL(d);ZteFrameWork.startPageLoading();$("#f_hormenu").empty();$("#page-f-sidebar-menu").empty();$.ajax({type:"GET",async:!1,cache:!1,url:b,dataType:"html",success:function(b){var d=stripHtmlScripts(b);$("#f_hormenu").append(d);horMenuAuthentication("f_hormenu");runHtmlScripts(b);dealMysqlBackupMenu();ZteFrameWork.stopPageLoading()},error:function(b,d,h){$("#f_hormenu").append('<h4 class="nav-load-error">'+
+$.i18n.prop("com_zte_ums_ict_framework_ui_loadmenuerror")+"</h4>");$("[class='page-content']");$(".nav-pos-direction",panel).attr("disabled",!0)}});var h=$("#"+fMenuSiderDivId);h.empty();h.append("<li class='sidebar-toggler-wrapper'><div class='sidebar-toggler hidden-xs hidden-sm'></div></li>");$.ajax({type:"GET",cache:!1,url:d,dataType:"html",success:function(b){var d=stripHtmlScripts(b);h.append(d);h.children().css("display","none");runHtmlScripts(b);dealMysqlBackupMenu();FMenuAuthentication(fMenuMegaDivId,
+fMenuSiderDivId);ajustFMenu(fMenuMegaDivId,fMenuSiderDivId);ZteFrameWork.stopPageLoading();loadi18n_WebFramework_sideMenu()},error:function(b,d,h){$(".page-f-sidebar-menu").append('<h4 class="nav-load-error">'+$.i18n.prop("com_zte_ums_ict_framework_ui_loadmenuerror")+"</h4>")}})}}function iniSidebarMenu(){var b=$("#page-sidebar-menu");b&&(b=b.attr("menuSrc"))&&0<b.length&&getsiderBarMenu(b)}
+function getChangePWDDlg(b){2>b.length||(ZteFrameWork.startPageLoading(),$(".modal-dialog .Changepasswd").empty(),$.ajax({type:"GET",cache:!1,url:b,dataType:"html",success:function(b){$(".modal-dialog .Changepasswd").append(b);ChangePWD.init();ZteFrameWork.stopPageLoading()},error:function(b,h,k){$(".modal-dialog .Changepasswd").append("<h4>"+$.i18n.prop("com_zte_ums_ict_framework_ui_loadchgpwdpageError")+"</h4>")}}))}
+function iniChangePWDDlg(){var b=$(".modal-dialog .Changepasswd").attr("dlgsrc");b&&0<b.length&&getChangePWDDlg(b)}function getHeaderMenu(b){2>b.length||(ZteFrameWork.startPageLoading(),$("#headerMenu").empty(),$.ajax({type:"GET",cache:!1,async:!1,url:b,dataType:"html",success:function(b){$("#headerMenu").append(b);ZteFrameWork.stopPageLoading()},error:function(b,h,k){}}))}
+function goToHomePage(){if((locationhash=ZteFrameWork.getLocationHash())&&0<locationhash.length){var b=null;if(store&&store("menuCategoryID")){var d=store("menuCategoryID").split("[menuCategoryID]");2<d.length&&(b={menuCategoryID:d[0],ipPortStr:d[1],newTitle:d[2]})}b?ZteFrameWork.goToURLByIDAndNewIPPort(locationhash,b,null):ZteFrameWork.goToURLByIDAndNewAction(locationhash,null,null)}else{var b=$("#page-sidebar-menu"),d=$("#main_hormenu"),h=$("#"+fMenuMegaDivId),k=$("#page-f-sidebar-menu"),g=null,
+g=$(".nav-pos-direction",panel).val();"vertical"===g?(g=$(".iframe.start",b),dealStartMenu(g,b)):"horizontal"===g?(g=$(".iframe.start",d),dealStartMenu(g,d)):g===zteframework_menu_fmenu&&((g=$(".iframe.start",h))&&1>g.length&&(g=$(".iframe.start",k)),dealStartMenu(g,h,k))}}
+var dealStartMenu=function(b,d,h){var k=setInterval(function(){b&&0<b.length?(b.click(),clearInterval(k)):(console.log("the start menu click event is not be triggerd ,so do it repeat!!"),$("a[operation]",d).each(function(){b=$(this);return!1}),h&&b&&1>b.length&&$("a[operation]",h).each(function(){b=$(this);return!1}))},100);handeCtxMenuitem()};
+function handeCtxMenuitem(){$(".page-sidebar ul li a").each(function(){$(this).attr("href")&&"javascript:;"!=$(this).attr("href")&&"#"!=$(this).attr("href")&&$(this).attr("oncontextmenu","return false")});$(".hormenu li a").each(function(){$(this).attr("href")&&"javascript:;"!=$(this).attr("href")&&"#"!=$(this).attr("href")&&$(this).attr("oncontextmenu","return false")})}
+function initBaseInfo(){$("#logout_label").text($.i18n.prop("com_zte_ums_ict_framework_ui_group_logout"));$("#fullscreen_label").text($.i18n.prop("com_zte_ums_ict_framework_ui_group_fullscreen"));$("#changePwd_label").text($.i18n.prop("com_zte_ums_ict_framework_ui_changePwd"));$("#com_zte_ums_ict_framework_moudle_about").text($.i18n.prop("com_zte_ums_ict_framework_moudle_about"));$("#com_zte_ums_ict_framework_moudle_help").text($.i18n.prop("com_zte_ums_ict_framework_moudle_help"));$("#zte_menu-toggler").attr("title",
+$.i18n.prop("com_zte_ums_ict_framework_moudle_menutoggler"))}window.closeModal=function(b){b&&(0>b.indexOf("#")&&(b="#"+b),$(b).modal("hide"))};function getLcsRight(b){var d=[];if(b&&0<b.length){b={data:JSON.stringify({keys:b})};var h=FrameConst.REST_GETLICENSEINFO+"?tmpstamp="+(new Date).getTime(),h=ZteFrameWork.handlBaseURL(h);$.ajax({dataType:"json",type:"GET",async:!1,url:h,data:b,success:function(b){b&&(d=b.data)},error:function(b,g,h){d=null}})}return d}
+function siderBarMenuAuthentication(){var b=[],d=[];$("a[licenseid]",$(".page-sidebar-menu")).each(function(){var g=$(this).attr("licenseid");g&&(d.push(g),g=$(this).attr("id"),b.push(g))});var h=getLcsRight(d);if(h&&h.length==b.length)for(var k=0;k<b.length;k++){var g=b[k];"True"!=h[k].value&&$("#"+g,$(".page-sidebar-menu")).parent().remove()}var n=[];$("a[operation]",$(".page-sidebar-menu")).each(function(){var b=$(this).attr("operation");b&&n.push(b)});var m=getAllOperCodeRights(n);$("a[operation]",
+$(".page-sidebar-menu")).each(function(){var b=$(this).attr("operation");b&&(hasRight(b,m)||$(this).parent("li").remove())});rebuildSiderBarMenu()}
+function horMenuAuthentication(b){var d=[],h=[];$("a[licenseid]",$("#"+b)).each(function(){var b=$(this).attr("licenseid");b&&(h.push(b),b=$(this).attr("id"),d.push(b))});var k=getLcsRight(h);if(k&&k.length==d.length)for(var g=0;g<d.length;g++){var n=d[g];"True"!=k[g].value&&$("#"+n,$("#"+b)).parent().remove()}var m=[];$("a[operation]",$("#"+b)).each(function(){var b=$(this).attr("operation");b&&m.push(b)});var l=getAllOperCodeRights(m);$("a[operation]",$("#"+b)).each(function(){var b=$(this).attr("operation");
+b&&(hasRight(b,l)||$(this).parent("li").remove())});rebuildHorMenu()}
+function ajustFMenu(b,d){$("a[hparentid]",$("#"+d)).each(function(){var d=$(this).attr("hparentId"),d=$("a[id = "+d+"]",$("#"+b)),k=d.attr("href");if(null==k||"#"==k.trim()||"javascript"==k){var g=$(this);null!=$(this).attr("href")&&"#"!=$(this).attr("href")&&"javascript:;"!=$(this).attr("href")||$("a[href]",$(this).parent().children("ul")).each(function(){g=$(this);if(null!=g&&"#"!=g&&"javascript"!=g)return!1});d.attr("href",g.attr("href"));d.attr("shiftjs",g.attr("shiftjs"));d.attr("cachenum",g.attr("cachenum"));
+d.attr("iframeName",g.attr("iframeName"));d.attr("xdomain",g.attr("xdomain"));d.attr("cssSrc",g.attr("cssSrc"));d.attr("category",g.attr("category"));d.attr("breadcrumgroupbuttonsrc",g.attr("breadcrumgroupbuttonsrc"));d.attr("operation",g.attr("operation"));d.attr("iframeautoscroll",g.attr("iframeautoscroll"))}})}
+function FMenuAuthentication(b,d){var h={};$("a[hparentid]",$("#"+d)).each(function(){var b=$(this).attr("hparentid");h[b]=1});checkFmenuRightByAttr("licenseid",b,d,getLcsRight);checkFmenuRightByAttr("operation",b,d,getAllOperCodeRights);rebuildSiderBarMenu();var k={};$("a[hparentid]",$("#"+d)).each(function(){var b=$(this).attr("hparentid");k[b]=1});for(var g in h)if(null==k[g]){var n=$("#"+g,$("#"+b));null!=n.attr("href")&&"javascript:;"!=n.attr("href")&&"#"!=n.attr("href")||n.parent().remove()}}
+function checkFmenuRightByAttr(b,d,h,k){var g=[],n=[];$("a["+b+"]",$("#"+h)).each(function(){var d=$(this).attr(b);d&&(n.push(d),d=$(this).attr("id"),g.push({id:d}))});if((d=k(n))&&d.length==g.length)for(k=0;k<g.length;k++){var m=g[k].id;"True"!=d[k].value&&$("#"+m,$("#"+h)).parent().remove()}}
+function groupButtonAuthentication(){var b=[],d=[];$("a[licenseid]",$(".more-botton-zone > li.btn-group")).each(function(){var g=$(this).attr("licenseid");g&&(d.push(g),g=$(this).attr("id"),b.push(g))});var h=getLcsRight(d);if(h&&h.length==b.length)for(var k=0;k<b.length;k++){var g=b[k];"True"!=h[k].value&&$("#"+g,$(".more-botton-zone > li.btn-group")).parent().remove()}"mysql"==ZteFrameWork_conf.dbType&&$("#uep-ict-backup-baseDataBack",$(".more-botton-zone > li.btn-group")).parent().remove();var n=
+[];$("a[operation]",$(".more-botton-zone > li.btn-group")).each(function(){var b=$(this).attr("operation");b&&n.push(b)});var m=getAllOperCodeRights(n);$("a[operation]",$(".more-botton-zone > li.btn-group")).each(function(){var b=$(this).attr("operation");b&&(hasRight(b,m)||$(this).parent("li").remove())});0==$("li > a",$(".more-botton-zone > li.btn-group")).length&&$(".more-botton-zone > li.btn-group").remove()}
+function rebuildSiderBarMenu(){0==$("a.start").length&&$('li > a[href!="javascript:;"]',$(".page-sidebar-menu")).eq(0).addClass("start");$("ul.sub-menu",$(".page-sidebar-menu")).each(function(){0==$(this).has("li").length&&$(this).parent("li").remove()})}
+function rebuildHorMenu(){0==$("a.start").length&&$('li > a[href!="#"]',$("#main_hormenu")).eq(0).addClass("start");$("ul.mega-menu-submenu",$("#main_hormenu")).each(function(){0==$(this).has("li > a").length&&$(this).remove()});$("div.zteDivWidth",$("#main_hormenu")).each(function(){0==$(this).has("ul").length&&$(this).remove()});$("ul.dropdown-menu",$("#main_hormenu")).each(function(){0==$(this).has("ul").length&&$(this).parent("li").remove()});$("li.divider",$("#main_hormenu")).each(function(){$(this).next().hasClass("divider")&&
+$(this).remove()});$("li.divider",$("#main_hormenu")).each(function(){0==$(this).next().length&&$(this).remove()})}
+function getAllOperCodeRights(b){var d=[];if(b&&0<b.length){var h=JSON.stringify({operations:b}),h=FrameConst.REST_CHECKRIGHT+"?data="+h+"&tmpstamp="+(new Date).getTime(),h=ZteFrameWork.handlBaseURL(h);$.ajax({dataType:"json",type:"GET",async:!1,url:h,data:null,success:function(b){d=b.value},error:function(b,d,h){401==b.status?window.location.replace("login.html"):console.log("Communication Error!")}})}return{opCodes:b,rights:d}}
+function hasRight(b,d){for(var h=0;h<d.opCodes.length;h++)if(d.opCodes[h]==b)return!0==d.rights[h];return!1}
+function dealMysqlBackupMenu(){var b=ZteFrameWork_conf.dbType;if(void 0===b||"mysql"===b){var b=$("[class='page-sidebar-menu']"),d=$(".hormenu");0<b.length&&0<$("#uep-ict-backup-dataBackup").length&&$("#uep-ict-backup-dataBackup",b).attr("breadcrumGroupButtonSrc",ICTFRAME_CONST_DATABACKUP_PATH);0<d.length&&0<$("#uep-ict-backup-dataBackup").length&&($("#uep-ict-backup-dataBackup",d).attr("breadcrumGroupButtonSrc",ICTFRAME_CONST_DATABACKUP_PATH),$("#uep-ict-backup-dataBackup").parent("li").attr("style",
+"display:block"),$("#uep-ict-backup-allDbStructBackup").parent("li").attr("style","display:none"),$("#uep-ict-backup-baseDataBack").parent("li").attr("style","display:none"))}}
+function dealMavToggle(b){var d=$("#page-sidebar-menu"),h=$("#main_hormenu"),k=$(".zte-theme-panel");$(".nav-pos-direction",k).val();"hidden"==$(b).attr("navtoggledispattr")?($(b).attr("navtoggledispattr","display"),d.css("display","block")):($(b).attr("navtoggledispattr","hidden"),d.css("display","none"));h.css("display","none")};
diff --git a/uiframe-iui/src/main/resources/webroot/framework/js/core/const.js b/uiframe-iui/src/main/resources/webroot/framework/js/core/const.js
new file mode 100644
index 00000000..c351644d
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/js/core/const.js
@@ -0,0 +1,56 @@
+/*
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+var fMenuSiderDivId = 'page-f-sidebar-menu';
+var ICTFRAME_CONST_SPINNER_GIF_PATH="../../iui/framework/img/loading-spinner-grey.gif";
+var ICTFRAME_CONST_IFRAME_HEIGHT_AJUST = 10;
+var ICTFRAME_CONST_IFRAME_HEIGHT_AJUST_IE = 5;
+var ICTFRAME_CONST_THEME_COLOR_CSS_PREFFIX = "css/themes/";
+var ICTFRAME_CONST_DEFAULTPAGE_PATH = "default.html?";
+var ICTFRAME_CONST_DATABACKUP_PATH = 'menus/dataBackup-mysql.html';
+var IS_V5_TESTVERSION = true;
+
+
+var FrameConst={};
+//Ĭϵ¼ɹתҳ
+FrameConst.DEFAULT_LOGINSKIP_PAGE = "main-page.html";
+
+FrameConst.do_heartbeat = false;
+FrameConst.change_pass = false;
+//Ƿ
+FrameConst.isEncypt = "false";
+//FrameConst.REST_FRAMECOMMIFO = "/web/rest/web-common/getMenuItemVisible";
+FrameConst.REST_FRAMECOMMIFO = "../../api/uiframe/v1/frameCommInfo";
+//FrameConst.REST_HEARTBEAT = "/web/rest/web-common/common?action=heartbeat";
+FrameConst.REST_HEARTBEAT = "../../api/uiframe/v1/heartbeat";
+//FrameConst.REST_GETLICENSEINFO = "/web/rest/web-license/getlicensevalueinfo";
+FrameConst.REST_GETLICENSEINFO = "../../api/uiframe/v1/licensevalueinfo";
+//FrameConst.REST_CHECKRIGHT = "/web/rest/web-common/checkRight";
+FrameConst.REST_CHECKRIGHT = "../../api/uiframe/v1/checkRight";
+//FrameConst.REST_LOGIN = "/web/res/web-common/login";
+FrameConst.REST_LOGIN = "../../api/uiframe/v1/login";
+//FrameConst.REST_LOGOUT = "/web/res/web-common/loginOut?SSOAction=SSOLogout";
+FrameConst.REST_LOGOUT = "../../api/uiframe/v1/loginOut?SSOAction=SSOLogout";
+//FrameConst.REST_GET_FRAME_MENUDIRECTION = "/web/rest/web-common/GetConfByKey?key=usf.mainframe.web.navigation.direction";
+FrameConst.REST_GET_FRAME_MENUDIRECTION = "../../api/uiframe/v1/confByKey?key=usf.mainframe.web.navigation.direction";
+//FrameConst.REST_GET_USERNAME = "/web/rest/web-common/common?action=getUserName";
+FrameConst.REST_GET_USERNAME = "../../api/uiframe/v1/userName";
+
+
+//FrameConst.REST_GET_VERSIONINFO = "/web/rest/web-common/getVersionInfo";
+FrameConst.REST_GET_VERSIONINFO = "../../api/uiframe/v1/versionInfo";
+var zte_http_headers=new Array();
+zte_http_headers.push({"key":"ICTAuthentication","value":"icttka","store":true});
+zte_http_headers.push({"key":"isFromWeb","value":"1","store":false}); \ No newline at end of file
diff --git a/uiframe-iui/src/main/resources/webroot/framework/js/core/hk.min.js b/uiframe-iui/src/main/resources/webroot/framework/js/core/hk.min.js
new file mode 100644
index 00000000..07346c8d
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/js/core/hk.min.js
@@ -0,0 +1,806 @@
+/*! store2 - v2.3.0 - 2015-05-22
+* Copyright (c) 2015 Nathan Bubna; Licensed MIT, GPL */
+;(function(window, define) {
+ var _ = {
+ version: "2.3.0",
+ areas: {},
+ apis: {},
+
+ // utilities
+ inherit: function(api, o) {
+ for (var p in api) {
+ if (!o.hasOwnProperty(p)) {
+ o[p] = api[p];
+ }
+ }
+ return o;
+ },
+ stringify: function(d) {
+ return d === undefined || typeof d === "function" ? d+'' : JSON.stringify(d);
+ },
+ parse: function(s) {
+ // if it doesn't parse, return as is
+ try{ return JSON.parse(s); }catch(e){ return s; }
+ },
+
+ // extension hooks
+ fn: function(name, fn) {
+ _.storeAPI[name] = fn;
+ for (var api in _.apis) {
+ _.apis[api][name] = fn;
+ }
+ },
+ get: function(area, key){ return area.getItem(key); },
+ set: function(area, key, string){ area.setItem(key, string); },
+ remove: function(area, key){ area.removeItem(key); },
+ key: function(area, i){ return area.key(i); },
+ length: function(area){ return area.length; },
+ clear: function(area){ area.clear(); },
+
+ // core functions
+ Store: function(id, area, namespace) {
+ var store = _.inherit(_.storeAPI, function(key, data, overwrite) {
+ if (arguments.length === 0){ return store.getAll(); }
+ if (data !== undefined){ return store.set(key, data, overwrite); }
+ if (typeof key === "string"){ return store.get(key); }
+ if (!key){ return store.clear(); }
+ return store.setAll(key, data);// overwrite=data, data=key
+ });
+ store._id = id;
+ try {
+ var testKey = '_safariPrivate_';
+ area.setItem(testKey, 'sucks');
+ store._area = area;
+ area.removeItem(testKey);
+ } catch (e) {}
+ if (!store._area) {
+ store._area = _.inherit(_.storageAPI, { items: {}, name: 'fake' });
+ }
+ store._ns = namespace || '';
+ if (!_.areas[id]) {
+ _.areas[id] = store._area;
+ }
+ if (!_.apis[store._ns+store._id]) {
+ _.apis[store._ns+store._id] = store;
+ }
+ return store;
+ },
+ storeAPI: {
+ // admin functions
+ area: function(id, area) {
+ var store = this[id];
+ if (!store || !store.area) {
+ store = _.Store(id, area, this._ns);//new area-specific api in this namespace
+ if (!this[id]){ this[id] = store; }
+ }
+ return store;
+ },
+ namespace: function(namespace, noSession) {
+ if (!namespace){
+ return this._ns ? this._ns.substring(0,this._ns.length-1) : '';
+ }
+ var ns = namespace, store = this[ns];
+ if (!store || !store.namespace) {
+ store = _.Store(this._id, this._area, this._ns+ns+'.');//new namespaced api
+ if (!this[ns]){ this[ns] = store; }
+ if (!noSession){ store.area('session', _.areas.session); }
+ }
+ return store;
+ },
+ isFake: function(){ return this._area.name === 'fake'; },
+ toString: function() {
+ return 'store'+(this._ns?'.'+this.namespace():'')+'['+this._id+']';
+ },
+
+ // storage functions
+ has: function(key) {
+ if (this._area.has) {
+ return this._area.has(this._in(key));//extension hook
+ }
+ return !!(this._in(key) in this._area);
+ },
+ size: function(){ return this.keys().length; },
+ each: function(fn, and) {
+ for (var i=0, m=_.length(this._area); i<m; i++) {
+ var key = this._out(_.key(this._area, i));
+ if (key !== undefined) {
+ if (fn.call(this, key, and || this.get(key)) === false) {
+ break;
+ }
+ }
+ if (m > _.length(this._area)) { m--; i--; }// in case of removeItem
+ }
+ return and || this;
+ },
+ keys: function() {
+ return this.each(function(k, list){ list.push(k); }, []);
+ },
+ get: function(key, alt) {
+ var s = _.get(this._area, this._in(key));
+ return s !== null ? _.parse(s) : alt || s;// support alt for easy default mgmt
+ },
+ getAll: function() {
+ return this.each(function(k, all){ all[k] = this.get(k); }, {});
+ },
+ set: function(key, data, overwrite) {
+ var d = this.get(key);
+ if (d != null && overwrite === false) {
+ return data;
+ }
+ return _.set(this._area, this._in(key), _.stringify(data), overwrite) || d;
+ },
+ setAll: function(data, overwrite) {
+ var changed, val;
+ for (var key in data) {
+ val = data[key];
+ if (this.set(key, val, overwrite) !== val) {
+ changed = true;
+ }
+ }
+ return changed;
+ },
+ remove: function(key) {
+ var d = this.get(key);
+ _.remove(this._area, this._in(key));
+ return d;
+ },
+ clear: function() {
+ if (!this._ns) {
+ _.clear(this._area);
+ } else {
+ this.each(function(k){ _.remove(this._area, this._in(k)); }, 1);
+ }
+ return this;
+ },
+ clearAll: function() {
+ var area = this._area;
+ for (var id in _.areas) {
+ if (_.areas.hasOwnProperty(id)) {
+ this._area = _.areas[id];
+ this.clear();
+ }
+ }
+ this._area = area;
+ return this;
+ },
+
+ // internal use functions
+ _in: function(k) {
+ if (typeof k !== "string"){ k = _.stringify(k); }
+ return this._ns ? this._ns + k : k;
+ },
+ _out: function(k) {
+ return this._ns ?
+ k && k.indexOf(this._ns) === 0 ?
+ k.substring(this._ns.length) :
+ undefined : // so each() knows to skip it
+ k;
+ }
+ },// end _.storeAPI
+ storageAPI: {
+ length: 0,
+ has: function(k){ return this.items.hasOwnProperty(k); },
+ key: function(i) {
+ var c = 0;
+ for (var k in this.items){
+ if (this.has(k) && i === c++) {
+ return k;
+ }
+ }
+ },
+ setItem: function(k, v) {
+ if (!this.has(k)) {
+ this.length++;
+ }
+ this.items[k] = v;
+ },
+ removeItem: function(k) {
+ if (this.has(k)) {
+ delete this.items[k];
+ this.length--;
+ }
+ },
+ getItem: function(k){ return this.has(k) ? this.items[k] : null; },
+ clear: function(){ for (var k in this.list){ this.removeItem(k); } },
+ toString: function(){ return this.length+' items in '+this.name+'Storage'; }
+ }// end _.storageAPI
+ };
+
+ // setup the primary store fn
+ if (window.store){ _.conflict = window.store; }
+ var store =
+ // safely set this up (throws error in IE10/32bit mode for local files)
+ _.Store("local", (function(){try{ return localStorage; }catch(e){}})());
+ store.local = store;// for completeness
+ store._ = _;// for extenders and debuggers...
+ // safely setup store.session (throws exception in FF for file:/// urls)
+ store.area("session", (function(){try{ return sessionStorage; }catch(e){}})());
+
+ //Expose store to the global object
+ window.store = store;
+
+ if (typeof define === 'function' && define.amd !== undefined) {
+ define(function () {
+ return store;
+ });
+ } else if (typeof module !== 'undefined' && module.exports) {
+ module.exports = store;
+ }
+
+})(this, null);
+
+// XHook - v1.3.3 - https://github.com/jpillora/xhook
+// Jaime Pillora <dev@jpillora.com> - MIT Copyright 2015
+(function(window,undefined) {
+var AFTER, BEFORE, COMMON_EVENTS, EventEmitter, FIRE, FormData, NativeFormData, NativeXMLHttp, OFF, ON, READY_STATE, UPLOAD_EVENTS, XHookFormData, XHookHttpRequest, XMLHTTP, convertHeaders, depricatedProp, document, fakeEvent, mergeObjects, msie, proxyEvents, slice, xhook, _base,
+ __indexOf = [].indexOf || function(item) { for (var i = 0, l = this.length; i < l; i++) { if (i in this && this[i] === item) return i; } return -1; };
+
+document = window.document;
+
+BEFORE = 'before';
+
+AFTER = 'after';
+
+READY_STATE = 'readyState';
+
+ON = 'addEventListener';
+
+OFF = 'removeEventListener';
+
+FIRE = 'dispatchEvent';
+
+XMLHTTP = 'XMLHttpRequest';
+
+FormData = 'FormData';
+
+UPLOAD_EVENTS = ['load', 'loadend', 'loadstart'];
+
+COMMON_EVENTS = ['progress', 'abort', 'error', 'timeout'];
+
+msie = parseInt((/msie (\d+)/.exec(navigator.userAgent.toLowerCase()) || [])[1]);
+
+if (isNaN(msie)) {
+ msie = parseInt((/trident\/.*; rv:(\d+)/.exec(navigator.userAgent.toLowerCase()) || [])[1]);
+}
+
+(_base = Array.prototype).indexOf || (_base.indexOf = function(item) {
+ var i, x, _i, _len;
+ for (i = _i = 0, _len = this.length; _i < _len; i = ++_i) {
+ x = this[i];
+ if (x === item) {
+ return i;
+ }
+ }
+ return -1;
+});
+
+slice = function(o, n) {
+ return Array.prototype.slice.call(o, n);
+};
+
+depricatedProp = function(p) {
+ return p === "returnValue" || p === "totalSize" || p === "position";
+};
+
+mergeObjects = function(src, dst) {
+ var k, v;
+ for (k in src) {
+ v = src[k];
+ if (depricatedProp(k)) {
+ continue;
+ }
+ try {
+ dst[k] = src[k];
+ } catch (_error) {}
+ }
+ return dst;
+};
+
+proxyEvents = function(events, src, dst) {
+ var event, p, _i, _len;
+ p = function(event) {
+ return function(e) {
+ var clone, k, val;
+ clone = {};
+ for (k in e) {
+ if (depricatedProp(k)) {
+ continue;
+ }
+ val = e[k];
+ clone[k] = val === src ? dst : val;
+ }
+ return dst[FIRE](event, clone);
+ };
+ };
+ for (_i = 0, _len = events.length; _i < _len; _i++) {
+ event = events[_i];
+ if (dst._has(event)) {
+ src["on" + event] = p(event);
+ }
+ }
+};
+
+fakeEvent = function(type) {
+ var msieEventObject;
+ if (document.createEventObject != null) {
+ msieEventObject = document.createEventObject();
+ msieEventObject.type = type;
+ return msieEventObject;
+ } else {
+ try {
+ return new Event(type);
+ } catch (_error) {
+ return {
+ type: type
+ };
+ }
+ }
+};
+
+EventEmitter = function(nodeStyle) {
+ var emitter, events, listeners;
+ events = {};
+ listeners = function(event) {
+ return events[event] || [];
+ };
+ emitter = {};
+ emitter[ON] = function(event, callback, i) {
+ events[event] = listeners(event);
+ if (events[event].indexOf(callback) >= 0) {
+ return;
+ }
+ i = i === undefined ? events[event].length : i;
+ events[event].splice(i, 0, callback);
+ };
+ emitter[OFF] = function(event, callback) {
+ var i;
+ if (event === undefined) {
+ events = {};
+ return;
+ }
+ if (callback === undefined) {
+ events[event] = [];
+ }
+ i = listeners(event).indexOf(callback);
+ if (i === -1) {
+ return;
+ }
+ listeners(event).splice(i, 1);
+ };
+ emitter[FIRE] = function() {
+ var args, event, i, legacylistener, listener, _i, _len, _ref;
+ args = slice(arguments);
+ event = args.shift();
+ if (!nodeStyle) {
+ args[0] = mergeObjects(args[0], fakeEvent(event));
+ }
+ legacylistener = emitter["on" + event];
+ if (legacylistener) {
+ legacylistener.apply(undefined, args);
+ }
+ _ref = listeners(event).concat(listeners("*"));
+ for (i = _i = 0, _len = _ref.length; _i < _len; i = ++_i) {
+ listener = _ref[i];
+ listener.apply(undefined, args);
+ }
+ };
+ emitter._has = function(event) {
+ return !!(events[event] || emitter["on" + event]);
+ };
+ if (nodeStyle) {
+ emitter.listeners = function(event) {
+ return slice(listeners(event));
+ };
+ emitter.on = emitter[ON];
+ emitter.off = emitter[OFF];
+ emitter.fire = emitter[FIRE];
+ emitter.once = function(e, fn) {
+ var fire;
+ fire = function() {
+ emitter.off(e, fire);
+ return fn.apply(null, arguments);
+ };
+ return emitter.on(e, fire);
+ };
+ emitter.destroy = function() {
+ return events = {};
+ };
+ }
+ return emitter;
+};
+
+xhook = EventEmitter(true);
+
+xhook.EventEmitter = EventEmitter;
+
+xhook[BEFORE] = function(handler, i) {
+ if (handler.length < 1 || handler.length > 2) {
+ throw "invalid hook";
+ }
+ return xhook[ON](BEFORE, handler, i);
+};
+
+xhook[AFTER] = function(handler, i) {
+ if (handler.length < 2 || handler.length > 3) {
+ throw "invalid hook";
+ }
+ return xhook[ON](AFTER, handler, i);
+};
+
+xhook.enable = function() {
+ window[XMLHTTP] = XHookHttpRequest;
+ if (NativeFormData) {
+ window[FormData] = XHookFormData;
+ }
+};
+
+xhook.disable = function() {
+ window[XMLHTTP] = xhook[XMLHTTP];
+ window[FormData] = NativeFormData;
+};
+
+convertHeaders = xhook.headers = function(h, dest) {
+ var header, headers, k, name, v, value, _i, _len, _ref;
+ if (dest == null) {
+ dest = {};
+ }
+ switch (typeof h) {
+ case "object":
+ headers = [];
+ for (k in h) {
+ v = h[k];
+ name = k.toLowerCase();
+ headers.push("" + name + ":\t" + v);
+ }
+ return headers.join('\n');
+ case "string":
+ headers = h.split('\n');
+ for (_i = 0, _len = headers.length; _i < _len; _i++) {
+ header = headers[_i];
+ if (/([^:]+):\s*(.+)/.test(header)) {
+ name = (_ref = RegExp.$1) != null ? _ref.toLowerCase() : void 0;
+ value = RegExp.$2;
+ if (dest[name] == null) {
+ dest[name] = value;
+ }
+ }
+ }
+ return dest;
+ }
+};
+
+NativeFormData = window[FormData];
+
+XHookFormData = function(form) {
+ var entries;
+ this.fd = form ? new NativeFormData(form) : new NativeFormData();
+ this.form = form;
+ entries = [];
+ Object.defineProperty(this, 'entries', {
+ get: function() {
+ var fentries;
+ fentries = !form ? [] : slice(form.querySelectorAll("input,select")).filter(function(e) {
+ var _ref;
+ return ((_ref = e.type) !== 'checkbox' && _ref !== 'radio') || e.checked;
+ }).map(function(e) {
+ return [e.name, e.type === "file" ? e.files : e.value];
+ });
+ return fentries.concat(entries);
+ }
+ });
+ this.append = (function(_this) {
+ return function() {
+ var args;
+ args = slice(arguments);
+ entries.push(args);
+ return _this.fd.append.apply(_this.fd, args);
+ };
+ })(this);
+};
+
+if (NativeFormData) {
+ xhook[FormData] = NativeFormData;
+ window[FormData] = XHookFormData;
+}
+
+NativeXMLHttp = window[XMLHTTP];
+
+xhook[XMLHTTP] = NativeXMLHttp;
+
+XHookHttpRequest = window[XMLHTTP] = function() {
+ var ABORTED, currentState, emitFinal, emitReadyState, facade, hasError, hasErrorHandler, readBody, readHead, request, response, setReadyState, status, transiting, writeBody, writeHead, xhr;
+ ABORTED = -1;
+ xhr = new xhook[XMLHTTP]();
+ request = {};
+ status = null;
+ hasError = void 0;
+ transiting = void 0;
+ response = void 0;
+ readHead = function() {
+ var key, name, val, _ref;
+ response.status = status || xhr.status;
+ if (!(status === ABORTED && msie < 10)) {
+ response.statusText = xhr.statusText;
+ }
+ if (status !== ABORTED) {
+ _ref = convertHeaders(xhr.getAllResponseHeaders());
+ for (key in _ref) {
+ val = _ref[key];
+ if (!response.headers[key]) {
+ name = key.toLowerCase();
+ response.headers[name] = val;
+ }
+ }
+ }
+ };
+ readBody = function() {
+ if (!xhr.responseType || xhr.responseType === "text") {
+ response.text = xhr.responseText;
+ response.data = xhr.responseText;
+ } else if (xhr.responseType === "document") {
+ response.xml = xhr.responseXML;
+ response.data = xhr.responseXML;
+ } else {
+ response.data = xhr.response;
+ }
+ if ("responseURL" in xhr) {
+ response.finalUrl = xhr.responseURL;
+ }
+ };
+ writeHead = function() {
+ facade.status = response.status;
+ facade.statusText = response.statusText;
+ };
+ writeBody = function() {
+ if ('text' in response) {
+ facade.responseText = response.text;
+ }
+ if ('xml' in response) {
+ facade.responseXML = response.xml;
+ }
+ if ('data' in response) {
+ facade.response = response.data;
+ }
+ if ('finalUrl' in response) {
+ facade.responseURL = response.finalUrl;
+ }
+ };
+ emitReadyState = function(n) {
+ while (n > currentState && currentState < 4) {
+ facade[READY_STATE] = ++currentState;
+ if (currentState === 1) {
+ facade[FIRE]("loadstart", {});
+ }
+ if (currentState === 2) {
+ writeHead();
+ }
+ if (currentState === 4) {
+ writeHead();
+ writeBody();
+ }
+ facade[FIRE]("readystatechange", {});
+ if (currentState === 4) {
+ setTimeout(emitFinal, 0);
+ }
+ }
+ };
+ emitFinal = function() {
+ if (!hasError) {
+ facade[FIRE]("load", {});
+ }
+ facade[FIRE]("loadend", {});
+ if (hasError) {
+ facade[READY_STATE] = 0;
+ }
+ };
+ currentState = 0;
+ setReadyState = function(n) {
+ var hooks, process;
+ if (n !== 4) {
+ emitReadyState(n);
+ return;
+ }
+ hooks = xhook.listeners(AFTER);
+ process = function() {
+ var hook;
+ if (!hooks.length) {
+ return emitReadyState(4);
+ }
+ hook = hooks.shift();
+ if (hook.length === 2) {
+ hook(request, response);
+ return process();
+ } else if (hook.length === 3 && request.async) {
+ return hook(request, response, process);
+ } else {
+ return process();
+ }
+ };
+ process();
+ };
+ facade = request.xhr = EventEmitter();
+ xhr.onreadystatechange = function(event) {
+ try {
+ if (xhr[READY_STATE] === 2) {
+ readHead();
+ }
+ } catch (_error) {}
+ if (xhr[READY_STATE] === 4) {
+ transiting = false;
+ readHead();
+ readBody();
+ }
+ setReadyState(xhr[READY_STATE]);
+ };
+ hasErrorHandler = function() {
+ hasError = true;
+ };
+ facade[ON]('error', hasErrorHandler);
+ facade[ON]('timeout', hasErrorHandler);
+ facade[ON]('abort', hasErrorHandler);
+ facade[ON]('progress', function() {
+ if (currentState < 3) {
+ setReadyState(3);
+ } else {
+ facade[FIRE]("readystatechange", {});
+ }
+ });
+ if ('withCredentials' in xhr || xhook.addWithCredentials) {
+ facade.withCredentials = false;
+ }
+ facade.status = 0;
+ facade.open = function(method, url, async, user, pass) {
+ currentState = 0;
+ hasError = false;
+ transiting = false;
+ request.headers = {};
+ request.headerNames = {};
+ request.status = 0;
+ response = {};
+ response.headers = {};
+ request.method = method;
+ request.url = url;
+ request.async = async !== false;
+ request.user = user;
+ request.pass = pass;
+ setReadyState(1);
+ };
+ facade.send = function(body) {
+ var hooks, k, modk, process, send, _i, _len, _ref;
+ _ref = ['type', 'timeout', 'withCredentials'];
+ if(navigator.userAgent.indexOf("Firefox/") != -1){http://atmosphere-framework.2306103.n4.nabble.com/Atmosphere-js-withCredentials-true-does-not-work-in-Firefox-td4656661.html
+ _ref = ['type', 'timeout'];
+ }
+ for (_i = 0, _len = _ref.length; _i < _len; _i++) {
+ k = _ref[_i];
+ modk = k === "type" ? "responseType" : k;
+ if (modk in facade) {
+ request[k] = facade[modk];
+ }
+ }
+ request.body = body;
+ send = function() {
+ var header, value, _j, _len1, _ref1, _ref2;
+ proxyEvents(COMMON_EVENTS, xhr, facade);
+ if (facade.upload) {
+ proxyEvents(COMMON_EVENTS.concat(UPLOAD_EVENTS), xhr.upload, facade.upload);
+ }
+ transiting = true;
+ xhr.open(request.method, request.url, request.async, request.user, request.pass);
+ _ref1 = ['type', 'timeout', 'withCredentials'];
+ if(navigator.userAgent.indexOf("Firefox/") != -1){//http://atmosphere-framework.2306103.n4.nabble.com/Atmosphere-js-withCredentials-true-does-not-work-in-Firefox-td4656661.html
+ _ref1 = ['type', 'timeout'];
+ }
+ for (_j = 0, _len1 = _ref1.length; _j < _len1; _j++) {
+ k = _ref1[_j];
+ modk = k === "type" ? "responseType" : k;
+ if (k in request) {
+ xhr[modk] = request[k];
+ }
+ }
+ _ref2 = request.headers;
+ for (header in _ref2) {
+ value = _ref2[header];
+ xhr.setRequestHeader(header, value);
+ }
+ if (request.body instanceof XHookFormData) {
+ request.body = request.body.fd;
+ }
+ xhr.send(request.body);
+ };
+ hooks = xhook.listeners(BEFORE);
+ process = function() {
+ var done, hook;
+ if (!hooks.length) {
+ return send();
+ }
+ done = function(userResponse) {
+ if (typeof userResponse === 'object' && (typeof userResponse.status === 'number' || typeof response.status === 'number')) {
+ mergeObjects(userResponse, response);
+ if (__indexOf.call(userResponse, 'data') < 0) {
+ userResponse.data = userResponse.response || userResponse.text;
+ }
+ setReadyState(4);
+ return;
+ }
+ process();
+ };
+ done.head = function(userResponse) {
+ mergeObjects(userResponse, response);
+ return setReadyState(2);
+ };
+ done.progress = function(userResponse) {
+ mergeObjects(userResponse, response);
+ return setReadyState(3);
+ };
+ hook = hooks.shift();
+ if (hook.length === 1) {
+ return done(hook(request));
+ } else if (hook.length === 2 && request.async) {
+ return hook(request, done);
+ } else {
+ return done();
+ }
+ };
+ process();
+ };
+ facade.abort = function() {
+ status = ABORTED;
+ if (transiting) {
+ xhr.abort();
+ } else {
+ facade[FIRE]('abort', {});
+ }
+ };
+ facade.setRequestHeader = function(header, value) {
+ var lName, name;
+ lName = header != null ? header.toLowerCase() : void 0;
+ name = request.headerNames[lName] = request.headerNames[lName] || header;
+ if (request.headers[name]) {
+ value = request.headers[name] + ', ' + value;
+ }
+ request.headers[name] = value;
+ };
+ facade.getResponseHeader = function(header) {
+ var name;
+ name = header != null ? header.toLowerCase() : void 0;
+ return response.headers[name];
+ };
+ facade.getAllResponseHeaders = function() {
+ return convertHeaders(response.headers);
+ };
+ if (xhr.overrideMimeType) {
+ facade.overrideMimeType = function() {
+ return xhr.overrideMimeType.apply(xhr, arguments);
+ };
+ }
+ if (xhr.upload) {
+ facade.upload = request.upload = EventEmitter();
+ }
+ return facade;
+};
+/*
+if (typeof this.define === "function" && this.define.amd) {
+ define("xhook", [], function() {
+ return xhook;
+ });
+} else {*/
+ (this.exports || this).xhook = xhook;
+//}
+
+}.call(this,window));
+
+xhook.before(function(request) {
+ var zte_headers = store('zte_http_headers');
+ if (zte_headers && zte_headers.length > 0) {
+ for (i = 0; i < zte_headers.length; i++) {
+ if (zte_headers[i].store === true) {
+ if ( !! store(zte_headers[i].value)) {
+ request.headers[zte_headers[i].key] = store(zte_headers[i].value).toUpperCase()
+ }
+ } else {
+ request.headers[zte_headers[i].key] = zte_headers[i].value
+ }
+ }
+ }
+}); \ No newline at end of file
diff --git a/uiframe-iui/src/main/resources/webroot/framework/js/core/pym.min.js b/uiframe-iui/src/main/resources/webroot/framework/js/core/pym.min.js
new file mode 100644
index 00000000..9733039a
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/js/core/pym.min.js
@@ -0,0 +1,2 @@
+/*! pym.js - v0.4.4 - 2015-07-16 */
+(function(a){if(typeof define==="function"&&define.amd){define("pym",[],a)}else{if(typeof module!=="undefined"&&module.exports){module.exports=a()}else{window.pym=a.call(this)}}window.pym=a.call(this)})(function(){var a="xPYMx";function e(){var k,i;if(window.innerHeight&&window.scrollMaxY){k=window.innerWidth+window.scrollMaxX;i=window.innerHeight+window.scrollMaxY}else{if(document.body.scrollHeight>document.body.offsetHeight){k=document.body.scrollWidth;i=document.body.scrollHeight}else{k=document.body.offsetWidth;i=document.body.offsetHeight}}var j,l;if(self.innerHeight){if(document.documentElement.clientWidth){j=document.documentElement.clientWidth}else{j=self.innerWidth}l=self.innerHeight}else{if(document.documentElement&&document.documentElement.clientHeight){j=document.documentElement.clientWidth;l=document.documentElement.clientHeight}else{if(document.body){j=document.body.clientWidth;l=document.body.clientHeight}}}if(i<l){pageHeight=l}else{pageHeight=i}if(k<j){pageWidth=k}else{pageWidth=j}arrayPageSize=new Array(pageWidth,pageHeight,j,l);return arrayPageSize}var g={};var c=function(i){var k=new RegExp("[\\?&]"+i.replace(/[\[]/,"\\[").replace(/[\]]/,"\\]")+"=([^&#]*)");var j=k.exec(location.search);if(j===null){return""}return decodeURIComponent(j[1].replace(/\+/g," "))};var b=function(j,i){if(i.xdomain!=="*"){if(!j.origin.match(new RegExp(i.xdomain+"$"))){return}}return true};var h=function(l,i,j){var k=["pym",l,i,j];return k.join(a)};var f=function(j){var i=["pym",j,"(\\S+)","(.+)"];return new RegExp("^"+i.join(a)+"$")};var d=function(){var n=document.querySelectorAll("[data-pym-src]:not([data-pym-auto-initialized])");var m=n.length;for(var i=0;i<m;++i){var l=n[i];l.setAttribute("data-pym-auto-initialized","");if(l.id===""){l.id="pym-"+i}var o=l.getAttribute("data-pym-src");var k=l.getAttribute("data-pym-xdomain");var j={};if(k){j.xdomain=k}new g.Parent(l.id,o,j)}};g.Parent=function(m,j,i){this.id=m;this.url=j;this.el=document.getElementById(m);this.iframe=null;this.minHeight="0";this._olddisplay="";this.oldHeight=0;this.childpageType="";this.setMinHeight=function(n){this.minHeight=n;this._onHeightMessage(n)};this.settings={xdomain:"*"};this.messageRegex=f(this.id);this.messageHandlers={};i=(i||{});this._constructIframe=function(){var o=this.el.offsetWidth.toString();this.iframe=document.createElement("iframe");var q="";var n=this.url.indexOf("#");if(n>-1){q=this.url.substring(n,this.url.length);this.url=this.url.substring(0,n)}if(this.url.indexOf("?")<0){this.url+="?"}else{this.url+="&"}this.iframe.src=this.url.trim().indexOf("javascript:")>=0?"":this.url+"initialWidth="+o+"&childId="+this.id;"&parentUrl="+encodeURIComponent(window.location.href)+q;this.iframe.setAttribute("width","100%");this.iframe.setAttribute("scrolling","no");this.iframe.setAttribute("marginheight","0");this.iframe.setAttribute("frameborder","0");this.el.appendChild(this.iframe);var p=this;window.addEventListener("resize",this._onResize)};this._onResize=function(){this.sendWidth()}.bind(this);this._fire=function(o,p){if(o in this.messageHandlers){for(var n=0;n<this.messageHandlers[o].length;n++){this.messageHandlers[o][n].call(this,p)}}};this.remove=function(){window.removeEventListener("message",this._processMessage);window.removeEventListener("resize",this._onResize);this.el.removeChild(this.iframe)};this._processMessage=function(q){if(!b(q,this.settings)){return}if(typeof q.data!=="string"){return}var n=q.data.match(this.messageRegex);if(!n||n.length!==3){return false}var o=n[1];var p=n[2];this._fire(o,p)}.bind(this);this._onHeightMessage=function(o){var n=parseInt(o);n=Math.max(this.minHeight,n);if(this.oldHeight!=n){if(this.childpageType&&this.childpageType.length>0&&this.childpageType==="isc"){console.log("parent window detect that the child iframe page loaded smartclient,the iframe height will ignore the child's Height change message;");if(this.minHeight<n){n=this.minHeight}}this.oldHeight=n;this.iframe.setAttribute("height",n+"px")}};this._onNavigateToMessage=function(n){document.location.href=n};this._onChildpageTypeMessage=function(n){this.childpageType=n};this.onMessage=function(n,o){if(!(n in this.messageHandlers)){this.messageHandlers[n]=[]}this.messageHandlers[n].push(o)};this.sendMessage=function(n,o){this.el.getElementsByTagName("iframe")[0].contentWindow.postMessage(h(this.id,n,o),"*")};this.sendWidth=function(){var n=this.el.offsetWidth.toString();this.sendMessage("width",n)};for(var k in i){this.settings[k]=i[k]}this.onMessage("height",this._onHeightMessage);this.onMessage("navigateTo",this._onNavigateToMessage);this.onMessage("childpageType",this._onChildpageTypeMessage);var l=this;window.addEventListener("message",this._processMessage,false);this._constructIframe();return this};g.Child=function(i){this.parentWidth=null;this.id=null;this.oldHeight=0;this.parentUrl=null;this.settings={renderCallback:null,xdomain:"*",polling:0};this.messageRegex=null;this.messageHandlers={};i=(i||{});this.onMessage=function(m,n){if(!(m in this.messageHandlers)){this.messageHandlers[m]=[]}this.messageHandlers[m].push(n)};this._fire=function(n,o){if(n in this.messageHandlers){for(var m=0;m<this.messageHandlers[n].length;m++){this.messageHandlers[n][m].call(this,o)}}};this._processMessage=function(p){if(!b(p,this.settings)){return}if(typeof p.data!=="string"){return}var m=p.data.match(this.messageRegex);if(!m||m.length!==3){return}var n=m[1];var o=m[2];this._fire(n,o)}.bind(this);this._onWidthMessage=function(n){var m=parseInt(n);if(m!==this.parentWidth){this.parentWidth=m;if(this.settings.renderCallback){this.settings.renderCallback(m)}this.sendHeight()}};this.sendMessage=function(m,n){window.parent.postMessage(h(this.id,m,n),"*")};this.sendHeight=function(){var n=document.getElementsByTagName("body")[0];height=n.offsetHeight;if(typeof isc!="undefined"&&l.oldPageType!="isc"){height=5;console.log("child iframe id="+l.id+" loaded smartclient");l.oldPageType="isc";l.sendMessage("childpageType","isc")}var m=0;if(l.oldHeight>height){m=l.oldHeight-height}else{m=height-l.oldHeight}if(m<=70){return}if(l.oldHeight!=height){l.oldHeight=height;console.log("child iframe id="+l.id+" sedHeight:"+height);l.sendMessage("height",height)}}.bind(this);this.scrollParentTo=function(m){this.sendMessage("navigateTo","#"+m)};this.navigateParentTo=function(m){this.sendMessage("navigateTo",m)};this.id=c("childId")||i.id;this.messageRegex=new RegExp("^pym"+a+this.id+a+"(\\S+)"+a+"(.+)$");var k=parseInt(c("initialWidth"));this.parentUrl=c("parentUrl");this.onMessage("width",this._onWidthMessage);for(var j in i){this.settings[j]=i[j]}var l=this;window.addEventListener("message",this._processMessage,false);if(this.settings.renderCallback){this.settings.renderCallback(k)}this.sendHeight();if(this.settings.polling){window.setInterval(this.sendHeight,this.settings.polling)}return this};d();return g});
diff --git a/uiframe-iui/src/main/resources/webroot/framework/js/fm_light.js b/uiframe-iui/src/main/resources/webroot/framework/js/fm_light.js
new file mode 100644
index 00000000..51e71a66
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/js/fm_light.js
@@ -0,0 +1,169 @@
+/*
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+(function($) {
+ String.prototype.trim = function() {
+ return this.replace(/(^\s*)|(\s*$)/g, "");
+ };
+ String.prototype.format=function() {
+ if(arguments.length==0) return this;
+ for(var s=this, i=0; i<arguments.length; i++)
+ s=s.replace(new RegExp("\\{"+i+"\\}","g"), arguments[i]);
+ return s;
+ };
+ //告警计数点击事件
+ $(function(){
+ $("#hd_alarmcount_critical_value").parentsUntil('a').parent().click(function() {
+ openNewPage(1);
+ });
+
+ $("#hd_alarmcount_major_value").parentsUntil('a').parent().click(function() {
+ openNewPage(2);
+ });
+
+ $("#hd_alarmcount_minor_value").parentsUntil('a').parent().click(function() {
+ openNewPage(3);
+ });
+
+ $("#hd_alarmcount_warning_value").parentsUntil('a').parent().click(function() {
+ openNewPage(4);
+ });
+ function openNewPage(severity)
+ {
+ window.open("default.html?showNav=false&severity=" + severity + "#_uep-ict-fm-currentAlarm",
+ "fm_portlet_page_title");
+ }
+ });
+ try{
+ //base版本不加载告警统计,并在界面隐藏
+ $().ready(function(){
+ if(typeof(base) == "undefined" || !base){
+ if($("#header_notification_bar")&&$("#header_notification_bar").length>0&&$("#header_notification_bar").children().length>0){
+ // 对告警灯进行鉴权,如果有当前告警权限,显示告警灯,否则返回?
+ var operations = new Array();
+ operations.push("common.fm.currentview");
+ var rightObj = getAllOperCodeRights(operations);
+ var operation = $("#uep-ict-fm-currentAlarm").attr("operation");;
+ if (!hasRight(operation, rightObj)) {
+ $('#header_notification_bar').html("<div>&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp</div>");
+ return;
+ }
+ // get total alarm count
+ $("#hd_heighestAlarmcount_label").attr("title",$.i18n.prop('com_zte_ums_ict_alarmcount_none_label'));
+ $("#hd_alarmcount_total_value").attr("title",$.i18n.prop('com_zte_ums_ict_alarmcount_total_label'));
+ $("#hd_alarmcount_critical_value").attr("title",$.i18n.prop('com_zte_ums_ict_alarmcount_critical_label'));
+ $("#hd_alarmcount_major_value").attr("title",$.i18n.prop('com_zte_ums_ict_alarmcount_major_label'));
+ $("#hd_alarmcount_minor_value").attr("title",$.i18n.prop('com_zte_ums_ict_alarmcount_minor_label'));
+ $("#hd_alarmcount_warning_value").attr("title",$.i18n.prop('com_zte_ums_ict_alarmcount_warning_label'));
+
+ function alarmLight(alarmcount){
+ if (!alarmcount || !alarmcount.unAckedCount || (alarmcount.unAckedCount.length < 4) || !alarmcount.ackedCount || (alarmcount.ackedCount.length < 4)) {
+ return;
+ }
+ var criticalNum = alarmcount.unAckedCount[0] + alarmcount.ackedCount[0];
+ var majorNum = alarmcount.unAckedCount[1] + alarmcount.ackedCount[1];
+ var minorNum = alarmcount.unAckedCount[2] + alarmcount.ackedCount[2];
+ var warningNum = alarmcount.unAckedCount[3] + alarmcount.ackedCount[3];
+ var totalNum= criticalNum+ majorNum+ minorNum+ warningNum;
+ var heighestAlarmcount=0;
+ var hd_heighestAlarmcount_label="";
+ if(criticalNum>0){
+ heighestAlarmcount =criticalNum;
+ hd_heighestAlarmcount_label=$.i18n.prop('com_zte_ums_ict_alarmcount_critical_label');
+ // $("#hd_heighestAlarmcount_li").attr("class",$("#hd_alarmcount_critical_li").attr("class"));
+ }else if(majorNum>0){
+ heighestAlarmcount =majorNum;
+ hd_heighestAlarmcount_label=$.i18n.prop('com_zte_ums_ict_alarmcount_major_label');
+ }else if(minorNum>0){
+ heighestAlarmcount =minorNum;
+ hd_heighestAlarmcount_label=$.i18n.prop('com_zte_ums_ict_alarmcount_minor_label');
+ }else if(warningNum>0){
+ heighestAlarmcount =warningNum;
+ hd_heighestAlarmcount_label=$.i18n.prop('com_zte_ums_ict_alarmcount_warning_label');
+ }else{
+ heighestAlarmcount =0;
+ hd_heighestAlarmcount_label=$.i18n.prop('com_zte_ums_ict_alarmcount_none_label');
+ }
+
+ $("#hd_heighestAlarmcount_value").text(heighestAlarmcount);
+ $("#hd_alarmcount_total_value").text(totalNum);
+ $("#hd_alarmcount_critical_value").text(criticalNum);
+ $("#hd_alarmcount_major_value").text(majorNum);
+ $("#hd_alarmcount_minor_value").text(minorNum);
+ $("#hd_alarmcount_warning_value").text(warningNum);
+
+ $("#hd_heighestAlarmcount_value").attr("title",hd_heighestAlarmcount_label.format(heighestAlarmcount ));
+ $("#hd_alarmcount_total_value").attr("title",$.i18n.prop('com_zte_ums_ict_alarmcount_total_label').format(totalNum ));
+ $("#hd_alarmcount_critical_value").attr("title",$.i18n.prop('com_zte_ums_ict_alarmcount_critical_label').format( criticalNum ));
+ $("#hd_alarmcount_major_value").attr("title",$.i18n.prop('com_zte_ums_ict_alarmcount_major_label').format(majorNum));
+ $("#hd_alarmcount_minor_value").attr("title",$.i18n.prop('com_zte_ums_ict_alarmcount_minor_label').format(minorNum));
+ $("#hd_alarmcount_warning_value").attr("title",$.i18n.prop('com_zte_ums_ict_alarmcount_warning_label').format(warningNum));
+
+ $("#hd_alarmcount_critical_text").text($.i18n.prop('com_zte_ums_ict_alarmcount_critical_text'));
+ $("#hd_alarmcount_major_text").text($.i18n.prop('com_zte_ums_ict_alarmcount_major_text'));
+ $("#hd_alarmcount_minor_text").text($.i18n.prop('com_zte_ums_ict_alarmcount_minor_text'));
+ $("#hd_alarmcount_warning_text").text($.i18n.prop('com_zte_ums_ict_alarmcount_warning_text'));
+
+ $("#hd_alarmcount_total_before_text").text($.i18n.prop('com_zte_ums_ict_alarmcount_total_before_text'));
+ $("#hd_alarmcount_total_after_text").text($.i18n.prop('com_zte_ums_ict_alarmcount_total_after_text'));
+ $("#header_notification_bar").css('display','block');
+ }
+ function queryAlarmTotalCount() {
+ $.getJSON("/web/rest/web/fm/count/total", function(data) {
+ //var alarmcount = $.parseJSON(data);
+ alarmLight(data);
+ if($("#header_notification_bar")&&$("#header_notification_bar").length>0&&$("#header_notification_bar").children().length>0){
+ registerAlarmTotalCountToCometd();
+ }
+ })
+ }
+ if($("#header_notification_bar")&&$("#header_notification_bar").length>0&&$("#header_notification_bar").children().length>0){
+ queryAlarmTotalCount();
+ }
+ var registerAlarmTotalCountToCometd = function () {
+ var self = this;
+ var cometd = $.cometd;
+ var cometURL = location.protocol + "//" + location.host + "/web/cometd";
+ cometd.configure({
+ url: cometURL,
+ logLevel: 'debug'
+ });
+ cometd.addListener('/meta/handshake', function (handshake){
+ if (handshake.successful === true) {
+ cometd.batch(function () {
+ cometd.subscribe('/alarm/usercount', function (message) {
+ var alarmcount =message.data;
+ alarmLight(alarmcount);
+ })
+ })
+ }
+ });
+ cometd.handshake();
+ };
+
+ // if($("#header_notification_bar")&&$("#header_notification_bar").length>0&&$("#header_notification_bar").children().length>0){
+ // registerAlarmTotalCountToCometd();
+ // }
+ //setInterval(queryAlarmTotalCount, 30 * 1000);
+ }
+ }
+ else if(base){
+ //$("#header_notification_bar").hide();
+ //$('#header_notification_bar').empty();
+ $('#header_notification_bar').html("<div>&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp</div>");
+ }
+ });
+ }catch(e){}
+})(jQuery);
diff --git a/uiframe-iui/src/main/resources/webroot/framework/js/international/loadi18n-login.js b/uiframe-iui/src/main/resources/webroot/framework/js/international/loadi18n-login.js
new file mode 100644
index 00000000..33ef1ea6
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/js/international/loadi18n-login.js
@@ -0,0 +1,53 @@
+/*
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+//加载本模块国际化文件并处理静态国际化部分
+function loadProperties_login(lang){
+ jQuery.i18n.properties({
+ language:lang,
+ name:'web-portal-login-integration-i18n',
+ path:'i18n/',
+ mode:'map',
+ callback: function() {
+ var i18nItems = $('[name_i18n=com_zte_ums_ict_framework_ui_i18n_login]');
+ for(var i=0;i<i18nItems.length;i++){
+ var $item = $(i18nItems.eq(i));
+ var itemId = $item.attr('id');
+ var itemValue = $.i18n.prop(itemId);
+ //从老的js文本文件中读取可能包含"和;字样
+ if(itemValue.indexOf(';')>0){
+ itemValue = itemValue.replace(';', '');
+ }
+ if(/[\'\"]/.test(itemValue)){
+ itemValue = itemValue.replace(/\"/g,'');
+ itemValue = itemValue.replace(/\'/g,'');
+ }
+ if(typeof($item.attr("title"))!="undefined"){
+ $item.attr("title", itemValue);
+ }else if(typeof($item.attr("placeholder"))!="undefined"){
+ $item.attr("placeholder", itemValue);
+ }else{
+ $item.text(itemValue);
+ }
+ }
+ }
+ });
+}
+
+function loadi18n_login(lang){
+ loadProperties_login(lang);
+}
+
+
diff --git a/uiframe-iui/src/main/resources/webroot/framework/js/international/loadi18n.js b/uiframe-iui/src/main/resources/webroot/framework/js/international/loadi18n.js
new file mode 100644
index 00000000..70f1a4bc
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/js/international/loadi18n.js
@@ -0,0 +1,110 @@
+/*
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+var lang = getLanguage();
+//lang = 'en-US';
+
+//加载主页面head部分国际化
+function loadProperties(lang){
+ jQuery.i18n.properties({
+ language:lang,
+ name:'web-framework-integration-i18n',
+ path:'i18n/', // 资源文件路径
+ mode:'map', // 用 Map 的方式使用资源文件中的值
+ callback: function() {// 加载成功后设置显示内容
+ var i18nItems = $('[name_i18n=com_zte_ums_ict_framework_ui_i18n]');
+ for(var i=0;i<i18nItems.length;i++){
+ var $item = $(i18nItems.eq(i));
+ var itemId = $item.attr('id');
+ if(typeof($item.attr("title"))!="undefined"){
+ $item.attr("title", $.i18n.prop(itemId));
+ }else{
+ $item.text($.i18n.prop(itemId));
+ }
+ }
+ }
+ });
+}
+
+function loadi18n_WebFramework_1(){
+ $.getScript("js/tools.js", function(){
+ var lang = getLanguage();
+ loadProperties(lang);
+ });
+}
+
+function loadi18n_WebFramework(){
+ loadProperties(lang);
+}
+
+/*
+function loadPropertiesSideMenu(lang){
+ jQuery.i18n.properties({
+ language:lang,
+ name:'web-framework-i18n',
+ path:'i18n/', // 资源文件路径
+ mode:'map', // 用 Map 的方式使用资源文件中的值
+ callback: function() {// 加载成功后设置显示内容
+ var i18nItems = $('[name=com_zte_ums_ict_framework_ui_i18n]');
+ for(var i=0;i<i18nItems.length;i++){
+ var $item = $(i18nItems.eq(i));
+ var itemId = $item.attr('id');
+ if(typeof($item.attr("placeholder"))=="undefined"){
+ $item.text($.i18n.prop(itemId));
+ }else{
+ $item.attr("placeholder", $.i18n.prop(itemId));
+ }
+ }
+ }
+ });
+}*/
+
+/**
+* 国际化资源文件加载函数;
+* 相应参数为当前语言(由框架从后端取得),国际化资源文件名前缀,资源文件所在路径。
+*/
+/**
+* 国际化资源文件加载函数;
+* 相应参数为当前语言(由框架从后端取得),国际化资源文件名前缀,资源文件所在路径。
+*/
+function loadPropertiesSideMenu(lang, propertiesFileNamePrefix, propertiesFilePath , name_I18n){
+ console.info('loadPropertiesSideMenu has been called ' + propertiesFilePath);
+ if(!name_I18n) name_I18n='com_zte_ums_ict_framework_ui_i18n_sideMenu';
+ jQuery.i18n.properties({
+ language:lang,
+ name:propertiesFileNamePrefix,
+ path:propertiesFilePath, // 资源文件路径
+ mode:'map', // 用 Map 的方式使用资源文件中的值
+ callback: function() {// 加载成功后设置显示内容
+ var i18nItems = $('[name_i18n='+ name_I18n + ']');
+ for(var i=0;i<i18nItems.length;i++){
+ var $item = $(i18nItems.eq(i));
+ var itemId = $item.attr('id');
+ if(typeof($item.attr("placeholder"))=="undefined"){
+ $item.text($.i18n.prop(itemId));
+ }else{
+ $item.attr("placeholder", $.i18n.prop(itemId));
+ }
+ }
+ }
+ });
+}
+
+function loadi18n_WebFramework_sideMenu(){
+ //默认0场景菜单资源文件
+ //loadPropertiesSideMenu(lang, 'web-framework-i18n', 'i18n/');
+ //加载各应用菜单资源文件
+ var srcpath ="i18n/";
+ loadPropertiesSideMenu(lang , 'web-framework-integration-i18n', srcpath);}
diff --git a/uiframe-iui/src/main/resources/webroot/framework/js/international/loadi18nApp_universal.js b/uiframe-iui/src/main/resources/webroot/framework/js/international/loadi18nApp_universal.js
new file mode 100644
index 00000000..5970ca6e
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/js/international/loadi18nApp_universal.js
@@ -0,0 +1,24 @@
+/*
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+function loadAppPropertiesSideMenu(lang){
+ /**
+ * 调用框架的国际化资源文件加载函数;
+ * 相应参数为当前语言(由框架从后端取得),国际化资源文件名前缀,资源文件所在路径。
+ */
+ loadPropertiesSideMenu(lang, 'app-universal-i18n', 'i18n/');
+}
+loadAppPropertiesSideMenu(lang); \ No newline at end of file
diff --git a/uiframe-iui/src/main/resources/webroot/framework/js/json2.js b/uiframe-iui/src/main/resources/webroot/framework/js/json2.js
new file mode 100644
index 00000000..8b5c467f
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/js/json2.js
@@ -0,0 +1,501 @@
+/*
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/*
+ json2.js
+ 2012-10-08
+
+ Public Domain.
+
+ NO WARRANTY EXPRESSED OR IMPLIED. USE AT YOUR OWN RISK.
+
+ See http://www.JSON.org/js.html
+
+
+ This code should be minified before deployment.
+ See http://javascript.crockford.com/jsmin.html
+
+ USE YOUR OWN COPY. IT IS EXTREMELY UNWISE TO LOAD CODE FROM SERVERS YOU DO
+ NOT CONTROL.
+
+
+ This file creates a global JSON object containing two methods: stringify
+ and parse.
+
+ JSON.stringify(value, replacer, space)
+ value any JavaScript value, usually an object or array.
+
+ replacer an optional parameter that determines how object
+ values are stringified for objects. It can be a
+ function or an array of strings.
+
+ space an optional parameter that specifies the indentation
+ of nested structures. If it is omitted, the text will
+ be packed without extra whitespace. If it is a number,
+ it will specify the number of spaces to indent at each
+ level. If it is a string (such as '\t' or '&nbsp;'),
+ it contains the characters used to indent at each level.
+
+ This method produces a JSON text from a JavaScript value.
+
+ When an object value is found, if the object contains a toJSON
+ method, its toJSON method will be called and the result will be
+ stringified. A toJSON method does not serialize: it returns the
+ value represented by the name/value pair that should be serialized,
+ or undefined if nothing should be serialized. The toJSON method
+ will be passed the key associated with the value, and this will be
+ bound to the value
+
+ For example, this would serialize Dates as ISO strings.
+
+ Date.prototype.toJSON = function (key) {
+ function f(n) {
+ // Format integers to have at least two digits.
+ return n < 10 ? '0' + n : n;
+ }
+
+ return this.getUTCFullYear() + '-' +
+ f(this.getUTCMonth() + 1) + '-' +
+ f(this.getUTCDate()) + 'T' +
+ f(this.getUTCHours()) + ':' +
+ f(this.getUTCMinutes()) + ':' +
+ f(this.getUTCSeconds()) + 'Z';
+ };
+
+ You can provide an optional replacer method. It will be passed the
+ key and value of each member, with this bound to the containing
+ object. The value that is returned from your method will be
+ serialized. If your method returns undefined, then the member will
+ be excluded from the serialization.
+
+ If the replacer parameter is an array of strings, then it will be
+ used to select the members to be serialized. It filters the results
+ such that only members with keys listed in the replacer array are
+ stringified.
+
+ Values that do not have JSON representations, such as undefined or
+ functions, will not be serialized. Such values in objects will be
+ dropped; in arrays they will be replaced with null. You can use
+ a replacer function to replace those with JSON values.
+ JSON.stringify(undefined) returns undefined.
+
+ The optional space parameter produces a stringification of the
+ value that is filled with line breaks and indentation to make it
+ easier to read.
+
+ If the space parameter is a non-empty string, then that string will
+ be used for indentation. If the space parameter is a number, then
+ the indentation will be that many spaces.
+
+ Example:
+
+ text = JSON.stringify(['e', {pluribus: 'unum'}]);
+ // text is '["e",{"pluribus":"unum"}]'
+
+
+ text = JSON.stringify(['e', {pluribus: 'unum'}], null, '\t');
+ // text is '[\n\t"e",\n\t{\n\t\t"pluribus": "unum"\n\t}\n]'
+
+ text = JSON.stringify([new Date()], function (key, value) {
+ return this[key] instanceof Date ?
+ 'Date(' + this[key] + ')' : value;
+ });
+ // text is '["Date(---current time---)"]'
+
+
+ JSON.parse(text, reviver)
+ This method parses a JSON text to produce an object or array.
+ It can throw a SyntaxError exception.
+
+ The optional reviver parameter is a function that can filter and
+ transform the results. It receives each of the keys and values,
+ and its return value is used instead of the original value.
+ If it returns what it received, then the structure is not modified.
+ If it returns undefined then the member is deleted.
+
+ Example:
+
+ // Parse the text. Values that look like ISO date strings will
+ // be converted to Date objects.
+
+ myData = JSON.parse(text, function (key, value) {
+ var a;
+ if (typeof value === 'string') {
+ a =
+/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2}(?:\.\d*)?)Z$/.exec(value);
+ if (a) {
+ return new Date(Date.UTC(+a[1], +a[2] - 1, +a[3], +a[4],
+ +a[5], +a[6]));
+ }
+ }
+ return value;
+ });
+
+ myData = JSON.parse('["Date(09/09/2001)"]', function (key, value) {
+ var d;
+ if (typeof value === 'string' &&
+ value.slice(0, 5) === 'Date(' &&
+ value.slice(-1) === ')') {
+ d = new Date(value.slice(5, -1));
+ if (d) {
+ return d;
+ }
+ }
+ return value;
+ });
+
+
+ This is a reference implementation. You are free to copy, modify, or
+ redistribute.
+*/
+
+/*jslint evil: true, regexp: true */
+
+/*members "", "\b", "\t", "\n", "\f", "\r", "\"", JSON, "\\", apply,
+ call, charCodeAt, getUTCDate, getUTCFullYear, getUTCHours,
+ getUTCMinutes, getUTCMonth, getUTCSeconds, hasOwnProperty, join,
+ lastIndex, length, parse, prototype, push, replace, slice, stringify,
+ test, toJSON, toString, valueOf
+*/
+
+
+// Create a JSON object only if one does not already exist. We create the
+// methods in a closure to avoid creating global variables.
+
+if (typeof JSON !== 'object') {
+ JSON = {};
+}
+
+(function () {
+ 'use strict';
+
+ function f(n) {
+ // Format integers to have at least two digits.
+ return n < 10 ? '0' + n : n;
+ }
+
+ if (typeof Date.prototype.toJSON !== 'function') {
+
+ Date.prototype.toJSON = function (key) {
+
+ return isFinite(this.valueOf())
+ ? this.getUTCFullYear() + '-' +
+ f(this.getUTCMonth() + 1) + '-' +
+ f(this.getUTCDate()) + 'T' +
+ f(this.getUTCHours()) + ':' +
+ f(this.getUTCMinutes()) + ':' +
+ f(this.getUTCSeconds()) + 'Z'
+ : null;
+ };
+
+ String.prototype.toJSON =
+ Number.prototype.toJSON =
+ Boolean.prototype.toJSON = function (key) {
+ return this.valueOf();
+ };
+ }
+
+ var cx = /[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,
+ escapable = /[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,
+ gap,
+ indent,
+ meta = { // table of character substitutions
+ '\b': '\\b',
+ '\t': '\\t',
+ '\n': '\\n',
+ '\f': '\\f',
+ '\r': '\\r',
+ '"' : '\\"',
+ '\\': '\\\\'
+ },
+ rep;
+
+
+ function quote(string) {
+
+// If the string contains no control characters, no quote characters, and no
+// backslash characters, then we can safely slap some quotes around it.
+// Otherwise we must also replace the offending characters with safe escape
+// sequences.
+
+ escapable.lastIndex = 0;
+ return escapable.test(string) ? '"' + string.replace(escapable, function (a) {
+ var c = meta[a];
+ return typeof c === 'string'
+ ? c
+ : '\\u' + ('0000' + a.charCodeAt(0).toString(16)).slice(-4);
+ }) + '"' : '"' + string + '"';
+ }
+
+
+ function str(key, holder) {
+
+// Produce a string from holder[key].
+
+ var i, // The loop counter.
+ k, // The member key.
+ v, // The member value.
+ length,
+ mind = gap,
+ partial,
+ value = holder[key];
+
+// If the value has a toJSON method, call it to obtain a replacement value.
+
+ if (value && typeof value === 'object' &&
+ typeof value.toJSON === 'function') {
+ value = value.toJSON(key);
+ }
+
+// If we were called with a replacer function, then call the replacer to
+// obtain a replacement value.
+
+ if (typeof rep === 'function') {
+ value = rep.call(holder, key, value);
+ }
+
+// What happens next depends on the value's type.
+
+ switch (typeof value) {
+ case 'string':
+ return quote(value);
+
+ case 'number':
+
+// JSON numbers must be finite. Encode non-finite numbers as null.
+
+ return isFinite(value) ? String(value) : 'null';
+
+ case 'boolean':
+ case 'null':
+
+// If the value is a boolean or null, convert it to a string. Note:
+// typeof null does not produce 'null'. The case is included here in
+// the remote chance that this gets fixed someday.
+
+ return String(value);
+
+// If the type is 'object', we might be dealing with an object or an array or
+// null.
+
+ case 'object':
+
+// Due to a specification blunder in ECMAScript, typeof null is 'object',
+// so watch out for that case.
+
+ if (!value) {
+ return 'null';
+ }
+
+// Make an array to hold the partial results of stringifying this object value.
+
+ gap += indent;
+ partial = [];
+
+// Is the value an array?
+
+ if (Object.prototype.toString.apply(value) === '[object Array]') {
+
+// The value is an array. Stringify every element. Use null as a placeholder
+// for non-JSON values.
+
+ length = value.length;
+ for (i = 0; i < length; i += 1) {
+ partial[i] = str(i, value) || 'null';
+ }
+
+// Join all of the elements together, separated with commas, and wrap them in
+// brackets.
+
+ v = partial.length === 0
+ ? '[]'
+ : gap
+ ? '[\n' + gap + partial.join(',\n' + gap) + '\n' + mind + ']'
+ : '[' + partial.join(',') + ']';
+ gap = mind;
+ return v;
+ }
+
+// If the replacer is an array, use it to select the members to be stringified.
+
+ if (rep && typeof rep === 'object') {
+ length = rep.length;
+ for (i = 0; i < length; i += 1) {
+ if (typeof rep[i] === 'string') {
+ k = rep[i];
+ v = str(k, value);
+ if (v) {
+ partial.push(quote(k) + (gap ? ': ' : ':') + v);
+ }
+ }
+ }
+ } else {
+
+// Otherwise, iterate through all of the keys in the object.
+
+ for (k in value) {
+ if (Object.prototype.hasOwnProperty.call(value, k)) {
+ v = str(k, value);
+ if (v) {
+ partial.push(quote(k) + (gap ? ': ' : ':') + v);
+ }
+ }
+ }
+ }
+
+// Join all of the member texts together, separated with commas,
+// and wrap them in braces.
+
+ v = partial.length === 0
+ ? '{}'
+ : gap
+ ? '{\n' + gap + partial.join(',\n' + gap) + '\n' + mind + '}'
+ : '{' + partial.join(',') + '}';
+ gap = mind;
+ return v;
+ }
+ }
+
+// If the JSON object does not yet have a stringify method, give it one.
+
+ if (typeof JSON.stringify !== 'function') {
+ JSON.stringify = function (value, replacer, space) {
+
+// The stringify method takes a value and an optional replacer, and an optional
+// space parameter, and returns a JSON text. The replacer can be a function
+// that can replace values, or an array of strings that will select the keys.
+// A default replacer method can be provided. Use of the space parameter can
+// produce text that is more easily readable.
+
+ var i;
+ gap = '';
+ indent = '';
+
+// If the space parameter is a number, make an indent string containing that
+// many spaces.
+
+ if (typeof space === 'number') {
+ for (i = 0; i < space; i += 1) {
+ indent += ' ';
+ }
+
+// If the space parameter is a string, it will be used as the indent string.
+
+ } else if (typeof space === 'string') {
+ indent = space;
+ }
+
+// If there is a replacer, it must be a function or an array.
+// Otherwise, throw an error.
+
+ rep = replacer;
+ if (replacer && typeof replacer !== 'function' &&
+ (typeof replacer !== 'object' ||
+ typeof replacer.length !== 'number')) {
+ throw new Error('JSON.stringify');
+ }
+
+// Make a fake root object containing our value under the key of ''.
+// Return the result of stringifying the value.
+
+ return str('', {'': value});
+ };
+ }
+
+
+// If the JSON object does not yet have a parse method, give it one.
+
+ if (typeof JSON.parse !== 'function') {
+ JSON.parse = function (text, reviver) {
+
+// The parse method takes a text and an optional reviver function, and returns
+// a JavaScript value if the text is a valid JSON text.
+
+ var j;
+
+ function walk(holder, key) {
+
+// The walk method is used to recursively walk the resulting structure so
+// that modifications can be made.
+
+ var k, v, value = holder[key];
+ if (value && typeof value === 'object') {
+ for (k in value) {
+ if (Object.prototype.hasOwnProperty.call(value, k)) {
+ v = walk(value, k);
+ if (v !== undefined) {
+ value[k] = v;
+ } else {
+ delete value[k];
+ }
+ }
+ }
+ }
+ return reviver.call(holder, key, value);
+ }
+
+
+// Parsing happens in four stages. In the first stage, we replace certain
+// Unicode characters with escape sequences. JavaScript handles many characters
+// incorrectly, either silently deleting them, or treating them as line endings.
+
+ text = String(text);
+ cx.lastIndex = 0;
+ if (cx.test(text)) {
+ text = text.replace(cx, function (a) {
+ return '\\u' +
+ ('0000' + a.charCodeAt(0).toString(16)).slice(-4);
+ });
+ }
+
+// In the second stage, we run the text against regular expressions that look
+// for non-JSON patterns. We are especially concerned with '()' and 'new'
+// because they can cause invocation, and '=' because it can cause mutation.
+// But just to be safe, we want to reject all unexpected forms.
+
+// We split the second stage into 4 regexp operations in order to work around
+// crippling inefficiencies in IE's and Safari's regexp engines. First we
+// replace the JSON backslash pairs with '@' (a non-JSON character). Second, we
+// replace all simple value tokens with ']' characters. Third, we delete all
+// open brackets that follow a colon or comma or that begin the text. Finally,
+// we look to see that the remaining characters are only whitespace or ']' or
+// ',' or ':' or '{' or '}'. If that is so, then the text is safe for eval.
+
+ if (/^[\],:{}\s]*$/
+ .test(text.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g, '@')
+ .replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g, ']')
+ .replace(/(?:^|:|,)(?:\s*\[)+/g, ''))) {
+
+// In the third stage we use the eval function to compile the text into a
+// JavaScript structure. The '{' operator is subject to a syntactic ambiguity
+// in JavaScript: it can begin a block or an object literal. We wrap the text
+// in parens to eliminate the ambiguity.
+
+ j = eval('(' + text + ')');
+
+// In the optional fourth stage, we recursively walk the new structure, passing
+// each name/value pair to a reviver function for possible transformation.
+
+ return typeof reviver === 'function'
+ ? walk({'': j}, '')
+ : j;
+ }
+
+// If the text is not JSON parseable, then a SyntaxError is thrown.
+
+ throw new SyntaxError('JSON.parse');
+ };
+ }
+}());
diff --git a/uiframe-iui/src/main/resources/webroot/framework/js/login.js b/uiframe-iui/src/main/resources/webroot/framework/js/login.js
new file mode 100644
index 00000000..d8bcee94
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/js/login.js
@@ -0,0 +1,225 @@
+/*
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+String.prototype.trim = function() {
+ return this.replace(/(^\s*)|(\s*$)/g, "");
+};
+function loginSubmitHandler(form) {
+ var params = {};
+ params["username"] =$("#inputUserName").val().trim();
+ var sourcePass = $("#inputPassword").val();
+ var pass = sourcePass;
+ if( FrameConst.isEncypt === "true"){
+ pass = ict_framework_func1(pass);
+ }
+ params["password"] = pass;
+ params["isEncypted"] = FrameConst.isEncypt;
+ saveUserInfo(params);
+ $.ajax({
+ url : FrameConst.REST_LOGIN,
+ type : 'POST',
+ data : JSON.stringify(params),
+ dataType : 'json',
+ contentType : 'application/json; charset=utf-8',
+ success : function(data, status, xhr) {
+ if(data.result == 0){
+ var epass=CryptoJS.MD5(params.username+sourcePass);
+ store("icttka", epass.toLocaleString());
+ }
+ processLoginResult(data,params);
+ },
+ Error : function(xhr, error, exception) {
+ alert( error );
+ if( console ){
+ console.log( "login fail:" + error );
+ console.log( exception );
+ }
+ }
+ });
+};
+
+
+var Login = function () {
+
+ var handleLogin = function() {
+ $('.login-form').validate({
+ errorElement: 'span', //default input error message container
+ errorClass: 'help-block', // default input error message class
+ focusInvalid: false, // do not focus the last invalid input
+ rules: {
+ username: {
+ required: true
+ },
+ password: {
+ required: false
+ },
+ remember: {
+ required: false
+ }
+ },
+
+ messages: {
+ username: {
+ required: $.i18n.prop('com_zte_ums_ict_login_inputname').replace(/\"/g,'')
+ },
+ password: {
+ required: $.i18n.prop('com_zte_ums_ict_login_inputpwd').replace(/\"/g,'')
+ }
+ },
+
+ invalidHandler: function (event, validator) { //display error alert on form submit
+ $('.alert-danger', $('.login-form')).show();
+ },
+
+ highlight: function (element) { // hightlight error inputs
+ $(element)
+ .closest('.form-group').addClass('has-error'); // set error class to the control group
+ },
+
+ success: function (label) {
+ label.closest('.form-group').removeClass('has-error');
+ label.remove();
+ },
+
+ errorPlacement: function (error, element) {
+ error.insertAfter(element.closest('.input-icon'));
+ },
+
+ submitHandler: loginSubmitHandler
+ });
+
+ $('.login-form input').keypress(function (e) {
+ $("#nameOrpwdError").hide();
+ $("#loginConnError").hide();
+ if (e.which == 13) {
+ if ($('.login-form').validate().form()) {
+ $('.login-form').submit();
+ }
+ return false;
+ }
+ });
+
+ $("input[name='remember']").bind("click", function () {
+ saveUserInfo();
+ });
+ }
+
+ var handleForgetPassword = function () {
+ $('.forget-form').validate({
+ errorElement: 'span', //default input error message container
+ errorClass: 'help-block', // default input error message class
+ focusInvalid: false, // do not focus the last invalid input
+ ignore: "",
+ rules: {
+ email: {
+ required: true,
+ email: true
+ }
+ },
+
+ messages: {
+ email: {
+ required: "Email is required."
+ }
+ },
+
+ invalidHandler: function (event, validator) { //display error alert on form submit
+
+ },
+
+ highlight: function (element) { // hightlight error inputs
+ $(element)
+ .closest('.form-group').addClass('has-error'); // set error class to the control group
+ },
+
+ success: function (label) {
+ label.closest('.form-group').removeClass('has-error');
+ label.remove();
+ },
+
+ errorPlacement: function (error, element) {
+ error.insertAfter(element.closest('.input-icon'));
+ },
+
+ submitHandler: function (form) {
+ form.submit();
+ }
+ });
+
+ $('.forget-form input').keypress(function (e) {
+ if (e.which == 13) {
+ if ($('.forget-form').validate().form()) {
+ $('.forget-form').submit();
+ }
+ return false;
+ }
+ });
+
+ $('#forget-password').click(function () {
+ $('.login-form').hide();
+ $('.forget-form').show();
+ });
+
+ $('#back-btn').click(function () {
+ $('.login-form').show();
+ $('.forget-form').hide();
+ });
+
+ }
+ return {
+ //main function to initiate the module
+ init: function () {
+
+ handleLogin();
+ handleForgetPassword();
+
+ $.backstretch([
+ "img/integration/zte_bg_1.jpg",
+ "img/integration//zte_bg_2.jpg",
+ "img/integration//zte_bg_3.jpg"
+ ], {
+ fade: 500,
+ duration: 15000
+ });
+ }
+ };
+}();
+
+
+$(document).ready(function() {
+ if (store("remember") == "true") {
+ $("input[name='remember']").attr("checked", "checked");
+ $("#inputUserName").val(store("inputUserName"));
+ $("#inputPassword").val(store("inputPassword"));
+ }
+});
+
+
+function saveUserInfo(params) {
+ var rmbcheck=$("input[name='remember']");
+ if (rmbcheck.attr("checked")==true||rmbcheck.is(':checked')) {
+ var userName = $("#inputUserName").val();
+ var passWord = $("#inputPassword").val();
+ store("remember", "true");
+ store("inputUserName", params.username);
+ store("inputPassword", passWord);
+ }
+ else {
+ store.remove("remember");
+ store.remove("inputUserName");
+ store.remove("inputPassword");
+ }
+}
+
diff --git a/uiframe-iui/src/main/resources/webroot/framework/js/mainpage/about.js b/uiframe-iui/src/main/resources/webroot/framework/js/mainpage/about.js
new file mode 100644
index 00000000..fe880c34
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/js/mainpage/about.js
@@ -0,0 +1,142 @@
+/*
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+var iniAboutInfo = function() {
+
+ //转换colomn
+
+ var divId = "ict_about_table_div";
+ var tableId = "abouttable";
+ var column = [
+ {"mData": "name", name: $.i18n.prop('com_zte_ums_ict_about_ppu_field_name'), "sWidth": '20%'},
+ {"mData": "version", name: $.i18n.prop('com_zte_ums_ict_about_ppu_field_version'), "sWidth": '25%'},
+ {"mData": "describe", name: $.i18n.prop('com_zte_ums_ict_about_ppu_field_desc'), "sWidth": '25%'},
+ {"mData": "time", name: $.i18n.prop('com_zte_ums_ict_about_ppu_field_time'), "sWidth": '30%'}
+ ];
+ //先把原来的表格清空
+ $('#' + divId).children().remove();
+ var tableEleStr = '<table class="table table-striped table-bordered table-hover" id= ' + tableId + '>'
+ + '<thead>'
+ + '<tr role="row" class="heading" >'
+ + '</tr>'
+ + '</thead>'
+ + '<tbody>'
+ + '</tbody>'
+ + '</table>';
+ $('#' + divId).append(tableEleStr);
+ var trEle = $('#' + tableId + ' > thead >tr');
+
+ for (var one in column) {
+ var th = '<th>' + column[one].name + '</th>';
+ trEle.append(th);
+ }
+ var table = $("#" + tableId).dataTable({
+ "bFilter": false,// 搜索栏
+ "bPaginate":false,
+ "bInfo":false,
+ "bSort":false,
+ 'bAutoWidth':true
+ });
+ $.ajax({
+ type: "GET",
+ cache: false,
+ url: FrameConst.REST_GET_VERSIONINFO,
+ dataType: "json",
+ success: function (data) {
+ console.log(data);
+ //主版本号
+ $(".ict_main_version").append('<span>' + data.mainversion + '</span>');
+ //表格数据填充
+ for( var i = 0 ; i < data.ppuinfo.length ; i++ ) {
+ var eachPPU = data.ppuinfo[i];
+ $('#'+ tableId).dataTable().fnAddData([eachPPU.name ,eachPPU.version ,eachPPU.describe , eachPPU.time ]);
+ }
+ },
+ error: function (xhr, ajaxOptions, thrownError) {
+
+ }
+ });
+};
+
+function internationalization(){
+ var lang = getLanguage();
+ //加载国际化
+ jQuery.i18n.properties({
+ language:lang,
+ name:'web-framework-integration-i18n',
+ path:'i18n/', // 资源文件路径
+ mode:'map', // 用 Map 的方式使用资源文件中的值
+ callback: function() {// 加载成功后设置显示内容
+ var i18nItems = $('[name_i18n=com_zte_ums_ict_framework_ui_i18n]' , '.aboutDlg');
+ for(var i=0;i<i18nItems.length;i++){
+ var $item = $(i18nItems.eq(i));
+ var itemId = $item.attr('id');
+ if(typeof($item.attr("title"))!="undefined"){
+ $item.attr("title", $.i18n.prop(itemId));
+ }else{
+ $item.text($.i18n.prop(itemId));
+ }
+ }
+ }
+ });
+
+}
+
+function getAboutDlg(url){
+ if (url.length<2){
+ return;
+ }
+ ZteFrameWork.startPageLoading();//加载中....
+ var aboutDiv =jQuery('.modal-dialog .aboutDlg');
+ aboutDiv.empty();
+ $.ajax({
+ type: "GET",
+ cache: false,
+ url: url,
+ dataType: "html",
+ success: function (res) {
+ jQuery('.modal-dialog .aboutDlg').append(res);
+ iniAboutInfo();
+ internationalization();
+ ZteFrameWork.stopPageLoading();
+ },
+ error: function (xhr, ajaxOptions, thrownError) {
+
+ }
+ });
+};
+
+function iniAboutDlg(){
+ var url=jQuery('.modal-dialog .aboutDlg').attr("dlgsrc");
+ if(url&&url.length>0){
+ getAboutDlg(url);
+ }
+};
+
+var ict_about_dlg_close = function(){
+ link_click('about');
+ console.log("about click close");
+ $('#aboutDlg').modal('hide');
+};
+var link_click = function( pageName ){
+ console.log("about click change");
+ if(pageName === 'info'){
+ $('.aboutmain').attr("style" , "display:none");
+ $('.aboutinfo').attr("style" , "display:block");
+ }else{
+ $('.aboutmain').attr("style" , "display:block");
+ $('.aboutinfo').attr("style" , "display:none");
+ }
+};
diff --git a/uiframe-iui/src/main/resources/webroot/framework/js/mainpage/ict.main.page.js b/uiframe-iui/src/main/resources/webroot/framework/js/mainpage/ict.main.page.js
new file mode 100644
index 00000000..67f43678
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/js/mainpage/ict.main.page.js
@@ -0,0 +1,142 @@
+/*
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+var initMainPage = function(){
+ var modules;
+ var resConfig;
+
+ var lang = getLanguage();
+ var propertiesFileNamePrefix = "";
+ //var jsonUrl = "json/main-page-" + lang + ".json";
+ //var jsonUrl = mainpagePath;
+ var jsonUrl = "appRes/json/main-page.json";
+ var appResExist = false;
+
+ $.ajax({
+ async:false,
+ "type" : "GET",
+ url: jsonUrl,
+ dataType: "json",
+ "success" : function (res, textStatus, jqXHR) {
+ resConfig = res;
+ modules = res.modules;
+ propertiesFileNamePrefix = res.propertiesFileNamePrefix;
+ appResExist = true;
+ },
+ "error" : function () {
+ //alert("Config file load error!");
+ }
+ });
+
+ if(!appResExist){
+ jsonUrl = "json/main-page.json";
+ $.ajax({
+ async:false,
+ "type" : "GET",
+ url: jsonUrl,
+ dataType: "json",
+ "success" : function (res, textStatus, jqXHR) {
+ resConfig = res;
+ modules = res.modules;
+ propertiesFileNamePrefix = res.propertiesFileNamePrefix;
+ },
+ "error" : function () {
+ alert("Config file load error!");
+ }
+ });
+ }
+
+ var template = "<div class='brick {image}'>" +
+ "<a id='{linkId}' href='{url}' class='entranceLink'>" +
+ "<div class='row'>" +
+ "<div class='cover contentToggle'>{cover}</div>" +
+ "<div class='{toolsImage}'></div>" +
+ "<div class='contentTip contentToggle'>{contentTip}</div>" +
+ "</div>" +
+ "</a>" +
+ "</div>";
+
+ var templatePic = "<div class='brick {image}'>" +
+ "<div class='row'>" +
+ "<div class='cover contentToggle'>{cover}</div>" +
+ "<div class='{toolsImage}'></div>" +
+ "<div class='contentTip contentToggle'>{contentTip}</div>" +
+ "</div>" +
+ "</div>";
+
+ for (var i = 0; i < modules.length; ++i) {
+
+ if(!modules[i].background){
+ alert("Brick background missed!");
+ return;
+ }
+
+ var temp = "";
+
+ if(modules[i].linkId){
+ temp = template.replace("{linkId}", modules[i].linkId)
+ .replace("{image}", modules[i].background)
+ .replace("{toolsImage}", modules[i].toolsImage)
+ .replace("{url}", modules[i].url)
+ .replace("{contentTip}", modules[i].contentTip);
+ }else{
+ temp = templatePic.replace("{image}", modules[i].background)
+ .replace("{url}", modules[i].url)
+ .replace("{contentTip}", "");
+ }
+
+ if(modules[i].cover){
+ temp = temp.replace("{cover}", "<span id='" + modules[i].cover + "' name_i18n='com_zte_ums_ict_framework_ui_i18n'></span>");
+ }else{
+ temp = temp.replace("{cover}","");
+ }
+
+ $($(".column")[i % 4]).append(temp);
+
+ }
+
+
+ $(function() {
+
+ $("#headerName").html("<img src='" + resConfig.productImage + "' />" );
+
+ $(".brick").mouseover(function(){
+ $(".contentTip", this).fadeTo(1000, 1);
+ $(".cover", this).fadeOut(1000);
+ });
+
+ $(".brick").mouseout(function(){
+ $(".contentTip", this).fadeTo(1000, 0);
+ $(".cover", this).fadeIn(1000);
+ });
+
+ //添加模块导航链接
+// var parentPage = window.parent;
+// while(!parentPage.ZteFrameWork){
+// parentPage = parentPage.parent;
+// }
+ $("a.entranceLink").click(function(e){
+ e.preventDefault();
+ if($(this).attr("id") && $(this).attr("id") != "undefined"){
+ location.href = "default.html" + "#_" + $(this).attr("id");
+ }
+ });
+
+ //国际化
+ loadPropertiesSideMenu(lang, propertiesFileNamePrefix, "appRes/i18n/" , "com_zte_ums_ict_framework_ui_i18n");
+ //loadPropertiesSideMenu(lang, propertiesFileNamePrefix, "i18n/" , "com_zte_ums_ict_framework_ui_i18n");
+ loadPropertiesSideMenu(lang, "web-framework-integration-i18n", "i18n/" , "com_zte_ums_ict_framework_ui_i18n");
+ });
+} \ No newline at end of file
diff --git a/uiframe-iui/src/main/resources/webroot/framework/js/moreOperation.js b/uiframe-iui/src/main/resources/webroot/framework/js/moreOperation.js
new file mode 100644
index 00000000..e37132d6
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/js/moreOperation.js
@@ -0,0 +1,151 @@
+var resetSelectedItem=function(menuAlink){
+ if(menuAlink.children('div.boxOperation').length>0){
+ $(".box.boxOperation", $(".carousel-inner")).removeClass("moreButtonSelected");
+ menuAlink.children('div.boxOperation').addClass('moreButtonSelected');
+ }else if(menuAlink.parents('div.boxOperation').length>0){
+ $(".box.boxOperation", $(".carousel-inner")).removeClass("moreButtonSelected");
+ menuAlink.parents('div.boxOperation').addClass('moreButtonSelected');
+ }
+}
+var reSelected=function(){
+ if(ZteFrameWork){
+ var menuID = ZteFrameWork.getLocationHash();
+ var menuAlink = $('#'+ menuID,$('#pageableDiv'));
+ if(menuAlink.length>0){
+ resetSelectedItem(menuAlink);
+ }else{
+ menuAlink = $('#'+ menuID,$('.hor-menu'));
+ if(!!menuAlink.attr("defaultchildmenuid")&&menuAlink.attr("defaultchildmenuid").length>0){
+ menuAlink = $('#'+ menuAlink.attr("defaultchildmenuid"),$('#pageableDiv'));
+ if(menuAlink.length>0){
+ resetSelectedItem(menuAlink);
+ }
+ }
+ }
+ }
+}
+var inter=null;
+
+var clearMoreOperations=function(){
+ $('#pageableDiv').removeClass("moreOpen");
+ $('#pageableDiv').addClass("moreClose");
+ $('.col-xs-12',$('#pageableDiv')).removeClass("moreOpen");
+ $('.col-xs-12',$('#pageableDiv')).addClass("moreClose");
+ $(".carousel-inner").children().remove();
+ if (inter) {
+ clearInterval(inter);
+ };
+}
+
+var moreOperations = function(html){
+ $('#pageableDiv').removeClass("moreClose");
+ $('#pageableDiv').addClass("moreOpen");
+ $('.col-xs-12',$('#pageableDiv')).removeClass("moreClose");
+ $('.col-xs-12',$('#pageableDiv')).addClass("moreOpen");
+ showArrow();
+ $(".carousel-inner").children().remove();
+ inter=setInterval(reSelected, 200);
+ var moreViewData=[];
+ var div = document.createElement('div');
+ //div.innerHTML = html;
+ $(div).append(html);
+ var liTages =$("ul:first",div).children(); //div.getElementsByTagName('li')
+ for(var i=0;i<liTages.length;i++){
+ if(!$(liTages[i]).hasClass("divider")){
+ var aLink = {};
+ if($(liTages[i]).hasClass("dropdown")){//???????????
+ var _litages=$(liTages[i]);
+ aLink.html='<div class="box boxOperation">'+_litages.prop("outerHTML")+"</div>";
+ }else{
+ var aLinkTag = $("a", liTages[i]);
+ aLink.id = aLinkTag.attr("id");
+ var aLinkContent = aLinkTag.html();
+ aLinkTag.empty().html('<div class="box boxOperation"></div>');
+ $(".box", aLinkTag).html(aLinkContent);
+ aLink.html = aLinkTag.prop("outerHTML");
+ }
+ moreViewData.push(aLink);
+ }
+ }
+
+ var transformQueryViewData = function(queryViewData, pageSize){
+ var newData = [];
+ var pageNo = Math.floor(queryViewData.length / pageSize) + 1;
+ if(queryViewData.length % pageSize == 0){
+ pageNo--;
+ }
+ for(var i=0;i<pageNo;i++){
+ newData.push({array:[]});
+ }
+ for(var j=0;j<queryViewData.length;j++){
+ newData[Math.floor(j/pageSize)].array.push(queryViewData[j]);
+ }
+ return newData;
+ }
+
+ var moreOperationItems = [];
+
+ var generateOperationItems = function(){
+ for(var i=0;i<moreOperationItems.length;i++){
+ var itemHtml = '<div id="page_' + i + '" class="item moreButtonsTag">' +
+ '<div class="col-xs-12" style="padding-right: 20px;">' +
+ "</div>" +
+ "</div>";
+ $(".carousel-inner").append(itemHtml);
+ }
+ for(var i=0;i<moreOperationItems.length;i++){
+ for(var j=0;j<moreOperationItems[i].array.length;j++){
+ var buttonHtml = '<div class="moreButton boxPadding">' + moreOperationItems[i].array[j].html + '</div>';
+ $(".col-xs-12", $("#page_" + i + ".item")).append(buttonHtml);
+ }
+ }
+ }
+
+ //moreOperationItems = transformQueryViewData(moreViewData, 14);
+
+ var moreOperationPageSize = 14;
+ var windowWidth = $(window).width();
+ if(windowWidth >= 1367 && windowWidth < 1441){
+ moreOperationPageSize = 12;
+ }else if(windowWidth >= 1281 && windowWidth < 1367){
+ moreOperationPageSize = 11;
+ }else if(windowWidth >= 1025 && windowWidth < 1281){
+ moreOperationPageSize = 10;
+ }else if(windowWidth >= 920 && windowWidth < 1281){
+ moreOperationPageSize = 9;
+ }else if(windowWidth >= 820 && windowWidth < 920){
+ moreOperationPageSize = 8;
+ }else if(windowWidth >= 680 && windowWidth < 820){
+ moreOperationPageSize = 7;
+ }else if(windowWidth >= 540 && windowWidth < 680){
+ moreOperationPageSize = 4;
+ }else if(windowWidth >= 390 && windowWidth < 540){
+ moreOperationPageSize = 3;
+ }else if(windowWidth < 390){
+ moreOperationPageSize = 2;
+ }
+
+ moreOperationItems = transformQueryViewData(moreViewData, moreOperationPageSize);
+ generateOperationItems();
+
+ $(".box.boxOperation").click(function(){
+ $(".box.boxOperation", $(".carousel-inner")).removeClass("moreButtonSelected");
+ $(this).addClass("moreButtonSelected");
+ });
+
+ $($(".item", $(".carousel-inner"))[0]).addClass("active");
+
+ if($(".item.moreButtonsTag").length < 2){
+ hideArrow();
+ }
+}
+
+var showArrow = function(){
+ $(".carousel-control").show();
+ $(".boxOperation").removeClass("boxOperationOnePage");
+}
+
+var hideArrow = function(){
+ $(".carousel-control").hide();
+ $(".boxOperation").addClass("boxOperationOnePage");
+}
diff --git a/uiframe-iui/src/main/resources/webroot/framework/js/security/aes.js b/uiframe-iui/src/main/resources/webroot/framework/js/security/aes.js
new file mode 100644
index 00000000..bd18ef4c
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/js/security/aes.js
@@ -0,0 +1,50 @@
+/*
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/*
+CryptoJS v3.1.2
+code.google.com/p/crypto-js
+(c) 2009-2013 by Jeff Mott. All rights reserved.
+code.google.com/p/crypto-js/wiki/License
+*/
+var CryptoJS=CryptoJS||function(u,p){var d={},l=d.lib={},s=function(){},t=l.Base={extend:function(a){s.prototype=this;var c=new s;a&&c.mixIn(a);c.hasOwnProperty("init")||(c.init=function(){c.$super.init.apply(this,arguments)});c.init.prototype=c;c.$super=this;return c},create:function(){var a=this.extend();a.init.apply(a,arguments);return a},init:function(){},mixIn:function(a){for(var c in a)a.hasOwnProperty(c)&&(this[c]=a[c]);a.hasOwnProperty("toString")&&(this.toString=a.toString)},clone:function(){return this.init.prototype.extend(this)}},
+r=l.WordArray=t.extend({init:function(a,c){a=this.words=a||[];this.sigBytes=c!=p?c:4*a.length},toString:function(a){return(a||v).stringify(this)},concat:function(a){var c=this.words,e=a.words,j=this.sigBytes;a=a.sigBytes;this.clamp();if(j%4)for(var k=0;k<a;k++)c[j+k>>>2]|=(e[k>>>2]>>>24-8*(k%4)&255)<<24-8*((j+k)%4);else if(65535<e.length)for(k=0;k<a;k+=4)c[j+k>>>2]=e[k>>>2];else c.push.apply(c,e);this.sigBytes+=a;return this},clamp:function(){var a=this.words,c=this.sigBytes;a[c>>>2]&=4294967295<<
+32-8*(c%4);a.length=u.ceil(c/4)},clone:function(){var a=t.clone.call(this);a.words=this.words.slice(0);return a},random:function(a){for(var c=[],e=0;e<a;e+=4)c.push(4294967296*u.random()|0);return new r.init(c,a)}}),w=d.enc={},v=w.Hex={stringify:function(a){var c=a.words;a=a.sigBytes;for(var e=[],j=0;j<a;j++){var k=c[j>>>2]>>>24-8*(j%4)&255;e.push((k>>>4).toString(16));e.push((k&15).toString(16))}return e.join("")},parse:function(a){for(var c=a.length,e=[],j=0;j<c;j+=2)e[j>>>3]|=parseInt(a.substr(j,
+2),16)<<24-4*(j%8);return new r.init(e,c/2)}},b=w.Latin1={stringify:function(a){var c=a.words;a=a.sigBytes;for(var e=[],j=0;j<a;j++)e.push(String.fromCharCode(c[j>>>2]>>>24-8*(j%4)&255));return e.join("")},parse:function(a){for(var c=a.length,e=[],j=0;j<c;j++)e[j>>>2]|=(a.charCodeAt(j)&255)<<24-8*(j%4);return new r.init(e,c)}},x=w.Utf8={stringify:function(a){try{return decodeURIComponent(escape(b.stringify(a)))}catch(c){throw Error("Malformed UTF-8 data");}},parse:function(a){return b.parse(unescape(encodeURIComponent(a)))}},
+q=l.BufferedBlockAlgorithm=t.extend({reset:function(){this._data=new r.init;this._nDataBytes=0},_append:function(a){"string"==typeof a&&(a=x.parse(a));this._data.concat(a);this._nDataBytes+=a.sigBytes},_process:function(a){var c=this._data,e=c.words,j=c.sigBytes,k=this.blockSize,b=j/(4*k),b=a?u.ceil(b):u.max((b|0)-this._minBufferSize,0);a=b*k;j=u.min(4*a,j);if(a){for(var q=0;q<a;q+=k)this._doProcessBlock(e,q);q=e.splice(0,a);c.sigBytes-=j}return new r.init(q,j)},clone:function(){var a=t.clone.call(this);
+a._data=this._data.clone();return a},_minBufferSize:0});l.Hasher=q.extend({cfg:t.extend(),init:function(a){this.cfg=this.cfg.extend(a);this.reset()},reset:function(){q.reset.call(this);this._doReset()},update:function(a){this._append(a);this._process();return this},finalize:function(a){a&&this._append(a);return this._doFinalize()},blockSize:16,_createHelper:function(a){return function(b,e){return(new a.init(e)).finalize(b)}},_createHmacHelper:function(a){return function(b,e){return(new n.HMAC.init(a,
+e)).finalize(b)}}});var n=d.algo={};return d}(Math);
+(function(){var u=CryptoJS,p=u.lib.WordArray;u.enc.Base64={stringify:function(d){var l=d.words,p=d.sigBytes,t=this._map;d.clamp();d=[];for(var r=0;r<p;r+=3)for(var w=(l[r>>>2]>>>24-8*(r%4)&255)<<16|(l[r+1>>>2]>>>24-8*((r+1)%4)&255)<<8|l[r+2>>>2]>>>24-8*((r+2)%4)&255,v=0;4>v&&r+0.75*v<p;v++)d.push(t.charAt(w>>>6*(3-v)&63));if(l=t.charAt(64))for(;d.length%4;)d.push(l);return d.join("")},parse:function(d){var l=d.length,s=this._map,t=s.charAt(64);t&&(t=d.indexOf(t),-1!=t&&(l=t));for(var t=[],r=0,w=0;w<
+l;w++)if(w%4){var v=s.indexOf(d.charAt(w-1))<<2*(w%4),b=s.indexOf(d.charAt(w))>>>6-2*(w%4);t[r>>>2]|=(v|b)<<24-8*(r%4);r++}return p.create(t,r)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="}})();
+(function(u){function p(b,n,a,c,e,j,k){b=b+(n&a|~n&c)+e+k;return(b<<j|b>>>32-j)+n}function d(b,n,a,c,e,j,k){b=b+(n&c|a&~c)+e+k;return(b<<j|b>>>32-j)+n}function l(b,n,a,c,e,j,k){b=b+(n^a^c)+e+k;return(b<<j|b>>>32-j)+n}function s(b,n,a,c,e,j,k){b=b+(a^(n|~c))+e+k;return(b<<j|b>>>32-j)+n}for(var t=CryptoJS,r=t.lib,w=r.WordArray,v=r.Hasher,r=t.algo,b=[],x=0;64>x;x++)b[x]=4294967296*u.abs(u.sin(x+1))|0;r=r.MD5=v.extend({_doReset:function(){this._hash=new w.init([1732584193,4023233417,2562383102,271733878])},
+_doProcessBlock:function(q,n){for(var a=0;16>a;a++){var c=n+a,e=q[c];q[c]=(e<<8|e>>>24)&16711935|(e<<24|e>>>8)&4278255360}var a=this._hash.words,c=q[n+0],e=q[n+1],j=q[n+2],k=q[n+3],z=q[n+4],r=q[n+5],t=q[n+6],w=q[n+7],v=q[n+8],A=q[n+9],B=q[n+10],C=q[n+11],u=q[n+12],D=q[n+13],E=q[n+14],x=q[n+15],f=a[0],m=a[1],g=a[2],h=a[3],f=p(f,m,g,h,c,7,b[0]),h=p(h,f,m,g,e,12,b[1]),g=p(g,h,f,m,j,17,b[2]),m=p(m,g,h,f,k,22,b[3]),f=p(f,m,g,h,z,7,b[4]),h=p(h,f,m,g,r,12,b[5]),g=p(g,h,f,m,t,17,b[6]),m=p(m,g,h,f,w,22,b[7]),
+f=p(f,m,g,h,v,7,b[8]),h=p(h,f,m,g,A,12,b[9]),g=p(g,h,f,m,B,17,b[10]),m=p(m,g,h,f,C,22,b[11]),f=p(f,m,g,h,u,7,b[12]),h=p(h,f,m,g,D,12,b[13]),g=p(g,h,f,m,E,17,b[14]),m=p(m,g,h,f,x,22,b[15]),f=d(f,m,g,h,e,5,b[16]),h=d(h,f,m,g,t,9,b[17]),g=d(g,h,f,m,C,14,b[18]),m=d(m,g,h,f,c,20,b[19]),f=d(f,m,g,h,r,5,b[20]),h=d(h,f,m,g,B,9,b[21]),g=d(g,h,f,m,x,14,b[22]),m=d(m,g,h,f,z,20,b[23]),f=d(f,m,g,h,A,5,b[24]),h=d(h,f,m,g,E,9,b[25]),g=d(g,h,f,m,k,14,b[26]),m=d(m,g,h,f,v,20,b[27]),f=d(f,m,g,h,D,5,b[28]),h=d(h,f,
+m,g,j,9,b[29]),g=d(g,h,f,m,w,14,b[30]),m=d(m,g,h,f,u,20,b[31]),f=l(f,m,g,h,r,4,b[32]),h=l(h,f,m,g,v,11,b[33]),g=l(g,h,f,m,C,16,b[34]),m=l(m,g,h,f,E,23,b[35]),f=l(f,m,g,h,e,4,b[36]),h=l(h,f,m,g,z,11,b[37]),g=l(g,h,f,m,w,16,b[38]),m=l(m,g,h,f,B,23,b[39]),f=l(f,m,g,h,D,4,b[40]),h=l(h,f,m,g,c,11,b[41]),g=l(g,h,f,m,k,16,b[42]),m=l(m,g,h,f,t,23,b[43]),f=l(f,m,g,h,A,4,b[44]),h=l(h,f,m,g,u,11,b[45]),g=l(g,h,f,m,x,16,b[46]),m=l(m,g,h,f,j,23,b[47]),f=s(f,m,g,h,c,6,b[48]),h=s(h,f,m,g,w,10,b[49]),g=s(g,h,f,m,
+E,15,b[50]),m=s(m,g,h,f,r,21,b[51]),f=s(f,m,g,h,u,6,b[52]),h=s(h,f,m,g,k,10,b[53]),g=s(g,h,f,m,B,15,b[54]),m=s(m,g,h,f,e,21,b[55]),f=s(f,m,g,h,v,6,b[56]),h=s(h,f,m,g,x,10,b[57]),g=s(g,h,f,m,t,15,b[58]),m=s(m,g,h,f,D,21,b[59]),f=s(f,m,g,h,z,6,b[60]),h=s(h,f,m,g,C,10,b[61]),g=s(g,h,f,m,j,15,b[62]),m=s(m,g,h,f,A,21,b[63]);a[0]=a[0]+f|0;a[1]=a[1]+m|0;a[2]=a[2]+g|0;a[3]=a[3]+h|0},_doFinalize:function(){var b=this._data,n=b.words,a=8*this._nDataBytes,c=8*b.sigBytes;n[c>>>5]|=128<<24-c%32;var e=u.floor(a/
+4294967296);n[(c+64>>>9<<4)+15]=(e<<8|e>>>24)&16711935|(e<<24|e>>>8)&4278255360;n[(c+64>>>9<<4)+14]=(a<<8|a>>>24)&16711935|(a<<24|a>>>8)&4278255360;b.sigBytes=4*(n.length+1);this._process();b=this._hash;n=b.words;for(a=0;4>a;a++)c=n[a],n[a]=(c<<8|c>>>24)&16711935|(c<<24|c>>>8)&4278255360;return b},clone:function(){var b=v.clone.call(this);b._hash=this._hash.clone();return b}});t.MD5=v._createHelper(r);t.HmacMD5=v._createHmacHelper(r)})(Math);
+(function(){var u=CryptoJS,p=u.lib,d=p.Base,l=p.WordArray,p=u.algo,s=p.EvpKDF=d.extend({cfg:d.extend({keySize:4,hasher:p.MD5,iterations:1}),init:function(d){this.cfg=this.cfg.extend(d)},compute:function(d,r){for(var p=this.cfg,s=p.hasher.create(),b=l.create(),u=b.words,q=p.keySize,p=p.iterations;u.length<q;){n&&s.update(n);var n=s.update(d).finalize(r);s.reset();for(var a=1;a<p;a++)n=s.finalize(n),s.reset();b.concat(n)}b.sigBytes=4*q;return b}});u.EvpKDF=function(d,l,p){return s.create(p).compute(d,
+l)}})();
+CryptoJS.lib.Cipher||function(u){var p=CryptoJS,d=p.lib,l=d.Base,s=d.WordArray,t=d.BufferedBlockAlgorithm,r=p.enc.Base64,w=p.algo.EvpKDF,v=d.Cipher=t.extend({cfg:l.extend(),createEncryptor:function(e,a){return this.create(this._ENC_XFORM_MODE,e,a)},createDecryptor:function(e,a){return this.create(this._DEC_XFORM_MODE,e,a)},init:function(e,a,b){this.cfg=this.cfg.extend(b);this._xformMode=e;this._key=a;this.reset()},reset:function(){t.reset.call(this);this._doReset()},process:function(e){this._append(e);return this._process()},
+finalize:function(e){e&&this._append(e);return this._doFinalize()},keySize:4,ivSize:4,_ENC_XFORM_MODE:1,_DEC_XFORM_MODE:2,_createHelper:function(e){return{encrypt:function(b,k,d){return("string"==typeof k?c:a).encrypt(e,b,k,d)},decrypt:function(b,k,d){return("string"==typeof k?c:a).decrypt(e,b,k,d)}}}});d.StreamCipher=v.extend({_doFinalize:function(){return this._process(!0)},blockSize:1});var b=p.mode={},x=function(e,a,b){var c=this._iv;c?this._iv=u:c=this._prevBlock;for(var d=0;d<b;d++)e[a+d]^=
+c[d]},q=(d.BlockCipherMode=l.extend({createEncryptor:function(e,a){return this.Encryptor.create(e,a)},createDecryptor:function(e,a){return this.Decryptor.create(e,a)},init:function(e,a){this._cipher=e;this._iv=a}})).extend();q.Encryptor=q.extend({processBlock:function(e,a){var b=this._cipher,c=b.blockSize;x.call(this,e,a,c);b.encryptBlock(e,a);this._prevBlock=e.slice(a,a+c)}});q.Decryptor=q.extend({processBlock:function(e,a){var b=this._cipher,c=b.blockSize,d=e.slice(a,a+c);b.decryptBlock(e,a);x.call(this,
+e,a,c);this._prevBlock=d}});b=b.CBC=q;q=(p.pad={}).Pkcs7={pad:function(a,b){for(var c=4*b,c=c-a.sigBytes%c,d=c<<24|c<<16|c<<8|c,l=[],n=0;n<c;n+=4)l.push(d);c=s.create(l,c);a.concat(c)},unpad:function(a){a.sigBytes-=a.words[a.sigBytes-1>>>2]&255}};d.BlockCipher=v.extend({cfg:v.cfg.extend({mode:b,padding:q}),reset:function(){v.reset.call(this);var a=this.cfg,b=a.iv,a=a.mode;if(this._xformMode==this._ENC_XFORM_MODE)var c=a.createEncryptor;else c=a.createDecryptor,this._minBufferSize=1;this._mode=c.call(a,
+this,b&&b.words)},_doProcessBlock:function(a,b){this._mode.processBlock(a,b)},_doFinalize:function(){var a=this.cfg.padding;if(this._xformMode==this._ENC_XFORM_MODE){a.pad(this._data,this.blockSize);var b=this._process(!0)}else b=this._process(!0),a.unpad(b);return b},blockSize:4});var n=d.CipherParams=l.extend({init:function(a){this.mixIn(a)},toString:function(a){return(a||this.formatter).stringify(this)}}),b=(p.format={}).OpenSSL={stringify:function(a){var b=a.ciphertext;a=a.salt;return(a?s.create([1398893684,
+1701076831]).concat(a).concat(b):b).toString(r)},parse:function(a){a=r.parse(a);var b=a.words;if(1398893684==b[0]&&1701076831==b[1]){var c=s.create(b.slice(2,4));b.splice(0,4);a.sigBytes-=16}return n.create({ciphertext:a,salt:c})}},a=d.SerializableCipher=l.extend({cfg:l.extend({format:b}),encrypt:function(a,b,c,d){d=this.cfg.extend(d);var l=a.createEncryptor(c,d);b=l.finalize(b);l=l.cfg;return n.create({ciphertext:b,key:c,iv:l.iv,algorithm:a,mode:l.mode,padding:l.padding,blockSize:a.blockSize,formatter:d.format})},
+decrypt:function(a,b,c,d){d=this.cfg.extend(d);b=this._parse(b,d.format);return a.createDecryptor(c,d).finalize(b.ciphertext)},_parse:function(a,b){return"string"==typeof a?b.parse(a,this):a}}),p=(p.kdf={}).OpenSSL={execute:function(a,b,c,d){d||(d=s.random(8));a=w.create({keySize:b+c}).compute(a,d);c=s.create(a.words.slice(b),4*c);a.sigBytes=4*b;return n.create({key:a,iv:c,salt:d})}},c=d.PasswordBasedCipher=a.extend({cfg:a.cfg.extend({kdf:p}),encrypt:function(b,c,d,l){l=this.cfg.extend(l);d=l.kdf.execute(d,
+b.keySize,b.ivSize);l.iv=d.iv;b=a.encrypt.call(this,b,c,d.key,l);b.mixIn(d);return b},decrypt:function(b,c,d,l){l=this.cfg.extend(l);c=this._parse(c,l.format);d=l.kdf.execute(d,b.keySize,b.ivSize,c.salt);l.iv=d.iv;return a.decrypt.call(this,b,c,d.key,l)}})}();
+(function(){for(var u=CryptoJS,p=u.lib.BlockCipher,d=u.algo,l=[],s=[],t=[],r=[],w=[],v=[],b=[],x=[],q=[],n=[],a=[],c=0;256>c;c++)a[c]=128>c?c<<1:c<<1^283;for(var e=0,j=0,c=0;256>c;c++){var k=j^j<<1^j<<2^j<<3^j<<4,k=k>>>8^k&255^99;l[e]=k;s[k]=e;var z=a[e],F=a[z],G=a[F],y=257*a[k]^16843008*k;t[e]=y<<24|y>>>8;r[e]=y<<16|y>>>16;w[e]=y<<8|y>>>24;v[e]=y;y=16843009*G^65537*F^257*z^16843008*e;b[k]=y<<24|y>>>8;x[k]=y<<16|y>>>16;q[k]=y<<8|y>>>24;n[k]=y;e?(e=z^a[a[a[G^z]]],j^=a[a[j]]):e=j=1}var H=[0,1,2,4,8,
+16,32,64,128,27,54],d=d.AES=p.extend({_doReset:function(){for(var a=this._key,c=a.words,d=a.sigBytes/4,a=4*((this._nRounds=d+6)+1),e=this._keySchedule=[],j=0;j<a;j++)if(j<d)e[j]=c[j];else{var k=e[j-1];j%d?6<d&&4==j%d&&(k=l[k>>>24]<<24|l[k>>>16&255]<<16|l[k>>>8&255]<<8|l[k&255]):(k=k<<8|k>>>24,k=l[k>>>24]<<24|l[k>>>16&255]<<16|l[k>>>8&255]<<8|l[k&255],k^=H[j/d|0]<<24);e[j]=e[j-d]^k}c=this._invKeySchedule=[];for(d=0;d<a;d++)j=a-d,k=d%4?e[j]:e[j-4],c[d]=4>d||4>=j?k:b[l[k>>>24]]^x[l[k>>>16&255]]^q[l[k>>>
+8&255]]^n[l[k&255]]},encryptBlock:function(a,b){this._doCryptBlock(a,b,this._keySchedule,t,r,w,v,l)},decryptBlock:function(a,c){var d=a[c+1];a[c+1]=a[c+3];a[c+3]=d;this._doCryptBlock(a,c,this._invKeySchedule,b,x,q,n,s);d=a[c+1];a[c+1]=a[c+3];a[c+3]=d},_doCryptBlock:function(a,b,c,d,e,j,l,f){for(var m=this._nRounds,g=a[b]^c[0],h=a[b+1]^c[1],k=a[b+2]^c[2],n=a[b+3]^c[3],p=4,r=1;r<m;r++)var q=d[g>>>24]^e[h>>>16&255]^j[k>>>8&255]^l[n&255]^c[p++],s=d[h>>>24]^e[k>>>16&255]^j[n>>>8&255]^l[g&255]^c[p++],t=
+d[k>>>24]^e[n>>>16&255]^j[g>>>8&255]^l[h&255]^c[p++],n=d[n>>>24]^e[g>>>16&255]^j[h>>>8&255]^l[k&255]^c[p++],g=q,h=s,k=t;q=(f[g>>>24]<<24|f[h>>>16&255]<<16|f[k>>>8&255]<<8|f[n&255])^c[p++];s=(f[h>>>24]<<24|f[k>>>16&255]<<16|f[n>>>8&255]<<8|f[g&255])^c[p++];t=(f[k>>>24]<<24|f[n>>>16&255]<<16|f[g>>>8&255]<<8|f[h&255])^c[p++];n=(f[n>>>24]<<24|f[g>>>16&255]<<16|f[h>>>8&255]<<8|f[k&255])^c[p++];a[b]=q;a[b+1]=s;a[b+2]=t;a[b+3]=n},keySize:8});u.AES=p._createHelper(d)})();
diff --git a/uiframe-iui/src/main/resources/webroot/framework/js/security/changepwd.js b/uiframe-iui/src/main/resources/webroot/framework/js/security/changepwd.js
new file mode 100644
index 00000000..72452372
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/js/security/changepwd.js
@@ -0,0 +1,191 @@
+/*
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+var ChangePWD = function () {
+ $.validator.addMethod("passwordCheck", function() {
+ if( $('#password').attr('type') == 'text' && $('#rpassword').attr('type') == 'text'){
+ return true;
+ }
+ if( $('#password').attr('type') == 'password' && $('#rpassword').attr('type') == 'password' ){
+ if($('#password').val() == $('#rpassword').val() ){
+ return true;
+ }
+ }
+ if($('#password').val() =='' && $('#rpassword').attr('type') == 'text' || $('#rpassword').val() =='' && $('#password').attr('type')){
+ return true;
+ }
+ return false;
+ });
+ var handleLogin = function () {
+ $('.login-form').validate({
+ errorElement : 'span', //default input error message container
+ errorClass : 'help-block', // default input error message class
+ focusInvalid : true, // do not focus the last invalid input
+ onfocusout : function (element) {
+ $(element).valid();
+ },
+ rules : {
+ oldpassword : {
+ required : false
+ },
+ password : {
+ required : false
+ },
+ rpassword : {
+ required : false,
+ passwordCheck : true
+ }
+ },
+
+ messages : {
+ oldpassword : {
+ required : $.i18n.prop('com_zte_ums_ict_sm_user_inputoldpwd')
+ },
+ password : {
+ required : $.i18n.prop('com_zte_ums_ict_sm_user_inputnewpwd')
+ },
+ rpassword : {
+ required : $.i18n.prop('com_zte_ums_ict_sm_user_inputnewpwdagain'),
+ equalTo : $.i18n.prop('com_zte_ums_ict_sm_password_confirm_not_consistent'),
+ passwordCheck : $.i18n.prop('com_zte_ums_ict_sm_password_confirm_not_consistent'),
+ }
+ },
+
+ invalidHandler : function (event, validator) { //display error alert on form submit
+ $('.alert-danger', $('.login-form')).show();
+ },
+
+ highlight : function (element) { // hightlight error inputs
+ $(element)
+ .closest('.form-group').addClass('has-error'); // set error class to the control group
+ },
+
+ success : function (label) {
+ label.closest('.form-group').removeClass('has-error');
+ label.remove();
+ },
+
+ errorPlacement : function (error, element) {
+ error.insertAfter(element.closest('.input-icon'));
+ },
+
+ submitHandler : function (form) {
+ // form.submit();
+ var params = {};
+ var currentUser = httpRequest("GET", FrameConst.REST_GET_USERNAME, "");
+ params["userName"] = currentUser;
+ params["password"] = $("#oldpassword").attr('type')=='password' ? $("#oldpassword").val() : '';
+ params["newPassword"] = $("#password").attr('type')=='password' ? $("#password").val() : '';
+ params["confirmPassword"] = $("#rpassword").attr('type')=='password' ? $("#rpassword").val() : '';
+
+
+ jQuery('#submitBtn').prop("disabled", true);
+ $.ajax({
+ type : "POST",
+ url : "/web/rest/sm/user/modifyCurrentPassword",
+ data : params,
+ dataType : "json",
+ success : function (data) {
+ var returnValue = data;
+
+ if (returnValue && returnValue.result == 1) {
+ bootbox.alert($.i18n.prop('com_zte_ums_ict_sm_user_op_ok'), function () {
+ window.closeModal('changepwdDlg');
+ });
+ } else {
+ bootbox.alert(returnValue.response.data);
+ }
+ jQuery('#submitBtn').prop("disabled", false);
+ },
+ error : function (xhr, ajaxOptions, thrownError) {
+ jQuery('#submitBtn').prop("disabled", false);
+ }
+ });
+
+ }
+ });
+
+ $('.login-form input').keypress(function (e) {
+ $("#nameOrpwdError").hide();
+ if (e.which == 13) {
+ if ($('.login-form').validate().form()) {
+ $('.login-form').submit();
+ }
+ return false;
+ }
+ });
+ }
+ var handleI18n = function () {
+ $("#com_zte_ums_ict_sm_user_modify_current_password").text($.i18n.prop('com_zte_ums_ict_sm_user_modify_current_password'));
+ $("#com_zte_ums_ict_sm_user_old_password").text($.i18n.prop('com_zte_ums_ict_sm_user_old_password'));
+ $("#com_zte_ums_ict_sm_user_password").text($.i18n.prop('com_zte_ums_ict_sm_user_password'));
+ $("#com_zte_ums_ict_sm_user_confirmpassword").text($.i18n.prop('com_zte_ums_ict_sm_user_confirmpassword'));
+
+ $("#oldpassword").attr("placeholder", $.i18n.prop('com_zte_ums_ict_sm_user_old_password'));
+ $("#password").attr("placeholder", $.i18n.prop('com_zte_ums_ict_sm_user_password'));
+ $("#rpassword").attr("placeholder", $.i18n.prop('com_zte_ums_ict_sm_user_confirmpassword'));
+
+ $("#com_zte_ums_ict_sm_user_ok").text($.i18n.prop('com_zte_ums_ict_sm_user_ok'));
+ $("#com_zte_ums_ict_sm_user_cancel_button").text($.i18n.prop('com_zte_ums_ict_sm_user_cancel_button'));
+
+ }
+ var handleShowModalEvent = function () {
+ $('#changepwdDlg').on('show.bs.modal', function (e) {
+ $("#oldpassword").val("");
+ $("#password").val("");
+ $("#rpassword").val("");
+ $(".has-error", this).removeClass("has-error");
+ $("span.help-block", this).hide();
+
+ if(!('placeholder' in document.createElement('input'))){ // �ж�������Ƿ�֧�� placeholder,ie9��֧�֣���Ҫ���⴦��
+ $("#rpassword").rules("remove", "equalTo");
+ $('[placeholder]').focus(function() {
+ var input = $(this);
+ input.attr('type','password');
+ $("#rpassword").rules("add", {
+ passwordCheck :true
+ });
+ if (input.val() == input.attr('placeholder')) {
+ input.val('');
+
+ }
+ }).blur(function() {
+ var input = $(this);
+ if (input.val() == '' || input.val() == input.attr('placeholder')) {
+ input.attr('type','text');
+ $("#rpassword").rules("remove", "passwordCheck");
+
+ input.val(input.attr('placeholder'));
+
+ }
+ }).blur();
+
+
+ //
+ };
+
+
+ });
+ }
+ return {
+ //main function to initiate the module
+ init : function () {
+ handleI18n();
+ handleShowModalEvent();
+ handleLogin();
+ }
+ };
+}
+();
diff --git a/uiframe-iui/src/main/resources/webroot/framework/js/security/framework-util.js b/uiframe-iui/src/main/resources/webroot/framework/js/security/framework-util.js
new file mode 100644
index 00000000..a3781125
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/js/security/framework-util.js
@@ -0,0 +1,38 @@
+/*
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+function ict_framework_func1(word){
+ var a1 = CryptoJS.enc.Utf8.parse(ict_framework_aes_a1);
+ var a2 = CryptoJS.enc.Utf8.parse(ict_framework_aes_a2);
+ var srcs = CryptoJS.enc.Utf8.parse(word);
+ var encrypted = CryptoJS.AES.encrypt(srcs, a1, { iv: a2,mode:CryptoJS.mode.CBC});
+ return encrypted.toString();
+}
+
+function ict_framework_func2(word){
+ var a1 = CryptoJS.enc.Utf8.parse(ict_framework_aes_a1);
+ var a2 = CryptoJS.enc.Utf8.parse(ict_framework_aes_a2);
+ var decrypt = CryptoJS.AES.decrypt(word, a1, { iv: a2,mode:CryptoJS.mode.CBC});
+ return CryptoJS.enc.Utf8.stringify(decrypt).toString();
+}
+
+
+
+
+
+
+
+var ict_framework_aes_a1 = "9763853428462486";
+var ict_framework_aes_a2 = "9763853428462486"; \ No newline at end of file
diff --git a/uiframe-iui/src/main/resources/webroot/framework/js/security/security.js b/uiframe-iui/src/main/resources/webroot/framework/js/security/security.js
new file mode 100644
index 00000000..b900890b
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/js/security/security.js
@@ -0,0 +1,127 @@
+/*
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+var ErrResult_LOGIN_SUCCESS = 0;
+var ErrResult_LOGIN_FAILURE = 4;
+var ErrResult_LOGIN_SUCCESS_WARN = 1;
+var ErrResult_LOGIN_SUCCESS_PASSWORD_WARN = 2;
+var ErrResult_LOGIN_SUCCESS_PASSWORD_MUSTCHANGE = 3;
+var ErrResult_LOGIN_SERV_ERROR = -1;
+
+function processLoginResult(data,params){
+ if(data.home="web/res/web-framework/index.html"||data.home.indexOf("index.html")>0){
+ data.home=FrameConst.DEFAULT_LOGINSKIP_PAGE;
+ //下面这部分是为了演示需要临时增加的自动切换
+ /*if(params.username=="admin1"){
+ data.home="/web/res/web-framework/default.html?menu=1";
+ }else if(params.username=="admin2"){
+ data.home="/web/res/web-framework/default.html?menu=2";
+ }else if(params.username=="admin3"){
+ data.home="/web/res/web-framework/default.html?menu=3";
+ }else if(params.username=="admin4"){
+ data.home="/web/res/web-framework/default.html?menu=4";
+ }else if(params.username=="admin5"){
+ data.home="/web/res/web-framework/default.html?menu=5";
+ }else if(params.username=="admin6"){
+ data.home="/web/res/web-framework/default.html?menu=6";
+ }else if(params.username=="admin7"){
+ data.home="/web/res/web-framework/default.html?menu=7";
+ }*/
+ }
+ var toHomePage = function(){
+ location.href = data.home;
+ }
+
+ var loginHander = function(inParams){
+ if(inParams != undefined){
+ login(inParams);
+ }
+ else{
+ login(params);
+ }
+ }
+
+ var errors = data.detail;
+ if(data.result == 0){
+ store('username',params.username);
+ if(errors){
+ if(errors.code==ErrResult_LOGIN_SUCCESS_PASSWORD_WARN){
+
+ com_zte_ums_aos_portal_PasswordDialog.create({
+ ID : "LOGIN_MODIFY_PASSWORD",
+ username : params.username,
+ oldPassword : ict_framework_func2(params.password),
+ descLabel : errors[ErrResult_LOGIN_SUCCESS_PASSWORD_WARN],
+ cancelHander : toHomePage,
+ confirmHander : toHomePage
+ });
+ LOGIN_MODIFY_PASSWORD.show();
+ }
+ else if(errors.code==ErrResult_LOGIN_SUCCESS_WARN){
+ window.alert(errors[ErrResult_LOGIN_SUCCESS_WARN],toHomePage);
+ }
+ else {
+ location.href = data.home;
+ }
+ }
+ else {
+ location.href = data.home;
+ }
+ }
+ else {
+ if(errors.code==ErrResult_LOGIN_SUCCESS_PASSWORD_MUSTCHANGE){
+ com_zte_ums_aos_portal_PasswordDialog.create({
+ ID : "LOGIN_MODIFY_PASSWORD",
+ username : params.username,
+ oldPassword : ict_framework_func2(params.password),
+ descLabel : errors[ErrResult_LOGIN_SUCCESS_PASSWORD_MUSTCHANGE],
+ confirmHander : loginHander
+
+ });
+ LOGIN_MODIFY_PASSWORD.show();
+ }
+ else if(errors.code==ErrResult_LOGIN_FAILURE){
+ $("#nameOrpwdError").addClass('alert-danger');
+ $("#com_zte_ums_ict_portal_login_userPassword").html(errors[ErrResult_LOGIN_FAILURE]);
+ var tip = $("#nameOrpwdError");
+ if (tip.attr("tipstatus") == "normal") {
+ tip.show();
+ } else if (tip.attr("tipstatus") == "close") {
+ tip.attr("tipstatus", "normal");
+ }
+ // if(0 < $("#inputPassword").length){
+ // $("#inputPassword")[0].value = "";
+ // }
+ }
+ else if(errors.code==ErrResult_LOGIN_SERV_ERROR){
+ $("#loginConnError").addClass('alert-danger');
+ var tip = $("#loginConnError");
+ if (tip.attr("tipstatus") == "normal") {
+ tip.show();
+ } else if (tip.attr("tipstatus") == "close") {
+ tip.attr("tipstatus", "normal");
+ }
+ }
+ }
+}
+function login(params){
+ $.post("login",{
+ username : params.username,
+ password : params.password,
+ isEncypted:true
+ },function(data){
+ processLoginResult(data,params);
+ },"json");
+}
diff --git a/uiframe-iui/src/main/resources/webroot/framework/js/tools.js b/uiframe-iui/src/main/resources/webroot/framework/js/tools.js
new file mode 100644
index 00000000..710f4a7e
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/js/tools.js
@@ -0,0 +1,1039 @@
+/*
+ * Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+////合并hk.min.js
+/*! store2 - v2.3.0 - 2015-05-22
+* Copyright (c) 2015 Nathan Bubna; Licensed MIT, GPL */
+;(function(window, define) {
+ var _ = {
+ version: "2.3.0",
+ areas: {},
+ apis: {},
+
+ // utilities
+ inherit: function(api, o) {
+ for (var p in api) {
+ if (!o.hasOwnProperty(p)) {
+ o[p] = api[p];
+ }
+ }
+ return o;
+ },
+ stringify: function(d) {
+ return d === undefined || typeof d === "function" ? d+'' : JSON.stringify(d);
+ },
+ parse: function(s) {
+ // if it doesn't parse, return as is
+ try{ return JSON.parse(s); }catch(e){ return s; }
+ },
+
+ // extension hooks
+ fn: function(name, fn) {
+ _.storeAPI[name] = fn;
+ for (var api in _.apis) {
+ _.apis[api][name] = fn;
+ }
+ },
+ get: function(area, key){ return area.getItem(key); },
+ set: function(area, key, string){ area.setItem(key, string); },
+ remove: function(area, key){ area.removeItem(key); },
+ key: function(area, i){ return area.key(i); },
+ length: function(area){ return area.length; },
+ clear: function(area){ area.clear(); },
+
+ // core functions
+ Store: function(id, area, namespace) {
+ var store = _.inherit(_.storeAPI, function(key, data, overwrite) {
+ if (arguments.length === 0){ return store.getAll(); }
+ if (data !== undefined){ return store.set(key, data, overwrite); }
+ if (typeof key === "string"){ return store.get(key); }
+ if (!key){ return store.clear(); }
+ return store.setAll(key, data);// overwrite=data, data=key
+ });
+ store._id = id;
+ try {
+ var testKey = '_safariPrivate_';
+ area.setItem(testKey, 'sucks');
+ store._area = area;
+ area.removeItem(testKey);
+ } catch (e) {}
+ if (!store._area) {
+ store._area = _.inherit(_.storageAPI, { items: {}, name: 'fake' });
+ }
+ store._ns = namespace || '';
+ if (!_.areas[id]) {
+ _.areas[id] = store._area;
+ }
+ if (!_.apis[store._ns+store._id]) {
+ _.apis[store._ns+store._id] = store;
+ }
+ return store;
+ },
+ storeAPI: {
+ // admin functions
+ area: function(id, area) {
+ var store = this[id];
+ if (!store || !store.area) {
+ store = _.Store(id, area, this._ns);//new area-specific api in this namespace
+ if (!this[id]){ this[id] = store; }
+ }
+ return store;
+ },
+ namespace: function(namespace, noSession) {
+ if (!namespace){
+ return this._ns ? this._ns.substring(0,this._ns.length-1) : '';
+ }
+ var ns = namespace, store = this[ns];
+ if (!store || !store.namespace) {
+ store = _.Store(this._id, this._area, this._ns+ns+'.');//new namespaced api
+ if (!this[ns]){ this[ns] = store; }
+ if (!noSession){ store.area('session', _.areas.session); }
+ }
+ return store;
+ },
+ isFake: function(){ return this._area.name === 'fake'; },
+ toString: function() {
+ return 'store'+(this._ns?'.'+this.namespace():'')+'['+this._id+']';
+ },
+
+ // storage functions
+ has: function(key) {
+ if (this._area.has) {
+ return this._area.has(this._in(key));//extension hook
+ }
+ return !!(this._in(key) in this._area);
+ },
+ size: function(){ return this.keys().length; },
+ each: function(fn, and) {
+ for (var i=0, m=_.length(this._area); i<m; i++) {
+ var key = this._out(_.key(this._area, i));
+ if (key !== undefined) {
+ if (fn.call(this, key, and || this.get(key)) === false) {
+ break;
+ }
+ }
+ if (m > _.length(this._area)) { m--; i--; }// in case of removeItem
+ }
+ return and || this;
+ },
+ keys: function() {
+ return this.each(function(k, list){ list.push(k); }, []);
+ },
+ get: function(key, alt) {
+ var s = _.get(this._area, this._in(key));
+ return s !== null ? _.parse(s) : alt || s;// support alt for easy default mgmt
+ },
+ getAll: function() {
+ return this.each(function(k, all){ all[k] = this.get(k); }, {});
+ },
+ set: function(key, data, overwrite) {
+ var d = this.get(key);
+ if (d != null && overwrite === false) {
+ return data;
+ }
+ return _.set(this._area, this._in(key), _.stringify(data), overwrite) || d;
+ },
+ setAll: function(data, overwrite) {
+ var changed, val;
+ for (var key in data) {
+ val = data[key];
+ if (this.set(key, val, overwrite) !== val) {
+ changed = true;
+ }
+ }
+ return changed;
+ },
+ remove: function(key) {
+ var d = this.get(key);
+ _.remove(this._area, this._in(key));
+ return d;
+ },
+ clear: function() {
+ if (!this._ns) {
+ _.clear(this._area);
+ } else {
+ this.each(function(k){ _.remove(this._area, this._in(k)); }, 1);
+ }
+ return this;
+ },
+ clearAll: function() {
+ var area = this._area;
+ for (var id in _.areas) {
+ if (_.areas.hasOwnProperty(id)) {
+ this._area = _.areas[id];
+ this.clear();
+ }
+ }
+ this._area = area;
+ return this;
+ },
+
+ // internal use functions
+ _in: function(k) {
+ if (typeof k !== "string"){ k = _.stringify(k); }
+ return this._ns ? this._ns + k : k;
+ },
+ _out: function(k) {
+ return this._ns ?
+ k && k.indexOf(this._ns) === 0 ?
+ k.substring(this._ns.length) :
+ undefined : // so each() knows to skip it
+ k;
+ }
+ },// end _.storeAPI
+ storageAPI: {
+ length: 0,
+ has: function(k){ return this.items.hasOwnProperty(k); },
+ key: function(i) {
+ var c = 0;
+ for (var k in this.items){
+ if (this.has(k) && i === c++) {
+ return k;
+ }
+ }
+ },
+ setItem: function(k, v) {
+ if (!this.has(k)) {
+ this.length++;
+ }
+ this.items[k] = v;
+ },
+ removeItem: function(k) {
+ if (this.has(k)) {
+ delete this.items[k];
+ this.length--;
+ }
+ },
+ getItem: function(k){ return this.has(k) ? this.items[k] : null; },
+ clear: function(){ for (var k in this.list){ this.removeItem(k); } },
+ toString: function(){ return this.length+' items in '+this.name+'Storage'; }
+ }// end _.storageAPI
+ };
+
+ // setup the primary store fn
+ if (window.store){ _.conflict = window.store; }
+ var store =
+ // safely set this up (throws error in IE10/32bit mode for local files)
+ _.Store("local", (function(){try{ return localStorage; }catch(e){}})());
+ store.local = store;// for completeness
+ store._ = _;// for extenders and debuggers...
+ // safely setup store.session (throws exception in FF for file:/// urls)
+ store.area("session", (function(){try{ return sessionStorage; }catch(e){}})());
+
+ //Expose store to the global object
+ window.store = store;
+
+ if (typeof define === 'function' && define.amd !== undefined) {
+ define(function () {
+ return store;
+ });
+ } else if (typeof module !== 'undefined' && module.exports) {
+ module.exports = store;
+ }
+
+})(this, null);
+
+// XHook - v1.3.3 - https://github.com/jpillora/xhook
+// Jaime Pillora <dev@jpillora.com> - MIT Copyright 2015
+(function(window,undefined) {
+var AFTER, BEFORE, COMMON_EVENTS, EventEmitter, FIRE, FormData, NativeFormData, NativeXMLHttp, OFF, ON, READY_STATE, UPLOAD_EVENTS, XHookFormData, XHookHttpRequest, XMLHTTP, convertHeaders, depricatedProp, document, fakeEvent, mergeObjects, msie, proxyEvents, slice, xhook, _base,
+ __indexOf = [].indexOf || function(item) { for (var i = 0, l = this.length; i < l; i++) { if (i in this && this[i] === item) return i; } return -1; };
+
+document = window.document;
+
+BEFORE = 'before';
+
+AFTER = 'after';
+
+READY_STATE = 'readyState';
+
+ON = 'addEventListener';
+
+OFF = 'removeEventListener';
+
+FIRE = 'dispatchEvent';
+
+XMLHTTP = 'XMLHttpRequest';
+
+FormData = 'FormData';
+
+UPLOAD_EVENTS = ['load', 'loadend', 'loadstart'];
+
+COMMON_EVENTS = ['progress', 'abort', 'error', 'timeout'];
+
+msie = parseInt((/msie (\d+)/.exec(navigator.userAgent.toLowerCase()) || [])[1]);
+
+if (isNaN(msie)) {
+ msie = parseInt((/trident\/.*; rv:(\d+)/.exec(navigator.userAgent.toLowerCase()) || [])[1]);
+}
+
+(_base = Array.prototype).indexOf || (_base.indexOf = function(item) {
+ var i, x, _i, _len;
+ for (i = _i = 0, _len = this.length; _i < _len; i = ++_i) {
+ x = this[i];
+ if (x === item) {
+ return i;
+ }
+ }
+ return -1;
+});
+
+slice = function(o, n) {
+ return Array.prototype.slice.call(o, n);
+};
+
+depricatedProp = function(p) {
+ return p === "returnValue" || p === "totalSize" || p === "position";
+};
+
+mergeObjects = function(src, dst) {
+ var k, v;
+ for (k in src) {
+ v = src[k];
+ if (depricatedProp(k)) {
+ continue;
+ }
+ try {
+ dst[k] = src[k];
+ } catch (_error) {}
+ }
+ return dst;
+};
+
+proxyEvents = function(events, src, dst) {
+ var event, p, _i, _len;
+ p = function(event) {
+ return function(e) {
+ var clone, k, val;
+ clone = {};
+ for (k in e) {
+ if (depricatedProp(k)) {
+ continue;
+ }
+ val = e[k];
+ clone[k] = val === src ? dst : val;
+ }
+ return dst[FIRE](event, clone);
+ };
+ };
+ for (_i = 0, _len = events.length; _i < _len; _i++) {
+ event = events[_i];
+ if (dst._has(event)) {
+ src["on" + event] = p(event);
+ }
+ }
+};
+
+fakeEvent = function(type) {
+ var msieEventObject;
+ if (document.createEventObject != null) {
+ msieEventObject = document.createEventObject();
+ msieEventObject.type = type;
+ return msieEventObject;
+ } else {
+ try {
+ return new Event(type);
+ } catch (_error) {
+ return {
+ type: type
+ };
+ }
+ }
+};
+
+EventEmitter = function(nodeStyle) {
+ var emitter, events, listeners;
+ events = {};
+ listeners = function(event) {
+ return events[event] || [];
+ };
+ emitter = {};
+ emitter[ON] = function(event, callback, i) {
+ events[event] = listeners(event);
+ if (events[event].indexOf(callback) >= 0) {
+ return;
+ }
+ i = i === undefined ? events[event].length : i;
+ events[event].splice(i, 0, callback);
+ };
+ emitter[OFF] = function(event, callback) {
+ var i;
+ if (event === undefined) {
+ events = {};
+ return;
+ }
+ if (callback === undefined) {
+ events[event] = [];
+ }
+ i = listeners(event).indexOf(callback);
+ if (i === -1) {
+ return;
+ }
+ listeners(event).splice(i, 1);
+ };
+ emitter[FIRE] = function() {
+ var args, event, i, legacylistener, listener, _i, _len, _ref;
+ args = slice(arguments);
+ event = args.shift();
+ if (!nodeStyle) {
+ args[0] = mergeObjects(args[0], fakeEvent(event));
+ }
+ legacylistener = emitter["on" + event];
+ if (legacylistener) {
+ legacylistener.apply(undefined, args);
+ }
+ _ref = listeners(event).concat(listeners("*"));
+ for (i = _i = 0, _len = _ref.length; _i < _len; i = ++_i) {
+ listener = _ref[i];
+ listener.apply(undefined, args);
+ }
+ };
+ emitter._has = function(event) {
+ return !!(events[event] || emitter["on" + event]);
+ };
+ if (nodeStyle) {
+ emitter.listeners = function(event) {
+ return slice(listeners(event));
+ };
+ emitter.on = emitter[ON];
+ emitter.off = emitter[OFF];
+ emitter.fire = emitter[FIRE];
+ emitter.once = function(e, fn) {
+ var fire;
+ fire = function() {
+ emitter.off(e, fire);
+ return fn.apply(null, arguments);
+ };
+ return emitter.on(e, fire);
+ };
+ emitter.destroy = function() {
+ return events = {};
+ };
+ }
+ return emitter;
+};
+
+xhook = EventEmitter(true);
+
+xhook.EventEmitter = EventEmitter;
+
+xhook[BEFORE] = function(handler, i) {
+ if (handler.length < 1 || handler.length > 2) {
+ throw "invalid hook";
+ }
+ return xhook[ON](BEFORE, handler, i);
+};
+
+xhook[AFTER] = function(handler, i) {
+ if (handler.length < 2 || handler.length > 3) {
+ throw "invalid hook";
+ }
+ return xhook[ON](AFTER, handler, i);
+};
+
+xhook.enable = function() {
+ window[XMLHTTP] = XHookHttpRequest;
+ if (NativeFormData) {
+ window[FormData] = XHookFormData;
+ }
+};
+
+xhook.disable = function() {
+ window[XMLHTTP] = xhook[XMLHTTP];
+ window[FormData] = NativeFormData;
+};
+
+convertHeaders = xhook.headers = function(h, dest) {
+ var header, headers, k, name, v, value, _i, _len, _ref;
+ if (dest == null) {
+ dest = {};
+ }
+ switch (typeof h) {
+ case "object":
+ headers = [];
+ for (k in h) {
+ v = h[k];
+ name = k.toLowerCase();
+ headers.push("" + name + ":\t" + v);
+ }
+ return headers.join('\n');
+ case "string":
+ headers = h.split('\n');
+ for (_i = 0, _len = headers.length; _i < _len; _i++) {
+ header = headers[_i];
+ if (/([^:]+):\s*(.+)/.test(header)) {
+ name = (_ref = RegExp.$1) != null ? _ref.toLowerCase() : void 0;
+ value = RegExp.$2;
+ if (dest[name] == null) {
+ dest[name] = value;
+ }
+ }
+ }
+ return dest;
+ }
+};
+
+NativeFormData = window[FormData];
+
+XHookFormData = function(form) {
+ var entries;
+ this.fd = form ? new NativeFormData(form) : new NativeFormData();
+ this.form = form;
+ entries = [];
+ Object.defineProperty(this, 'entries', {
+ get: function() {
+ var fentries;
+ fentries = !form ? [] : slice(form.querySelectorAll("input,select")).filter(function(e) {
+ var _ref;
+ return ((_ref = e.type) !== 'checkbox' && _ref !== 'radio') || e.checked;
+ }).map(function(e) {
+ return [e.name, e.type === "file" ? e.files : e.value];
+ });
+ return fentries.concat(entries);
+ }
+ });
+ this.append = (function(_this) {
+ return function() {
+ var args;
+ args = slice(arguments);
+ entries.push(args);
+ return _this.fd.append.apply(_this.fd, args);
+ };
+ })(this);
+};
+
+if (NativeFormData) {
+ xhook[FormData] = NativeFormData;
+ window[FormData] = XHookFormData;
+}
+
+NativeXMLHttp = window[XMLHTTP];
+
+xhook[XMLHTTP] = NativeXMLHttp;
+
+XHookHttpRequest = window[XMLHTTP] = function() {
+ var ABORTED, currentState, emitFinal, emitReadyState, facade, hasError, hasErrorHandler, readBody, readHead, request, response, setReadyState, status, transiting, writeBody, writeHead, xhr;
+ ABORTED = -1;
+ xhr = new xhook[XMLHTTP]();
+ request = {};
+ status = null;
+ hasError = void 0;
+ transiting = void 0;
+ response = void 0;
+ readHead = function() {
+ var key, name, val, _ref;
+ response.status = status || xhr.status;
+ if (!(status === ABORTED && msie < 10)) {
+ response.statusText = xhr.statusText;
+ }
+ if (status !== ABORTED) {
+ _ref = convertHeaders(xhr.getAllResponseHeaders());
+ for (key in _ref) {
+ val = _ref[key];
+ if (!response.headers[key]) {
+ name = key.toLowerCase();
+ response.headers[name] = val;
+ }
+ }
+ }
+ };
+ readBody = function() {
+ if (!xhr.responseType || xhr.responseType === "text") {
+ response.text = xhr.responseText;
+ response.data = xhr.responseText;
+ } else if (xhr.responseType === "document") {
+ response.xml = xhr.responseXML;
+ response.data = xhr.responseXML;
+ } else {
+ response.data = xhr.response;
+ }
+ if ("responseURL" in xhr) {
+ response.finalUrl = xhr.responseURL;
+ }
+ };
+ writeHead = function() {
+ facade.status = response.status;
+ facade.statusText = response.statusText;
+ };
+ writeBody = function() {
+ if ('text' in response) {
+ facade.responseText = response.text;
+ }
+ if ('xml' in response) {
+ facade.responseXML = response.xml;
+ }
+ if ('data' in response) {
+ facade.response = response.data;
+ }
+ if ('finalUrl' in response) {
+ facade.responseURL = response.finalUrl;
+ }
+ };
+ emitReadyState = function(n) {
+ while (n > currentState && currentState < 4) {
+ facade[READY_STATE] = ++currentState;
+ if (currentState === 1) {
+ facade[FIRE]("loadstart", {});
+ }
+ if (currentState === 2) {
+ writeHead();
+ }
+ if (currentState === 4) {
+ writeHead();
+ writeBody();
+ }
+ facade[FIRE]("readystatechange", {});
+ if (currentState === 4) {
+ setTimeout(emitFinal, 0);
+ }
+ }
+ };
+ emitFinal = function() {
+ if (!hasError) {
+ facade[FIRE]("load", {});
+ }
+ facade[FIRE]("loadend", {});
+ if (hasError) {
+ facade[READY_STATE] = 0;
+ }
+ };
+ currentState = 0;
+ setReadyState = function(n) {
+ var hooks, process;
+ if (n !== 4) {
+ emitReadyState(n);
+ return;
+ }
+ hooks = xhook.listeners(AFTER);
+ process = function() {
+ var hook;
+ if (!hooks.length) {
+ return emitReadyState(4);
+ }
+ hook = hooks.shift();
+ if (hook.length === 2) {
+ hook(request, response);
+ return process();
+ } else if (hook.length === 3 && request.async) {
+ return hook(request, response, process);
+ } else {
+ return process();
+ }
+ };
+ process();
+ };
+ facade = request.xhr = EventEmitter();
+ xhr.onreadystatechange = function(event) {
+ try {
+ if (xhr[READY_STATE] === 2) {
+ readHead();
+ }
+ } catch (_error) {}
+ if (xhr[READY_STATE] === 4) {
+ transiting = false;
+ readHead();
+ readBody();
+ }
+ setReadyState(xhr[READY_STATE]);
+ };
+ hasErrorHandler = function() {
+ hasError = true;
+ };
+ facade[ON]('error', hasErrorHandler);
+ facade[ON]('timeout', hasErrorHandler);
+ facade[ON]('abort', hasErrorHandler);
+ facade[ON]('progress', function() {
+ if (currentState < 3) {
+ setReadyState(3);
+ } else {
+ facade[FIRE]("readystatechange", {});
+ }
+ });
+ if ('withCredentials' in xhr || xhook.addWithCredentials) {
+ facade.withCredentials = false;
+ }
+ facade.status = 0;
+ facade.open = function(method, url, async, user, pass) {
+ currentState = 0;
+ hasError = false;
+ transiting = false;
+ request.headers = {};
+ request.headerNames = {};
+ request.status = 0;
+ response = {};
+ response.headers = {};
+ request.method = method;
+ request.url = url;
+ request.async = async !== false;
+ request.user = user;
+ request.pass = pass;
+ setReadyState(1);
+ };
+ facade.send = function(body) {
+ var hooks, k, modk, process, send, _i, _len, _ref;
+ _ref = ['type', 'timeout', 'withCredentials'];
+ if(navigator.userAgent.indexOf("Firefox/") != -1){http://atmosphere-framework.2306103.n4.nabble.com/Atmosphere-js-withCredentials-true-does-not-work-in-Firefox-td4656661.html
+ _ref = ['type', 'timeout'];
+ }
+ for (_i = 0, _len = _ref.length; _i < _len; _i++) {
+ k = _ref[_i];
+ modk = k === "type" ? "responseType" : k;
+ if (modk in facade) {
+ request[k] = facade[modk];
+ }
+ }
+ request.body = body;
+ send = function() {
+ var header, value, _j, _len1, _ref1, _ref2;
+ proxyEvents(COMMON_EVENTS, xhr, facade);
+ if (facade.upload) {
+ proxyEvents(COMMON_EVENTS.concat(UPLOAD_EVENTS), xhr.upload, facade.upload);
+ }
+ transiting = true;
+ xhr.open(request.method, request.url, request.async, request.user, request.pass);
+ _ref1 = ['type', 'timeout', 'withCredentials'];
+ if(navigator.userAgent.indexOf("Firefox/") != -1){//http://atmosphere-framework.2306103.n4.nabble.com/Atmosphere-js-withCredentials-true-does-not-work-in-Firefox-td4656661.html
+ _ref1 = ['type', 'timeout'];
+ }
+ for (_j = 0, _len1 = _ref1.length; _j < _len1; _j++) {
+ k = _ref1[_j];
+ modk = k === "type" ? "responseType" : k;
+ if (k in request) {
+ xhr[modk] = request[k];
+ }
+ }
+ _ref2 = request.headers;
+ for (header in _ref2) {
+ value = _ref2[header];
+ xhr.setRequestHeader(header, value);
+ }
+ if (request.body instanceof XHookFormData) {
+ request.body = request.body.fd;
+ }
+ xhr.send(request.body);
+ };
+ hooks = xhook.listeners(BEFORE);
+ process = function() {
+ var done, hook;
+ if (!hooks.length) {
+ return send();
+ }
+ done = function(userResponse) {
+ if (typeof userResponse === 'object' && (typeof userResponse.status === 'number' || typeof response.status === 'number')) {
+ mergeObjects(userResponse, response);
+ if (__indexOf.call(userResponse, 'data') < 0) {
+ userResponse.data = userResponse.response || userResponse.text;
+ }
+ setReadyState(4);
+ return;
+ }
+ process();
+ };
+ done.head = function(userResponse) {
+ mergeObjects(userResponse, response);
+ return setReadyState(2);
+ };
+ done.progress = function(userResponse) {
+ mergeObjects(userResponse, response);
+ return setReadyState(3);
+ };
+ hook = hooks.shift();
+ if (hook.length === 1) {
+ return done(hook(request));
+ } else if (hook.length === 2 && request.async) {
+ return hook(request, done);
+ } else {
+ return done();
+ }
+ };
+ process();
+ };
+ facade.abort = function() {
+ status = ABORTED;
+ if (transiting) {
+ xhr.abort();
+ } else {
+ facade[FIRE]('abort', {});
+ }
+ };
+ facade.setRequestHeader = function(header, value) {
+ var lName, name;
+ lName = header != null ? header.toLowerCase() : void 0;
+ name = request.headerNames[lName] = request.headerNames[lName] || header;
+ if (request.headers[name]) {
+ value = request.headers[name] + ', ' + value;
+ }
+ request.headers[name] = value;
+ };
+ facade.getResponseHeader = function(header) {
+ var name;
+ name = header != null ? header.toLowerCase() : void 0;
+ return response.headers[name];
+ };
+ facade.getAllResponseHeaders = function() {
+ return convertHeaders(response.headers);
+ };
+ if (xhr.overrideMimeType) {
+ facade.overrideMimeType = function() {
+ return xhr.overrideMimeType.apply(xhr, arguments);
+ };
+ }
+ if (xhr.upload) {
+ facade.upload = request.upload = EventEmitter();
+ }
+ return facade;
+};
+/*
+if (typeof this.define === "function" && this.define.amd) {
+ define("xhook", [], function() {
+ return xhook;
+ });
+} else {*/
+ (this.exports || this).xhook = xhook;
+//}
+
+}.call(this,window));
+
+xhook.before(function(request) {
+ var zte_headers = store('zte_http_headers');
+ if (zte_headers && zte_headers.length > 0) {
+ for (i = 0; i < zte_headers.length; i++) {
+ if (zte_headers[i].store === true) {
+ if ( !! store(zte_headers[i].value)) {
+ request.headers[zte_headers[i].key] = store(zte_headers[i].value).toUpperCase()
+ }
+ } else {
+ request.headers[zte_headers[i].key] = zte_headers[i].value
+ }
+ }
+ }
+});
+/**
+ * 初始化脚本文件装载工具
+ * zongying 2010.12
+ * modify:
+ */
+$Boot = {};
+
+/**
+ * 创建命名空间
+ * @param {Object} name
+ * @param {Object} object
+ */
+$Boot.createNamespace = function(name, object) {
+ var splits = name.split(".");
+ var parent = window;
+ //document.window浏览器内置对象
+ var part = splits[0];
+ for (var i = 0, len = splits.length - 1; i < len; i++, part = splits[i]) {
+ if (!parent[part]) {
+ parent = parent[part] = {};
+ } else {
+ parent = parent[part];
+ }
+ }
+ // 存放对象
+ parent[part] = object;
+ // 返回 last part name (例如:classname)
+ return part;
+}
+
+$Boot.isDefined = function(o) {
+ return typeof (o) != "undefined"
+}
+/**
+ * 启动配置类
+ */
+$Boot.Config = function() {
+
+ function isDefined(o) {
+ return typeof (o) != "undefined"
+ }
+
+ //用户应用当前目录
+ if (!isDefined(window.$userAppDir)) {
+ window.$userAppDir = './'
+ }
+ //组件库目录
+ if (!isDefined(window.$userFrameDir)) {
+ window.$userFrameDir = '/common/'
+ }
+ //用户i18文件目录
+ if (!isDefined(window.$userI18nDir)) {
+ window.$userI18nDir = './'
+ }
+
+ //当前语言 默认为英语
+ var language = "zh-CN";
+ //var languageList = ['ar', 'ba', 'cr', 'cs', 'de', 'el', 'es', 'fi', 'fr', 'fr-FR', 'hu-HU', 'id', 'it', 'ja', 'nb-NO', 'nl', 'pl', 'pl-PL', 'pt', 'pt-BR', 'ro-RO', 'ru-RU', 'sk', 'sr', 'sr-Latn', 'sv-SE', 'en-US','uk-UA', 'zh-CN', 'zh-TW'];
+ var languageList = ['en-US', 'zh-CN'];
+
+ //从服务端取客户端接受语言类型
+ var getAcceptLangFromServer = true;
+
+
+ /**
+ * 创建XMLHttpRequest对象
+ */
+ function createXMLHttpRequest() {
+ if (window.ActiveXObject) {
+ return new ActiveXObject("Microsoft.XMLHTTP");
+ } else if (window.XMLHttpRequest) {
+ return new XMLHttpRequest();
+ } else {
+ throw new Error("This Brower do not support XMLHTTP!!");
+ }
+ }
+
+
+ /**
+ * 同步发送xml http 请求
+ * @param {Object} url
+ * @param {Object} data
+ * @param {Object} method
+ */
+ function httpRequest(method, url, data) {
+ var xmlhttp;
+ xmlhttp = createXMLHttpRequest();
+ var sendData = null;
+ if (method == "get") {
+ url = url + "?" + data;
+
+ } else if (method == "post") {
+ sendData = data;
+ }
+ xmlhttp.open(method, url, false);
+ xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
+ xmlhttp.setRequestHeader("If-Modified-Since", "0");
+ xmlhttp.send(sendData);
+ if (xmlhttp.status == 200)
+ return xmlhttp.responseText;
+ }
+
+ /**
+ * 同步发送xml http 请求(给外部调用)
+ * @param {Object} url
+ * @param {Object} data
+ * @param {Object} method
+ */
+ this.httpRequestStatic = function(method, url, data) {
+ var xmlhttp;
+ xmlhttp = createXMLHttpRequest();
+ var sendData = null;
+ if (method == "get") {
+ url = url + "?" + data;
+
+ } else if (method == "post") {
+ sendData = data;
+ }
+ xmlhttp.open(method, url, false);
+ xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
+ xmlhttp.setRequestHeader("If-Modified-Since", "0");
+ xmlhttp.send(sendData);
+ if (xmlhttp.status == 200)
+ return xmlhttp.responseText;
+ }
+
+ function inArray(array, obj) {
+ for (var i = 0; i < array.length; i++) {
+ if (array[i] == obj) {
+ return true;
+ }
+ }
+ return false;
+
+ }
+
+ /**
+ * 取得浏览器语言信息
+ */
+ this.getLanguage = function() {
+ var rtnLanguage = localStorage.getItem("language-option");
+ if( rtnLanguage == "null" || rtnLanguage == null ){
+ rtnLanguage = window.navigator.userLanguage||window.navigator.language;
+ }
+ if( rtnLanguage == '"zh-CN"' || rtnLanguage == "zh-CN" ){
+ return "zh-CN";
+ }else{
+ return "en-US";
+ }
+ //return "en-US";
+ }
+
+ this.getUrlParam=function(name){
+ var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); //构造一个含有目标参数的正则表达式对象
+ var search =decodeURIComponent(location.search.substring(1)); //decodeURIComponent() 函数可对 encodeURIComponent() 函数编码的 URI 进行解码。
+ var r =search.match(reg); //匹配目标参数
+ if (r != null) return unescape(r[2]); //unescape() 函数可对通过 escape() 编码的字符串进行解码。
+ return null; //返回参数值
+ }
+
+
+}
+
+//创建命名空间
+$Boot.createNamespace("com.zte.ums.aos.framework.BootConfig", $Boot.Config);
+//创建基础配置对象实例
+$Boot.bootConfig = new com.zte.ums.aos.framework.BootConfig();
+
+function getLanguage(){
+ return $Boot.bootConfig.getLanguage();
+}
+
+function getStringWidth(text,fontSize)
+{
+ var span = document.getElementById("_ictframework_getwidth");
+ if (span == null) {
+ span = document.createElement("span");
+ span.id = "_ictframework_getwidth";
+ document.body.appendChild(span);
+ }
+ span.innerText = text;
+ span.style.whiteSpace = "nowrap";
+ $("#_ictframework_getwidth").attr('style','font-size:'+fontSize+'px;');
+ var width = span.offsetWidth;
+ $("#_ictframework_getwidth").attr('style','display:none');
+ return width;
+}
+
+function getUrlParam(name){
+ return $Boot.bootConfig.getUrlParam(name);
+}
+
+function httpRequest(method, url, data) {
+ return $Boot.bootConfig.httpRequestStatic(method, url, data)
+}
+
+// 定义JQUERY AJAX 完成函数,判断返回状态,如果状态正常,但HEADER头里有session超时信息,则刷新重登录
+// 如果状态为 401, 也刷新重登录
+// 注意如果在$.ajax() 函数中定义了 complete,则覆盖了这里预定义complete内容,以$.ajax()函数中定义的为准,这里预定义的函数则失效,如果
+// 要继续判断session超时,则需要在 $.ajax()函数中定义的complete函数中加入这里预定义内容。
+if (jQuery) {
+ $.ajaxSetup({
+ complete:function(XMLHttpRequest,textStatus){
+ if (XMLHttpRequest.status == 401) {
+ window.location.replace("login.html");
+ }
+ // if (XMLHttpRequest.status == 200) {
+ // var sessionstatus=XMLHttpRequest.getResponseHeader("sessionstatus"); ////通过XMLHttpRequest取得响应头,sessionstatus,
+ // if(sessionstatus=="timeout"){
+ // window.location.replace("/");
+ // }
+ // } else if (XMLHttpRequest.status == 401) {
+ // window.location.replace("/");
+ // }
+ }
+ });
+}
diff --git a/uiframe-iui/src/main/resources/webroot/framework/json/main-page.json b/uiframe-iui/src/main/resources/webroot/framework/json/main-page.json
new file mode 100644
index 00000000..ca282f77
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/json/main-page.json
@@ -0,0 +1,103 @@
+{
+ "propertiesFileNamePrefix":"web-framework-integration-i18n",
+ "productName":"Net Numen ICT",
+ "productImage":"img/integration/zte_logo_white.png",
+ "modules":[
+ {
+ "cover":"com_zte_ums_ict_framework_main_page_dashboard",
+ "background":"skyBlue-mainpage",
+ "toolsImage":"toolsImageBrokenLine",
+ "url":"",
+ "linkId":"ngict-dashboard-index",
+ "contentTip":""
+ },
+ {
+ "cover":"com_zte_ums_ict_framework_main_page_monitor",
+ "background":"golden-mainpage",
+ "toolsImage":"toolsImageHierachy",
+ "url":"",
+ "linkId":"ngict-itm-monintor",
+ "contentTip":""
+ },
+ {
+ "cover":"",
+ "background":"manLieONCloud-image",
+ "toolsImage":"",
+ "url":"http://vnjs.net/www/project/freewall/",
+ "contentTip":""
+ },
+ {
+ "cover":"com_zte_ums_ict_framework_main_page_alarm",
+ "background":"orange-mainpage",
+ "toolsImage":"toolsImageGear",
+ "url":"",
+ "linkId":"ngict-fm-summary",
+
+ "contentTip":""
+ },
+ {
+ "cover":"com_zte_ums_ict_framework_main_page_performance",
+ "background":"pinkishRed-mainpage",
+ "toolsImage":"toolsImagePresent",
+ "url":"",
+ "linkId":"ngict-pm-meatask",
+
+ "contentTip":""
+ },
+ {
+ "cover":"",
+ "background":"magicCube-image",
+ "toolsImage":"",
+ "url":"",
+ "contentTip":""
+ },
+ {
+ "cover":"com_zte_ums_ict_framework_main_page_security",
+ "background":"grassGreen-mainpage",
+ "toolsImage":"toolsImageFile",
+ "url":"",
+ "linkId":"ngict-sm",
+
+ "contentTip":""
+ },
+ {
+ "cover":"",
+ "background":"meeting-image",
+ "toolsImage":"",
+ "url":"",
+ "contentTip":""
+ },
+ {
+ "cover":"",
+ "background":"earth-image",
+ "toolsImage":"",
+ "url":"",
+ "contentTip":""
+ },
+ {
+ "cover":"com_zte_ums_ict_framework_main_page_log",
+ "background":"orange-mainpage",
+ "toolsImage":"toolsImageGear",
+ "url":"",
+ "linkId":"ngict-log",
+
+ "contentTip":""
+ },
+ {
+ "cover":"com_zte_ums_ict_framework_main_page_system",
+ "background":"skyBlue-mainpage",
+ "toolsImage":"toolsImageBriefcase",
+ "url":"",
+ "linkId":"ngict-system",
+
+ "contentTip":""
+ },
+ {
+ "cover":"",
+ "background":"magicThought-image",
+ "toolsImage":"",
+ "url":"",
+ "contentTip":""
+ }
+ ]
+} \ No newline at end of file
diff --git a/uiframe-iui/src/main/resources/webroot/framework/login.html b/uiframe-iui/src/main/resources/webroot/framework/login.html
new file mode 100644
index 00000000..bfc3f108
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/login.html
@@ -0,0 +1,198 @@
+<!--
+
+ Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+-->
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8"/>
+<title id="com_zte_ums_ict_portal_login_title" name_i18n="com_zte_ums_ict_framework_ui_i18n_login"></title>
+<meta http-equiv="X-UA-Compatible" content="IE=edge">
+<meta content="width=device-width, initial-scale=1.0" name="viewport"/>
+<meta content="" name="description"/>
+<meta content="" name="author"/>
+<link href="../component/thirdparty/fakeLoader/fakeLoader.css" rel="stylesheet" type="text/css" />
+<script>
+ if(top != window){
+ top.location.href = location.href;
+ }
+</script>
+<link href="../component/thirdparty/font-awesome/css/font-awesome.min.css" rel="stylesheet" type="text/css"/>
+<link href="../component/thirdparty/bootstrap/css/bootstrap.min.css" rel="stylesheet" type="text/css"/>
+<link href="../component/thirdparty/uniform/css/uniform.default.css" rel="stylesheet" type="text/css"/>
+<link href="./css/style-custom.css" rel="stylesheet" type="text/css"/>
+<link href="./css/style.css" rel="stylesheet" type="text/css"/>
+<link href="./css/style-responsive.css" rel="stylesheet" type="text/css"/>
+<link href="./css/plugins.css" rel="stylesheet" type="text/css"/>
+<link href="./css/login.css" rel="stylesheet" type="text/css"/>
+<link href="./css/custom_default.css" rel="stylesheet" type="text/css"/>
+<link rel="shortcut icon" href="./img/integration/zte_logo_16.gif"/>
+<script type="text/javascript" src="../component/thirdparty/jquery/jquery-1.10.2.min.js"></script>
+<script type="text/javascript" src="./js/core/const.js" ></script>
+<script type="text/javascript" src="./appRes/js/custom-const.js" ></script>
+<script type="text/javascript" src="./js/security/security.js"></script>
+<script type="text/javascript" src="../component/thirdparty/fakeLoader/fakeLoader.min.js"></script>
+<script type="text/javascript" src="./js/core/hk.min.js" ></script>
+<script type="text/javascript" src="./js/tools.js"></script>
+<script type="text/javascript">
+var Sys = {};
+var ua = navigator.userAgent.toLowerCase();
+var s;
+(s = ua.match(/msie ([\d.]+)/)) ? Sys.ie = s[1] :
+(s = ua.match(/firefox\/([\d.]+)/)) ? Sys.firefox = s[1] :
+(s = ua.match(/chrome\/([\d.]+)/)) ? Sys.chrome = s[1] :
+(s = ua.match(/opera.([\d.]+)/)) ? Sys.opera = s[1] :
+(s = ua.match(/version\/([\d.]+).*safari/)) ? Sys.safari = s[1] : 0;
+
+
+function judgeVersion(configVer,localVer){
+ var configs= configVer.split(".");
+ var locals= localVer.split(".");
+ var length = 0;
+ if(configs.length >= locals.length){
+ length = locals.length;
+ }else{
+ length = configs.length;
+ }
+ for(var i = 0; i < length; i++){
+ var tempConfig = parseInt(configs[i],10);
+ var tempLocal = parseInt(locals[i],10);
+ if(tempConfig > tempLocal){
+ return true;
+ }
+ }
+ return false;
+
+
+}
+
+function showPrompt(flag){
+ if(flag == "chromeFrame"){
+ document.getElementById("downloadChromeFrame").style.display="";
+
+ $("#chromedown").attr("href","https://www.google.com/intl/"+getLanguage()+"/chrome/browser/");
+ }
+}
+function hidetip(tipid) {
+ var tip = $("#" + tipid);
+ tip.hide();
+ tip.attr("tipstatus", "close");
+}
+</script>
+</head>
+<body class="login"><div id="pageLoading" class="fakeloader" ></div>
+ <script type="text/javascript">
+ $("#pageLoading").fakeLoader({text:"",bgColor:"#1178ee",opacity:'1',spinner:"spinner2",zIndex:99999999});
+ </script>
+<div class="logo">
+ <a href="./default.html">
+ <img id="com_zte_ums_ict_framework_img_login_logo" src="./img/integration/ztelogo.png" name_img="com_zte_ums_ict_framework_img" style="display:none" alt=""/>
+ <img id="com_zte_ums_ict_framework_img_login_logo_white" src="./img/integration/zte_logo_white.png" name_img="com_zte_ums_ict_framework_img" style="display:none" alt=""/>
+ </a>
+</div>
+<div class="content">
+ <form class="login-form" method="post" id="fm1" action="./login">
+ <h3 class="form-title"><span id="com_zte_ums_ict_portal_login_welcome" name_i18n="com_zte_ums_ict_framework_ui_i18n_login"></span> </h3>
+ <div class="alert display-hide" id="nameOrpwdError" tipstatus="normal">
+ <button class="close" data-close="alert" onclick="hidetip('nameOrpwdError');"></button>
+ <div id="com_zte_ums_ict_portal_login_userPassword" name_i18n="com_zte_ums_ict_framework_ui_i18n_login" style="display:inline"></div>
+ </div>
+ <div class="alert display-hide" id="loginConnError" tipstatus="normal">
+ <button class="close" data-close="alert" onclick="hidetip('loginConnError');"></button>
+ <div id="com_zte_ums_ict_portal_login_serv_error" name_i18n="com_zte_ums_ict_framework_ui_i18n_login" style="display:inline"></div>
+ </div>
+ <div class="form-group">
+ <!--ie8, ie9 does not support html5 placeholder, so we just show field title for that-->
+ <label id="com_zte_ums_aos_portal_login_username" name_i18n="com_zte_ums_ict_framework_ui_i18n_login" class="control-label visible-ie8 visible-ie9" i18n-html="com_zte_ums_aos_portal_login_username"></label>
+ <div class="input-icon">
+ <i class="fa fa-user"></i>
+ <input class="form-control placeholder-no-fix" id="inputUserName" type="text" autocomplete="off" name_i18n="com_zte_ums_ict_framework_ui_i18n_login" placeholder="" name="username"/>
+ </div>
+ </div>
+ <div class="form-group">
+ <label id="com_zte_ums_aos_portal_login_password" name_i18n="com_zte_ums_ict_framework_ui_i18n_login" class="control-label visible-ie8 visible-ie9" i18n-html="com_zte_ums_aos_portal_login_password"></label>
+ <div class="input-icon">
+ <i class="fa fa-lock"></i>
+ <input class="form-control placeholder-no-fix" id="inputPassword" type="password" autocomplete="off" name_i18n="com_zte_ums_ict_framework_ui_i18n_login" placeholder="" name="password"/>
+ </div>
+ </div>
+ <div class="form-actions">
+ <label class="checkbox"><input type="checkbox" name="remember" value="1"><span id="com_zte_ums_ict_portal_login_rememberMe" name_i18n="com_zte_ums_ict_framework_ui_i18n_login">
+ </span></label>
+ <button type="submit" i18n-value="com_zte_ums_aos_portal_login_login" id="submitBtn" class="btn blue pull-right">
+ <span id="com_zte_ums_aos_portal_login_login" name_i18n="com_zte_ums_ict_framework_ui_i18n_login">
+ </span> <i class="m-icon-swapright m-icon-white"></i>
+ </button>
+ </div>
+ </form>
+</div>
+<center>
+<div class="download" id="downloadChromeFrame" style="display:none">
+ <p id="notice3" i18n-html="com_zte_ums_aos_portal_login_notice_about_chromeFrame"></p>
+ <div id="chromeFrameUrl">
+ <image class="browser_logo" src="./img/chrome_icon.png"/>&nbsp;&nbsp;&nbsp;&nbsp;<a href="https://www.google.com/intl/en_US/chrome/browser/" id="chromedown">Chrome</a>&nbsp;&nbsp;&nbsp;&nbsp;<image class="browser_logo" src="./img/firefox_icon.png"/>&nbsp;&nbsp;&nbsp;&nbsp;<a href="http://www.mozilla.org/" id="firefoxdown">Firefox</a>&nbsp;&nbsp;&nbsp;&nbsp;<br/>
+ </div>
+</div>
+</center>
+<div class="copyright">
+ <span id="com_zte_ums_ict_portal_login_companyName" name_i18n="com_zte_ums_ict_framework_ui_i18n_login">
+ </span>.
+</div>
+
+<!--[if lt IE 9]>
+ <script src="/ngict/iui/component/thirdparty/respond/respond.min.js"></script>
+ <script src="/ngict/iui/component/thirdparty/excanvas/excanvas.min.js"></script>
+ <![endif]-->
+<script src="../component/thirdparty/bootstrap/js/bootstrap.min.js" type="text/javascript"></script>
+<script src="../component/thirdparty/jquery-blockui/jquery.blockui.min.js" type="text/javascript"></script>
+<script src="../component/thirdparty/uniform/jquery.uniform.min.js" type="text/javascript"></script>
+<script src="../component/thirdparty/jquery-validation/js/jquery.validate.min.js" type="text/javascript"></script>
+<script src="../component/thirdparty/backstretch/jquery.backstretch.min.js" type="text/javascript"></script>
+<script src="./js/security/aes.js" type="text/javascript"></script>
+<script src="./js/security/framework-util.js" type="text/javascript"></script>
+<script src="./js/login.js" type="text/javascript"></script>
+<script src="../component/thirdparty/jquery.i18n/jquery.i18n.properties-1.0.9.js" type="text/javascript"></script>
+<script src="./js/international/loadi18n-login.js" type="text/javascript"></script>
+<script type="text/javascript" src="./appRes/js/custom.js" ></script>
+<script>
+ jQuery(document).ready(function() {
+ var lang = getLanguage();
+ //lang = "en-US";
+ loadi18n_login(lang);
+ $("#com_zte_ums_ict_framework_img_login_logo").css('display','inline');
+ $("#com_zte_ums_ict_framework_img_login_logo_white").css('display','inline');
+ Login.init();
+
+ if(store("inputUserName")){
+ $("#inputUserName").val(store("inputUserName"));
+ }
+ $.ajax({
+ url : FrameConst.REST_GET_USERNAME,
+ type : "GET",
+ cache:false,
+ contentType : 'application/json; charset=utf-8',
+ success: function(data){
+ var userName = data;
+ if(userName && userName !=""){
+ window.location = FrameConst.DEFAULT_LOGINSKIP_PAGE;
+ }
+ }
+ });
+ $("#pageLoading").setToHide();
+ });
+</script>
+
+</html>
diff --git a/uiframe-iui/src/main/resources/webroot/framework/main-page.html b/uiframe-iui/src/main/resources/webroot/framework/main-page.html
new file mode 100644
index 00000000..66637ea2
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/main-page.html
@@ -0,0 +1,102 @@
+<!DOCTYPE html>
+<!--
+
+ Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+-->
+<html>
+ <head>
+ <title id="com_zte_ums_ict_framework_ui_page_title" name_i18n="com_zte_ums_ict_framework_ui_i18n"></title>
+ <meta content="text/html; charset=utf-8" http-equiv="content-type">
+ <meta http-equiv="X-UA-Compatible" content="IE=edge">
+ <meta name="description" content="ICT Main Page" />
+ <meta name="keywords" content="javascript, dynamic, grid, layout, jquery plugin, fit zone"/>
+ <link rel="stylesheet" type="text/css" href="css/style-ict-bootstrap.css" />
+ <link rel="shortcut icon" href="img/integration/zte_logo_16.gif"/>
+ <link href="../component/thirdparty/fakeLoader/fakeLoader.css" rel="stylesheet" type="text/css" />
+ <link href="../component/thirdparty/bootstrap/css/bootstrap.min.css" rel="stylesheet"/>
+ <script type="text/javascript" src="../component/thirdparty/jquery/jquery-1.10.2.min.js"></script>
+ <script type="text/javascript" src="./js/core/const.js"></script>
+ <script type="text/javascript" src="./appRes/js/custom.js" ></script>
+ <script type="text/javascript" src="./js/core/hk.min.js"></script>
+ <script type="text/javascript" src="../component/thirdparty/fakeLoader/fakeLoader.min.js"></script>
+ <script type="text/javascript" src="js/tools.js"></script>
+ <script type="text/javascript" src="../component/thirdparty/jquery.i18n/jquery.i18n.properties-1.0.9.js"></script>
+ <script type="text/javascript" src="../component/thirdparty/jquery-cokie/jquery.cokie.min.js"></script>
+ <script type="text/javascript" src="./js/international/loadi18n.js"></script>
+ <script type="text/javascript" src="./js/mainpage/ict.main.page.js"></script>
+ <script type="text/javascript" src="./js/core/pym.min.js"></script>
+ <script type="text/javascript" src="./js/core/ZteFrameWork.min.js"></script>
+ <style type="text/css">
+ html, body {
+ margin: 0;
+ padding: 0;
+ }
+ .layout {
+ padding-top:0px;
+ }
+ body {
+ font-family: microsoft yahei !important;
+ background: #484747;
+ }
+ .main-page-wrapper {
+ margin-left: 100px;
+ margin-right: 100px;
+ }
+ .brick .row {
+ margin-right: 5px;
+ margin-left: 5px;
+ margin-top: 10px;
+ }
+ .column{
+ padding-left: 5px;
+ padding-right: 5px;
+ }
+ a:hover{
+ color:white;
+ }
+ </style>
+ </head>
+ <body><div id="pageLoading" class="fakeloader" ></div><script type="text/javascript">
+ $("#pageLoading").fakeLoader({text:"",bgColor:"#1178ee",opacity:'1',spinner:"spinner2",zIndex:99999999});
+ </script>
+ <div class='header'>
+ <div class="clearfix">
+ <div class="float-left">
+ <h2><a id="headerName" href="#">Net Numen</a></h2>
+ <!-- <div class='target'>Creating dynamic grid layouts.</div> -->
+ </div>
+ </div>
+ </div>
+ <div class="layout" style="overflow:hidden;">
+ <div class="main-page-wrapper">
+ <div id="freewall" class="row">
+ <div class="col-sm-6 col-md-3 col-lg-3 column"></div>
+ <div class="col-sm-6 col-md-3 col-lg-3 column"></div>
+ <div class="col-sm-6 col-md-3 col-lg-3 column"></div>
+ <div class="col-sm-6 col-md-3 col-lg-3 column"></div>
+ </div>
+ </div>
+ </div>
+ <script type="text/javascript">
+ jQuery(document).ready(function() {
+ initMainPage();
+ $("#pageLoading").setToHide();
+ /* var lang = getLanguage();
+ loadProperties(lang); */
+ });
+ </script>
+ </body>
+</html> \ No newline at end of file
diff --git a/uiframe-iui/src/main/resources/webroot/framework/menus/main_Fmegabar.html b/uiframe-iui/src/main/resources/webroot/framework/menus/main_Fmegabar.html
new file mode 100644
index 00000000..142b1664
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/menus/main_Fmegabar.html
@@ -0,0 +1,17 @@
+<!--
+
+ Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+-->
diff --git a/uiframe-iui/src/main/resources/webroot/framework/menus/main_Fsiderbar.html b/uiframe-iui/src/main/resources/webroot/framework/menus/main_Fsiderbar.html
new file mode 100644
index 00000000..142b1664
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/menus/main_Fsiderbar.html
@@ -0,0 +1,17 @@
+<!--
+
+ Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+-->
diff --git a/uiframe-iui/src/main/resources/webroot/framework/menus/main_siderbar.html b/uiframe-iui/src/main/resources/webroot/framework/menus/main_siderbar.html
new file mode 100644
index 00000000..142b1664
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/menus/main_siderbar.html
@@ -0,0 +1,17 @@
+<!--
+
+ Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+-->
diff --git a/uiframe-iui/src/main/resources/webroot/framework/menus/readme.txt b/uiframe-iui/src/main/resources/webroot/framework/menus/readme.txt
new file mode 100644
index 00000000..ac089ae8
--- /dev/null
+++ b/uiframe-iui/src/main/resources/webroot/framework/menus/readme.txt
@@ -0,0 +1,17 @@
+====
+ Copyright (C) 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+====
+
+本目录放置菜单。 \ No newline at end of file