Commit 0ffb4110 authored by Sven Franck's avatar Sven Franck

adding content

parent 43e4e52d
......@@ -5,85 +5,12 @@ article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,su
.ui-mobile-rendering > * { visibility:visible!important; /* no need */}
.splash:before { width: 100%; position: absolute; top: 0; bottom: 0; left: 0; right: 0; display: block; height: 115%; z-index: 999999; background-color: white; content: "offline version initializing..."; text-align: center; color: #bbb; text-shadow: none; line-height: 150px; vertical-align: bottom; }
/* webfonts
* { font-family: "Open Sans",Arial; font-size: 14.5px; } */
h1,h2,h3,h4, .ui-btn-inner{ font-weight: 400; }
/* responsive css */
.rwd { margin: 1em 0;}
.rwd .ui-first-child {
-webkit-border-top-right-radius: inherit;
border-top-right-radius: inherit;
-webkit-border-top-left-radius: inherit;
border-top-left-radius: inherit;
}
.rwd .ui-last-child {
-webkit-border-bottom-right-radius: inherit;
border-bottom-right-radius: inherit;
-webkit-border-bottom-left-radius: inherit;
border-bottom-left-radius: inherit;
}
.rwd .ui-body {
-webkit-border-radius: inherit;
border-radius: inherit;
border-top-width: 0px;
border-bottom-width: 0px;
}
.rwd .ui-first-child .ui-body {
border-width: 1px 1px 0 1px;
}
.rwd .ui-last-child .ui-body {
border-width: 0 1px 1px 1px;
}
.rwd .ui-rwd-a, .rwd .ui-rwd-b, .rwd .ui-rwd-c { width: 100%; float:none;}
.rwd .ui-slider-track, .rwd .ui-slider-switch {min-width: 8em;}
.rwd .ui-table-reflow tbody th {margin-top: 1.5em;}
@media all and (min-width: 30em) {
.rwd .ui-slider-track, .rwd .ui-slider-switch {min-width: 12em;}
.rwd .ui-table-reflow tbody th {margin-top: 1em;}
/*
.ui-popup-container { max-width: 80%; margin: 0 auto;}
.rwd div { min-height:12em; }
.rwd .ui-rwd-a, .rwd .ui-rwd-b { float:left; width: 49.95%; }
.rwd .ui-rwd-a p, .rwd .ui-rwd-b p { font-size:.8em;}
*/
}
@media all and (max-width: 30em) {
.results_wrapper table ul li { max-width: 250px; }
}
@media all and (min-width: 45em) {
.rwd .ui-slider-track, .rwd .ui-slider-switch {min-width: 16em;}
.rwd .ui-table-reflow tbody th {margin: 0;}
/*
.ui-popup-container { max-width: 70%; margin: 0 auto;}
.rwd div { min-height:17em; }
.rwd .ui-rwd-b { float:left; width: 100%; }
.rwd .ui-rwd-a, .rwd .ui-rwd-c { float:left; width: 49.95%; }
*/
}
@media all and (min-width: 60em) {
.rwd .ui-slider-track, .rwd .ui-slider-switch {min-width: 24em;}
.rwd .ui-table-reflow tbody th {margin: 0;}
/*
.ui-popup { max-width: 60%; margin: 0 auto;}
.rwd { font-size:125%; }
.rwd .ui-rwd-b { float:left; width: 100%; }
.rwd .ui-rwd-a, .rwd .ui-rwd-c { float:left; width: 49.95%; }
*/
}
/* results table */
.results_wrapper table thead th {padding: 0.1em 0.25em;}
/* custom layouting */
.ui-title {
color: white;
......@@ -104,6 +31,12 @@ h1,h2,h3,h4, .ui-btn-inner{ font-weight: 400; }
font-weight: bold;
text-align: center;
}
.super {
font-size: 1em !important;
color: #636363;
font-weight: bold;
text-align: center;
}
.small {
font-size: .8em !important;
color: #636363;
......@@ -125,7 +58,8 @@ h1,h2,h3,h4, .ui-btn-inner{ font-weight: 400; }
.ui-header-fixed.ui-fixed-hidden { padding-top: 1px; top: -1px; }
/* center the table, override JQM CSS */
table { margin: 0 auto; width: auto !important; display: table !important; }
table { margin: 0 auto; }
table.table-inline { width: auto !important; display: table !important; }
.ui-table thead th { padding-bottom: .25em; }
/* remove dotted abbr border */
......@@ -138,7 +72,6 @@ div.ui-body h2 { margin: 0.5em 0 0; }
/* ui-popup */
.ui-popup { max-width: 400px;}
.ui-popup .ui-header {margin: -15px -15px 15px; }
.ui-popup .ui-header {
-webkit-border-bottom-right-radius: 0 !important;
......@@ -157,8 +90,3 @@ div.ui-body h2 { margin: 0.5em 0 0; }
/* ad */
.ad_wrapper {text-align: center;}
.ad_self {height: 80px;}
/* results */
/* configure */
/* move slider input to the right, add meter */
.ui-slider {float:left;}
.measure {float: right; line-height: 30px;padding: 7px 2px 5px 6px;}
input.ui-input-text.ui-slider-input { float: right;}
.ui-slider-track, .ui-slider-switch { margin: 0 68px 0 15px; }
/* table */
.quote_config .ui-block-c { padding-top: 0; padding-bottom: 0; text-align: center; }
.quote_config .get_quote{ margin-top: 0;}
.quote_config .get_quote .ui-btn-text {font-weight: bold !important;}
\ No newline at end of file
/* simple menu */
.simple_menu {list-style: none; display: inline-block; padding: 0 !important;}
.simple_menu li {float: right; padding: 0 0.5em;}
section {text-align: center; }
section p {margin: 0.2em 0;}
\ No newline at end of file
<html>
<!DOCTYPE html>
<head>
<!--
<script type="text/javascript" src="js/jqm-gadget.js"></script>
<link rel="stylesheet" href="css/jqm-gadget.css" />
-->
</head>
<body>
<div class="ad_wrapper">
<a href="#" title=""><img src="../img/placeholder.jpg" data-i18n="[alt]tx.ad_here" alt="" class="ad_self" /></a>
<!--
</div>
<script type="text/javascript" language="javascript">
//<![CDATA[
$(document).ready(function() {
console.log("attaching gadget_call1 and 3");
gadget1 = RenderJs.GadgetIndex.getGadgetById("g1");
gadget1.gadget_call3 = function (e){gadget_call3("test parameter")};
gadget1.gadget_call1 = function (e){gadget_call1()};
var gadget = RenderJs.getSelfGadget();
// interaction listener
gadget.translate = function(){
$.fn.util.lang(gadget.dom);
};
// trigger enhancement
$(this).trigger("render_enhance", {gadget: gadget.dom});
});
//]]>
</script>
-->
</body>
</html>
<html>
<!DOCTYPE html>
<head>
<style type="text/css">
.menu_analysis { text-align: center;}
</style>
</head>
<body>
<div class="method_menu" data-role="controlgroup" datatype="horizontal">
<a href="providers.html" data-role="button" data-i18n="[title]gen.providers">bla</a>
<a href="criteria.html" data-role="button" data-i18n="[title]gen.monitoring">bla</a>
<div class="menu_analysis">
<div class="method_menu" data-role="controlgroup" data-type="horizontal">
<a class="t" data-inline="true" href="providers.html" data-role="button" data-i18n-target=".ui-btn-text" data-i18n="[title]gen.providers_info;gen.providers"></a>
<a class="t" data-inline="true" href="criteria.html" data-role="button" data-i18n-target=".ui-btn-text" data-i18n="[title]gen.monitoring_info;gen.monitoring"></a>
</div>
</div>
</script>
<script type="text/javascript" language="javascript">
//<![CDATA[
$(document).ready(function() {
var gadget = RenderJs.getSelfGadget();
// interaction listener
gadget.translate = function(){
$.fn.util.lang(gadget.dom);
};
gadget.dom.find('.method_menu').controlgroup({
create: function( event, ui ) {}
});
// trigger enhancement
$(this).trigger("render_enhance", {gadget: gadget.dom});
});
//]]>
</script>
......
<html>
<!DOCTYPE html>
<head>
<style type="text/css">
/* move slider input to the right, add meter */
.ui-slider {float:left;}
.measure {float: right; line-height: 30px;padding: 7px 2px 5px 6px;}
input.ui-input-text.ui-slider-input { float: right;}
.ui-slider-track, .ui-slider-switch { margin: 0 68px 0 15px; }
/* table */
.quote_config .ui-block-c { padding-top: 0; padding-bottom: 0; text-align: center; }
.quote_config .get_quote { margin-top: 0;}
.quote_config .get_quote .ui-btn-text {font-weight: bold !important;}
.menu_compare {text-align: center;}
/* responsive css */
quote_config.rwd { margin: 1em 0;}
.rwd .ui-first-child {
-webkit-border-top-right-radius: inherit;
border-top-right-radius: inherit;
-webkit-border-top-left-radius: inherit;
border-top-left-radius: inherit;
}
.rwd .ui-last-child {
-webkit-border-bottom-right-radius: inherit;
border-bottom-right-radius: inherit;
-webkit-border-bottom-left-radius: inherit;
border-bottom-left-radius: inherit;
}
.rwd .ui-body {
-webkit-border-radius: inherit;
border-radius: inherit;
border-top-width: 0px;
border-bottom-width: 0px;
}
.rwd .ui-first-child .ui-body {
border-width: 1px 1px 0 1px;
}
.rwd .ui-last-child .ui-body {
border-width: 0 1px 1px 1px;
}
.rwd .ui-rwd-a, .rwd .ui-rwd-b, .rwd .ui-rwd-c { width: 100%; float:none;}
.rwd .ui-slider-track, .rwd .ui-slider-switch {min-width: 8em;}
.rwd .ui-table-reflow tbody th {margin-top: 1.5em; text-align: center;}
.rwd .info_popup { margin: 0 .5em;}
@media all and (min-width: 30em) {
.rwd .ui-slider-track, .rwd .ui-slider-switch {min-width: 12em;}
.rwd .ui-table-reflow tbody th {margin-top: 1em;}
.rwd .info_popup { margin: 0;}
/*
.ui-popup-container { max-width: 80%; margin: 0 auto;}
.rwd div { min-height:12em; }
.rwd .ui-rwd-a p, .rwd .ui-rwd-b p { font-size:.8em;}
.rwd .ui-rwd-a, .rwd .ui-rwd-b { float:left; width: 49.95%; }*/
}
@media all and (max-width: 30em) {
.results_wrapper table ul li { max-width: 250px; }
}
@media all and (min-width: 45em) {
.rwd .ui-slider-track, .rwd .ui-slider-switch {min-width: 16em;}
.rwd .ui-table-reflow tbody th {margin: 0;}
.rwd .info_popup { margin: 0;}
/*
.ui-popup-container { max-width: 70%; margin: 0 auto;}
.rwd div { min-height:17em; }
.rwd .ui-rwd-b { float:left; width: 100%; }
.rwd .ui-rwd-a, .rwd .ui-rwd-c { float:left; width: 49.95%; }*/
}
@media all and (min-width: 60em) {
.rwd .ui-slider-track, .rwd .ui-slider-switch {min-width: 24em;}
.rwd .ui-table-reflow tbody th {margin: 0;}
.rwd .info_popup { margin: 0;}
/*
.ui-popup { max-width: 60%; margin: 0 auto;}
.rwd { font-size:125%; }
.rwd .ui-rwd-b { float:left; width: 100%; }
.rwd .ui-rwd-a, .rwd .ui-rwd-c { float:left; width: 49.95%; }*/
}
</style>
</head>
<body>
......@@ -11,7 +95,7 @@
</div>
<div class="ui-rwd-b">
<div class="ui-body ui-body-d">
<table data-role="table" id="configure" data-mode="reflow" class="ui-responsive table-stroke">
<table data-role="table" id="configure" data-mode="reflow" class="ui-responsive table-stroke table-inline">
<thead>
<tr>
<th data-priority="persist"><abbr class="t" data-i18n="[title]gen.feature_name;gen.feature_name"></abbr></th>
......@@ -26,7 +110,7 @@
<div class="measure">GB</div>
</td>
<td>
<a data-position-to="window" class="t scale-a" href="#database_info" data-rel="popup" data-role="button" data-theme="c" data-icon="info" data-inline="true" data-i18n-target=".ui-btn-text" data-i18n="[title]gen.info;[html]gen.info"></a>
<a data-position-to="window" class="info_popup t scale-a" href="#database_info" data-rel="popup" data-role="button" data-theme="c" data-icon="info" data-inline="true" data-i18n-target=".ui-btn-text" data-i18n="[title]gen.info;[html]gen.info"></a>
<div data-role="popup" id="database_info" data-overlay-theme="a" data-theme="c" class="ui-content">
<div data-role="header" data-theme="f" class="ui-header ui-body-f" role="banner">
<h1 class="ui-title t" role="heading" data-i18n="feat.database_info" aria-level="1"></h1>
......@@ -42,7 +126,7 @@
<div class="measure">GB</div>
</td>
<td>
<a data-position-to="window" class="t scale-a" data-role="button" data-overlay-theme="a" data-theme="c" data-icon="info" data-inline="true" data-i18n-target=".ui-btn-text" data-i18n="[title]gen.info;[html]gen.info" href="#archive_info" data-rel="popup"></a>
<a data-position-to="window" class="info_popup t scale-a" data-role="button" data-overlay-theme="a" data-theme="c" data-icon="info" data-inline="true" data-i18n-target=".ui-btn-text" data-i18n="[title]gen.info;[html]gen.info" href="#archive_info" data-rel="popup"></a>
<div data-role="popup" id="archive_info" data-overlay-theme="a" data-theme="c" class="ui-content">
<div data-role="header" data-theme="f" class="ui-header ui-body-f" role="banner">
<h1 class="ui-title t" role="heading" data-i18n="feat.archive_info" aria-level="1"></h1>
......@@ -58,7 +142,7 @@
<div class="measure">GB</div>
</td>
<td>
<a data-position-to="window" class="t scale-a" data-role="button" data-overlay-theme="a" data-theme="c" data-icon="info" data-inline="true" data-i18n-target=".ui-btn-text" data-i18n="[title]gen.info;[html]gen.info" href="#ram_info" data-rel="popup"></a>
<a data-position-to="window" class="info_popup t scale-a" data-role="button" data-overlay-theme="a" data-theme="c" data-icon="info" data-inline="true" data-i18n-target=".ui-btn-text" data-i18n="[title]gen.info;[html]gen.info" href="#ram_info" data-rel="popup"></a>
<div data-role="popup" id="ram_info" data-overlay-theme="a" data-theme="c" class="ui-content">
<div data-role="header" data-theme="f" class="ui-header ui-body-f" role="banner">
<h1 class="ui-title t" role="heading" data-i18n="feat.ram_info" aria-level="1"></h1>
......@@ -74,7 +158,7 @@
<div class="measure">GHz</div>
</td>
<td>
<a data-position-to="window" class="t scale-a" data-role="button" data-overlay-theme="a" data-theme="c" data-icon="info" data-inline="true" data-i18n-target=".ui-btn-text" data-i18n="[title]gen.info;[html]gen.info" href="#cpu_info" data-rel="popup"></a>
<a data-position-to="window" class="info_popup t scale-a" data-role="button" data-overlay-theme="a" data-theme="c" data-icon="info" data-inline="true" data-i18n-target=".ui-btn-text" data-i18n="[title]gen.info;[html]gen.info" href="#cpu_info" data-rel="popup"></a>
<div data-role="popup" id="cpu_info" data-overlay-theme="a" data-theme="c" class="ui-content">
<div data-role="header" data-theme="f" class="ui-header ui-body-f" role="banner">
<h1 class="ui-title t" role="heading" data-i18n="feat.cpu_info" aria-level="1"></h1>
......@@ -94,7 +178,7 @@
</div>
</td>
<td>
<a data-position-to="window" class="t scale-a" data-role="button" data-overlay-theme="a" data-theme="c" data-icon="info" data-inline="true" data-i18n-target=".ui-btn-text" data-i18n="[title]gen.info;[html]gen.info" href="#type_info" data-rel="popup"></a>
<a data-position-to="window" class="info_popup t scale-a" data-role="button" data-overlay-theme="a" data-theme="c" data-icon="info" data-inline="true" data-i18n-target=".ui-btn-text" data-i18n="[title]gen.info;[html]gen.info" href="#type_info" data-rel="popup"></a>
<div data-role="popup" id="type_info" data-overlay-theme="a" data-theme="c" class="ui-content">
<div data-role="header" data-theme="f" class="ui-header ui-body-f" role="banner">
<h1 class="ui-title t" role="heading" data-i18n="feat.type_info" aria-level="1"></h1>
......@@ -113,7 +197,7 @@
</select>
</td>
<td>
<a data-position-to="window" class="t scale-a" data-role="button" data-theme="c" data-icon="info" data-inline="true" href="#architecture_info" data-rel="popup">Info</a>
<a data-position-to="window" class="info_popup t scale-a" data-role="button" data-theme="c" data-icon="info" data-inline="true" href="#architecture_info" data-rel="popup">Info</a>
<div data-role="popup" id="architecture_info" data-theme="c" data-overlay-theme="a" class="ui-content">
<div data-role="header" data-theme="f" class="ui-header ui-body-f" role="banner">
<h1 class="ui-title t" role="heading" data-i18n="feat.architecture_info" aria-level="1"></h1>
......@@ -127,7 +211,7 @@
</div>
</div>
<div class="ui-rwd-c ui-last-child">
<div class="ui-body ui-body-d">
<div class="ui-body ui-body-d menu_compare">
<a href="results.html" data-transitions="slide" data-role="button" data-icon="arrow-r" data-iconpos="right" data-theme="b" data-inline="true" class="t get_quote" data-i18n-target=".ui-btn-text" data-i18n="[title]tx.get_quote_info;[html]tx.get_quote"></a>
</div>
</div>
......
<html>
<!DOCTYPE html>
<head>
<style type="text/css">
/* header wrappers */
......@@ -85,10 +85,18 @@
<script type="text/javascript" language="javascript">
//<![CDATA[
$(document).ready(function() {
// TODOS: make RenderJs.getSelfGadget() available on JQM events
var gadget = RenderJs.getSelfGadget(),
lang = $.fn.fauna.i18n_current_lang,
switchIcon = function () {
// this should be the callback after create, which sets the icon
// however setting elem here cannot access the JQM enhanced elements
// although the functions is called after JQM is done enhancing...
// var elem = gadget.dom.find(".setIcon .ui-icon");
// if (elem.length > 0) {
// elem.removeClass()
// .addClass('ui-icon ui-shadow ui-icon-lang '+set_icon);
// }
},
// set interactions
set_lang = function (language) {
var set_icon, elem;
......@@ -114,19 +122,18 @@
.trigger("translate");
if (gadget.isEnhanced() === false) {
$(document).trigger("render_enhance", {gadget: gadget.dom});
$(document).trigger("render_enhance", {"gadget": gadget.dom, "callback":switchIcon()});
gadget.setEnhanced(true);
}
// if jqm has not rendered the elements inside the gadget
// this will do nothing wihout a timeout set
// NONO!
setTimeout(function () {
elem = gadget.dom.find(".setIcon .ui-icon");
if (elem.length > 0) {
elem.removeClass()
.addClass('ui-icon ui-shadow ui-icon-lang '+set_icon);
}
},5);
},50);
};
// set page title
......@@ -136,12 +143,15 @@
$(document).on('i18n_ready', function (e, data) {
set_lang(data.lang);
});
console.log("hello lang =" +lang);
// regular page setter
if (lang !== undefined) {
set_lang($.fn.fauna.i18n_current_lang);
}
console.log("binding to this=");
console.log( $(this) );
console.log("whats left");
console.log( $(this).filter(function() { return $(this).jqmData("i18n") !== true; }))
// switch language
$(this)
.filter(function() { return $(this).jqmData("i18n") !== true; })
......
<html>
<!DOCTYPE html>
<head>
</head>
<body>
......
<html>
<!DOCTYPE html>
<head>
<style type="text/css">
/* simple menu */
.simple_menu {list-style: none; display: inline-block; padding: 0 !important;}
.simple_menu li {float: right; padding: 0 0.5em;}
section {text-align: center; }
section p {margin: 0.2em 0;}
</style>
</head>
<body>
......@@ -21,9 +27,14 @@
//<![CDATA[
$(document).ready(function() {
var gadget = RenderJs.getSelfGadget();
// interaction listener
gadget.translate = function(){
$.fn.util.lang(gadget.dom);
};
// trigger enhancement
$(this).trigger("render_enhance", {gadget: gadget.dom});
});
//]]>
</script>
......
<html>
<!DOCTYPE html>
<head>
<!-- http://www.tekadept.com/M/Charts#pageBarChart
<script type="text/javascript" src="../js/plugins/jqplot/jqplot.js"></script>
<script type="text/javascript" src="../js/plugins/jqplot/jqplot_barrenderer.js"></script>
<script type="text/javascript" src="../js/plugins/jqplot/jqplot_categoryaxisrenderer.js"></script>-->
<link rel="stylesheet" href="../css/gadget_results.css" />
<style type="text/css">
/* search_criteria */
.search_info {text-align: center;}
.search_criteria {font-weight: bold; }
/* results table */
.results_wrapper table thead th {padding: 0.1em 0.25em;}
.results_wrapper table tbody th, .results_wrapper table tbody td,
.results_wrapper table thead th, .results_wrapper table thead td {text-align: center;}
.results_wrapper {padding: 0; margin: 1em; }
.results_wrapper .ui-mini .ui-btn-inner {font-size: 16px !important;}
.results_wrapper .ui-select .ui-btn-icon-right .ui-btn-inner,.results_wrapper .ui-select .ui-li-has-count .ui-btn-inner,
.results_wrapper .ui-table-columntoggle-btn .ui-btn-inner {padding-top: 11px; padding-bottom: 11px;}
.results_wrapper .image_wrapper {max-height: 80px; text-align: center; padding: 0; display: block;}
.results_wrapper .image_wrapper img {max-height: inherit;}
.results_wrapper .provider_name {text-align: center;}
/* popups */
.ui-collapsible-popup {padding: 0;}
.ui-collapsible-popup .ui-collapsible-set-horizontal .ui-collapsible-content {margin-top: -15px; border:0 none; padding: 0;}
#results .ui-popup { width: 25em;}
@media all and (min-width: 30em) {
#results .ui-popup { width: 25em;}
}
@media all and (max-width: 30em) {
#results .ui-popup { width: 25em;}
}
@media all and (min-width: 45em) {
#results .ui-popup { width: 35em;}
}
@media all and (min-width: 60em) {
#results .ui-popup { width: 50em;}
}
/* jqplot */
/*rules for the plot target div. These will be cascaded down to all plot elements according to css rules*/
.jqplot-target { position: relative; color: #666666; font-family: "Trebuchet MS", Arial, Helvetica, sans-serif; font-size: 1em; height: 300px; width: 400px;}
/*rules applied to all axes*/
.jqplot-axis { font-size: 0.75em;}
.jqplot-xaxis { margin-top: 10px;}
.jqplot-x2axis { margin-bottom: 10px;}
.jqplot-yaxis {margin-right: 10px;}
.jqplot-y2axis, .jqplot-y3axis, .jqplot-y4axis, .jqplot-y5axis, .jqplot-y6axis, .jqplot-y7axis, .jqplot-y8axis, .jqplot-y9axis, .jqplot-yMidAxis { margin-left: 10px;margin-right: 10px;}
/*rules applied to all axis tick divs*/
.jqplot-axis-tick, .jqplot-xaxis-tick, .jqplot-yaxis-tick, .jqplot-x2axis-tick, .jqplot-y2axis-tick, .jqplot-y3axis-tick, .jqplot-y4axis-tick, .jqplot-y5axis-tick, .jqplot-y6axis-tick, .jqplot-y7axis-tick, .jqplot-y8axis-tick, .jqplot-y9axis-tick, .jqplot-yMidAxis-tick {position: absolute;white-space: pre;}
.jqplot-xaxis-tick { top: 0px; left: 15px; padding-top: 10px; vertical-align: top; }
.jqplot-x2axis-tick { bottom: 0px; /* initial position untill tick is drawn in proper place */ left: 15px; /* padding-bottom: 10px;*/ vertical-align: bottom; }
.jqplot-yaxis-tick { right: 0px; /* initial position untill tick is drawn in proper place */ top: 15px; /* padding-right: 10px;*/ text-align: right; }
.jqplot-yaxis-tick.jqplot-breakTick { right: -20px; margin-right: 0px; padding:1px 5px 1px 5px; /* background-color: white;*/ z-index: 2; font-size: 1.5em; }
.jqplot-y2axis-tick, .jqplot-y3axis-tick, .jqplot-y4axis-tick, .jqplot-y5axis-tick, .jqplot-y6axis-tick, .jqplot-y7axis-tick, .jqplot-y8axis-tick, .jqplot-y9axis-tick { left: 0px; /* initial position untill tick is drawn in proper place */ top: 15px; /* padding-left: 10px;*/ /* padding-right: 15px;*/ text-align: left; }
.jqplot-yMidAxis-tick { text-align: center; white-space: nowrap; }
.jqplot-xaxis-label { margin-top: 10px; font-size: 11pt; position: absolute; }
.jqplot-x2axis-label { margin-bottom: 10px; font-size: 11pt; position: absolute; }
.jqplot-yaxis-label { margin-right: 10px; /* text-align: center;*/ font-size: 11pt; position: absolute; }
.jqplot-yMidAxis-label { font-size: 11pt; position: absolute;}
.jqplot-y2axis-label, .jqplot-y3axis-label, .jqplot-y4axis-label, .jqplot-y5axis-label, .jqplot-y6axis-label, .jqplot-y7axis-label, .jqplot-y8axis-label, .jqplot-y9axis-label { /* text-align: center;*/ font-size: 11pt; margin-left: 10px; position: absolute; }
.jqplot-meterGauge-tick { font-size: 0.75em; color: #999999; }
.jqplot-meterGauge-label { font-size: 1em; color: #999999; }
table.jqplot-table-legend { margin-top: 12px; margin-bottom: 12px; margin-left: 12px; margin-right: 12px; }
table.jqplot-table-legend, table.jqplot-cursor-legend { background-color: rgba(255,255,255,0.6); border: 1px solid #cccccc; position: absolute; font-size: 0.75em; }
td.jqplot-table-legend { vertical-align:middle; }
/* These rules could be used instead of assigning element styles and relying on js object properties. */
/* td.jqplot-table-legend-swatch { padding-top: 0.5em; text-align: center; }
tr.jqplot-table-legend:first td.jqplot-table-legend-swatch { padding-top: 0px; } */
td.jqplot-seriesToggle:hover, td.jqplot-seriesToggle:active { cursor: pointer; }
.jqplot-table-legend .jqplot-series-hidden { text-decoration: line-through; }
div.jqplot-table-legend-swatch-outline { border: 1px solid #cccccc; padding:1px; }
div.jqplot-table-legend-swatch { width:0px; height:0px; border-top-width: 5px; border-bottom-width: 5px; border-left-width: 6px; border-right-width: 6px; border-top-style: solid; border-bottom-style: solid; border-left-style: solid; border-right-style: solid; }
.jqplot-title { top: 0px; left: 0px; padding-bottom: 0.5em; font-size: 1.2em; }
table.jqplot-cursor-tooltip { border: 1px solid #cccccc; font-size: 0.75em; }
.jqplot-cursor-tooltip { border: 1px solid #cccccc; font-size: 0.75em; white-space: nowrap; background: rgba(208,208,208,0.5); padding: 1px; }
.jqplot-highlighter-tooltip, .jqplot-canvasOverlay-tooltip { border: 1px solid #cccccc; font-size: 0.75em; white-space: nowrap; background: rgba(208,208,208,0.5); padding: 1px; }
.jqplot-point-label { font-size: 0.75em; z-index: 2; }
td.jqplot-cursor-legend-swatch { vertical-align: middle; text-align: center; }
div.jqplot-cursor-legend-swatch { width: 1.2em; height: 0.7em; }
.jqplot-error { /* Styles added to the plot target container when there is an error go here.*/ text-align: center; }
.jqplot-error-message { /* Styling of the custom error message div goes here.*/ position: relative; top: 46%; display: inline-block; }
div.jqplot-bubble-label { font-size: 0.8em; /* background: rgba(90%, 90%, 90%, 0.15);*/ padding-left: 2px; padding-right: 2px; color: rgb(20%, 20%, 20%); }
div.jqplot-bubble-label.jqplot-bubble-label-highlight { background: rgba(90%, 90%, 90%, 0.7); }
div.jqplot-noData-container { text-align: center; background-color: rgba(96%, 96%, 96%, 0.3); }
</style>
</head>
<body>
<p class="small">32 GB RAM | 8 Core | SSD Storage</p>
<div class="rwd ui-corner-all results">
<div class="ui-rwd-a ui-first-child">
<div class="ui-body ui-body-d">
<h2 class="supersize t" data-i18n="tx.search_results"></h2>
</div>
</div>
<div class="ui-rwd-b">
<div class="ui-body ui-body-d results_wrapper">
<p class="search_info"><span class="t search_title" data-i18n="gen.criteria"></span>&nbsp;<span class="search_criteria">32 GB RAM | 8 Core | SSD Storage</span></p>
<div class="ui-body ui-body-d results_wrapper ui-corner-all">
<div data-slot="true" data-slot-id="1">
<label for="a" data-i18n="results.sorting" class="select">Sort</label>
<select data-theme="f" id="form_results_sort" name="form_results_sort">
......@@ -29,28 +104,28 @@
</select>
</div>
<div data-slot="true" data-slot-id="5">
<a href="index.html" data-transitions="slide" data-role="button" data-icon="back" data-iconpos="right" data-theme="b" data-inline="true" class="t start_over" data-i18n-target=".ui-btn-text" data-i18n="[title]tx.start_over_info;[html]tx.start_over"></a>
<a href="index.html" data-transitions="slide" data-role="button" data-icon="back" data-iconpos="right" data-theme="b" class="t start_over" data-i18n-target=".ui-btn-text" data-i18n="[title]tx.start_over_info;[html]tx.start_over"></a>
</div>
<table class="ui-responsive table-stroke" data-filter-theme="c" data-role="table" id="results" data-mode="columntoggle" data-wrapper="c" data-filter-slot="2" data-top-container="true" data-bottom-container="true" data-filter="true">
<thead>
<tr>
<th data-sortable="true" data-priority="persist"><abbr class="t" data-i18n-target=".ui-btn-text" data-i18n="[title]gen.provider_info;[html]gen.provider;gen.provider;" title=""></abbr></th>
<th data-priority="persist"><abbr class="t" data-i18n="[title]gen.provider_info;gen.provider;" title=""></abbr></th>
<th data-priority="4"><abbr class="t" data-i18n="[title]gen.data_info;gen.data" title=""></abbr></th>
<th data-priority="5"><abbr class="t" data-i18n="[title]gen.availability_info;gen.availability" title=""></abbr></th>
<th data-sortable="true" data-priority="persist"><abbr class="t" data-i18n-target=".ui-btn-text" data-i18n="[title]gen.price_info;[html]gen.price;gen.price" title=""></abbr></th>
<th data-priority="3"><abbr class="t" data-i18n="[title]gen.details_info;gen.details" title=""></abbr></th>
<th data-priority="6"><abbr class="t" data-i18n="[title]gen.price_info;gen.price;gen.price" title=""></abbr></th>
<th data-priority="persist"><abbr class="t" data-i18n="[title]gen.details_info;gen.details" title=""></abbr></th>
</tr>
</thead>
<tbody>
<tr>
<th><a href="#" title=""><img src="../img/providers/ec2.png"><h2>Amazon EC2</h2></a></th>
<th><a href="#" title=""><span class="image_wrapper"><img src="../img/providers/ec2.png" alt=""></span></a><h2 class="provider_name small">Amazon EC2</h2></th>
<td><span class="key super key_loss">10<sup>-4</sup></span></td>
<td><span class="key super key_availability">99.2%</span></td>
<td><span class="key super key_cost">120€</span></td>
<td>
<a data-position-to="window" class="t scale-a" href="#provider_info_1" data-rel="popup" data-role="button" data-theme="c" data-icon="info" data-inline="true" data-i18n-target=".ui-btn-text" data-i18n="[title]gen.details_info;[html]gen.details"></a>
<div data-role="popup" id="provider_info_1" data-overlay-theme="a" data-theme="c" class="ui-content">
<div data-role="popup" id="provider_info_1" data-overlay-theme="a" data-theme="c" class="ui-content ui-collapsible-popup">
<div data-role="collapsible-set" data-type="horizontal" data-theme="f" data-content-theme="c">
<div data-role="collapsible" data-collapsed-icon="arrow-d" data-expanded-icon="info" data-collapsed="false">
<h1>Load</h1>
......@@ -58,12 +133,12 @@
<div data-role="collapsible" data-collapsed-icon="pulse" data-expanded-icon="info">
<h1>CPU</h1>
</div>
<div data-role="collapsible" data-collapsed-icon="gear" data-expanded-icon="info">
<div data-role="collapsible" data-collapsed="false" data-collapsed-icon="gear" data-expanded-icon="info">
<h1>DTB</h1>
<div data-theme="c" class="ui-body-c">
<div data-role="controlgroup" data-type="horizontal">
<input type="button" value="Yes" name="results_dtb_sql" />
<input type="button" value="Yes" name="results_dtb_postgre" />
<input type="button" value="MySQLBench" name="results_dtb_sql" />
<input type="button" value="something else" name="results_dtb_postgre" />
</div>
<div id="barChart" class="myChart"></div>
<button id="refreshBarChart" value="Refresh Chart" data-mini="true"></button>
......@@ -84,13 +159,13 @@
</tr>
<tr>
<tr>
<th><a href="#" title=""><img src="../img/providers/ovh.png"><h2>OVH SP</h2></a></th>
<th><a href="#" title=""><span class="image_wrapper"><img src="../img/providers/ovh.png"></a></span><h2 class="provider_name small">OVH SP</h2></th>
<td><span class="key super key_loss">10<sup>-6</sup></span></td>
<td><span class="key super key_availability">99.82%</span></td>
<td><span class="key super key_cost">110€</span></td>
<td>
<a data-position-to="window" class="t scale-a" href="#provider_info_1" data-rel="popup" data-role="button" data-theme="c" data-icon="info" data-inline="true" data-i18n-target=".ui-btn-text" data-i18n="[title]gen.details_info;[html]gen.details"></a>
<div data-role="popup" id="provider_info_1" data-overlay-theme="a" data-theme="c" class="ui-content">
<a data-position-to="window" class="t scale-a" href="#provider_info_2" data-rel="popup" data-role="button" data-theme="c" data-icon="info" data-inline="true" data-i18n-target=".ui-btn-text" data-i18n="[title]gen.details_info;[html]gen.details"></a>
<div data-role="popup" id="provider_info_2" data-overlay-theme="a" data-theme="c" class="ui-content ui-collapsible-popup">
<div data-role="header" data-theme="f" class="ui-header ui-body-f" role="banner">
<h1 class="ui-title t" role="heading" data-i18n="gen.details_info" aria-level="1"></h1>
</div>
......@@ -99,13 +174,13 @@
</td>
</tr>
<tr>
<th><a href="#" title=""><img src="../img/providers/ggp.png"><h2>GoGRID Plus</h2></th>
<th><a href="#" title=""><span class="image_wrapper"><img src="../img/providers/ggp.png"></span></a><h2 class="provider_name small">GoGRID Plus</h2></th>
<td><span class="key super key_loss">10<sup>-6</sup></span></td>
<td><span class="key super key_availability">99.22%</span></td>
<td><span class="key super key_cost">90€</span></td>
<td>
<a data-position-to="window" class="t scale-a" href="#provider_info_1" data-rel="popup" data-role="button" data-theme="c" data-icon="info" data-inline="true" data-i18n-target=".ui-btn-text" data-i18n="[title]gen.details_info;[html]gen.details"></a>
<div data-role="popup" id="provider_info_1" data-overlay-theme="a" data-theme="c" class="ui-content">
<a data-position-to="window" class="t scale-a" href="#provider_info_3" data-rel="popup" data-role="button" data-theme="c" data-icon="info" data-inline="true" data-i18n-target=".ui-btn-text" data-i18n="[title]gen.details_info;[html]gen.details"></a>
<div data-role="popup" id="provider_info_3" data-overlay-theme="a" data-theme="c" class="ui-content ui-collapsible-popup">
<div data-role="header" data-theme="f" class="ui-header ui-body-f" role="banner">
<h1 class="ui-title t" role="heading" data-i18n="gen.details_info" aria-level="1"></h1>
</div>
......@@ -115,22 +190,64 @@
</tr>
</tbody>
</table>
</div>
</div>
<div class="ui-rwd-c ui-last-child">
<div class="ui-body ui-body-d" data-slot-id="5">
</div>
</div>
</div>
</div>
<script src="../js/plugins/jqplot/jquery.jqplot.js" type="text/javascript"></script>
<script src="../js/plugins/jqplot/jqplot.barRenderer.js" type="text/javascript"></script>
<script src="../js/plugins/jqplot/jqplot.categoryAxisRenderer.js" type="text/javascript"></script>
<script type="text/javascript" language="javascript">
//<![CDATA[
$(document).ready(function() {
var gadget = RenderJs.getSelfGadget();
/* jqplot */
RocknCoder.Pages.manageBarChart = function () {
var pageshow = function () {
updateChart();
$("#refreshBarChart").click(function(){
updateChart();
});
},
pagehide = function () {
$("#refreshBarChart").unbind('click');
},
updateChart= function(){
var barA = parseInt($("#pageBarSliderA").val(),10),
barB = parseInt($("#pageBarSliderB").val(),10),
barC = parseInt($("#pageBarSliderC").val(),10);
showChart(barA, barB, barC);
},
showChart = function(barA, barB, barC){
$.jqplot('barChart', [[[barA,1], [barB,3], [barC,5]]], {
seriesDefaults:{
renderer:$.jqplot.BarRenderer,
shadowAngle: 135,
rendererOptions: {
barDirection: 'horizontal'
},
pointLabels: {show: true, formatString: '%d'}
},
axes: {
yaxis: {
renderer: $.jqplot.CategoryAxisRenderer
}
}
}).replot({clear: true, resetAxes:true});
};
return {
pageshow: pageshow,
pagehide: pagehide
}
}();
// interaction listener
gadget.translate = function(){
$.fn.util.lang(gadget.dom);
};
// trigger enhancement
$(this).trigger("render_enhance", {gadget: gadget.dom});
});
//]]>
</script>
......
<!DOCTYPE html>
<head>
</head>
<body>
<div id="results_list" data-gadget="../gadgets/results.html"></div>
<div id="results_ad" data-gadget="../gadgets/ad.html"></div>
<div class="rwd">
<div class="ui-rwd-a">
<div id="results_social" data-gadget="../gadgets/social.html"></div>
</div>
<div class="ui-rwd-b">
<div id="results_analysis" data-gadget="../gadgets/analysis.html"></div>
</div>
</div>
<div id="results_nav" data-gadget="../gadgets/navigation.html"></div>
<p class="mini t" data-i18n="gen.disclaimer"></p>
<!-- interactions -->
<div data-gadget="" class="main-interactor"
data-gadget-connection="[
{&quot;source&quot;: &quot;results_wrapper.route_translate&quot;, &quot;destination&quot;: &quot;results_list.translate&quot;}
, {&quot;source&quot;: &quot;results_wrapper.route_translate&quot;, &quot;destination&quot;: &quot;results_ad.translate&quot;}
, {&quot;source&quot;: &quot;results_wrapper.route_translate&quot;, &quot;destination&quot;: &quot;results_social.translate&quot;}
, {&quot;source&quot;: &quot;results_wrapper.route_translate&quot;, &quot;destination&quot;: &quot;results_analysis.translate&quot;}
, {&quot;source&quot;: &quot;results_wrapper.route_translate&quot;, &quot;destination&quot;: &quot;results_nav.translate&quot;}
]">
<script type="text/javascript" language="javascript">
//<![CDATA[
$(document).ready(function() {
var gadget = RenderJs.getSelfGadget();
gadget.translate = function(){
$.fn.util.lang(gadget.dom);
gadget.dom.trigger("route_translate");
};
});
//]]>
</script>
</body>
</html>
\ No newline at end of file
<html>
<!DOCTYPE html>
<head>
<style type="text/css">
.menu_social {text-align: center;}
.action_menu {display: inline-block;}
.follow_us {display: inline-block; margin: 0; padding: 0 .5em 0 0;}
</style>
</head>
<body>
<div data-role="fieldcontain" class="align_right">
<p class="super t float_left" data-i18n="soc.fw"></p>
<div class="menu_social">
<div>
<p class="super t follow_us" data-i18n="soc.fw"></p>
<div data-role="controlgroup" data-type="horizontal" data-theme="c" class="action_menu">
<a href="#" id="follow_twitter" data-role="button" data-icon="tw" data-theme="c" class="t scale-a" data-i18n-target=".ui-btn-text" data-i18n="[title]soc.tw_fw;[html]soc.tw"></a>
<a href="#" id="follow_facebook" data-role="button" data-icon="fb" data-theme="c" class="t scale-a" data-i18n-target=".ui-btn-text" data-i18n="[title]soc.fb_fw;[html]soc.fb"></a>
<a href="#" id="follow_linkedin" data-role="button" data-icon="li" data-theme="c" class="t scale-a" data-i18n-target=".ui-btn-text" data-i18n="[title]soc.li_fw;[html]soc.li"></a>
</div>
</div>
</div>
<script type="text/javascript" language="javascript">
//<![CDATA[
......
......@@ -28,10 +28,9 @@ define([], function () {
}
},
// get screen size
// screen size small/medium/large
framer: function () {
var self = this, framed;
if ($.mobile.media("screen and (max-width:480px)") || ($.mobile.browser.ie && $(window).width() < 480 )) {
framed = "small";
} else if ($.mobile.media("screen and (min-width:768px)") || ($.mobile.browser.ie && $(window).width() >= 768 )) {
......@@ -72,7 +71,7 @@ define([], function () {
}
},
// i18next handler
// languages i18n handler
lang : function (elem) {
var translate = function (elem) {
elem.find('.t').i18n();
......@@ -104,15 +103,7 @@ define([], function () {
};
// global page handling
// the problem is, that renderjs will finish way too late for everything else
// so we cannot listen to pagebeforecreate (add custom markup) and pagecreate
// add translations and then trigger(create) on pagebeforeshow, because
// renderjs will only be finished after pagebeforeshow.
// running translate and create after each other also does not work, because
// translations will not be done before trigger create is called and there is
// no global callback for the translation plugin, so some text always goes
// untranslated.
$(document).on('pageinit', 'div:jqmData(role="page")', function() {
$(document).on('pagecreate', 'div:jqmData(role="page")', function() {
var widgetsForThisRequest = [
"text!../gadgets/pageheader.html",
......@@ -121,7 +112,7 @@ define([], function () {
target = [$('head'),$('body')],
page = $(this);
// <head> on first page
// <head>/page footer on first page
if (fauna.anchor_page === undefined) {
fauna.anchor_page = page.attr('id');
require( widgetsForThisRequest,
......@@ -138,17 +129,17 @@ define([], function () {
}
});
}
// initialize renderjs
RenderJs.init();
RenderJs.bindReady(function () {
var elem = $(this);
util.lang(elem);
// page.trigger('create');
});
});
// reset gadgets that are being removed
// reset gadgets on pages that are being removed
$(document).on('pageremove', 'div:jqmData(role="page")', function() {
$(this).find("[data-gadget]").each(function(){
var gadget = RenderJs.GadgetIndex.getGadgetById($(this).attr('id'));
......@@ -157,23 +148,34 @@ define([], function () {
});
});
// enhancing when everyone else is done
// because render_enhance does not work on external page gadgets...
//$(document).on('pageshow', 'div:jqmData(external-page="true")', function() {
// $(this)
// .filter(function() { return $(this).jqmData("pcm") !== true; })
// .jqmData("pcm", true)
// .trigger('pagecreate');
//});
// enhancing gadgets when everyone else is done
$(document).on('render_enhance', function(e, data) {
console.log("render_enhance detected");
console.log(data.gadget);
data.gadget.trigger("create");
// if (data.callback !== undefined) {
// data.callback();
// }
});
// init
// init application
if ($.mobile.autoInitializePage === false){
$.mobile.initializePage();
$('html').removeClass('render').find('body').removeClass('splash');
}
// resize application
$(window).on('orientationchange resize', function(){
util.scale();
});
// initial resize depending on browser window
// initial size trigger
$(window).trigger('resize');
// expose public utilities
......
......@@ -10909,7 +10909,6 @@ $.mobile.document.bind( "pagecreate create", function( e ) {
},
_create: function() {
var self = this,
o = self.options,
$el = self.element,
......@@ -11146,8 +11145,6 @@ $.mobile.document.bind( "pagecreate create", function( e ) {
//auto self-init widgets
$.mobile.document
.bind( "pagecreate create", function( e ) {
console.log("event registered in fixed toolbars");
console.log(e);
// DEPRECATED in 1.1: support for data-fullscreen=true|false on the page element.
// This line ensures it still works, but we recommend moving the attribute to the toolbars themselves.
if ( $( e.target ).jqmData( "fullscreen" ) ) {
......
......@@ -111,9 +111,6 @@ var RenderJs = (function () {
*/
// set current gadget as being loaded so gadget instance itself knows which gadget it is
setSelfGadget(RenderJs.GadgetIndex.getGadgetById(gadget.attr("id")));
console.log("where is the gadget");
console.log(gadget)
console.log("should it be on the DOM");
gadget.append(data);
// reset as no longer current gadget
setSelfGadget(undefined);
......@@ -213,8 +210,6 @@ var RenderJs = (function () {
gadget_id = this.yourCustomData.gadget_id;
RenderJs.GadgetIndex.getGadgetById(gadget_id).
setReady();
console.log("done loading");
console.log(data);
RenderJs.setGadgetAndRecurse(gadget, data);
RenderJs.checkAndTriggerReady();
RenderJs.updateGadgetData(gadget);
......@@ -475,8 +470,7 @@ var RenderJs = (function () {
* Update enhancment status
*/
this.is_enhanced = value;
}
};
this.remove = function () {
/*
......
......@@ -9,6 +9,7 @@
"en": "English",
"fr": "Français"
},
"criteria": "Kriterien:",
"feature_name":"Auswahl",
"feature_range":"Leistung",
"feature_info":"Info",
......@@ -41,7 +42,7 @@
"pages": {
"titles": {
"main": "Cloudquote",
"results":"Ergebnisse"
"results":"Suchergebnisse"
}
},
"tx": {
......@@ -50,7 +51,6 @@
"get_quote_info": "Angebote verschiedener Cloud-Anbieter vergleichen",
"start_over":"Start Over",
"start_over_info":"Modify criteria and start a new calculation",
"search_results":"Search Results",
"ad_here":"Ihre Werbung könnte hier stehen"
},
"soc": {
......
......@@ -9,6 +9,7 @@
"en": "English",
"fr": "Français"
},
"criteria": "Criteria:",
"feature_name":"Feature",
"feature_range":"Range",
"feature_info":"Info",
......@@ -38,7 +39,7 @@
"pages": {
"titles": {
"main": "Cloudquote",
"results":"Results"
"results":"Search Results"
}
},
"tx": {
......@@ -47,7 +48,6 @@
"get_quote_info": "Compare offers of different cloud hosting providers",
"start_over":"Start Over",
"start_over_info":"Modify criteria and start a new calculation",
"search_results":"Search Results",
"ad_here":"Advertise with us"
},
"soc": {
......
......@@ -9,6 +9,7 @@
"en": "Anglais",
"fr": "Français"
},
"criteria": "Critères:",
"feature_name":"Caractéristique",
"feature_range":"Gamme",
"feature_info":"Infos",
......@@ -38,7 +39,7 @@
"pages": {
"titles": {
"main": "Cloudquote",
"results":"Résultats"
"results":"Résultats de la recherche"
}
},
"tx": {
......@@ -47,7 +48,6 @@
"get_quote_info": "Comparez les offres des différents fournisseurs d'hébergement cloud",
"start_over":"Recommencer",
"start_over_info":"Modifier les critères et lancer un nouveau calcul",
"search_results":"Résultats de la recherche",
"ad_here":"Annoncez avec nous"
},
"soc": {
......
......@@ -9,13 +9,12 @@
<div data-role="page" id="results" >
<div id="results_header" data-gadget="../gadgets/header.html" data-gadget-property='{"dyn":{"title":"pages.titles.results","href":"popup_results_lang"}}'></div>
<div data-role="content">
<!-- gadgets -->
<div id="results_list" data-gadget="../gadgets/results.html"></div>
<div id="results_ad" data-gadget="../gadgets/ad.html"></div>
<div id="results_social" data-gadget="../gadgets/social.html"></div>
<div id="results_analysis" data-gadget="../gadgets/analysis.html"></div>
<div id="results_nav" data-gadget="../gadgets/navigation.html"></div>
<p class="mini t" data-i18n="gen.disclaimer"></p>
<div id="results_wrapper" data-gadget="../gadgets/results_wrapper.html"></div>
<div data-gadget="" class="main-interactor"
data-gadget-connection="[
{&quot;source&quot;: &quot;results_header.translate&quot;, &quot;destination&quot;: &quot;results_wrapper.translate&quot;}
]">
</div>
</div>
</div>
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment