Skip to content

Instantly share code, notes, and snippets.

Created July 22, 2013 13:04
Show Gist options
  • Save anonymous/6053676 to your computer and use it in GitHub Desktop.
Save anonymous/6053676 to your computer and use it in GitHub Desktop.
hr {
width: 30%;
margin: 30px 0;
}
<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.0.2/jquery.min.js"></script>
<meta charset=utf-8 />
<title>JS Bin</title>
</head>
<body>
<h2>Back-end</h2>
<label>1. Core</label>
<input type="checkbox" value="10000" checked disabled title="b1" />
<br>
<label>2. Adaptacija baze</label>
<input type="checkbox" value="700" class="child_h child_g child" title="b2"/>
<br>
<label>3. Language support</label>
<input type="checkbox" value="1500" title="b3"/>
<br>
<label>4. Geo pretraga</label>
<input type="checkbox" name="child_b" value="600" title="b4"/>
<br>
<label>5. Multimedijalni prikaz</label>
<input type="checkbox" value="900" name="child_c" class="child_h child_g child" title="b5">
<br>
<label>6. Semantika</label>
<input type="checkbox" value="2000" class='child_i child_d' title="b6"/>
<br>
<label>7. Modul za povezivanje</label>
<input type="checkbox" value="900" class='parent_i child_d' title="b7"/>
<br>
<label>8. Modul za integraciju partnerskih institucija</label>
<input type="checkbox" value="1000" class='child_d' title="b8"/>
<br>
<label>9. Modul za integraciju partnerskih institucija</label>
<input type="checkbox" value="1000" title="b9"/>
<br>
<label>10. Ingestion modul</label>
<input type="checkbox" value="1000" title="b10"/>
<br>
<label>11. Modul za olakšano pokretanje izložbi - CMS</label>
<input type="checkbox" value="2000" title="b11"/>
<br>
<label>12. Modul za personalizaciju iskustva na sajtu</label>
<input type="checkbox" value="700" class='parent_e' title="b12"/>
<h2>Front-end</h2>
<label>1. Core</label>
<input type="checkbox" value="1500" checked disabled title="f1"/>
<br>
<label>2. Responsive dizajn</label>
<input type="checkbox" value="1200" title="f2"/>
<br>
<label>3. Mapa</label>
<input type="checkbox" name="child_b" value="1000" title="f3"/>
<br>
<label>4. Mutlimedijalni prikaz</label>
<input type="checkbox" value="500" name="child_c" title="f4" class="child_h child_g child"/>
<br>
<label>5. Cross-browser</label>
<input type="checkbox" value="2000" title="f5" class="child_h child_g child"/>
<br>
<label>6. Pretraga DPLA i Europeana</label>
<input type="checkbox" value="1500" class='parent_d' title="f6"/>
<br>
<label>7. Korisničko iskustvo</label>
<input type="checkbox" value="1000" title="f7" class='child_e'/>
<br>
<label>8. Prikaz i export virtualnih kolekcija</label>
<input type="checkbox" value="900" title="f8" class='child_e'/>
<br>
<h2>Operativa</h2>
<label>1. Core</label>
<input type="checkbox" value="2000" checked disabled title="o1"/>
<br>
<label>2. Semantička anotacija teksta</label>
<input type="checkbox" value="1000" class="parent_f parent" title="o2"/>
<br>
<label>3. Tagiranje fotografija, prepoznavanje ljudi i mesta, zgrada</label>
<input type="checkbox" value="800" class="parent_g parent" title="o3"/>
<br>
<label>4. Obogaćivanje digitalnih objekata</label>
<input type="checkbox" value="750" class="parent_h parent" title="o4"/>
<hr>
<p>SUM: <span id="sumatxt"></span></p>
<h2>Back-end</h2>
<p id="b1">Core, koji podrazumeva sistemsku/serversku zaštitu, pokretanje svih postojećih modula (i zavisnih programa i biblioteka) DPLA platforme i njihovu adaptaciju, uspostavljanje posebnih test, development i production okruženja aplikaciji.</p>
<p id="b2" style="display:none">Adaptacija baze, omogućavanje hostovanja samih objekata, priprema i adaptacija za operativu. </p>
<p id="b3" style="display:none">Back-end podrška za dodatne module - language support. </p>
<p id="b4" style="display:none">Back-end podrška za dodatne module - geo pretraga </p>
<p id="b5" style="display:none">Back-end podrška za dodatne module - prikaz tekstualnih, video, audio i 3D digitalnih objekata unutar platforme.</p>
<p id="b6" style="display:none">Pokretanje semantičkog nivoa aplikacije - mapiranje baze u RDF.</p>
<p id="b7" style="display:none">Modul za povezivanje sa drugim platformama na LoD nivou.</p>
<p id="b8" style="display:none">Modul (wrapper) za pretragu DPLA i Europeana</p>
<p id="b9" style="display:none">Modul za integraciju partnerskih institucija (kao service hub ili content hub) - poseban log, strana.</p>
<p id="b10" style="display:none">Ingestion modul, za olakšan unos novih metapodataka.</p>
<p id="b11" style="display:none">Modul za olakšano pokretanje izložbi - basic CMS nad platformom.</p>
<p id="b12" style="display:none">Modul za personalizaciju iskustva na sajtu (podrška za draggable, export, itd.)</p>
<h2>Front-end</h2>
<p id="f1">Core, koji podrazumeva UI dizajn, dizajn strukture sajta/strana i korisničkog iskustva na sajtu (UX), personalizacija iskustva - logovanje i virtualne kolekcije </p>
<p id="f2" style="display:none">Responsive dizajn</p>
<p id="f3" style="display:none">Mapa i front-end modul za geo-pretragu </p>
<p id="f4" style="display:none">Prikaz različitih vrsta objekata unutar platforme</p>
<p id="f5" style="display:none">Cross-browser, cross-platform podrška, downward compatibility za hosted objekte</p>
<p id="f6" style="display:none">Paralelna pretraga DPLA i Europeana</p>
<p id="f7" style="display:none">Bogatije korisničko iskustvo - draggable, nameštanje izgleda portala.</p>
<p id="f8" style="display:none">Prikaz i export virtualnih kolekcija u prilagodjenom formatu.</p>
<h2>Operativa</h2>
<p id="o1">Core, koji podrazumeva strukturalizaciju dobijenih metapodataka o objektima i unos u bazu.</p>
<p id="o2" style="display:none">Obogaćivanje digitalnih objekata - semantička anotacija teksta</p>
<p id="o3" style="display:none">Obogaćivanje digitalnih objekata - tagiranje fotografija, prepoznavanje ljudi i mesta, zgrada. </p>
<p id="o4" style="display:none">Obogaćivanje digitalnih objekata - izrada 3D prikaza objekata</p>
</body>
</html>
$(document).ready(function(){
var total = 30000;
// Insercija početne sume u DOM
$("#sumatxt").text(total + " e");
var chk = $("input:checkbox");
chk.change(function(){
var total = 0,
// b)
child_b = $('input[name="child_b"]'),
// c)
child_c = $('input[name="child_c"]'),
// d)
child_d = $('input.child_d'),
parent_d = $('input.parent_d'),
// e)
child_e = $('input.child_e'),
parent_e = $('input.parent_e'),
// i)
child_i = $('input.child_i'),
parent_i = $('input.parent_i');
var txtGet = $(this).attr('title');
/*
Veze modula
a) svi core-evi greyed out
b) 4B i 3F uzajamno povezani
c) 5B i 4F uzajamno povezani
d) 6,7,8B i 6F povezani, F parent
e) 12B i 7,8F povezani, B parent
f) 2O i 2,5B i 4,5F povezani, O parent
g) 3O i 2,5B i 4,5F povezani, O parent
h) 4O i 2,5B i 4,5F povezani, O parent
i) 6B i 7B, 7 parent
*/
// b)
if ($(this).is(":checked") && $(this).attr('name') === "child_b") {
child_b.prop("checked", true);
$('#b4, #f3').show();
} else if (!($(this).is(":checked")) && $(this).attr('name') === "child_b") {
child_b.prop("checked", false);
$('#b4, #f3').hide();
}
// c)
if ($(this).is(":checked") && $(this).attr('name') === "child_c") {
child_c.prop("checked", true);
$('#b5, #f4').show();
} else if (!($(this).is(":checked")) && $(this).attr('name') === "child_c") {
child_c.prop("checked", false);
$('#b5, #f4').hide();
}
// d) ima malo da se namesta
if ($(this).is(":checked") && $(this).attr('class') === "parent_d") {
child_d.prop("checked", true);
} else if (!($(this).is(":checked")) && $(this).attr('class') === "parent_d") {
child_d.prop("checked", false);
}
// e)
if ($(this).is(":checked") && $(this).attr('class') === "parent_e") {
child_e.prop("checked", true);
$('#b12, #f8, #f7').show();
} else if (!($(this).is(":checked")) && $(this).attr('class') === "parent_e") {
child_e.prop("checked", false);
$('#b12, #f8, #f7').hide();
}
// f), g) & h)
if ($(this).is(":checked") && $(this).hasClass('parent')) {
var kojiO = $(this).attr('title');
$('input.child').prop("checked", true);
$('#b2, #b5, #f4, #f5').show();
$('#'+kojiO).show();
} else if (!($(this).is(":checked")) && $(this).hasClass('parent')) {
if ($('input.parent_h').is(":checked")) {
//;
} else if ($('input.parent_g').is(":checked")) {
//;
} else if ($('input.parent_f').is(":checked")) {
//;
} else {
$('input.child').prop("checked", false);
$('#b2, #b5, #f4, #f5').hide();
}
}
// i)
if ($(this).is(":checked") && $(this).hasClass('parent_i')) {
child_i.prop("checked", true);
$('#b6, #b7').show();
} else if (!($(this).is(":checked")) && $(this).hasClass('parent_i')) {
child_i.prop("checked", false);
$('#b6, #b7').hide();
}
// Kalkulator
chk.filter(":checked").each(function(){
// Updejt sume
total += parseFloat($(this).val());
});
// Updejt insercije sume
// (Morlo je tako pošto u suprotnom
// ne bi imali nulto stanje)
$("#sumatxt").text(total + " e");
// Sastav kompajler :)
if ($(this).is(":checked")){
$('p#'+txtGet).show();
} else if (!($(this).is(":checked"))) {
$('p#'+txtGet).hide();
}
});
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment