First Commit
This commit is contained in:
416
html/sternwarte/HWeather/js/HWeather.js
Executable file
416
html/sternwarte/HWeather/js/HWeather.js
Executable file
@@ -0,0 +1,416 @@
|
||||
// HWeather.js
|
||||
// Version 1.1 2015-04-17 rxf
|
||||
// Wochetage in die richtige Reihenfolge gebracht
|
||||
//
|
||||
// Version 1.0 2012-11-20 rxf
|
||||
// Anzeige von Tabellen mit Bereichen
|
||||
// Ausdruck der Tabellen
|
||||
// Anleitung als POPUP
|
||||
|
||||
var lineNo=0;
|
||||
var STW="Sternwarte Welzheim <br>";
|
||||
|
||||
// Nullfill:
|
||||
// Übergbenen Wert zweistellig machen, fall er nur einstellig ist
|
||||
function nullfill(n)
|
||||
{
|
||||
if(n < 10)
|
||||
{
|
||||
return("0"+n);
|
||||
}
|
||||
else
|
||||
return(""+n);
|
||||
}
|
||||
|
||||
// Tabelle erzeugen
|
||||
function fillTables(werte, anz)
|
||||
{
|
||||
var unit = new Array(" °C", " %", " hPa", " mm", " km/h", " °");
|
||||
|
||||
if(anz == 0)
|
||||
{
|
||||
var txt = new Array("Temperatur", "Feuchte", "Luftdruck", "Regen ",
|
||||
"Wind-Geschwindigkeit", "Windrichtung");
|
||||
var wrtmax = new Array(werte.TempMx, werte.HumiMx, werte.PressMx,
|
||||
werte.Rain, werte.WindSpeed);
|
||||
var wrtmin = new Array(werte.Temp, werte.Humi, werte.Press, werte.Rain,
|
||||
werte.WindSpeed, werte.WindDir);
|
||||
// var d = new Date(werte.Time * 1000);
|
||||
var year = werte.Time.substring(0,4);
|
||||
var month = werte.Time.substring(5,7);
|
||||
var day = werte.Time.substring(8,10);
|
||||
var hour = werte.Time.substring(11,13);
|
||||
var minute = werte.Time.substring(14);
|
||||
var ziel = "";
|
||||
|
||||
$("#tafelRange").remove();
|
||||
$("#tafelSingle").remove();
|
||||
|
||||
$("<table />", {
|
||||
id : "tafelSingle"
|
||||
}).appendTo("div #tabelle");
|
||||
|
||||
// if ((d.getMinutes() != 0) || (d.getHours() != 0)) {
|
||||
if ((minute != 0) || (hour != 0)) {
|
||||
$(
|
||||
"<caption/>",
|
||||
{
|
||||
html : STW + "Wetter am " + day + "."
|
||||
+ month + "." + year + " um "
|
||||
+ hour + ":" + minute
|
||||
}).appendTo("table");
|
||||
|
||||
for ( var i = 0; i < 6; i++) {
|
||||
$("<tr/>", {
|
||||
"class" : (i & 1 == 1) ? "gerade" : "ungerade",
|
||||
id : "trx" + i
|
||||
}).appendTo("table");
|
||||
ziel = "table #trx" + i;
|
||||
if (i == 3) {
|
||||
$(
|
||||
"<td/>",
|
||||
{
|
||||
html : txt[i] + "bis " + hour + ":"
|
||||
+ minute + " Uhr"
|
||||
}).appendTo(ziel);
|
||||
} else {
|
||||
$("<td/>", {
|
||||
html : txt[i]
|
||||
}).appendTo(ziel);
|
||||
}
|
||||
$("<td/>", {
|
||||
html : wrtmin[i] + unit[i]
|
||||
}).appendTo(ziel);
|
||||
}
|
||||
}
|
||||
|
||||
else {
|
||||
$(
|
||||
"<caption/>",
|
||||
{
|
||||
html : STW + "Wetter-Werte für den " + day + "."
|
||||
+ month + "." + year
|
||||
}).appendTo("table");
|
||||
|
||||
for ( var i = 0; i < 3; i++) {
|
||||
$("<tr/>", {
|
||||
"class" : i == 1 ? "gerade" : "ungerade",
|
||||
id : "trx" + i
|
||||
}).appendTo("table");
|
||||
ziel = "table #trx" + i;
|
||||
$("<td/>", {
|
||||
rowspan : "2",
|
||||
html : txt[i]
|
||||
}).appendTo(ziel);
|
||||
$("<td/>", {
|
||||
"class" : "max small",
|
||||
html : "max."
|
||||
}).appendTo(ziel);
|
||||
$("<td/>", {
|
||||
"class" : "max",
|
||||
html : wrtmax[i] + unit[i]
|
||||
}).appendTo(ziel);
|
||||
|
||||
$("<tr/>", {
|
||||
"class" : i == 1 ? "gerade" : "ungerade",
|
||||
id : "trn" + i
|
||||
}).appendTo("table");
|
||||
ziel = "table #trn" + i;
|
||||
$("<td/>", {
|
||||
"class" : "min small",
|
||||
html : "min."
|
||||
}).appendTo(ziel);
|
||||
$("<td/>", {
|
||||
"class" : "min",
|
||||
html : wrtmin[i] + unit[i]
|
||||
}).appendTo(ziel);
|
||||
}
|
||||
|
||||
$("<tr/>", {
|
||||
"class" : "gerade",
|
||||
id : "trr"
|
||||
}).appendTo("table");
|
||||
$("<td/>", {
|
||||
colspan : "2",
|
||||
html : txt[3] + "gesamt"
|
||||
}).appendTo("table #trr");
|
||||
$("<td/>", {
|
||||
html : wrtmax[3] + unit[3]
|
||||
}).appendTo("table #trr");
|
||||
|
||||
$("<tr/>", {
|
||||
"class" : "ungerade",
|
||||
id : "trw"
|
||||
}).appendTo("table");
|
||||
$("<td/>", {
|
||||
colspan : "2",
|
||||
html : "Max. " + txt[4]
|
||||
}).appendTo("table #trw");
|
||||
$("<td/>", {
|
||||
"class" : "max",
|
||||
html : wrtmax[4] + unit[4]
|
||||
}).appendTo("table #trw");
|
||||
}
|
||||
}
|
||||
else // hier ist es ein Datumsbereich
|
||||
{
|
||||
// alert("Datumsbereich");
|
||||
for(var i=0; i<anz; i++)
|
||||
{
|
||||
var values = new Array(0, werte[i].Temp, werte[i].TempMx, werte[i].Humi, werte[i].HumiMx,
|
||||
werte[i].Press, werte[i].PressMx,
|
||||
werte[i].Rain, werte[i].WindSpeed);
|
||||
var dStr = werte[i].Time.substring(0,10);
|
||||
fillOneLine(values,dStr,i);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Tabelle für den Datumsbereich von sDate bis eDate (einschl) holen und anzeigen
|
||||
// sDate und eDate haben Datumsformat
|
||||
// Überschrift und Tabellenkopf anzeigen und dann den AJAX-Call absetzen, mit dem
|
||||
// die kompletten Werte geholt werden und dann via 'fillTables()' angezeigt werden
|
||||
function fillRangeTable(sD, eD)
|
||||
{
|
||||
var header = new Array(" Datum ", "Temperatur<br />°C", "Feuchte<br />%", "Luftdruck<br />hPa", "Regen<br />mm", "Wind-V<br />max km/h");
|
||||
var minmax = new Array(" ","min","max","min","max","min","max"," "," ");
|
||||
|
||||
$("#tafelSingle").remove();
|
||||
$("#tafelRange").remove();
|
||||
|
||||
$("<table />",{
|
||||
id: "tafelRange"
|
||||
}).appendTo("div #tabelle");
|
||||
|
||||
// Überschrift basteln
|
||||
$("<caption/>",{
|
||||
html:STW + "Wetter vom "
|
||||
+ nullfill(sD.getDate())
|
||||
+ "." + nullfill(sD.getMonth()+1)
|
||||
+ "." + sD.getFullYear()
|
||||
+ " bis " + nullfill(eD.getDate())
|
||||
+ "." + nullfill(eD.getMonth()+1)
|
||||
+ "." + eD.getFullYear()
|
||||
}).appendTo("table");
|
||||
|
||||
// Kopfzeile
|
||||
$("<tr/>", {
|
||||
id:"trxh",
|
||||
"class": "ungerade"
|
||||
}).appendTo("table");
|
||||
|
||||
var ziel = "table #trxh";
|
||||
for(var i=0; i<6; i++)
|
||||
{
|
||||
if(i==0)
|
||||
{
|
||||
$("<th/>",{
|
||||
id: "dath",
|
||||
html: header[i]
|
||||
}).appendTo(ziel);
|
||||
}
|
||||
else if(i>=1 && i<=3)
|
||||
{
|
||||
$("<th/>",{
|
||||
colspan: "2",
|
||||
html: header[i]
|
||||
}).appendTo(ziel);
|
||||
}
|
||||
else
|
||||
{
|
||||
$("<th/>",{
|
||||
html: header[i]
|
||||
}).appendTo(ziel);
|
||||
}
|
||||
}
|
||||
|
||||
// Unter der Kopfzeile die min/max
|
||||
$("<tr/>", {
|
||||
id:"trx2",
|
||||
"class":"ungerade"
|
||||
}).appendTo("table");
|
||||
|
||||
ziel = "table #trx2";
|
||||
for(var i=0; i<9; i++)
|
||||
{
|
||||
$("<td/>", {
|
||||
html: minmax[i]
|
||||
}).appendTo(ziel);
|
||||
}
|
||||
|
||||
// Nun per AJAX-Call alle Werte hoeln und im Callback dann anzeigen
|
||||
var dt = new Date(sD);
|
||||
dt.setHours(0);
|
||||
dt.setMinutes(0);
|
||||
var days = Math.round(Math.abs(eD - dt) / (1000 * 60 * 60 * 24 ));
|
||||
if(days > 35)
|
||||
{
|
||||
alert("max. 35 Tage möglich !");
|
||||
return;
|
||||
}
|
||||
doAjaxCall(dt,days+1); // ALLE Werte des gefragten Bereiches holen
|
||||
}
|
||||
|
||||
|
||||
// eine Datenzeile in der Tabelle befüllen
|
||||
function fillOneLine(wrt,datStr,n)
|
||||
{
|
||||
$("<tr/>",{
|
||||
id:"tr"+n,
|
||||
"class": (n&1==1)?"ungerade":"gerade"
|
||||
}).appendTo("table");
|
||||
var ziel = "table #tr"+n;
|
||||
|
||||
$("<td/>", {
|
||||
html: datStr
|
||||
}).appendTo(ziel);
|
||||
|
||||
for(var i=1; i<9; i++)
|
||||
{
|
||||
$("<td/>", {
|
||||
html: (wrt[1]==-17.8) ? "--" : wrt[i]
|
||||
}).appendTo(ziel);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Werte vom Server holen
|
||||
// s ist Datum/Uhrzeit als String im Format 'yy-mm-dd hh:mm'
|
||||
function doAjaxCall(datz, anz)
|
||||
{
|
||||
var date = { Jahr:'2012', Monat:'3', Tag:'23', Stunde:'0', Minute:'0', Anzahl:'1' };
|
||||
|
||||
date["Jahr"] = datz.getFullYear(); // Variable nun mit den Übergabewerten belegen
|
||||
date["Monat"] = datz.getMonth()+1;
|
||||
date["Tag"] = datz.getDate();
|
||||
date["Stunde"] = datz.getHours();
|
||||
date["Minute"] = datz.getMinutes();
|
||||
date["Anzahl"] = anz;
|
||||
|
||||
|
||||
$.ajax( // AJAX-Call
|
||||
{
|
||||
|
||||
type: "POST", // wir machen eine POST - Abfrage
|
||||
url: "HWett.php", // an diese Seite auf dem Server
|
||||
data: date, // mit diesen Daten (ein Array)
|
||||
success : function(erg){ // wenn Erfolg, dann
|
||||
if(erg.charAt(0)=='#') // DEBUG-Meldungen ..
|
||||
{
|
||||
alert(erg); // .. ausgeben und ..
|
||||
erg = erg.substr(erg.lastIndexOf('#')+2); // .. wegblenden
|
||||
}
|
||||
fillTables($.parseJSON(erg),anz); // die Tabelle ensprechend ausfüllen
|
||||
},
|
||||
error: function(xh,t) { // wenn Error, dann eine Alertbox hinmalen
|
||||
alert("xh=" + xh + " t=" + t + xh.getAllResponseHeaders() + "\na) " + xh.responseText + "\nb) " + xh.statusText);
|
||||
},
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
// Datepicker auf Deutsch einstellen
|
||||
$.datepicker.regional['de'] = {
|
||||
closeText: '',
|
||||
prevText: '<',
|
||||
nextText: '>',
|
||||
currentText: '',
|
||||
monthNames: ['Januar','Februar','März','April','Mai','Juni',
|
||||
'Juli','August','September','Oktober','November','Dezember'],
|
||||
monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun',
|
||||
'Jul','Aug','Sep','Okt','Nov','Dez'],
|
||||
dayNames: ['Sonntag','Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag'],
|
||||
dayNamesShort: ['SON','MON','DIE','MIT','DON','FRE','SAM'],
|
||||
dayNamesMin: ['So','Mo','Di','Mi','Do','Fr','Sa'],
|
||||
weekHeader: 'KW',
|
||||
dateFormat: 'yyyy-mm-dd',
|
||||
firstDay: 1,
|
||||
isRTL: false,
|
||||
showMonthAfterYear: false,
|
||||
yearSuffix: ''
|
||||
};
|
||||
$.datepicker.setDefaults($.datepicker.regional['de']); // diese Einstellung nun übernehmen
|
||||
|
||||
// Script-Aktionen
|
||||
// Wenn das Dokument geladen wird
|
||||
$(document).ready(function()
|
||||
{
|
||||
var sDate = $('#startdate');
|
||||
var eDate = $('#enddate');
|
||||
var maxDate = new Date();
|
||||
|
||||
// Datums-Zeit-Picker für die Startzeit
|
||||
sDate.datetimepicker( // Initialisierung des datetimepickers
|
||||
{
|
||||
showOn: 'focus' , // onFocus wird der Picker angezeigt
|
||||
dateFormat: "yy-mm-dd", // angezeigt wird in diesem Format
|
||||
defaultDate: -1,
|
||||
maxDate: "-1d", // max Datum unbegrenzt
|
||||
minDate: "2012-03-01", // min Datum: da beginnt unsere Datenbank
|
||||
closeText: "OK", // erst wenn OK geklickt wird, dann gehts weiter
|
||||
showOtherMonths: "true", // Monat via Pfeile wähleen lassen
|
||||
stepMinute: 5, // Zeischieber haben eien Auflösung von 5min
|
||||
timeText: "Uhrzeit", // Texte dazu
|
||||
hourText: "Stunde",
|
||||
minuteText : "Minute",
|
||||
onClose: function (dateText, inst) // was passiert, wenn OK gedrückt wird:
|
||||
{
|
||||
var dt = new Date(sDate.datepicker('getDate'));
|
||||
eDate.datepicker('option','minDate',sDate.datepicker('getDate')); // minWert des EndeDatums wird auf Startdatum gesetzt
|
||||
test = sDate.datepicker('getDate');
|
||||
testm = new Date(test.getTime());
|
||||
testm.setDate(testm.getDate() + 35);
|
||||
eDate.datepicker('option','maxDate',testm);
|
||||
eDate.attr("value",sDate.val().substring(0,10)); // Wert des EndeDatums wird auf das StartDatum gesetzt (ohne die Uhrzeit)
|
||||
doAjaxCall(dt,0); // und die Werte werden angefordert
|
||||
},
|
||||
});
|
||||
|
||||
// Datumspicker für das Ende-Datum
|
||||
eDate.datepicker(
|
||||
{
|
||||
showOn: 'focus' ,
|
||||
dateFormat: "yy-mm-dd",
|
||||
defaultDate: -1,
|
||||
maxDate: "-1d",
|
||||
showOtherMonths: "true",
|
||||
// showButtonPanel: "true",
|
||||
// closeText: "OK", // erst wenn OK geklickt wird, dann gehts weiter
|
||||
onClose: function (dateText, inst) // wenn ein Zeitpunkt gewählt ist, dann
|
||||
{
|
||||
var sdat = new Date(sDate.datepicker('getDate'));
|
||||
sDate.attr("value",$.datepicker.formatDate('yy-mm-dd', sdat)+" 00:00");
|
||||
fillRangeTable(sDate.datepicker('getDate'), eDate.datepicker('getDate'));
|
||||
}
|
||||
});
|
||||
|
||||
// Drucken:
|
||||
$("#printbutton").click( function()
|
||||
{
|
||||
$('div#Area').jqprint();
|
||||
});
|
||||
|
||||
// PopUp
|
||||
$("#manualbutton").popupWindow({
|
||||
windowURL:"Anleitung.html",
|
||||
height: 350,
|
||||
width: 900,
|
||||
left: 50,
|
||||
top: 50
|
||||
});
|
||||
|
||||
|
||||
// nach oben scrollen
|
||||
$(window.parent).scrollTop(0); // damit der Anfang der Tabelle zu sehen ist
|
||||
|
||||
// Inputfeld mit 'gestern' um 0h00 vorbelegen
|
||||
var yesterday = new Date();
|
||||
yesterday.setDate(yesterday.getDate()-1);
|
||||
sDate.attr("value",$.datepicker.formatDate('yy-mm-dd', yesterday)+" 00:00"); // Startdatum auf 'gestern'
|
||||
eDate.attr("value",$.datepicker.formatDate('yy-mm-dd', yesterday)); // Enddatumn auch (aber ohne Uhrzeit)
|
||||
eDate.datepicker('option','minDate',sDate.datepicker('getDate')); // minWert des EndeDatums wird auf Startdatum gesetzt
|
||||
|
||||
// Gleich mal die Anfrage an Server absetzen und damit die Tageswerete für das Startdatum holen
|
||||
var dt = new Date(sDate.datepicker('getDate'));
|
||||
doAjaxCall(dt,0);
|
||||
});
|
||||
125
html/sternwarte/HWeather/js/jquery-ui-1.8.21.custom.min.js
vendored
Executable file
125
html/sternwarte/HWeather/js/jquery-ui-1.8.21.custom.min.js
vendored
Executable file
File diff suppressed because one or more lines are too long
85
html/sternwarte/HWeather/js/jquery-ui-sliderAccess.js
vendored
Executable file
85
html/sternwarte/HWeather/js/jquery-ui-sliderAccess.js
vendored
Executable file
@@ -0,0 +1,85 @@
|
||||
/*
|
||||
* jQuery UI Slider Access
|
||||
* By: Trent Richardson [http://trentrichardson.com]
|
||||
* Version 0.2
|
||||
* Last Modified: 12/02/2011
|
||||
*
|
||||
* Copyright 2011 Trent Richardson
|
||||
* Dual licensed under the MIT and GPL licenses.
|
||||
* http://trentrichardson.com/Impromptu/GPL-LICENSE.txt
|
||||
* http://trentrichardson.com/Impromptu/MIT-LICENSE.txt
|
||||
*
|
||||
*/
|
||||
(function($){
|
||||
|
||||
$.fn.extend({
|
||||
sliderAccess: function(options){
|
||||
options = options || {};
|
||||
options.touchonly = options.touchonly !== undefined? options.touchonly : true; // by default only show it if touch device
|
||||
|
||||
if(options.touchonly === true && !("ontouchend" in document))
|
||||
return $(this);
|
||||
|
||||
return $(this).each(function(i,obj){
|
||||
var $t = $(this),
|
||||
o = $.extend({},{
|
||||
where: 'after',
|
||||
step: $t.slider('option','step'),
|
||||
upIcon: 'ui-icon-plus',
|
||||
downIcon: 'ui-icon-minus',
|
||||
text: false,
|
||||
upText: '+',
|
||||
downText: '-',
|
||||
buttonset: true,
|
||||
buttonsetTag: 'span'
|
||||
}, options),
|
||||
$buttons = $('<'+ o.buttonsetTag +' class="ui-slider-access">'+
|
||||
'<button data-icon="'+ o.downIcon +'" data-step="-'+ o.step +'">'+ o.downText +'</button>'+
|
||||
'<button data-icon="'+ o.upIcon +'" data-step="'+ o.step +'">'+ o.upText +'</button>'+
|
||||
'</'+ o.buttonsetTag +'>');
|
||||
|
||||
$buttons.children('button').each(function(j, jobj){
|
||||
var $jt = $(this);
|
||||
$jt.button({
|
||||
text: o.text,
|
||||
icons: { primary: $jt.data('icon') }
|
||||
})
|
||||
.click(function(e){
|
||||
var step = $jt.data('step'),
|
||||
curr = $t.slider('value'),
|
||||
newval = curr += step*1,
|
||||
minval = $t.slider('option','min'),
|
||||
maxval = $t.slider('option','max');
|
||||
|
||||
e.preventDefault();
|
||||
|
||||
if(newval < minval || newval > maxval)
|
||||
return;
|
||||
|
||||
$t.slider('value', newval);
|
||||
|
||||
$t.slider("option", "slide").call($t, null, { value: newval });
|
||||
});
|
||||
});
|
||||
|
||||
// before or after
|
||||
$t[o.where]($buttons);
|
||||
|
||||
if(o.buttonset){
|
||||
$buttons.removeClass('ui-corner-right').removeClass('ui-corner-left').buttonset();
|
||||
$buttons.eq(0).addClass('ui-corner-left');
|
||||
$buttons.eq(1).addClass('ui-corner-right');
|
||||
}
|
||||
|
||||
// adjust the width so we don't break the original layout
|
||||
var bOuterWidth = $buttons.css({
|
||||
marginLeft: (o.where == 'after'? 10:0),
|
||||
marginRight: (o.where == 'before'? 10:0)
|
||||
}).outerWidth(true) + 5;
|
||||
var tOuterWidth = $t.outerWidth(true);
|
||||
$t.css('display','inline-block').width(tOuterWidth-bOuterWidth);
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
})(jQuery);
|
||||
1326
html/sternwarte/HWeather/js/jquery-ui-timepicker-addon.js
vendored
Executable file
1326
html/sternwarte/HWeather/js/jquery-ui-timepicker-addon.js
vendored
Executable file
File diff suppressed because it is too large
Load Diff
75
html/sternwarte/HWeather/js/jquery.jqprint-0.3.js
Executable file
75
html/sternwarte/HWeather/js/jquery.jqprint-0.3.js
Executable file
@@ -0,0 +1,75 @@
|
||||
// -----------------------------------------------------------------------
|
||||
// Eros Fratini - eros@recoding.it
|
||||
// jqprint 0.3
|
||||
//
|
||||
// - 19/06/2009 - some new implementations, added Opera support
|
||||
// - 11/05/2009 - first sketch
|
||||
//
|
||||
// Printing plug-in for jQuery, evolution of jPrintArea: http://plugins.jquery.com/project/jPrintArea
|
||||
// requires jQuery 1.3.x
|
||||
//
|
||||
// Licensed under the MIT license: http://www.opensource.org/licenses/mit-license.php
|
||||
//------------------------------------------------------------------------
|
||||
|
||||
(function($) {
|
||||
var opt;
|
||||
|
||||
$.fn.jqprint = function (options) {
|
||||
opt = $.extend({}, $.fn.jqprint.defaults, options);
|
||||
|
||||
var $element = (this instanceof jQuery) ? this : $(this);
|
||||
|
||||
if (opt.operaSupport && $.browser.opera)
|
||||
{
|
||||
var tab = window.open("","jqPrint-preview");
|
||||
tab.document.open();
|
||||
|
||||
var doc = tab.document;
|
||||
}
|
||||
else
|
||||
{
|
||||
var $iframe = $("<iframe />");
|
||||
|
||||
if (!opt.debug) { $iframe.css({ position: "absolute", width: "0px", height: "0px", left: "-600px", top: "-600px" }); }
|
||||
|
||||
$iframe.appendTo("body");
|
||||
var doc = $iframe[0].contentWindow.document;
|
||||
}
|
||||
|
||||
if (opt.importCSS)
|
||||
{
|
||||
if ($("link[media=print]").length > 0)
|
||||
{
|
||||
$("link[media=print]").each( function() {
|
||||
doc.write("<link type='text/css' rel='stylesheet' href='" + $(this).attr("href") + "' media='print' />");
|
||||
});
|
||||
}
|
||||
else
|
||||
{
|
||||
$("link").each( function() {
|
||||
doc.write("<link type='text/css' rel='stylesheet' href='" + $(this).attr("href") + "' />");
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
if (opt.printContainer) { doc.write($element.outer()); }
|
||||
else { $element.each( function() { doc.write($(this).html()); }); }
|
||||
|
||||
doc.close();
|
||||
|
||||
(opt.operaSupport && $.browser.opera ? tab : $iframe[0].contentWindow).focus();
|
||||
setTimeout( function() { (opt.operaSupport && $.browser.opera ? tab : $iframe[0].contentWindow).print(); if (tab) { tab.close(); } }, 1000);
|
||||
}
|
||||
|
||||
$.fn.jqprint.defaults = {
|
||||
debug: false,
|
||||
importCSS: true,
|
||||
printContainer: true,
|
||||
operaSupport: true
|
||||
};
|
||||
|
||||
// Thanks to 9__, found at http://users.livejournal.com/9__/380664.html
|
||||
jQuery.fn.outer = function() {
|
||||
return $($('<div></div>').html(this.clone())).html();
|
||||
}
|
||||
})(jQuery);
|
||||
62
html/sternwarte/HWeather/js/jquery.popupWindow.js
Executable file
62
html/sternwarte/HWeather/js/jquery.popupWindow.js
Executable file
@@ -0,0 +1,62 @@
|
||||
(function($){
|
||||
$.fn.popupWindow = function(instanceSettings){
|
||||
|
||||
return this.each(function(){
|
||||
|
||||
$(this).click(function(){
|
||||
|
||||
$.fn.popupWindow.defaultSettings = {
|
||||
centerBrowser:0, // center window over browser window? {1 (YES) or 0 (NO)}. overrides top and left
|
||||
centerScreen:0, // center window over entire screen? {1 (YES) or 0 (NO)}. overrides top and left
|
||||
height:500, // sets the height in pixels of the window.
|
||||
left:0, // left position when the window appears.
|
||||
location:0, // determines whether the address bar is displayed {1 (YES) or 0 (NO)}.
|
||||
menubar:0, // determines whether the menu bar is displayed {1 (YES) or 0 (NO)}.
|
||||
resizable:0, // whether the window can be resized {1 (YES) or 0 (NO)}. Can also be overloaded using resizable.
|
||||
scrollbars:0, // determines whether scrollbars appear on the window {1 (YES) or 0 (NO)}.
|
||||
status:0, // whether a status line appears at the bottom of the window {1 (YES) or 0 (NO)}.
|
||||
width:500, // sets the width in pixels of the window.
|
||||
windowName:null, // name of window set from the name attribute of the element that invokes the click
|
||||
windowURL:null, // url used for the popup
|
||||
top:0, // top position when the window appears.
|
||||
toolbar:0 // determines whether a toolbar (includes the forward and back buttons) is displayed {1 (YES) or 0 (NO)}.
|
||||
};
|
||||
|
||||
settings = $.extend({}, $.fn.popupWindow.defaultSettings, instanceSettings || {});
|
||||
|
||||
var windowFeatures = 'height=' + settings.height +
|
||||
',width=' + settings.width +
|
||||
',toolbar=' + settings.toolbar +
|
||||
',scrollbars=' + settings.scrollbars +
|
||||
',status=' + settings.status +
|
||||
',resizable=' + settings.resizable +
|
||||
',location=' + settings.location +
|
||||
',menuBar=' + settings.menubar;
|
||||
|
||||
settings.windowName = this.name || settings.windowName;
|
||||
settings.windowURL = this.href || settings.windowURL;
|
||||
var centeredY,centeredX;
|
||||
|
||||
if(settings.centerBrowser){
|
||||
|
||||
if ($.browser.msie) {//hacked together for IE browsers
|
||||
centeredY = (window.screenTop - 120) + ((((document.documentElement.clientHeight + 120)/2) - (settings.height/2)));
|
||||
centeredX = window.screenLeft + ((((document.body.offsetWidth + 20)/2) - (settings.width/2)));
|
||||
}else{
|
||||
centeredY = window.screenY + (((window.outerHeight/2) - (settings.height/2)));
|
||||
centeredX = window.screenX + (((window.outerWidth/2) - (settings.width/2)));
|
||||
}
|
||||
window.open(settings.windowURL, settings.windowName, windowFeatures+',left=' + centeredX +',top=' + centeredY).focus();
|
||||
}else if(settings.centerScreen){
|
||||
centeredY = (screen.height - settings.height)/2;
|
||||
centeredX = (screen.width - settings.width)/2;
|
||||
window.open(settings.windowURL, settings.windowName, windowFeatures+',left=' + centeredX +',top=' + centeredY).focus();
|
||||
}else{
|
||||
window.open(settings.windowURL, settings.windowName, windowFeatures+',left=' + settings.left +',top=' + settings.top).focus();
|
||||
}
|
||||
return false;
|
||||
});
|
||||
|
||||
});
|
||||
};
|
||||
})(jQuery);
|
||||
Reference in New Issue
Block a user