﻿    var citiesZipCode = {
     ISXX0010:{img:'',c:'',ar_title:'القدس',en_title:'Jerusalem'},
     EGXX0004:{img:'',c:'',ar_title:'القاهره',en_title:'cairo'},
     AEXX0004:{img:'',c:'',ar_title:'دبي',en_title:'Dubai'},
     SAXX0017:{img:'',c:'',ar_title:'الرياض',en_title:'AlReayad'},
     YMXX0005:{img:'',c:'',ar_title:'صنعاء',en_title:'Sanaa'},
     JOXX0002:{img:'',c:'',ar_title:'عمّان',en_title:'Amman'},
     TSXX0010:{img:'',c:'',ar_title:'تونس',en_title:'Tunis'}
    };
    function weatherHtml(zipCode) {
        var cityName = is_arabic?citiesZipCode[zipCode]['ar_title']:citiesZipCode[zipCode]['en_title'];
        var html = '<div class="weather_field">';
            html  += '<div class="name">'+cityName+'</div>';
            html  += '<div class="c">'+citiesZipCode[zipCode]['c']+'</div>';
            html  += '<div class="img"><img src="'+citiesZipCode[zipCode]['img']+'" alt="img" /></div>';
            html += '</div>';
            try{
        document.getElementById(zipCode).innerHTML=html;
            } catch(e){ alert(html) }

    }

    var weatherFeedUrl='http://weather.yahooapis.com/forecastrss?u=c&p=';
    google.load("feeds", "1");
    function initialize() {
		
		if(is_arabic) {
			selectDayArb(1);
		} else {
			selectDayEng(1);
		}
		
       if(checkCookie('fetched')) {
           for(var ZIPCODE in citiesZipCode) {
                citiesZipCode[ZIPCODE]['c']=getCookie(ZIPCODE+'c');
                citiesZipCode[ZIPCODE]['img']=getCookie(ZIPCODE+'img');
                weatherHtml(ZIPCODE);
            }
       } else {
         setCookie('fetched','yes');
         for(var zipCodeNumber in citiesZipCode) {
              var feed = new google.feeds.Feed(weatherFeedUrl+zipCodeNumber);
              feed.load(fetch);
            }//end foreach
       }
    }

     function fetch(result) {
        if (!result.error) {
          for (var i = 0; i < result.feed.entries.length; i++) {
            var entry = result.feed.entries[i];
            var content = entry.content;
            var title = entry.link;
            var c = content.substring(
                        content.indexOf(', ')+2
                        ,content.indexOf(' C',content.indexOf(', '))
                    );
            var img = content.substring(
                            content.indexOf('src="')+'src='.length+1,
                            content.indexOf('">',content.indexOf('src="'))
                   );
            var zipCode = title.substring(
                            title.indexOf('forecast/')+"forecast/".length,
                            title.indexOf('_c.html',title.indexOf('forecast/'))
                   );
            citiesZipCode[zipCode]['img']=img;
            citiesZipCode[zipCode]['c']=c;
            setCookie(zipCode+'c',c);
            setCookie(zipCode+'img',img);
            weatherHtml(zipCode);
          }
        }
     }// end of fetch

    google.setOnLoadCallback(initialize);


    //cookies work
    function getCookie(c_name)
    {
        if (document.cookie.length>0)
        {
            c_start=document.cookie.indexOf(c_name + "=");
            if (c_start!=-1)
            {
                c_start=c_start + c_name.length+1;
                c_end=document.cookie.indexOf(";",c_start);
                if (c_end==-1) c_end=document.cookie.length;
                return unescape(document.cookie.substring(c_start,c_end));
            }
        }
        return "";
    }

    function setCookie(c_name,value,expiredays)
    {
        var exdate=new Date();
        expiredays=0.5;
	exdate.setTime(exdate.getTime()+(expiredays*24*60*60*1000));
        document.cookie=c_name+ "=" +escape(value)+
            ((expiredays==null) ? "" : ";expires="+exdate.toGMTString());
    }

    function checkCookie(c_name)
    {
        value=getCookie(c_name);
        if (value!=null && value!="" && value!=undefined)
        {
          return true;
        }
        else
        {
            return false;
        }
    }
