Compare commits
2 Commits
Author | SHA1 | Date |
---|---|---|
Daniel Quathamer | b3d7c8c1dc | 2 months ago |
Daniel Quathamer | 53419ccbd8 | 3 months ago |
@ -0,0 +1,5 @@ |
|||||||
|
cleanBuildPath |
||||||
|
compileSuperx |
||||||
|
distServer |
||||||
|
initTimestamp |
||||||
|
war |
@ -1 +1 @@ |
|||||||
16.10.2024 |
21.11.2024 |
||||||
|
@ -0,0 +1,176 @@ |
|||||||
|
|
||||||
|
--freemarker template |
||||||
|
|
||||||
|
<#assign files = [{"thema":"Administration","filename":"logobutton_kern.svg"}, |
||||||
|
{"thema":"Administration SuperX-Connect","filename":"logobutton_sx_connect.svg"}, |
||||||
|
{"thema":"Benutzer","filename":""}, |
||||||
|
{"thema":"Benutzer verwalten","filename":""}, |
||||||
|
{"thema":"Benutzer verwalten","filename":""}, |
||||||
|
{"thema":"Benutzerdaten ändern","filename":""}, |
||||||
|
{"thema":"Berichtsassistent","filename":"logobutton_rpta.svg"}, |
||||||
|
{"thema":"Bewerbung, Zulassung","filename":"logobutton_zul.svg"}, |
||||||
|
{"thema":"Finanzrechnung","filename":"logobutton_fin.svg"}, |
||||||
|
{"thema":"Flächendaten löschen","filename":""}, |
||||||
|
{"thema":"Forschung","filename":""}, |
||||||
|
{"thema":"Forschung","filename":""}, |
||||||
|
{"thema":"Gebäude, Räume, Flächen","filename":"logobutton_bau.svg"}, |
||||||
|
{"thema":"Grunddaten und Kennzahlen","filename":"logobutton_kenn.svg"}, |
||||||
|
{"thema":"Hochschulvergleich","filename":"logobutton_sx_connect.svg"}, |
||||||
|
{"thema":"Inventar","filename":"logobutton_ivs.svg"}, |
||||||
|
{"thema":"Kostenrechnung","filename":"logobutton_cob.svg"}, |
||||||
|
{"thema":"Laderoutinen","filename":"logobutton_etl.svg"}, |
||||||
|
{"thema":"Lehrveranstaltungen","filename":""}, |
||||||
|
{"thema":"Leistungsmonitoring","filename":"logobutton_leistungsmonitor.svg"}, |
||||||
|
{"thema":"Management","filename":"logobutton_man.svg"}, |
||||||
|
{"thema":"Personal, Stellen","filename":"logobutton_sva.svg"}, |
||||||
|
{"thema":"Promovierende","filename":"logobutton_prom.svg"}, |
||||||
|
{"thema":"Qualitätssicherung","filename":"logobutton_qa.svg"}, |
||||||
|
{"thema":"Studiengänge","filename":"logobutton_gang.svg"}, |
||||||
|
{"thema":"Studierende, Prüfungen","filename":"logobutton_sos.svg"}, |
||||||
|
{"thema":"Studienverlauf","filename":"logobutton_erfolg.svg"}, |
||||||
|
{"thema":"Visualisierungen","filename":"logobutton_viz.svg"}, |
||||||
|
{"thema":"Xcubes","filename":"logobutton_xcube.svg"} |
||||||
|
]> |
||||||
|
|
||||||
|
<#assign icons = [ |
||||||
|
{"thema":"Abschlussprüfungen","css_class":"icon-graduation-cap"}, |
||||||
|
{"thema":"Administration Berichtsassistent","css_class":"icon-wrench"}, |
||||||
|
{"thema":"Administration Bewerbung, Zulassung","css_class":"icon-wrench"}, |
||||||
|
{"thema":"Administration Finanzrechnung","css_class":"icon-wrench"}, |
||||||
|
{"thema":"Administration Gebäude, Flächen","css_class":"icon-wrench"}, |
||||||
|
{"thema":"Administration Grunddaten und Kennzahlen","css_class":"icon-wrench"}, |
||||||
|
{"thema":"Administration Inventar","css_class":"icon-wrench"}, |
||||||
|
{"thema":"Administration KENNX-Modul","css_class":"icon-wrench"}, |
||||||
|
{"thema":"Administration Kostenrechnung","css_class":"icon-wrench"}, |
||||||
|
{"thema":"Administration Laderoutinen","css_class":"icon-wrench"}, |
||||||
|
{"thema":"Administration Leistungsmonitoring","css_class":"icon-wrench"}, |
||||||
|
{"thema":"Administration Management","css_class":"icon-wrench"}, |
||||||
|
{"thema":"Administration Personal, Stellen","css_class":"icon-wrench"}, |
||||||
|
{"thema":"Administration Qualitätssicherung","css_class":"icon-wrench"}, |
||||||
|
{"thema":"Administration Studiengänge","css_class":"icon-wrench"}, |
||||||
|
{"thema":"Administration Studienverlauf","css_class":"icon-wrench"}, |
||||||
|
{"thema":"Administration Studierende, Prüfungen","css_class":"icon-wrench"}, |
||||||
|
{"thema":"Administration Visualisierungen","css_class":"icon-area-chart"}, |
||||||
|
{"thema":"Administration Xcubes","css_class":"icon-wrench"}, |
||||||
|
{"thema":"Akkreditierung","css_class":""}, |
||||||
|
{"thema":"Amtliche Statistik","css_class":""}, |
||||||
|
{"thema":"Auswertungen zu Studiengängen","css_class":""}, |
||||||
|
{"thema":"Auswertung nach Buchungsabschnitt (Haushalt)","css_class":""}, |
||||||
|
{"thema":"Benutzer","css_class":""}, |
||||||
|
{"thema":"Benutzerinfo verwalten","css_class":""}, |
||||||
|
{"thema":"Benutzer verwalten","css_class":"icon-user"}, |
||||||
|
{"thema":"Besetzung","css_class":""}, |
||||||
|
{"thema":"Chancengleichheit","css_class":"icon-mercury"}, |
||||||
|
{"thema":"Datencockpit Berichte","css_class":"icon-bar-chart"}, |
||||||
|
{"thema":"Datenlieferung","css_class":"icon-cloud-upload"}, |
||||||
|
{"thema":"Datenmanagement","css_class":"icon-cubes"}, |
||||||
|
{"thema":"Einzelprüfungen","css_class":""}, |
||||||
|
{"thema":"Entwicklung","css_class":"icon-wrench"}, |
||||||
|
{"thema":"Fachhochschulen","css_class":""}, |
||||||
|
{"thema":"Felder","css_class":"icon-check"}, |
||||||
|
{"thema":"FHSWF-Masken","css_class":""}, |
||||||
|
{"thema":"Forschung","css_class":""}, |
||||||
|
{"thema":"Forschung-Beschäftigungen","css_class":""}, |
||||||
|
{"thema":"Forschung-Drittmittelprojekte","css_class":""}, |
||||||
|
{"thema":"Forschung-Nachwuchsförderung","css_class":""}, |
||||||
|
{"thema":"Forschung-Patente","css_class":""}, |
||||||
|
{"thema":"Grunddaten Finanzrechnung","css_class":""}, |
||||||
|
{"thema":"Grunddaten Forschung","css_class":"icon-rocket"}, |
||||||
|
{"thema":"Grunddaten Kostenrechnung","css_class":"icon-calc"}, |
||||||
|
{"thema":"Grunddaten Stellen, Personal","css_class":"icon-users"}, |
||||||
|
{"thema":"Grunddaten Studierende, Prüfungen","css_class":"icon-child"}, |
||||||
|
{"thema":"Haushalt","css_class":"icon-calculator"}, |
||||||
|
{"thema":"Hochschulübergreifende Auswertungen","css_class":""}, |
||||||
|
{"thema":"Institutionen verwalten","css_class":"icon-pagelines"}, |
||||||
|
{"thema":"Kaufm.Auswertungen","css_class":"icon-usd"}, |
||||||
|
{"thema":"Kreuztabellen KENN","css_class":"icon-th"}, |
||||||
|
{"thema":"Lehrveranstaltungen","css_class":"icon-user-plus"}, |
||||||
|
{"thema":"Management Detailabfragen","css_class":""}, |
||||||
|
{"thema":"Pädagogische Hochschulen","css_class":""}, |
||||||
|
{"thema":"Personal","css_class":""}, |
||||||
|
{"thema":"Projekte","css_class":""}, |
||||||
|
{"thema":"Promovierendenstatistik (Erw.)","css_class":"icon-university"}, |
||||||
|
{"thema":"Prüfungen","css_class":""}, |
||||||
|
{"thema":"Publikationen","css_class":""}, |
||||||
|
{"thema":"Semesterberichte","css_class":"icon-tablet"}, |
||||||
|
{"thema":"Stammdaten verwalten","css_class":"icon-th-large"}, |
||||||
|
{"thema":"Stellen","css_class":"icon-street-view"}, |
||||||
|
{"thema":"Studierende","css_class":""}, |
||||||
|
{"thema":"UDE-Masken","css_class":""}, |
||||||
|
{"thema":"Zentrale Kennzahlen","css_class":""}, |
||||||
|
{"thema":"ZSL-Mittelverteilung","css_class":""}, |
||||||
|
{"thema":"Zulassungszahlen (extern)","css_class":""} |
||||||
|
]> |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<#foreach file in files> |
||||||
|
<#if file.filename!=""> |
||||||
|
select '${file.thema}' from xdummy; |
||||||
|
<#assign modulkuerzel=file.filename?replace("logobutton_","")?replace(".svg","") /> |
||||||
|
select '${modulkuerzel}' from xdummy; |
||||||
|
|
||||||
|
update themenbaum set css_class='icon_themenbaum_${modulkuerzel}_*' |
||||||
|
where name='${file.thema}' |
||||||
|
and (css_class is null or css_class=''); |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</#if> |
||||||
|
</#foreach> |
||||||
|
|
||||||
|
|
||||||
|
<#foreach icon in icons> |
||||||
|
<#if icon.css_class !=""> |
||||||
|
|
||||||
|
update themenbaum set css_class='icon-menue ${icon.css_class}' |
||||||
|
where name='${icon.thema}' |
||||||
|
and (css_class is null or css_class='') |
||||||
|
; |
||||||
|
|
||||||
|
|
||||||
|
</#if> |
||||||
|
</#foreach> |
||||||
|
|
||||||
|
update themenbaum set css_class='icon_themenbaum_datenblatt_*' |
||||||
|
where maskeninfo_id is not null |
||||||
|
and (css_class is null or css_class='') |
||||||
|
and name ilike '%datenblatt%'; |
||||||
|
|
||||||
|
update themenbaum set css_class='fas fa-cubes' |
||||||
|
where maskeninfo_id is not null |
||||||
|
and (css_class is null or css_class='') |
||||||
|
and name ilike '%xcube%'; |
||||||
|
|
||||||
|
|
||||||
|
update themenbaum set css_class='icon_themenbaum_zeitreihe_*' |
||||||
|
where maskeninfo_id is not null |
||||||
|
and (css_class is null or css_class='') |
||||||
|
and name ilike '%zeitreihe%'; |
||||||
|
|
||||||
|
update themenbaum set css_class='icon_themenbaum_list_*' |
||||||
|
where maskeninfo_id is not null |
||||||
|
and (css_class is null or css_class=''); |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
update themenbaum set css_class='icon_themenbaum_neutral_*' |
||||||
|
where maskeninfo_id is null |
||||||
|
and parent=1 |
||||||
|
and (css_class is null or css_class=''); |
||||||
|
|
||||||
|
|
||||||
|
UPDATE sx_repository |
||||||
|
SET COMMENT = 'icon_themenbaum_xcube_medium' |
||||||
|
WHERE id = 'WELCOME_XCUBE'; |
||||||
|
|
||||||
|
UPDATE sx_repository |
||||||
|
SET COMMENT = 'icon_themenbaum_man_medium' |
||||||
|
WHERE id = 'WELCOME_MAN'; |
||||||
|
|
||||||
|
UPDATE sx_repository |
||||||
|
SET COMMENT = 'icon-chart-bar' |
||||||
|
WHERE id = 'WELCOME_XML'; |
||||||
|
|
||||||
|
|
@ -0,0 +1,231 @@ |
|||||||
|
<%@page pageEncoding="utf-8" contentType="text/html; charset=UTF-8" %> |
||||||
|
<html> |
||||||
|
<head> |
||||||
|
<% |
||||||
|
if (request.getCharacterEncoding() == null) |
||||||
|
request.setCharacterEncoding("UTF-8"); |
||||||
|
Object userobject=request.getSession().getAttribute("UserID"); |
||||||
|
String userid; |
||||||
|
String filter=""; |
||||||
|
String sql=""; |
||||||
|
if(userobject == null) |
||||||
|
{ |
||||||
|
%> |
||||||
|
|
||||||
|
<jsp:forward page="/edit/not_authenticated.htm"/> |
||||||
|
<% |
||||||
|
} |
||||||
|
else |
||||||
|
userid=userobject.toString(); |
||||||
|
Object mandantobject=request.getSession().getAttribute("MandantenID"); |
||||||
|
String mandantenid=""; |
||||||
|
if(mandantobject != null) |
||||||
|
mandantenid=mandantobject.toString(); |
||||||
|
//der superx-Default-Mandant ist bei dbforms ein Leerstring |
||||||
|
if(mandantenid.equals("default")) |
||||||
|
mandantenid=""; |
||||||
|
String custom_css=""; //TODO |
||||||
|
String tid = request.getParameter("tid"); |
||||||
|
String fname = request.getParameter("Feldname"); |
||||||
|
String previousValue = request.getParameter("previousValue"); |
||||||
|
String zeilenanzahl = request.getParameter("zeilenanzahl"); |
||||||
|
|
||||||
|
String params = request.getParameter("params"); |
||||||
|
|
||||||
|
String callurl="../../servlet/SuperXmlMaske?tid="+tid+"&getJSON_"+fname+"=xxxxxx-xxxxxx@"; |
||||||
|
callurl+=params; |
||||||
|
|
||||||
|
%> |
||||||
|
|
||||||
|
<%@ include file="../../htmlhead_dialoge.inc" %> |
||||||
|
|
||||||
|
<title>Auswahl <%=fname %></title> |
||||||
|
</head> |
||||||
|
<style> |
||||||
|
/*.cell { |
||||||
|
position: sticky; |
||||||
|
top: 0; |
||||||
|
z-index: 10; |
||||||
|
} |
||||||
|
|
||||||
|
.label { |
||||||
|
font-size: 14px; } |
||||||
|
|
||||||
|
.input-container { |
||||||
|
display: flex; |
||||||
|
flex-direction: column; |
||||||
|
align-items: flex-start; |
||||||
|
} |
||||||
|
|
||||||
|
.input-container > .label { |
||||||
|
margin-bottom: 0.25rem; |
||||||
|
|
||||||
|
@media (min-width: 768px) { |
||||||
|
.input-container { |
||||||
|
flex-direction: row; |
||||||
|
align-items: center; |
||||||
|
} |
||||||
|
|
||||||
|
.input-container > .label { |
||||||
|
margin-bottom: 0; |
||||||
|
margin-right: 1rem; |
||||||
|
} |
||||||
|
}*/ |
||||||
|
|
||||||
|
</style> |
||||||
|
<script type="text/javascript" language="javascript"> |
||||||
|
|
||||||
|
var comboContent; |
||||||
|
var fname="<%= fname %>"; |
||||||
|
//var previousValue="<%= previousValue %>"; |
||||||
|
var zeilenanzahl="<%= zeilenanzahl %>"; |
||||||
|
|
||||||
|
var referrerWindow=window.opener; |
||||||
|
var referrerDocument=referrerWindow.document; |
||||||
|
var referrerForm=referrerDocument.forms[0]; |
||||||
|
var previousValue=referrerForm.elements[fname].value; |
||||||
|
var previousValuesArray=ndMaskDialogPreviousValueToArray(previousValue); |
||||||
|
var previousValuesCount=0; |
||||||
|
if(previousValuesArray) |
||||||
|
previousValuesCount=previousValuesArray.length; |
||||||
|
|
||||||
|
|
||||||
|
function showCombo(url,searchstring) |
||||||
|
{ |
||||||
|
var ret; |
||||||
|
var xhttp = new XMLHttpRequest(); |
||||||
|
xhttp.onreadystatechange = function() { |
||||||
|
if (this.readyState == 4 && this.status == 200) { |
||||||
|
comboContent= purgeval(this.responseText); |
||||||
|
console.log(comboContent); |
||||||
|
renderCombo(comboContent,searchstring); |
||||||
|
} |
||||||
|
}; |
||||||
|
xhttp.open("GET", url, true); |
||||||
|
xhttp.send(); |
||||||
|
} |
||||||
|
|
||||||
|
function renderCombo(content,searchstring) |
||||||
|
{ |
||||||
|
var targetDiv=document.getElementById("comboDiv"); |
||||||
|
//targetDiv.innerHTML=JSON.stringify(content); |
||||||
|
var zs="<ul style='list-style-type:none;'> "; |
||||||
|
if(content && content.nodes && content.nodes.length >0) |
||||||
|
{ |
||||||
|
for(var j=0;j < content.nodes.length;j++) |
||||||
|
{ |
||||||
|
var node=content.nodes[j]; |
||||||
|
if(searchstring=="" || node.title.indexOf(searchstring)>-1) |
||||||
|
{ |
||||||
|
if(node.objectId !="") |
||||||
|
{ |
||||||
|
var checkedString=""; |
||||||
|
for(var i=0;i < previousValuesCount;i++) |
||||||
|
{ |
||||||
|
if(previousValuesArray[i]==node.objectId) |
||||||
|
checkedString="checked "; |
||||||
|
|
||||||
|
} |
||||||
|
var fldName="inp"+node.objectId; |
||||||
|
var fldId="inp"+node.objectId; |
||||||
|
var fldType="checkbox"; |
||||||
|
if(zeilenanzahl==1) |
||||||
|
{ |
||||||
|
fldName=fname; |
||||||
|
fldType="radio"; |
||||||
|
} |
||||||
|
zs += "<li><input type='"+fldType+"' "+checkedString+ " name='"+fldName+ "' id='"+fldId+ "' value='"+node.objectId +"' /> "; |
||||||
|
zs +="<label for='"+fldId+"' id='label"+node.objectId +"'>"+node.title+"</label></li>\n"; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
} |
||||||
|
zs +="</ul>"; |
||||||
|
targetDiv.innerHTML=zs; |
||||||
|
} |
||||||
|
|
||||||
|
</script> |
||||||
|
<body onload="showCombo('<%=callurl %>','')"> |
||||||
|
<form name="selection" onsubmit="return false;"> |
||||||
|
<div id="nd_navi_top" style="margin-bottom:3rem"> |
||||||
|
<nav class="navbar is-fixed-top" role="navigation" ><!--aria-label="main navigation"--> |
||||||
|
<div class="navbar-brand"> |
||||||
|
|
||||||
|
<div class="navbar-item"> |
||||||
|
<p><strong>Auswahl <%=fname %></strong></p> |
||||||
|
</div> |
||||||
|
<div class="navbar-item"> |
||||||
|
|
||||||
|
<div class='input-container'> |
||||||
|
<div class='field has-addons'><div class='control'> |
||||||
|
<input id='comboSuche' class='input is-small is-active' type='text' placeholder='Suche' onBlur='renderCombo(comboContent,this.value);return false;'/> |
||||||
|
</div><div class='control'><button class='button is-small is-rounded' onClick="renderCombo(comboContent,document.getElementById('comboSuche').value);return false;"> |
||||||
|
<span class='icon' aria-hidden='true' alt='Suche' title='Suche'><img src='../../images/search_blue.svg'/></span></button> |
||||||
|
</div></div> |
||||||
|
</div> |
||||||
|
|
||||||
|
|
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
|
||||||
|
<div class="navbar-end"><span class="navbar-end"> |
||||||
|
<div class="navbar-item is-hoverable"> |
||||||
|
<div class="buttons"> |
||||||
|
<p class="submit_button"> |
||||||
|
<button class="button" type="submit"> |
||||||
|
<a onclick="ndMaskDialogUebernehmen(document.forms['selection'],referrerForm)">Übernehmen</a> |
||||||
|
</button> |
||||||
|
</p> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
<div class="navbar-item is-hoverable"> |
||||||
|
<div class="buttons"> |
||||||
|
<p class="reset_button"> |
||||||
|
<button class="button"> |
||||||
|
<a onclick="ndMaskDialogLeeren(document.forms['selection'],referrerForm)">Leeren</a> |
||||||
|
</button> |
||||||
|
</p> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
<div class="navbar-item is-hoverable"> |
||||||
|
<div class="buttons"> |
||||||
|
<p class="close_button"> |
||||||
|
<button class="button"> |
||||||
|
<span class="icon is-small"> |
||||||
|
<a onclick="window.close()"> |
||||||
|
<img src="../../images/close.svg" title="Schließen" aria-label="Schließen" /></a> |
||||||
|
</span> |
||||||
|
</button> |
||||||
|
</p> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
</nav> |
||||||
|
</div> |
||||||
|
<% if(zeilenanzahl!=null && !zeilenanzahl.equals("1")) |
||||||
|
{ |
||||||
|
%> |
||||||
|
|
||||||
|
<div class="input-container"> <!--style="padding-top:1em;"--> |
||||||
|
<div class="buttons"> |
||||||
|
<input type="checkbox" name="metaCheckox" value="" style="margin-left:1.5rem" onclick="ndMaskDialogToggleAllCheckboxes(document.forms['selection'],this)" />  alle markieren |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<% |
||||||
|
} |
||||||
|
%> |
||||||
|
<div class="input-container"> <!--style="padding-top:1em;"--> |
||||||
|
<div id="comboDiv" class="comboDiv">keine Auswahl möglich |
||||||
|
|
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
|
||||||
|
</form> |
||||||
|
</body> |
||||||
|
</html> |
@ -0,0 +1,424 @@ |
|||||||
|
<%@page pageEncoding="utf-8" contentType="text/html; charset=UTF-8" %> |
||||||
|
<html> |
||||||
|
<head> |
||||||
|
<% |
||||||
|
if (request.getCharacterEncoding() == null) |
||||||
|
request.setCharacterEncoding("UTF-8"); |
||||||
|
Object userobject=request.getSession().getAttribute("UserID"); |
||||||
|
String userid; |
||||||
|
String filter=""; |
||||||
|
String sql=""; |
||||||
|
if(userobject == null) |
||||||
|
{ |
||||||
|
%> |
||||||
|
|
||||||
|
<jsp:forward page="/edit/not_authenticated.htm"/> |
||||||
|
<% |
||||||
|
} |
||||||
|
else |
||||||
|
userid=userobject.toString(); |
||||||
|
Object mandantobject=request.getSession().getAttribute("MandantenID"); |
||||||
|
String mandantenid=""; |
||||||
|
if(mandantobject != null) |
||||||
|
mandantenid=mandantobject.toString(); |
||||||
|
//der superx-Default-Mandant ist bei dbforms ein Leerstring |
||||||
|
if(mandantenid.equals("default")) |
||||||
|
mandantenid=""; |
||||||
|
String custom_css=""; //TODO |
||||||
|
String tid = request.getParameter("tid"); |
||||||
|
String fname = request.getParameter("Feldname"); |
||||||
|
String previousValue = request.getParameter("previousValue"); |
||||||
|
String zeilenanzahl = request.getParameter("zeilenanzahl"); |
||||||
|
|
||||||
|
String params = request.getParameter("params"); |
||||||
|
|
||||||
|
String callurl="../../servlet/SuperXmlMaske?tid="+tid+"&getJSON_"+fname+"=xxxxxx-xxxxxx@"; |
||||||
|
callurl+=params; |
||||||
|
|
||||||
|
%> |
||||||
|
|
||||||
|
<%@ include file="../../htmlhead_dialoge.inc" %> |
||||||
|
|
||||||
|
<title>Auswahl <%=fname %></title> |
||||||
|
</head> |
||||||
|
<style> |
||||||
|
</style> |
||||||
|
<script type="text/javascript" language="javascript"> |
||||||
|
|
||||||
|
var sichtContentJSON; |
||||||
|
var fname="<%= fname %>"; |
||||||
|
var maskentid="<%= tid %>"; |
||||||
|
var previousValue="<%= previousValue %>"; |
||||||
|
var zeilenanzahl="<%= zeilenanzahl %>"; |
||||||
|
var referrerWindow=window.opener; |
||||||
|
var referrerDocument=referrerWindow.document; |
||||||
|
var referrerForm=referrerDocument.forms[0]; |
||||||
|
previousValue=referrerForm.elements[fname].value; |
||||||
|
var referrerFormInputSichtid=referrerForm.elements[fname+"-Sicht"]; |
||||||
|
var referrerFormInputSichtstand=referrerForm.elements[fname+"-Stand"]; |
||||||
|
var referrerFormDivSichtauswahlInnerHTML=""; |
||||||
|
var referrerFormDivSichtstandInnerHTML=""; |
||||||
|
var selectedSichtid=""; |
||||||
|
var selectedSichtStand=""; |
||||||
|
if(referrerFormInputSichtid) |
||||||
|
{ |
||||||
|
var sichtauswahlDiv=referrerDocument.getElementById(fname+"-Sicht-div"); |
||||||
|
if(sichtauswahlDiv) |
||||||
|
referrerFormDivSichtauswahlInnerHTML=sichtauswahlDiv.innerHTML; |
||||||
|
selectedSichtid=referrerForm.elements[fname+"-Sicht"].value; |
||||||
|
} |
||||||
|
if(referrerFormInputSichtstand) |
||||||
|
{ |
||||||
|
var sichtstandDiv=referrerDocument.getElementById(fname+"-Stand-div"); |
||||||
|
if(sichtstandDiv) |
||||||
|
referrerFormDivSichtstandInnerHTML=sichtstandDiv.innerHTML; |
||||||
|
selectedSichtStand=referrerForm.elements[fname+"-Stand"].value; |
||||||
|
} |
||||||
|
var previousValuesArray=ndMaskDialogPreviousValueToArray(previousValue); |
||||||
|
|
||||||
|
var previousValuesCount=0; |
||||||
|
if(previousValuesArray) |
||||||
|
previousValuesCount=previousValuesArray.length; |
||||||
|
//previousValuesCount=0; //TODO: wenn previousValue, dann klappt Aufklappen nicht immer |
||||||
|
function initDialog(url,searchstring) |
||||||
|
{ |
||||||
|
var ret; |
||||||
|
var xhttp = new XMLHttpRequest(); |
||||||
|
xhttp.onreadystatechange = function() { |
||||||
|
if (this.readyState == 4 && this.status == 200) { |
||||||
|
sichtContentJSON= purgeval(this.responseText); |
||||||
|
//console.log(sichtContentJSON); |
||||||
|
renderSichtauswahl(sichtContentJSON); |
||||||
|
renderSicht(sichtContentJSON,searchstring); |
||||||
|
} |
||||||
|
}; |
||||||
|
xhttp.open("GET", url, true); |
||||||
|
xhttp.send(); |
||||||
|
} |
||||||
|
|
||||||
|
function renderSichtauswahl(content) |
||||||
|
{ |
||||||
|
var targetDiv=document.getElementById("sichtauswahlDiv"); |
||||||
|
var zs=""; |
||||||
|
//zs+="TTT"+JSON.stringify(content.sichten.selected); |
||||||
|
if(content && content.sichten.selected && content.sichten.selected.name ) |
||||||
|
{ |
||||||
|
zs += "<div class='field is-grouped is-grouped-multiline'><div class='input-container'><label class='label'>Sicht</label>"; |
||||||
|
//zs += "Ausgewählte Sicht: </span></div>"; |
||||||
|
//zs+=" <div class='field-body'><div class='field is-active'>"; |
||||||
|
zs+= buildSichtauswahlSelect(content); |
||||||
|
zs+="</div></div>"; |
||||||
|
if(content.sichten.selected.stand) |
||||||
|
{ |
||||||
|
zs += "<div class='input-container'>"; |
||||||
|
zs += "<label class='label'>Stand</label>"; |
||||||
|
zs+="<input type='date' class='input is-small' name='Standdatum' id='Standdatum' maxlength='10' size='3'"; |
||||||
|
zs+=" value='"+dateGermanToDateUS(content.sichten.stand)+"' onChange='sichtStandchange(this.value)'/>"; |
||||||
|
zs+="</div>"; |
||||||
|
|
||||||
|
// |
||||||
|
} |
||||||
|
//zs +="</div></div></div>";//von field is-grouped, damit Sicht und Standdatum in einer Zeile sind |
||||||
|
} |
||||||
|
else |
||||||
|
{ |
||||||
|
zs+="Keine Sichtauswahl möglich"; |
||||||
|
} |
||||||
|
|
||||||
|
//Suche: |
||||||
|
zs += "<div class='input-container'>"; |
||||||
|
zs += "<label class='label'>Suche</label>"; |
||||||
|
zs+="<div class='field has-addons'><div class='control'>"; |
||||||
|
zs+= "<input id='sichtSuche' class='input is-small is-active' type='text' placeholder='Suche' onBlur='ndSichtEintraegeSuchen(this.value);return false;'/>"; |
||||||
|
zs+="</div><div class='control'><button class='button is-small is-rounded' onClick='ndSichtEintraegeSuchen(document.getElementById(\'sichtSuche\'));return false;'>"; |
||||||
|
zs+="<span class='icon' aria-hidden='true' alt='Suche' title='Suche'><img src='../../images/search_blue.svg'/></span></button>"; |
||||||
|
zs+="</div></div></div>"; |
||||||
|
|
||||||
|
targetDiv.innerHTML=zs; |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
function buildSichtauswahlSelect(content) |
||||||
|
{ |
||||||
|
var zs="<div class='select is-small is-focused'><select id='sichtauswahlSelect' name='sichtauswahlSelect' style='max-width: 15rem;' onChange='sichtAuswahlchange(this.value)'>"; |
||||||
|
zs+="<option class='maskinput' value='"+content.sichten.selected.name_intern+"' selected>"; |
||||||
|
zs+=content.sichten.selected.name+"</option>"; |
||||||
|
for(var j=0;j < content.sichten.other.length;j++) |
||||||
|
{ |
||||||
|
var node=content.sichten.other[j]; |
||||||
|
zs+="<option class='maskinput' value='"; |
||||||
|
zs+=node.name_intern+"'"; |
||||||
|
zs+=">"+node.name+"</option>"; |
||||||
|
} |
||||||
|
zs+="</select>"; |
||||||
|
return zs; |
||||||
|
} |
||||||
|
|
||||||
|
function sichtAuswahlchange(gewaehlteSicht) |
||||||
|
{ |
||||||
|
var url="../../servlet/SuperXmlMaske?tid="+maskentid+"&getJSON_"+fname+"=xxxxxx-xxxxxx@"; |
||||||
|
url+="&"+fname+"-aktualisieren=true&" + fname + "-Sicht=" + gewaehlteSicht; |
||||||
|
|
||||||
|
initDialog(url,''); |
||||||
|
} |
||||||
|
|
||||||
|
function sichtStandchange(datumUS) |
||||||
|
{ |
||||||
|
var datum=dateUSToDateGerman(datumUS); |
||||||
|
console.log(datum); |
||||||
|
var url="../../servlet/SuperXmlMaske?tid="+maskentid+"&getJSON_"+fname+"=xxxxxx-xxxxxx@"; |
||||||
|
url+="&"+fname+"-aktualisieren=true&" + fname + "-Stand=" + datum; |
||||||
|
|
||||||
|
initDialog(url,''); |
||||||
|
|
||||||
|
} |
||||||
|
|
||||||
|
function renderSicht(content,searchstring) |
||||||
|
{ |
||||||
|
var targetDiv =document.getElementById("sichtDiv"); |
||||||
|
//targetDiv.innerHTML=JSON.stringify(content); |
||||||
|
var zs=""; |
||||||
|
//zs += "<p>"+selectedSichtid+"</p>"; |
||||||
|
//zs += "<p>"+selectedSichtStand+"</p>"; |
||||||
|
//zs += "<p>ttt"+previousValue+"</p>"; |
||||||
|
//zs +=referrerFormDivSichtauswahlInnerHTML; |
||||||
|
//zs +=referrerFormDivSichtstandInnerHTML; |
||||||
|
//zs +=JSON.stringify(content); |
||||||
|
zs +="<ul id='sichtentreeUL'>" |
||||||
|
if(content && content.nodes && content.nodes.length >0) |
||||||
|
{ |
||||||
|
//zs +="<li>content.nodes.length"+content.nodes.length+"</li>"; |
||||||
|
for(var j=0;j < content.nodes.length;j++) |
||||||
|
{ |
||||||
|
var node=content.nodes[j]; |
||||||
|
zs +=renderNode(node,true,searchstring,previousValuesCount,previousValuesArray,zeilenanzahl); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
zs +="</ul>"; |
||||||
|
targetDiv.innerHTML=zs; |
||||||
|
} |
||||||
|
|
||||||
|
function renderNode(node,isRoot,searchstring,previousValuesCount,previousValuesArray,zeilenanzahl) |
||||||
|
{ |
||||||
|
var zs=""; |
||||||
|
if(searchstring=="" || node.title.indexOf(searchstring)>-1) |
||||||
|
{ |
||||||
|
if(node.objectId !="") |
||||||
|
{ |
||||||
|
var checkedString=""; |
||||||
|
for(var i=0;i < previousValuesCount;i++) |
||||||
|
{ |
||||||
|
if(previousValuesArray[i]==node.objectId) |
||||||
|
checkedString="checked "; |
||||||
|
|
||||||
|
} |
||||||
|
|
||||||
|
var fldName="inp"+node.objectId; |
||||||
|
var fldId="inp"+node.objectId; |
||||||
|
var fldType="checkbox"; |
||||||
|
if(zeilenanzahl==1) |
||||||
|
{ |
||||||
|
fldName=fname; |
||||||
|
fldType="radio"; |
||||||
|
} |
||||||
|
zs += "<li class='sichtentreeLI'>"; |
||||||
|
if(node.isFolder=="true" && !isRoot) |
||||||
|
{ |
||||||
|
zs+="<span class='sichtentreeCaret' id='sichtentreeCaret_"+node.objectId+"'"; |
||||||
|
zs+="onClick=\"getChildNodes('"+node.objectId.trim()+"',this)\">"; |
||||||
|
zs+="</span> "; |
||||||
|
|
||||||
|
} |
||||||
|
else |
||||||
|
zs+="<span style='margin-left:10px'> </span>"; |
||||||
|
if (node.nodeattrib && node.nodeattrib == 2) |
||||||
|
{ //nicht selektierbar: |
||||||
|
zs +="<span style='margin-left:10px' class='is-unselectable'> </span>"; |
||||||
|
zs +="<span>"+node.title+"</span>\n"; |
||||||
|
} |
||||||
|
else { |
||||||
|
zs+="<input type='"+fldType+"' "+checkedString+ " name='"+fldName+ "' id='"+fldId+ "' value='"+node.objectId +"' /> "; |
||||||
|
zs +="<label for='"+fldId+"' id='label"+node.objectId +"'>"+node.title+"</label>\n"; |
||||||
|
} |
||||||
|
if(node.children && node.children.length >0 ) |
||||||
|
{ |
||||||
|
for(var i=0;i < node.children.length;i++) |
||||||
|
{ |
||||||
|
zs+="<ul>"; |
||||||
|
zs += renderNode(node.children[i],false,searchstring,previousValuesCount,previousValuesArray,zeilenanzahl); |
||||||
|
zs +="</ul>"; |
||||||
|
|
||||||
|
} |
||||||
|
} |
||||||
|
zs+="</li>"; |
||||||
|
|
||||||
|
} |
||||||
|
} //Ende wenn suchstring |
||||||
|
return zs; |
||||||
|
} |
||||||
|
|
||||||
|
function getChildNodes(nodeId,spanElem) |
||||||
|
{ |
||||||
|
//spanElem.parentElement.querySelector(".sichtentreeNested").classList.toggle("sichtentreeActive"); |
||||||
|
var childUlId="childOf"+nodeId; |
||||||
|
spanElem.classList.toggle("sichtentreeCaret-down"); |
||||||
|
|
||||||
|
if(document.getElementById(childUlId)) |
||||||
|
{ |
||||||
|
//Kind existiert bereits, wird nur unsichtbar: |
||||||
|
document.getElementById(childUlId).classList.toggle("sichtentreeNested"); |
||||||
|
} |
||||||
|
else |
||||||
|
{ |
||||||
|
//Kind existiert noch nicht: |
||||||
|
const childUL=document.createElement("ul"); |
||||||
|
childUL.id=childUlId; |
||||||
|
childUL.classList.add("sichtentreeChildUL"); |
||||||
|
spanElem.parentElement.appendChild(childUL); |
||||||
|
|
||||||
|
var url="../../servlet/SuperXmlMaske?tid="+maskentid+"&getJSON_"+fname+"="+nodeId; //xxxxxx-xxxxxx@"; |
||||||
|
var suburl=url+"&"+fname+"="+nodeId; |
||||||
|
var ret; |
||||||
|
var xhttp = new XMLHttpRequest(); |
||||||
|
xhttp.onreadystatechange = function() { |
||||||
|
if (this.readyState == 4 && this.status == 200) { |
||||||
|
childrenJSON= purgeval(this.responseText); |
||||||
|
//childUL.innerHTML=JSON.stringify(sichtContentJSON); |
||||||
|
var childrenHTML=""; |
||||||
|
if(childrenJSON && childrenJSON.length >0) |
||||||
|
{ |
||||||
|
//zs +="<li>content.nodes.length"+content.nodes.length+"</li>"; |
||||||
|
for(var j=0;j < childrenJSON.length;j++) |
||||||
|
{ |
||||||
|
var node=childrenJSON[j]; |
||||||
|
childrenHTML +=renderNode(node,false,"",previousValuesCount,previousValuesArray,zeilenanzahl); |
||||||
|
} |
||||||
|
} |
||||||
|
childUL.innerHTML=childrenHTML; |
||||||
|
//alert(JSON.stringify(childrenJSON)); |
||||||
|
} |
||||||
|
}; |
||||||
|
xhttp.open("GET", suburl, true); |
||||||
|
xhttp.send(); |
||||||
|
} |
||||||
|
|
||||||
|
} |
||||||
|
|
||||||
|
function ndSichtEintraegeSuchen(was) { |
||||||
|
var callurl = '/superx/servlet/SuperXmlMaske'; |
||||||
|
callurl += '?tid=' + maskentid + '&getJSON_' + fname + |
||||||
|
'=search:' + getEncoded(was); |
||||||
|
//document.getElementById('progressbar').style.display = ""; |
||||||
|
var xhttp = new XMLHttpRequest(); |
||||||
|
xhttp.onreadystatechange = function() { |
||||||
|
if (this.readyState == 4 && this.status == 200) { |
||||||
|
var searchResultJSON= purgeval(this.responseText); |
||||||
|
//document.getElementById("sichtDiv").innerHTML=JSON.stringify(searchResultJSON); |
||||||
|
var searchResultHTML="<ul>"; |
||||||
|
if(searchResultJSON && searchResultJSON.length >0) |
||||||
|
{ |
||||||
|
for(var j=0;j < searchResultJSON.length;j++) |
||||||
|
{ |
||||||
|
var node=searchResultJSON[j]; |
||||||
|
searchResultHTML += renderNode(node,true,"",previousValuesCount,previousValuesArray,zeilenanzahl); |
||||||
|
} |
||||||
|
} |
||||||
|
document.getElementById("sichtDiv").innerHTML=searchResultHTML+"</ul>"; |
||||||
|
//alert(JSON.stringify(childrenJSON)); |
||||||
|
} |
||||||
|
}; |
||||||
|
xhttp.open("GET", callurl, true); |
||||||
|
xhttp.send(); |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</script> |
||||||
|
<body class="has-navbar-fixed-top" onload="initDialog('<%=callurl %>','')"> |
||||||
|
<div id="nd_navi_top"> |
||||||
|
<nav class="navbar is-fixed-top" role="navigation" ><!--aria-label="main navigation"--> |
||||||
|
<div class="navbar-brand"> |
||||||
|
|
||||||
|
<div class="navbar-item"> |
||||||
|
<p class="title is-4">Auswahl <%=fname %></p> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
|
||||||
|
<div class="navbar-end"><span class="navbar-end"> |
||||||
|
<div class="navbar-item is-hoverable"> |
||||||
|
<div class="buttons"> |
||||||
|
<p class="submit_button"> |
||||||
|
<button class="button" type="submit"> |
||||||
|
<a onclick="ndMaskSichtDialogUebernehmen(document.forms['selection'],referrerForm)">Übernehmen</a> |
||||||
|
</button> |
||||||
|
</p> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
<div class="navbar-item is-hoverable"> |
||||||
|
<div class="buttons"> |
||||||
|
<p class="reset_button"> |
||||||
|
<button class="button"> |
||||||
|
<a onclick="ndMaskDialogLeeren(document.forms['selection'],referrerForm)">Leeren</a> |
||||||
|
</button> |
||||||
|
</p> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
<div class="navbar-item is-hoverable"> |
||||||
|
<div class="buttons"> |
||||||
|
<p class="close_button"> |
||||||
|
<button class="button"> |
||||||
|
<span class="icon is-small"> |
||||||
|
<a onclick="window.close();"> |
||||||
|
<img src="../../images/close.svg" title="Schließen" aria-label="Schließen" /></a> |
||||||
|
</span> |
||||||
|
</button> |
||||||
|
</p> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</span> |
||||||
|
</div> |
||||||
|
</nav> |
||||||
|
|
||||||
|
<!--<div class="container"> doppelte scrollbalken verhindern--> |
||||||
|
<form name="selection" onsubmit="return false;" style="margin:0px"> |
||||||
|
|
||||||
|
<div class="input-container"> |
||||||
|
<div class="field is-grouped is-grouped-multiline"> |
||||||
|
<div class="input-container"> |
||||||
|
|
||||||
|
<div id="sichtauswahlDiv"> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
|
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<% if(zeilenanzahl!=null && !zeilenanzahl.equals("1")) |
||||||
|
{ |
||||||
|
%> |
||||||
|
|
||||||
|
<div class="buttons"> |
||||||
|
<input type="checkbox" name="metaCheckox" value="" style="margin-left:1.5rem;" onclick="ndMaskDialogToggleAllCheckboxes(document.forms['selection'],this)" />  alle markieren |
||||||
|
</div> |
||||||
|
<hr /> |
||||||
|
<% |
||||||
|
} |
||||||
|
%> |
||||||
|
|
||||||
|
|
||||||
|
<div id="sichtDiv" class="comboDiv">keine Auswahl möglich |
||||||
|
|
||||||
|
</div> |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</form> |
||||||
|
<!--</div> container--> |
||||||
|
</div> |
||||||
|
</body> |
||||||
|
</html> |
@ -0,0 +1,14 @@ |
|||||||
|
<footer> |
||||||
|
<!--Beginn Bottom-Navigation--> |
||||||
|
<nav class="bottom-nav"> |
||||||
|
<ul> |
||||||
|
<span class="bottom-nav"> |
||||||
|
<li class="navbar-item"><a href="https://super-ics.de/superx/f_SuperX-Homepage.htm"><div class="poweredby_sxbi" aria-hidden="true"></div></a></li> |
||||||
|
<li class="navbar-item"><a href="https://super-ics.de/datenschutz_public.htm" >Datenschutz</a></li> |
||||||
|
<li class="navbar-item"><a href="https://super-ics.de/impressum.htm" >Impressum</a></li> |
||||||
|
<li class="navbar-item"><a href="#top" aria-label="Zum Seitenanfang"><span class="icon" aria-hidden="true"><img src="/superx/images/up-circled-grey.svg" alt="nach oben" title="nach oben" /></span></a></li> |
||||||
|
</span> |
||||||
|
</ul> |
||||||
|
</nav> |
||||||
|
<!--Ende Bottom-Navigation--> |
||||||
|
</footer> |
@ -0,0 +1,16 @@ |
|||||||
|
<meta http-equiv="content-type" content="text/html; charset=UTF-8" /> |
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1" /> |
||||||
|
<link rel="stylesheet" href="/superx/style/bulma.css" /> |
||||||
|
<link rel="stylesheet" href="/superx/style/sx_common.css" /> |
||||||
|
<link rel="stylesheet" href="/superx/style/sx_login.css" /> |
||||||
|
<link rel="stylesheet" type="text/css" href="/superx/style/fontello-codes.css"/> |
||||||
|
<link rel="stylesheet" type="text/css" href="/superx/style/sx_fontello.css" /> |
||||||
|
<link rel="stylesheet" type="text/css" href="/superx/style/welcome.css"/> |
||||||
|
|
||||||
|
<style> |
||||||
|
<%= custom_css.toString() %> |
||||||
|
</style> |
||||||
|
|
||||||
|
<!--<script defer type="text/javascript" src="/superx/xml/js/alpinejs/alpine3.min.js"></script>--> |
||||||
|
<script defer type="text/javascript" src="/superx/xml/js/memtext/sx_functions.js"></script> |
||||||
|
<script type="text/javascript" src="/superx/xml/js/memtext/nd_functions.js"></script> |
@ -0,0 +1,16 @@ |
|||||||
|
<meta http-equiv="content-type" content="text/html; charset=UTF-8" /> |
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1" /> |
||||||
|
<link rel="stylesheet" href="/superx/style/bulma.css" /> |
||||||
|
<link rel="stylesheet" href="/superx/style/sx_common.css" /> |
||||||
|
<link rel="stylesheet" href="/superx/style/sx_login.css" /> |
||||||
|
<link rel="stylesheet" type="text/css" href="/superx/style/fontello-codes.css"/> |
||||||
|
<link rel="stylesheet" type="text/css" href="/superx/style/sx_fontello.css" /> |
||||||
|
<link rel="stylesheet" type="text/css" href="/superx/style/sx_field_dialogue.css"/> |
||||||
|
|
||||||
|
<style> |
||||||
|
<%= custom_css.toString() %> |
||||||
|
</style> |
||||||
|
|
||||||
|
<!--<script defer type="text/javascript" src="/superx/xml/js/alpinejs/alpine3.min.js"></script>--> |
||||||
|
<script defer type="text/javascript" src="/superx/xml/js/memtext/sx_functions.js"></script> |
||||||
|
<script type="text/javascript" src="/superx/xml/js/memtext/nd_functions.js"></script> |
After Width: | Height: | Size: 1.9 KiB |
After Width: | Height: | Size: 572 KiB |
After Width: | Height: | Size: 25 KiB |
After Width: | Height: | Size: 2.2 MiB |
After Width: | Height: | Size: 90 KiB |
After Width: | Height: | Size: 2.2 MiB |
After Width: | Height: | Size: 91 KiB |
After Width: | Height: | Size: 573 KiB |
After Width: | Height: | Size: 25 KiB |
After Width: | Height: | Size: 833 KiB |
After Width: | Height: | Size: 28 KiB |
After Width: | Height: | Size: 2.2 MiB |
After Width: | Height: | Size: 91 KiB |
After Width: | Height: | Size: 581 KiB |
After Width: | Height: | Size: 30 KiB |
After Width: | Height: | Size: 2.2 MiB |
After Width: | Height: | Size: 89 KiB |
After Width: | Height: | Size: 2.2 MiB |
After Width: | Height: | Size: 92 KiB |
After Width: | Height: | Size: 573 KiB |
After Width: | Height: | Size: 25 KiB |
After Width: | Height: | Size: 577 KiB |
After Width: | Height: | Size: 27 KiB |
After Width: | Height: | Size: 827 KiB |
After Width: | Height: | Size: 275 KiB |
After Width: | Height: | Size: 574 KiB |
After Width: | Height: | Size: 26 KiB |
After Width: | Height: | Size: 2.0 MiB |
After Width: | Height: | Size: 70 KiB |
After Width: | Height: | Size: 577 KiB |
After Width: | Height: | Size: 29 KiB |
After Width: | Height: | Size: 2.1 MiB |
After Width: | Height: | Size: 44 KiB |
After Width: | Height: | Size: 572 KiB |
After Width: | Height: | Size: 24 KiB |
After Width: | Height: | Size: 572 KiB |
After Width: | Height: | Size: 25 KiB |
After Width: | Height: | Size: 586 KiB |
After Width: | Height: | Size: 27 KiB |
After Width: | Height: | Size: 2.7 MiB |
After Width: | Height: | Size: 90 KiB |
After Width: | Height: | Size: 824 KiB |
After Width: | Height: | Size: 28 KiB |
After Width: | Height: | Size: 588 KiB |
After Width: | Height: | Size: 28 KiB |
After Width: | Height: | Size: 573 KiB |
After Width: | Height: | Size: 27 KiB |
After Width: | Height: | Size: 1.1 MiB |
After Width: | Height: | Size: 46 KiB |
After Width: | Height: | Size: 3.7 KiB |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 573 KiB |
After Width: | Height: | Size: 576 KiB |
After Width: | Height: | Size: 574 KiB |
After Width: | Height: | Size: 574 KiB |
After Width: | Height: | Size: 591 KiB |
After Width: | Height: | Size: 577 KiB |
After Width: | Height: | Size: 582 KiB |
After Width: | Height: | Size: 577 KiB |
After Width: | Height: | Size: 576 KiB |