- ]?c sdZdZdZdkZdkZdkZdkZdkZdkZdk Z "dfdYZ )e de de *dgd d d gd gZ/d Z2dZ3dZ4dZ6dd f\ZZ7dddfZ9dZ=dZLdZdZdZdZdZdZdZdZdZ dS( s Based around KarambaVerseOfTheDay by Jan Finell but for those who like non-christian quotes. by Oskar Flordal KarambaVerseOfTheDay by Jan Finell ### LICENSE ######################################################## This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. ################################################################### s Oskar Flordals0.1NsVarcs "tZdZ%&dZRS(s4 Helper class for keeping runtime variables c s&'||_dS(N(skwssselfs__dict__(sselfskws((s0/home/oskar/karamba/KarambaQuote/KarambaQuote.pys__init__&s(s__name__s __module__s__doc__s__init__(((s0/home/oskar/karamba/KarambaQuote/KarambaQuote.pysVar"ssshownsutimesquotesauthorss availFortunessselectedFortunesis400iiiii@iNs+http://www.quotationspage.com/data/1qotd.jscs=>g}?tid}Ax^|DA]S}B|iddjo"C|i|t|d nEtid}q(WFxP|DF]E}G|iddjo&H|id|t|d nqWI|SdS(Ns/usr/share/games/fortunes/s.datiis/usr/share/games/fortunes/off/soff/(scleansosslistdirsdirsxsfindsappendslen(sxsdirsclean((s0/home/oskar/karamba/KarambaQuote/KarambaQuote.pys findAvail=s  " *csLagy-htitidttid}Wn1itj o"}jd}kdgdfSnXpy)qti dt dti |}Wn0rtj o!}sdGHtdgdfSnXu|i }v|i}wti |}x|GHy||fSd S( s try: soc = urllib.urlopen(QUOTE_URL) #open stream jsData = soc.read() #read the text soc.close() except Exception,e : print 'Error fetching quote from "%s" (%s)' % (URL, e) return ('','','') lines = jsData.split(' ') #divide to lines #interesting stuff is on line 4 in this case lines = lines[2:4] quote = lines[0].split('<')[1].split('>')[1] author = lines[1].split('<')[4].split('>')[1] return (quote, author) iisNo fortunes selected or foundsnonesfortune -s -n s -a sFortune not founds'Error running fortune. Check your pathN(sVARsselectedFortunessrandomsrandintslensnrs ExceptionsesosspopensQUOTEMAXLENGTHs availFortunessfs readlinessquotesclosesstatussauthor(swidgetsstatussesfsquotesauthorsnr((s0/home/oskar/karamba/KarambaQuote/KarambaQuote.pys getFortuneLs - )cs{gt_xWtdttiD]:}ti|ti|otii |nq+WtiGHdS(Ni( sVARsselectedFortunessrangeslens availFortunessxskarambasreadMenuConfigOptionswidgetsappend(swidgetskeysvaluesx((s0/home/oskar/karamba/KarambaQuote/KarambaQuote.pysmenuOptionChangeds   cs;x.tiD] }ti||d|qWdS(NsI want fortunes from (sVARs availFortunessxskarambasaddMenuConfigOptionswidget(swidgetsx((s0/home/oskar/karamba/KarambaQuote/KarambaQuote.pys initConfMenus cstt_t|gt_xWtdttiD]:}t i |ti|otii |nqGWt |t i |t i|dt|dS(Nis BACKGROUND(s findAvailsVARs availFortuness initConfMenuswidgetsselectedFortunessrangeslensxskarambasreadMenuConfigOptionsappends_updatesattachClickAreas getThemeTexts widgetUpdated(swidgetsx((s0/home/oskar/karamba/KarambaQuote/KarambaQuote.pys initWidgets    csrtitjptitidjo>t|\t_t_tit_t|ndS(Ni8( sVARsutimesNonestimes getFortuneswidgetsquotesauthors_update(swidget((s0/home/oskar/karamba/KarambaQuote/KarambaQuote.pys widgetUpdateds-cstiowtio9t|t|\t_t_t|nt|t i |ti t_ndS(N( sVARsquotesshowns _hide_quoteswidgets getFortunesauthors_updates _show_quoteskarambas redrawWidget(swidgetsmetersbutton((s0/home/oskar/karamba/KarambaQuote/KarambaQuote.pys meterClickeds    csFti|ti|ddtiti|dS(NsAUTHORs Fortune: (skarambas changeTextswidgets getThemeTextsVARsauthors redrawWidget(swidget((s0/home/oskar/karamba/KarambaQuote/KarambaQuote.pys_updates cstdd}ti|ttdd}tt i }ti |t d|tti||t d|tti|ti|tdtdt |dit i }ti||dti||t|t _|t _dS( Niisimages/details_bg.pngiiis i (sCHAR_HsbgHeightskarambas createImageswidgets QUOTE_BG_Xs QUOTE_BG_YsbgWslensVARsquotesnrliness resizeWidgets WIDGETWIDTHs LINEHEIGHTs resizeImages redrawWidgets createTextsjoinsquoteWschangeTextSizeschangeTextColors QUOTE_COLOR(swidgetsnrlinessbgHeightsquoteWsbgW((s0/home/oskar/karamba/KarambaQuote/KarambaQuote.pys _show_quotes ! csrti|titi|titi|titi|tit t_t_dS(N( skarambas hideImageswidgetsVARsbgWshideTextsquoteWs deleteImages deleteTextsNone(swidget((s0/home/oskar/karamba/KarambaQuote/KarambaQuote.pys _hide_quotes (!s__doc__s __author__s __version__skarambasrandomsrestimesurllibsoss xmms.controlsxmmssVarsFalsesNonesVARsCHAR_HsQUOTEMAXLENGTHs WIDGETWIDTHs LINEHEIGHTs QUOTE_BG_Xs QUOTE_BG_Ys QUOTE_COLORs QUOTE_URLs findAvails getFortunesmenuOptionChangeds initConfMenus initWidgets widgetUpdateds meterClickeds_updates _show_quotes _hide_quote(s_updates findAvailsoss widgetUpdatedsrandoms meterClickeds __author__s initWidgetsxmmss WIDGETWIDTHs getFortunesVars LINEHEIGHTsVARs QUOTE_URLs _show_quotesCHAR_HskarambasQUOTEMAXLENGTHsurllibs _hide_quotesres initConfMenusmenuOptionChangedstimes QUOTE_COLORs __version__s QUOTE_BG_Ys QUOTE_BG_X((s0/home/oskar/karamba/KarambaQuote/KarambaQuote.pys?s2   ' !       9