diff --git a/cpanfile b/cpanfile index 4e819de..46ba07c 100644 --- a/cpanfile +++ b/cpanfile @@ -56,7 +56,6 @@ requires 'Cpanel::JSON::XS' => 0; requires 'JavaScript::V8::Context' => 0; requires 'LWP::Protocol::https' => 0; -requires 'Text::Soundex' => 0; requires 'Mojo::DOM' => 0; requires 'Mojo::DOM::CSS' => 0; requires 'Mojo::Collection' => 0; diff --git a/foo b/foo deleted file mode 100644 index e69de29..0000000 diff --git a/karma.txt b/karma.txt deleted file mode 100644 index fcdea0d..0000000 --- a/karma.txt +++ /dev/null @@ -1,5799 +0,0 @@ -$ -< -!ie}>display:block;{iq} -$char -$cidr -$collective->opinion_of{you_guys} -$context -$coups_restant -$customer -$cxrn -$data =^ s/" --->$line< --->< --->
testfirstvar< --->|n< ---^/web/a ---___ ---a ---ab-cd ---and ---bold ---css ---decoding ---dsl ---eat ---encoding ---end|s ---eof ---explicitly ---here ---http-user/ ---implies ---looking ---me ---nickserv ---nothing ---o-o ---opt="foo ---output ---perhaps ---php ---prefix/ ---shell ---sigh ---somehow ---stuff-goes-here ---sure ---text ---they ---type_of ---weirdly ---with ---xslt ---|_/ ---­-­­-­­-­-­-­­­ --.-. --//-!**-^-!/,_-^,//^ --0500)|s+(.+?)|s+(.+?)|s+(.+?)|s+(.+?)|s+|{(.*?)|}|s+|{(.*?)|}s+$/$1< --1pxâ¤where:/|< --= --==={ --^ --____ --_________________ --e'$_=27;printf"%*c%*c|n",$_,$@=$_+96,53-2*$_,$@while --e'$_=27;printf"%*s%*s|n",$_,$@=chr$_+96,53-2*$_,$@while --e'printf(" --misc-fixed-medium-r-normal --mlocal::lib= --moz --moz-inline-block;< --mv6= --o/ --optdep --r-xr-x --rw----- --rw-r--r --rw-r-sr --rw-rw --rw-rw-r-- --rwsr-x --rwxr --rwxr-xr --system --t in tests --to --unknown-monospace-medium-r-normal --w --wxr --xos4-terminus-bold-r-normal --xr --{} -.' -.*?)--/g`, i suggest `/--({^|-}+ -.*_76ar_20a_3d_22scripten_67ine_22_2cb_3*. -.*o/o/x#_oo.x-^o// -.*{.}plist -.+ -.,-.-., -...... -.......................'^,...........`/./`,^`''''''''''''`^-,....`-,......|...'|......'||.............../......`|'''` -..................................|.......````^^ -.................................^ -.................................`-,.|...._,-',^```......___......_,-`/.....'|..,-^````^ -.......................________` -................`,^`../....................|,/'..`-,.......|................/..................|../^ -............bowser.........|...........__,-`_, -........./|.....................|./...../....|.......|..|_....../,-`........../`^^ -...>>>> -..>-.<<<< -..| -./foo -.<.> -.<<.>>>.+. -.<<<<< -.<<<<<.>>>>. -.=================================. -.>+.<<<<<.>>>>+. -.>-. -.>.>.<< -.>>-.>-.<<< -.docx -.fl.us -.net -.o(emacs -.perlâ¤where:/|< -.yaml -.|,/ -/$rec -/(.*) -/(.*?(?=|s -/(.*?(?=|s* -/(.*?

? -/>|r|nfoohhtaoethdaoetdnhao<{endif} -6 pack -625783-__cat_id -644 -64< -654fr6584r87 -6639-6586-53-261-604-1 -6...conditioncssdisplay:inline;margin-left:0;style="margin-left:0;"… -7.10 -7.3.22 -7.3.9 -7175-7155-20-253-609-0 -7404();// -777 -7869-6249-1620-701-2179-210 -7} -7}... -7}> -7}>..
-8===> -8am classes -8am work -9******************************************** -9-5 -9/11 -9075-8486-589-1255-900-0 -9352-8726-626-1374-887-0 -9672-9458-214-1042-1385-6 -98/2 -98se -99.6% complete -:( -:)-8 -:, -:,-^^ -:-| -:: -:` -:arubin -:d-/ -:http://www.plainblack.com/pr/staff/blog/installclass.pl -:of(:( -:p-| -:p

- -  -<{endif} -<{endif} - -<0 -<<'+eof+ -<<<<<< -<<<<<<-}>> -100px
< -
settings -

something

-2google -href="http://xn -href="ie-only.css">about2dbimsie can make heads nor tails of it -html} -hts -http -http/1.0" -http://4.bp.blogspot.com/_k4x5a3c1b_m/so0g11kzsei/aaaaaaaairm/gr57 -http://a1259.g.akamai.net/f/1259/5586/5d/images.art.com/images/-/pablo-picasso/the-camel-embossed-on-special-paper -http://a1259.g.akamai.net/f/1259/5586/5d/images.art.com/images/-/pablo-picasso/the-dog -http://b937online.com/tom-answers-the-tough-questions -http://bigdil.wbteam.com/soundblog/gabriel_and_dresden_feat_molly_bancroft-tracking_treasure_down__gabriel_and_dresden_club_mix -http://blog.360.yahoo.com/blog/slideshow.html?p=24&id=i098goszb6.qckuwphrvra -http://books.google.co.uk/books?id=bs -http://books.google.com/books?id=bs -http://catb.org/jargon/html/a/all-hardware-sucks -http://chainsawblues.vox.com/library/post/writing-a-perl-repl-part-3 -http://chess.delorie.com/c.cgi?move=b1c3&g=gbmlfctr-bqk-nrp3-ppbp -http://cmsproducer.com/different-css -http://d.yimg.com/us.yimg.com/p/nm/20061122/2006_11_21t211109_450x325_us_brazil_dogcats.jpg?x=380&y=274&sig=uam.uvkuwu4x1ofiodewnq -http://eil.com/newgallery/adam -http://en.wikipedia.org/wiki/image:miniscribe -http://en.wikipedia.org/wiki/ralph_nader -http://globalnoc.iu.edu/nlr/support/weekly-reporting/l1 -http://google.com/codesearch?q=+%40 -http://haslayout.net/css/-first-line -http://haslayout.net/css/ie6 -http://haslayout.net/css/view?tut=no-bullets-on -http://haslayout.net/css/view?tut=no-increase-on -http://i127.photobucket.com/albums/p146/ivyelfmaid/room/112_3835.jpg< -http://icbirmingham.icnetwork.co.uk/birminghampost/news/tm_objectid=15711510&method=full&siteid=50002&headline=attacks-are -http://images.art.com/images/-/john-gilroy/guinness-for-strength-horse-in-cart -http://img.moonbuggy.org/lost -http://jman.devuyst.com/2005-09-10 -http://l.yimg.com/img.tv.yahoo.com/tv/us/img/site/50/36/0000035036_20061021051623.jpg?y=626&sig=3n9rqbor40qjgzidax7zlq -http://latimesblogs.latimes.com/lanow/2009/06/pop-star-michael-jackson-was-rushed-to-a-hospital-this-afternoon-by-los-angeles-fire-department-paramedics -http://learn.perl.org/perlfaq4.html#how-do-i-compute-the-intersection-of-two-arrays%3f -http://library.gnome.org/devel/gtk/stable/gtksettings.html#gtksettings -http://library.gnome.org/devel/gtk/unstable/gtk-stock-items.html#gtk-stock-justify-fill -http://linode.outsideofthebox.co.uk/content/jobs -http://m19s28.dyndns.org/iblech/stuff/pugs-smokes/pugs-smoke-6.2.13-r0-darwin-normal -http://m19s28.dyndns.org/iblech/stuff/pugs-smokes/pugs-smoke-6.2.13-r18569-linux-normal -http://m19s28.vlinux.de/iblech/stuff/pugs-smokes/pugs-smoke-6.2.10-r8265-freebsd-pil2js -http://m19s28.vlinux.de/iblech/stuff/pugs-smokes/pugs-smoke-6.2.10-r8289-linux-pil2js -http://m19s28.vlinux.de/iblech/stuff/pugs-smokes/pugs-smoke-6.2.10-r8764-darwin-normal -http://m19s28.vlinux.de/iblech/stuff/pugs-smokes/pugs-smoke-6.2.10-r8776-darwin-normal -http://m19s28.vlinux.de/iblech/stuff/pugs-smokes/pugs-smoke-6.2.10-r8776-linux-normal -http://m19s28.vlinux.de/iblech/stuff/pugs-smokes/pugs-smoke-6.2.10-r8787-darwin-normal -http://m19s28.vlinux.de/iblech/stuff/pugs-smokes/pugs-smoke-6.2.10-r8805-freebsd-normal -http://m19s28.vlinux.de/iblech/stuff/pugs-smokes/pugs-smoke-6.2.10-r8818-linux-normal -http://m19s28.vlinux.de/iblech/stuff/pugs-smokes/pugs-smoke-6.2.10-r8825-linux-normal -http://m19s28.vlinux.de/iblech/stuff/pugs-smokes/pugs-smoke-6.2.10-r8880-linux-normal -http://m19s28.vlinux.de/iblech/stuff/pugs-smokes/pugs-smoke-6.2.11-r0-linux-normal -http://m19s28.vlinux.de/iblech/stuff/pugs-smokes/pugs-smoke-6.2.11-r10148-freebsd-normal -http://m19s28.vlinux.de/iblech/stuff/pugs-smokes/pugs-smoke-6.2.11-r10590-darwin-normal -http://m19s28.vlinux.de/iblech/stuff/pugs-smokes/pugs-smoke-6.2.11-r8910-mswin32-normal -http://m19s28.vlinux.de/iblech/stuff/pugs-smokes/pugs-smoke-6.2.12-r10738-linux-normal -http://m19s28.vlinux.de/iblech/stuff/pugs-smokes/pugs-smoke-6.2.12-r12661-linux-normal -http://m19s28.vlinux.de/iblech/stuff/pugs-smokes/pugs-smoke-6.2.12-r13151-darwin-normal -http://m19s28.vlinux.de/iblech/stuff/pugs-smokes/pugs-smoke-6.2.12-r13182-mswin32-normal -http://m19s28.vlinux.de/iblech/stuff/pugs-smokes/pugs-smoke-6.2.12-r13695-linux-normal -http://m19s28.vlinux.de/iblech/stuff/pugs-smokes/pugs-smoke-6.2.12-r14242-darwin-normal -http://m19s28.vlinux.de/iblech/stuff/pugs-smokes/pugs-smoke-6.2.13-r0-linux-normal -http://m19s28.vlinux.de/iblech/stuff/pugs-smokes/pugs-smoke-6.2.13-r14757-darwin-normal -http://m19s28.vlinux.de/iblech/stuff/pugs-smokes/pugs-smoke-6.2.13-r15983-linux-normal -http://m19s28.vlinux.de/iblech/stuff/pugs-smokes/pugs-smoke-6.2.13-r16421-darwin-normal -http://m19s28.vlinux.de/iblech/stuff/pugs-smokes/pugs-smoke-6.2.13-r16522-freebsd-normal -http://m19s28.vlinux.de/iblech/stuff/pugs-smokes/pugs-smoke-6.2.13-r16531-freebsd-pil2js -http://m19s28.vlinux.de/iblech/stuff/pugs-smokes/pugs-smoke-6.2.13-r16531-freebsd-pir -http://m19s28.vlinux.de/iblech/stuff/pugs-smokes/pugs-smoke-6.2.13-r17216-linux-normal -http://m19s28.vlinux.de/iblech/stuff/pugs-smokes/pugs-smoke-6.2.9-r0-freebsd-normal -http://m19s28.vlinux.de/iblech/stuff/pugs-smokes/pugs-smoke-6.2.9-r6607-linux-pil2js -http://m19s28.vlinux.de/iblech/stuff/pugs-smokes/pugs-smoke-6.2.9-r6945-darwin-normal -http://millenium.blogs.liberation.fr/jeux_video/2009/11/ce-soir-on-raid -http://new.music.yahoo.com/sweethearts-of-the-rodeo/tracks/things-will-grow -http://news.messages.yahoo.com/bbs?action=m&board=37138459&tid=apusiraq&sid=37138459&mid=257489&um=50&.sig=dqoahscg6a9snbu143go2w -http://news.yahoo.com/photos/ss/events/bs/031005gaspricesrisin/im:/060427/480/dcpm10904272019;_ylt=asl_ptsbvnkzxrea5oy7bzrsamya;_ylu=x3odmta5bgcymwmzbhnlywnzc25hdg -http://news.yahoo.com/photos/ss/events/lf/020206hooters/im:/060202/480/nvjh10402021754;_ylt=ass8nnawbdil5ud8qameiqdsamya;_ylu=x3odmta5bgcymwmzbhnlywnzc25hdg -http://news.yahoo.com/s/afp/20060304/ts_afp/usnuclearpoliticsdisarmament_060304081535;_ylt=akg0bj4wptmnejwqofwhxiyforgf;_ylu=x3odmta5ahjvmddwbhnlywn5bmnhda -http://news.yahoo.com/s/ap/20051028/ap_on_re_as/japan_constitution;_ylt=aqe4_gycifdafyr_fmcefvsbxg8f;_ylu=x3odmtbjmhvqmtq4bhnlywn5bnn1ymnhda -http://news.yahoo.com/s/ap/20051226/ap_en_mo/obit_schiavelli;_ylt=as4ffqbwnjeo4.a5a7fmnghxfb8c;_ylu=x3odmta5ahjvmddwbhnlywn5bmnhda -http://news.yahoo.com/s/ap/20060126/ap_on_re_us/border_tunnels;_ylt=anqzzgdh4th7m2ntou8auv5vzwcf;_ylu=x3odmta5ahjvmddwbhnlywn5bmnhda -http://news.yahoo.com/s/ap/20060717/ap_on_re_mi_ea/lebanon_israel;_ylt=ahkbwagro6nguumrrvhglays0nue;_ylu=x3odmta2z2szazkxbhnlywn0bq -http://news.yahoo.com/s/ap/toilet_seat_lawsuit;_ylt=akkbbexvi8nnptz9tr0a1cjtibif;_ylu=x3odmta5ahjvmddwbhnlywn5bmnhda -http://news.yahoo.com/s/ap/transit_strike;_ylt=alkra9vzein8svlrntkor6cs0nue;_ylu=x3odmta2z2szazkxbhnlywn0bq -http://news.yahoo.com/s/ct/20051013/cr_ct/twowomenadmitguiltindrowningofboyfriendspetdachshund;_ylt=ak6btg7yju7wwyeo5oy56ojvzwcf;_ylu=x3odmta5ahjvmddwbhnlywn5bmnhda -http://news.yahoo.com/s/nm/20051116/od_uk_nm/oukoe_uk_life_britain_text;_ylt=aqcj_gwbhbybxunh_93cagbtibif;_ylu=x3odmta5ahjvmddwbhnlywn5bmnhda -http://news.yahoo.com/s/nm/20060608/od_nm/crime_calendar1_dc;_ylt=anqqgg4qxreqcrlbvncukywsh9ea;_ylu=x3odmta5ahjvmddwbhnlywn5bmnhda -http://ontario.hotel -http://pastebin.com/m5096d8f?this_is_a_long_stinkin_url_that_you_gotta_shorten,_b -http://perldoc.perl.org/perlfaq5.html#how-do-i-flush/unbuffer-an-output-filehandle%3f -http://perldoc.perl.org/perlop.html#quote-and-quote-like-operators-operator%2c-quote-operator%2c-quote-like-q-qq-qx-qw-m -http://rafb.net/p/fyq07w40.html< -http://rds.yahoo.com/_ylt=a0geu.wcrfbil4qao5vxnyoa;_ylu=x3odmtbybnzlznrlbhnlywnzcgrwb3mdmqrjb2xva2fjmgr2dglkaw -http://ringtones.duble.com/polyphonic/pop/bowie -http://samuel.veyre.free.fr/002 -http://search.cpan.org/^bmorrow/perlinterp-0.03/perl.pm -http://search.cpan.org/^tty/kurila-0_02/lib/getopt/std.pm# -http://smoke.parrotcode.org/smoke/parrot-smoke-0.4.12-devel-r18582-unknown -http://smoke.parrotcode.org/smoke/parrot-smoke-0.4.9-devel-r17650-unknown -http://snipplr.com/view/2605/imagereplacement -http://snipplr.com/view/266/undohtmlcss -http://snipplr.com/view/4224/ie-6-transparent-png-fix -http://snipplr.com/view/8959/css-rounded-corners -http://spreadsheets.google.com/pub?key=prow-ic -http://straylight.law.cornell.edu/uscode/html/uscode18/usc_sec_18_00002257 -http://swat.gotdns.com/basshunter/index2.htm -http://techabsorbed.com/news/linux-devices/picotux -http://thedailywtf.com/articles/those-unstable-databases -http://this-is-sum-cp -http://uk.wrs.yahoo.com/_ylt=a0geupll5prh8hqbqojlbqx.;_ylu=x3odmtexbtv0ddr1bhnlywnzcgrwb3mdmqrjb2xva2fjmgr2dglkawrsa1dtmq -http://us.news3.yimg.com/us.i2.yimg.com/p/ap/20060109/capt.nyet27501091906.one_eyed_cat__nyet275.jpg?x=380&y=295&sig=is8lzvrg4q072tgkzhmf_q -http://us.news3.yimg.com/us.i2.yimg.com/p/ap/20060110/capt.wcap22401102203.scotus_alito_wcap224.jpg?x=380&y=192&sig=xabbbg4a2eqqgsjcroixzg -http://us.news3.yimg.com/us.i2.yimg.com/p/cpress/20051221/capt.u122111au.jpg?x=240&y=286&sig=jlzv_0lhmwq.kcklgpb28w -http://us.news3.yimg.com/us.i2.yimg.com/p/nm/20051022/2005_10_22t114950_450x284_us_weather_wilma.jpg?x=380&y=239&sig=zstbeahqsjdfacicotm5sa -http://us.news3.yimg.com/us.i2.yimg.com/p/nm/20051115/2005_11_14t043758_308x450_us_birdflu.jpg?x=236&y=345&sig=yhmt2wh6am3p1sf7a.gbig -http://us.news3.yimg.com/us.i2.yimg.com/p/rids/20051215/i/r705279332.jpg?x=285&y=345&sig=g9hdnefwvddrdhfxicnkmg -http://validator.w3.org/check?uri=http%3a%2f%2fshop.xn -http://vp.video.google.com/videodownload?version=0&secureurl=pqaaaotbyepbynd1jleok_-epmqzjba4 -http://webgui.org/user_contributions/user_contributions/miscellaneous/switch_webgui_pl -http://webgui.theblackmoor.net:8082/home/counter -http://www.1-script.com/forums/mason-modperl20-apache-20-fedora-core-1-amd64 -http://www.1-script.com/forums/specifyig-username-and-password-in-perl-article108113 -http://www.1010wins.com/n-y -http://www.5min.com/video/f1-crash -http://www.5min.com/video/how-to-talk-smack-over-xbox-live -http://www.acuras.co.uk/articles/53-javascript -http://www.arcadegamesonline.com/index.php?action=game&id=-1+union+select+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,@@version,33,34,35,36,37,38,39,40,41,42,43,44,45 -http://www.barenecessities.com/dolce -http://www.dailymail.co.uk/debate/article-1219364/quentin-letts-why-politicians -http://www.dailymail.co.uk/sciencetech/article-1043123/extraordinary-satellite-images-ordinary-day-britain -http://www.dailymail.co.uk/sciencetech/article-1219907/vacuum-maker-dyson-unveils-latest-household-device -http://www.dailypress.com/news/local/virginia/dp-va -http://www.datapartner.fi/en/news -http://www.dataswamp.net/screenshots-inprogress/viewer.php?pointer=2007-01-23 -http://www.dataswamp.net/screenshots/viewer.php?pointer=2006-12-01 -http://www.designinterviews.com/news/awesome-christmas-countdown-flash-banners -http://www.dnsreport.com/tools/dnsreport.ch?domain=xn -http://www.freakingnews.com/celebrity-plastic-surgery-pictures -http://www.freakingnews.com/pacman-pictures -http://www.gamextv.com/news-kespa-rankings -http://www.greatestsale.com/energizer-duo -http://www.heise-online.co.uk/open/healthcheck-perl-the-perl-future -http://www.hi5.com/friend/127481925 -http://www.hi5.com/friend/168079391 -http://www.instructables.com/id/diy-kitty-crack%3a -http://www.issociate.de/board/post/222441/html::form_ -http://www.kevporn.eu/rand/021 -http://www.klarnet.net/mulu -http://www.law.cornell.edu/uscode/html/uscode08/usc_sec_08_00001482 -http://www.law.cornell.edu/uscode/html/uscode10/usc_sec_10_00000311 -http://www.law.cornell.edu/uscode/search/display.html?terms=threat%20president&url=/uscode/html/uscode18/usc_sec_18_00000871 -http://www.meritline.com/usb-panic-button-for-office-screen-hider-toy -http://www.mirror.co.uk/news/tm_objectid%3d16147117%26method%3dfull%26siteid%3d94762%26headline%3dexclusive -http://www.mirror.co.uk/news/tm_objectid=16147117&method=full&siteid=94762&headline=exclusive -http://www.mirror.co.uk/news/tm_objectid=16397937&method=full&siteid=94762&headline=exclusive -http://www.mirror.co.uk/news/tm_objectid=16463987&method=full&siteid=94762&headline=the-last-samurai -http://www.mirror.co.uk/news/topstories/tm_headline=we-are-glad-he-is-dead-by-cho-s-family -http://www.nabble.com/-lvs-users -http://www.nbcnewyork.com/news/local-beat/college-grad-cant-find-job-wants -http://www.nynewsday.com/news/local/wire/connecticut/ny-bc-ct -http://www.nynewsday.com/news/local/wire/newyork/ny-bc-ny -http://www.objectivistcenter.org/cth -http://www.omnitronelectronics.net/phpstore/html/hy3005d-variable-single-output,-dual-display -http://www.onlamp.com/pub/a/onlamp/2007/05/21/an-introduction-to-haskell -http://www.paratufamilia.com/home/adolescencia -http://www.photozone.de/nikon -http://www.plainblack.com/bugs/tracker/project-manager -http://www.plainblack.com/bugs/tracker/sqlreport -http://www.plainblack.com/etcetera/webgui-7_4_40 -http://www.plainblack.com/install/upgrade_help/freebsd -http://www.plainblack.com/install/upgrade_help/fyi -http://www.plainblack.com/pr/staff/blog/installclass.pl -http://www.plainblack.com/pr/staff/blog/the-tarnished-golden-hammer -http://www.plainblack.com/rfe/request-for-enhancement/configure-asset-manager -http://www.plainblack.com/rfe/request-for-enhancement/revisions-listing -http://www.plainblack.com/rfe/request-for-enhancement/weatherdata-asset -http://www.plainblack.com/uploads/y6/we/y6weom2ctrvkwat9ihar0w/wuc-2007 -http://www.quakeconpics.com/2000/2000-08-05/mvc-582s.yossman.2000-08-05.quakecon2000.is-eviljohn-alright -http://www.quakeconpics.com/2003/day2/qc2k3.ym.2003-08-15.737.eviljohn -http://www.quoted4truth.com/articles/bmw -http://www.rackmountmaster.com/1u-19 -http://www.shlomifish.org/philosophy/computers/software-management/perfect-workplace/perfect-it-workplace.xhtml#conditions -http://www.shopzilla.com/62_-_content -http://www.shopzilla.com/7s -http://www.shopzilla.com/8b -http://www.southbankcentre.co.uk/music/productions/the-best-new-year-s-eve-party -http://www.sutree.com/how-to/36249/use-the-ee-modifier-in-regular-expressions-in-perl -http://www.telegraph.co.uk/technology/3304496/be-lucky -http://www.thenoodleincident.com/tutorials/typography/index.html -http://www.thestarpress.com/article/20091019/news01/910190317/one-cat -http://www.thinkitx.com/intel_d945gclf_cpu_atom%e2%84%a2_230_ -http://www.webgui.org/bugs/tracker/7_5_0 -http://www.webgui.org/bugs/tracker/no-index-on-usersession-timestamp -http://www.webgui.org/etcetera/mssql -http://www.webgui.org/uploads/3n/_d/3n_dfu2mkhamdnq1syuwtq/wuc-2007 -http://www.webgui.org/uploads/hu/_w/hu_w-lbkbtyfj4h8agepda/wuc-2007 -http://www.webgui.org/user_contributions/user_contributions/packages/accordianstyle-menu-using-jquery -http://www.webgui.org/webgui/dev/discuss/stop -http://www.webgui.org/wuc/session-descriptions/bof -http://www.wellingtongrey.net/miscellanea/archive/2007-03-18 -http://www.wellingtongrey.net/miscellanea/archive/2007-06-03 -http://www.youtube.com/w/young-chuck-norris -http://www.youtube.com/watch?v=2ljai4p -http://www.youtube.com/watch?v=56ww -http://www.youtube.com/watch?v=dw -http://www.youtube.com/watch?v=k2cywfq -http://www4.law.cornell.edu/uscode/html/uscode18/usc_sec_18_00000241 -http://www4.law.cornell.edu/uscode/html/uscode47/usc_sec_47_00001002 -http://www4.law.cornell.edu/uscode/search/display.html?terms=426&url=/uscode/html/uscode50/usc_sec_50_00000426 -http://youtube.com/watch?v=bdobvtg -http://zoffix.com/new/header-footer-content -http< -httpd -https://bugzilla.mozilla.org/buglist.cgi?resolution= -https://bugzilla.mozilla.org/show_bug.cgi?id=307866 -https://www.amtq.eu/documentation/web-succes-magazine/article-subjects/actual-articles/inspiratie-bij-het-ontwerpen-van-nieuwe-website -https://www.plainblack.com/install/upgrade_help/upgr-7.3.8 -https://www.plainblack.com/services/hosting/20/mo -https://xn -hubs -huge -huh? -human -humor -humourous -hunch -hungarian notation -hungarian_notation -hurd -hurfrsifhs -hurting wrist -hybridnames -hygenic eval -hyped software that is poorly written -hyperion ircd -hyphen -hypocr -hypocrites -hyppias -h|arriet -h|»i»â¤where:/|< -hâ¤where:/|< -i love you man -i want a remake/ripoff of .* -i386-openbsd-cc-default -i386-pc-elf-gcc-4.1.0 -i4mte -ibex -ibs -ice -icecream in coffee)++ (heart failure -iceweasel 2.0 -icewm -icfpc -ici -id="container">/div>
-id="left"> -id="template">...<{endif} -ie}>ie.cssmargin-top:12px; -ie}>margin-top:12px;width:400px; broker --(ipv6 -iq -iraq -irc in variable width fonts -irc using gaim -irc.freenode.net -irc.mangand -irc< -irc_evts -ircd_compat -irclogger -ircname -ireland -irix -ironcladlou -ironpig -irrational numbers -irreversibly -irs -irssi's otr plugin -is??????? -isaac hayes of old)++; (isaac hayes -isapi -isfinite -ism -iso -iso8859-15 -isp -isp tech support -ispell -isps who block ports becuase they assume you're going to get your idiot windows box virus infected and won't let you open the ports, even if you're not running a fucking windows box at all -israelites: -issues -iszak -it works, ship it -it's -it's< -it." -italic"> -magic_$| -mahmoud -maid! -mail boxes -mail from administrator@ -mail with the subject notification: backup failed -mailman -main -maincontainer -maintain -majority -make portability -makedev -makefile.... -makes -making other people rich -making shit up -making stuff up -malloc -malloc/free -mandatory -mandrake -manga -mangoes -maniacs} -mankind -manpage -manual labour -manual memory management -manually forging multipart mime documents -map in scalar context -map in void context -maple -maps -mar -marble -margin-left -margin-left: -markapl -markers -marketing dipshits -markup<{endif} -medicine -meds -medz -meesql -meeting real people -meeting with clueless customers -megaraid -melee -memory leak -men who drive miata -menus -merlyn" -mess -meta-language -meta-refresh -metadiscussions -metallica -metaphors -methinks -method chaining -mfc -mib_p8iy7kfn -mice on batteries -mice with massively impractical buttons -mickeys -microsoft antispyware -microsoft's licences -microsoft.com -middle button paste -middlecol -mightyv -migraines -migration -military -militia" -min-height -min-width -mindset -mini languages -miniperl -mini} -mirror' -mirv -miscommunication -misconfigured ftp cpan mirrors -misdocumentation -misleading comments -misnomers -misogyny -misplaced-love -misread -miss -missing -mistake -mistakenly typing perldoc instead of man -mithaldu -mixed messages -mixing text encodings -mixtures -mo -mod -mod_perl documentation -mod_perl_1 -mod_php -modding -mode -models -modem -modern companies who don't even have a digital contact system -modperl + catalyst -modules assuming integer time -modules printing to stdout without asking -modules that export crap by default -modules that fail with perl_mm_use_default -modules} -mofino's gay music -mofino.respect -mofino; -mofino< -mofinos_mom -mohadib -moinmoin -money orders -monkeypatching -monoculturism -monolithic changes -monologue -monomorphism -monster -moobs -moose-nul-99-99-99 -moot -mootools docs)-- (mootools docs)-- (mootools docs -more typing -morescroll -morgan -morings -mornings -morons -morris -most -mother's -motherclass -moths & cockroaches -motion to kick ivantis in the teeth next time he brings perlbot2 in here -motivation -motorboating^^qq^/o>o;*t-= -mouth -movie with no hot chicks left alive at the end -mp3s -mr -mr.hairgrease -mr_sako -ms "smart" quotes -ms natural kb -ms smart quotes)-- (people using ms word to write copies -msie6 -multiple clipboards -multis -multitasking while driving -multtasking -mum -munich -muscle memory -muscles -mushcode -mustaches -muster -mutilation -mwoehlke -my -my connection -my dad -my eye twitching -my firefox)-- (crappy hardware -my hidiously slow crm -my isp -my keyboard -my landlord -my own faulty debugging tools -my shitty dns -my webserver -my_leet_filez -mysql-backup -myth -m{ -m{(?:|b||s) -m{(|w+ -m{{|b|s} -m{|"|n(.+?) -m{|b -nails -name-space pollution -name< -name="<{endif} -now. -options=" -optonline -optus internet -ora safari -oranges -orbital mechanics -orbitz -orca -order -ordinal numbers -organic memory -orkut -orms -os -oscommerce -oshii -osjedi -osmosis -osx -other linux distros -other people -other people's workstations -other peoples code -other pepole -other programmmers -other" -otherpeople -our -our's -outage -outcomes -output{module::build -output{undef -output{⤠-ov -over-active/overreaching governments -over-complete indexes -overabbreviation -overlaps -overloaded comments -overpriced -overracting -overstrike -owa -owna -oxford american writer's thesaurus -o| -p3-p9-p6-p-n -p3m.org -p5p -pa -packaging tools -padding -paedoz -page. tags of any kind -people too closed-minded to respect other peoples' entertainment outlets -people using one letter parameters because they are too fucking dumb to know about post -people who can't figure out how to set mime types in a browser .. even when firefox prompts them!!! -people who can't grok traceroute -people who cant leave a community that they cant live at -people who change passwords to usernames that are also used by robots -people who change their nicks all the time, thus evading my ignores -people who date people from dating sites -people who design for 640x480 -people who don't learn about how a repository works before pulishing shit to it -people who don't remove hidden tracks from the end of the last track on the disk and leave long silences in mp3s -people who don't take it seriously yet work in it -people who expect instant responses or they leave -people who have only 00-load.t in their test suite -people who make shit up to indicate their problem instead of just being honest -people who move wikis to new servers using wget -people who post jobs on jobs.perl.org but admit to not being able to review applications for at least two months -people who rapidly oscillate between on- and off- line and away and back on im services -people who rebase branches you've pulled from -people who recommend romantic films when they know i'm desperately single -people who release spiffy new versions of stuff -people who spam your /msg buffer -people with fucking "this message has html" mime parts who then include html that has nothing specially htmly about it -people you've never heard of but clame to have known you when you were a kid -people," -people_that_discourage_the_use_of__ -people_that_use_the_name_of_a_builtin_function_as_nickname -per -perfection -perl - perldoc -perl 5 wiki -perl job market -perl threads -perl-like regexp -perl/dbi -perl2exe -perl5< -perl7 -perlbot2 -perlcritic -perldoc.perl.org -perlio -perlmonk -perlmonks.com -perlnoob -perlop -perlre -perlvar -permanent interface destruction -permissions -permitted -pern -perplexed -persistent -personal -personality profiling -perspective -pesky typos in the middle of otherwise clever, timesaving code -pessimism -phase -pheasants -philosopher -philosophy -phone -phone spammers -phones -phones that can't be connected to a computer and a headset at the same time -phonetic spelling -photocards -php mentality -php-analog -php-job -php-syslog-ng -phpbb -phys -physics jokes -piano -pictures -pictures from a car window -pieces -pierroo -pies -pig -pigdude -pigs -pigtails -pin numbers -ping6 -pir -pirating -pissing out your ass -pixels -pizza hut -pizza without pepsi -pjb -pkrumins's sexuality -pl/sql cgi -place -places -places that have the same hold music on the queue as on hold -places that put you on hold before understanding the question -plagal cadences -plagiarism -plan9 -plane -planet -planetmath -plastic -platforms -plato -plato's republic -platonically -pleasure -plone -plot -pmi -pmwiki -png_support_ -pnux -podcasting -podcasts -poe-ht -poe::server::component::xmlrpc -poi -poignantguide -pointless -pointless discussion -pointless karma modifications -pointless oo -points -police humour -police state -policy routing -politics -polling -pollution -polysemy -pontiac -poor fonts -poor grammar meme -poor_people -pop -pop-whores -popular -population -port -portage_rsync_extra_opts=" -porting crappy old code -position -position is everything -positioniseverything.net -positions -postscript interpreter -pounds -power mongers -powerbook antennae -powers -ppm -ppo -pppoe -pratchet -pravusbot -pre-strapped boots -preaching to the chior -precisely -preconceived notions -preconceptions -prefer -prefix_pattern=( -prefixing nicks every single line -prematurely -preoptimization -prepare -presentation -pressingbutton -presumably -pretending to be a programmer -preview -price -price stickers -prices -prime -primitive -prince: -principle -print $html -print"xml_element -printing -printout -priority -prison rape -prithee -privacy -private -privoxy -prob -problemo....http://polorix.net/test/erincon/< -procedural cgi.pm -processes} -processor -procrastinating -product.pms -profile -profitab -prog=> -programmer -programming academics)-- c-- (mit kerberos -programming by brownian motion -programs -programs not yet aware of widescreen displays -programs that show an always-on-top "now loading" screen -prohibition -projectile vomiting -projects -proportions -prose -proselytism -prostration -prototypes} -proud -prov -ps2 port -psd -pseudo-hungarian notation -pseudocode -psychic -psychicbug -pt>o;*t-= -qr/(?-xism:{ -qr/(|s+)(?:|+|+| -qr/{ -qr{...}x< -qr{^((25{0-5}|2{0-4}|d|{0-1}?|d{1,2})|.){3}(25{0-5}|2{0-4}|d|{0-1}?|d{1,2})(|/(3{0-2}|{1-2}|d|{1-9}))$};< -quad -quadtrees -quail -quakeforge -quantum computing -quentusrex -ques -questions -quicksynergy -quility -quirksmode -quirky -quitters -quo -quotas -quote from the specs -quoter -quoting 5 relevant lines and 50 irrelevant lines before replying -qw(t -qw{ @kitties } -q{ -r*=i,i -r-co -r-x -rackspace -radical islam -radical< -radio4 -raed -raid -rain -raised floor -rakudo-parrot-split -rakudoâ¤where:/|< -ramblings -rand($i -randal, -random dips calling -random dudes -random guessing -random talking people -random weirdos -random_sex -randomly gaining an underscore on your nickname -randomly generated paste ids -randr -randy kobes -rant -rantings} -rapi -rarely -rates -rather, -ratify -ratio -rats -raven" -raw_events -rdbms -rdice -read -reading emails from subliterate cow-orkers -reading implications into plain statements / projecting one's insecurity onto other's words -reading mail -reading ugly code -real life -real_racism -really eager constructors that do lots of things -realnick -reapplied -reasonable -reasons -recall -recipient" -recover. -recruiters -recycling stories -red bull -red cross -red rose -red sky in the morning -redace -redhat perl -redhate -rediculous -redue -redundant nose -reeall -refcount -reference -referenced -reflexive -reflux -regards -regex:: -regexps -registered -registerfly -registry -regressive taxes -regular expression in non-perl languages -regularly -reich -reinvent the wheel -reinventing kerberos -rektide -relational databases -relativistic time -release -release_arge=" -reliable -religious -religiously -remake.movie -reminiscent of his discussing somni's op style in public -remnants -remov -rent -repairing 23 myisam tables on a low-end old machine -repetitiveness -rephrase -replaced -replication -repository -republicans/theists -request -requests -require -requirements docs -requires -rerun -res -research -resignation -resisting -resolutio -resolution -resolutions -resolved -resources -resp -respect for romero -responding to an email and using a different subject -responsibility -restarting a modem before the new cap kicks in -restaurantsss -restoring backups -result -results" -resumes -retrib -retroj -revelling in one's ignorance -reversals -reverse -revmischa -rewriting spamassassin -rewt`` -rfc 5322 -rhez -rhubarb -rhyming -rich bitches -righttool -rindolfs sense of humour -risk -ritual -rjh -rl -rmahl -rmrfslash -rms in circque de soleil -robeph -robert22 -robrt -rock, f00li5h, hardplace -rock_music -roeckx -roger -role -roles -romulans -ron paul -roommate friends loudly arguing about politics while i'm trying to concentrate in my own house -roommates -rooms without windows but with printers and stuff -root -root-canal -rooters -ror -ror# -rotten.com -routing issues -roy -royal mail -rp -rpc -rt.cpan.org -ruby documentation -ruby's activerecord -run -running barefoot -running-under -rupert murdoch -rushing clients -rwxr -s! -s#^ -s+:+>s -s,#, -s/$a/ -s/(...)/ -s/(....highlight{zoom:1;}behavior:url("css/hover.htc");div.right{margin-bottom:10px;}div.down{padding-bottom:0px;}whateverdocument.location.href='http://windowsupdate.microsoft.com';<{/if} -type=|"text/css|">"." -useless modules -useless use of cat -uselessness -user-defined operator precedence -user= -userland -username -users who want software for solving np-hard problems -users' -usesec -usessl -using on catalog pages with 50 items to shrink 1024x768 images down to thumbnail size -using @ for a delimiter -using javascript to chagne where the form submits to -using publisher on 13" screen -usrl -usssssssssssss -ustice" -usual -utf8::encode($title); -utility -utopia -uu -uuuu -uzbeks -v5.10.0 -v6 -v6.pm -vala -valentine's day -valuable -value -value -value=">">) -while(c -whiners -whining -white bread -white people -whitespace -whitspace for formatting comments -whoever told me to use sqlite at the time -whois paranoia -whynot -wi-fi -wicoder -widely -widgets -widnows -width -width:x;heightx;
xml ast --(your code -xml::rai -xml::rules -xmodmap -xms::rss::parser -xoops -xorg -xsl -xul -xxxx -y-o-u -y-o-u-r -yacc -yahoo! -yaml.org -yaml::dump(yaml::load(" -yang -yapc::europe -yapc::na -yeah....})* -{^|-}+ -{____} -{aliasing} -{bar} -{baz} -{c/, -{dell} -{div} -{domon} -{english} -{foo} -{header} -{ie6} -{img -{join(" -{margin-right:28px;}($1 -{width:110%;} -}else{wait;$count -}{img -}}mudd -}}push@q,$f}$i=@q;for$z(@q){$_.="+$z*x^". -}}{{o -}â¤where:/|< -× -β();â¤where:/|< -–—-— -“< -“|s -日本語  -゚∀゚ diff --git a/need b/need deleted file mode 100644 index 6777cc3..0000000 --- a/need +++ /dev/null @@ -1,106 +0,0 @@ -AutoLoader -B::Deparse -BSD::Resource -Bot::BB3 -Bot::BB3::ConfigParser -Bot::BB3::Logger -Bot::BB3::MacroQuote -Bot::BB3::PluginConfigParser -Bot::BB3::PluginManager -Bot::BB3::PluginWrapper -CGI -Carp -Carp::Heavy -Config::General -DBD::SQLite -DBI -Data::Dumper -Date::Manip -DateTime -DateTimeX::Easy -Encode -EvalServer -ExtUtils::Constant -ExtUtils::MakeMaker -File::Glob -File::Listing -Finance::Currency::Convert::XE -Geo::IATA -Geo::IP -Geo::WeatherNWS -Getopt::Long -Getopt::Std -HTML::Entities -HTML::TreeBuilder -HTTP::Status -IMDB -IO::Socket::INET -JavaScript::SpiderMonkey -LWP::Simple -LWP::UserAgent -Language::K20 -List::AllUtils -List::MoreUtils -List::Util -Log::Log4perl -Math::Farnsworth::Dimension -Math::Farnsworth::Error -Math::Farnsworth::Evaluate -Math::Farnsworth::FunctionDispatch -Math::Farnsworth::Output -Math::Farnsworth::Parser -Math::Farnsworth::Units -Math::Farnsworth::Value -Math::Farnsworth::Value::Array -Math::Farnsworth::Value::Boolean -Math::Farnsworth::Value::Date -Math::Farnsworth::Value::Lambda -Math::Farnsworth::Value::Pari -Math::Farnsworth::Value::String -Math::Farnsworth::Value::Undef -Math::Farnsworth::Variables -Math::Pari -Memoize -Module::CoreList -MyModule::Somewhere -Net::DNS -Net::FTP -POE -POE::Component::IRC::Common -POE::Component::IRC::Plugin::AutoJoin -POE::Component::IRC::Plugin::Connector -POE::Component::IRC::Plugin::NickReclaim -POE::Component::IRC::State -POE::Component::Server::SimpleHTTP -POE::Filter::Line -POE::Filter::Reference -POE::Filter::Stream -POE::Session -POE::Wheel::ReadWrite -POE::Wheel::Run -POE::Wheel::SocketFactory -POSIX -Parse::RecDescent -PerlIO -PerlIO::scalar -REST::Google::Translate -Scalar::Util -Socket -Storable -Template -Term::ANSIColor -Term::ReadLine -Test -Test::More -Text::Aspell -Text::Glob -Text::Soundex -Tie::Hash::NamedCapture -URI -URI::Escape -URI::URL -Unicode::UCD -WWW::RottenTomatoes -WWW::Shorten -Weather::Underground -XML::RSS::Parser diff --git a/patch b/patch deleted file mode 100644 index 9c8a0fc..0000000 --- a/patch +++ /dev/null @@ -1,586 +0,0 @@ -Index: plugins/factoids.pm -=================================================================== ---- plugins/factoids.pm (revision 460) -+++ plugins/factoids.pm (working copy) -@@ -5,6 +5,8 @@ - use Text::Soundex qw/soundex/; - use strict; - -+use Data::Dumper; -+ - my $COPULA = join '|', qw/is are was isn't were being am/, "to be", "will be", "has been", "have been", "shall be", "can has", "wus liek", "iz liek", "used to be"; - my $COPULA_RE = qr/\b(?:$COPULA)\b/i; - -@@ -52,7 +54,8 @@ - author VARCHAR(100), - modified_time INTEGER, - soundex VARCHAR(4), -- compose_macro CHAR(1) DEFAULT '0' -+ compose_macro CHAR(1) DEFAULT '0', -+ protected BOOLEAN DEFAULT '0' - )"; # Stupid lack of timestamp fields - - $pm->create_table( $self->dbh, "factoid", $sql ); -@@ -71,7 +74,7 @@ - # Need to add "what is foo?" support... - sub command { - my( $self, $said, $pm ) = @_; -- -+ - return unless $said->{body} =~ /\S/; #Try to prevent "false positives" - - my $call_only = $said->{command_match} eq "call"; -@@ -79,22 +82,22 @@ - my $subject = $said->{body}; - - if( !$call_only and $subject =~ /\s+$COPULA_RE\s+/ ) { -- my @ret = $self->store_factoid( $said->{name}, $said->{body} ); -+ my @ret = $self->store_factoid( $said ); - - return( 'handled', "Failed to store $said->{body}" ) -- unless @ret; -+ unless @ret; - - return( 'handled', "Stored @ret" ); - } - else { -- my $commands_re = join '|', qw/search relearn learn forget revisions literal revert/; -+ my $commands_re = join '|', qw/search relearn learn forget revisions literal revert protect unprotect/; - $commands_re = qr/$commands_re/; - - my $fact_string; - - if( !$call_only && $subject =~ s/^\s*($commands_re)\s+// ) { - my( $cmd_name ) = "get_fact_$1"; -- $fact_string = $self->$cmd_name($subject, $said->{name}); -+ $fact_string = $self->$cmd_name($subject, $said->{name}, $said); - } - else { - $fact_string = $self->get_fact( $pm, $said, $subject, $said->{name}, $call_only ); -@@ -114,7 +117,7 @@ - $subject =~ s/^\s+//; - $subject =~ s/\s+$//; - $subject =~ s/\s+/ /g; -- $subject =~ s/[^\w\s]//g; -+# $subject =~ s/[^\w\s]//g; #comment out to fix punct in factoids - $subject = lc $subject; - - return $subject; -@@ -140,13 +143,15 @@ - } - - sub store_factoid { -- my( $self, $author, $body ) = @_; -+ my( $self, $said) =@_; -+ my ($author, $body ) = ($said->{name}, $said->{body}); - -- - return unless $body =~ /^(?:\S+[:,])?\s*(.+?)\s+($COPULA_RE)\s+(.+)$/s; - my( $subject, $copula, $predicate ) = ($1,$2,$3); - my $compose_macro = 0; - -+ return "Insufficient permissions for changing protected factoid [$subject]" if (!$self->_db_check_perm($subject,$said)); -+ - if( $subject =~ s/^\s*\@?macro\b\s*// ) { $compose_macro = 1; } - elsif( $subject =~ s/^\s*\@?func\b\s*// ) { $compose_macro = 2; } - elsif( $predicate =~ s/^\s*also\s+// ) { -@@ -156,13 +161,13 @@ - } - - return unless -- $self->_insert_factoid( $author, $subject, $copula, $predicate, $compose_macro ); -+ $self->_insert_factoid( $author, $subject, $copula, $predicate, $compose_macro, $self->_db_get_protect($subject) ); - - return( $subject, $copula, $predicate ); - } - - sub _insert_factoid { -- my( $self, $author, $subject, $copula, $predicate, $compose_macro ) = @_; -+ my( $self, $author, $subject, $copula, $predicate, $compose_macro, $protected ) = @_; - my $dbh = $self->dbh; - - warn "Attempting to insert factoid: type $compose_macro"; -@@ -181,8 +186,8 @@ - return unless $key =~ /\S/; - - $dbh->do( "INSERT INTO factoid -- (original_subject,subject,copula,predicate,author,modified_time,soundex,compose_macro) -- VALUES (?,?,?,?,?,?,?,?)", -+ (original_subject,subject,copula,predicate,author,modified_time,soundex,compose_macro,protected) -+ VALUES (?,?,?,?,?,?,?,?,?)", - undef, - $key, - $subject, -@@ -192,24 +197,57 @@ - time, - soundex($key), - $compose_macro || 0, -+ $protected || 0, - ); - - return 1; - } - -+sub get_fact_protect { -+ my( $self, $subject, $name, $said ) = @_; -+ -+ warn "===TRYING TO PROTECT [$subject] [$name]\n"; -+ -+ #XXX check permissions here -+ return "Insufficient permissions for protecting factoid [$subject]" if (!$self->_db_check_perm($subject,$said)); -+ -+ my $fact = $self->_db_get_fact( _clean_subject( $subject ), $name ); -+ $self->_insert_factoid( $name, $subject, $fact->{copula}, $fact->{predicate}, $fact->{compose_macro}, 1 ); -+ -+ return "Protected $subject"; -+} -+ -+sub get_fact_unprotect { -+ my( $self, $subject, $name, $said ) = @_; -+ -+ warn "===TRYING TO PROTECT [$subject] [$name]\n"; -+ -+ #XXX check permissions here -+ return "Insufficient permissions for protecting factoid [$subject]" if (!$self->_db_check_perm($subject,$said)); -+ -+ my $fact = $self->_db_get_fact( _clean_subject( $subject ), $name ); -+ $self->_insert_factoid( $name, $subject, $fact->{copula}, $fact->{predicate}, $fact->{compose_macro}, 0 ); -+ -+ return "Unprotected $subject"; -+} -+ - sub get_fact_forget { -- my( $self, $subject, $name ) = @_; -+ my( $self, $subject, $name, $said ) = @_; - - warn "===TRYING TO FORGET [$subject] [$name]\n"; - -- $self->_insert_factoid( $name, $subject, "is", " ", 0 ); -+ #XXX check permissions here -+ return "Insufficient permissions for forgetting protected factoid [$subject]" if (!$self->_db_check_perm($subject,$said)); - -+ $self->_insert_factoid( $name, $subject, "is", " ", 0, $self->_db_get_protect($subject) ); -+ - return "Forgot $subject"; - } - - sub _fact_literal_format { - my($r) = @_; -- ("","macro ","func ")[$r->{compose_macro}] . -+ ($r->{protected}?"P:" : "" ). -+ ("","macro ","func ")[$r->{compose_macro}] . - "$r->{subject} $r->{copula} $r->{predicate}"; - } - -@@ -218,7 +256,7 @@ - my $dbh = $self->dbh; - - my $revisions = $dbh->selectall_arrayref( -- "SELECT factoid_id, subject, copula, predicate, author, compose_macro -+ "SELECT factoid_id, subject, copula, predicate, author, compose_macro, protected - FROM factoid - WHERE original_subject = ? - ORDER BY modified_time DESC -@@ -243,9 +281,12 @@ - } - - sub get_fact_revert { -- my( $self, $subject, $name ) = @_; -+ my( $self, $subject, $name, $said ) = @_; - my $dbh = $self->dbh; - -+ #XXX check permissions here -+ return "Insufficient permissions for reverting protected factoid [$subject]" if (!$self->_db_check_perm($subject,$said)); -+ - $subject =~ s/^\s*(\d+)\s*$// - or return "Failed to match revision format"; - my $rev_id = $1; -@@ -261,22 +302,24 @@ - return "Bad revision id" unless $fact_rev and $fact_rev->{subject}; # Make sure it's valid.. - - # subject, copula, predicate -- $self->_insert_factoid( $name, @$fact_rev{qw"subject copula predicate compose_macro"}); -+ $self->_insert_factoid( $name, @$fact_rev{qw"subject copula predicate compose_macro protected"}); - - return "Reverted $fact_rev->{subject} to revision $rev_id"; - } - - sub get_fact_learn { -- my( $self, $body, $name ) = @_; -+ my( $self, $body, $name, $said ) = @_; - -+ $body =~ s/^\s*learn\s+//; -+ my( $subject, $predicate ) = split /\s+as\s+/, $body, 2; - -- $body =~ s/^\s*learn\s+//; -- my( $subject, $predicate ) = split /\s+as\s+/, $body, 2; -+ #XXX check permissions here -+ return "Insufficient permissions for changing protected factoid [$subject]" if (!$self->_db_check_perm($subject,$said)); - -- #my @ret = $self->store_factoid( $name, $said->{body} ); -- $self->_insert_factoid( $name, $subject, 'is', $predicate, 0 ); -+ #my @ret = $self->store_factoid( $name, $said->{body} ); -+ $self->_insert_factoid( $name, $subject, 'is', $predicate, 0 , $self->_db_get_protect($subject)); - -- return "Stored $subject as $predicate"; -+ return "Stored $subject as $predicate"; - } - *get_fact_relearn = \&get_fact_learn; #Alias.. - -@@ -311,12 +354,55 @@ - return $self->basic_get_fact( $pm, $said, $subject, $name, $call_only ); - } - -+sub _db_check_perm { -+ my ($self, $subj, $said) = @_; -+ my $isprot = $self->_db_get_protect($subj); -+ -+ warn "Checking permissions of [$subj] for [$said->{name}]"; -+ warn Dumper($said); -+ -+ #always refuse to change factoids if not in one of my channels -+ return 0 if (!$said->{in_my_chan}); -+ -+ #if its not protected no need to check if they are op or root; -+ return 1 if (!$isprot); -+ -+ if ($isprot && ($said->{by_root} || $said->{by_chan_op})) -+ { -+ return 1; -+ } -+ -+ #default case, $isprotect true; op or root isn't -+ return 0; -+} -+ -+#get the status of the protection bit -+sub _db_get_protect { -+ my( $self, $subj ) = @_; -+ -+ $subj = _clean_subject($subj,1); -+ -+ my $dbh = $self->dbh; -+ my $prot = ($dbh->selectrow_array( " -+ SELECT protected -+ FROM factoid -+ WHERE original_subject = ? -+ ORDER BY factoid_id DESC -+ ", -+ undef, -+ $subj, -+ ))[0]; -+ -+ return $prot; -+} -+ -+ - sub _db_get_fact { - my( $self, $subj, $name ) = @_; - - my $dbh = $self->dbh; - my $fact = $dbh->selectrow_hashref( " -- SELECT factoid_id, subject, copula, predicate, author, modified_time, compose_macro -+ SELECT factoid_id, subject, copula, predicate, author, modified_time, compose_macro, protected - FROM factoid - WHERE original_subject = ? - ORDER BY factoid_id DESC -@@ -360,7 +446,7 @@ - return $plugin->command($said,$pm); - } - else { -- return "$fact->{subject} $fact->{copula} $fact->{predicate}"; -+ return "$fact->{predicate}"; - } - } - else { -Index: lib/Bot/BB3/Roles/IRC.pm -=================================================================== ---- lib/Bot/BB3/Roles/IRC.pm (revision 460) -+++ lib/Bot/BB3/Roles/IRC.pm (working copy) -@@ -88,6 +88,8 @@ - channel_list - stop_talking - start_talking -+ -+ comfuckpong - / - ] - ], -@@ -107,6 +109,15 @@ - #------------------------------------------------------------------------------ - # PUBLIC METHODS - #------------------------------------------------------------------------------ -+sub comfuckpong -+{ -+ my ($sender, $kernel, $heap) = @_[SENDER, KERNEL, HEAP]; -+ -+ my $d = $heap->{irc}->server_name(); -+ $heap->{irc}->yield( quote => "PONG $d\n"); -+ $kernel->delay_add(comfuckpong => 50); -+} -+ - sub get_bot_conf { - my( $self, $poco_irc ) = @_; - my $id = ( ref $poco_irc ) ? $poco_irc->session_id : $poco_irc; -@@ -303,7 +314,8 @@ - - $said->{by_root} = ( $said->{ sender_raw } =~ $root_mask ); - $said->{by_chan_op} = $pci->is_channel_operator( $said->{channel}, $said->{name} ); -- #-------------------------- -+ warn Data::Dumper->Dump([[$pci->nick_channels($said->{name})]], ["NICK_CHANS"]); -+ $said->{in_my_chan} = ($pci->nick_channels($said->{name})) ? 1 : 0; - - return $said; - } -@@ -368,6 +380,8 @@ - } - HACKEND: - # END HACK -+ -+ $kernel->delay_add(comfuck=>50); - - # May be an array ref. - for( ref $channels ? @$channels : $channels ) { -Index: lib/Bot/BB3/Roles/Web.pm -=================================================================== ---- lib/Bot/BB3/Roles/Web.pm (revision 460) -+++ lib/Bot/BB3/Roles/Web.pm (working copy) -@@ -28,6 +28,8 @@ - my( $self, $kernel ) = @_[OBJECT,KERNEL]; - my $conf = $self->{conf}; - -+ warn '$conf{http}' . $conf->{http_plugin_port}; -+ - # Create it here so it acts as a child - $self->{server} = POE::Component::Server::SimpleHTTP->new( - PORT => $conf->{http_plugin_port}, -Index: lib/Bot/BB3/Roles/Console.pm -=================================================================== ---- lib/Bot/BB3/Roles/Console.pm (revision 460) -+++ lib/Bot/BB3/Roles/Console.pm (working copy) -@@ -37,7 +37,7 @@ - - $self->{socket_factory} = POE::Wheel::SocketFactory->new( - BindAddress => "127.0.0.1", -- BindPort => '14401', -+ BindPort => $self->{conf}->{roles}->{console}->{port} || 10041, - SuccessEvent => 'socket_new', - FailureEvent => 'factory_fail', - Reuse => 'on', -Index: lib/Bot/BB3/PluginManager.pm -=================================================================== ---- lib/Bot/BB3/PluginManager.pm (revision 460) -+++ lib/Bot/BB3/PluginManager.pm (working copy) -@@ -307,7 +307,7 @@ - warn "Got some output: [$results]\n"; - - if( $results !~ /\S/ and $said->{addressed} ) { -- $results = "Couldn't match input."; -+ #$results = "Couldn't match input."; - } - - #---- -Index: etc/plugins.conf -=================================================================== ---- etc/plugins.conf (revision 460) -+++ etc/plugins.conf (working copy) -@@ -16,33 +16,33 @@ - - server "*" { - channel "#perl" { -- plugin "eval" { addressed: false } -- plugin "deparse" { addressed: false } -- plugin "really_deparse" { addressed: false } -- plugin "pastebin" { addressed: false } -+ plugin "eval" { addressed: true } -+ plugin "deparse" { addressed: true } -+ plugin "really_deparse" { addressed: true } -+ plugin "pastebin" { addressed: true } - } - channel "#perl.no" { -- plugin "eval" { addressed: false } -- plugin "deparse" { addressed: false } -+ plugin "eval" { addressed: true } -+ plugin "deparse" { addressed: true } - } - channel "#poe" { -- plugin "eval" { addressed: false } -+ plugin "eval" { addressed: true } - } - channel "#perlcafe" { -- plugin "eval" { addressed: false } -+ plugin "eval" { addressed: true } - } - channel "#perlhelp" { -- plugin "eval" { addressed: false } -+ plugin "eval" { addressed: true } - } - channel "##javascript" { -- plugin "eval" { addressed: false } -- plugin "pastebin" { addressed: false } -+ plugin "eval" { addressed: true } -+ plugin "pastebin" { addressed: true } - } - channel "##cinema" { -- plugin "rt" { addressed: false } -+ plugin "rt" { addressed: true } - } - channel "#regex" { -- plugin "eval" { addressed: false } -+ plugin "eval" { addressed: true } - } - channel "#buubot" { - plugin "*" { addressed: false } -@@ -52,19 +52,19 @@ - plugin "its" { addressed: true } - } - channel "#cgi" { -- plugin "eval" { addressed: false; } -+ plugin "eval" { addressed: true; } - } - channel "##agu10" { -- plugin "jseval" { addressed: false; } -+ plugin "jseval" { addressed: true; } - } - channel "##ort" { -- plugin "jseval" { addressed: false; } -+ plugin "jseval" { addressed: true; } - } - channel "#mandoojs" { -- plugin "jseval" { addressed: false; } -+ plugin "jseval" { addressed: true; } - } - channel "#mandoojs-br" { -- plugin "jseval" { addressed: false; } -+ plugin "jseval" { addressed: true; } - } - channel "*" { - plugin "karma_modify" { addressed: false; } -Index: etc/bb3.conf -=================================================================== ---- etc/bb3.conf (revision 460) -+++ etc/bb3.conf (working copy) -@@ -3,13 +3,25 @@ - quotes_dir /home/buu/p/bb2/trunk/quotes - - -+http_plugin_port 1092 -+ - - -- enabled yes -- port 10090 -+ enabled no -+ port 10091 - - -+ -+ enabled no -+ port 10092 -+ -+ -+ -+ enabled no -+ -+ - -+ enabled no - hostname erxz.com:10081 - alias_url = http://erxz.com/bb3pb - -@@ -20,28 +32,11 @@ - default_plugin factoids - - -- -+ - channel \#buubot -- channel \#\#cinema - channel \#\#turtles - channel \#perlcafe -- channel \#lispcafe -- channel \#cpan -- channel \#perl -- channel \#perlbot -- channel \#perl6 -- channel \#cgi -- channel \#javascript -- channel \#ruby-lang -- channel \#perl.br -- channel \#regex -- channel \#kwiki -- channel \#\#agu10 -- channel \#\#ort -- channel \#mandoojs-br -- channel \#mandoojs -- channel \#perl-cats -- channel \#openldap-devel -+ channel - - ignore buubot - ignore avarbot -@@ -53,54 +48,19 @@ - ignore serfbot - ignore farnsworth - ignore frogbot -+ ignore EvanCarroll -+ ignore EvanCarrol -+ ignore EvanCaroll -+ ignore EvanCarol -+ ignore EC - - server irc.freenode.org -- root_mask buu@erxz.com -+ root_mask n=simcop23@p3m/member/simcop2387 - - -- -- channel \#perl -- channel \#buubot -- channel \#poe -- channel \#yapc -- channel \#catalyst -- channel \#perl-help -- channel \#perlde -- channel \#perl6de -- channel \#bots -- channel \#corehackers -- -- ignore gumbynet -- ignore purl -- ignore gumbybrain -- -+ -+ channel \#freenode-perl-cabal -+ - server irc.perl.org -- root_mask buu@buu.mtfnpy -+ root_mask ~simcop238@c-69-180-45-54.hsd1.ga.comcast.net - -- -- -- channel \#perl -- channel \#buubot -- server irc.quakenet.org -- root_mask buu@erxz.com -- -- -- -- channel \#perl -- channel \#perlhelp -- channel \#buubot -- channel \#regex -- channel \#irssi -- channel \#perl.no -- -- server irc.choopa.net -- root_mask buu@erxz.com -- -- -- -- channel \#perl -- channel \#buubot -- -- server irc.oftc.net -- root_mask buu@erxz.com --