Skip to content

Instantly share code, notes, and snippets.

@szabcsee
Created September 29, 2014 09:58
Show Gist options
  • Save szabcsee/1e4a101ed474dd3fd572 to your computer and use it in GitHub Desktop.
Save szabcsee/1e4a101ed474dd3fd572 to your computer and use it in GitHub Desktop.
<!DOCTYPE html>
<html>
<head>
<script src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
<meta charset="utf-8">
<title>JS Bin</title>
</head>
<body>
<div data-closetext="Schließen" class="eb_colorbox_content eb_lightbox_form"><div class="eb_lightbox_title">Weltzeituhr - Einstellungen ändern</div><form action="https://ebase.dlh.de/ebase/home/de/_jcr_content/rightColumn1/worldclockgadget.ebase_userprefs_dialog.htx" method="POST"><div class="eb_worldclock_form_field">
<h4>Städte wählen</h4>
<label class="eb_label_select" for="eb_first_clock">Uhr 1, oben</label>
<div class="eb_selector" style="width: 230px;"><span style="width: 205px; -moz-user-select: none;">Frankfurt</span><select name="./first" id="eb_first_clock" class="eb_select eb_world_clock">
<option value="AMS">Amsterdam</option>
<option value="BCN">Barcelona</option>
<option value="TXL">Berlin</option>
<option value="BRU">Brüssel</option>
<option value="BUD">Budapest</option>
<option value="AEP">Buenos Aires</option>
<option value="ORD">Chicago</option>
<option value="DEN">Denver</option>
<option value="DXB">Dubai</option>
<option selected="selected" value="FRA">Frankfurt</option>
<option value="HAM">Hamburg</option>
<option value="HKG">Hong Kong</option>
<option value="JNB">Johannesburg</option>
<option value="CGN">Köln</option>
<option value="LGW">London</option>
<option value="LAX">Los Angeles</option>
<option value="SVO">Moskau</option>
<option value="BOM">Mumbai</option>
<option value="MUC">München</option>
<option value="JFK">New York</option>
<option value="CDG">Paris</option>
<option value="GIG">Rio de Janeiro</option>
<option value="FCO">Rom</option>
<option value="SEA">Seattle</option>
<option value="PVG">Shanghai</option>
<option value="SZX">Shenzhen</option>
<option value="SIN">Singapur</option>
<option value="HND">Tokio</option>
<option value="YYZ">Toronto</option>
<option value="WAW">Warschau</option>
<option value="VIE">Wien</option>
<option value="ZRH">Zürich</option>
</select></div>
<label class="eb_label_select" for="eb_first_clock">Uhr 2, mitte</label>
<div class="eb_selector" style="width: 230px;"><span style="width: 205px; -moz-user-select: none;">New York</span><select name="./second" id="eb_first_clock" class="eb_select eb_world_clock">
<option value="AMS">Amsterdam</option>
<option value="BCN">Barcelona</option>
<option value="TXL">Berlin</option>
<option value="BRU">Brüssel</option>
<option value="BUD">Budapest</option>
<option value="AEP">Buenos Aires</option>
<option value="ORD">Chicago</option>
<option value="DEN">Denver</option>
<option value="DXB">Dubai</option>
<option value="FRA">Frankfurt</option>
<option value="HAM">Hamburg</option>
<option value="HKG">Hong Kong</option>
<option value="JNB">Johannesburg</option>
<option value="CGN">Köln</option>
<option value="LGW">London</option>
<option value="LAX">Los Angeles</option>
<option value="SVO">Moskau</option>
<option value="BOM">Mumbai</option>
<option value="MUC">München</option>
<option selected="selected" value="JFK">New York</option>
<option value="CDG">Paris</option>
<option value="GIG">Rio de Janeiro</option>
<option value="FCO">Rom</option>
<option value="SEA">Seattle</option>
<option value="PVG">Shanghai</option>
<option value="SZX">Shenzhen</option>
<option value="SIN">Singapur</option>
<option value="HND">Tokio</option>
<option value="YYZ">Toronto</option>
<option value="WAW">Warschau</option>
<option value="VIE">Wien</option>
<option value="ZRH">Zürich</option>
</select></div>
<label class="eb_label_select" for="eb_first_clock">Uhr 3, unten</label>
<div class="eb_selector" style="width: 230px;"><span style="width: 205px; -moz-user-select: none;">Tokio</span><select name="./third" id="eb_first_clock" class="eb_select eb_world_clock">
<option value="AMS">Amsterdam</option>
<option value="BCN">Barcelona</option>
<option value="TXL">Berlin</option>
<option value="BRU">Brüssel</option>
<option value="BUD">Budapest</option>
<option value="AEP">Buenos Aires</option>
<option value="ORD">Chicago</option>
<option value="DEN">Denver</option>
<option value="DXB">Dubai</option>
<option value="FRA">Frankfurt</option>
<option value="HAM">Hamburg</option>
<option value="HKG">Hong Kong</option>
<option value="JNB">Johannesburg</option>
<option value="CGN">Köln</option>
<option value="LGW">London</option>
<option value="LAX">Los Angeles</option>
<option value="SVO">Moskau</option>
<option value="BOM">Mumbai</option>
<option value="MUC">München</option>
<option value="JFK">New York</option>
<option value="CDG">Paris</option>
<option value="GIG">Rio de Janeiro</option>
<option value="FCO">Rom</option>
<option value="SEA">Seattle</option>
<option value="PVG">Shanghai</option>
<option value="SZX">Shenzhen</option>
<option value="SIN">Singapur</option>
<option selected="selected" value="HND">Tokio</option>
<option value="YYZ">Toronto</option>
<option value="WAW">Warschau</option>
<option value="VIE">Wien</option>
<option value="ZRH">Zürich</option>
</select></div>
<div class="eb_radio_row">
<h4>Zeitformat</h4>
<div class="eb_radio_group">
<label class="eb_label_radio" for="eb_format_12h"><div class="eb_radio">
<span><div class="eb_radio"><span><input type="radio" style="opacity: 0;" value="12h" name="./format" id="eb_format_12h" class="eb_radio"></span></div></span>
</div>12h</label><label class="eb_label_radio" for="eb_format_24h"><div class="eb_radio">
<span class="eb_checked"><div class="eb_radio"><span class="eb_checked"><input type="radio" style="opacity: 0;" checked="checked" value="24h" name="./format" id="eb_format_24h" class="eb_radio"></span></div></span>
</div>24h</label>
</div>
</div>
</div></form><div class="eb_button_container button_submit_container"><a class="eb_btn_small eb_btn_send" href="#"><span class="eb_icon-ok"></span><span>Speichern &amp; Schließen</span></a></div></div>
<script id="jsbin-javascript">
// Get city which is not present
var getDefaultCity = function(cities) {
var defaultCity;
for(var i = 0; i < 3; i++){
if (cities[i].status === false){
cities[i].status = true;
defaultCity = cities[i].name;
break;
}
}
return defaultCity;
};
//Not Used, only for sorting
var getFirstCity = function(cities) {
console.log(cities[0].status + '-' + cities[1].status + '-' + cities[2].status);
var defaultCity;
for(var i = 0; i < 3; i++){
if (cities[i].status === true){
cities[i].status = false;
defaultCity = cities[i].name;
break;
}
}
return defaultCity;
};
var matchingSort = function(cities, switchedCities, i) {
console.log(i);
for(var j = 0; j < 3; j++) {
console.log($(".eb_world_clock").eq(i).val() + '--' + cities[j].name);
if (($(".eb_world_clock").eq(i).val() === cities[j].name) && (cities[j].status === true)){
var def = getFirstCity(switchedCities);
console.log(def);
$(".eb_world_clock").eq(i).val(def);
console.log('sorting' + i + ',' + j);
return;
}
}
};
// Sort cities according to priority
var sortCities = function(cities) {
var switchedCities = [{name: "FRA", status: cities[0].status},{name: "JFK", status: cities[1].status},{name: "HND", status: cities[2].status}];
for(var i = 0; i < 3; i++){
matchingSort(cities, switchedCities, i);
}
};
// Main method on click
$(".eb_world_clock").on("change", function () {
console.log('changed');
// Cities
var citiesOrder = [{name: "FRA", status: false},{name: "JFK", status: false},{name: "HND", status: false}];
// Set citiesOrder, what is present
$.each($(".eb_world_clock"), function(i, obj){
$.each(citiesOrder, function(j, city){
if(city.name === $(obj).val()){
city.status = true;
}
});
});
//compare first field value to second and third
if ( $(".eb_world_clock").eq(0).val() == $(".eb_world_clock").eq(1).val() || $(".eb_world_clock").eq(0).val() == $(".eb_world_clock").eq(2).val() ){
var def = getDefaultCity(citiesOrder);
$(".eb_world_clock").eq(0).val(def);
}
//compare second field value to third
if ( $(".eb_world_clock").eq(1).val() == $(".eb_world_clock").eq(2).val()){
var defc = getDefaultCity(citiesOrder);
$(".eb_world_clock").eq(1).val(defc);
}
sortCities(citiesOrder);
});
</script>
<script id="jsbin-source-html" type="text/html"><!DOCTYPE html>
<html>
<head>
<script src="//code.jquery.com/jquery-1.11.1.min.js"><\/script>
<meta charset="utf-8">
<title>JS Bin</title>
</head>
<body>
<div data-closetext="Schließen" class="eb_colorbox_content eb_lightbox_form"><div class="eb_lightbox_title">Weltzeituhr - Einstellungen ändern</div><form action="https://ebase.dlh.de/ebase/home/de/_jcr_content/rightColumn1/worldclockgadget.ebase_userprefs_dialog.htx" method="POST"><div class="eb_worldclock_form_field">
<h4>Städte wählen</h4>
<label class="eb_label_select" for="eb_first_clock">Uhr 1, oben</label>
<div class="eb_selector" style="width: 230px;"><span style="width: 205px; -moz-user-select: none;">Frankfurt</span><select name="./first" id="eb_first_clock" class="eb_select eb_world_clock">
<option value="AMS">Amsterdam</option>
<option value="BCN">Barcelona</option>
<option value="TXL">Berlin</option>
<option value="BRU">Brüssel</option>
<option value="BUD">Budapest</option>
<option value="AEP">Buenos Aires</option>
<option value="ORD">Chicago</option>
<option value="DEN">Denver</option>
<option value="DXB">Dubai</option>
<option selected="selected" value="FRA">Frankfurt</option>
<option value="HAM">Hamburg</option>
<option value="HKG">Hong Kong</option>
<option value="JNB">Johannesburg</option>
<option value="CGN">Köln</option>
<option value="LGW">London</option>
<option value="LAX">Los Angeles</option>
<option value="SVO">Moskau</option>
<option value="BOM">Mumbai</option>
<option value="MUC">München</option>
<option value="JFK">New York</option>
<option value="CDG">Paris</option>
<option value="GIG">Rio de Janeiro</option>
<option value="FCO">Rom</option>
<option value="SEA">Seattle</option>
<option value="PVG">Shanghai</option>
<option value="SZX">Shenzhen</option>
<option value="SIN">Singapur</option>
<option value="HND">Tokio</option>
<option value="YYZ">Toronto</option>
<option value="WAW">Warschau</option>
<option value="VIE">Wien</option>
<option value="ZRH">Zürich</option>
</select></div>
<label class="eb_label_select" for="eb_first_clock">Uhr 2, mitte</label>
<div class="eb_selector" style="width: 230px;"><span style="width: 205px; -moz-user-select: none;">New York</span><select name="./second" id="eb_first_clock" class="eb_select eb_world_clock">
<option value="AMS">Amsterdam</option>
<option value="BCN">Barcelona</option>
<option value="TXL">Berlin</option>
<option value="BRU">Brüssel</option>
<option value="BUD">Budapest</option>
<option value="AEP">Buenos Aires</option>
<option value="ORD">Chicago</option>
<option value="DEN">Denver</option>
<option value="DXB">Dubai</option>
<option value="FRA">Frankfurt</option>
<option value="HAM">Hamburg</option>
<option value="HKG">Hong Kong</option>
<option value="JNB">Johannesburg</option>
<option value="CGN">Köln</option>
<option value="LGW">London</option>
<option value="LAX">Los Angeles</option>
<option value="SVO">Moskau</option>
<option value="BOM">Mumbai</option>
<option value="MUC">München</option>
<option selected="selected" value="JFK">New York</option>
<option value="CDG">Paris</option>
<option value="GIG">Rio de Janeiro</option>
<option value="FCO">Rom</option>
<option value="SEA">Seattle</option>
<option value="PVG">Shanghai</option>
<option value="SZX">Shenzhen</option>
<option value="SIN">Singapur</option>
<option value="HND">Tokio</option>
<option value="YYZ">Toronto</option>
<option value="WAW">Warschau</option>
<option value="VIE">Wien</option>
<option value="ZRH">Zürich</option>
</select></div>
<label class="eb_label_select" for="eb_first_clock">Uhr 3, unten</label>
<div class="eb_selector" style="width: 230px;"><span style="width: 205px; -moz-user-select: none;">Tokio</span><select name="./third" id="eb_first_clock" class="eb_select eb_world_clock">
<option value="AMS">Amsterdam</option>
<option value="BCN">Barcelona</option>
<option value="TXL">Berlin</option>
<option value="BRU">Brüssel</option>
<option value="BUD">Budapest</option>
<option value="AEP">Buenos Aires</option>
<option value="ORD">Chicago</option>
<option value="DEN">Denver</option>
<option value="DXB">Dubai</option>
<option value="FRA">Frankfurt</option>
<option value="HAM">Hamburg</option>
<option value="HKG">Hong Kong</option>
<option value="JNB">Johannesburg</option>
<option value="CGN">Köln</option>
<option value="LGW">London</option>
<option value="LAX">Los Angeles</option>
<option value="SVO">Moskau</option>
<option value="BOM">Mumbai</option>
<option value="MUC">München</option>
<option value="JFK">New York</option>
<option value="CDG">Paris</option>
<option value="GIG">Rio de Janeiro</option>
<option value="FCO">Rom</option>
<option value="SEA">Seattle</option>
<option value="PVG">Shanghai</option>
<option value="SZX">Shenzhen</option>
<option value="SIN">Singapur</option>
<option selected="selected" value="HND">Tokio</option>
<option value="YYZ">Toronto</option>
<option value="WAW">Warschau</option>
<option value="VIE">Wien</option>
<option value="ZRH">Zürich</option>
</select></div>
<div class="eb_radio_row">
<h4>Zeitformat</h4>
<div class="eb_radio_group">
<label class="eb_label_radio" for="eb_format_12h"><div class="eb_radio">
<span><div class="eb_radio"><span><input type="radio" style="opacity: 0;" value="12h" name="./format" id="eb_format_12h" class="eb_radio"></span></div></span>
</div>12h</label><label class="eb_label_radio" for="eb_format_24h"><div class="eb_radio">
<span class="eb_checked"><div class="eb_radio"><span class="eb_checked"><input type="radio" style="opacity: 0;" checked="checked" value="24h" name="./format" id="eb_format_24h" class="eb_radio"></span></div></span>
</div>24h</label>
</div>
</div>
</div></form><div class="eb_button_container button_submit_container"><a class="eb_btn_small eb_btn_send" href="#"><span class="eb_icon-ok"></span><span>Speichern &amp; Schließen</span></a></div></div>
</body>
</html></script>
<script id="jsbin-source-javascript" type="text/javascript">// Get city which is not present
var getDefaultCity = function(cities) {
var defaultCity;
for(var i = 0; i < 3; i++){
if (cities[i].status === false){
cities[i].status = true;
defaultCity = cities[i].name;
break;
}
}
return defaultCity;
};
//Not Used, only for sorting
var getFirstCity = function(cities) {
console.log(cities[0].status + '-' + cities[1].status + '-' + cities[2].status);
var defaultCity;
for(var i = 0; i < 3; i++){
if (cities[i].status === true){
cities[i].status = false;
defaultCity = cities[i].name;
break;
}
}
return defaultCity;
};
var matchingSort = function(cities, switchedCities, i) {
console.log(i);
for(var j = 0; j < 3; j++) {
console.log($(".eb_world_clock").eq(i).val() + '--' + cities[j].name);
if (($(".eb_world_clock").eq(i).val() === cities[j].name) && (cities[j].status === true)){
var def = getFirstCity(switchedCities);
console.log(def);
$(".eb_world_clock").eq(i).val(def);
console.log('sorting' + i + ',' + j);
return;
}
}
};
// Sort cities according to priority
var sortCities = function(cities) {
var switchedCities = [{name: "FRA", status: cities[0].status},{name: "JFK", status: cities[1].status},{name: "HND", status: cities[2].status}];
for(var i = 0; i < 3; i++){
matchingSort(cities, switchedCities, i);
}
};
// Main method on click
$(".eb_world_clock").on("change", function () {
console.log('changed');
// Cities
var citiesOrder = [{name: "FRA", status: false},{name: "JFK", status: false},{name: "HND", status: false}];
// Set citiesOrder, what is present
$.each($(".eb_world_clock"), function(i, obj){
$.each(citiesOrder, function(j, city){
if(city.name === $(obj).val()){
city.status = true;
}
});
});
//compare first field value to second and third
if ( $(".eb_world_clock").eq(0).val() == $(".eb_world_clock").eq(1).val() || $(".eb_world_clock").eq(0).val() == $(".eb_world_clock").eq(2).val() ){
var def = getDefaultCity(citiesOrder);
$(".eb_world_clock").eq(0).val(def);
}
//compare second field value to third
if ( $(".eb_world_clock").eq(1).val() == $(".eb_world_clock").eq(2).val()){
var defc = getDefaultCity(citiesOrder);
$(".eb_world_clock").eq(1).val(defc);
}
sortCities(citiesOrder);
});
</script></body>
</html>
// Get city which is not present
var getDefaultCity = function(cities) {
var defaultCity;
for(var i = 0; i < 3; i++){
if (cities[i].status === false){
cities[i].status = true;
defaultCity = cities[i].name;
break;
}
}
return defaultCity;
};
//Not Used, only for sorting
var getFirstCity = function(cities) {
console.log(cities[0].status + '-' + cities[1].status + '-' + cities[2].status);
var defaultCity;
for(var i = 0; i < 3; i++){
if (cities[i].status === true){
cities[i].status = false;
defaultCity = cities[i].name;
break;
}
}
return defaultCity;
};
var matchingSort = function(cities, switchedCities, i) {
console.log(i);
for(var j = 0; j < 3; j++) {
console.log($(".eb_world_clock").eq(i).val() + '--' + cities[j].name);
if (($(".eb_world_clock").eq(i).val() === cities[j].name) && (cities[j].status === true)){
var def = getFirstCity(switchedCities);
console.log(def);
$(".eb_world_clock").eq(i).val(def);
console.log('sorting' + i + ',' + j);
return;
}
}
};
// Sort cities according to priority
var sortCities = function(cities) {
var switchedCities = [{name: "FRA", status: cities[0].status},{name: "JFK", status: cities[1].status},{name: "HND", status: cities[2].status}];
for(var i = 0; i < 3; i++){
matchingSort(cities, switchedCities, i);
}
};
// Main method on click
$(".eb_world_clock").on("change", function () {
console.log('changed');
// Cities
var citiesOrder = [{name: "FRA", status: false},{name: "JFK", status: false},{name: "HND", status: false}];
// Set citiesOrder, what is present
$.each($(".eb_world_clock"), function(i, obj){
$.each(citiesOrder, function(j, city){
if(city.name === $(obj).val()){
city.status = true;
}
});
});
//compare first field value to second and third
if ( $(".eb_world_clock").eq(0).val() == $(".eb_world_clock").eq(1).val() || $(".eb_world_clock").eq(0).val() == $(".eb_world_clock").eq(2).val() ){
var def = getDefaultCity(citiesOrder);
$(".eb_world_clock").eq(0).val(def);
}
//compare second field value to third
if ( $(".eb_world_clock").eq(1).val() == $(".eb_world_clock").eq(2).val()){
var defc = getDefaultCity(citiesOrder);
$(".eb_world_clock").eq(1).val(defc);
}
sortCities(citiesOrder);
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment