1 | diff -rup ../mythplugins-orig/mythweather/mythweather/Makefile ./mythweather/mythweather/Makefile
|
---|
2 | --- ../mythplugins-orig/mythweather/mythweather/Makefile 2007-04-14 01:32:02.000000000 -0400
|
---|
3 | +++ ./mythweather/mythweather/Makefile 2007-04-21 00:54:14.000000000 -0400
|
---|
4 | @@ -187,6 +187,56 @@ install_installimages: all
|
---|
5 | -$(INSTALL_FILE) "images/sunny.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
6 | -$(INSTALL_FILE) "images/thunshowers.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
7 | -$(INSTALL_FILE) "images/unknown.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
8 | + -$(INSTALL_FILE) "images/0.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
9 | + -$(INSTALL_FILE) "images/1.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
10 | + -$(INSTALL_FILE) "images/2.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
11 | + -$(INSTALL_FILE) "images/3.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
12 | + -$(INSTALL_FILE) "images/4.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
13 | + -$(INSTALL_FILE) "images/5.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
14 | + -$(INSTALL_FILE) "images/6.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
15 | + -$(INSTALL_FILE) "images/7.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
16 | + -$(INSTALL_FILE) "images/8.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
17 | + -$(INSTALL_FILE) "images/9.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
18 | + -$(INSTALL_FILE) "images/10.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
19 | + -$(INSTALL_FILE) "images/11.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
20 | + -$(INSTALL_FILE) "images/12.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
21 | + -$(INSTALL_FILE) "images/13.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
22 | + -$(INSTALL_FILE) "images/14.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
23 | + -$(INSTALL_FILE) "images/15.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
24 | + -$(INSTALL_FILE) "images/16.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
25 | + -$(INSTALL_FILE) "images/17.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
26 | + -$(INSTALL_FILE) "images/18.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
27 | + -$(INSTALL_FILE) "images/19.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
28 | + -$(INSTALL_FILE) "images/20.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
29 | + -$(INSTALL_FILE) "images/21.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
30 | + -$(INSTALL_FILE) "images/22.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
31 | + -$(INSTALL_FILE) "images/23.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
32 | + -$(INSTALL_FILE) "images/24.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
33 | + -$(INSTALL_FILE) "images/25.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
34 | + -$(INSTALL_FILE) "images/26.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
35 | + -$(INSTALL_FILE) "images/27.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
36 | + -$(INSTALL_FILE) "images/28.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
37 | + -$(INSTALL_FILE) "images/29.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
38 | + -$(INSTALL_FILE) "images/30.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
39 | + -$(INSTALL_FILE) "images/31.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
40 | + -$(INSTALL_FILE) "images/32.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
41 | + -$(INSTALL_FILE) "images/33.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
42 | + -$(INSTALL_FILE) "images/34.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
43 | + -$(INSTALL_FILE) "images/35.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
44 | + -$(INSTALL_FILE) "images/36.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
45 | + -$(INSTALL_FILE) "images/37.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
46 | + -$(INSTALL_FILE) "images/38.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
47 | + -$(INSTALL_FILE) "images/39.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
48 | + -$(INSTALL_FILE) "images/40.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
49 | + -$(INSTALL_FILE) "images/41.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
50 | + -$(INSTALL_FILE) "images/42.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
51 | + -$(INSTALL_FILE) "images/43.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
52 | + -$(INSTALL_FILE) "images/44.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
53 | + -$(INSTALL_FILE) "images/45.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
54 | + -$(INSTALL_FILE) "images/46.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
55 | + -$(INSTALL_FILE) "images/na.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
56 | + -$(INSTALL_FILE) "images/weather_logo.png" "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
57 | +
|
---|
58 |
|
---|
59 |
|
---|
60 | uninstall_installimages:
|
---|
61 | @@ -210,6 +260,55 @@ uninstall_installimages:
|
---|
62 | -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/sunny.png"
|
---|
63 | -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/thunshowers.png"
|
---|
64 | -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/unknown.png"
|
---|
65 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/0.png"
|
---|
66 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/1.png"
|
---|
67 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/2.png"
|
---|
68 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/3.png"
|
---|
69 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/4.png"
|
---|
70 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/5.png"
|
---|
71 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/6.png"
|
---|
72 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/7.png"
|
---|
73 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/8.png"
|
---|
74 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/9.png"
|
---|
75 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/10.png"
|
---|
76 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/11.png"
|
---|
77 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/12.png"
|
---|
78 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/13.png"
|
---|
79 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/14.png"
|
---|
80 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/15.png"
|
---|
81 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/16.png"
|
---|
82 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/17.png"
|
---|
83 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/18.png"
|
---|
84 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/19.png"
|
---|
85 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/20.png"
|
---|
86 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/21.png"
|
---|
87 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/22.png"
|
---|
88 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/23.png"
|
---|
89 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/24.png"
|
---|
90 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/25.png"
|
---|
91 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/26.png"
|
---|
92 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/27.png"
|
---|
93 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/28.png"
|
---|
94 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/29.png"
|
---|
95 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/30.png"
|
---|
96 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/31.png"
|
---|
97 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/32.png"
|
---|
98 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/33.png"
|
---|
99 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/34.png"
|
---|
100 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/35.png"
|
---|
101 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/36.png"
|
---|
102 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/37.png"
|
---|
103 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/38.png"
|
---|
104 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/39.png"
|
---|
105 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/40.png"
|
---|
106 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/41.png"
|
---|
107 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/42.png"
|
---|
108 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/43.png"
|
---|
109 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/44.png"
|
---|
110 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/45.png"
|
---|
111 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/46.png"
|
---|
112 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/na.png"
|
---|
113 | + -$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/weather_logo.png"
|
---|
114 | -$(DEL_DIR) "$(INSTALL_ROOT)/usr/share/mythtv/themes/default/"
|
---|
115 |
|
---|
116 | diff -rup ../mythplugins-orig/mythweather/mythweather/weather.cpp ./mythweather/mythweather/weather.cpp
|
---|
117 | --- ../mythplugins-orig/mythweather/mythweather/weather.cpp 2007-03-26 23:20:23.000000000 -0400
|
---|
118 | +++ ./mythweather/mythweather/weather.cpp 2007-04-21 00:46:40.000000000 -0400
|
---|
119 | @@ -1549,13 +1549,13 @@ void Weather::cursorRight()
|
---|
120 |
|
---|
121 | if (tp == 6)
|
---|
122 | tp = 1;
|
---|
123 | -
|
---|
124 | +/*
|
---|
125 | if (tp == 3 && pastTime == true)
|
---|
126 | tp = 4;
|
---|
127 |
|
---|
128 | if (tp == 4 && pastTime == false)
|
---|
129 | tp = 5;
|
---|
130 | -
|
---|
131 | +*/
|
---|
132 | showLayout(tp);
|
---|
133 | }
|
---|
134 | else if (deepSetup == false)
|
---|
135 | @@ -1659,13 +1659,13 @@ void Weather::cursorLeft()
|
---|
136 |
|
---|
137 | if (tp == 0)
|
---|
138 | tp = 5;
|
---|
139 | -
|
---|
140 | +/*
|
---|
141 | if (tp == 3 && pastTime == true)
|
---|
142 | tp = 2;
|
---|
143 |
|
---|
144 | if (tp == 4 && pastTime == false)
|
---|
145 | tp = 3;
|
---|
146 | -
|
---|
147 | +*/
|
---|
148 | showLayout(tp);
|
---|
149 | }
|
---|
150 | else if (deepSetup == true)
|
---|
151 | @@ -1736,12 +1736,12 @@ void Weather::nextpage_timeout()
|
---|
152 | tp++;
|
---|
153 | if (tp > 5)
|
---|
154 | tp = 1;
|
---|
155 | -
|
---|
156 | +/*
|
---|
157 | if (tp == 3 && pastTime == true)
|
---|
158 | tp = 4;
|
---|
159 | if (tp == 4 && pastTime == false)
|
---|
160 | tp = 5;
|
---|
161 | -
|
---|
162 | +*/
|
---|
163 | showLayout(tp);
|
---|
164 |
|
---|
165 | }
|
---|
166 | @@ -1783,12 +1783,12 @@ void Weather::update_timeout()
|
---|
167 |
|
---|
168 | if (result == true)
|
---|
169 | {
|
---|
170 | -
|
---|
171 | +/*
|
---|
172 | if (pastTime == true && currentPage == 3 && inSetup == false)
|
---|
173 | nextpage_timeout();
|
---|
174 | if (pastTime == false && currentPage == 4 && inSetup == false)
|
---|
175 | nextpage_timeout();
|
---|
176 | -
|
---|
177 | +*/
|
---|
178 | if (firstRun == true && inSetup == false)
|
---|
179 | nextpage_Timer->start((int)(1000 * nextpageInterval));
|
---|
180 |
|
---|
181 | @@ -1891,7 +1891,11 @@ void Weather::update_timeout()
|
---|
182 |
|
---|
183 | QString todayDesc;
|
---|
184 |
|
---|
185 | - todayDesc = tr("Today a high of ") + highTemp[0] + tr(" and a low of ");
|
---|
186 | + if (highTemp[0] != "N/A")
|
---|
187 | + todayDesc = tr("Today expect a high of ") + highTemp[0] + tr(" and a low of ");
|
---|
188 | + else
|
---|
189 | + todayDesc = tr("Today expect a low of ");
|
---|
190 | +
|
---|
191 | todayDesc += lowTemp[0] + tr(". Currently there is a humidity of ");
|
---|
192 | todayDesc += curHumid + tr("% and the winds are");
|
---|
193 |
|
---|
194 | @@ -1905,7 +1909,7 @@ void Weather::update_timeout()
|
---|
195 | todayDesc += tr(" coming in at ") + curWind + tr(" Km/h from the ") + tr(winddir) + ".";
|
---|
196 | }
|
---|
197 |
|
---|
198 | - if (visibility.toFloat() == 999.00)
|
---|
199 | + if (visibility == "Unlimited")
|
---|
200 | todayDesc += tr(" Visibility will be unlimited for today.");
|
---|
201 | else
|
---|
202 | {
|
---|
203 | @@ -1926,27 +1930,37 @@ void Weather::update_timeout()
|
---|
204 | QString tomDesc;
|
---|
205 |
|
---|
206 | QString tomDate;
|
---|
207 | - if (date[0].upper() == "SUN")
|
---|
208 | +/*
|
---|
209 | + if (date[1].upper() == "SUN")
|
---|
210 | tomDate = tr("Sunday");
|
---|
211 | - else if (date[0].upper() == "MON")
|
---|
212 | + else if (date[1].upper() == "MON")
|
---|
213 | tomDate = tr("Monday");
|
---|
214 | - else if (date[0].upper() == "TUE")
|
---|
215 | + else if (date[1].upper() == "TUE")
|
---|
216 | tomDate = tr("Tuesday");
|
---|
217 | - else if (date[0].upper() == "WED")
|
---|
218 | + else if (date[1].upper() == "WED")
|
---|
219 | tomDate = tr("Wednesday");
|
---|
220 | - else if (date[0].upper() == "THU")
|
---|
221 | + else if (date[1].upper() == "THU")
|
---|
222 | tomDate = tr("Thursday");
|
---|
223 | - else if (date[0].upper() == "FRI")
|
---|
224 | + else if (date[1].upper() == "FRI")
|
---|
225 | tomDate = tr("Friday");
|
---|
226 | - else if (date[0].upper() == "SAT")
|
---|
227 | + else if (date[1].upper() == "SAT")
|
---|
228 | tomDate = tr("Saturday");
|
---|
229 | else
|
---|
230 | tomDate = tr("Date Error");
|
---|
231 | +*/
|
---|
232 |
|
---|
233 | - tomDesc = tr("Tomorrow expect a high of ") + highTemp[0] + tr(" and a low of ");
|
---|
234 | - tomDesc += lowTemp[0] + tr(".");
|
---|
235 | + tomDate = tr(" ") + date[1];
|
---|
236 | + tomDesc = tr("Expect high of ") + highTemp[1] + tr(", low of ");
|
---|
237 | + tomDesc += lowTemp[1] + tr(" and humidity ") + humid[1];
|
---|
238 | +// tomDesc += tr("%. The prob of precip is ") + precip[1];
|
---|
239 | + tomDesc += tr("%. Winds ") + wind[1];
|
---|
240 | + if (convertData == false)
|
---|
241 | + tomDesc += tr(" mph ") + tr(wdir[1]) + ".";
|
---|
242 | + else
|
---|
243 | + tomDesc += tr(" Km/h ") + tr(wdir[1]) + ".";
|
---|
244 |
|
---|
245 | - QString tomCond = tr("Expected conditions: ") + weatherType[0];
|
---|
246 | + QString tomCond = tr("Expected conditions: ") + weatherType[1];
|
---|
247 | + tomCond += tr(" pp ") + precip[1] + tr("%");
|
---|
248 |
|
---|
249 | container = theme->GetSet("weatherpages");
|
---|
250 | if (container)
|
---|
251 | @@ -1959,7 +1973,7 @@ void Weather::update_timeout()
|
---|
252 | itype = (UIImageType *)container->GetType("todaypic");
|
---|
253 | if (itype)
|
---|
254 | {
|
---|
255 | - itype->SetImage(weatherIcon[0]);
|
---|
256 | + itype->SetImage(weatherIcon[1]);
|
---|
257 | itype->LoadImage();
|
---|
258 | }
|
---|
259 |
|
---|
260 | @@ -1998,12 +2012,15 @@ void Weather::update_timeout()
|
---|
261 | SetText(container, "low1", lowTemp[1]);
|
---|
262 | SetText(container, "low2", lowTemp[2]);
|
---|
263 | SetText(container, "low3", lowTemp[3]);
|
---|
264 | + SetText(container, "precip1", precip[1]);
|
---|
265 | + SetText(container, "precip2", precip[2]);
|
---|
266 | + SetText(container, "precip3", precip[3]);
|
---|
267 | }
|
---|
268 |
|
---|
269 | container = theme->GetSet("weatherpages");
|
---|
270 | if (container)
|
---|
271 | {
|
---|
272 | - SetText(container, "updatetime", tr("Weather data from: ") + updated);
|
---|
273 | + SetText(container, "updatetime", tr("Weather data last updated: ") + updated);
|
---|
274 | }
|
---|
275 |
|
---|
276 | if (firstRun == true)
|
---|
277 | @@ -2127,15 +2144,29 @@ bool Weather::UpdateData()
|
---|
278 |
|
---|
279 | if (haveData == true)
|
---|
280 | {
|
---|
281 | + getCurrentConditions();
|
---|
282 | +
|
---|
283 | + getForecast();
|
---|
284 | +
|
---|
285 | + return true;
|
---|
286 | + }
|
---|
287 | +
|
---|
288 | + return false;
|
---|
289 | +}
|
---|
290 |
|
---|
291 | - //updated = GetString("this.swLastUp");
|
---|
292 | - updated = QDateTime::currentDateTime().toString(gContext->GetSetting("dateformat") +
|
---|
293 | - " " + gContext->GetSetting("timeformat"));
|
---|
294 | - city = GetString("this.swCity");
|
---|
295 | - state = GetString("this.swSubDiv");
|
---|
296 | - country = GetString("this.swCountry");
|
---|
297 | - curTemp = GetString("this.swTemp");
|
---|
298 | - if (curTemp.length() == 0)
|
---|
299 | +void Weather::getCurrentConditions()
|
---|
300 | +{
|
---|
301 | + QString cc, wind, bar, uv;
|
---|
302 | +
|
---|
303 | + // updated = QDateTime::currentDateTime().toString(gContext->GetSetting("dateformat") + " " + gContext->GetSetting("timeformat"));
|
---|
304 | + city = GetString(httpData, "<dnam>", "</dnam>");
|
---|
305 | + // state = GetString("this.swSubDiv");
|
---|
306 | + // country = GetString("this.swCountry");
|
---|
307 | + updated = GetString(httpData, "<lsup>", "</lsup>");
|
---|
308 | + cc = GetString(httpData, "<cc>", "</cc>");
|
---|
309 | + curTemp = GetString(cc, "<tmp>", "</tmp>");
|
---|
310 | +
|
---|
311 | + if ( (curTemp.length() == 0) || (curTemp == "N/A") )
|
---|
312 | {
|
---|
313 | curTemp = "-na-";
|
---|
314 | updated = updated + tr(" (Not All Information Available)");
|
---|
315 | @@ -2152,20 +2183,25 @@ bool Weather::UpdateData()
|
---|
316 | }
|
---|
317 | }
|
---|
318 |
|
---|
319 | - curIcon = GetString("this.swCIcon");
|
---|
320 | - curWind = GetString("this.swWindS");
|
---|
321 | + curIcon = "weather/" + GetString(cc, "<icon>", "</icon>") + ".png";
|
---|
322 | +
|
---|
323 | + wind = GetString(cc, "<wind>", "</wind>");
|
---|
324 | + bar = GetString(cc, "<bar>", "</bar>");
|
---|
325 | + uv = GetString(cc, "<uv>", "</uv>");
|
---|
326 | +
|
---|
327 | + curWind = GetString(wind, "<s>", "</s>");
|
---|
328 | if (convertData == true)
|
---|
329 | {
|
---|
330 | - char tempHold[32];
|
---|
331 | - double tTemp = curWind.toDouble();
|
---|
332 | - double nTemp = (double)(tTemp*1.6);
|
---|
333 | - sprintf (tempHold, "%d", (int)nTemp);
|
---|
334 | - curWind = tempHold;
|
---|
335 | + char windHold[32];
|
---|
336 | + double tWind = curWind.toDouble();
|
---|
337 | + double nWind = (double)(tWind*1.6);
|
---|
338 | + sprintf (windHold, "%d", (int)nWind);
|
---|
339 | + curWind = windHold;
|
---|
340 | }
|
---|
341 |
|
---|
342 | - winddir = GetString("this.swWindD");
|
---|
343 | + winddir = GetString(wind, "<t>", "</t>");
|
---|
344 |
|
---|
345 | - barometer = GetString("this.swBaro");
|
---|
346 | + barometer = GetString(bar, "<r>", "</r>");
|
---|
347 | if (convertData == true)
|
---|
348 | {
|
---|
349 | char tempHold[32];
|
---|
350 | @@ -2175,8 +2211,8 @@ bool Weather::UpdateData()
|
---|
351 | barometer = tempHold;
|
---|
352 | }
|
---|
353 |
|
---|
354 | - curHumid = GetString("this.swHumid");
|
---|
355 | - curFeel = GetString("this.swReal");
|
---|
356 | + curHumid = GetString(cc, "<hmid>", "</hmid>");
|
---|
357 | + curFeel = GetString(cc, "<flik>", "</flik>");
|
---|
358 | if (convertData == true)
|
---|
359 | {
|
---|
360 | char tempHold[32];
|
---|
361 | @@ -2186,9 +2222,9 @@ bool Weather::UpdateData()
|
---|
362 | curFeel = tempHold;
|
---|
363 | }
|
---|
364 |
|
---|
365 | - uvIndex = GetString("this.swUV");
|
---|
366 | - visibility = GetString("this.swVis");
|
---|
367 | - if (convertData == true && visibility.toDouble() != 999.0)
|
---|
368 | + uvIndex = GetString(uv, "<i>", "</i>");
|
---|
369 | + visibility = GetString(cc, "<vis>", "</vis>");
|
---|
370 | + if (convertData == true && visibility.toDouble() != 999.0 && visibility != "Unlimited")
|
---|
371 | {
|
---|
372 | char tempHold[32];
|
---|
373 | double tTemp = visibility.toDouble();
|
---|
374 | @@ -2197,89 +2233,65 @@ bool Weather::UpdateData()
|
---|
375 | visibility = tempHold;
|
---|
376 | }
|
---|
377 |
|
---|
378 | - description = GetString("this.swConText");
|
---|
379 | + description = GetString(cc, "<t>", "</t>");
|
---|
380 | if (description.length() == 0)
|
---|
381 | - description = curIcon;
|
---|
382 | + description = "N/A";
|
---|
383 | +}
|
---|
384 | +
|
---|
385 | +void Weather::getForecast()
|
---|
386 | +{
|
---|
387 | + QString forecast, d, day, start_tag, wd;
|
---|
388 | + char str[24];
|
---|
389 |
|
---|
390 | - QString forecastData;
|
---|
391 | - forecastData = GetString("this.swFore");
|
---|
392 | -
|
---|
393 | - QStringList holdings = QStringList::split("|", forecastData);
|
---|
394 | -
|
---|
395 | - int years, mons, days;
|
---|
396 | -
|
---|
397 | - int dayNum = (holdings[0]).toInt();
|
---|
398 | - QDate curDay(QDate::currentDate());
|
---|
399 | - int curDayNum = curDay.dayOfWeek();
|
---|
400 | - if (curDayNum == 7)
|
---|
401 | - curDayNum = 1;
|
---|
402 | - else
|
---|
403 | - curDayNum++;
|
---|
404 | -
|
---|
405 | - if (curDayNum != dayNum)
|
---|
406 | - pastTime = true;
|
---|
407 | - else
|
---|
408 | - pastTime = false;
|
---|
409 | -
|
---|
410 | - for (int i = 5; i < 9; i++)
|
---|
411 | - {
|
---|
412 | - QStringList dates = QStringList::split("/", holdings[i]);
|
---|
413 | - years = dates[2].toInt();
|
---|
414 | - mons = dates[0].toInt();
|
---|
415 | - days = dates[1].toInt();
|
---|
416 | - QDate doDate(years, mons, days);
|
---|
417 | - switch (doDate.dayOfWeek())
|
---|
418 | - {
|
---|
419 | - case 1: date[i - 5] = QString("MON"); break;
|
---|
420 | - case 2: date[i - 5] = QString("TUE"); break;
|
---|
421 | - case 3: date[i - 5] = QString("WED"); break;
|
---|
422 | - case 4: date[i - 5] = QString("THU"); break;
|
---|
423 | - case 5: date[i - 5] = QString("FRI"); break;
|
---|
424 | - case 6: date[i - 5] = QString("SAT"); break;
|
---|
425 | - case 7: date[i - 5] = QString("SUN"); break;
|
---|
426 | - }
|
---|
427 | - }
|
---|
428 | -
|
---|
429 | - for (int i = 9; i < 13; i++)
|
---|
430 | - weatherIcon[i - 9] = holdings[i];
|
---|
431 | -
|
---|
432 | - for (int i = 20; i < 24; i++)
|
---|
433 | + pastTime = true;
|
---|
434 | +
|
---|
435 | + for (int i = 0; i < 5; i++)
|
---|
436 | {
|
---|
437 | - if (convertData == true)
|
---|
438 | + sprintf(str, "<day d=\"%i\"", i);
|
---|
439 | + start_tag = QString(str);
|
---|
440 | + forecast = GetString(httpData, start_tag, "</day>");
|
---|
441 | + highTemp[i] = GetString(forecast, "<hi>", "</hi>");
|
---|
442 | + lowTemp[i] = GetString(forecast, "<low>", "</low>");
|
---|
443 | +
|
---|
444 | + d = GetString(forecast, "<part p=\"d\">", "</part>");
|
---|
445 | + wd = GetString(d, "<wind>", "</wind>");
|
---|
446 | +
|
---|
447 | + precip[i] = GetString(d, "<ppcp>", "</ppcp>");
|
---|
448 | + humid[i] = GetString(d, "<hmid>", "</hmid>");
|
---|
449 | + wind[i] = GetString(wd, "<d>", "</d>");
|
---|
450 | + wdir[i] = GetString(wd, "<t>", "</t>");
|
---|
451 | + weatherIcon[i] = "weather/" + GetString(d, "<icon>", "</icon>") + ".png";
|
---|
452 | +
|
---|
453 | + weatherType[i] = GetString(d, "<t>", "</t>");
|
---|
454 | + date[i] = GetString(forecast, "t=\"", "\" dt=");
|
---|
455 | +
|
---|
456 | + if ( (convertData == true) && (highTemp[i] != "N/A") )
|
---|
457 | {
|
---|
458 | char tempHold[32];
|
---|
459 | - double tTemp = holdings[i].toDouble();
|
---|
460 | + double tTemp = highTemp[i].toDouble();
|
---|
461 | double nTemp = (double)(5.0/9.0)*(tTemp - 32.0);
|
---|
462 | sprintf (tempHold, "%d", (int)nTemp);
|
---|
463 | - holdings[i] = tempHold;
|
---|
464 | + highTemp[i] = tempHold;
|
---|
465 | }
|
---|
466 | - highTemp[i - 20] = holdings[i];
|
---|
467 | - }
|
---|
468 | -
|
---|
469 | - for (int i = 40; i < 44; i++)
|
---|
470 | - {
|
---|
471 | - if (convertData == true)
|
---|
472 | +
|
---|
473 | + if ( (convertData == true) && (lowTemp[i] != "N/A") )
|
---|
474 | {
|
---|
475 | char tempHold[32];
|
---|
476 | - double tTemp = holdings[i].toDouble();
|
---|
477 | + double tTemp = lowTemp[i].toDouble();
|
---|
478 | double nTemp = (double)(5.0/9.0)*(tTemp - 32.0);
|
---|
479 | sprintf (tempHold, "%d", (int)nTemp);
|
---|
480 | - holdings[i] = tempHold;
|
---|
481 | + lowTemp[i] = tempHold;
|
---|
482 | + }
|
---|
483 | + if (convertData == true)
|
---|
484 | + {
|
---|
485 | + char windHold[32];
|
---|
486 | + double tWind = wind[i].toDouble();
|
---|
487 | + double nWind = (double)(tWind*1.6);
|
---|
488 | + sprintf (windHold, "%d", (int)nWind);
|
---|
489 | + wind[i] = windHold;
|
---|
490 | }
|
---|
491 | - lowTemp[i - 40] = holdings[i];
|
---|
492 | +
|
---|
493 | }
|
---|
494 | -
|
---|
495 | - for (int i = 15; i < 19; i++)
|
---|
496 | - weatherType[i - 15] = holdings[i];
|
---|
497 | -
|
---|
498 | - setWeatherTypeIcon(weatherType);
|
---|
499 | - setWeatherIcon(description);
|
---|
500 | -
|
---|
501 | - return true;
|
---|
502 | -
|
---|
503 | - }
|
---|
504 | -
|
---|
505 | - return false;
|
---|
506 | }
|
---|
507 |
|
---|
508 | void Weather::setWeatherTypeIcon(QString wt[5])
|
---|
509 | @@ -2334,44 +2346,41 @@ void Weather::setWeatherIcon(QString txt
|
---|
510 | curIcon = "weather/unknown.png";
|
---|
511 | }
|
---|
512 |
|
---|
513 | -QString Weather::GetString(QString tag)
|
---|
514 | +
|
---|
515 | +QString Weather::GetString(QString data, QString tag_begin, QString tag_end)
|
---|
516 | {
|
---|
517 | - QString data;
|
---|
518 | + QString str;
|
---|
519 | int start = 0;
|
---|
520 | + int end = 0;
|
---|
521 | int len = 0;
|
---|
522 |
|
---|
523 | - start = httpData.find(tag, 0);
|
---|
524 | - len = httpData.find("\"", start + tag.length() + 4) - start - tag.length() - 4;
|
---|
525 | + start = data.find(tag_begin, 0) + tag_begin.length();
|
---|
526 | + end = data.find(tag_end, start);
|
---|
527 | + len = end - start;
|
---|
528 |
|
---|
529 | - data = httpData.mid(start + tag.length() + 4, len);
|
---|
530 | + str = data.mid(start, len);
|
---|
531 |
|
---|
532 | - return data;
|
---|
533 | + return str;
|
---|
534 | }
|
---|
535 |
|
---|
536 | -int Weather::GetInt(QString tag)
|
---|
537 | +int Weather::GetInt(QString data, QString tag_start, QString tag_end)
|
---|
538 | {
|
---|
539 | - QString data;
|
---|
540 | - int start = 0;
|
---|
541 | - int len = 0;
|
---|
542 | -
|
---|
543 | - start = httpData.find(tag, 0);
|
---|
544 | - len = httpData.find("\"", start + tag.length() + 4) - start - tag.length() - 4;
|
---|
545 | - data = httpData.mid(start + tag.length() + 4, len);
|
---|
546 | - int ret = data.toInt();
|
---|
547 | + QString str;
|
---|
548 | +
|
---|
549 | + str = GetString(data, tag_start, tag_end);
|
---|
550 | +
|
---|
551 | + int ret = str.toInt();
|
---|
552 |
|
---|
553 | return ret;
|
---|
554 | }
|
---|
555 |
|
---|
556 | -float Weather::GetFloat(QString tag)
|
---|
557 | +float Weather::GetFloat(QString data, QString tag_start, QString tag_end)
|
---|
558 | {
|
---|
559 | - QString data;
|
---|
560 | - int start = 0;
|
---|
561 | - int len = 0;
|
---|
562 | + QString str;
|
---|
563 |
|
---|
564 | - start = httpData.find(tag, 0);
|
---|
565 | - len = httpData.find("\"", start + tag.length() + 4) - start - tag.length() - 4;
|
---|
566 | - data = httpData.mid(start + tag.length() + 4, len);
|
---|
567 | - float ret = data.toFloat();
|
---|
568 | + str = GetString(data, tag_start, tag_end);
|
---|
569 | +
|
---|
570 | + float ret = str.toFloat();
|
---|
571 |
|
---|
572 | return ret;
|
---|
573 | }
|
---|
574 | @@ -2379,7 +2388,14 @@ float Weather::GetFloat(QString tag)
|
---|
575 | bool Weather::GetWeatherData()
|
---|
576 | {
|
---|
577 |
|
---|
578 | - QString weatherDataURL = "http://www.msnbc.com/m/chnk/d/weather_d_src.asp?acid=" + locale;
|
---|
579 | + QString weatherDataURL = "http://xoap.weather.com/weather/local/" + locale + "?cc=*&unit=f&dayf=5";
|
---|
580 | +
|
---|
581 | +//
|
---|
582 | +// Technically we should include the partner id and key
|
---|
583 | +// if this stops working, change to the following:
|
---|
584 | +// http://xoap.weather.com/weather/local/".$this->acid."?cc=*&unit=F&dayf=5&prod=xoap&par=1036905921&key=f68c2657a4fd3e2e"
|
---|
585 | +// may need to get a new one from http://www.weather.com/services/xmloap.html
|
---|
586 | +//
|
---|
587 |
|
---|
588 | VERBOSE(VB_NETWORK, QString("Grabbing weather from: %1").arg(weatherDataURL));
|
---|
589 |
|
---|
590 | @@ -2390,8 +2406,8 @@ bool Weather::GetWeatherData()
|
---|
591 |
|
---|
592 | httpData = HttpComms::getHttp(weatherDataURL, weatherTimeoutInt, 3, 3);
|
---|
593 |
|
---|
594 | - if (httpData.find("this.swAcid = \"\";") != -1 ||
|
---|
595 | - httpData.find("<html>") != -1 ||
|
---|
596 | + if (httpData.find("<loc id=") == -1 ||
|
---|
597 | + httpData.find("<?xml") == -1 ||
|
---|
598 | httpData.find("Microsoft VBScript runtime") != -1 ||
|
---|
599 | httpData.find("Internal Server Error") != -1 ||
|
---|
600 | httpData.find("Bad Request", 0) != -1)
|
---|
601 | diff -rup ../mythplugins-orig/mythweather/mythweather/weather.h ./mythweather/mythweather/weather.h
|
---|
602 | --- ../mythplugins-orig/mythweather/mythweather/weather.h 2007-03-26 23:20:23.000000000 -0400
|
---|
603 | +++ ./mythweather/mythweather/weather.h 2007-04-21 00:01:45.000000000 -0400
|
---|
604 | @@ -135,6 +135,8 @@ class Weather : public MythDialog
|
---|
605 | void updateLetters();
|
---|
606 | void loadAccidBreaks();
|
---|
607 | bool GetWeatherData();
|
---|
608 | + void getCurrentConditions();
|
---|
609 | + void getForecast();
|
---|
610 | bool GetAnimatedRadarMap();
|
---|
611 | bool GetStaticRadarMap();
|
---|
612 | bool gotDataHook;
|
---|
613 | @@ -145,9 +147,9 @@ class Weather : public MythDialog
|
---|
614 | void showCityName();
|
---|
615 | void setSetting(QString, QString, bool);
|
---|
616 |
|
---|
617 | - QString GetString(QString);
|
---|
618 | - int GetInt(QString);
|
---|
619 | - float GetFloat(QString);
|
---|
620 | + QString GetString(QString, QString, QString);
|
---|
621 | + int GetInt(QString, QString, QString);
|
---|
622 | + float GetFloat(QString, QString, QString);
|
---|
623 |
|
---|
624 | void loadWeatherTypes();
|
---|
625 | weatherTypes *wData;
|
---|
626 | @@ -179,6 +181,9 @@ class Weather : public MythDialog
|
---|
627 | QString highTemp[5];
|
---|
628 | QString lowTemp[5];
|
---|
629 | QString precip[5];
|
---|
630 | + QString humid[5];
|
---|
631 | + QString wind[5];
|
---|
632 | + QString wdir[5];
|
---|
633 |
|
---|
634 | QString httpData;
|
---|
635 | QString oldhttpData;
|
---|