Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?xml version="1.0" encoding="UTF-8"?>
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
- "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
- <head><title>LS Corner</title></head>
- <!---------------------------------------------------------------------------------------------------------------->
- <!-- Style section Clock/Date-->
- Champagne-Limousines-webfont.ttf
- <style>
- @font-face {
- font-family: Default;
- src: url(Default.ttf);
- }
- #Layer {
- width: 320px;
- height: 480px;
- position: absolute;
- top: 0px;
- right: 0px;
- down: 0px;
- left: 0px;
- }
- .stretch {
- width:100%;
- height:100%;
- }
- body {
- margin: 0;
- }
- SPAN#clock {
- font-family: Default;
- font-weight: 200;
- color: #ffffff;
- //text-shadow: 0px 0px 1px #000;
- font-size: 27px;
- text-align: center;
- text-transform: uppercase;
- }
- SPAN#date {
- font-family: Default;
- font-size: 14px;
- font-weight: 600;
- text-align: right;
- text-transform: none;
- color: #ffffff;
- //text-shadow: 0px 0px 1px #000;
- text-transform: uppercase;
- }
- TD#vweek {
- float:top;
- font-family: Default;
- text-transform: uppercase;
- font-size: 14px;
- font-weight: 200;
- letter-spacing: 0.0em;
- text-align: left;
- color:#ffffff;
- //text-shadow: 0px 0px 1px #000;
- }
- TD#vmonth {
- float:top;
- font-family: Default;
- font-size: 14px;
- text-transform: uppercase;
- font-weight: 200;
- text-align: center;
- color:#ffffff;
- //text-shadow: 0px 0px 1px #000;
- }
- TD#vyear {
- float:top;
- font-family: Default;
- font-weight: bold;
- text-align: right;
- display: none;
- color:#ffffff;
- //text-shadow: 0px 0px 1px #000;
- font-size: 40px;
- }
- <!---------------------------------------------------------------------------------------------------------------->
- <!-- Style section Weather Widget-->
- #WeatherContainer {
- background-color: rgba(0,0,0,0);
- }
- #TextContainer {
- font-size:55px;
- font-family: Default;
- font-weight: bold;
- color:#ffffff;
- }
- #city {
- position: absolute; top: 30px; right: 0px; down: 0px; left: -73px; width: 256px; height: 481px;
- display: none;
- text-align: left;
- font-family: Default;
- font-size: 17px;
- font-weight: normal;
- //text-shadow: 0px 0px 1px #000;
- text-transform: lowercase;
- color: #ffffff;
- }
- #temp {
- position: absolute; top: 183px; right: 0px; down: 0px; left: -40px; width: 320px; height: 481px;
- margin-top:0px;
- text-align: center;
- font-family: Default;
- font-size: 14px;
- font-weight: 800;
- //text-shadow: 0px 0px 1px #000;
- color: #ffffff;
- }
- #desc {
- position: absolute; top: 186px; right: 0px; down: 0px; left: 95px; width: 320px; height: 481px;
- display: none;
- text-align: center;
- font-family: Default;
- font-size: 14px;
- font-weight: 800;
- padding-top:0px;
- //text-shadow: 0px 0px 1px #000;
- text-transform: lowercase;
- color: #ffffff;
- }
- #TextContainer p {
- margin:0;
- }
- #weatherIcon {
- position: absolute;top: 152px; right: 0px; down: 0px; left: 103px; 320px; height: 461px;
- height:33px;
- width:33px;
- }
- </style>
- <!---------------------------------------------------------------------------------------------------------------->
- <!-- Display Wallpaper (LockBackground.png) here -->
- <div id="Layer"><img src="/var/mobile/Library/SpringBoard/Converted-LockBackground.jpg" class="stretch"/></div>
- <!--<div id="Layer"><img src="LockBackground.png" class="stretch"/></div>-->
- <!---------------------------------------------------------------------------------------------------------------->
- <!-- Direct the script to the general folder where the weather icons are located -->
- <base href="Private/"/>
- <!---------------------------------------------------------------------------------------------------------------->
- <!-- Clock and Date Script -->
- <script type="text/javascript">
- function updateClock ( )
- {
- var currentHours_name_array = new Array ("00", "01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "00")
- var currentMinutes_name_array = new Array ("00", "01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28","29", "30", "31", "32", "33", "34", "35", "36", "37", "38", "39", "40", "41", "42", "43", "44", "45", "46", "47", "48", "49", "50", "51", "52", "53", "54", "55", "56", "57", "58", "59", "00")
- var currentTime = new Date ( );
- var currentHours = currentTime.getHours ( );
- var currentMinutes = currentTime.getMinutes ( );
- var currentSeconds = currentTime.getSeconds ( );
- // Convert an hours component of "0" to "12"
- // currentHours = ( currentHours == 0 ) ? currentHours + 24 : currentHours;
- // Convert the hours component to 12-hour format if needed
- currentHours = ( currentHours > 12 ) ? currentHours - 12 : currentHours;
- // Convert an hours component of "0" to "12"
- currentHours = ( currentHours == 0 ) ? 12 : currentHours;
- // Compose the string for display
- var currentTimeString = currentHours_name_array[currentHours] + ":" + currentMinutes_name_array[currentMinutes];
- // Update the time display
- document.getElementById("clock").firstChild.nodeValue = currentTimeString;
- // Pad the minutes and seconds with leading zeros, if required
- currentHours = ( currentHours < 10 ? "0" : "" ) + currentHours;
- currentMinutes = ( currentMinutes < 10 ? "0" : "" ) + currentMinutes;
- currentSeconds = ( currentSeconds < 10 ? "0" : "" ) + currentSeconds;
- }
- function amPm ( )
- {
- var currentTime = new Date ( );
- var currentHours = currentTime.getHours ( );
- // Choose either "AM" or "PM" as appropriate
- // var timeOfDay = ( currentHours < 12 ) ? "AM" : "PM";
- // Convert the hours component to 12-hour format if needed
- // currentHours = ( currentHours > 12 ) ? currentHours - 12 : currentHours;
- // Convert an hours component of "0" to "12"
- currentHours = ( currentHours == 0 ) ? 12 : currentHours;
- // Compose the string for display
- var currentTimeString = timeOfDay;
- // Update the time display
- document.getElementById("ampm").firstChild.nodeValue = " " + currentTimeString;
- }
- function calendarDate ( )
- {
- var this_date_name_array = new Array ("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27" ,"28", "29" ,"30", "31")
- var this_weekday_name_array = new Array("Sun,","Mon,","Tue,","Wed,","Thu,","Fri,","Sat,")
- var this_month_name_array = new Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec")
- var this_date_timestamp = new Date()
- var this_weekday = this_date_timestamp.getDay()
- var this_date = this_date_timestamp.getDate()
- var this_month = this_date_timestamp.getMonth()
- var this_year = this_date_timestamp.getYear()
- if (this_year < 1000)
- this_year+= 1900;
- if (this_year==101)
- this_year=2001;
- var month = this_date_timestamp.getMonth();
- document.getElementById("date").firstChild.nodeValue = this_date_name_array[this_date]
- document.getElementById("calendar_weekday").firstChild.nodeValue = this_weekday_name_array[this_weekday]
- document.getElementById("calendar_month").firstChild.nodeValue = this_month_name_array[this_month]
- document.getElementById("calendar_year").firstChild.nodeValue = this_year
- }
- <!---------------------------------------------------------------------------------------------------------------->
- <!-- Weather Script -->
- var locale = "UKXX0162"
- <!-- A few examples: ITXX0042=Milan/UKXX0085=London/USNY0996=NYC/USCA0638=LA/FRXX0023=Cannes-->
- var isCelsius = false;
- var useRealFeel = false;
- var enableWallpaper = true;
- var enableLockScreen = true;
- var stylesheetWall = 'mini'
- var stylesheetLock = 'mini'
- var stylesheet = 'mini'
- var iconSetWall = 'stardock'
- var iconExtWall = ".png"
- var iconSetLock = 'stardock'
- var iconExtLock = '.png'
- var source = 'yahooWeather'
- var updateInterval = 2
- var postal;
- var demoMode = false;
- var enabled;
- if (location.href.indexOf("LockBackground") == -1){
- stylesheet = stylesheetWall;
- iconSet = iconSetWall;
- iconExt = iconExtWall;
- enabled = enableWallpaper;
- }else{
- stylesheet = stylesheetLock;
- iconSet = iconSetLock;
- iconExt = iconExtLock;
- enabled = enableLockScreen;
- }
- if(enabled == true){
- if(iconSet == null || iconSet == 'null' || iconSet == ""){
- var iconSet = stylesheet;
- }
- var headID = document.getElementsByTagName("head")[0];
- var styleNode = document.createElement('link');
- styleNode.type = 'text/css';
- styleNode.rel = 'stylesheet';
- styleNode.href = 'Stylesheets/'+stylesheet+'.css';
- headID.appendChild(styleNode);
- var scriptNode = document.createElement('script');
- scriptNode.type = 'text/javascript';
- scriptNode.src = 'Sources/'+source+'.js';
- headID.appendChild(scriptNode);
- }
- function onLoad(){
- if (enabled == true){
- if (demoMode == true){
- document.getElementById("weatherIcon").src="Icon Sets/"+iconSet+"/"+"cloudy1"+iconExt;
- document.getElementById("city").innerText="Somewhere";
- document.getElementById("desc").innerText="Partly Cloudy";
- document.getElementById("temp").innerText="100ΒΊ";
- }else{
- document.getElementById("weatherIcon").src="Icon Sets/"+iconSet+"/"+"dunno"+iconExt;
- validateWeatherLocation(escape(locale).replace(/^%u/g, "%"), setPostal)
- }
- }else{
- document.getElementsByTagName("body")[0].innerText='';
- }
- }
- function convertTemp(num)
- {
- if (isCelsius == true)
- return Math.round ((num - 32) * 5 / 9);
- else
- return num;
- }
- function setPostal(obj){
- if (obj.error == false){
- if(obj.cities.length > 0){
- postal = escape(obj.cities[0].zip).replace(/^%u/g, "%")
- document.getElementById("WeatherContainer").className = "";
- weatherRefresherTemp();
- }else{
- document.getElementById("city").innerText="Not Found";
- document.getElementById("WeatherContainer").className = "errorLocaleNotFound";
- }
- }else{
- document.getElementById("city").innerText=obj.errorString;
- document.getElementById("WeatherContainer").className = "errorLocaleValidate";
- setTimeout('validateWeatherLocation(escape(locale).replace(/^%u/g, "%"), setPostal)', Math.round(1000*60*5));
- }
- }
- function dealWithWeather(obj){
- if (obj.error == false){
- document.getElementById("city").innerText=obj.city;
- document.getElementById("desc").innerText=obj.description.toLowerCase();
- if(useRealFeel == true){
- tempValue = convertTemp(obj.realFeel);
- }else{
- tempValue = convertTemp(obj.temp)
- }
- document.getElementById("temp").innerHTML=tempValue+ "°";
- document.getElementById("weatherIcon").src="Icon Sets/"+iconSet+"/"+MiniIcons[obj.icon]+iconExt;
- document.getElementById("WeatherContainer").className = "";
- }else{
- //Could be down to any number of things, which is unhelpful...
- document.getElementById("WeatherContainer").className = "errorWeatherDataFetch";
- }
- }
- function weatherRefresherTemp(){
- fetchWeatherData(dealWithWeather,postal);
- setTimeout(weatherRefresherTemp, 60*1000*updateInterval);
- }
- var MiniIcons =
- [
- "0", //0 tornado
- "1", //1 tropical storm
- "2", //2 hurricane
- "3", //3 severe thunderstorms
- "4", //4 thunderstorms
- "5", //5 mixed rain and snow
- "6", //6 mixed rain and sleet
- "7", //7 mixed snow and sleet
- "8", //8 freezing drizzle
- "9", //9 drizzle
- "10", //10 freezing rain
- "11", //11 showers
- "12", //12 showers
- "13", //13 snow flurries
- "14", //14 light snow showers
- "15", //15 blowing snow
- "16", //16 snow
- "17", //17 hail
- "17", //18 sleet
- "19", //19 dust
- "20", //20 foggy
- "21", //21 haze
- "22", //22 smoky
- "23", //23 blustery
- "24", //24 windy
- "25", //25 cold
- "26", //26 cloudy
- "27", //27 mostly cloudy (night)
- "28", //28 mostly cloudy (day)
- "29", //29 partly cloudy (night)
- "30", //30 partly cloudy (day)
- "31", //31 clear (night)
- "32", //32 sunny
- "33", //33 fair (night)
- "34", //34 fair (day)
- "35", //35 mixed rain and hail
- "36", //36 hot
- "37", //37 isolated thunderstorms
- "38", //38 scattered thunderstorms
- "39", //39 scattered thunderstorms
- "40", //40 scattered showers
- "41", //41 heavy snow
- "42", //42 scattered snow showers
- "43", //43 heavy snow
- "44", //44 partly cloudy
- "45", //45 thundershowers
- "46", //46 snow showers
- "47", //47 isolated thundershowers
- "dunno", //3200 not available
- ]
- function constructError (string)
- {
- return {error:true, errorString:string};
- }
- function findChild (element, nodeName)
- {
- var child;
- for (child = element.firstChild; child != null; child = child.nextSibling)
- {
- if (child.nodeName == nodeName)
- return child;
- }
- return null;
- }
- function fetchWeatherData (callback, zip)
- {
- url="http://weather.yahooapis.com/forecastrss?u=c&p=" //u=Farenheit, because accuWeather sucks
- var xml_request = new XMLHttpRequest();
- xml_request.onload = function(e) {xml_loaded(e, xml_request, callback);}
- xml_request.overrideMimeType("text/xml");
- xml_request.open("GET", url+zip);
- xml_request.setRequestHeader("Cache-Control", "no-cache");
- xml_request.send(null);
- return xml_request;
- }
- function xml_loaded (event, request, callback)
- {
- if (request.responseXML)
- {
- var obj = {error:false, errorString:null};
- var effectiveRoot = findChild(findChild(request.responseXML, "rss"), "channel");
- obj.city = findChild(effectiveRoot, "yweather:location").getAttribute("city");
- obj.realFeel = findChild(effectiveRoot, "yweather:wind").getAttribute("chill");//Only accounts for windChill
- conditionTag = findChild(findChild(effectiveRoot, "item"), "yweather:condition");
- obj.temp = conditionTag.getAttribute("temp");
- obj.icon = conditionTag.getAttribute("code");
- obj.description = conditionTag.getAttribute("text");
- callback (obj);
- }else{
- callback ({error:true, errorString:"XML request failed. no responseXML"});
- }
- }
- function validateWeatherLocation (location, callback)
- {
- var obj = {error:false, errorString:null, cities: new Array};
- obj.cities[0] = {zip: location}; //Not very clever, are we?
- callback (obj);
- }
- </script>
- <!---------------------------------------------------------------------------------------------------------------->
- <!-- Display All - Weather-Clock-Date -->
- <body bgcolor="Transparent" onload="onLoad()">
- <div id="WeatherContainer">
- <div id="TextContainer"> <p id="city"> </p>
- <p id="temp"> </p> <p id="desc">...</p> </div>
- <img id="weatherIcon" src=""/>
- </div>
- <table style="position: absolute; top: 150px; left: 15px; width: 320x; height: 461px; z-index: 14;">
- <tr align="center" valign="top" border="0" cellpadding="0">
- <td height="0" valign="top" margin-left="0">
- <span id="clock">
- <script language="JavaScript">updateClock(); setInterval('updateClock()', 1000 )</script>
- </span>
- </td>
- </tr>
- </table>
- <table style="position: absolute; top: 178px; left: -254px; width: 320px; height: 480px;">
- <tr>
- <td valign="top" td style="text-align: right" border="0" cellpadding="0">
- <span id="date">
- <script language="JavaScript">calendarDate(); setInterval('calendarDate()', 1000 )</script>
- </span>
- </td>
- </tr>
- </table>
- <table style="position: absolute; left: 13px; top: 180px; width: 320px; height: 480px;">
- <td id=vweek width="254" height="12" align="center" valign="top" margin-left="20">
- <span id="calendar_weekday">
- <script language="JavaScript">calendarDate(); setInterval('calendarDate()', 1000 )</script>
- </span>
- </td>
- </tr>
- </table>
- <table style="position: absolute; top: 181px; left: -78px; width: 320px; height: 480px;">
- <tr>
- <td id=vmonth width="254" height="12" align="center" valign="top" margin-left="20">
- <span id="calendar_month">
- <script language="JavaScript">calendarDate(); setInterval('calendarDate()', 1000 )</script>
- </span>
- </td>
- </tr>
- </table>
- <table style="position: absolute; top: 105px; left: -25px; width: 320px; height: 480px">
- <tr>
- <td id=vyear width="254" height="12" align="center" valign="top" margin-left="20">
- <span id="calendar_year">
- <script language="JavaScript">calendarDate(); setInterval('calendarDate()', 1000 )</script>
- </span>
- </td>
- </tr>
- </table>
- </body>
- </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement