logilogi-svn Mailing List for LogiLogi - Software Libre for the Web (Page 6)
Status: Beta
Brought to you by:
wybow
You can subscribe to this list here.
| 2007 |
Jan
|
Feb
|
Mar
(7) |
Apr
(18) |
May
(59) |
Jun
(73) |
Jul
(31) |
Aug
(19) |
Sep
(18) |
Oct
(31) |
Nov
(9) |
Dec
(15) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2008 |
Jan
(30) |
Feb
(62) |
Mar
(70) |
Apr
(75) |
May
(139) |
Jun
(85) |
Jul
(28) |
Aug
(33) |
Sep
(145) |
Oct
(45) |
Nov
(76) |
Dec
(48) |
| 2009 |
Jan
(12) |
Feb
(39) |
Mar
(5) |
Apr
(6) |
May
(23) |
Jun
(44) |
Jul
(17) |
Aug
(15) |
Sep
(49) |
Oct
(28) |
Nov
(14) |
Dec
(6) |
| 2010 |
Jan
(22) |
Feb
(24) |
Mar
(14) |
Apr
(3) |
May
(2) |
Jun
(30) |
Jul
(9) |
Aug
(9) |
Sep
(10) |
Oct
(1) |
Nov
|
Dec
(1) |
| 2011 |
Jan
(2) |
Feb
|
Mar
(2) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: <wy...@us...> - 2010-01-08 19:39:30
|
Revision: 1659
http://logilogi.svn.sourceforge.net/logilogi/?rev=1659&view=rev
Author: wybow
Date: 2010-01-08 19:39:20 +0000 (Fri, 08 Jan 2010)
Log Message:
-----------
DBR header images
Added Paths:
-----------
trunk/public/grafiken/
trunk/public/grafiken/Thumbs.db
trunk/public/grafiken/abstand_16x16.gif
trunk/public/grafiken/dbr_klein_25x37.gif
trunk/public/grafiken/dbr_logo_142x93.gif
trunk/public/grafiken/gifs1/
trunk/public/grafiken/gifs1/11bis20_1_29x16.gif
trunk/public/grafiken/gifs1/1bis10_1_22x16.gif
trunk/public/grafiken/gifs1/21bis30_1_31x16.gif
trunk/public/grafiken/gifs1/Thumbs.db
trunk/public/grafiken/gifs1/aboservice1_83x16.gif
trunk/public/grafiken/gifs1/agb1_26x16.gif
trunk/public/grafiken/gifs1/aktuell1_58x16.gif
trunk/public/grafiken/gifs1/ansprechpartner1_131x16.gif
trunk/public/grafiken/gifs1/ausgaben1_71x16.gif
trunk/public/grafiken/gifs1/ausgaben1_78x16.gif
trunk/public/grafiken/gifs1/autoren1_64x16.gif
trunk/public/grafiken/gifs1/bestellen1_71x16.gif
trunk/public/grafiken/gifs1/buchprogramm1_114x16.gif
trunk/public/grafiken/gifs1/buchprogramm1_123x16.gif
trunk/public/grafiken/gifs1/buecher1_53x16.gif
trunk/public/grafiken/gifs1/buecher1_62x16.gif
trunk/public/grafiken/gifs1/copyright_250x16.gif
trunk/public/grafiken/gifs1/copyright_96x16.gif
trunk/public/grafiken/gifs1/datenschutz1_97x16.gif
trunk/public/grafiken/gifs1/dbr1_101x16.gif
trunk/public/grafiken/gifs1/dbr_jfp1_249x16.gif
trunk/public/grafiken/gifs1/editorial1_69x16.gif
trunk/public/grafiken/gifs1/einzelausgaben1_116x16.gif
trunk/public/grafiken/gifs1/einzelvers1_107x16.gif
trunk/public/grafiken/gifs1/entstehung1_92x16.gif
trunk/public/grafiken/gifs1/extlinks1_102x16.gif
trunk/public/grafiken/gifs1/foerderabo1_83x16.gif
trunk/public/grafiken/gifs1/forum1_51x16.gif
trunk/public/grafiken/gifs1/forum1_56x16.gif
trunk/public/grafiken/gifs1/geschenkabo1_103x16.gif
trunk/public/grafiken/gifs1/impressum1_76x16.gif
trunk/public/grafiken/gifs1/inhalt1_48x16.gif
trunk/public/grafiken/gifs1/interview1_72x16.gif
trunk/public/grafiken/gifs1/journal1_60x16.gif
trunk/public/grafiken/gifs1/kontakt1_61x16.gif
trunk/public/grafiken/gifs1/kontaktformular1_134x16.gif
trunk/public/grafiken/gifs1/kuenstler1_67x16.gif
trunk/public/grafiken/gifs1/leseprobe1_72x16.gif
trunk/public/grafiken/gifs1/mediadaten1_85x16.gif
trunk/public/grafiken/gifs1/newsletter1_85x16.gif
trunk/public/grafiken/gifs1/omega1_90x16.gif
trunk/public/grafiken/gifs1/phil-kunst1_156x16.gif
trunk/public/grafiken/gifs1/presse1_45x16.gif
trunk/public/grafiken/gifs1/pressestimmen1_108x16.gif
trunk/public/grafiken/gifs1/redaktion1_75x16.gif
trunk/public/grafiken/gifs1/spezial1_50x16.gif
trunk/public/grafiken/gifs1/startseite1_74x16.gif
trunk/public/grafiken/gifs1/uebersicht1_72x16.gif
trunk/public/grafiken/gifs1/veranstaltungen1_130x16.gif
trunk/public/grafiken/gifs1/verlag-dbr1_240x16.gif
trunk/public/grafiken/gifs1/verlag1_50x16.gif
trunk/public/grafiken/gifs1/vorschau1_73x16.gif
trunk/public/grafiken/gifs1/zeitschriften1_102x16.gif
trunk/public/grafiken/gifs2/
trunk/public/grafiken/gifs2/11bis20_2_29x16.gif
trunk/public/grafiken/gifs2/1bis10_2_22x16.gif
trunk/public/grafiken/gifs2/21bis30_2_31x16.gif
trunk/public/grafiken/gifs2/Thumbs.db
trunk/public/grafiken/gifs2/aboservice2_83x16.gif
trunk/public/grafiken/gifs2/agb2_26x16.gif
trunk/public/grafiken/gifs2/aktuell2_58x16.gif
trunk/public/grafiken/gifs2/ansprechpartner2_131x16.gif
trunk/public/grafiken/gifs2/ausgaben2_71x16.gif
trunk/public/grafiken/gifs2/ausgaben2_78x16.gif
trunk/public/grafiken/gifs2/autoren2_64x16.gif
trunk/public/grafiken/gifs2/bestellen2_71x16.gif
trunk/public/grafiken/gifs2/buchprogramm2_114x16.gif
trunk/public/grafiken/gifs2/buchprogramm2_123x16.gif
trunk/public/grafiken/gifs2/buecher2_53x16.gif
trunk/public/grafiken/gifs2/buecher2_62x16.gif
trunk/public/grafiken/gifs2/datenschutz2_97x16.gif
trunk/public/grafiken/gifs2/dbr2_101x16.gif
trunk/public/grafiken/gifs2/dbr_jfp2_249x16.gif
trunk/public/grafiken/gifs2/editorial2_69x16.gif
trunk/public/grafiken/gifs2/einzelausgaben2_116x16.gif
trunk/public/grafiken/gifs2/einzelvers2_107x16.gif
trunk/public/grafiken/gifs2/entstehung2_92x16.gif
trunk/public/grafiken/gifs2/extlinks2_102x16.gif
trunk/public/grafiken/gifs2/foerderabo2_83x16.gif
trunk/public/grafiken/gifs2/forum2_51x16.gif
trunk/public/grafiken/gifs2/forum2_56x16.gif
trunk/public/grafiken/gifs2/geschenkabo2_103x16.gif
trunk/public/grafiken/gifs2/impressum2_76x16.gif
trunk/public/grafiken/gifs2/inhalt2_48x16.gif
trunk/public/grafiken/gifs2/interview2_72x16.gif
trunk/public/grafiken/gifs2/journal2_60x16.gif
trunk/public/grafiken/gifs2/kontakt2_61x16.gif
trunk/public/grafiken/gifs2/kontaktformular2_134x16.gif
trunk/public/grafiken/gifs2/kuenstler2_67x16.gif
trunk/public/grafiken/gifs2/leseprobe2_72x16.gif
trunk/public/grafiken/gifs2/mediadaten2_85x16.gif
trunk/public/grafiken/gifs2/newsletter2_85x16.gif
trunk/public/grafiken/gifs2/omega2_112x16.gif
trunk/public/grafiken/gifs2/phil-kunst2_156x16.gif
trunk/public/grafiken/gifs2/presse2_45x16.gif
trunk/public/grafiken/gifs2/pressestimmen2_108x16.gif
trunk/public/grafiken/gifs2/redaktion2_75x16.gif
trunk/public/grafiken/gifs2/spezial2_50x16.gif
trunk/public/grafiken/gifs2/startseite2_74x16.gif
trunk/public/grafiken/gifs2/uebersicht2_72x16.gif
trunk/public/grafiken/gifs2/veranstaltungen2_130x16.gif
trunk/public/grafiken/gifs2/verlag-dbr2_240x16.gif
trunk/public/grafiken/gifs2/verlag2_50x16.gif
trunk/public/grafiken/gifs2/vorschau2_73x16.gif
trunk/public/grafiken/gifs2/zeitschriften2_102x16.gif
trunk/public/grafiken/impressum.gif
trunk/public/grafiken/omega_logo_173x93.gif
trunk/public/grafiken/pdfsymbol_80x20.gif
trunk/public/grafiken/reiter_logo_80x130.gif
Added: trunk/public/grafiken/Thumbs.db
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/Thumbs.db
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/abstand_16x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/abstand_16x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/dbr_klein_25x37.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/dbr_klein_25x37.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/dbr_logo_142x93.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/dbr_logo_142x93.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/11bis20_1_29x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/11bis20_1_29x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/1bis10_1_22x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/1bis10_1_22x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/21bis30_1_31x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/21bis30_1_31x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/Thumbs.db
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/Thumbs.db
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/aboservice1_83x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/aboservice1_83x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/agb1_26x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/agb1_26x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/aktuell1_58x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/aktuell1_58x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/ansprechpartner1_131x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/ansprechpartner1_131x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/ausgaben1_71x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/ausgaben1_71x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/ausgaben1_78x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/ausgaben1_78x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/autoren1_64x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/autoren1_64x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/bestellen1_71x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/bestellen1_71x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/buchprogramm1_114x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/buchprogramm1_114x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/buchprogramm1_123x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/buchprogramm1_123x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/buecher1_53x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/buecher1_53x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/buecher1_62x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/buecher1_62x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/copyright_250x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/copyright_250x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/copyright_96x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/copyright_96x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/datenschutz1_97x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/datenschutz1_97x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/dbr1_101x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/dbr1_101x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/dbr_jfp1_249x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/dbr_jfp1_249x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/editorial1_69x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/editorial1_69x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/einzelausgaben1_116x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/einzelausgaben1_116x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/einzelvers1_107x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/einzelvers1_107x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/entstehung1_92x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/entstehung1_92x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/extlinks1_102x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/extlinks1_102x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/foerderabo1_83x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/foerderabo1_83x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/forum1_51x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/forum1_51x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/forum1_56x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/forum1_56x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/geschenkabo1_103x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/geschenkabo1_103x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/impressum1_76x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/impressum1_76x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/inhalt1_48x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/inhalt1_48x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/interview1_72x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/interview1_72x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/journal1_60x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/journal1_60x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/kontakt1_61x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/kontakt1_61x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/kontaktformular1_134x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/kontaktformular1_134x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/kuenstler1_67x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/kuenstler1_67x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/leseprobe1_72x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/leseprobe1_72x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/mediadaten1_85x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/mediadaten1_85x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/newsletter1_85x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/newsletter1_85x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/omega1_90x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/omega1_90x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/phil-kunst1_156x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/phil-kunst1_156x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/presse1_45x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/presse1_45x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/pressestimmen1_108x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/pressestimmen1_108x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/redaktion1_75x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/redaktion1_75x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/spezial1_50x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/spezial1_50x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/startseite1_74x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/startseite1_74x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/uebersicht1_72x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/uebersicht1_72x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/veranstaltungen1_130x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/veranstaltungen1_130x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/verlag-dbr1_240x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/verlag-dbr1_240x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/verlag1_50x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/verlag1_50x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/vorschau1_73x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/vorschau1_73x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs1/zeitschriften1_102x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs1/zeitschriften1_102x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/11bis20_2_29x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/11bis20_2_29x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/1bis10_2_22x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/1bis10_2_22x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/21bis30_2_31x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/21bis30_2_31x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/Thumbs.db
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/Thumbs.db
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/aboservice2_83x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/aboservice2_83x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/agb2_26x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/agb2_26x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/aktuell2_58x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/aktuell2_58x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/ansprechpartner2_131x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/ansprechpartner2_131x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/ausgaben2_71x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/ausgaben2_71x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/ausgaben2_78x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/ausgaben2_78x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/autoren2_64x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/autoren2_64x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/bestellen2_71x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/bestellen2_71x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/buchprogramm2_114x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/buchprogramm2_114x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/buchprogramm2_123x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/buchprogramm2_123x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/buecher2_53x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/buecher2_53x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/buecher2_62x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/buecher2_62x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/datenschutz2_97x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/datenschutz2_97x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/dbr2_101x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/dbr2_101x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/dbr_jfp2_249x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/dbr_jfp2_249x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/editorial2_69x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/editorial2_69x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/einzelausgaben2_116x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/einzelausgaben2_116x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/einzelvers2_107x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/einzelvers2_107x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/entstehung2_92x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/entstehung2_92x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/extlinks2_102x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/extlinks2_102x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/foerderabo2_83x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/foerderabo2_83x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/forum2_51x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/forum2_51x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/forum2_56x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/forum2_56x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/geschenkabo2_103x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/geschenkabo2_103x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/impressum2_76x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/impressum2_76x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/inhalt2_48x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/inhalt2_48x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/interview2_72x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/interview2_72x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/journal2_60x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/journal2_60x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/kontakt2_61x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/kontakt2_61x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/kontaktformular2_134x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/kontaktformular2_134x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/kuenstler2_67x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/kuenstler2_67x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/leseprobe2_72x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/leseprobe2_72x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/mediadaten2_85x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/mediadaten2_85x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/newsletter2_85x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/newsletter2_85x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/omega2_112x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/omega2_112x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/phil-kunst2_156x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/phil-kunst2_156x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/presse2_45x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/presse2_45x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/pressestimmen2_108x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/pressestimmen2_108x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/redaktion2_75x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/redaktion2_75x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/spezial2_50x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/spezial2_50x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/startseite2_74x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/startseite2_74x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/uebersicht2_72x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/uebersicht2_72x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/veranstaltungen2_130x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/veranstaltungen2_130x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/verlag-dbr2_240x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/verlag-dbr2_240x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/verlag2_50x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/verlag2_50x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/vorschau2_73x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/vorschau2_73x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/gifs2/zeitschriften2_102x16.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/gifs2/zeitschriften2_102x16.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/impressum.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/impressum.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/omega_logo_173x93.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/omega_logo_173x93.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/pdfsymbol_80x20.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/pdfsymbol_80x20.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/grafiken/reiter_logo_80x130.gif
===================================================================
(Binary files differ)
Property changes on: trunk/public/grafiken/reiter_logo_80x130.gif
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wy...@us...> - 2010-01-08 19:10:02
|
Revision: 1658
http://logilogi.svn.sourceforge.net/logilogi/?rev=1658&view=rev
Author: wybow
Date: 2010-01-08 19:09:55 +0000 (Fri, 08 Jan 2010)
Log Message:
-----------
Updated config-files
Modified Paths:
--------------
trunk/config/config.rb.tmpl
trunk/config/deploy.rb.tmpl
Modified: trunk/config/config.rb.tmpl
===================================================================
--- trunk/config/config.rb.tmpl 2010-01-08 16:59:41 UTC (rev 1657)
+++ trunk/config/config.rb.tmpl 2010-01-08 19:09:55 UTC (rev 1658)
@@ -84,6 +84,13 @@
:header_description => 'LogiLogi.org - Short hypertexts, easy linking and
meritocratic rating; Philosophy beyond the book - LogiLogi.org'.squeeze(" \n"),
+ # If you wish to give LogiLogi a custom header, or want to
+ # re-style it, you can change the following settings
+ #
+ :header_partial => 'layouts/dbr_header',
+ :footer_partial => 'layouts/dbr_footer',
+ :custom_css => 'dbr',
+
### Do not modify settings below unless you know what you do
# The minimum size of diffs in words.
@@ -116,14 +123,6 @@
:member_power => 1.0,
:admin_power => 3.0,
- # If you wish to give LogiLogi a custom header, or want to
- # re-style it, you can change the following settings
- #
- :header_partial => 'layouts/dbr_header',
- :footer_partial => 'layouts/dbr_footer',
- :custom_css => nil,
-
- ### Don't change the settings below unless you know what you do.
# They don't need to be modified for normal use and they cannot be
# changed once the database is created.
Modified: trunk/config/deploy.rb.tmpl
===================================================================
--- trunk/config/deploy.rb.tmpl 2010-01-08 16:59:41 UTC (rev 1657)
+++ trunk/config/deploy.rb.tmpl 2010-01-08 19:09:55 UTC (rev 1658)
@@ -2,7 +2,9 @@
set :stage, "edge" unless variables[:stage]
# language for all but global needed
-set :available_languages, ["en","fr","es"]
+available_languages = ["en","fr","es","de"]
+set :available_databases, available_languages
+set :available_sites, (available_languages + ["dbr"])
set :application, "logilogi"
set :repository, "https://logilogi.svn.sourceforge.net/svnroot/logilogi/trunk"
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wy...@us...> - 2010-01-08 16:59:49
|
Revision: 1657
http://logilogi.svn.sourceforge.net/logilogi/?rev=1657&view=rev
Author: wybow
Date: 2010-01-08 16:59:41 +0000 (Fri, 08 Jan 2010)
Log Message:
-----------
Updated update scripts
Modified Paths:
--------------
trunk/lib/capistrano/global.rb
Modified: trunk/lib/capistrano/global.rb
===================================================================
--- trunk/lib/capistrano/global.rb 2010-01-08 15:18:56 UTC (rev 1656)
+++ trunk/lib/capistrano/global.rb 2010-01-08 16:59:41 UTC (rev 1657)
@@ -5,14 +5,14 @@
namespace :deploy do
desc "Updates the code and restarts"
task :default do
- for_each_language(["logilogi:deploy:default_no_webserver_restart"])
+ for_each_site(["logilogi:deploy:default_no_webserver_restart"])
find_and_execute_task("logilogi:webserver:restart")
end
desc "Updates, executes migrations / rebuilds the db (only for edge stage) and restarts daemons"
task :full do
default
- for_each_language(["logilogi:deploy:full_no_webserver_restart"])
+ for_each_site(["logilogi:deploy:full_no_webserver_restart"])
find_and_execute_task("logilogi:webserver:restart")
end
end
@@ -24,36 +24,43 @@
namespace :server do
task :restart do
- for_each_language(["logilogi:mongrels:restart"])
+ for_each_site(["logilogi:mongrels:restart"])
find_and_execute_task("logilogi:webserver:restart")
end
end
namespace :daemons do
task :restart do
- for_each_language(["logilogi:daemons:restart"])
+ for_each_database(["logilogi:daemons:restart"])
end
task :start do
- for_each_language(["logilogi:daemons:start"])
+ for_each_database(["logilogi:daemons:start"])
end
task :stop do
- for_each_language(["logilogi:daemons:stop"])
+ for_each_database(["logilogi:daemons:stop"])
end
end
### Helper functions
- def for_each_language(tasks)
- available_languages.each do |language_code|
- language_run(tasks, language_code)
+ def for_each_site(tasks)
+ available_sites.each do |site_code|
+ language_run(tasks, site_code)
end
end
- def language_run(tasks, language_code)
+ def for_each_database(tasks)
+ available_databases.each do |site_code|
+ language_run(tasks, site_code)
+ end
+ end
+
+
+ def site_run(tasks, site_code)
tasks.each do |task|
- system "cap #{task} -S stage=#{stage} -S language=#{language_code}"
+ system "cap #{task} -S stage=#{stage} -S language=#{site_code}"
end
end
end
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wy...@us...> - 2010-01-08 15:19:03
|
Revision: 1656
http://logilogi.svn.sourceforge.net/logilogi/?rev=1656&view=rev
Author: wybow
Date: 2010-01-08 15:18:56 +0000 (Fri, 08 Jan 2010)
Log Message:
-----------
Added Der Blaue Reiter header & footer
Modified Paths:
--------------
trunk/app/views/layouts/blank.html.erb
trunk/app/views/layouts/broad.html.erb
trunk/app/views/layouts/main.html.erb
trunk/config/config.rb.tmpl
trunk/db/schema.rb
Added Paths:
-----------
trunk/app/views/layouts/_dbr_footer.html.erb
trunk/app/views/layouts/_dbr_header.html.erb
trunk/app/views/layouts/_header.html.erb
trunk/app/views/layouts/_lirmm_header.html.erb
trunk/db/migrate/20100108110804_global_config_header_footer.rb
trunk/public/stylesheets/dbr.css
Removed Paths:
-------------
trunk/app/views/layouts/_lirmm_title_bar.html.erb
trunk/app/views/layouts/_title_bar.html.erb
Added: trunk/app/views/layouts/_dbr_footer.html.erb
===================================================================
--- trunk/app/views/layouts/_dbr_footer.html.erb (rev 0)
+++ trunk/app/views/layouts/_dbr_footer.html.erb 2010-01-08 15:18:56 UTC (rev 1656)
@@ -0,0 +1,44 @@
+<div class="spacer"></div>
+<div id="footer">
+ <div id="footer_bar">
+ <table width="760" border="0" cellspacing="0" cellpadding="0">
+ <tr>
+ <td width="25"><img src="grafiken/dbr_klein_25x37.gif" alt="" width="25" height="37" border="0"></td>
+ <td width="735">
+ <table width="735" border="0" cellspacing="0" cellpadding="0" height="37">
+ <tr height="13">
+ <td width="339" height="13"></td>
+ <td width="146" height="13"></td>
+
+ <td width="250" height="13"></td>
+ </tr>
+ <tr height="1">
+ <td bgcolor="#cccccc" width="339" height="1"></td>
+ <td bgcolor="#cccccc" width="146" height="1"></td>
+ <td bgcolor="#cccccc" width="250" height="1"></td>
+ </tr>
+ <tr height="23">
+ <td valign="bottom" width="339" height="23"><a href="http://www.derblauereiter.de/impress.html"><img id="impressum1_76x16" src="grafiken/gifs1/impressum1_76x16.gif" alt="" name="impressum1_76x16" width="76" height="16" border="0"></a><img src="grafiken/abstand_16x16.gif" alt="" width="16" height="16" border="0"><a href="http://www.derblauereiter.de/agb.html"><img id="agb1_26x16" src="grafiken/gifs1/agb1_26x16.gif" alt="bla" border="0" ></a><img src="grafiken/abstand_16x16.gif" alt="" width="16" height="16" border="0"><a href="http://www.derblauereiter.de/media.html"><img id="mediadaten1_85x16" src="grafiken/gifs1/mediadaten1_85x16.gif" alt="" name="mediadaten1_85x16" width="85" height="16" border="0"></a><img src="grafiken/abstand_16x16.gif" alt="" width="16" height="16" border="0"><a href="http://www.derblauereiter.de/kontakt.html"><img id="kontakt1_61x16" src="grafiken/gifs1/kontakt1_61x16.gif" alt="" name="kontakt1_61x16" width="61" height="16" border="0"></a></td>
+
+ <td valign="bottom" width="146" height="23"></td>
+ <td valign="bottom" width="250" height="23"><a href="http://www.derblauereiter.de/omegaverlag/index.html"><img src="grafiken/gifs1/copyright_250x16.gif" alt="" width="250" height="16" border="0"></a></td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+
+ </div>
+ <div class="about_bar">
+ <div class="panel_content_padding">
+ <%= _('Best viewed with') %> <a href="http://www.mozilla.com/firefox/"><%= _('Firefox') %></a> | <a href="http://foundation.logilogi.org/2008/5/6/logilogi-manta-in-public-beta"><%= _('About LogiLogi') %></a> | <a href="mailto:fou...@lo..."><%= _('Contact us') %></a>
+ </div>
+ </div>
+ <div class="copyright">
+ <div class="panel_content_padding">
+ © 2007-2009 <a href="http://foundation.logilogi.org"><%= _('The LogiLogi Foundation') %></a>.
+ <a href="http://en.logilogi.org/Development/Logi_Logi=Wybo_Wiersma_32">LogiLogi is Free Software</a> and licensed under the <a href="http://www.fsf.org/licensing/licenses/agpl-3.0.html">Affero GPL v3</a> <%= _('which means that the source code is') + ' ' + link_to('available for download', source_cache_url) %>.<br />
+ <%= _('All content is available under the') %> <a href="http://creativecommons.org/licenses/by-sa/3.0/"><%= _('Creative Commons Attribution-Share Alike License') %></a>
+ </div>
+ </div>
+</div><!-- /footer -->
Added: trunk/app/views/layouts/_dbr_header.html.erb
===================================================================
--- trunk/app/views/layouts/_dbr_header.html.erb (rev 0)
+++ trunk/app/views/layouts/_dbr_header.html.erb 2010-01-08 15:18:56 UTC (rev 1656)
@@ -0,0 +1,70 @@
+<div id="header_bar">
+ <table width="760" border="0" cellspacing="0" cellpadding="0">
+ <tr height="130">
+ <td height="130">
+
+ <table width="760" border="0" cellspacing="0" cellpadding="0">
+ <tr>
+ <td width="80"><a href="http://www.derblauereiter.de/index.html"><img src="grafiken/reiter_logo_80x130.gif" alt="" width="80" height="130" border="0"></a></td>
+ <td width="680">
+
+ <table width="680" border="0" cellspacing="0" cellpadding="0" height="130">
+ <tr height="25">
+ <td height="25"></td>
+ </tr>
+ <tr height="105">
+ <td align="right" valign="top" width="680"><a title="der blaue reiter Verlag für Philosophie" href="http://www.derblauereiter.de/omegaverlag/index.html"><img id="omega1_90x16" src="grafiken/gifs1/verlag-dbr1_240x16.gif" alt="" name="omega1_90x16" width="240" height="16" border="0"></a><br>
+ <img src="grafiken/abstand_16x16.gif" alt="" width="16" height="7" border="0"><br>
+ <a title="Buchprogramm" href="http://www.derblauereiter.de/omegaverlag/buecher.html"><img id="buecher1_62x16" src="grafiken/gifs1/buecher1_62x16.gif" alt="" name="buecher1_62x16" width="62" height="16" border="0"></a></td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+ </table>
+
+ </td>
+ </tr>
+ <tr height="8">
+ <td height="8"></td>
+ </tr>
+ <tr height="1">
+ <td bgcolor="#cccccc" height="1"></td>
+ </tr>
+ <tr height="5">
+ <td height="5"></td>
+ </tr>
+ <tr height="16">
+ <td height="16"><a href="http://www.derblauereiter.de/index.html"><img id="startseite1_74x16" src="grafiken/gifs1/startseite1_74x16.gif" alt="" name="startseite1_74x16" width="74" height="16" border="0"></a><img src="grafiken/abstand_16x16.gif" alt="" width="16" height="16" border="0"><a href="http://www.derblauereiter.de/ausg_21-30/ausg_21-30.html"><img id="ausgaben_71x16" src="grafiken/gifs1/ausgaben1_71x16.gif" alt="" name="ausgaben_71x16" width="71" height="16" border="0"></a><img src="grafiken/abstand_16x16.gif" alt="" width="16" height="16" border="0"><a href="http://www.derblauereiter.de/bestellen.html"><img id="bestellen1_71x16" src="grafiken/gifs1/bestellen1_71x16.gif" alt="" name="bestellen1_71x16" width="71" height="16" border="0"></a><img src="grafiken/abstand_16x16.gif" alt="" width="16" height="16" border="0"><a href="http://www.derblauereiter.de/omegaverlag/verlag.html" target="_blank"><img id="verlag1_50x16" src="grafiken/gifs1/verlag1_50x16.gif" alt="bla" border="0" ></a><img src="grafiken/abstand_16x16.gif" alt="" width="16" height="16" border="0"><img id="aktuell1_58x16" src="grafiken/gifs2/veranstaltungen2_130x16.gif" alt="" name="aktuell1_58x16" width="130" height="16" border="0"><img src="grafiken/abstand_16x16.gif" alt="" width="16" height="16" border="0"><a href="http://www.derblauereiter.de/newsletter.html"><img id="newsletter1_85x16" src="grafiken/gifs1/newsletter1_85x16.gif" alt="" name="newsletter1_85x16" width="85" height="16" border="0"></a><img src="grafiken/abstand_16x16.gif" alt="" width="148" height="16" border="0"><a href="http://www.derblauereiter.de/forum.html"><img id="forum1_51x16" src="grafiken/gifs1/forum1_51x16.gif" alt="bla" border="0" ></a></td>
+ </tr>
+ <tr height="3">
+ <td height="3"></td>
+ </tr>
+ <tr height="1">
+ <td bgcolor="#cccccc" height="1"></td>
+ </tr>
+ </table>
+</div>
+<div id="header">
+ <div id="sessions">
+ <% if current_user.anonymous? %>
+ <%= link_to "Login to your account", new_user_session_url %> |
+ <%= link_to "Signup for a new account", new_user_url %>
+ <% else %>
+ Welcome <%= truncate(current_user.name, :length => 15) %> |
+ <%= link_to "User page", user_ll_url(current_user) %> |
+ <%= link_to "Preferences", edit_user_url(current_user) %> |
+ <%= link_to "Logout", user_session_path, :method => :delete %>
+ <% end %>
+ </div>
+ <div id="primarytabs">
+ <ul>
+ <li id="primarytabs_main"><%= link_to _('main'), root_url %></li>
+ <li id="primarytabs_logis"><%= link_to _('topics & logis'), browse_logis_url(:ll_link_string => nil) %></li>
+ <li id="primarytabs_changes"><%= link_to _('changes'), changes_url %></li>
+ <li id="primarytabs_groups"><%= link_to _('groups'), peer_groups_url %></li>
+ <li id="primarytabs_users"><%= link_to _('users'), users_url %></li>
+ </ul>
+ </div>
+ <div class="spacer"></div>
+</div>
Added: trunk/app/views/layouts/_header.html.erb
===================================================================
--- trunk/app/views/layouts/_header.html.erb (rev 0)
+++ trunk/app/views/layouts/_header.html.erb 2010-01-08 15:18:56 UTC (rev 1656)
@@ -0,0 +1,57 @@
+<div id="network_bar">
+ <div class="panel_content_padding">
+ <%= _('Part of the LogiLogi Network') %>:
+ <a href="http://foundation.logilogi.org">The LogiLogi Foundation</a>
+ - <b>LogiLogi.org</b>
+ <% GlobalConfig.available_language_codes.each do |l_code| %>
+ <% if l_code == GlobalConfig.language_code %>
+ <b>[<%= l_code.camelcase %>]</b>
+ <% else %>
+ <%= site_link(:text => '[' + l_code.camelcase + ']', :language => l_code) %>
+ <% end %>
+ <% end %>
+ <a href="http://www.logilogi.org/pub/doc/app/">(docs, </a>
+ <a href="http://sourceforge.net/projects/logilogi">development, </a>
+ <a href="https://lists.sourceforge.net/lists/listinfo/logilogi-list">mailing-list)</a>
+ </div>
+</div>
+<div id="header">
+ <div style="float:left">
+ <img src="/images/header_background.png" width="6" height="68"/>
+ </div>
+ <div id="header_content">
+ <a href="/"><img src="/images/logo.png" alt="Logo" /></a>
+ <div id="header_text">
+ <div id="site_link">
+ <%= site_link(:length => 17) %>
+ </div>
+ <div id="version" title="The second version of LogiLogi, now in public beta">
+ Manta
+ </div>
+ <div id="title_line">
+ <%= GlobalConfig.title_line %>
+ </div>
+ </div>
+ </div>
+ <div id="sessions">
+ <% if current_user.anonymous? %>
+ <%= link_to "Login to your account", new_user_session_url %> |
+ <%= link_to "Signup for a new account", new_user_url %>
+ <% else %>
+ Welcome <%= truncate(current_user.name, :length => 15) %> |
+ <%= link_to "User page", user_ll_url(current_user) %> |
+ <%= link_to "Preferences", edit_user_url(current_user) %> |
+ <%= link_to "Logout", user_session_path, :method => :delete %>
+ <% end %>
+ </div>
+ <div id="primarytabs">
+ <ul>
+ <li id="primarytabs_main"><%= link_to _('main'), root_url %></li>
+ <li id="primarytabs_logis"><%= link_to _('topics & logis'), browse_logis_url(:ll_link_string => nil) %></li>
+ <li id="primarytabs_changes"><%= link_to _('changes'), changes_url %></li>
+ <li id="primarytabs_groups"><%= link_to _('groups'), peer_groups_url %></li>
+ <li id="primarytabs_users"><%= link_to _('users'), users_url %></li>
+ </ul>
+ </div>
+ <div class="spacer"></div>
+</div>
Copied: trunk/app/views/layouts/_lirmm_header.html.erb (from rev 1655, trunk/app/views/layouts/_lirmm_title_bar.html.erb)
===================================================================
--- trunk/app/views/layouts/_lirmm_header.html.erb (rev 0)
+++ trunk/app/views/layouts/_lirmm_header.html.erb 2010-01-08 15:18:56 UTC (rev 1656)
@@ -0,0 +1,42 @@
+<div id="network_bar">
+ <div class="panel_content_padding">
+ <%= _('Powered by LogiLogi') %>:
+ <a href="http://foundation.logilogi.org">The LogiLogi Foundation</a>
+ - <b>LogiLogi.org</b>
+ <% GlobalConfig.available_language_codes.each do |l_code| %>
+ <%= site_link(:text => '[' + l_code.camelcase + ']', :language => l_code) %>
+ <% end %>
+ <a href="http://www.logilogi.org/pub/doc/app/">(docs, </a>
+ <a href="http://sourceforge.net/projects/logilogi">development, </a>
+ <a href="https://lists.sourceforge.net/lists/listinfo/logilogi-list">mailing-list)</a>
+ </div>
+</div>
+<div id="header">
+ <div id="header_content">
+ <a href="/"><img src="/images/lirmm/logo.png" alt="LogiLogi book logo" /></a>
+ </div>
+ <div style="float:left">
+ <img src="/images/header_background.png" width="6" height="68"/>
+ </div>
+ <div id="sessions">
+ <% if current_user.anonymous? %>
+ <%= link_to "Login to your account", new_user_session_url %> |
+ <%= link_to "Signup for a new account", new_user_url %>
+ <% else %>
+ Welcome <%= truncate(current_user.name, :length => 15) %> |
+ <%= link_to "User page", user_ll_url(current_user) %> |
+ <%= link_to "Preferences", edit_user_url(current_user) %> |
+ <%= link_to "Logout", user_session_path, :method => :delete %>
+ <% end %>
+ </div>
+ <div id="primarytabs">
+ <ul>
+ <li id="primarytabs_main"><%= link_to _('main'), root_url %></li>
+ <li id="primarytabs_logis"><%= link_to _('topics & logis'), browse_logis_url(:ll_link_string => nil) %></li>
+ <li id="primarytabs_changes"><%= link_to _('changes'), changes_url %></li>
+ <li id="primarytabs_groups"><%= link_to _('groups'), peer_groups_url %></li>
+ <li id="primarytabs_users"><%= link_to _('users'), users_url %></li>
+ </ul>
+ </div>
+ <div class="spacer"></div>
+</div>
Deleted: trunk/app/views/layouts/_lirmm_title_bar.html.erb
===================================================================
--- trunk/app/views/layouts/_lirmm_title_bar.html.erb 2009-12-23 21:22:07 UTC (rev 1655)
+++ trunk/app/views/layouts/_lirmm_title_bar.html.erb 2010-01-08 15:18:56 UTC (rev 1656)
@@ -1,42 +0,0 @@
-<div id="network_bar">
- <div class="panel_content_padding">
- <%= _('Powered by LogiLogi') %>:
- <a href="http://foundation.logilogi.org">The LogiLogi Foundation</a>
- - <b>LogiLogi.org</b>
- <% GlobalConfig.available_language_codes.each do |l_code| %>
- <%= site_link(:text => '[' + l_code.camelcase + ']', :language => l_code) %>
- <% end %>
- <a href="http://www.logilogi.org/pub/doc/app/">(docs, </a>
- <a href="http://sourceforge.net/projects/logilogi">development, </a>
- <a href="https://lists.sourceforge.net/lists/listinfo/logilogi-list">mailing-list)</a>
- </div>
-</div>
-<div id="header">
- <div id="header_content">
- <a href="/"><img src="/images/lirmm/logo.png" alt="LogiLogi book logo" /></a>
- </div>
- <div style="float:left">
- <img src="/images/header_background.png" width="6" height="68"/>
- </div>
- <div id="sessions">
- <% if current_user.anonymous? %>
- <%= link_to "Login to your account", new_user_session_url %> |
- <%= link_to "Signup for a new account", new_user_url %>
- <% else %>
- Welcome <%= truncate(current_user.name, :length => 15) %> |
- <%= link_to "User page", user_ll_url(current_user) %> |
- <%= link_to "Preferences", edit_user_url(current_user) %> |
- <%= link_to "Logout", user_session_path, :method => :delete %>
- <% end %>
- </div>
- <div id="primarytabs">
- <ul>
- <li id="primarytabs_main"><%= link_to _('main'), root_url %></li>
- <li id="primarytabs_logis"><%= link_to _('topics & logis'), browse_logis_url(:ll_link_string => nil) %></li>
- <li id="primarytabs_changes"><%= link_to _('changes'), changes_url %></li>
- <li id="primarytabs_groups"><%= link_to _('groups'), peer_groups_url %></li>
- <li id="primarytabs_users"><%= link_to _('users'), users_url %></li>
- </ul>
- </div>
- <div class="spacer"></div>
-</div>
Deleted: trunk/app/views/layouts/_title_bar.html.erb
===================================================================
--- trunk/app/views/layouts/_title_bar.html.erb 2009-12-23 21:22:07 UTC (rev 1655)
+++ trunk/app/views/layouts/_title_bar.html.erb 2010-01-08 15:18:56 UTC (rev 1656)
@@ -1,57 +0,0 @@
-<div id="network_bar">
- <div class="panel_content_padding">
- <%= _('Part of the LogiLogi Network') %>:
- <a href="http://foundation.logilogi.org">The LogiLogi Foundation</a>
- - <b>LogiLogi.org</b>
- <% GlobalConfig.available_language_codes.each do |l_code| %>
- <% if l_code == GlobalConfig.language_code %>
- <b>[<%= l_code.camelcase %>]</b>
- <% else %>
- <%= site_link(:text => '[' + l_code.camelcase + ']', :language => l_code) %>
- <% end %>
- <% end %>
- <a href="http://www.logilogi.org/pub/doc/app/">(docs, </a>
- <a href="http://sourceforge.net/projects/logilogi">development, </a>
- <a href="https://lists.sourceforge.net/lists/listinfo/logilogi-list">mailing-list)</a>
- </div>
-</div>
-<div id="header">
- <div style="float:left">
- <img src="/images/header_background.png" width="6" height="68"/>
- </div>
- <div id="header_content">
- <a href="/"><img src="/images/logo.png" alt="Logo" /></a>
- <div id="header_text">
- <div id="site_link">
- <%= site_link(:length => 17) %>
- </div>
- <div id="version" title="The second version of LogiLogi, now in public beta">
- Manta
- </div>
- <div id="title_line">
- <%= GlobalConfig.title_line %>
- </div>
- </div>
- </div>
- <div id="sessions">
- <% if current_user.anonymous? %>
- <%= link_to "Login to your account", new_user_session_url %> |
- <%= link_to "Signup for a new account", new_user_url %>
- <% else %>
- Welcome <%= truncate(current_user.name, :length => 15) %> |
- <%= link_to "User page", user_ll_url(current_user) %> |
- <%= link_to "Preferences", edit_user_url(current_user) %> |
- <%= link_to "Logout", user_session_path, :method => :delete %>
- <% end %>
- </div>
- <div id="primarytabs">
- <ul>
- <li id="primarytabs_main"><%= link_to _('main'), root_url %></li>
- <li id="primarytabs_logis"><%= link_to _('topics & logis'), browse_logis_url(:ll_link_string => nil) %></li>
- <li id="primarytabs_changes"><%= link_to _('changes'), changes_url %></li>
- <li id="primarytabs_groups"><%= link_to _('groups'), peer_groups_url %></li>
- <li id="primarytabs_users"><%= link_to _('users'), users_url %></li>
- </ul>
- </div>
- <div class="spacer"></div>
-</div>
Modified: trunk/app/views/layouts/blank.html.erb
===================================================================
--- trunk/app/views/layouts/blank.html.erb 2009-12-23 21:22:07 UTC (rev 1655)
+++ trunk/app/views/layouts/blank.html.erb 2010-01-08 15:18:56 UTC (rev 1656)
@@ -1,12 +1,12 @@
<% @page_class += ' blank' %>
<%= render :partial => 'layouts/head' %>
- <%= render :partial => GlobalConfig.title_bar_partial %>
+ <%= render :partial => GlobalConfig.header_partial %>
<%= yield :top_body %>
<%= yield %>
- <%= render :partial => 'layouts/footer' %>
+ <%= render :partial => GlobalConfig.footer_partial %>
<%= render :partial => 'layouts/foot' %>
Modified: trunk/app/views/layouts/broad.html.erb
===================================================================
--- trunk/app/views/layouts/broad.html.erb 2009-12-23 21:22:07 UTC (rev 1655)
+++ trunk/app/views/layouts/broad.html.erb 2010-01-08 15:18:56 UTC (rev 1656)
@@ -1,10 +1,10 @@
<% @page_class += ' broad' %>
<%= render :partial => 'layouts/head' %>
- <%= render :partial => GlobalConfig.title_bar_partial %>
+ <%= render :partial => GlobalConfig.header_partial %>
<%= yield %>
- <%= render :partial => 'layouts/footer' %>
+ <%= render :partial => GlobalConfig.footer_partial %>
<%= render :partial => 'layouts/foot' %>
Modified: trunk/app/views/layouts/main.html.erb
===================================================================
--- trunk/app/views/layouts/main.html.erb 2009-12-23 21:22:07 UTC (rev 1655)
+++ trunk/app/views/layouts/main.html.erb 2010-01-08 15:18:56 UTC (rev 1656)
@@ -1,7 +1,7 @@
<% @page_class += ' main' %>
<%= render :partial => 'layouts/head' %>
- <%= render :partial => GlobalConfig.title_bar_partial %>
+ <%= render :partial => GlobalConfig.header_partial %>
<%= yield :top_body %>
<%= show_flash(:type => 'exposed') %>
@@ -14,6 +14,6 @@
<%= yield :sidebar_body %>
</div>
- <%= render :partial => 'layouts/footer' %>
+ <%= render :partial => GlobalConfig.footer_partial %>
<%= render :partial => 'layouts/foot' %>
Modified: trunk/config/config.rb.tmpl
===================================================================
--- trunk/config/config.rb.tmpl 2009-12-23 21:22:07 UTC (rev 1655)
+++ trunk/config/config.rb.tmpl 2010-01-08 15:18:56 UTC (rev 1656)
@@ -119,7 +119,8 @@
# If you wish to give LogiLogi a custom header, or want to
# re-style it, you can change the following settings
#
- :title_bar_partial => 'layouts/title_bar',
+ :header_partial => 'layouts/dbr_header',
+ :footer_partial => 'layouts/dbr_footer',
:custom_css => nil,
### Don't change the settings below unless you know what you do.
Added: trunk/db/migrate/20100108110804_global_config_header_footer.rb
===================================================================
--- trunk/db/migrate/20100108110804_global_config_header_footer.rb (rev 0)
+++ trunk/db/migrate/20100108110804_global_config_header_footer.rb 2010-01-08 15:18:56 UTC (rev 1656)
@@ -0,0 +1,22 @@
+class GlobalConfigHeaderFooter < ActiveRecord::Migration
+ def self.up
+ add_column :global_configs, :footer_partial, :string, :null => false
+ rename_column :global_configs, :title_bar_partial, :header_partial
+
+ if GlobalConfig.available?
+ GlobalConfigHeaderFooter.update
+ end
+ end
+
+ def self.down
+ remove_column :global_configs, :footer_partial
+ rename_column :global_configs, :header_partial, :title_bar_partial
+ end
+
+ def self.update
+ g_c = GlobalConfig.find(:first)
+ # change as needed
+ g_c.footer_partial = 'layouts/footer'
+ g_c.save
+ end
+end
Modified: trunk/db/schema.rb
===================================================================
--- trunk/db/schema.rb 2009-12-23 21:22:07 UTC (rev 1655)
+++ trunk/db/schema.rb 2010-01-08 15:18:56 UTC (rev 1656)
@@ -9,7 +9,7 @@
#
# It's strongly recommended to check this file into your version control system.
-ActiveRecord::Schema.define(:version => 20091113112526) do
+ActiveRecord::Schema.define(:version => 20100108110804) do
create_table "acts_as_xapian_jobs", :force => true do |t|
t.string "model", :null => false
@@ -99,8 +99,9 @@
t.string "log_log_api_key"
t.string "language_code", :limit => 5, :null => false
t.string "protocol", :limit => 8, :null => false
- t.string "title_bar_partial", :null => false
+ t.string "header_partial", :null => false
t.string "custom_css"
+ t.string "footer_partial", :null => false
end
create_table "invitations", :force => true do |t|
Added: trunk/public/stylesheets/dbr.css
===================================================================
--- trunk/public/stylesheets/dbr.css (rev 0)
+++ trunk/public/stylesheets/dbr.css 2010-01-08 15:18:56 UTC (rev 1656)
@@ -0,0 +1,13 @@
+#header {
+ height: 36px;
+}
+#sessions {
+ float: left;
+ padding-left: 3em;
+ padding-top: 0.4em;
+}
+#header_bar,
+#footer_bar {
+ margin-left: 122px;
+ padding-top: 8px;
+}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wy...@us...> - 2009-12-23 21:22:16
|
Revision: 1655
http://logilogi.svn.sourceforge.net/logilogi/?rev=1655&view=rev
Author: wybow
Date: 2009-12-23 21:22:07 +0000 (Wed, 23 Dec 2009)
Log Message:
-----------
Hid weekly counts, and added vote-counts
Modified Paths:
--------------
trunk/app/controllers/logis_controller.rb
trunk/app/controllers/votes_controller.rb
trunk/app/views/layouts/_lirmm_title_bar.html.erb
trunk/app/views/layouts/_title_bar.html.erb
trunk/app/views/logis/_recent_votes.html.erb
trunk/app/views/main_page/_new_users_or_groups.html.erb
trunk/app/views/main_page/_recent_or_new_logis.html.erb
trunk/app/views/votes/create.js.rjs
Modified: trunk/app/controllers/logis_controller.rb
===================================================================
--- trunk/app/controllers/logis_controller.rb 2009-12-14 17:59:49 UTC (rev 1654)
+++ trunk/app/controllers/logis_controller.rb 2009-12-23 21:22:07 UTC (rev 1655)
@@ -356,7 +356,9 @@
def remarks_and_recent_votes
@remark = Remark.new
- @votes = @logi.rating_for(
+ @votes_count = @logi.rating_for(
+ current_prefs.peer_group).votes.count
+ @positive_votes = @logi.rating_for(
current_prefs.peer_group).votes.positive[0..10]
@remarks = @logi.remarks.find(:all,
:limit => 10, :order => ["created_at DESC"])
Modified: trunk/app/controllers/votes_controller.rb
===================================================================
--- trunk/app/controllers/votes_controller.rb 2009-12-14 17:59:49 UTC (rev 1654)
+++ trunk/app/controllers/votes_controller.rb 2009-12-23 21:22:07 UTC (rev 1655)
@@ -31,7 +31,8 @@
@vote.score = params[:score].to_i
@rating.vote(@vote)
end
- @votes = @rating.votes.positive[0..10]
+ @votes_count = @rating.votes.count
+ @positive_votes = @rating.votes.positive[0..10]
rescue RuntimeError => error
flash.now[:error] = error.to_s
end
Modified: trunk/app/views/layouts/_lirmm_title_bar.html.erb
===================================================================
--- trunk/app/views/layouts/_lirmm_title_bar.html.erb 2009-12-14 17:59:49 UTC (rev 1654)
+++ trunk/app/views/layouts/_lirmm_title_bar.html.erb 2009-12-23 21:22:07 UTC (rev 1655)
@@ -7,7 +7,8 @@
<%= site_link(:text => '[' + l_code.camelcase + ']', :language => l_code) %>
<% end %>
<a href="http://www.logilogi.org/pub/doc/app/">(docs, </a>
- <a href="http://sourceforge.net/projects/logilogi">development)</a>
+ <a href="http://sourceforge.net/projects/logilogi">development, </a>
+ <a href="https://lists.sourceforge.net/lists/listinfo/logilogi-list">mailing-list)</a>
</div>
</div>
<div id="header">
Modified: trunk/app/views/layouts/_title_bar.html.erb
===================================================================
--- trunk/app/views/layouts/_title_bar.html.erb 2009-12-14 17:59:49 UTC (rev 1654)
+++ trunk/app/views/layouts/_title_bar.html.erb 2009-12-23 21:22:07 UTC (rev 1655)
@@ -11,7 +11,8 @@
<% end %>
<% end %>
<a href="http://www.logilogi.org/pub/doc/app/">(docs, </a>
- <a href="http://sourceforge.net/projects/logilogi">development)</a>
+ <a href="http://sourceforge.net/projects/logilogi">development, </a>
+ <a href="https://lists.sourceforge.net/lists/listinfo/logilogi-list">mailing-list)</a>
</div>
</div>
<div id="header">
Modified: trunk/app/views/logis/_recent_votes.html.erb
===================================================================
--- trunk/app/views/logis/_recent_votes.html.erb 2009-12-14 17:59:49 UTC (rev 1654)
+++ trunk/app/views/logis/_recent_votes.html.erb 2009-12-23 21:22:07 UTC (rev 1655)
@@ -1,2 +1,9 @@
-<%= render :partial => 'application/header', :locals => {:title => _("Positive votes"), :id => "voting"} %>
-<%= render :partial => "votes/list", :locals => {:votes => @votes} %>
+<% render :layout => 'application/panel_with_header', :locals => {:title => _("Positive votes"), :id => "voting"} do %>
+ <div class="description">
+ <p><%= @votes_count.to_s + ' votes' +
+ (@positive_votes.size > 0 ? ', ' + @positive_votes.size.to_s +
+ ' are positive' : '') %></p>
+ </div>
+<% end %>
+
+<%= render :partial => "votes/list", :locals => {:votes => @positive_votes} %>
Modified: trunk/app/views/main_page/_new_users_or_groups.html.erb
===================================================================
--- trunk/app/views/main_page/_new_users_or_groups.html.erb 2009-12-14 17:59:49 UTC (rev 1654)
+++ trunk/app/views/main_page/_new_users_or_groups.html.erb 2009-12-23 21:22:07 UTC (rev 1655)
@@ -7,14 +7,14 @@
:description => _("Groups that just have been created")}],
:selected => selected, :id => "newering", :update_selected => true} do %>
<% if selected == "new_users"%>
- <p><%= _('%{nr} users joined last week') % {:nr => @new_users_count} %>.
- <%= link_to _('View all'), users_url() %></p>
+ <p> <!-- <%= _('%{nr} users joined last week') % {:nr => @new_users_count} %>. -->
+ <%= link_to _('View all users'), users_url() %></p>
</div><!-- closes content padding -->
<%= render :partial => 'users/list', :locals => {:users => @new_users} %>
<div><!-- opens a div again -->
<% else %>
- <p><%= _('%{nr} groups created last month') % {:nr => @new_groups_count} %>.
- <%= link_to _('View all'), peer_groups_url() %></p>
+ <p> <!-- <%= _('%{nr} groups created last month') % {:nr => @new_groups_count} %>. -->
+ <%= link_to _('View all groups'), peer_groups_url() %></p>
</p>
<% end %>
<% end %>
Modified: trunk/app/views/main_page/_recent_or_new_logis.html.erb
===================================================================
--- trunk/app/views/main_page/_recent_or_new_logis.html.erb 2009-12-14 17:59:49 UTC (rev 1654)
+++ trunk/app/views/main_page/_recent_or_new_logis.html.erb 2009-12-23 21:22:07 UTC (rev 1655)
@@ -10,13 +10,13 @@
:selected => selected, :id => "recenting", :update_selected => true} do %>
<% if selected == "new_logis" %>
<p>
- <%= _('%{nr} new logis created in the last week') % {:nr => @new_logis_count} %>.
- <%= link_to _('View all'), changes_url(:selected => :new_logis) %>
+ <!-- <%= _('%{nr} new logis created in the last week') % {:nr => @new_logis_count} %>. -->
+ <%= link_to _('View all newly created logis'), changes_url(:selected => :new_logis) %>
</p>
<% else %>
<p>
- <%= _('%{nr} edits in the last week') % {:nr => @recently_changed_logis_count} %>.
- <%= link_to _('View all'), changes_url() %>
+ <!-- <%= _('%{nr} edits in the last week') % {:nr => @recently_changed_logis_count} %>. -->
+ <%= link_to _('View all recent edits'), changes_url() %>
</p>
<% end %>
<% end %>
Modified: trunk/app/views/votes/create.js.rjs
===================================================================
--- trunk/app/views/votes/create.js.rjs 2009-12-14 17:59:49 UTC (rev 1654)
+++ trunk/app/views/votes/create.js.rjs 2009-12-23 21:22:07 UTC (rev 1655)
@@ -1,7 +1,6 @@
page.replace_html 'ratings', :partial => 'votes/show',
:locals => {:vote => @vote, :rating => @rating}
-page.replace_html 'votes', :partial => "logis/recent_votes",
- :locals => {:votes => @votes}
+page.replace_html 'votes', :partial => "logis/recent_votes"
page.replace_html_if_exists 'rating_current',
:partial => "logis/rating_current",
:locals => {:rating => @rating}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wy...@us...> - 2009-12-14 17:59:59
|
Revision: 1654
http://logilogi.svn.sourceforge.net/logilogi/?rev=1654&view=rev
Author: wybow
Date: 2009-12-14 17:59:49 +0000 (Mon, 14 Dec 2009)
Log Message:
-----------
Applied monkey-patch for action-mailer
Modified Paths:
--------------
trunk/app/models/user.rb
Added Paths:
-----------
trunk/config/initializers/action_mailer.rb
Modified: trunk/app/models/user.rb
===================================================================
--- trunk/app/models/user.rb 2009-12-11 22:55:47 UTC (rev 1653)
+++ trunk/app/models/user.rb 2009-12-14 17:59:49 UTC (rev 1654)
@@ -74,7 +74,7 @@
validates_presence_of :email
validates_uniqueness_of :email
validates_format_of :email, :with => /^[A-Za-z0-9_\.\-]+@[A-Za-z0-9\._-]+\.[A-Za-z]+$/,
- :message => "is incorrect, please check for typo's"
+ :message => "is incorrect, please check for typos"
validates_uniqueness_of :openid_identifier, :allow_blank => true
validates_length_of :password, :minimum => 6, :on => :create, :allow_nil => true
Added: trunk/config/initializers/action_mailer.rb
===================================================================
--- trunk/config/initializers/action_mailer.rb (rev 0)
+++ trunk/config/initializers/action_mailer.rb 2009-12-14 17:59:49 UTC (rev 1654)
@@ -0,0 +1,19 @@
+# TODO remove if rails bug fixed
+# https://rails.lighthouseapp.com/projects/8994/tickets/2340-action-mailer-cant-deliver-mail-via-smtp-on-ruby-191
+
+module ActionMailer
+ class Base
+ def perform_delivery_smtp(mail)
+ destinations = mail.destinations
+ mail.ready_to_send
+ sender = (mail['return-path'] && mail['return-path'].spec) || Array(mail.from).first
+
+ smtp = Net::SMTP.new(smtp_settings[:address], smtp_settings[:port])
+ smtp.enable_starttls_auto if smtp_settings[:enable_starttls_auto] && smtp.respond_to?(:enable_starttls_auto)
+ smtp.start(smtp_settings[:domain], smtp_settings[:user_name], smtp_settings[:password],
+ smtp_settings[:authentication]) do |smtp|
+ smtp.sendmail(mail.encoded, sender, destinations)
+ end
+ end
+ end
+end
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wy...@us...> - 2009-12-11 22:55:55
|
Revision: 1653
http://logilogi.svn.sourceforge.net/logilogi/?rev=1653&view=rev
Author: wybow
Date: 2009-12-11 22:55:47 +0000 (Fri, 11 Dec 2009)
Log Message:
-----------
Fixed small bug in magick corners causing done_tag empty error
Modified Paths:
--------------
trunk/app/views/layouts/_title_bar.html.erb
trunk/public/javascripts/magick_corners.js
Modified: trunk/app/views/layouts/_title_bar.html.erb
===================================================================
--- trunk/app/views/layouts/_title_bar.html.erb 2009-12-09 17:15:34 UTC (rev 1652)
+++ trunk/app/views/layouts/_title_bar.html.erb 2009-12-11 22:55:47 UTC (rev 1653)
@@ -19,7 +19,7 @@
<img src="/images/header_background.png" width="6" height="68"/>
</div>
<div id="header_content">
- <a href="/"><img src="/images/logo.png" alt="LogiLogi book logo" /></a>
+ <a href="/"><img src="/images/logo.png" alt="Logo" /></a>
<div id="header_text">
<div id="site_link">
<%= site_link(:length => 17) %>
Modified: trunk/public/javascripts/magick_corners.js
===================================================================
--- trunk/public/javascripts/magick_corners.js 2009-12-09 17:15:34 UTC (rev 1652)
+++ trunk/public/javascripts/magick_corners.js 2009-12-11 22:55:47 UTC (rev 1653)
@@ -98,14 +98,19 @@
// // Protected Methods
- add_run: function(done_tag, selector_options) {
+ initialize_runs: function(done_tag) {
if (Object.isUndefined(this.runs[done_tag])) {
this.runs[done_tag] = [];
}
+ },
+
+ add_run: function(done_tag, selector_options) {
+ this.initialize_runs(done_tag);
this.runs[done_tag].push(selector_options);
},
run_runners: function(done_tag) {
+ this.initialize_runs(done_tag);
this.runs[done_tag].each(function(selector_and_options) {
this.run_runner(selector_and_options[0], selector_and_options[1], done_tag);
}.bind(this));
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wy...@us...> - 2009-12-09 17:15:48
|
Revision: 1652
http://logilogi.svn.sourceforge.net/logilogi/?rev=1652&view=rev
Author: wybow
Date: 2009-12-09 17:15:34 +0000 (Wed, 09 Dec 2009)
Log Message:
-----------
Rails 2.3.5 ready
Modified Paths:
--------------
trunk/app/models/link.rb
trunk/config/environment.rb
trunk/test/unit/context_test.rb
Modified: trunk/app/models/link.rb
===================================================================
--- trunk/app/models/link.rb 2009-12-09 15:52:52 UTC (rev 1651)
+++ trunk/app/models/link.rb 2009-12-09 17:15:34 UTC (rev 1652)
@@ -140,7 +140,9 @@
# Parses a link_hash from a link_string
#
# The syntax is as follows:
- # <tag>(/<tag>)*(<logi>)?(<logi_version>)?(<spec suffix>)?
+ # <tag>(/<tag>)*(<logi>(<logi_version>)?)?(<spec suffix>)?
+ #
+ # Plus optionally a preceding url which will be stripped.
#
# with:
# <tag> = ([\w._-])+
@@ -149,13 +151,14 @@
# <spec suffix> = \$stance=<stance>
#
# Examples:
- # Foucault==v0
+ # https://en.so.logilogi.org/Foucault
+ # Foucault=John_Johnson_2=v1
# Economics/Foucault/Non_Existing_Word/Botanics
#
def self.hash_from_s(link_string)
if GlobalConfig.done_with_basics?
- if link_string =~ /\:\d+/
- link_string.gsub!(/^.*?\:\d+\//,"")
+ if link_string =~ /\/\//
+ link_string.gsub!(/^.*?\/\/[^\/]+\//,"")
end
end
link_string =~ Const::Link::DISSECT_LINK_RE
Modified: trunk/config/environment.rb
===================================================================
--- trunk/config/environment.rb 2009-12-09 15:52:52 UTC (rev 1651)
+++ trunk/config/environment.rb 2009-12-09 17:15:34 UTC (rev 1652)
@@ -4,7 +4,7 @@
# you don't control web/app server and can't set it the proper way
# ENV['RAILS_ENV'] ||= 'production'
-RAILS_GEM_VERSION = '2.3.4' unless defined? RAILS_GEM_VERSION
+RAILS_GEM_VERSION = '2.3.5' unless defined? RAILS_GEM_VERSION
# Bootstrap the Rails environment, frameworks, and default configuration
require File.join(File.dirname(__FILE__), 'boot')
Modified: trunk/test/unit/context_test.rb
===================================================================
--- trunk/test/unit/context_test.rb 2009-12-09 15:52:52 UTC (rev 1651)
+++ trunk/test/unit/context_test.rb 2009-12-09 17:15:34 UTC (rev 1652)
@@ -123,7 +123,7 @@
def test_reduced_matching_logis
c = Context.new(Link.new_from_s('Logi_Logi/Hubba'))
assert_equal 2, c.reduced_matching_logis.size
- assert_equal logis(:logi_logi), c.reduced_matching_logis.first
+ assert c.reduced_matching_logis.include?(logis(:logi_logi))
# reduced, unordered
c = Context.new(Link.new_from_s('Manta/Logi_Logi/Hubba'))
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wy...@us...> - 2009-12-09 15:53:01
|
Revision: 1651
http://logilogi.svn.sourceforge.net/logilogi/?rev=1651&view=rev
Author: wybow
Date: 2009-12-09 15:52:52 +0000 (Wed, 09 Dec 2009)
Log Message:
-----------
Made permalinks true permalinks and updated readme FAQ on Xapian error
Modified Paths:
--------------
trunk/app/controllers/application_controller.rb
trunk/app/helpers/application_helper.rb
trunk/app/models/link.rb
trunk/app/views/layouts/_footer.html.erb
trunk/app/views/layouts/_lirmm_title_bar.html.erb
trunk/app/views/layouts/_title_bar.html.erb
trunk/doc/README_FOR_APP
Modified: trunk/app/controllers/application_controller.rb
===================================================================
--- trunk/app/controllers/application_controller.rb 2009-12-04 18:24:39 UTC (rev 1650)
+++ trunk/app/controllers/application_controller.rb 2009-12-09 15:52:52 UTC (rev 1651)
@@ -239,6 +239,19 @@
logi_url(link.to_s, options)
end
+ def perma_logi_ll_url(logi, options = {})
+ return self.permatize(self.logi_ll_url(logi, options))
+ end
+
+ def perma_logi_version_ll_url(logi, options = {})
+ return self.permatize(self.logi_version_ll_url(logi, options))
+ end
+
+ def permatize(url)
+ return url.sub("://" + GlobalConfig.language_code, "://" +
+ GlobalConfig.language_code + ".manta")
+ end
+
def tag_ll_url(tag)
browse_logis_url(tag.to_s)
end
Modified: trunk/app/helpers/application_helper.rb
===================================================================
--- trunk/app/helpers/application_helper.rb 2009-12-04 18:24:39 UTC (rev 1650)
+++ trunk/app/helpers/application_helper.rb 2009-12-09 15:52:52 UTC (rev 1651)
@@ -65,14 +65,14 @@
def perma_links(logi, logi_version)
return '<div class="perma_link">' +
link_to(image_tag('perma.png') + ' Copy permanent link ',
- logi_ll_url(logi),
- : "copyPerma('" + logi_ll_url(logi) + "'," +
+ perma_logi_ll_url(logi),
+ : "copyPerma('" + perma_logi_ll_url(logi) + "'," +
"'The following is the permalink of this logi." +
" Hit Ctrl A followed by Ctrl C on your keyboard to" +
" copy to your clipboard:'); return false;") +
link_to('(to version)',
- logi_version_ll_url(logi_version),
- : "copyPerma('" + logi_version_ll_url(logi_version) + "'," +
+ perma_logi_version_ll_url(logi_version),
+ : "copyPerma('" + perma_logi_version_ll_url(logi_version) + "'," +
"'The following is the versioned permalink of this logi." +
" Hit Ctrl A followed by Ctrl C on your keyboard to" +
" copy to your clipboard:'); return false;") +
Modified: trunk/app/models/link.rb
===================================================================
--- trunk/app/models/link.rb 2009-12-04 18:24:39 UTC (rev 1650)
+++ trunk/app/models/link.rb 2009-12-09 15:52:52 UTC (rev 1651)
@@ -154,9 +154,7 @@
#
def self.hash_from_s(link_string)
if GlobalConfig.done_with_basics?
- if link_string =~ /#{GlobalConfig.domain}/i
- link_string.gsub!(/^.*?#{GlobalConfig.domain}(\:\d+)?\//i,"")
- elsif link_string =~ /\:\d+/ # for development
+ if link_string =~ /\:\d+/
link_string.gsub!(/^.*?\:\d+\//,"")
end
end
Modified: trunk/app/views/layouts/_footer.html.erb
===================================================================
--- trunk/app/views/layouts/_footer.html.erb 2009-12-04 18:24:39 UTC (rev 1650)
+++ trunk/app/views/layouts/_footer.html.erb 2009-12-09 15:52:52 UTC (rev 1651)
@@ -18,7 +18,7 @@
<div class="copyright">
<div class="panel_content_padding">
© 2007-2009 <a href="http://foundation.logilogi.org"><%= _('The LogiLogi Foundation') %></a>.
- <a href="http://en.logilogi.org/Development/Logi_Logi=Wybo_Wiersma_32">LogiLogi is Free Software</a> and licensed under the <a href="http://www.fsf.org/licensing/licenses/agpl-3.0.html">Affero GPL v3</a> <%= _('which means that the running version will always be') + ' ' + link_to('available for download', source_cache_url) %>.<br />
+ <a href="http://en.logilogi.org/Development/Logi_Logi=Wybo_Wiersma_32">LogiLogi is Free Software</a> and licensed under the <a href="http://www.fsf.org/licensing/licenses/agpl-3.0.html">Affero GPL v3</a> <%= _('which means that the source code is') + ' ' + link_to('available for download', source_cache_url) %>.<br />
Development happens on <a href="http://sourceforge.net/projects/logilogi">our Sourceforge page</a>.
Documentation and installation instructions <a href="http://en.logilogi.org/pub/doc/app/">are here</a>.<br />
<%= _('All content is available under the') %> <a href="http://creativecommons.org/licenses/by-sa/3.0/"><%= _('Creative Commons Attribution-Share Alike License') %></a>
Modified: trunk/app/views/layouts/_lirmm_title_bar.html.erb
===================================================================
--- trunk/app/views/layouts/_lirmm_title_bar.html.erb 2009-12-04 18:24:39 UTC (rev 1650)
+++ trunk/app/views/layouts/_lirmm_title_bar.html.erb 2009-12-09 15:52:52 UTC (rev 1651)
@@ -6,6 +6,8 @@
<% GlobalConfig.available_language_codes.each do |l_code| %>
<%= site_link(:text => '[' + l_code.camelcase + ']', :language => l_code) %>
<% end %>
+ <a href="http://www.logilogi.org/pub/doc/app/">(docs, </a>
+ <a href="http://sourceforge.net/projects/logilogi">development)</a>
</div>
</div>
<div id="header">
Modified: trunk/app/views/layouts/_title_bar.html.erb
===================================================================
--- trunk/app/views/layouts/_title_bar.html.erb 2009-12-04 18:24:39 UTC (rev 1650)
+++ trunk/app/views/layouts/_title_bar.html.erb 2009-12-09 15:52:52 UTC (rev 1651)
@@ -10,6 +10,8 @@
<%= site_link(:text => '[' + l_code.camelcase + ']', :language => l_code) %>
<% end %>
<% end %>
+ <a href="http://www.logilogi.org/pub/doc/app/">(docs, </a>
+ <a href="http://sourceforge.net/projects/logilogi">development)</a>
</div>
</div>
<div id="header">
Modified: trunk/doc/README_FOR_APP
===================================================================
--- trunk/doc/README_FOR_APP 2009-12-04 18:24:39 UTC (rev 1650)
+++ trunk/doc/README_FOR_APP 2009-12-09 15:52:52 UTC (rev 1651)
@@ -45,11 +45,11 @@
They will also be noted and available on {the Foundation
Blog}[http://foundation.logilogi.org].
-== Develop LogiLogi
+== LogiLogi Community
-If you want to develop this innovative project with us, or discuss it, you
-are welcome to introduce yourself on
-{our mailing-list}[https://lists.sourceforge.net/lists/listinfo/logilogi-list].
+If you need help, want to get involved with the project, or want to
+discuss it, you are welcome to join
+{our low volume mailing-list}[https://lists.sourceforge.net/lists/listinfo/logilogi-list].
And of course you can also create an account on
{LogiLogi.org}[http://en.logilogi.org] and start using it.
@@ -103,9 +103,10 @@
Then You can install them with:
- gem install daemons rubyzip ruby-openid binarylogic-authlogic authlogic-oid
- quantipay-authlogic_haapi ratom json mislav-will_paginate positionrange
- difflcs textweaver mysql rmagick
+ gem install daemons rubyzip ruby-openid binarylogic-authlogic \
+ authlogic-oid quantipay-authlogic_haapi ratom json \
+ mislav-will_paginate positionrange difflcs textweaver mysql \
+ rmagick
(as root, same here as with Rails installation)
Then you can get Manta directly from our
@@ -139,9 +140,10 @@
Then with rake dev:check you can test if you installed everything
correctly.
-To initialize the development-database with the config and an intro-
-page you should run (logilogi does not work befor it's database is
-initialized with this step):
+LogiLogi does not work befor it's database and search-index is
+initialized. Thus to initialize the development-database with the
+config and an intro-page and to set up the xapian search-index
+(stored in the db/search_index directory), you should run:
rake db:initialize
@@ -203,18 +205,15 @@
And to get MySQL, Subversion and libopenssl, gettext, Xapian,
ImageMagick and libxml2:
- sudo apt-get install make mysql-server mysql-client
- libmysqlclient15-dev subversion libopenssl-ruby1.8
- libxapian15 libxapian-ruby1.8 gettext libxml2 imagemagick
+ sudo apt-get install make mysql-server mysql-client \
+ libmysqlclient15-dev subversion libopenssl-ruby1.8 \
+ libxapian15 libxapian-ruby1.8 gettext libxml2 imagemagick \
librsvg2-dev libmagickwand-dev
RMagick will build extensions from source. If you have to install
ImageMagick from source (because it is out of date compared to
-RMagick), you can do it with:
+RMagick), then see the ImageMagick problems section.
- ./configure --disable-openmp; make; sudo make install;
- sudo gem install rmagick
-
=== How to install on Xandros
(incomplete)
@@ -226,8 +225,30 @@
If you get an error saying that RMagick cannot open a file in /tmp,
and find this: "wmf2eps: not found" in your logs, it likely is
because the svg extension is not working. You will need librsvg2-dev
-and then re-install Rmagick.
+and then re-install Rmagick (see below).
+If you see strange blue lines around tags or other background-images,
+then you probably are using an old version of imagemagick. In that
+case you should download imagemagick, and build it from source with:
+
+ ./configure --disable-openmp; make; sudo make install;
+
+And then re-install the rmagick gem with:
+
+ sudo gem install rmagick
+
+=== I get a 'Xapian Database not opened' error
+
+Most likely the search-index is not initialized. If you don't mind
+losing your data, and want a fresh start, then the folliwing will
+work:
+
+rake db:initialize (possibly followed by RAILS_ENV=production)
+
+If you do mind your data, then you can rebuild the index with:
+
+rake index:create (possibly followed by RAILS_ENV=production)
+
== This Documentation
This documentation can be browsed online at:
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wy...@us...> - 2009-12-04 18:24:47
|
Revision: 1650
http://logilogi.svn.sourceforge.net/logilogi/?rev=1650&view=rev
Author: wybow
Date: 2009-12-04 18:24:39 +0000 (Fri, 04 Dec 2009)
Log Message:
-----------
Updated docs to clarify db:initialize
Modified Paths:
--------------
trunk/doc/README_FOR_APP
Modified: trunk/doc/README_FOR_APP
===================================================================
--- trunk/doc/README_FOR_APP 2009-11-26 21:57:47 UTC (rev 1649)
+++ trunk/doc/README_FOR_APP 2009-12-04 18:24:39 UTC (rev 1650)
@@ -45,7 +45,7 @@
They will also be noted and available on {the Foundation
Blog}[http://foundation.logilogi.org].
-== Be Part of LogiLogi!
+== Develop LogiLogi
If you want to develop this innovative project with us, or discuss it, you
are welcome to introduce yourself on
@@ -145,13 +145,16 @@
rake db:initialize
+(For the production environment you need to run
+rake db:initialize RAILS_ENV=production)
+
To (re-)initialize the test- and development-database with the
-config and fixture data you should run (handiest for development):
+config and fixture data for development and manual testing you
+should run (handiest for development):
rake db:dev:redo
-(For the production environment you need to run
-rake db:initialize RAILS_ENV=production)
+(not to be used for the production environment)
Now you can run the unit-tests...
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wy...@us...> - 2009-11-26 21:57:57
|
Revision: 1649
http://logilogi.svn.sourceforge.net/logilogi/?rev=1649&view=rev
Author: wybow
Date: 2009-11-26 21:57:47 +0000 (Thu, 26 Nov 2009)
Log Message:
-----------
Fixed bug in log_log_subscription and magick corners
Modified Paths:
--------------
trunk/app/models/log_log_subscription.rb
trunk/public/javascripts/magick_corners.js
Modified: trunk/app/models/log_log_subscription.rb
===================================================================
--- trunk/app/models/log_log_subscription.rb 2009-11-19 23:21:29 UTC (rev 1648)
+++ trunk/app/models/log_log_subscription.rb 2009-11-26 21:57:47 UTC (rev 1649)
@@ -36,7 +36,7 @@
if sent_to.empty?
sent_to = ['Nobody']
end
- Notifier.deliver_for_log(User.admin, period,
- word_wrap('Sent to: ' + sent_to.join(', '), :line_width => 70))
+ Notifier.deliver_for_log(User.admin, period,
+ 'Sent to: ' + sent_to.join(', '))
end
end
Modified: trunk/public/javascripts/magick_corners.js
===================================================================
--- trunk/public/javascripts/magick_corners.js 2009-11-19 23:21:29 UTC (rev 1648)
+++ trunk/public/javascripts/magick_corners.js 2009-11-26 21:57:47 UTC (rev 1649)
@@ -172,6 +172,13 @@
outer_element.setAttribute('id','');
outer_element.id = tempId;
}
+ ['onclick','onkeydown','tabindex'].each(function(transfer) {
+ if (element.getAttribute(transfer)) {
+ tempTr = element.getAttribute(transfer);
+ element.removeAttribute(transfer);
+ outer_element.setAttribute(transfer,tempTr);
+ }
+ });
var tempClassName = element.className;
element.setAttribute('class','');
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wy...@us...> - 2009-11-19 23:21:35
|
Revision: 1648
http://logilogi.svn.sourceforge.net/logilogi/?rev=1648&view=rev
Author: wybow
Date: 2009-11-19 23:21:29 +0000 (Thu, 19 Nov 2009)
Log Message:
-----------
Added daily notice of number of mails sent
Modified Paths:
--------------
trunk/app/models/log_log_subscription.rb
Modified: trunk/app/models/log_log_subscription.rb
===================================================================
--- trunk/app/models/log_log_subscription.rb 2009-11-19 23:19:04 UTC (rev 1647)
+++ trunk/app/models/log_log_subscription.rb 2009-11-19 23:21:29 UTC (rev 1648)
@@ -19,6 +19,7 @@
# end
def self.send_out_alerts(period)
+ sent_to = []
User.find_each do |user|
url = URI.parse(GlobalConfig.log_log_site +
"/channels/for_" + user.unix_name + "/periods/" + period + ".txt")
@@ -27,9 +28,15 @@
periodical = page.body
if periodical =~ /[^\s]/
Notifier.deliver_for_log(user, period, periodical)
+ sent_to << user.name
end
rescue
end
end
+ if sent_to.empty?
+ sent_to = ['Nobody']
+ end
+ Notifier.deliver_for_log(User.admin, period,
+ word_wrap('Sent to: ' + sent_to.join(', '), :line_width => 70))
end
end
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wy...@us...> - 2009-11-19 23:19:14
|
Revision: 1647
http://logilogi.svn.sourceforge.net/logilogi/?rev=1647&view=rev
Author: wybow
Date: 2009-11-19 23:19:04 +0000 (Thu, 19 Nov 2009)
Log Message:
-----------
No gem-version requirement anymore
Modified Paths:
--------------
projects/loglog/trunk/config/environment.rb
Modified: projects/loglog/trunk/config/environment.rb
===================================================================
--- projects/loglog/trunk/config/environment.rb 2009-11-19 23:11:04 UTC (rev 1646)
+++ projects/loglog/trunk/config/environment.rb 2009-11-19 23:19:04 UTC (rev 1647)
@@ -1,7 +1,7 @@
# Be sure to restart your server when you modify this file
# Specifies gem version of Rails to use when vendor/rails is not present
-RAILS_GEM_VERSION = '2.3.2' unless defined? RAILS_GEM_VERSION
+# RAILS_GEM_VERSION = '2.3.2' unless defined? RAILS_GEM_VERSION
# Bootstrap the Rails environment, frameworks, and default configuration
require File.join(File.dirname(__FILE__), 'boot')
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wy...@us...> - 2009-11-19 23:11:11
|
Revision: 1646
http://logilogi.svn.sourceforge.net/logilogi/?rev=1646&view=rev
Author: wybow
Date: 2009-11-19 23:11:04 +0000 (Thu, 19 Nov 2009)
Log Message:
-----------
Fixed some IE-bugs
Modified Paths:
--------------
trunk/app/views/logis/edit.html.erb
trunk/public/stylesheets/ie.css
trunk/public/stylesheets/logilogi.css
Modified: trunk/app/views/logis/edit.html.erb
===================================================================
--- trunk/app/views/logis/edit.html.erb 2009-11-19 22:36:03 UTC (rev 1645)
+++ trunk/app/views/logis/edit.html.erb 2009-11-19 23:11:04 UTC (rev 1646)
@@ -1,10 +1,14 @@
<% thorny_form_for(@logi, :url => logi_url(@logi),
:html => {:id => "logi_form"}) do |form| %>
<% render :layout => 'edit_bar', :locals => {:selected => "edit_text"} do %>
- <div id="logi_tags_toggle">
- <%= render :partial => 'logi_tags/toggle', :locals => {
- :unfold_disabled => (@selected == "edit_tags") } %>
- </div>
+ <% if @logi.untagged? %>
+ <div id="logi_tags_toggle">
+ <%= render :partial => 'logi_tags/toggle', :locals => {
+ :unfold_disabled => (@selected == "edit_tags") } %>
+ </div>
+ <% else %>
+ <p>You can edit this logi</p>
+ <% end %>
<% end %>
<%= render :partial => 'edit_with_tags', :locals => {:form => form} %>
Modified: trunk/public/stylesheets/ie.css
===================================================================
--- trunk/public/stylesheets/ie.css 2009-11-19 22:36:03 UTC (rev 1645)
+++ trunk/public/stylesheets/ie.css 2009-11-19 23:11:04 UTC (rev 1646)
@@ -4,6 +4,12 @@
padding: 0 0 0.3em 0; /* to prevent cut of bottom */
}
+/* browsing */
+
+#browse_list_input {
+ margin-top: 0.9em;
+}
+
/* login */
.blank #user_session_remember_me {
Modified: trunk/public/stylesheets/logilogi.css
===================================================================
--- trunk/public/stylesheets/logilogi.css 2009-11-19 22:36:03 UTC (rev 1645)
+++ trunk/public/stylesheets/logilogi.css 2009-11-19 23:11:04 UTC (rev 1646)
@@ -1111,6 +1111,9 @@
#found_logis .button {
clear: right;
}
+#navigation_bar_navigation_browse .add_button {
+ margin-left: 0.5em;
+}
/* edit */
@@ -1658,7 +1661,7 @@
#site_description {
font-size: 17px;
border: 0px;
- margin: 0.2em 0em 0em 0.5em;
+ margin: 0.2em 0em -1em 0.5em;
color: #555555;
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wy...@us...> - 2009-11-19 22:36:09
|
Revision: 1645
http://logilogi.svn.sourceforge.net/logilogi/?rev=1645&view=rev
Author: wybow
Date: 2009-11-19 22:36:03 +0000 (Thu, 19 Nov 2009)
Log Message:
-----------
Fixed logi-listing bug
Modified Paths:
--------------
trunk/app/controllers/logis_controller.rb
trunk/app/views/logis/_found_logis.html.erb
Modified: trunk/app/controllers/logis_controller.rb
===================================================================
--- trunk/app/controllers/logis_controller.rb 2009-11-19 22:15:39 UTC (rev 1644)
+++ trunk/app/controllers/logis_controller.rb 2009-11-19 22:36:03 UTC (rev 1645)
@@ -61,8 +61,9 @@
@sloppy_matching_logis = current_context.sloppy_matching_logis
@reduced_matching_logis = current_context.reduced_matching_logis
else
- @all_logis = Logi.find(:all).order_by_rating_for(
- PrefsProfile.current_prefs.peer_group)
+ @all_logis = Logi.find(:all, :order => 'created_at DESC',
+ :limit => 15).order_by_rating_for(
+ PrefsProfile.current_prefs.peer_group)
end
@found_logis = render_to_string :partial => 'found_logis'
respond_to do |format|
Modified: trunk/app/views/logis/_found_logis.html.erb
===================================================================
--- trunk/app/views/logis/_found_logis.html.erb 2009-11-19 22:15:39 UTC (rev 1644)
+++ trunk/app/views/logis/_found_logis.html.erb 2009-11-19 22:36:03 UTC (rev 1645)
@@ -34,7 +34,7 @@
<% end %>
<% else %>
<% render :layout => 'application/panel', :locals => {:id => "pick_a_tag"} do %>
- <p><%= "Showing all logis, ordered by rating." %><br /><%=" Pick a tag to start browsing." %></p>
+ <p><%= "Showing the newest logis, ordered by rating." %><br /><%=" Pick a tag to start browsing." %></p>
<% end %>
<%= render :partial => 'snippets_list', :locals => {:logis => @all_logis} %>
<% end %>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wy...@us...> - 2009-11-19 22:15:48
|
Revision: 1644
http://logilogi.svn.sourceforge.net/logilogi/?rev=1644&view=rev
Author: wybow
Date: 2009-11-19 22:15:39 +0000 (Thu, 19 Nov 2009)
Log Message:
-----------
Added tab-completion
Modified Paths:
--------------
trunk/app/views/comments/_new.html.erb
trunk/app/views/logis/_commenting_logis.html.erb
trunk/app/views/logis/_edit.html.erb
trunk/app/views/logis/_edit_with_tags.html.erb
trunk/app/views/logis/_logi.html.erb
trunk/app/views/logis/_navigation_bar_browse_header.html.erb
trunk/app/views/logis/_remarks.html.erb
trunk/app/views/logis/_tag_list.html.erb
trunk/app/views/logis/index.js.rjs
trunk/app/views/user_sessions/_method.html.erb
trunk/app/views/users/_method.html.erb
trunk/app/views/users/edit.html.erb
trunk/config/initializers/action_view.rb
trunk/public/javascripts/application.js
trunk/public/javascripts/magick_corners.js
trunk/public/javascripts/taglist.js
trunk/public/stylesheets/logilogi.css
Modified: trunk/app/views/comments/_new.html.erb
===================================================================
--- trunk/app/views/comments/_new.html.erb 2009-11-19 15:49:21 UTC (rev 1643)
+++ trunk/app/views/comments/_new.html.erb 2009-11-19 22:15:39 UTC (rev 1644)
@@ -25,7 +25,8 @@
<label><%= _('Submit') %></label>
<%= form.submit _('Submit'), : "tinyMCE.triggerSave();" +
" tinyMCE.execCommand('mceRemoveControl', false, 'logi_edit_body');" +
- " $('logi_form').onsubmit()" %>
+ " $('logi_form').onsubmit()",
+ :tabindex => 101 %>
<%= cancel_button :url => logi_url(@logi) %>
<% end %>
<% else %>
Modified: trunk/app/views/logis/_commenting_logis.html.erb
===================================================================
--- trunk/app/views/logis/_commenting_logis.html.erb 2009-11-19 15:49:21 UTC (rev 1643)
+++ trunk/app/views/logis/_commenting_logis.html.erb 2009-11-19 22:15:39 UTC (rev 1644)
@@ -7,7 +7,9 @@
<div class="spacer"></div>
<%= toggle_button_to_remote 'or add a logi below', {:update => "comment_area",
:url => new_logi_comments_url(@logi), :method => :get},
- :class => 'unfold_button', :disabled => local_assigns[:unfold_disabled] %>
+ :class => 'unfold_button', :disabled => local_assigns[:unfold_disabled],
+ :tabindex => 3 %>
<%= button_to 'create a new logi and link to it', new_logi_logi_inserts_url(@logi,
- :selected => 'link', :link_selected => 'linked_logi'), :class => 'insert_button' %>
+ :selected => 'link', :link_selected => 'linked_logi'),
+ :class => 'insert_button', :tabindex => 2 %>
<% end %>
Modified: trunk/app/views/logis/_edit.html.erb
===================================================================
--- trunk/app/views/logis/_edit.html.erb 2009-11-19 15:49:21 UTC (rev 1643)
+++ trunk/app/views/logis/_edit.html.erb 2009-11-19 22:15:39 UTC (rev 1644)
@@ -4,7 +4,8 @@
<%= text_field_tag 'logi[title]', (logi_version.nil? ? nil : logi_version.title),
:class => "logi_title", :id => "logi_edit_title",
: "logiLogisOnChange(tinyMCE.getInstanceById('logi_edit_body')," +
- " $('logi_edit_title'), #{GlobalConfig.maximum_logi_version_size})" %>
+ " $('logi_edit_title'), #{GlobalConfig.maximum_logi_version_size})",
+ :tabindex => 98 %>
<div id="EditorDiv" style="visibility: hidden;">
<%= text_area_tag 'logi[body]',
Modified: trunk/app/views/logis/_edit_with_tags.html.erb
===================================================================
--- trunk/app/views/logis/_edit_with_tags.html.erb 2009-11-19 15:49:21 UTC (rev 1643)
+++ trunk/app/views/logis/_edit_with_tags.html.erb 2009-11-19 22:15:39 UTC (rev 1644)
@@ -15,7 +15,8 @@
<% render :layout => 'application/panel', :locals => {:id => "submit"} do %>
<label><%= _('Submit') %></label>
- <%= form.submit _('Submit'), : "logiEditPrepareLink(); $('logi_form').submit()" %>
+ <%= form.submit _('Submit'), : "logiEditPrepareLink(); $('logi_form').submit()",
+ :tabindex => 100 %>
<%= cancel_button :url => (@logi.new_record? ? nil : logi_url(@logi)) %>
<% end %>
<div class="spacer"></div>
Modified: trunk/app/views/logis/_logi.html.erb
===================================================================
--- trunk/app/views/logis/_logi.html.erb 2009-11-19 15:49:21 UTC (rev 1643)
+++ trunk/app/views/logis/_logi.html.erb 2009-11-19 22:15:39 UTC (rev 1644)
@@ -2,7 +2,8 @@
<div id="<%= id %>" class="box logi logi_body logi_current">
<%= (local_assigns[:action] == :view ?
button_to('Insert into logi',
- new_logi_logi_inserts_url(@logi), :class => 'insert_button') +
+ new_logi_logi_inserts_url(@logi), :class => 'insert_button',
+ :tabindex => 1) +
perma_links(@logi, @logi_version) : '' )%>
<div class="panel_content_padding">
<div id="logi_min_height"></div>
Modified: trunk/app/views/logis/_navigation_bar_browse_header.html.erb
===================================================================
--- trunk/app/views/logis/_navigation_bar_browse_header.html.erb 2009-11-19 15:49:21 UTC (rev 1643)
+++ trunk/app/views/logis/_navigation_bar_browse_header.html.erb 2009-11-19 22:15:39 UTC (rev 1644)
@@ -6,5 +6,6 @@
:link => (current_context.nil? ? nil : current_context.link),
:url => browse_logis_url(:ll_link_string => ''),
:param_name => 'll_link_string',
- :replace_string => 'All', :without_spacer => true} %>
+ :replace_string => 'All', :without_spacer => true,
+ :no_focus => true} %>
<div class="spacer"></div>
Modified: trunk/app/views/logis/_remarks.html.erb
===================================================================
--- trunk/app/views/logis/_remarks.html.erb 2009-11-19 15:49:21 UTC (rev 1643)
+++ trunk/app/views/logis/_remarks.html.erb 2009-11-19 22:15:39 UTC (rev 1644)
@@ -3,7 +3,8 @@
<% remote_thorny_form_for([@logi, @remark], :update => 'remarks',
:html => {:id => "create_remark"}) do |form| %>
<%= text_area :remark, :message %>
- <%= form.submit _('add remark'), : "$('create_remark').onsubmit()", :class => 'add_button' %>
+ <%= form.submit _('add remark'), : "$('create_remark').onsubmit()",
+ :class => 'add_button' %>
<% end %>
<div class="spacer"></div>
<% end %>
Modified: trunk/app/views/logis/_tag_list.html.erb
===================================================================
--- trunk/app/views/logis/_tag_list.html.erb 2009-11-19 15:49:21 UTC (rev 1643)
+++ trunk/app/views/logis/_tag_list.html.erb 2009-11-19 22:15:39 UTC (rev 1644)
@@ -12,15 +12,16 @@
(link.nil? ? '' : link.to_s(:direction => :requested, :step => -1)),
:autocomplete => "off" %>
<%= text_field_tag (name + '_input'), nil, :id => (name + '_input'),
- :class => 'tag_list', :autocomplete => 'off' %>
+ :class => 'tag_list', :autocomplete => 'off', :tabindex => 93 %>
<%= content_tag('div', '', :class => 'auto_complete', :id => 'tag_auto_complete') %>
<%= auto_complete_field (name + '_input'),
:url => used_tags_path(:format => :js), :method => :get,
:param_name => 'search', :update => 'tag_auto_complete',
:min_chars => 1 %>
<%= button_to_function 'Add tag',
- (name + '.add_tag_from_field(); ' + name + '.submit()'),
- :class => 'add_button tag_list' %>
+ (name + '.add_tag_from_field(); ' + name + ".submit();" +
+ (local_assigns[:no_focus] ? '' : " $('" + name + "_input').focus();")),
+ :class => 'add_button tag_list', :tabindex => 94 %>
</div>
<% if !local_assigns[:without_form] %>
<%= end_form_tag() %>
Modified: trunk/app/views/logis/index.js.rjs
===================================================================
--- trunk/app/views/logis/index.js.rjs 2009-11-19 15:49:21 UTC (rev 1643)
+++ trunk/app/views/logis/index.js.rjs 2009-11-19 22:15:39 UTC (rev 1644)
@@ -4,4 +4,5 @@
page.replace 'cloud', @cloud
page.replace 'tag_sets', @tag_sets
page.replace 'incoming_links_to_tags', @incoming_links_to_tags
-page.call('mcorners.run')
+page.call("mcorners.run")
+page.call("focusBrowseListInput")
Modified: trunk/app/views/user_sessions/_method.html.erb
===================================================================
--- trunk/app/views/user_sessions/_method.html.erb 2009-11-19 15:49:21 UTC (rev 1643)
+++ trunk/app/views/user_sessions/_method.html.erb 2009-11-19 22:15:39 UTC (rev 1644)
@@ -14,13 +14,13 @@
<% form_for @user_session, :url => user_session_path do |form| %>
<% if selected == "normal" %>
- <%= form.text_field :email %>
- <%= form.password_field :password %>
+ <%= form.text_field :email, :tabindex => 1 %>
+ <%= form.password_field :password, :tabindex => 2 %>
<% else %>
- <%= form.text_field :openid_identifier %>
+ <%= form.text_field :openid_identifier, :tabindex => 1 %>
<% end %>
- <%= form.check_box :remember_me, :checked => true, :label_class => 'behind' %>
- <%= form.submit _('Login') %>
+ <%= form.check_box :remember_me, :checked => true, :label_class => 'behind', :tabindex => 3 %>
+ <%= form.submit _('Login'), :tabindex => 4 %>
<%= cancel_button %>
<% end -%>
Modified: trunk/app/views/users/_method.html.erb
===================================================================
--- trunk/app/views/users/_method.html.erb 2009-11-19 15:49:21 UTC (rev 1643)
+++ trunk/app/views/users/_method.html.erb 2009-11-19 22:15:39 UTC (rev 1644)
@@ -15,15 +15,15 @@
<% end %>
<% form_for(@user, :html => {:id => "new_form"}) do |form| %>
- <%= form.text_field 'name', :label => _("Full Name") %>
- <%= form.text_field 'email' %>
+ <%= form.text_field 'name', :label => _("Full Name"), :tabindex => 1 %>
+ <%= form.text_field 'email', :tabindex => 2 %>
<% if selected == "normal" %>
- <%= form.password_field :password %>
- <%= form.password_field :password_confirmation %>
- <%= form.submit _('Complete!') %>
+ <%= form.password_field :password, :tabindex => 3 %>
+ <%= form.password_field :password_confirmation, :tabindex => 4 %>
+ <%= form.submit _('Complete!'), :tabindex => 5 %>
<% else %>
- <%= form.text_field :openid_identifier %>
- <%= form.submit _('Continue') %>
+ <%= form.text_field :openid_identifier , :tabindex => 3 %>
+ <%= form.submit _('Continue'), :tabIndex => 4 %>
<% end %>
<%= cancel_button %>
<% end %>
Modified: trunk/app/views/users/edit.html.erb
===================================================================
--- trunk/app/views/users/edit.html.erb 2009-11-19 15:49:21 UTC (rev 1643)
+++ trunk/app/views/users/edit.html.erb 2009-11-19 22:15:39 UTC (rev 1644)
@@ -33,11 +33,11 @@
<% form_for(@user, :html => {:id => "email_form"}) do |form| %>
<p><%= "You can " + link_to("set your avatar here", "http://gravatar.com/signup") %></p>
<p><%= _("Leave blank/unchanged any field you don't want to change") %></p>
- <%= form.text_field 'email' %>
- <%= form.password_field :password %>
- <%= form.password_field :password_confirmation %>
- <%= form.text_field :openid_identifier %>
- <%= form.submit _('Save') %>
+ <%= form.text_field 'email', :tabindex => 1 %>
+ <%= form.password_field :password, :tabindex => 2 %>
+ <%= form.password_field :password_confirmation, :tabindex => 3 %>
+ <%= form.text_field :openid_identifier, :tabindex => 4 %>
+ <%= form.submit _('Save'), :tabindex => 5 %>
<%= cancel_button %>
<% end %>
<% end %>
Modified: trunk/config/initializers/action_view.rb
===================================================================
--- trunk/config/initializers/action_view.rb 2009-11-19 15:49:21 UTC (rev 1643)
+++ trunk/config/initializers/action_view.rb 2009-11-19 22:15:39 UTC (rev 1644)
@@ -62,6 +62,7 @@
html_options[:class] ||= 'ok_button'
html_options[:class] = 'button ' + html_options[:class]
html_options[:onclick] ||= 'location.href = \'' + url + '\'; return false;'
+ html_options[:onkeydown] ||= 'if (event.keyCode == Event.KEY_RETURN) {this.onclick()};'
html_options = html_options.stringify_keys
convert_options_to_javascript!(html_options, url)
tag_options = tag_options(html_options)
@@ -91,6 +92,7 @@
#{html_options[:onclick]}; " if html_options[:onclick]}#{function};"
html_options = html_options.stringify_keys
+ html_options[:onkeydown] ||= 'if (event.keyCode === Event.KEY_RETURN) {this.onclick()};'
tag_options = tag_options(html_options)
content_tag(:div,
Modified: trunk/public/javascripts/application.js
===================================================================
--- trunk/public/javascripts/application.js 2009-11-19 15:49:21 UTC (rev 1643)
+++ trunk/public/javascripts/application.js 2009-11-19 22:15:39 UTC (rev 1644)
@@ -184,7 +184,7 @@
width: "446",
height: "715", // also set in css
init_instance_callback: logiLogisInitEditor(this.title_id,
- this.hidden_div_id, this.maximum_logi_size),
+ this.hidden_div_id, this.textarea_id, this.maximum_logi_size),
editor_selector : "editable"
});
}
@@ -234,7 +234,7 @@
};
}
-function logiLogisInitEditor(title_id, editor_id, max_size) {
+function logiLogisInitEditor(title_id, editor_id, textarea_id, max_size) {
return function (inst) {
var title = $(title_id);
var f = logiLogisEditorOnChange(title, max_size);
@@ -242,6 +242,7 @@
inst.onEvent.add(f);
inst.onExecCommand.add(f);
$(editor_id).style.visibility = "visible";
+ $(textarea_id + '_ifr').setAttribute('tabindex', "99");
$('length_warning').appendChild(document.createTextNode(""));
};
}
@@ -424,3 +425,9 @@
}
});
}
+
+// For browsing
+
+function focusBrowseListInput() {
+ $('browse_list_input').focus();
+}
Modified: trunk/public/javascripts/magick_corners.js
===================================================================
--- trunk/public/javascripts/magick_corners.js 2009-11-19 15:49:21 UTC (rev 1643)
+++ trunk/public/javascripts/magick_corners.js 2009-11-19 22:15:39 UTC (rev 1644)
@@ -172,6 +172,7 @@
outer_element.setAttribute('id','');
outer_element.id = tempId;
}
+
var tempClassName = element.className;
element.setAttribute('class','');
element.className = '';
Modified: trunk/public/javascripts/taglist.js
===================================================================
--- trunk/public/javascripts/taglist.js 2009-11-19 15:49:21 UTC (rev 1643)
+++ trunk/public/javascripts/taglist.js 2009-11-19 22:15:39 UTC (rev 1644)
@@ -142,7 +142,8 @@
new Ajax.Request(this.url, {
asynchronous: true, evalScripts: true, method: 'get',
parameters: this.param_name + '=' +
- this.hidden_tags_string()}); return false;
+ this.hidden_tags_string()});
+ return false;
},
// Rendering
Modified: trunk/public/stylesheets/logilogi.css
===================================================================
--- trunk/public/stylesheets/logilogi.css 2009-11-19 15:49:21 UTC (rev 1643)
+++ trunk/public/stylesheets/logilogi.css 2009-11-19 22:15:39 UTC (rev 1644)
@@ -367,6 +367,15 @@
color: #ffffff;
cursor: pointer;
}
+*:focus {
+ outline-color: #30367e;
+ outline-style: dotted;
+ outline-width: 1px;
+}
+.panel_tabs *:focus,
+#primarytabs *:focus {
+ outline: none;
+}
.add_button_disabled {
cursor: default;
}
@@ -1162,8 +1171,9 @@
width: 6em;
}
.remark p {
- padding-top: 0.5em;
+ padding-top: 0.8em;
font-size: 1.2em;
+ line-height: 1.3em;
text-align: left;
}
/* also see logi for remark color */
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wy...@us...> - 2009-11-19 15:49:31
|
Revision: 1643
http://logilogi.svn.sourceforge.net/logilogi/?rev=1643&view=rev
Author: wybow
Date: 2009-11-19 15:49:21 +0000 (Thu, 19 Nov 2009)
Log Message:
-----------
Updated some style issues
Modified Paths:
--------------
trunk/app/views/logis/_commenting_logis.html.erb
trunk/app/views/logis/_snippet.html.erb
trunk/app/views/remarks/_list.html.erb
trunk/public/stylesheets/logilogi.css
Modified: trunk/app/views/logis/_commenting_logis.html.erb
===================================================================
--- trunk/app/views/logis/_commenting_logis.html.erb 2009-11-19 01:37:33 UTC (rev 1642)
+++ trunk/app/views/logis/_commenting_logis.html.erb 2009-11-19 15:49:21 UTC (rev 1643)
@@ -2,7 +2,7 @@
:locals => {:title => _("Commenting logis"), :id => "commenting"} do %>
<div class="mirrored_notice_cloud"><%= _('Want to give a more in-depth response ?') %></div>
<div class="description">
- <p><%= _('This logi has %{nr} comments') % {:nr => logis.size} %></p>
+ <p><%= _('Logi has %{nr} comments') % {:nr => logis.size} %></p>
</div>
<div class="spacer"></div>
<%= toggle_button_to_remote 'or add a logi below', {:update => "comment_area",
Modified: trunk/app/views/logis/_snippet.html.erb
===================================================================
--- trunk/app/views/logis/_snippet.html.erb 2009-11-19 01:37:33 UTC (rev 1642)
+++ trunk/app/views/logis/_snippet.html.erb 2009-11-19 15:49:21 UTC (rev 1643)
@@ -7,7 +7,7 @@
<div class="comments">
<span class="comments_label">
<% if logi.comments_on_logis.count > 0 %>
- <em>Comments on <%= logi.comments_on_logis.count %> logis<%= ( logi.commenting_logis.count > 0 ? ', has ' + logi.commenting_logis.count.to_s + ' comments' : '') %></em>
+ <em>Comments on <%= logi.comments_on_logis.count %><%= ( logi.commenting_logis.count > 0 ? ', has ' + logi.commenting_logis.count.to_s + ' comments' : ' logis') %></em>
<% else %>
<em>Has <%= logi.commenting_logis.count %> comments</em>
<% end %>
Modified: trunk/app/views/remarks/_list.html.erb
===================================================================
--- trunk/app/views/remarks/_list.html.erb 2009-11-19 01:37:33 UTC (rev 1642)
+++ trunk/app/views/remarks/_list.html.erb 2009-11-19 15:49:21 UTC (rev 1643)
@@ -2,8 +2,8 @@
<% remarks.each do |remark| %>
<div class="box secondary_border_panel remark">
<div class="panel_content_padding">
- <%= by_author(remark.user, :length => 18) %>
<%= gravatar_for(remark.user, :class => 'avatar') %>
+ <%= by_author(remark.user, :length => 13) %>
<p><%= remark.message %></p>
<div class="spacer"></div>
</div>
Modified: trunk/public/stylesheets/logilogi.css
===================================================================
--- trunk/public/stylesheets/logilogi.css 2009-11-19 01:37:33 UTC (rev 1642)
+++ trunk/public/stylesheets/logilogi.css 2009-11-19 15:49:21 UTC (rev 1643)
@@ -1147,7 +1147,7 @@
font-size: .8em;
}
-/* annotations */
+/* annotations & remarks */
#annotating textarea,
#remarking textarea {
@@ -1162,6 +1162,7 @@
width: 6em;
}
.remark p {
+ padding-top: 0.5em;
font-size: 1.2em;
text-align: left;
}
@@ -1191,7 +1192,7 @@
margin-bottom: -0.2em;
}
-/* votes */
+/* votes and remarks */
.remark .author a,
.vote .author a {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wy...@us...> - 2009-11-19 01:37:53
|
Revision: 1642
http://logilogi.svn.sourceforge.net/logilogi/?rev=1642&view=rev
Author: wybow
Date: 2009-11-19 01:37:33 +0000 (Thu, 19 Nov 2009)
Log Message:
-----------
Updated tests & migration for upgrade
Modified Paths:
--------------
trunk/db/migrate/20091113112526_positioned_remarks_as_annotations.rb
trunk/test/functional/comments_controller_test.rb
trunk/test/functional/remarks_controller_test.rb
Added Paths:
-----------
trunk/test/functional/annotations_controller_test.rb
trunk/test/functional/linked_logi_controller_test.rb
Modified: trunk/db/migrate/20091113112526_positioned_remarks_as_annotations.rb
===================================================================
--- trunk/db/migrate/20091113112526_positioned_remarks_as_annotations.rb 2009-11-18 15:45:13 UTC (rev 1641)
+++ trunk/db/migrate/20091113112526_positioned_remarks_as_annotations.rb 2009-11-19 01:37:33 UTC (rev 1642)
@@ -7,10 +7,28 @@
t.string :position_ranges_string, :limit => 80, :null => false
t.datetime :created_at, :null => false
end
+
+ if GlobalConfig.available?
+ PositionedRemarksAsAnnotations.update
+ end
+
remove_column :remarks, :position_ranges_string
end
def self.down
raise 'No way back'
end
+
+ def self.update
+ annot_remarks = Remark.find(:all,
+ :conditions => ['position_ranges_string != ""'])
+ annot_remarks.each do |ann_r|
+ ann = Annotation.new(:logi => ann_r.logi, :user => ann_r.user,
+ :message => ann_r.message, :created_at => ann_r.created_at)
+ ann.position_ranges = PositionRange::List.from_s(
+ ann_r.position_ranges_string)
+ ann.save
+ ann_r.destroy
+ end
+ end
end
Added: trunk/test/functional/annotations_controller_test.rb
===================================================================
--- trunk/test/functional/annotations_controller_test.rb (rev 0)
+++ trunk/test/functional/annotations_controller_test.rb 2009-11-19 01:37:33 UTC (rev 1642)
@@ -0,0 +1,103 @@
+#--#
+# Copyright: (c) 2006-2009 The LogiLogi Foundation <fou...@lo...>
+#
+# License:
+# This file is part of the LogiLogi program. LogiLogi is Free Software.
+# You can run/distribute/modify LogiLogi under the terms of the GNU Affero
+# General Public License version 3. The Affero GPL states that running a
+# modified version or a derivative work also requires you to make the source
+# code of that work available to everyone that can interact with it. We
+# chose the Affero GPL to ensure that LogiLogi remains open and libre
+# (doc/LICENSE contains the full text of the legally binding license).
+#++#
+
+require File.dirname(__FILE__) + '/../test_helper'
+require 'annotations_controller'
+
+class AnnotationsControllerTest < ActionController::TestCase
+ fixtures :all
+
+ def setup
+ @controller = AnnotationsController.new
+ setup_request
+ end
+
+ ### Actions
+
+ # REST-methods
+
+ def test_create
+ l = logis(:logi_logi)
+ nr_of_r = l.annotations.size
+ l_v = l.current_logi_version
+ b_t = l_v.body
+ l_r = "LL With Super Cow Powers :)"
+ new_b_t = b_t[0...49] + "<a title=\"" + l_r + "\">" +
+ b_t[49...63] + "</a>" + b_t[63...-1]
+ post :create, {:ll_link_string => l.link.to_s,
+ :body_with_inserts => new_b_t}.merge(self.thorny_ok_hash)
+ assert_response :redirect
+ assert_equal nr_of_r + 1, l.annotations.size
+ ll_annotation = l.annotations.find_by_message(l_r)
+ assert ll_annotation
+ assert_equal l_v.raw_title.size + 49, ll_annotation.position_ranges.first.first
+ assert_equal l_v.raw_title.size + 63, ll_annotation.position_ranges.first.last
+ end
+
+ def test_create_ender
+ i = logis(:eduard_edison_user)
+ assert_insert_annotation(i,'Kuku','<p>I am Eduard, ','I have created','.</p>',36,50)
+ assert_insert_annotation(i,'Koko','<p>I am Eduard, I ','have created','.</p>',38,50)
+ assert_insert_annotation(i,'Kiki','<p>I am Eduard, I have ','created','.</p>',43,50)
+ end
+
+ def test_create_middler
+ i = logis(:eduard_edison_user)
+ assert_insert_annotation(i,'Kuku','<p>I ','am Eduard, I have created','.</p>',25,50)
+ assert_insert_annotation(i,'Koko','<p>I am Eduard, ','I have',' created.</p>',36,42)
+ assert_insert_annotation(i,'Kiki','<p>I am ','Eduard, I have',' created.</p>',28,42)
+ end
+
+ def test_destroy
+ l = logis(:logi_logi)
+ nr_of_r = l.annotations.size
+ r_id = l.annotations.first.id
+
+ delete :destroy, {:ll_link_string => l.link.to_s, :deleted_inserts => [r_id]}
+ assert !Annotation.find_by_id(r_id)
+ l.reload
+ assert_equal nr_of_r - 1, l.annotations.size
+ end
+
+ # Misc
+
+ class ::AnnotationsController
+ public :weave_out_annotations
+ end
+
+ def test_weaving_out
+ l_r = "This is the duck of the world"
+ l_t = "so lovable"
+ l_s = "<a title=\"" + l_r + "\">" + l_t + "</a>"
+ pre = "Lala "
+ sample = pre + l_s + " kakatus fly!"
+ i = logis('logi_logi')
+ target_range = PositionRange.new(pre.size, pre.size + l_t.size)
+ annotation_pos_ranges = @controller.weave_out_annotations(sample, RawTitleStub.new, i)
+ assert_equal l_t, (pre + l_t + l_r)[target_range.begin...target_range.end]
+ assert_equal target_range.begin, annotation_pos_ranges.first.begin
+ assert_equal target_range.end, annotation_pos_ranges.first.end
+ end
+
+ ### Helper functions
+
+ def assert_insert_annotation(logi,text,pre_text,ins_text,post_text,first_pos,last_pos)
+ post :create, {:ll_link_string => logi.link.to_s,
+ :body_with_inserts => pre_text + '<a title="' + text + '">' +
+ ins_text + '</a>' + post_text}.merge(self.thorny_ok_hash)
+ assert_response :redirect
+ r = logi.annotations.find_by_message(text)
+ assert_equal first_pos, r.position_ranges.first.first
+ assert_equal last_pos, r.position_ranges.first.last
+ end
+end
Modified: trunk/test/functional/comments_controller_test.rb
===================================================================
--- trunk/test/functional/comments_controller_test.rb 2009-11-18 15:45:13 UTC (rev 1641)
+++ trunk/test/functional/comments_controller_test.rb 2009-11-19 01:37:33 UTC (rev 1642)
@@ -57,28 +57,4 @@
assert c_l
assert_equal [Tag.untagged], c_l.tags
end
-
- def test_create_positioned_new_logi
- l = logis(:logi_logi)
- nr_of_c_l = l.commenting_logis.size
- l_v = l.current_logi_version
- b_t = l_v.body
- new_b_t = b_t[0...49] + "<a title=\"" + Const::Logi::INSERT_STRING + "\">" +
- b_t[49...63] + "</a>" + b_t[63...-1]
-
- post :create, {:ll_link_string => l.link.to_s,
- :body_with_inserts => new_b_t, :positioned => true,
- :logi => {:title => 'K',
- :body => '<p>akatu</p>'}}.merge(self.thorny_ok_hash)
-
- assert_redirected_to @controller.logi_ll_url(l)
- l.reload
- assert_equal l.commenting_logis.size, nr_of_c_l + 1
- c_ls = Logi.find_all_by_text_stack('<h1>K</h1> <p>akatu</p>')
- assert_equal 1, c_ls.size
- c_l = c_ls.first
- assert c_l
- assert_equal [Tag.untagged], c_l.tags
- assert l.from_links.find_by_to_logi_id(c_l.id)
- end
end
Added: trunk/test/functional/linked_logi_controller_test.rb
===================================================================
--- trunk/test/functional/linked_logi_controller_test.rb (rev 0)
+++ trunk/test/functional/linked_logi_controller_test.rb 2009-11-19 01:37:33 UTC (rev 1642)
@@ -0,0 +1,53 @@
+#--#
+# Copyright: (c) 2006-2009 The LogiLogi Foundation <fou...@lo...>
+#
+# License:
+# This file is part of the LogiLogi program. LogiLogi is Free Software.
+# You can run/distribute/modify LogiLogi under the terms of the GNU Affero
+# General Public License version 3. The Affero GPL states that running a
+# modified version or a derivative work also requires you to make the source
+# code of that work available to everyone that can interact with it. We
+# chose the Affero GPL to ensure that LogiLogi remains open and libre
+# (doc/LICENSE contains the full text of the legally binding license).
+#++#
+
+require File.dirname(__FILE__) + '/../test_helper'
+require 'links_controller'
+
+class LinkedLogisControllerTest < ActionController::TestCase
+ fixtures :all
+
+ def setup
+ @controller = LinkedLogisController.new
+ setup_request
+ end
+
+ ### Actions
+
+ # REST-methods
+
+ def dont_test_create_positioned_new_logi
+ # TODO
+ l = logis(:logi_logi)
+ nr_of_c_l = l.commenting_logis.size
+ l_v = l.current_logi_version
+ b_t = l_v.body
+ new_b_t = b_t[0...49] + "<a title=\"" + Const::Logi::INSERT_STRING + "\">" +
+ b_t[49...63] + "</a>" + b_t[63...-1]
+
+ post :create, {:ll_link_string => l.link.to_s,
+ :body_with_inserts => new_b_t, :positioned => true,
+ :logi => {:title => 'K',
+ :body => '<p>akatu</p>'}}.merge(self.thorny_ok_hash)
+
+ assert_redirected_to @controller.logi_ll_url(l)
+ l.reload
+ assert_equal l.commenting_logis.size, nr_of_c_l + 1
+ c_ls = Logi.find_all_by_text_stack('<h1>K</h1> <p>akatu</p>')
+ assert_equal 1, c_ls.size
+ c_l = c_ls.first
+ assert c_l
+ assert_equal [Tag.untagged], c_l.tags
+ assert l.from_links.find_by_to_logi_id(c_l.id)
+ end
+end
Modified: trunk/test/functional/remarks_controller_test.rb
===================================================================
--- trunk/test/functional/remarks_controller_test.rb 2009-11-18 15:45:13 UTC (rev 1641)
+++ trunk/test/functional/remarks_controller_test.rb 2009-11-19 01:37:33 UTC (rev 1642)
@@ -27,77 +27,12 @@
# REST-methods
def test_create
- l = logis(:logi_logi)
- nr_of_r = l.remarks.size
- l_v = l.current_logi_version
- b_t = l_v.body
- l_r = "LL With Super Cow Powers :)"
- new_b_t = b_t[0...49] + "<a title=\"" + l_r + "\">" +
- b_t[49...63] + "</a>" + b_t[63...-1]
- post :create, {:ll_link_string => l.link.to_s, :body_with_inserts => new_b_t,
- :positioned => 1}.merge(self.thorny_ok_hash)
- assert_response :redirect
- assert_equal nr_of_r + 1, l.remarks.size
- ll_remark = l.remarks.find_by_message(l_r)
- assert ll_remark
- assert_equal l_v.raw_title.size + 49, ll_remark.position_ranges.first.first
- assert_equal l_v.raw_title.size + 63, ll_remark.position_ranges.first.last
+ assert true
+ # TODO
end
- def test_create_ender
- i = logis(:eduard_edison_user)
- assert_insert_remark(i,'Kuku','<p>I am Eduard, ','I have created','.</p>',36,50)
- assert_insert_remark(i,'Koko','<p>I am Eduard, I ','have created','.</p>',38,50)
- assert_insert_remark(i,'Kiki','<p>I am Eduard, I have ','created','.</p>',43,50)
- end
-
- def test_create_middler
- i = logis(:eduard_edison_user)
- assert_insert_remark(i,'Kuku','<p>I ','am Eduard, I have created','.</p>',25,50)
- assert_insert_remark(i,'Koko','<p>I am Eduard, ','I have',' created.</p>',36,42)
- assert_insert_remark(i,'Kiki','<p>I am ','Eduard, I have',' created.</p>',28,42)
- end
-
def test_destroy
- l = logis(:logi_logi)
- nr_of_r = l.remarks.size
- r_id = l.remarks.first.id
-
- delete :destroy, {:ll_link_string => l.link.to_s, :deleted_inserts => [r_id]}
- assert !Remark.find_by_id(r_id)
- l.reload
- assert_equal nr_of_r - 1, l.remarks.size
+ assert true
+ # TODO
end
-
- # Misc
-
- class ::RemarksController
- public :weave_out_remarks
- end
-
- def test_weaving_out
- l_r = "This is the duck of the world"
- l_t = "so lovable"
- l_s = "<a title=\"" + l_r + "\">" + l_t + "</a>"
- pre = "Lala "
- sample = pre + l_s + " kakatus fly!"
- i = logis('logi_logi')
- target_range = PositionRange.new(pre.size, pre.size + l_t.size)
- remark_pos_ranges = @controller.weave_out_remarks(sample, RawTitleStub.new, i)
- assert_equal l_t, (pre + l_t + l_r)[target_range.begin...target_range.end]
- assert_equal target_range.begin, remark_pos_ranges.first.begin
- assert_equal target_range.end, remark_pos_ranges.first.end
- end
-
- ### Helper functions
-
- def assert_insert_remark(logi,text,pre_text,ins_text,post_text,first_pos,last_pos)
- post :create, {:ll_link_string => logi.link.to_s,
- :body_with_inserts => pre_text + '<a title="' + text + '">' + ins_text + '</a>' + post_text,
- :positioned => 1}.merge(self.thorny_ok_hash)
- assert_response :redirect
- r = logi.remarks.find_by_message(text)
- assert_equal first_pos, r.position_ranges.first.first
- assert_equal last_pos, r.position_ranges.first.last
- end
end
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wy...@us...> - 2009-11-18 15:45:21
|
Revision: 1641
http://logilogi.svn.sourceforge.net/logilogi/?rev=1641&view=rev
Author: wybow
Date: 2009-11-18 15:45:13 +0000 (Wed, 18 Nov 2009)
Log Message:
-----------
Lowercase logi & cached uservoice
Modified Paths:
--------------
trunk/app/helpers/application_helper.rb
trunk/app/views/changes/_recent_or_new_logis.html.erb
trunk/app/views/comments/_new.html.erb
trunk/app/views/layouts/_foot.html.erb
trunk/app/views/layouts/_head.html.erb
trunk/app/views/logis/_found_logis.html.erb
trunk/app/views/logis/_snippet.html.erb
trunk/app/views/main_page/_recent_or_new_logis.html.erb
trunk/app/views/peer_groups/_activity.html.erb
trunk/app/views/users/_activity.html.erb
trunk/public/stylesheets/logilogi.css
Added Paths:
-----------
trunk/public/images/uv/
trunk/public/images/uv/feedback_tab_black.png
trunk/public/javascripts/tab.js
Modified: trunk/app/helpers/application_helper.rb
===================================================================
--- trunk/app/helpers/application_helper.rb 2009-11-18 14:05:07 UTC (rev 1640)
+++ trunk/app/helpers/application_helper.rb 2009-11-18 15:45:13 UTC (rev 1641)
@@ -86,26 +86,30 @@
tabs = []
if logi.home_page?
- tabs.concat([
+ tabs.push(
{:text => _("Home Logi"), :name => "home_page",
- :description => _("Logi that is a home page")}])
+ :description => _("Logi that is a home page")})
else
- tabs.concat([
- {:text => _("Contenders"), :name => "contending_logis",
- :description => _("Logis competing for the same tags")},
- {:text => _("Comments on"), :name => "comments_on",
- :description => _("This logi comments to the following logis"),
- :disabled => logi.comments_on_logis.empty?},
- {:text => _("Path"), :name => "paths",
- :description => _("This logi is part of a read-path"),
- :disabled => logi.steps.empty?}])
+ tabs.push(
+ {:text => _("Contenders"), :name => "contending_logis",
+ :description => _("Logis competing for the same tags")})
end
-
- tabs.concat([
+ tabs.push(
{:text => _("Incoming"), :name => "incoming_links",
:description => _("Links to this logi"),
- :disabled => current_context.incoming_links_to_logi.empty?}])
-
+ :disabled => current_context.incoming_links_to_logi.empty?})
+ if !logi.home_page?
+ if !logi.comments_on_logis.empty?
+ tabs.push(
+ {:text => _("Is comment on"), :name => "comments_on",
+ :description => _("This logi comments on the following logis")})
+ end
+ if !logi.steps.empty?
+ tabs.push(
+ {:text => _("Path"), :name => "paths",
+ :description => _("This logi is part of a read-path")})
+ end
+ end
return tabs
end
Modified: trunk/app/views/changes/_recent_or_new_logis.html.erb
===================================================================
--- trunk/app/views/changes/_recent_or_new_logis.html.erb 2009-11-18 14:05:07 UTC (rev 1640)
+++ trunk/app/views/changes/_recent_or_new_logis.html.erb 2009-11-18 15:45:13 UTC (rev 1641)
@@ -1,10 +1,10 @@
<% selected ||= "recently_changed_logis" %>
<div id="<%= selected %>" class="index">
<% render :layout => 'application/panel_with_tabs_ajax', :locals => {:tabs => [
- {:text => _("Recently changed Logis"), :name => "recently_changed_logis",
+ {:text => _("Recently changed logis"), :name => "recently_changed_logis",
:rss_link => (GlobalConfig.use_log_log ? log_log_feed_link(:channel => 'logis') : nil),
:description => '<h2>' + _("Logis that have recenly been edited") + '</h2>'},
- {:text => _("New Logis"), :name => "new_logis",
+ {:text => _("New logis"), :name => "new_logis",
:rss_link => (GlobalConfig.use_log_log ? log_log_feed_link(:channel => 'changes') : nil),
:description => '<h2>' + _("Logis that have just been created") + '</h2>'}],
:selected => selected, :id => "recenting", :update => 'recent_or_new_logis'} do %>
Modified: trunk/app/views/comments/_new.html.erb
===================================================================
--- trunk/app/views/comments/_new.html.erb 2009-11-18 14:05:07 UTC (rev 1640)
+++ trunk/app/views/comments/_new.html.erb 2009-11-18 15:45:13 UTC (rev 1641)
@@ -3,9 +3,9 @@
:logis => @logi.commenting_logis, :unfold_disabled => true} %>
<% render :layout => 'application/panel_with_tabs_ajax', :locals => {:tabs => [
- {:text => _("New Logi"), :name => "new_logi",
+ {:text => _("New logi"), :name => "new_logi",
:description => _("Create a new logi as a comment")},
- {:text => _("Existing Logi"), :name => "existing_logi",
+ {:text => _("Existing logi"), :name => "existing_logi",
:description => _("Paste (Ctrl V) the permanent link to the logi you want to add")}],
:selected => selected, :id => "new_comment", :update_selected => true} do %>
<% end %>
Modified: trunk/app/views/layouts/_foot.html.erb
===================================================================
--- trunk/app/views/layouts/_foot.html.erb 2009-11-18 14:05:07 UTC (rev 1640)
+++ trunk/app/views/layouts/_foot.html.erb 2009-11-18 15:45:13 UTC (rev 1641)
@@ -79,12 +79,6 @@
mcorners.run();
<% end -%>
<script type="text/javascript">
- var uservoiceJsHost = ("https:" == document.location.protocol) ?
- "https://uservoice.com" : "http://cdn.uservoice.com";
- document.write(unescape("%3Cscript src='" + uservoiceJsHost +
- "/javascripts/widgets/tab.js' type='text/javascript'%3E%3C/script%3E"))
- </script>
- <script type="text/javascript">
UserVoice.Tab.show({
key: 'logilogi',
host: 'logilogi.uservoice.com',
Modified: trunk/app/views/layouts/_head.html.erb
===================================================================
--- trunk/app/views/layouts/_head.html.erb 2009-11-18 14:05:07 UTC (rev 1640)
+++ trunk/app/views/layouts/_head.html.erb 2009-11-18 15:45:13 UTC (rev 1641)
@@ -12,7 +12,9 @@
<link rel="shortcut icon" href="/favicon.ico" type="image/x-icon" />
<!-- TinyMCE is included on edits -->
<%= javascript_include_tag "tiny_mce/tiny_mce" %>
- <%= javascript_include_tag "shortcut", :defaults, "dropdowntabs", "taglist", "body_inserter", "magick_corners", "custom-form-elements", :cache => true %>
+ <%= javascript_include_tag "shortcut", :defaults, "dropdowntabs", "taglist",
+ "body_inserter", "magick_corners", "custom-form-elements", "tab",
+ :cache => true %>
<%= stylesheet_link_tag "logilogi" %>
<!--[if IE]>
<%= stylesheet_link_tag "ie" %>
Modified: trunk/app/views/logis/_found_logis.html.erb
===================================================================
--- trunk/app/views/logis/_found_logis.html.erb 2009-11-18 14:05:07 UTC (rev 1640)
+++ trunk/app/views/logis/_found_logis.html.erb 2009-11-18 15:45:13 UTC (rev 1641)
@@ -20,7 +20,7 @@
<% render :layout => 'application/panel', :locals => {:id => "no_matches_for_tags"} do %>
<p><%= _("No matches found for the given tags") %></p>
<div class="notice_cloud"><%= _('Want to find it next time ?') %></div>
- <%= new_logi_button 'Create a new Logi for these tags' %>
+ <%= new_logi_button 'Create a new logi for these tags' %>
<% end %>
<% if !@reduced_matching_logis.empty? %>
Modified: trunk/app/views/logis/_snippet.html.erb
===================================================================
--- trunk/app/views/logis/_snippet.html.erb 2009-11-18 14:05:07 UTC (rev 1640)
+++ trunk/app/views/logis/_snippet.html.erb 2009-11-18 15:45:13 UTC (rev 1641)
@@ -20,7 +20,7 @@
<h1><%= logi_ll_link(logi, :show => :title, :length => 35) %></h1>
<%= by_author(logi.creator) %>
<div class="spacer"></div>
- <p><%= logi.current_snippet %> <%= link_to _("...read on"), logi_url(logi.link) %></p>
+ <p class="snippet_body"><%= logi.current_snippet %> <%= link_to _("...read on"), logi_url(logi.link) %></p>
<div class="spacer"></div>
<span class="tags"><em>tags:</em>
<%= browse_ll_link(logi.link, :step => -1, :length => 78) %>
Modified: trunk/app/views/main_page/_recent_or_new_logis.html.erb
===================================================================
--- trunk/app/views/main_page/_recent_or_new_logis.html.erb 2009-11-18 14:05:07 UTC (rev 1640)
+++ trunk/app/views/main_page/_recent_or_new_logis.html.erb 2009-11-18 15:45:13 UTC (rev 1641)
@@ -1,10 +1,10 @@
<% selected ||= "new_logis" %>
<div id="<%= selected %>">
<% render :layout => 'application/panel_with_tabs_ajax', :locals => {:tabs => [
- {:text => _("New Logis"), :name => "new_logis",
+ {:text => _("New logis"), :name => "new_logis",
:rss_link => (GlobalConfig.use_log_log ? log_log_feed_link(:channel => 'logis') : nil),
:description => _("Logis that have just been created")},
- {:text => _("Recently changed Logis"), :name => "recently_changed_logis",
+ {:text => _("Recently changed logis"), :name => "recently_changed_logis",
:rss_link => (GlobalConfig.use_log_log ? log_log_feed_link(:channel => 'changes') : nil),
:description => _("Logis that have recenly been edited")}],
:selected => selected, :id => "recenting", :update_selected => true} do %>
@@ -30,9 +30,9 @@
<% render :layout => 'application/panel', :locals => {:id => "view_all"} do %>
<p>
<% if selected == "new_logis" %>
- <%= link_to _('View all newly created Logis'), changes_url(:selected => :new_logis) %>
+ <%= link_to _('View all newly created logis'), changes_url(:selected => :new_logis) %>
<% else %>
- <%= link_to _('View all recently changed Logis'), changes_url() %>
+ <%= link_to _('View all recently changed logis'), changes_url() %>
<% end %>
</p>
<% end %>
Modified: trunk/app/views/peer_groups/_activity.html.erb
===================================================================
--- trunk/app/views/peer_groups/_activity.html.erb 2009-11-18 14:05:07 UTC (rev 1640)
+++ trunk/app/views/peer_groups/_activity.html.erb 2009-11-18 15:45:13 UTC (rev 1641)
@@ -2,7 +2,7 @@
<h3>Stats</h3>
<dl class="statistics">
<dt><%= _("Members") %>:</dt><dd><%= peer_group.memberships.count %></dd>
- <dt><%= _("Rated Logis") %>:<dt/><dd><%= peer_group.ratings.count %></dd>
+ <dt><%= _("Rated logis") %>:<dt/><dd><%= peer_group.ratings.count %></dd>
</dl>
<h3>Rankings</h3>
<table class="rankings">
Modified: trunk/app/views/users/_activity.html.erb
===================================================================
--- trunk/app/views/users/_activity.html.erb 2009-11-18 14:05:07 UTC (rev 1640)
+++ trunk/app/views/users/_activity.html.erb 2009-11-18 15:45:13 UTC (rev 1641)
@@ -1,8 +1,8 @@
<% render :layout => 'application/panel_with_header', :locals => {:title => "Activity", :id => "activity"} do %>
<h3>Stats</h3>
<dl class="statistics">
- <dt><%= _("Created Logis") %>:</dt><dd><%= user.created_logis.count %></dd>
- <dt><%= _("Edited Logis") %>:</dt><dd><%= user.edited_logi_versions.count %></dd>
+ <dt><%= _("Created logis") %>:</dt><dd><%= user.created_logis.count %></dd>
+ <dt><%= _("Edited logis") %>:</dt><dd><%= user.edited_logi_versions.count %></dd>
</dl>
<h3>Status</h3>
<table class="rankings">
Added: trunk/public/images/uv/feedback_tab_black.png
===================================================================
(Binary files differ)
Property changes on: trunk/public/images/uv/feedback_tab_black.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: trunk/public/javascripts/tab.js
===================================================================
--- trunk/public/javascripts/tab.js (rev 0)
+++ trunk/public/javascripts/tab.js 2009-11-18 15:45:13 UTC (rev 1641)
@@ -0,0 +1,148 @@
+if(!UserVoice){var UserVoice={};}
+UserVoice.Util={sslAssetHost:"https://cdn.uservoice.com",assetHost:"http://cdn.uservoice.com",getAssetHost:function(){return("https:"==document.location.protocol)?this.sslAssetHost:this.assetHost;},render:function(template,params){return template.replace(/\#{([^{}]*)}/g,function(a,b){var r=params[b];return typeof r==='string'||typeof r==='number'?r:a;})},toQueryString:function(params){var pairs=[];for(key in params){if(params[key]!=null&¶ms[key]!=''){pairs.push([key,params[key]].join('='));}}
+return pairs.join('&');},isIE6:function(){if(/MSIE (\d+\.\d+);/.test(navigator.userAgent)){var version=new Number(RegExp.$1);return version<7;}else{return false;}},includeCss:function(css){var styleElement=document.createElement('style');styleElement.setAttribute('type','text/css');styleElement.setAttribute('media','screen');if(styleElement.styleSheet){styleElement.styleSheet.cssText=css;}else{styleElement.appendChild(document.createTextNode(css));}
+document.getElementsByTagName('head')[0].appendChild(styleElement);}}
+UserVoice.Page={getDimensions:function(){var de=document.documentElement;var width=window.innerWidth||self.innerWidth||(de&&de.clientWidth)||document.body.clientWidth;var height=window.innerHeight||self.innerHeight||(de&&de.clientHeight)||document.body.clientHeight;return{width:width,height:height};}}
+UserVoice.Dialog={preload:function(id_or_html){if(!this.preloaded){var element=document.getElementById(id_or_html);var html=(element==null)?id_or_html:element.innerHTML;this.setContent(html);this.preloaded=true;}},show:function(id_or_html){if(!this.preloaded){this.preload(id_or_html);}
+this.Overlay.show();this.setPosition();UserVoice.Element.addClassName(this.htmlElement(),'dialog-open');this.element().style.display='block';this.preloaded=false;},close:function(){var change=UserVoice.needsConfirm;if(change){var answer=confirm(change);if(!answer){return}}
+this.element().style.display='none';UserVoice.Element.removeClassName(this.htmlElement(),'dialog-open');this.Overlay.hide();UserVoice.onClose();},id:'uservoice-dialog',css_template:"\
+ #uservoice-dialog {\
+ z-index: 100003;\
+ display: block;\
+ text-align: left;\
+ margin: 0 auto;\
+ position: absolute; \
+ }\
+ \
+ #uservoice-overlay {\
+ position: absolute;\
+ z-index:100002;\
+ width: 100%;\
+ height: 100%;\
+ left: 0;\
+ top: 0;\
+ background-color: #000;\
+ opacity: .7;\
+ filter: alpha(opacity=70);\
+ }\
+ \
+ #uservoice-dialog[id],\
+ #uservoice-overlay[id] {\
+ position:fixed;\
+ }\
+ \
+ #uservoice-overlay p {\
+ padding: 5px;\
+ color: #ddd;\
+ font: bold 14px arial, sans-serif;\
+ margin: 0;\
+ letter-spacing: -1px;\
+ }\
+ \
+ #uservoice-dialog #uservoice-dialog-close {\
+ position: absolute;\
+ height: 48px;\
+ width: 48px;\
+ top: -11px;\
+ right: -12px;\
+ color: #06c;\
+ cursor: pointer;\
+ background-position: 0 0;\
+ background-repeat: no-repeat;\
+ background-color: transparent;\
+ }\
+ \
+ * html.dialog-open body {\
+ height: 100%;\
+ }\
+ \
+ * html.dialog-open,\
+ * html.dialog-open body {\
+ overflow: hidden;\
+ }\
+ \
+ html.dialog-open object,\
+ html.dialog-open embed,\
+ * html.dialog-open select {\
+ visibility: hidden;\
+ }\
+ \
+ * html #uservoice-overlay {\
+ width: 110%;\
+ }\
+ \
+ * html #uservoice-dialog #uservoice-dialog-close {\
+ background: none;\
+ filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='https://uservoice.com/images/icons/close.png');\
+ }\
+ \
+ a#uservoice-dialog-close { background-image: url(#{background_image_url}); }",element:function(){if(!document.getElementById(this.id)){var dummy=document.createElement('div');dummy.innerHTML='<div id="'+this.id+'" class="uservoice-component" style="display:none;">'+'<a href="#" id="'+this.id+'-close"><span style="display: none;">Close</span></a>'+'<div id="'+this.id+'-content"></div></div>';document.body.insertBefore(dummy.firstChild,document.body.firstChild);}
+return document.getElementById(this.id);},setContent:function(html){this.element()
+if(typeof(Prototype)!='undefined'){document.getElementById(this.id+"-content").innerHTML=html.stripScripts();setTimeout(function(){html.evalScripts()},100);}else{document.getElementById(this.id+"-content").innerHTML=html;}},setPosition:function(){var dialogDimensions=UserVoice.Element.getDimensions(this.element());var pageDimensions=UserVoice.Page.getDimensions();var els=this.element().style;els.width='auto';els.height='auto';var left=((pageDimensions.width-dialogDimensions.width)/2);els.left=left+"px";var top=((pageDimensions.height-dialogDimensions.height)/2);top=top<20?20:top;if(UserVoice.Util.isIE6()){top+=document.documentElement?document.documentElement.scrollTop:document.body.scrollTop}
+els.top=top+"px";},htmlElement:function(){return document.getElementsByTagName('html')[0];}}
+UserVoice.Dialog.Overlay={show:function(){this.element().style.display='block';if(UserVoice.Util.isIE6()){this.element().style.top=document.documentElement?document.documentElement.scrollTop:document.body.scrollTop}},hide:function(){this.element().style.display='none';},id:'uservoice-overlay',element:function(){if(!document.getElementById(this.id)){var dummy=document.createElement('div');dummy.innerHTML='<div id="'+this.id+'" class="uservoice-component" style="display:none;"></div>';document.body.insertBefore(dummy.firstChild,document.body.firstChild);}
+return document.getElementById(this.id);}}
+UserVoice.Element={getDimensions:function(element){var display=element.display;if(display!='none'&&display!=null){return{width:element.offsetWidth,height:element.offsetHeight};}
+var els=element.style;var originalVisibility=els.visibility;var originalPosition=els.position;var originalDisplay=els.display;els.visibility='hidden';els.position='absolute';els.display='block';var originalWidth=element.clientWidth;var originalHeight=element.clientHeight;els.display=originalDisplay;els.position=originalPosition;els.visibility=originalVisibility;return{width:originalWidth,height:originalHeight};},hasClassName:function(element,className){var elementClassName=element.className;return(elementClassName.length>0&&(elementClassName==className||new RegExp("(^|\\s)"+className+"(\\s|$)").test(elementClassName)));},addClassName:function(element,className){if(!this.hasClassName(element,className)){element.className+=(element.className?' ':'')+className;}
+return element;},removeClassName:function(element,className){element.className=element.className.replace(new RegExp("(^|\\s+)"+className+"(\\s+|$)"),' ');return element;}}
+UserVoice.needsConfirm=false;UserVoice.'/images/icons/close.png'}));MixpanelLib=function(q){metrics={};metrics.super_properties={"all":{},"events":{},"funnels":{}};metrics.init=function(a){var b=(("https:"==document.location.protocol)?"https://":"http://");metrics.token=a;metrics.api_host=b+'api.mixpanel.com';try{metrics.get_super()}catch(err){}};metrics.send_request=function(a,b){var c='mpmetrics.jsonp_callback';if(a.indexOf("?")>-1){a+="&callback="}else{a+="?callback="}a+=c+"&";if(b){a+=metrics.http_build_query(b)}a+='&_='+new Date().getTime().toString();var d=document.createElement("script");d.setAttribute("src",a);d.setAttribute("type","text/javascript");document.body.appendChild(d)};metrics.log=function(a,b){if(!a.project){a.project=metrics.token}if(a.project&&a.category){metrics.callback=b;a.ip=1;metrics.send_request(metrics.api_host+"/log/",a)}};metrics.track_funnel=function(a,b,c,d,e){if(!d){d={}}d.funnel=a;d.step=parseInt(b,10);d.goal=c;if(d.step==1){if(document.referrer.search('http://(.*)google.com')===0){var f=metrics.get_query_param(document.referrer,'q');if(f.length){metrics.register({'mp_keyword':f},'funnels')}}}metrics.track('mp_funnel',d,e,"funnels")};metrics.get_query_param=function(a,b){b=b.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");var c="[\\?&]"+b+"=([^&#]*)";var d=new RegExp(c);var e=d.exec(a);if(e===null||(e&&typeof(e[1])!='string'&&e[1].length)){return''}else{return unescape(e[1]).replace(/\+/g,' ')}};metrics.track=function(a,b,c,d){if(!d){d="events"}if(!b){b={}}if(!b.token){b.token=metrics.token}if(c){metrics.callback=c}b.time=metrics.get_unixtime();if(d!="all"){for(var p in metrics.super_properties[d]){if(!b[p]){b[p]=metrics.super_properties[d][p]}}}if(metrics.super_properties.all){for(p in metrics.super_properties.all){if(!b[p]){b[p]=metrics.super_properties.all[p]}}}var e={'event':a,'properties':b};var f=metrics.base64_encode(metrics.json_encode(e));metrics.send_request(metrics.api_host+'/track/',{'data':f,'ip':1})};metrics.register_once=function(a,b,c,d){if(!b||!metrics.super_properties[b]){b="all"}if(!c){c="None"}if(!d){d=7}if(a){for(var p in a){if(p){if(!metrics.super_properties[b][p]||metrics.super_properties[b][p]==c){metrics.super_properties[b][p]=a[p]}}}}metrics.set_cookie("mp_super_properties",metrics.json_encode(metrics.super_properties),d)};metrics.register=function(a,b,c){if(!b||!metrics.super_properties[b]){b="all"}if(!c){c=7}if(a){for(var p in a){if(p){metrics.super_properties[b][p]=a[p]}}}metrics.set_cookie("mp_super_properties",metrics.json_encode(metrics.super_properties),c)};metrics.http_build_query=function(a,b){var c,use_val,use_key,i=0,tmp_arr=[];if(!b){b='&'}for(c in a){if(c){use_val=encodeURIComponent(a[c].toString());use_key=encodeURIComponent(c);tmp_arr[i++]=use_key+'='+use_val}}return tmp_arr.join(b)};metrics.get_unixtime=function(){return parseInt(new Date().getTime().toString().substring(0,10),10)};metrics.jsonp_callback=function(a){if(metrics.callback){metrics.callback(a);metrics.callback=false}};metrics.json_encode=function(j){var l;var m=j;var i;var n=function(b){var d=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g;var e={'\b':'\\b','\t':'\\t','\n':'\\n','\f':'\\f','\r':'\\r','"':'\\"','\\':'\\\\'};d.lastIndex=0;return d.test(b)?'"'+b.replace(d,function(a){var c=e[a];return typeof c==='string'?c:'\\u'+('0000'+a.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+b+'"'};var o=function(a,b){var c='';var d=' ';var i=0;var k='';var v='';var e=0;var f=c;var g=[];var h=b[a];if(h&&typeof h==='object'&&typeof h.toJSON==='function'){h=h.toJSON(a)}switch(typeof h){case'string':return n(h);case'number':return isFinite(h)?String(h):'null';case'boolean':case'null':return String(h);case'object':if(!h){return'null'}c+=d;g=[];if(Object.prototype.toString.apply(h)==='[object Array]'){e=h.length;for(i=0;i<e;i+=1){g[i]=o(i,h)||'null'}v=g.length===0?'[]':c?'[\n'+c+g.join(',\n'+c)+'\n'+f+']':'['+g.join(',')+']';c=f;return v}for(k in h){if(Object.hasOwnProperty.call(h,k)){v=o(k,h);if(v){g.push(n(k)+(c?': ':':')+v)}}}v=g.length===0?'{}':c?'{'+g.join(',')+''+f+'}':'{'+g.join(',')+'}';c=f;return v}};return o('',{'':m})};metrics.base64_encode=function(a){var b="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var c,o2,o3,h1,h2,h3,h4,bits,i=0,ac=0,enc="",tmp_arr=[];if(!a){return a}a=metrics.utf8_encode(a+'');do{c=a.charCodeAt(i++);o2=a.charCodeAt(i++);o3=a.charCodeAt(i++);bits=c<<16|o2<<8|o3;h1=bits>>18&0x3f;h2=bits>>12&0x3f;h3=bits>>6&0x3f;h4=bits&0x3f;tmp_arr[ac++]=b.charAt(h1)+b.charAt(h2)+b.charAt(h3)+b.charAt(h4)}while(i<a.length);enc=tmp_arr.join('');switch(a.length%3){case 1:enc=enc.slice(0,-2)+'==';break;case 2:enc=enc.slice(0,-1)+'=';break}return enc};metrics.utf8_encode=function(a){a=(a+'').replace(/\r\n/g,"\n").replace(/\r/g,"\n");var b="";var c,end;var d=0;c=end=0;d=a.length;for(var n=0;n<d;n++){var e=a.charCodeAt(n);var f=null;if(e<128){end++}else if((e>127)&&(e<2048)){f=String.fromCharCode((e>>6)|192)+String.fromCharCode((e&63)|128)}else{f=String.fromCharCode((e>>12)|224)+String.fromCharCode(((e>>6)&63)|128)+String.fromCharCode((e&63)|128)}if(f!==null){if(end>c){b+=a.substring(c,end)}b+=f;c=end=n+1}}if(end>c){b+=a.substring(c,a.length)}return b};metrics.set_cookie=function(a,b,c){var d=new Date();d.setDate(d.getDate()+c);document.cookie=a+"="+escape(b)+((c===null)?"":";expires="+d.toGMTString())+"; path=/"};metrics.get_cookie=function(a){if(document.cookie.length>0){var b=document.cookie.indexOf(a+"=");if(b!=-1){b=b+a.length+1;var c=document.cookie.indexOf(";",b);if(c==-1){c=document.cookie.length}return unescape(document.cookie.substring(b,c))}}return""};metrics.get_super=function(){var a=eval('('+metrics.get_cookie("mp_super_properties")+')');if(a){for(var i in a){if(i){metrics.super_properties[i]=a[i]}}}};metrics.init(q);return metrics}
+if(!UserVoice){var UserVoice={};}
+UserVoice.Logger={_log:function(message){if(typeof console!=="undefined"&&typeof console.log!=="undefined"){try{console.log(message);}catch(e){}}},warning:function(message){this._log("UserVoice WARNING: "+message);},error:function(message){this._log("UserVoice ERROR: "+message);alert("UserVoice ERROR: "+message);}};UserVoice.Util={sslAssetHost:"https://cdn.uservoice.com",assetHost:"http://cdn.uservoice.com",getAssetHost:function(){return("https:"==document.location.protocol)?this.sslAssetHost:this.assetHost;},render:function(template,params){return template.replace(/\#{([^{}]*)}/g,function(a,b){var r=params[b];return typeof r==='string'||typeof r==='number'?r:a;})},toQueryString:function(params){var pairs=[];for(key in params){if(params[key]!=null&¶ms[key]!=''){pairs.push([key,params[key]].join('='));}}
+return pairs.join('&');},isIE6:function(){if(/MSIE (\d+\.\d+);/.test(navigator.userAgent)){var version=new Number(RegExp.$1);return version<7;}else{return false;}},includeCss:function(css){var styleElement=document.createElement('style');styleElement.setAttribute('type','text/css');styleElement.setAttribute('media','screen');if(styleElement.styleSheet){styleElement.styleSheet.cssText=css;}else{styleElement.appendChild(document.createTextNode(css));}
+document.getElementsByTagName('head')[0].appendChild(styleElement);}}
+UserVoice.Popin={content_template:'<iframe src="#{url}/widgets/#{dialog}.html?#{query}" frameborder="0" scrolling="no" allowtransparency="true" width="#{width}" height="#{height}" style="height: #{height}; width: #{width};"></iframe>',setup:function(options){this.setupOptions(options);},setupOptions:function(options){if(typeof(options)==='undefined'){return;}
+if(options.key==null&&options.host==null){UserVoice.Logger.error("'host' must be set.");UserVoice.Logger.error("'key' must be set.");}else if(options.key==null){UserVoice.Logger.warning("'key' must be set for the widget to work with SSL.")}
+if(options.forum==null){UserVoice.Logger.error("'forum' must be set.");}
+if(!options.params){options.params={};}
+this.options=options;},preload:function(options){this.setupOptions(options);UserVoice.Dialog.preload(UserVoice.Util.render(this.content_template,this.getContext()));},show:function(options){this.setupOptions(options);UserVoice.Dialog.show(UserVoice.Util.render(this.content_template,this.getContext()));},getContext:function(){var context={dialog:'popin',width:'350px',height:'430px',lang:'en'};for(attr in this.options){context[attr]=this.options[attr]};context.url=this.url();context.params.lang=this.options.lang;context.params.referer=this.getReferer();context.query=UserVoice.Util.toQueryString(context.params);return context;},getReferer:function(){var referer=window.location.href;if(referer.indexOf('?')!=-1){referer=referer.substring(0,referer.indexOf('?'));}
+return referer;},url:function(){if("https:"==document.location.protocol&&this.options.key!=null){var url='https://'+this.options.key+'.uservoice.com/pages/'+this.options.forum;}else{var url='http://'+this.options.host+'/pages/'+this.options.forum;}
+return url;}}
+UserVoice.Tab={id:"uservoice-feedback-tab",css_template:"\
+ body a#uservoice-feedback-tab,\
+ body a#uservoice-feedback-tab:link {\
+ background-position: 2px 50% !important;\
+ position: fixed !important;\
+ top: 45% !important;\
+ display: block !important;\
+ width: 25px !important;\
+ height: 98px !important;\
+ margin: -45px 0 0 0 !important;\
+ padding: 0 !important;\
+ z-index: 100001 !important;\
+ background-position: 2px 50% !important;\
+ background-repeat: no-repeat !important;\
+ text-indent: -9000px;\
+ }\
+ \
+ body a#uservoice-feedback-tab:hover {\
+ cursor: pointer;\
+ }\
+ \
+ * html a#uservoice-feedback-tab,\
+ * html a#uservoice-feedback-tab:link {\
+ position: absolute !important;\
+ background-image: none !important;\
+ }\
+ \
+ a##{id} { \
+ #{alignment}: 0; \
+ background-repeat: no-repeat; \
+ background-color: #{background_color}; \
+ background-image: url(#{text_url}); \
+ border: outset 1px #{background_color}; \
+ border-#{alignment}: none; \
+ }\
+ \
+ a##{id}:hover { \
+ background-color: #{hover_color}; \
+ border: outset 1px #{hover_color}; \
+ border-#{alignment}: none; \
+ }\
+ \
+ * html a##{id} { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='#{text_url}'); }",show:function(options){this.setupOptions(options||{});UserVoice.Popin.setup(options);var html='<a id="'+this.id+'"';if(!this.options.no_dialog){html+='" ';if(this.options.preload){html+='" ';}}
+html+=' href="'+UserVoice.Popin.url()+'">'+(this.options.tab_string[this.options.lang]?this.options.tab_string[this.options.lang]:'Feedback')+'</a>';var tab=document.createElement('div');tab.setAttribute('id','uservoice-feedback');tab.innerHTML=html;document.body.insertBefore(tab,document.body.firstChild);if(!this.options.no_styles){UserVoice.Util.includeCss(UserVoice.Util.render(this.css_template,this.options));}},setupOptions:function(options){this.options={alignment:'left',background_color:'#f00',text_color:'white',hover_color:'#06C',lang:'en',no_styles:false,no_dialog:false,preload:true}
+for(attr in options){this.options[attr]=options[attr];}
+this.options.tab_string={cn:"反馈",de:"Feedback",es:"Sugerencias",fr:"Commentaires",ja:"フィードバック",nl:"Feedback",pt_BR:"Comentário"};this.options.text_url='/images/uv/feedback_tab_black.png';this.options.id=this.id;}}
+UserVoice.Metrics={events:{},mpmetrics:null,enabled:true,track:function(funnel,step,name){if(this.enabled){if(!this.mpmetrics){this.mpmetrics=MixpanelLib('7a0a5074ecca7025afedfe04d9eb214f');}
+if(!this.events[name]){this.mpmetrics.track(name);this.mpmetrics.track_funnel(funnel,2,name);this.events[name]=true;}}}}
+UserVoice.Metrics.enabled=false;if(typeof(uservoiceOptions)!=='undefined'&&uservoiceOptions.showTab==true){UserVoice.Tab.show(uservoiceOptions);}
Modified: trunk/public/stylesheets/logilogi.css
===================================================================
--- trunk/public/stylesheets/logilogi.css 2009-11-18 14:05:07 UTC (rev 1640)
+++ trunk/public/stylesheets/logilogi.css 2009-11-18 15:45:13 UTC (rev 1641)
@@ -964,7 +964,7 @@
color: #818181;
}
.logi .author {
- padding: 0 0 0.8em 0;
+ padding: 0 0 0 0;
display: block;
font-size: 1em;
}
@@ -978,8 +978,8 @@
padding: 0 0 0.2em 0;
margin-top: 0.8em;
}
-.snippet p {
- padding: 0 0 0.2em 0;
+.snippet p.snippet_body {
+ padding: 0.5em 0 0.2em 0;
font-size: 1.2em;
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wy...@us...> - 2009-11-18 14:05:18
|
Revision: 1640
http://logilogi.svn.sourceforge.net/logilogi/?rev=1640&view=rev
Author: wybow
Date: 2009-11-18 14:05:07 +0000 (Wed, 18 Nov 2009)
Log Message:
-----------
Separated remarks from annotations and cleaned up interface
Modified Paths:
--------------
trunk/app/controllers/application_controller.rb
trunk/app/controllers/comments_controller.rb
trunk/app/controllers/external_links_controller.rb
trunk/app/controllers/links_controller.rb
trunk/app/controllers/logi_inserts_controller.rb
trunk/app/controllers/ratings_controller.rb
trunk/app/controllers/remarks_controller.rb
trunk/app/controllers/users_controller.rb
trunk/app/controllers/votes_controller.rb
trunk/app/helpers/application_helper.rb
trunk/app/models/logi.rb
trunk/app/models/logi_version.rb
trunk/app/models/remark.rb
trunk/app/views/application/_panel_with_tabs_js.html.erb
trunk/app/views/application/_popover_listing.html.erb
trunk/app/views/comments/_new.html.erb
trunk/app/views/external_links/edit.html.erb
trunk/app/views/links/_listing.html.erb
trunk/app/views/links/edit.html.erb
trunk/app/views/logi_inserts/_remove_bar.html.erb
trunk/app/views/logi_inserts/new.html.erb
trunk/app/views/logis/_commenting_logis.html.erb
trunk/app/views/logis/_comments_on.html.erb
trunk/app/views/logis/_navigation_bar_edit.html.erb
trunk/app/views/logis/_snippet.html.erb
trunk/app/views/remarks/_list.html.erb
trunk/config/routes.rb
trunk/db/schema.rb
trunk/doc/README_FOR_APP
trunk/public/javascripts/application.js
trunk/public/javascripts/body_inserter.js
trunk/public/stylesheets/logilogi.css
trunk/test/fixtures/remarks.yml
trunk/test/unit/logi_test.rb
trunk/test/unit/logi_version_test.rb
trunk/test/unit/remark_test.rb
Added Paths:
-----------
trunk/app/controllers/annotations_controller.rb
trunk/app/controllers/linked_logis_controller.rb
trunk/app/models/annotation.rb
trunk/app/views/annotations/
trunk/app/views/annotations/_listing.html.erb
trunk/app/views/annotations/_new.html.erb
trunk/app/views/annotations/edit.html.erb
trunk/app/views/logi_inserts/_insert_bar_remove.html.erb
trunk/app/views/logis/_insert_bar.html.erb
trunk/app/views/logis/_navigation_bar_insert.html.erb
trunk/db/migrate/20091113112526_positioned_remarks_as_annotations.rb
trunk/test/fixtures/annotations.yml
trunk/test/unit/annotation_test.rb
Removed Paths:
-------------
trunk/app/views/logi_inserts/_edit_bar_remove.html.erb
trunk/app/views/remarks/_listing.html.erb
Added: trunk/app/controllers/annotations_controller.rb
===================================================================
--- trunk/app/controllers/annotations_controller.rb (rev 0)
+++ trunk/app/controllers/annotations_controller.rb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -0,0 +1,97 @@
+#--#
+# Copyright: (c) 2006-2009 The LogiLogi Foundation <fou...@lo...>
+#
+# License:
+# This file is part of the LogiLogi program. LogiLogi is Free Software.
+# You can run/distribute/modify LogiLogi under the terms of the GNU Affero
+# General Public License version 3. The Affero GPL states that running a
+# modified version or a derivative work also requires you to make the source
+# code of that work available to everyone that can interact with it. We
+# chose the Affero GPL to ensure that LogiLogi remains open and libre
+# (doc/LICENSE contains the full text of the legally binding license).
+#++#
+
+class AnnotationsController < ApplicationController
+ layout 'blank'
+
+ ### Filters
+
+ before_filter :resolve_context, :page_name, :find_logi_and_logi_version, :except => :index
+
+ ### Bodies
+
+ top_body :navigation_bar_insert,
+ : [:create, :edit, :destroy]
+
+ def create
+ new_annotation_position_range_list = self.weave_out_annotations(
+ params[:body_with_inserts], @logi_version, @logi)
+ if new_annotation_position_range_list.empty?
+ @logi.errors.add(:selection, 'needs to be made in the logi at the' +
+ ' location where the annotation should be inserted and the annotation should not be empty')
+ end
+
+ if @logi.errors.empty?
+ # Only one at the same time for now
+ @annotation = new_annotation_position_range_list.first.annotation
+ @annotation.user = current_user
+ @annotation.logi = @logi
+ @annotation.position_ranges = new_annotation_position_range_list.translate_from_view(
+ @logi_version.position_ranges)
+ else
+ @annotation = Annotation.new(:message => params[:annotation][:message])
+ end
+
+ if @logi.errors.empty? and @annotation.valid? and self.thorny_form_free_of_spam?
+ @annotation.save
+ flash[:notice] = "Successfully added annotation"
+ redirect_to logi_url(@logi)
+ else
+ flash.now[:error] = "Problem adding annotation"
+ @selected = 'annotation'
+ render :template => 'logi_inserts/new'
+ end
+ end
+
+ def edit
+ @annotations = @logi.annotations
+ end
+
+ def destroy
+ # TODO fix remove them
+ if params[:deleted_inserts] and !params[:deleted_inserts].empty?
+ params[:deleted_inserts].each do |annotation_id|
+ @logi.annotations.find(annotation_id).destroy
+ end
+ flash[:notice] = "Successfully removed annotations"
+ redirect_to logi_url(@logi.link)
+ else
+ flash[:warning] = "No annotation selected"
+ self.edit
+ render :template => 'annotations/edit'
+ end
+ end
+
+ # AJAX-calls
+
+ def listing
+ render :partial => 'listing', :locals => {
+ :annotations => Annotation.find(:all, :conditions => ["id IN (?)", params[:ids].split(',')]) }
+ end
+
+ ### Private methods
+
+ protected
+
+ # Gets the link-clusters + positions from the given text.
+ #
+ def weave_out_annotations(body_with_annotations, logi_version, logi)
+ annotation_pos_ranges = PositionRange::List.new
+ self.weave_out(body_with_annotations, logi_version, logi) do |pos_range, inserted_string|
+ inserted_string.gsub!('__DOUBLE_QUOTES__','"')
+ pos_range.annotation = Annotation.new(:message => inserted_string)
+ annotation_pos_ranges.push(pos_range)
+ end
+ return annotation_pos_ranges
+ end
+end
Modified: trunk/app/controllers/application_controller.rb
===================================================================
--- trunk/app/controllers/application_controller.rb 2009-11-15 22:30:42 UTC (rev 1639)
+++ trunk/app/controllers/application_controller.rb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -151,7 +151,7 @@
def popover_listing
@links_hash_arr = get_links_for_ids(params['link_ids'])
@external_links = get_external_links_for_ids(params['external_link_ids'])
- @remarks = get_remark_ids(params['remark_ids'])
+ @annotations = get_annotation_ids(params['annotation_ids'])
render :partial => 'popover_listing'
end
@@ -182,9 +182,9 @@
end
end
- def get_remark_ids(ids)
+ def get_annotation_ids(ids)
if ids
- return Remark.find(:all,
+ return Annotation.find(:all,
:conditions => ["id IN (?)", ids.split(',')])
else
return []
@@ -437,7 +437,7 @@
if link_string.empty?
if logi.comments_on_logis.empty?
# TODO fix better
- logi.errors.add(:tags, 'should not be empty if it is not a replying' +
+ logi.errors.add(:tags, 'should not be empty if it is not a commenting' +
' logi')
else
logi.untag
@@ -658,4 +658,8 @@
def navigation_bar_edit
render_body 'logis/navigation_bar_edit'
end
+
+ def navigation_bar_insert
+ render_body 'logis/navigation_bar_insert'
+ end
end
Modified: trunk/app/controllers/comments_controller.rb
===================================================================
--- trunk/app/controllers/comments_controller.rb 2009-11-15 22:30:42 UTC (rev 1639)
+++ trunk/app/controllers/comments_controller.rb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -24,15 +24,6 @@
### REST-methods
- def index
- @comments = Commenting.find(:all)
- respond_to do |format|
- format.xml do
- render :xml => @comments
- end
- end
- end
-
def new
@selected = params[:selected] || 'new_logi'
@commenting_logi = Logi.new_with(:creator => current_user,
@@ -45,7 +36,7 @@
alias :show :new
def create
- if params[:perma_link] and !params[:positioned]
+ if params[:perma_link]
@link = Link.new_from_s(params[:perma_link])
@link.resolve
@@ -59,29 +50,23 @@
:to_logi => @link.volatile_to_logi, :user => current_user)
@commenting.save
- flash[:notice] = "Successfully added replying logi" +
+ flash[:notice] = "Successfully added commenting logi" +
" #{@link.volatile_to_logi.to_s(:for => :full_show)}"
render :update do |page|
page.redirect_to logi_ll_url(@logi)
end
else
transfer_errors(@link, @logi, :attribute => :comment_link)
- flash[:error] = "Problem connecting replying logi"
+ flash[:error] = "Problem connecting commenting logi"
@selected = 'existing_logi'
end
- else # new logi, possibly positioned
+ else # new logi
@commenting_logi, @commenting_logi_version = self.create_logi(
params[:logi], :untagged => true)
@commenting = Commenting.new(:from_logi => @logi,
:to_logi => @commenting_logi, :user => current_user)
body_with_inserts = params[:body_with_inserts]
- if params[:positioned] and
- body_with_inserts !~ /#{Const::Logi::INSERT_STRING}/
- @logi.errors.add(:text, ': at least some text needs to be selected' +
- ' to add the replying logi to')
- end
-
transfer_errors(@commenting_logi, @logi)
if @logi.errors.empty? and @commenting_logi_version.valid? and
@@ -90,47 +75,18 @@
@commenting_logi.save
@commenting.save
- if params[:positioned]
- body_with_comment_link = self.insert_comment_link(
- body_with_inserts, @commenting_logi)
- self.insert_links(@logi, @logi_version, body_with_comment_link)
- end
-
- flash[:notice] = "Successfully created replying logi" +
+ flash[:notice] = "Successfully created commenting logi" +
" #{@commenting_logi.to_s(:for => :full_show)}"
- if params[:positioned]
- redirect_to logi_ll_url(@logi)
- else
- render :update do |page|
- page.redirect_to logi_ll_url(@logi)
- end
+ render :update do |page|
+ page.redirect_to logi_ll_url(@logi)
end
else
transfer_errors(@commenting_logi_version, @logi_version)
- if params[:positioned]
- flash[:error] = "Problem creating replying logi"
- @selected = 'comment'
- render :template => 'logi_inserts/new'
- return
- else
- flash[:error] = "Problem creating replying logi"
- @selected = 'new_logi'
- end
+ flash[:error] = "Problem creating commenting logi"
+ @selected = 'new_logi'
end
end
end
-
- def edit
- end
-
- ### Private methods
-
- protected
-
- def insert_comment_link(body_with_inserts, commenting_logi)
- return body_with_inserts.gsub(/#{Const::Logi::INSERT_STRING}/,
- commenting_logi.link.to_s)
- end
end
Modified: trunk/app/controllers/external_links_controller.rb
===================================================================
--- trunk/app/controllers/external_links_controller.rb 2009-11-15 22:30:42 UTC (rev 1639)
+++ trunk/app/controllers/external_links_controller.rb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -21,7 +21,7 @@
### Bodies
- top_body :navigation_bar_edit,
+ top_body :navigation_bar_insert,
: [:create, :edit, :destroy]
### REST-methods
Added: trunk/app/controllers/linked_logis_controller.rb
===================================================================
--- trunk/app/controllers/linked_logis_controller.rb (rev 0)
+++ trunk/app/controllers/linked_logis_controller.rb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -0,0 +1,81 @@
+#--#
+# Copyright: (c) 2006-2009 The LogiLogi Foundation <fou...@lo...>
+#
+# License:
+# This file is part of the LogiLogi program. LogiLogi is Free Software.
+# You can run/distribute/modify LogiLogi under the terms of the GNU Affero
+# General Public License version 3. The Affero GPL states that running a
+# modified version or a derivative work also requires you to make the source
+# code of that work available to everyone that can interact with it. We
+# chose the Affero GPL to ensure that LogiLogi remains open and libre
+# (doc/LICENSE contains the full text of the legally binding license).
+#++#
+
+class LinkedLogisController < ApplicationController
+ layout 'blank'
+
+ ### Filters
+
+ before_filter :resolve_context, :find_logi_and_logi_version, :except => :index
+
+ ### Bodies
+
+ top_body :navigation_bar_edit
+
+ ### REST-methods
+
+ def new
+ @selected = params[:selected] || 'new_logi'
+ @new_logi = Logi.new_with(:creator => current_user,
+ :user_group => current_prefs.user_group)
+ @new_logi_version = @new_logi.current_logi_version
+ render :partial => 'new.html.erb', :locals => {
+ :selected => @selected}
+ end
+ # needed to switch tags after error
+ alias :show :new
+
+ def create
+ @new_logi, @new_logi_version = self.create_logi(
+ params[:logi], :untagged => true)
+ body_with_inserts = params[:body_with_inserts]
+
+ if body_with_inserts !~ /#{Const::Logi::INSERT_STRING}/
+ @logi.errors.add(:text, ': at least some text needs to be selected' +
+ ' to link the new logi to')
+ end
+
+ transfer_errors(@new_logi, @logi)
+
+ if @logi.errors.empty? and @new_logi_version.valid? and
+ self.thorny_form_free_of_spam?
+ # we can save as we know the link is valid on the logi
+ @new_logi.save
+
+ body_with_comment_link = self.insert_link_to_new_logi(
+ body_with_inserts, @new_logi)
+ self.insert_links(@logi, @logi_version, body_with_comment_link)
+
+ flash[:notice] = "Successfully created new logi and linked it" +
+ " #{@new_logi.to_s(:for => :full_show)}"
+
+ redirect_to logi_ll_url(@logi)
+ else
+ transfer_errors(@new_logi_version, @logi_version)
+
+ flash[:error] = "Problem creating new, linked logi"
+ @selected = 'comment'
+ render :template => 'logi_inserts/new'
+ return
+ end
+ end
+
+ ### Private methods
+
+ protected
+
+ def insert_link_to_new_logi(body_with_inserts, new_logi)
+ return body_with_inserts.gsub(/#{Const::Logi::INSERT_STRING}/,
+ new_logi.link.to_s)
+ end
+end
Modified: trunk/app/controllers/links_controller.rb
===================================================================
--- trunk/app/controllers/links_controller.rb 2009-11-15 22:30:42 UTC (rev 1639)
+++ trunk/app/controllers/links_controller.rb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -21,20 +21,11 @@
### Bodies
- top_body :navigation_bar_edit,
+ top_body :navigation_bar_insert,
: [:create, :edit, :destroy]
### REST-methods
- def index
- @links = Link.find(:all)
- respond_to do |format|
- format.xml do
- render :xml => @links
- end
- end
- end
-
def create
self.insert_links(@logi, @logi_version, params[:body_with_inserts])
Modified: trunk/app/controllers/logi_inserts_controller.rb
===================================================================
--- trunk/app/controllers/logi_inserts_controller.rb 2009-11-15 22:30:42 UTC (rev 1639)
+++ trunk/app/controllers/logi_inserts_controller.rb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -22,12 +22,13 @@
### Bodies
- top_body :navigation_bar_edit
+ top_body :navigation_bar_insert
### REST-methods
def new
@selected = params[:selected]
+ @link_selected = params[:link_selected]
render :layout => 'blank'
end
end
Modified: trunk/app/controllers/ratings_controller.rb
===================================================================
--- trunk/app/controllers/ratings_controller.rb 2009-11-15 22:30:42 UTC (rev 1639)
+++ trunk/app/controllers/ratings_controller.rb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -23,15 +23,6 @@
### REST-methods
- def index
- @ratings = Rating.find(:all)
- respond_to do |format|
- format.xml do
- render :xml => @ratings
- end
- end
- end
-
def show
end
end
Modified: trunk/app/controllers/remarks_controller.rb
===================================================================
--- trunk/app/controllers/remarks_controller.rb 2009-11-15 22:30:42 UTC (rev 1639)
+++ trunk/app/controllers/remarks_controller.rb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -24,59 +24,19 @@
: [:create, :edit, :destroy]
### REST-methods
- def index
- @remarks = Remark.find(:all)
- respond_to do |format|
- format.xml do
- render :xml => @remarks
- end
- end
- end
-
-
+
def create
- if params[:positioned]
- new_remark_position_range_list = self.weave_out_remarks(
- params[:body_with_inserts], @logi_version, @logi)
- if new_remark_position_range_list.empty?
- @logi.errors.add(:selection, 'needs to be made in the logi at the' +
- ' location where the remark should be inserted and the remark should not be empty')
- end
+ @remark = Remark.new(:logi => @logi, :user => current_user,
+ :message => params[:remark][:message])
- if @logi.errors.empty?
- # Only one at the same time for now
- @remark = new_remark_position_range_list.first.remark
- @remark.user = current_user
- @remark.logi = @logi
- @remark.position_ranges = new_remark_position_range_list.translate_from_view(
- @logi_version.position_ranges)
- else
- @remark = Remark.new(:message => params[:remark][:message])
- end
- else
- @remark = Remark.new(:logi => @logi, :user => current_user,
- :message => params[:remark][:message])
- end
-
if @logi.errors.empty? and @remark.valid? and self.thorny_form_free_of_spam?
@remark.save
- if params[:positioned]
- flash[:notice] = "Successfully added remark"
- redirect_to logi_url(@logi)
- else
- self.get_remarks
- @remark = Remark.new
- render :partial => 'logis/remarks'
- end
+ self.get_remarks
+ @remark = Remark.new
+ render :partial => 'logis/remarks'
else
- if params[:positioned]
- flash.now[:error] = "Problem adding remark"
- @selected = 'remark'
- render :template => 'logi_inserts/new'
- else
- self.get_remarks
- render :partial => 'logis/remarks'
- end
+ self.get_remarks
+ render :partial => 'logis/remarks'
end
end
@@ -85,6 +45,7 @@
end
def destroy
+ # TODO fix/add removal of remarks
if params[:deleted_inserts] and !params[:deleted_inserts].empty?
params[:deleted_inserts].each do |remark_id|
@logi.remarks.find(remark_id).destroy
@@ -98,29 +59,10 @@
end
end
- # AJAX-calls
-
- def listing
- render :partial => 'listing', :locals => {
- :remarks => Remark.find(:all, :conditions => ["id IN (?)", params[:ids].split(',')]) }
- end
-
### Private methods
protected
- # Gets the link-clusters + positions from the given text.
- #
- def weave_out_remarks(body_with_remarks, logi_version, logi)
- remark_pos_ranges = PositionRange::List.new
- self.weave_out(body_with_remarks, logi_version, logi) do |pos_range, inserted_string|
- inserted_string.gsub!('__DOUBLE_QUOTES__','"')
- pos_range.remark = Remark.new(:message => inserted_string)
- remark_pos_ranges.push(pos_range)
- end
- return remark_pos_ranges
- end
-
def get_remarks
@remarks = @logi.remarks.find(:all, :limit => 10, :order => ["created_at DESC"])
end
Modified: trunk/app/controllers/users_controller.rb
===================================================================
--- trunk/app/controllers/users_controller.rb 2009-11-15 22:30:42 UTC (rev 1639)
+++ trunk/app/controllers/users_controller.rb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -33,10 +33,6 @@
@users = User.paginate(:page => params[:page], :per_page => 36)
render :layout => 'broad'
end
- format.xml do
- @users = User.find(:all)
- render :xml => @users
- end
end
end
Modified: trunk/app/controllers/votes_controller.rb
===================================================================
--- trunk/app/controllers/votes_controller.rb 2009-11-15 22:30:42 UTC (rev 1639)
+++ trunk/app/controllers/votes_controller.rb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -24,18 +24,6 @@
### REST-methods
- def index
- # ALERT you need to add the plural of the model-name to the config/routes.rb file
- # where votes is already (the second occurrance of votes in the file)
- @votes = Vote.positive.find(:all) # ALERT the positive should be removed for other cases
- # And don't remove it here, I will be watching the commit-logs :-)
- respond_to do |format|
- format.xml do
- render :xml => @votes
- end
- end
- end
-
def create
begin
Rating.transaction do
Modified: trunk/app/helpers/application_helper.rb
===================================================================
--- trunk/app/helpers/application_helper.rb 2009-11-15 22:30:42 UTC (rev 1639)
+++ trunk/app/helpers/application_helper.rb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -93,8 +93,8 @@
tabs.concat([
{:text => _("Contenders"), :name => "contending_logis",
:description => _("Logis competing for the same tags")},
- {:text => _("In Reply to"), :name => "comments_on",
- :description => _("This logi replies to the following logis"),
+ {:text => _("Comments on"), :name => "comments_on",
+ :description => _("This logi comments to the following logis"),
:disabled => logi.comments_on_logis.empty?},
{:text => _("Path"), :name => "paths",
:description => _("This logi is part of a read-path"),
@@ -118,6 +118,8 @@
:description => '<h2>' + _("Currently browsing logis") + '</h2>'},
{:text => _("View"), :name => "navigation_view",
:description => '<h2>' + _("Currently viewing a logi about") + '</h2>'},
+ {:text => _("Insert"), :name => "navigation_insert",
+ :description => '<h2>' + _("Currently inserting things in a logi") + '</h2>'},
{:text => _("Edit"), :name => "navigation_edit",
:description => '<h2>' + _("Currently editing a logi") + '</h2>'},
{:text => _("New"), :name => "navigation_new",
@@ -128,10 +130,9 @@
tabs[1][:url] = browse_ll_url(current_context.link)
tabs[2][:url] = ll_url(current_context.link)
logi = current_context.link.volatile_to_logi
+ tabs[3][:url] = new_logi_logi_inserts_url(logi)
if logi.edit_rights?(current_user)
- tabs[3][:url] = edit_logi_url(current_context.link.volatile_to_logi)
- else
- tabs[3][:url] = edit_logi_remarks_url(logi)
+ tabs[4][:url] = edit_logi_url(current_context.link.volatile_to_logi)
end
end
return tabs
@@ -141,12 +142,6 @@
logi = current_context.link.volatile_to_logi
tabs = [{:text => _("Text"), :name => "edit_text",
:description => _("Currently editing the text")},
- {:text => _("Insert"), :name => "edit_insert",
- :url => new_logi_logi_inserts_url(logi),
- :description => _("Currently inserting into logi")},
- {:text => _("Take out"), :name => "edit_remove",
- :url => edit_logi_remarks_url(logi),
- :description => _("Currently removing from logi")},
{:text => _("Settings"), :name => "edit_settings",
:description => _("Currently editing logi settings")}]
@@ -154,22 +149,34 @@
tabs[0][:url] = edit_logi_url(logi)
end
if logi.admin_rights?(current_user)
- tabs[3][:url] = edit_logi_logi_settings_url(logi)
+ tabs[1][:url] = edit_logi_logi_settings_url(logi)
end
return tabs
end
+ def insert_tabs
+ logi = current_context.link.volatile_to_logi
+ tabs = [{:text => _("Insert into text"), :name => "insert_insert",
+ :url => new_logi_logi_inserts_url(logi),
+ :description => _("Currently inserting into logi")},
+ {:text => _("Remove from text"), :name => "insert_remove",
+ :url => edit_logi_annotations_url(logi),
+ :description => _("Currently removing from logi")}]
+ return tabs
+ end
+
+
def remove_tabs
logi = current_context.link.volatile_to_logi
tabs = [{:text => _("Links"), :name => "remove_links",
:url => edit_logi_links_url(logi),
- :description => _("Remove links to tags or to logis")},
- {:text => _("External Links"), :name => "remove_external_links",
+ :description => _("Extract links to tags or to logis")},
+ {:text => _("External links"), :name => "remove_external_links",
:url => edit_logi_external_links_url(logi),
- :description => _("Remove links to different sites")},
- {:text => _("Remarks"), :name => "remove_remarks",
- :url => edit_logi_remarks_url(logi),
- :description => _("Remove remarks")}]
+ :description => _("Extract links to different sites")},
+ {:text => _("Annotations"), :name => "remove_annotations",
+ :url => edit_logi_annotations_url(logi),
+ :description => _("Extract annotations")}]
return tabs
end
@@ -239,14 +246,14 @@
logi = logi_version.logi
p_r_list = logi.from_links.position_range_list_translated(logi_version)
p_r_list.concat(logi.external_links.position_range_list_translated(logi_version))
- p_r_list.concat(logi.remarks.position_range_list_translated(logi_version))
+ p_r_list.concat(logi.annotations.position_range_list_translated(logi_version))
p_r_clusters = p_r_list.cluster_overlaps
p_r_clusters.each do |p_r_cluster|
first_p_r = p_r_cluster.first
links = []
external_links = []
- remarks = []
+ annotations = []
p_r_cluster.each {|p_r|
if p_r.link
links << p_r.link
@@ -254,13 +261,13 @@
if p_r.external_link
external_links << p_r.external_link
end
- if p_r.remark
- remarks << p_r.remark
+ if p_r.annotation
+ annotations << p_r.annotation
end
}
opening, closing = popovers_listing_opening_closing(
:links => links, :external_links => external_links,
- :remarks => remarks)
+ :annotations => annotations)
weaver.next_set
weaver.add_opening(first_p_r.first, opening)
weaver.add_closing(first_p_r.last, closing)
@@ -273,7 +280,7 @@
elsif options[:external_link]
new_options = {:external_links => [options[:external_link]]}
else
- new_options = {:remarks => [options[:remark]]}
+ new_options = {:annotations => [options[:annotation]]}
end
opening, closing = popovers_listing_opening_closing(new_options)
return opening + text + closing
@@ -304,9 +311,9 @@
if options[:external_links] and !options[:external_links].empty?
url += '&external_link_ids=' + options[:external_links].collect {|external_link| external_link.id.to_s}.join(',')
end
- if options[:remarks] and !options[:remarks].empty?
- css_class += ' logilogi_remark'
- url += '&remark_ids=' + options[:remarks].collect {|remark| remark.id.to_s}.join(',')
+ if options[:annotations] and !options[:annotations].empty?
+ css_class += ' logilogi_annotation'
+ url += '&annotation_ids=' + options[:annotations].collect {|annotation| annotation.id.to_s}.join(',')
end
return ['<a class="' + css_class[1..-1] + '" href="' + href + '" title="' + title +
'" http://log.logilogi.org" rel="nofollow">log.logilogi.org
+ #
+ def log_create_to_log_log
+ if GlobalConfig.use_log_log
+ m = LogLogMessage.new(
+ :kind => "Annotation",
+ :channel_names => ['all', 'annotation',
+ 'for_' + self.logi.creator.unix_name].join(','),
+ :author => self.user.name,
+ :title => 'On: ' + self.logi.current_title,
+ :text => self.message,
+ :url => GlobalConfig.site_url + self.logi.link.to_s)
+ m.save
+ end
+ end
+
+ ### Validation-functions
+
+ protected
+
+ def validate
+ # no html-tags
+ if self.message =~ Const::LogiVersion::HTML_TAG
+ self.errors.add(:message, "html tags are not allowed inside annotations")
+ end
+ end
+end
Modified: trunk/app/models/logi.rb
===================================================================
--- trunk/app/models/logi.rb 2009-11-15 22:30:42 UTC (rev 1639)
+++ trunk/app/models/logi.rb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -77,9 +77,10 @@
has_many :external_links, :dependent => :destroy,
:extend => InsertPositionRangeListExtensionModule
# Getting the position-ranges
- has_many :remarks, :dependent => :destroy,
+ has_many :annotations, :dependent => :destroy,
:extend => InsertPositionRangeListExtensionModule
# Getting the position-ranges
+ has_many :remarks, :dependent => :destroy
has_many :steps, :dependent => :destroy
tags_strings nil
@@ -337,7 +338,7 @@
# Returns all things that are inserted in this logi.
#
def inserts
- return self.remarks.positioned + self.from_links + self.external_links
+ return self.annotations + self.from_links + self.external_links
end
### Setters
Modified: trunk/app/models/logi_version.rb
===================================================================
--- trunk/app/models/logi_version.rb 2009-11-15 22:30:42 UTC (rev 1639)
+++ trunk/app/models/logi_version.rb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -389,7 +389,7 @@
return true
end
- # Destroys all links, external links and positioned remarks that are
+ # Destroys all links, external links and annotations that are
# not in the current version.
#
def destroy_orphaned_inserts
Modified: trunk/app/models/remark.rb
===================================================================
--- trunk/app/models/remark.rb 2009-11-15 22:30:42 UTC (rev 1639)
+++ trunk/app/models/remark.rb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -20,19 +20,12 @@
belongs_to :logi
belongs_to :user
- attr_accessor :position_ranges
-
- ### Named Scopes
-
- named_scope :positioned, :conditions => ['position_ranges_string != ""']
-
### Filters
# TODO find a solution for long words, like word wrap or chopping up
# words
# after_initialize
- before_save :stringify_position_ranges
after_create :log_create_to_log_log
### Validations
@@ -46,30 +39,6 @@
protected
- # Sets the position_ranges attribute and associates each PositionRange
- # with it's position in the un-sorted list.
- #
- def after_initialize
- if self.new_record?
- @position_ranges = PositionRange::List.new()
- else
- @position_ranges = PositionRange::List.from_s(self.position_ranges_string, :remark => self)
- end
- return true
- end
-
- # Does a sanity-check on the position_ranges and turns them into a
- # string for saving.
- #
- def stringify_position_ranges
- if !@position_ranges.below?(self.logi.text_stack.size) # sanity check
- raise StandardError, 'End of PositionRange bigger than the logi (' +
- self.logi.text_stack.size.to_s + ')'
- end
- self.position_ranges_string = @position_ranges.to_s
- return true
- end
-
# Logs creation to log.logilogi.org
#
def log_create_to_log_log
Added: trunk/app/views/annotations/_listing.html.erb
===================================================================
--- trunk/app/views/annotations/_listing.html.erb (rev 0)
+++ trunk/app/views/annotations/_listing.html.erb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -0,0 +1,8 @@
+<h4><%= _("Annotations") %></h4>
+<ol>
+<% @annotations.each do |annotation| %>
+ <li>
+ <%= annotation.message %>
+ </li>
+<% end %>
+</ol>
Added: trunk/app/views/annotations/_new.html.erb
===================================================================
--- trunk/app/views/annotations/_new.html.erb (rev 0)
+++ trunk/app/views/annotations/_new.html.erb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -0,0 +1,4 @@
+<% render :layout => 'application/panel', :locals => {:title => _("Adding Annotation"), :id => "annotation_panel"} do %>
+ <label><%= _("Annotation") %></label>
+ <%= text_area_tag 'annotation[message]', @annotation.message, :id => "annotation" %>
+<% end %>
Added: trunk/app/views/annotations/edit.html.erb
===================================================================
--- trunk/app/views/annotations/edit.html.erb (rev 0)
+++ trunk/app/views/annotations/edit.html.erb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -0,0 +1,62 @@
+<% form_for(:logi, @logi, :url => logi_annotations_url(@logi),
+ :html => {:method => :delete, :id => "remove_form"}) do |form| %>
+
+ <%= render :partial => 'logi_inserts/insert_bar_remove' %>
+
+ <% render :layout => 'logi_inserts/remove_bar', :locals => {
+ :selected => "remove_annotations", :logi => @logi} do %>
+ <p>There are <%= @annotations.size %> annotations in this logi</p>
+ <% end %>
+
+ <div class="main_column">
+ <%= show_flash %>
+ </div>
+ <div class="spacer"></div>
+
+ <div class="main_column">
+ <% render :layout => 'application/panel' do %>
+ <div class="min_height"></div>
+ <label><%= _("List") %></label><br /><br />
+ <ul id="available_list" class="remove_list">
+ <% if @annotations.empty? %>
+ <li><i><%= _("None") %></i></li>
+ <% else %>
+ <% @annotations.order_by_created_at.each do |annotation| %>
+ <li id="r_<%= annotation.id.to_s %>">
+ <a href="javascript:logiInsertsRemove('<%= annotation.id.to_s %>', 'delete', 'undo');">
+ [ <span class="action">delete</span> <%= image_tag 'remove_cross.png' %> ]
+ </a>
+ <%= popover_listing(truncate(annotation.message, :length => 35), :annotation => annotation) %> -
+ <%= user_ll_link(annotation.user) %>
+ </li>
+ <% end %>
+ <% end %>
+ </ul>
+ <% end %>
+ </div>
+
+ <div class="side_column">
+ <% render :layout => 'application/wizzard_cloud_panel' do %>
+ <h3><%= _('Which annotations ?') %></h3>
+ <p>Click on the crosses of the annotations you want to delete. This will move them to the deletion list</p>
+ <% end %>
+ </div>
+ <div class="spacer"></div>
+
+ <div class="main_column">
+ <%= render :partial => 'logi_inserts/deletion_list' %>
+ </div>
+
+ <div class="side_column">
+ <% render :layout => 'application/wizzard_cloud_panel' do %>
+ <h3><%= _('Are you sure ?') %></h3>
+ <p>Check if these are indeed the annotations you want to remove. Then submit</p>
+ <% end %>
+ </div>
+ <div class="spacer"></div>
+
+ <div class="main_column">
+ <%= render :partial => 'application/submit', :locals => {:form => form,
+ :cancel_url => logi_url(@logi)} %>
+ </div>
+<% end %>
Modified: trunk/app/views/application/_panel_with_tabs_js.html.erb
===================================================================
--- trunk/app/views/application/_panel_with_tabs_js.html.erb 2009-11-15 22:30:42 UTC (rev 1639)
+++ trunk/app/views/application/_panel_with_tabs_js.html.erb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -15,7 +15,8 @@
<li class="<%= tab[:name] %>_selected">
<a href="#<%= local_assigns[:id]
%>" ><%= tab[:text] %></a>
+ '<%= tab[:name] %>','<%= tab[:mcorners_tab_name] %>');
+ <%= tab[:onclick] %>"><%= tab[:text] %></a>
</li>
<% end %>
</ul>
Modified: trunk/app/views/application/_popover_listing.html.erb
===================================================================
--- trunk/app/views/application/_popover_listing.html.erb 2009-11-15 22:30:42 UTC (rev 1639)
+++ trunk/app/views/application/_popover_listing.html.erb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -5,7 +5,7 @@
<% if !@external_links.empty? %>
<%= render :partial => 'external_links/listing' %>
<% end %>
- <% if !@remarks.empty? %>
- <%= render :partial => 'remarks/listing' %>
+ <% if !@annotations.empty? %>
+ <%= render :partial => 'annotations/listing' %>
<% end %>
</div>
Modified: trunk/app/views/comments/_new.html.erb
===================================================================
--- trunk/app/views/comments/_new.html.erb 2009-11-15 22:30:42 UTC (rev 1639)
+++ trunk/app/views/comments/_new.html.erb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -4,7 +4,7 @@
<% render :layout => 'application/panel_with_tabs_ajax', :locals => {:tabs => [
{:text => _("New Logi"), :name => "new_logi",
- :description => _("Create a new logi in reply")},
+ :description => _("Create a new logi as a comment")},
{:text => _("Existing Logi"), :name => "existing_logi",
:description => _("Paste (Ctrl V) the permanent link to the logi you want to add")}],
:selected => selected, :id => "new_comment", :update_selected => true} do %>
Modified: trunk/app/views/external_links/edit.html.erb
===================================================================
--- trunk/app/views/external_links/edit.html.erb 2009-11-15 22:30:42 UTC (rev 1639)
+++ trunk/app/views/external_links/edit.html.erb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -1,7 +1,7 @@
<% form_for(:logi, @logi, :url => logi_external_links_url(@logi),
:html => {:method => :delete, :id => "remove_form"}) do |form| %>
- <%= render :partial => 'logi_inserts/edit_bar_remove' %>
+ <%= render :partial => 'logi_inserts/insert_bar_remove' %>
<% render :layout => 'logi_inserts/remove_bar', :locals => {
:selected => "remove_external_links", :logi => @logi} do %>
Modified: trunk/app/views/links/_listing.html.erb
===================================================================
--- trunk/app/views/links/_listing.html.erb 2009-11-15 22:30:42 UTC (rev 1639)
+++ trunk/app/views/links/_listing.html.erb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -1,4 +1,4 @@
-<h4><%= _("Links") %></h4>
+<h4><%= _("Logi links") %></h4>
<ol>
<% @links_hash_arr.each do |links_hash| %>
<li>
Modified: trunk/app/views/links/edit.html.erb
===================================================================
--- trunk/app/views/links/edit.html.erb 2009-11-15 22:30:42 UTC (rev 1639)
+++ trunk/app/views/links/edit.html.erb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -1,7 +1,7 @@
<% form_for(:logi, @logi, :url => logi_links_url(@logi),
:html => {:method => :delete, :id => "remove_form"}) do |form| %>
- <%= render :partial => 'logi_inserts/edit_bar_remove' %>
+ <%= render :partial => 'logi_inserts/insert_bar_remove' %>
<% render :layout => 'logi_inserts/remove_bar', :locals => {
:selected => "remove_links", :logi => @logi} do %>
Deleted: trunk/app/views/logi_inserts/_edit_bar_remove.html.erb
===================================================================
--- trunk/app/views/logi_inserts/_edit_bar_remove.html.erb 2009-11-15 22:30:42 UTC (rev 1639)
+++ trunk/app/views/logi_inserts/_edit_bar_remove.html.erb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -1,3 +0,0 @@
-<% render :layout => 'logis/edit_bar', :locals => {:selected => "edit_remove"} do %>
- <p><%= _('You are removing things from a logi') %></p>
-<% end %>
Added: trunk/app/views/logi_inserts/_insert_bar_remove.html.erb
===================================================================
--- trunk/app/views/logi_inserts/_insert_bar_remove.html.erb (rev 0)
+++ trunk/app/views/logi_inserts/_insert_bar_remove.html.erb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -0,0 +1,3 @@
+<% render :layout => 'logis/insert_bar', :locals => {:selected => "insert_remove"} do %>
+ <p><%= _('You are removing things from a logi') %></p>
+<% end %>
Modified: trunk/app/views/logi_inserts/_remove_bar.html.erb
===================================================================
--- trunk/app/views/logi_inserts/_remove_bar.html.erb 2009-11-15 22:30:42 UTC (rev 1639)
+++ trunk/app/views/logi_inserts/_remove_bar.html.erb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -8,7 +8,7 @@
<div class="side_column">
<% render :layout => 'application/wizzard_step_cloud_panel' do %>
<h2><%= _('What to remove ?') %></h2>
- <p><%= _('Select what you want to remove; links to logis, external links, or short remarks') %></p>
+ <p><%= _('Select what you want to remove; links to logis, external links, or annotations') %></p>
<% end %>
</div>
Modified: trunk/app/views/logi_inserts/new.html.erb
===================================================================
--- trunk/app/views/logi_inserts/new.html.erb 2009-11-15 22:30:42 UTC (rev 1639)
+++ trunk/app/views/logi_inserts/new.html.erb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -1,18 +1,18 @@
<%
@link ||= Link.new
-@remark ||= Remark.new
+@annotation ||= Annotation.new
@external_link ||= ExternalLink.new
%>
<% thorny_form_for(:logi, @logi, :url => logi_url(@logi), :method => :post,
:html => {:id => "insert_form"}) do |form| %>
- <% render :layout => 'logis/edit_bar', :locals => {
- :selected => "edit_insert"} do %>
+ <% render :layout => 'logis/insert_bar', :locals => {
+ :selected => "insert_insert"} do %>
<p><%= _('Everyone can insert things into all logis') %></p>
<% end %>
<div class="main_column">
<%= show_flash %>
- <%= show_errors('logi_version','logi','remark','external_link','link') %>
+ <%= show_errors('logi_version','logi','annotation','external_link','link') %>
</div>
<div class="spacer"></div>
@@ -38,7 +38,7 @@
<div class="main_column">
<div id="selected_text">
<% render :layout => 'application/panel', :locals => {
- :id => "remarking"} do %>
+ :id => "annotating"} do %>
<div class="min_height"></div>
<p><%= _('Selected text') %></p>
<div id="selected_text_text"></div>
@@ -65,64 +65,60 @@
<div class="spacer"></div>
<div class="main_column">
- <% @selected ||= "remark" %>
+ <% @selected ||= "annotation" %>
<% render :layout => 'application/panel_with_tabs_js', :locals => {
:tabs => [
- {:text => _("Logi as a Reply"), :name => "comment",
- :description => _("Insert a logi in reply"),
- : 'logi_editor.initialize_tiny_mce_now()'},
- {:text => _("Link"), :name => "link",
- :description => _("Insert a link")},
- {:text => _("Remark"), :name => "remark",
- :description => _("Insert a remark")}],
+ {:text => _("Logi link to..."), :name => "link",
+ :description => _("Insert a link to another logi"),
+ :mcorners_tab_name => 'tags_link'},
+ {:text => _("External link"), :name => "external_link",
+ :description => _("Insert a link to a different site")},
+ {:text => _("Annotation"), :name => "annotation",
+ :description => _("Insert a annotation")}],
:selected => @selected, :id => "insert_options"} do %>
- <div id="insert_comment"
- class="no_for_link no_for_external_link no_for_remark">
- <%= render :partial => 'logis/edit', :locals => {
- :name => 'comment', :logi_version => nil, :defer => true} %>
- <div class="spacer"></div>
- </div><!-- end only_comments -->
-
<div id="insert_link"
- class="no_for_comment no_for_external_link no_for_remark">
+ class="no_for_external_link no_for_annotation">
<% @link_selected ||= "tags_link" %>
<% render :layout => 'application/panel_with_tabs_js', :locals => {
:tabs => [
+ {:text => _("New logi"), :name => "linked_logi",
+ :description => _("Insert a link to a newly created logi"),
+ : 'logi_editor.initialize_tiny_mce_now()'},
{:text => _("Tags"), :name => "tags_link",
:description => _("Insert a link to all logis with the following tags")},
- {:text => _("Specific Logi"), :name => "perma_link",
- :description => _("Paste (Ctrl V) a permanent link to a specific logi")},
- {:text => _("External Link"), :name => "external_link",
- :description => _("Insert a link to a different site")}],
+ {:text => _("Specific logi"), :name => "perma_link",
+ :description => _("Paste (Ctrl V) a perma-link to a specific logi")}],
:selected => @link_selected, :id => "link_insert_options"} do %>
+ <div id="insert_linked_logi"
+ class="no_for_tags_link no_for_perma_link">
+ <%= render :partial => 'logis/edit', :locals => {
+ :name => 'edit_linked_logi', :logi_version => nil, :defer => true} %>
+ <div class="spacer"></div>
+ </div><!-- end only_linked_logis -->
+
<div id="insert_tags_link"
- class="no_for_perma_link no_for_external_link">
+ class="no_for_linked_logi no_for_perma_link">
<%= render :partial => 'links/new' %>
</div><!-- end only_tags_links -->
<div id="insert_perma_link"
- class="no_for_tags_link no_for_external_link">
+ class="no_for_linked_logi no_for_tags_link">
<%= render :partial => 'perma_links/new' %>
</div><!-- end only_perma_links -->
-
- <div id="insert_external_link"
- class="no_for_tags_link no_for_perma_link">
- <%= render :partial => 'external_links/new' %>
- </div><!-- end only_external_links -->
<% end %><!-- end link_panel_with_tabs_js -->
</div><!-- end only_links -->
<div id="insert_external_link"
- class="no_for_comment no_for_link no_for_remark">
+ class="no_for_link no_for_annotation">
<%= render :partial => 'external_links/new' %>
</div><!-- end only_external_links -->
- <div id="insert_remark"
- class="no_for_comment no_for_link no_for_external_link">
- <%= render :partial => 'remarks/new' %>
- </div><!-- end only_remarks -->
+ <div id="insert_annotation"
+ class="no_for_link no_for_external_link">
+ <%= render :partial => 'annotations/new' %>
+ </div><!-- end only_annotations -->
<div class="common">
<%= hidden_field_tag :positioned, true %>
@@ -141,15 +137,21 @@
<div class="side_column">
<% render :layout => 'application/wizzard_step_cloud_panel' do %>
<h2><%= _('What to insert ?') %></h2>
- <p><%= _('Select what you want to insert; a commenting logi,' +
- ' various types of links, or a short remark') %></p>
+ <p><%= _('Select what you want to insert; a new logi,' +
+ ' various types of links, or an annotation') %></p>
<% end %>
</div>
<% end %><!-- end form-->
<% javascript_tag do -%>
- <% ['comment','link','external_link','remark'].each do |select_option| %>
- <% if @selected != select_option %>
+ <%
+ if @selected == 'link'
+ defer_selected = @link_selected
+ else
+ defer_selected = @selected
+ end
+ ['linked_logi','tags_link','perma_link','external_link','annotation'].each do |select_option|
+ if defer_selected != select_option %>
mcorners.defer('<%= select_option + "', '#insert_" + select_option %>',
'div.remove_tag');
mcorners.defer('<%= select_option + "', '#insert_" + select_option %>',
@@ -160,7 +162,7 @@
'div.logi_body');
<% end %>
<% end %>
- <% if @selected == "comment" %>
+ <% if defer_selected == "linked_logi" %>
logi_editor.initialize_tiny_mce();
<% end %>
<% end -%>
Modified: trunk/app/views/logis/_commenting_logis.html.erb
===================================================================
--- trunk/app/views/logis/_commenting_logis.html.erb 2009-11-15 22:30:42 UTC (rev 1639)
+++ trunk/app/views/logis/_commenting_logis.html.erb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -1,13 +1,13 @@
<% render :layout => 'application/panel_with_header',
- :locals => {:title => _("Received replying Logis"), :id => "commenting"} do %>
+ :locals => {:title => _("Commenting logis"), :id => "commenting"} do %>
<div class="mirrored_notice_cloud"><%= _('Want to give a more in-depth response ?') %></div>
<div class="description">
- <p><%= _('%{nr} Logis are replying') % {:nr => logis.size} %></p>
+ <p><%= _('This logi has %{nr} comments') % {:nr => logis.size} %></p>
</div>
<div class="spacer"></div>
<%= toggle_button_to_remote 'or add a logi below', {:update => "comment_area",
:url => new_logi_comments_url(@logi), :method => :get},
:class => 'unfold_button', :disabled => local_assigns[:unfold_disabled] %>
- <%= button_to 'insert a logi as a reply', new_logi_logi_inserts_url(@logi,
- :selected => 'comment'), :class => 'insert_button' %>
+ <%= button_to 'create a new logi and link to it', new_logi_logi_inserts_url(@logi,
+ :selected => 'link', :link_selected => 'linked_logi'), :class => 'insert_button' %>
<% end %>
Modified: trunk/app/views/logis/_comments_on.html.erb
===================================================================
--- trunk/app/views/logis/_comments_on.html.erb 2009-11-15 22:30:42 UTC (rev 1639)
+++ trunk/app/views/logis/_comments_on.html.erb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -1,7 +1,7 @@
<div id="contenders_padding">
<div class="description">
<p>
- <%= _('This logi replies to %{nr} logis') % {
+ <%= _('This logi comments to %{nr} logis') % {
:nr => @logi.comments_on_logis.size} %>
</p>
</div>
Added: trunk/app/views/logis/_insert_bar.html.erb
===================================================================
--- trunk/app/views/logis/_insert_bar.html.erb (rev 0)
+++ trunk/app/views/logis/_insert_bar.html.erb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -0,0 +1,14 @@
+<% tabs = insert_tabs() %>
+<div class="main_column">
+ <%= render :partial => 'application/panel_with_tabs', :locals => {
+ :tabs => tabs, :selected => selected, :id => "insert_bar"} %>
+</div>
+
+<div class="side_column">
+ <% render :layout => 'application/wizzard_step_cloud_panel' do %>
+ <h2><%= _('Insert or remove ?') %></h2>
+ <p>Select whether you want to insert things into the text, or remove them from the text</p>
+ <% end %>
+</div>
+
+<div class="spacer"></div>
Modified: trunk/app/views/logis/_navigation_bar_edit.html.erb
===================================================================
--- trunk/app/views/logis/_navigation_bar_edit.html.erb 2009-11-15 22:30:42 UTC (rev 1639)
+++ trunk/app/views/logis/_navigation_bar_edit.html.erb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -1,5 +1,4 @@
<% render :layout => 'logis/navigation_bar', :locals => {
:selected => "navigation_edit", :header => render_to_string(
:partial => 'logis/navigation_bar_edit_header')} do %>
- <%= render :partial => 'logis/navigation_bar_user_group_select' %>
<% end %>
Added: trunk/app/views/logis/_navigation_bar_insert.html.erb
===================================================================
--- trunk/app/views/logis/_navigation_bar_insert.html.erb (rev 0)
+++ trunk/app/views/logis/_navigation_bar_insert.html.erb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -0,0 +1,4 @@
+<% render :layout => 'logis/navigation_bar', :locals => {
+ :selected => "navigation_insert", :header => render_to_string(
+ :partial => 'logis/navigation_bar_edit_header')} do %>
+<% end %>
Modified: trunk/app/views/logis/_snippet.html.erb
===================================================================
--- trunk/app/views/logis/_snippet.html.erb 2009-11-15 22:30:42 UTC (rev 1639)
+++ trunk/app/views/logis/_snippet.html.erb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -7,9 +7,9 @@
<div class="comments">
<span class="comments_label">
<% if logi.comments_on_logis.count > 0 %>
- <em>Replies to <%= logi.comments_on_logis.count %> logis<%= ( logi.commenting_logis.count > 0 ? ', has ' + logi.commenting_logis.count.to_s + ' replies' : '') %></em>
+ <em>Comments on <%= logi.comments_on_logis.count %> logis<%= ( logi.commenting_logis.count > 0 ? ', has ' + logi.commenting_logis.count.to_s + ' comments' : '') %></em>
<% else %>
- <em>Has <%= logi.commenting_logis.count %> replies</em>
+ <em>Has <%= logi.commenting_logis.count %> comments</em>
<% end %>
</span>
</div>
Modified: trunk/app/views/remarks/_list.html.erb
===================================================================
--- trunk/app/views/remarks/_list.html.erb 2009-11-15 22:30:42 UTC (rev 1639)
+++ trunk/app/views/remarks/_list.html.erb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -1,10 +1,6 @@
<% if !remarks.empty? %>
<% remarks.each do |remark| %>
- <% if remark.position_ranges.empty? %>
- <div class="box secondary_border_panel remark" >
- <% else %>
- <div class="box secondary_border_panel remark ranged">
- <% end %>
+ <div class="box secondary_border_panel remark">
<div class="panel_content_padding">
<%= by_author(remark.user, :length => 18) %>
<%= gravatar_for(remark.user, :class => 'avatar') %>
Deleted: trunk/app/views/remarks/_listing.html.erb
===================================================================
--- trunk/app/views/remarks/_listing.html.erb 2009-11-15 22:30:42 UTC (rev 1639)
+++ trunk/app/views/remarks/_listing.html.erb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -1,8 +0,0 @@
-<h4><%= _("Short Remarks") %></h4>
-<ol>
-<% @remarks.each do |remark| %>
- <li>
- <%= remark.message %>
- </li>
-<% end %>
-</ol>
Modified: trunk/config/routes.rb
===================================================================
--- trunk/config/routes.rb 2009-11-15 22:30:42 UTC (rev 1639)
+++ trunk/config/routes.rb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -34,13 +34,15 @@
:name_prefix => '_hidden_',
:requirements => { :ll_link_string => /.*/ }
map.resource :links, :ratings, :logi_settings, :logi_inserts, :logi_tags,
- :logi_versions, :remarks, :external_links, :perma_links, :comments,
+ :logi_versions, :remarks, :annotations, :external_links, :perma_links,
+ :linked_logis, :comments,
:path_prefix => ':ll_link_string/do',
:name_prefix => '_hidden_',
:requirements => { :ll_link_string => /.*/ }
map.resources :users, :peer_group_admin_memberships, :peer_group_memberships,
- :user_groups, :prefs_profiles, :invitations, :votes, :remarks, :comments, :links,
- :ratings, :paths, :steps,
+ :user_groups, :prefs_profiles, :invitations, :votes, :remarks,
+ :annotations, :links, :linked_logis, :comments, :ratings, :paths,
+ :steps,
:path_prefix => 'do'
map.resources :peer_groups,
:path_prefix => 'do', :has_many => :invitations, :shallow => true
@@ -66,7 +68,7 @@
:requirements => { :ll_link_string => /.*/ },
:conditions => { :method => :get }
- # Popover clouds with remarks & links
+ # Popover clouds with annotations & links
map.popover_listing 'do/popovers/listing',
:controller => 'application',
:action => 'popover_listing'
Added: trunk/db/migrate/20091113112526_positioned_remarks_as_annotations.rb
===================================================================
--- trunk/db/migrate/20091113112526_positioned_remarks_as_annotations.rb (rev 0)
+++ trunk/db/migrate/20091113112526_positioned_remarks_as_annotations.rb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -0,0 +1,16 @@
+class PositionedRemarksAsAnnotations < ActiveRecord::Migration
+ def self.up
+ create_table :annotations do |t|
+ t.references :logi, :null => false
+ t.references :user, :null => false
+ t.string :message, :null => false
+ t.string :position_ranges_string, :limit => 80, :null => false
+ t.datetime :created_at, :null => false
+ end
+ remove_column :remarks, :position_ranges_string
+ end
+
+ def self.down
+ raise 'No way back'
+ end
+end
Modified: trunk/db/schema.rb
===================================================================
--- trunk/db/schema.rb 2009-11-15 22:30:42 UTC (rev 1639)
+++ trunk/db/schema.rb 2009-11-18 14:05:07 UTC (rev 1640)
@@ -9,7 +9,7 @@
#
# It's strongly recommended to check this file into your version control system.
-ActiveRecord::Schema.define(:version => 20091019213633) do
+ActiveRecord::Schema.define(:version => 20091113112526) do
create_table "acts_as_xapian_jobs", :force => true do |t|
t.string "model", :null => false
@@ -19,6 +19,14 @@
add_index "acts_as_xapian_jobs", ["model", "model_id"], :name => "index_acts_as_xapian_jobs_on_model_and_model_id", :unique => true
+ create_table "annotations", :for...
[truncated message content] |
|
From: <wy...@us...> - 2009-11-15 22:30:58
|
Revision: 1639
http://logilogi.svn.sourceforge.net/logilogi/?rev=1639&view=rev
Author: wybow
Date: 2009-11-15 22:30:42 +0000 (Sun, 15 Nov 2009)
Log Message:
-----------
Updated DH2010 paper
Modified Paths:
--------------
docs/papers/DH2010/paper.bib
docs/papers/DH2010/paper.pdf
docs/papers/DH2010/paper.tex
Modified: docs/papers/DH2010/paper.bib
===================================================================
--- docs/papers/DH2010/paper.bib 2009-11-15 22:23:39 UTC (rev 1638)
+++ docs/papers/DH2010/paper.bib 2009-11-15 22:30:42 UTC (rev 1639)
@@ -29,9 +29,7 @@
@misc{logilogi_foundation_2009,
title = {The {LogiLogi} Foundation - Software Libre for Your Web of Free Deliberation},
- url = {http://foundation.logilogi.org/},
- year = {2009},
- howpublished = {http://foundation.logilogi.org/}
+ howpublished = {\url{http://foundation.logilogi.org/}}
}
@misc{pyramid_of_agile_2007,
Modified: docs/papers/DH2010/paper.pdf
===================================================================
(Binary files differ)
Modified: docs/papers/DH2010/paper.tex
===================================================================
--- docs/papers/DH2010/paper.tex 2009-11-15 22:23:39 UTC (rev 1638)
+++ docs/papers/DH2010/paper.tex 2009-11-15 22:30:42 UTC (rev 1639)
@@ -18,7 +18,7 @@
\author
{Wybo Wiersma\\
King's College London\\
- {\tt wy...@lo...}}
+ {\tt ma...@wy...}}
%\date{DRAFT of~\today}
@@ -28,26 +28,25 @@
\section{Introduction}
-In this abstract, and more so in the poster-presentation, we will report on the the process of, and the problems involved in gaining a critical mass of users for an interactive, hypertext-based Digital Humanities application. The aim of any DH application ultimately is to be used, but for interactive ones, in which the contributions and interactions of the users are what make it worthwile for new visitors, gaining an initial critical mass of users is especially important, and notoriously hard.
+In this abstract, and more so in the poster-presentation, we will report on the process of, and the problems involved in gaining a critical mass of users for an interactive, hypertext-based Digital Humanities application. The aim of any DH application ultimately is to be used, but for interactive ones, in which the contributions and interactions of the users are what make it worth wile for new visitors, gaining an initial critical mass of users is especially important, and notoriously hard.
-First of all LogiLogi, the system on which we are going to try to get a community started, is briefly introduced. Next the strategy for gaining users, some possible improvements, and attempts so far are explicated. Here we will also discuss the kinds of users we target and the possible size of the application's critical mass. We finish with an overview of the usage data that our poster will report on.
+First of all LogiLogi, the system on which we are going to try to get a community started, is briefly introduced. Next the strategy for gaining users, some possible improvements, and attempts so far are explicated. Here we will also discuss the kinds of users we target, and the possible size of the application's critical mass. We finish with an overview of the usage data that our poster will report on.
\section{System}
-LogiLogi is a Web2.0 application that tries to find an informal middle-road between good conversations and journal-papers by providing a form of quick, informal publication, peer-review, and annotation of short philosophical texts. \autocites[]{wiersma_logilogi:webplatform_2008}[]{wiersma_logilogi:beyond_2009}. It is intended for all those ideas that one cannot turn into a full sized paper, but that one deems too interesting to leave to the winds\autocites[]{wiersma_two_2009}.
+LogiLogi is a Web 2.0 application that tries to find an informal middle-road between good conversations and journal-papers by providing a form of quick, informal publication, peer-review, and annotation of short philosophical texts. \autocites[]{wiersma_logilogi:webplatform_2008}[]{wiersma_logilogi:beyond_2009}. It is intended for all those ideas that one cannot turn into a full sized paper, but that one deems too interesting to leave to the winds\autocites[]{wiersma_two_2009}.
-It does not make use of forum-threads (avoiding their many problems), but of tags and links that can also be added to texts by others than the original author. And it features a rating-system modeled after Journal-based-review, in which well-rated texts earn authors more voting-power within their peergroup (of which there are multiple)\autocites[]{wiersma_logilogi:_2008}.
+It does not make use of forum-threads (avoiding their many problems), but of tags and links that can also be added to texts by others than the original author. And it features a rating-system modelled after Journal-based-review, in which well-rated texts earn authors more voting-power within their peergroup (of which there are multiple)\autocites[]{wiersma_logilogi:_2008}.
LogiLogi is Free Software, has been under development by between 2 and 10 people for 3 years, and a public beta is already online and fully functional at \url{www.LogiLogi.org}\autocites[]{logilogi_foundation_2009}.
\section{Strategy}
-Things that have been done so far to gain users are, first of all, making sure that it works properly. LogiLogi has been extensively tested and improved at the LIRMM lab of the University of Montpellier this September. And it was used there by about 30 active users for internal discussions until the end of October. Secondly, some seed-content has been added (about 80 philosophical texts, some of which are part of larger essays). And finally since October it has been made possible for users to easily track new replies, annotations, and votes for their documents both through a personalized RSS feed and e-mail alerts. Thus making LogiLogi practical to use for the first time.
+Things that have been done so far to gain users are, first of all, making sure that it works properly. LogiLogi has been extensively tested and improved at the LIRMM lab of the University of Montpellier this September. And it was used there by about 30 active users for internal discussions until the end of October. Secondly, some seed-content has been added (about 80 philosophical texts, some of which are part of larger essays). And finally since October it has been made possible for users to easily track new replies, annotations, and votes for their documents both through a personalized RSS feed, and e-mail alerts --- thus making LogiLogi practical to use for the first time.
\subsection{Target Audience}
-LogiLogi has not yet been advertised widely, and changing this is one of the first things we will do next. LogiLogi aims for a wide audience of scholars, students, and people interested in philosophy, but to set the right tone, we first aim for people in the academy (students and scholars). Among them, most success is expected with students, both because of their limited access to other publishing channels and their greater average computer-literacy. Possible places to reach them are forums,
-newsgroups, and (limited) advertising via Google Adwords.
+LogiLogi has not yet been advertised widely, and changing this is one of the first things we will do next. LogiLogi aims for a wide audience of scholars, students, and people interested in philosophy, but to set the right tone, we first aim for people in the academy (students and scholars). Among them, most success is expected with students, both because of their limited access to other publishing channels, and their greater average computer-literacy. Possible places to reach them are forums, newsgroups, and (limited) advertising via Google Adwords.
\subsection{Process}
@@ -55,17 +54,17 @@
\subsection{Improvements}
-A possible improvement so far identified is simplifying the application, for example by (temporarily) limiting the number of voting-communities (peergroups) to one. This would have the additional advantage that the size of the needed critical mass would be reduced, because votes are no longer limited to, and divided between groups. While it is hard to determine in advance what the critical mass of LogiLogi would be, from what we saw in the LIRMM case it most likely lies between 30 to 60 active users per peergroup (or for the whole site if there's only one peergroup).
+A possible improvement so far identified is simplifying the application, for example by (temporarily) limiting the number of voting-communities (peergroups) to one. This would have the additional advantage that the size of the needed critical mass would be reduced, because votes are no longer limited to, and divided between groups. While it is hard to determine in advance what the critical mass of LogiLogi would be, from what we saw in the LIRMM case, it most likely lies between 30 to 60 active users per peergroup (or for the whole site if there's only one peergroup). To examine this further a small literature study of the notion of critical mass, and factors influencing its size (especially for hypertext based applications close to the Humanities) will also be done.
-Another place for improvement is the editing and annotation process. Especially it's responsiveness, and it's multimedia capabilities could be improved by integrating LogiLogi with Google Wave. LogiLogi currently requires people to open a new page when they want to insert annotations or links, while Wave, a new communication and collaboration tool by Google, that aims for the the middle-ground between wiki's, forums, e-mail, instant messaging and social networks, allows one to do this immediately, and even by dragging and dropping things onto the page (also allows one to insert images and video's through this process). It currently is in preview-release, and expected to be generally available around the end of 2009.
+Another place for improvement is the editing and annotation process. Especially its responsiveness, and its multimedia capabilities could be improved by integrating LogiLogi with Google Wave. LogiLogi currently requires people to open a new page when they want to insert annotations or links. While Wave, a new communication and collaboration tool by Google, that aims for the middle-ground between wikis, forums, e-mail, instant messaging and social networks, allows one to do this immediately, and even by dragging and dropping things onto the page (also allows one to insert images and videos through this process). It currently is in preview-release, and expected to be generally available around the end of 2009 (though a developer account on the already operational preview-version of Wave has already been granted to the project).
\subsection{Report}
-In our poster we will report on developments in the number of users, on the strategies and improvements we applied, and on their practical, and causal relationships. Also we will not just be reporting the number of registered users, or unique visitors, but also on the number of documents, annotations, replies, and votes given over the time-period from November 2009 until June 2010. Thus a detailed view will be given of the process of gaining critical mass.
+In our poster we will report on developments in the number of users, on the strategies and improvements we applied, and on their practical, and causal relationships. Also we will not just be reporting the number of registered users, or unique visitors, but also on the number of documents, annotations, replies, and votes given over the time-period from December 2009 until June 2010. Thus a detailed view will be given of the process of gaining critical mass.
\section{Conclusion}
-Whether we succeed or not in gaining the critical mass for LogiLogi, there will be meaningful results from this experiment. As it not only involves presenting, or further improving an already quite usable interactive Digital Humanities application, but foremostly trying to give it a critical mass of users, and exploring this process, producing insights and a valuable case-study (of success or failure) for future Digital Humanities projects to learn from. Projects which will, most likely, be more interactive than their predecessors, and thus will sooner or later face the same challenge of gaining a critical mass of users.
+Whether we succeed or not in gaining the critical mass for LogiLogi, there will be meaningful results from this experiment; as it not only involves presenting, or further improving an already quite usable interactive Digital Humanities application, but foremostly trying to give it a critical mass of users, and exploring this process, producing insights and a valuable case-study (of success or failure) for future Digital Humanities projects to learn from: projects which will, most likely, be more interactive than their predecessors, and thus will sooner or later face the same challenge of gaining a critical mass of users.
\nocite{*}
\printbibliography
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wy...@us...> - 2009-11-15 22:23:47
|
Revision: 1638
http://logilogi.svn.sourceforge.net/logilogi/?rev=1638&view=rev
Author: wybow
Date: 2009-11-15 22:23:39 +0000 (Sun, 15 Nov 2009)
Log Message:
-----------
Updates b-rex and added tool for graphvis presentations
Modified Paths:
--------------
tools/b-rex/b-rex
Added Paths:
-----------
tools/t-gv/
tools/t-gv/t-gv
Modified: tools/b-rex/b-rex
===================================================================
--- tools/b-rex/b-rex 2009-11-03 00:30:32 UTC (rev 1637)
+++ tools/b-rex/b-rex 2009-11-15 22:23:39 UTC (rev 1638)
@@ -55,8 +55,7 @@
# == Requirements
# Ruby (inc rdoc, not included in Debian & Ubuntu, needs ruby and rdoc
# packages there), Latex beamer, and a working TeX Live (the texlive
-# texlive-latex-extra, and latex-beamer packages are all you need on
-# Ubuntu)
+# and latex-beamer packages are all you need on Ubuntu)
#
# == Copyright
# Copyright (c) 2007 The LogiLogi Foundation. Licensed under the
@@ -266,60 +265,93 @@
def expand_frames(contents)
lines = contents.split("\n")
+ new_lines = []
# Frames + titles
open = false
- old_frame_fun_str = ""
- old_frame_arg_str = ""
- lines.collect! do |line|
- if line =~ /^\s*---(\w*)\s*(.*)\s*$/
+ old_fun_str = ""
+ old_arg_str = ""
+ ex_gobble = []
+ ex_run_frame = false
+ ex_gobbling = false
+ img_counter = 0
+ lines.each do |line|
+ if line =~ /^\s*---(\|?)([-\w]*)\s*(.*)\s*$/
match = $~
- frame_fun_str = "frame_" + (!match[1].empty? ? match[1] : "default")
- frame_arg_str = match[2]
- if !frame_arg_str.empty?
- if frame_fun_str == "frame_default"
+ if !match[1].empty?
+ ex_run_frame = true
+ fun_str = (!match[2].empty? ? match[2] : "t-gv img" + img_counter.to_s)
+ img_counter += 1
+ else
+ ex_run_frame = false
+ fun_str = "frame_" + (!match[2].empty? ? match[2] : "default")
+ end
+ arg_str = match[3]
+ if !arg_str.empty?
+ if fun_str == "frame_default"
# add quotes to the title
- frame_arg_str = '"' + frame_arg_str + '"'
+ arg_str = '"' + arg_str + '"'
end
- frame_arg_str += ", "
+ if !ex_run_frame
+ arg_str += ", "
+ end
end
if open
# close it with the previous args
- self.check_frame_function(old_frame_fun_str)
- line = eval old_frame_fun_str + "(" + old_frame_arg_str + ":open => false)"
+ if ex_gobbling
+ f = IO.popen(old_fun_str + ' ' + old_arg_str, "r+")
+ f.print ex_gobble.join("\n")
+ f.close_write
+ new_lines << f.readlines.join()
+ ex_gobble = []
+ else
+ self.check_frame_function(old_fun_str)
+ new_lines << eval(old_fun_str + "(" + old_arg_str + ":open => false)")
+ end
open = false
else
- # open a new one
- self.check_frame_function(frame_fun_str)
- line = eval frame_fun_str + "(" + frame_arg_str + ":open => true)"
+ if !ex_run_frame
+ # open a new one
+ self.check_frame_function(fun_str)
+ new_lines << eval(fun_str + "(" + arg_str + ":open => true)")
+ end
open = true
end
- if !frame_arg_str.empty?
+ if !open
# open again when chained
- if !open
- line += "\n\n" +
- (eval frame_fun_str + "(" + frame_arg_str + ":open => true)")
+ if ex_run_frame
open = true
+ elsif !arg_str.empty?
+ new_lines << ("\n" +
+ eval(fun_str + "(" + arg_str + ":open => true)"))
+ open = true
end
end
- old_frame_fun_str = frame_fun_str
- old_frame_arg_str = frame_arg_str
+ old_fun_str = fun_str
+ old_arg_str = arg_str
+ if open and ex_run_frame
+ ex_gobbling = true
+ else
+ ex_gobbling = false
+ end
+ elsif ex_gobbling
+ ex_gobble << line
else
if open and !line.empty?
# extra indentation
line = ' ' + line
end
+ new_lines << line
end
- line
end
if open
raise 'Frames not closed'
end
- return lines.join("\n")
+ return new_lines.join("\n")
end
- def check_frame_function(frame_fun_str)
- if !self.respond_to?(frame_fun_str)
- raise "Frame kind '#{frame_fun_str}' does not exist, leave a space between --- <and the title>"
+ def check_frame_function(fun_str)
+ if !self.respond_to?(fun_str)
+ raise "Frame kind '#{fun_str}' does not exist, leave a space between --- <and the title>"
end
end
Added: tools/t-gv/t-gv
===================================================================
--- tools/t-gv/t-gv (rev 0)
+++ tools/t-gv/t-gv 2009-11-15 22:23:39 UTC (rev 1638)
@@ -0,0 +1,110 @@
+#!/usr/bin/env ruby
+
+require 'rubygems'
+require 'graphviz'
+
+image = ARGV[0] || 'img'
+title = ARGV[1] || 'So'
+lines = STDIN.readlines
+
+# Create a new graph
+g = GraphViz.new( :G, :type => :digraph )
+g.node[:fontsize] = "42"
+g.node[:penwidth] = "2"
+g.node[:shape] = "egg"
+g.node[:style] = "filled"
+g.node[:color] = "#cdcdec"
+g.node[:fillcolor] = "#ebebf8"
+g.edge[:arrowsize] = "2"
+g.edge[:penwidth] = "2"
+g.edge[:weight] = "5"
+g.edge[:minlen] = "2.5"
+g.edge[:color] = "#3333b3"
+
+def fill_graph(lines, g)
+ nodes = {}
+ lines.each do |line|
+ line.strip!
+ clean_line, options = parse_options(line)
+ if clean_line =~ /:/
+ process_definition_line(clean_line, options, nodes, g)
+ elsif !line.empty?
+ process_edge_line(clean_line, options, nodes, g)
+ end
+ end
+end
+
+def process_definition_line(line, options, nodes, g)
+ l_arr = line.split(":")
+ key = l_arr.first.to_sym
+ value = l_arr[1..-1].join(":").strip
+ nodes[key] = g.add_node(key.to_s, options)
+ nodes[key]["label"] = value
+end
+
+def process_edge_line(line, options, nodes, g)
+ l_arr = line.split(" ")
+ from = get_node(l_arr[0], nodes, g)
+ options[:dir] = get_direction(l_arr[1])
+ to = get_node(l_arr[2], nodes, g)
+ g.add_edge(from, to, options)
+end
+
+def get_node(word, nodes, g)
+ sym = word.downcase.to_sym
+ if !nodes[sym]
+ nodes[sym] = g.add_node(word)
+ end
+ return nodes[sym]
+end
+
+def get_direction(string)
+ case string
+ when "<"
+ return "back"
+ when "<>"
+ return "both"
+ when "-"
+ return "none"
+ else
+ return "forward"
+ end
+end
+
+def parse_options(line)
+ if line =~ /,/
+ s_arr = line.split(",")
+ clean_line = s_arr.first
+ hash_s = s_arr[1..-1].join(",").strip
+ options = parse_hash(hash_s)
+ else
+ clean_line = line
+ options = {}
+ end
+ return clean_line, options
+end
+
+def parse_hash(hash_string)
+ if hash_string[0...1] != "{"
+ hash_string = '{' + hash_string + '}'
+ end
+ return eval(hash_string)
+end
+
+fill_graph(lines, g)
+
+g["fontsize"] = 60.0
+g["fontcolor"] = "blue"
+g["viewport"] = "1200,800,1"
+
+# Generate output image
+g.output(:png => image + ".png")
+
+puts '\begin{frame}' + "\n" +
+ ' \frametitle{' + title + '}' + "\n" +
+ ' \begin{figure}' + "\n" +
+ ' \vspace{-2em}' + "\n" +
+ ' \centering' + "\n" +
+ ' \includegraphics[width=10cm]{' + image + '.png}' + "\n" +
+ ' \end{figure}' + "\n" +
+ '\end{frame}'
Property changes on: tools/t-gv/t-gv
___________________________________________________________________
Added: svn:executable
+ *
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wy...@us...> - 2009-11-03 00:35:10
|
Revision: 1637
http://logilogi.svn.sourceforge.net/logilogi/?rev=1637&view=rev
Author: wybow
Date: 2009-11-03 00:30:32 +0000 (Tue, 03 Nov 2009)
Log Message:
-----------
Fixed same link adding twice bug
Modified Paths:
--------------
trunk/app/controllers/application_controller.rb
trunk/app/models/logi.rb
trunk/test/functional/links_controller_test.rb
trunk/test/unit/link_test.rb
Modified: trunk/app/controllers/application_controller.rb
===================================================================
--- trunk/app/controllers/application_controller.rb 2009-11-02 19:52:26 UTC (rev 1636)
+++ trunk/app/controllers/application_controller.rb 2009-11-03 00:30:32 UTC (rev 1637)
@@ -409,9 +409,9 @@
translate_to_view(logi_version.position_ranges)
# '-' reckons with p_r-attributes, so overlap of the same links is removed here
added_link_p_r_list = new_link_position_range_list - old_link_p_r_list
- # gets links that did not exist already at different ranges
- added_link_list = (added_link_p_r_list.collect {|p_r| p_r.link}.uniq) - old_link_list
-
+ # gets links, same objects also still in the added_link_p_r_list
+ added_link_list = (added_link_p_r_list.collect {|p_r| p_r.link}.uniq)
+
added_link_list.each {|added_link|
added_link.user = self.current_user
added_link.from_logi = logi
Modified: trunk/app/models/logi.rb
===================================================================
--- trunk/app/models/logi.rb 2009-11-02 19:52:26 UTC (rev 1636)
+++ trunk/app/models/logi.rb 2009-11-03 00:30:32 UTC (rev 1637)
@@ -398,8 +398,8 @@
#
def add_links_to_position_ranges(link_p_r_list)
link_p_r_list.each do |link_p_r|
- if self.from_links.include?(link_p_r.link)
- link = self.from_links.detect {|li| li == link_p_r.link}
+ if self.from_links.detect {|li| link_p_r.link.eql?(li)} # eql? uses <=>
+ link = self.from_links.detect {|li| li.eql?(link_p_r.link)}
link_p_r.link = link
link.position_ranges << link_p_r
link.save
Modified: trunk/test/functional/links_controller_test.rb
===================================================================
--- trunk/test/functional/links_controller_test.rb 2009-11-02 19:52:26 UTC (rev 1636)
+++ trunk/test/functional/links_controller_test.rb 2009-11-03 00:30:32 UTC (rev 1637)
@@ -31,19 +31,47 @@
nr_of_l = l.from_links.size
l_v = l.current_logi_version
b_t = l_v.body
- l_l = "Manta" # The inserted link
- new_b_t = b_t[0...49] + "<a title=\"" + l_l + "\">" +
+ new_l_s = "Manta" # The inserted link
+
+ new_b_t = b_t[0...49] + "<a title=\"" + new_l_s + "\">" +
b_t[49...63] + "</a>" + b_t[63...-1]
+
post :create, {:ll_link_string => l.link.to_s,
:body_with_inserts => new_b_t}.merge(self.thorny_ok_hash)
+
assert_response :redirect
assert_equal nr_of_l + 1, l.from_links.size
- manta_l = l.from_links.find_by_requested_tags_string(l_l)
- assert manta_l
- assert_equal l_v.raw_title.size + 49, manta_l.position_ranges.first.first
- assert_equal l_v.raw_title.size + 63, manta_l.position_ranges.first.last
+ new_l = l.from_links.find_by_requested_tags_string(new_l_s)
+ assert new_l
+ assert_equal l_v.raw_title.size + 49, new_l.position_ranges.first.first
+ assert_equal l_v.raw_title.size + 63, new_l.position_ranges.first.last
end
+ def test_create_second_link_to_same_tags
+ l = logis(:logi_logi)
+ old_link = links(:tag)
+ nr_of_l = l.from_links.size
+ l_v = l.current_logi_version
+ b_t = l_v.body
+ new_l_s = old_link.to_s # The inserted link
+
+ new_b_t = b_t[0...89] + "<a title=\"" + new_l_s + "\">" +
+ b_t[89...100] + "</a>" + b_t[100...-1]
+
+ post :create, {:ll_link_string => l.link.to_s,
+ :body_with_inserts => new_b_t}.merge(self.thorny_ok_hash)
+
+ assert_response :redirect
+ assert_equal nr_of_l, l.from_links.size
+ new_l = l.from_links.find_by_requested_tags_string(new_l_s)
+ assert new_l
+ assert_equal 2, new_l.position_ranges.size
+ assert_equal 43, new_l.position_ranges.first.first
+ assert_equal 48, new_l.position_ranges.first.last
+ assert_equal l_v.raw_title.size + 89, new_l.position_ranges.last.first
+ assert_equal l_v.raw_title.size + 100, new_l.position_ranges.last.last
+ end
+
def test_destroy
l = logis(:logi_logi)
nr_of_l = l.from_links.size
Modified: trunk/test/unit/link_test.rb
===================================================================
--- trunk/test/unit/link_test.rb 2009-11-02 19:52:26 UTC (rev 1636)
+++ trunk/test/unit/link_test.rb 2009-11-03 00:30:32 UTC (rev 1637)
@@ -289,6 +289,13 @@
# precision
assert_equal -1, second_logi_link.<=>(
second_logi_version_link, :direction => :received)
+
+ # new and old
+ new_l = Link.new_from_s(tag_link.to_s)
+ new_l.resolve
+
+ assert_equal 0, tag_link <=> new_l
+ assert tag_link.eql?(new_l)
end
### Resolving
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wy...@us...> - 2009-11-02 19:52:34
|
Revision: 1636
http://logilogi.svn.sourceforge.net/logilogi/?rev=1636&view=rev
Author: wybow
Date: 2009-11-02 19:52:26 +0000 (Mon, 02 Nov 2009)
Log Message:
-----------
Removed old RSS stuff, added link to personal feed.
Modified Paths:
--------------
trunk/app/controllers/changes_controller.rb
trunk/app/controllers/logis_controller.rb
trunk/app/controllers/main_page_controller.rb
trunk/app/views/logis/_rated_by_peer_group.html.erb
trunk/app/views/users/edit.html.erb
trunk/public/stylesheets/logilogi.css
Added Paths:
-----------
trunk/public/images/down_button_disabled.svg
trunk/public/images/up_button_disabled.svg
Removed Paths:
-------------
trunk/app/views/changes/feed.atom.builder
trunk/app/views/logis/feed.atom.builder
Modified: trunk/app/controllers/changes_controller.rb
===================================================================
--- trunk/app/controllers/changes_controller.rb 2009-10-29 00:20:18 UTC (rev 1635)
+++ trunk/app/controllers/changes_controller.rb 2009-11-02 19:52:26 UTC (rev 1636)
@@ -43,12 +43,6 @@
self.send(@selected.to_sym)
end
end
- format.atom do
- render :template => 'changes/feed', :layout => false,
- :locals => {:title => "Recently changed Logis",
- :logis => Logi.paginate_recent_changes(
- :page => 1, :per_page => 30)}
- end
end
end
Modified: trunk/app/controllers/logis_controller.rb
===================================================================
--- trunk/app/controllers/logis_controller.rb 2009-10-29 00:20:18 UTC (rev 1635)
+++ trunk/app/controllers/logis_controller.rb 2009-11-02 19:52:26 UTC (rev 1636)
@@ -99,21 +99,6 @@
format.xml do
render :partial => 'show.xml.erb'
end
- format.atom do
- self.get_logis
- case @logi.kind
- when Const::Logi::KINDS[:user]
- title = "Recent Logis by " + @logi.home_pages_user.name
- when Const::Logi::KINDS[:peer_group]
- title = "Recently positively rated by " +
- @logi.home_pages_peer_group.name
- else
- return false
- end
- render :template => 'logis/feed', :layout => false, :locals => {
- :title => title,
- :logis => @logis}
- end
end
end
Modified: trunk/app/controllers/main_page_controller.rb
===================================================================
--- trunk/app/controllers/main_page_controller.rb 2009-10-29 00:20:18 UTC (rev 1635)
+++ trunk/app/controllers/main_page_controller.rb 2009-11-02 19:52:26 UTC (rev 1636)
@@ -42,12 +42,6 @@
format.js do
select_body(@selected)
end
- format.atom do
- render :template => 'logis/feed', :layout => false,
- :locals => {:title => "New Logis",
- :logis => Logi.recent.find( # new logis
- :all, :limit => 10)}
- end
end
end
Deleted: trunk/app/views/changes/feed.atom.builder
===================================================================
--- trunk/app/views/changes/feed.atom.builder 2009-10-29 00:20:18 UTC (rev 1635)
+++ trunk/app/views/changes/feed.atom.builder 2009-11-02 19:52:26 UTC (rev 1636)
@@ -1,35 +0,0 @@
-atom_feed do |feed|
- feed.title(title)
- feed.updated((logis.first.current_logi_version.created_at))
- feed.link "rel" => "self",
- "href" => url_for(:only_path => false, :format => 'atom')
- feed.link "rel" => "alternate",
- "href" => url_for(:only_path => false)
-
- now = Time.now
-
- logis.each do |logi|
- feed.entry(logi) do |entry|
- entry.title(logi.current_title)
- entry.link(logi_ll_url(logi))
-
- days = ((now - logi.current_logi_version.created_at) / 86400).floor
- minutes = (((now - logi.current_logi_version.created_at) / 60) - days * 1440).round
- content = (days == 0 ? _('Just yet') : days.to_s + ' ' + (days == 1 ? _('day') : _('days'))) + ' ' +
- hours_or_minutes_ago(days, minutes) + ' ' +
- (logi.current_logi_version.nr == 1 ? _('created') : _('edited')) + ' at ' +
- logi.link.to_s(:step => -1, :for => :show)
-
- entry.content(content, :type => 'text')
- entry.categories do |categories|
- logi.tags.each do |tag|
- categories.category(:term => tag.to_s(:for => :show))
- end
- end
-
- entry.author do |author|
- author.name(logi.current_logi_version.editor.name)
- end
- end
- end
-end
Modified: trunk/app/views/logis/_rated_by_peer_group.html.erb
===================================================================
--- trunk/app/views/logis/_rated_by_peer_group.html.erb 2009-10-29 00:20:18 UTC (rev 1635)
+++ trunk/app/views/logis/_rated_by_peer_group.html.erb 2009-11-02 19:52:26 UTC (rev 1636)
@@ -1,7 +1,7 @@
<div id="comments">
<%= render :partial => 'application/header', :locals => {
:title => _("Recently positively rated"),
- :link => nil} %>
+ :link => (GlobalConfig.use_log_log ? log_log_feed_link(:channel => 'for_' + @logi.home_pages_peer_group.unix_name) : nil)} %>
<% if !logis.empty? %>
<%= render :partial => 'snippets_pagination', :locals => {:logis => logis} %>
<% end %>
Deleted: trunk/app/views/logis/feed.atom.builder
===================================================================
--- trunk/app/views/logis/feed.atom.builder 2009-10-29 00:20:18 UTC (rev 1635)
+++ trunk/app/views/logis/feed.atom.builder 2009-11-02 19:52:26 UTC (rev 1636)
@@ -1,26 +0,0 @@
-atom_feed do |feed|
- feed.title(title)
- feed.updated((logis.first.created_at))
- feed.link "rel" => "self",
- "href" => url_for(:only_path => false, :format => 'atom')
- feed.link "rel" => "alternate",
- "href" => url_for(:only_path => false)
-
- logis.each do |logi|
- feed.entry(logi) do |entry|
- entry.title(logi.current_title)
- entry.link(logi_ll_url(logi))
- entry.content(logi.current_snippet + '...', :type => 'text')
-
- entry.categories do |categories|
- logi.tags.each do |tag|
- categories.category(:term => tag.to_s(:for => :show))
- end
- end
-
- entry.author do |author|
- author.name(logi.creator.name)
- end
- end
- end
-end
Modified: trunk/app/views/users/edit.html.erb
===================================================================
--- trunk/app/views/users/edit.html.erb 2009-10-29 00:20:18 UTC (rev 1635)
+++ trunk/app/views/users/edit.html.erb 2009-11-02 19:52:26 UTC (rev 1636)
@@ -42,6 +42,11 @@
<% end %>
<% end %>
+ <% render :layout => 'application/panel_with_header', :locals => {:title => _('Personal RSS feed'), :id => "personal_rss"} do %>
+ <p>Your RSS-feed is updated whenever something happens related to your logis (remarks, votes, updates, ...)</p>
+ <div class="your_feed"><p>Link: </p></div> <%= log_log_feed_link(:channel => 'for_' + current_user.unix_name) %>
+ <% end %>
+
<% render :layout => 'application/panel_with_header', :locals => {:title => _('API Key')} do %>
<p>You can use our API to remotely post and update logis</p>
<p>Your API-key is: <%= current_user.single_access_token %></p>
Added: trunk/public/images/down_button_disabled.svg
===================================================================
--- trunk/public/images/down_button_disabled.svg (rev 0)
+++ trunk/public/images/down_button_disabled.svg 2009-11-02 19:52:26 UTC (rev 1636)
@@ -0,0 +1,99 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="400"
+ height="40"
+ id="svg3408"
+ sodipodi:version="0.32"
+ inkscape:version="0.46"
+ version="1.0"
+ sodipodi:docname="down_button_disabled.svg"
+ inkscape:output_extension="org.inkscape.output.svg.inkscape"
+ inkscape:export-filename="/home/wybo/logilogi/trunk/public/images/add_icon_16.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs3410">
+ <inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 526.18109 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="744.09448 : 526.18109 : 1"
+ inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
+ id="perspective3416" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ gridtolerance="10000"
+ guidetolerance="10"
+ objecttolerance="10"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1.979899"
+ inkscape:cx="208.95176"
+ inkscape:cy="0.34176457"
+ inkscape:document-units="px"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:window-width="1366"
+ inkscape:window-height="693"
+ inkscape:window-x="0"
+ inkscape:window-y="27" />
+ <metadata
+ id="metadata3413">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ id="layer1">
+ <rect
+ ry="10"
+ rx="10"
+ y="0"
+ x="-400"
+ height="40"
+ width="400"
+ id="rect6887"
+ style="fill:#818181;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:2.02999989999999997;stroke-opacity:1;display:inline"
+ transform="scale(-1,1)" />
+ <g
+ style="display:inline"
+ id="g5821"
+ transform="matrix(0,-1.4876271,1.2883229,0,-333.8776,581.63956)">
+ <path
+ transform="translate(-456.01531,113.93376)"
+ d="M 825.90072,162.67438 L 841.81063,153.48879 L 841.81062,171.85996 L 825.90072,162.67438 z"
+ inkscape:randomized="0"
+ inkscape:rounded="0"
+ inkscape:flatsided="true"
+ sodipodi:arg2="4.1887902"
+ sodipodi:arg1="3.1415927"
+ sodipodi:r2="5.3033009"
+ sodipodi:r1="10.606601"
+ sodipodi:cy="162.67438"
+ sodipodi:cx="836.50732"
+ sodipodi:sides="3"
+ id="path5831"
+ style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:2.0299999;stroke-opacity:1"
+ sodipodi:type="star" />
+ </g>
+ </g>
+</svg>
Added: trunk/public/images/up_button_disabled.svg
===================================================================
--- trunk/public/images/up_button_disabled.svg (rev 0)
+++ trunk/public/images/up_button_disabled.svg 2009-11-02 19:52:26 UTC (rev 1636)
@@ -0,0 +1,99 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="400"
+ height="40"
+ id="svg3408"
+ sodipodi:version="0.32"
+ inkscape:version="0.46"
+ version="1.0"
+ sodipodi:docname="up_button_disabled.svg"
+ inkscape:output_extension="org.inkscape.output.svg.inkscape"
+ inkscape:export-filename="/home/wybo/logilogi/trunk/public/images/add_icon_16.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs3410">
+ <inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 526.18109 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="744.09448 : 526.18109 : 1"
+ inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
+ id="perspective3416" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ gridtolerance="10000"
+ guidetolerance="10"
+ objecttolerance="10"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1.979899"
+ inkscape:cx="208.95176"
+ inkscape:cy="0.34176457"
+ inkscape:document-units="px"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:window-width="1366"
+ inkscape:window-height="693"
+ inkscape:window-x="0"
+ inkscape:window-y="27" />
+ <metadata
+ id="metadata3413">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ id="layer1">
+ <rect
+ ry="10"
+ rx="10"
+ y="0"
+ x="-400"
+ height="40"
+ width="400"
+ id="rect6887"
+ style="fill:#818181;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:2.02999989999999997;stroke-opacity:1;display:inline"
+ transform="scale(-1,1)" />
+ <g
+ style="display:inline"
+ id="g5821"
+ transform="matrix(0,1.4876271,-1.2883229,0,378.8436,-542.53157)">
+ <path
+ transform="translate(-456.01531,113.93376)"
+ d="M 825.90072,162.67438 L 841.81063,153.48879 L 841.81062,171.85996 L 825.90072,162.67438 z"
+ inkscape:randomized="0"
+ inkscape:rounded="0"
+ inkscape:flatsided="true"
+ sodipodi:arg2="4.1887902"
+ sodipodi:arg1="3.1415927"
+ sodipodi:r2="5.3033009"
+ sodipodi:r1="10.606601"
+ sodipodi:cy="162.67438"
+ sodipodi:cx="836.50732"
+ sodipodi:sides="3"
+ id="path5831"
+ style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:2.0299999;stroke-opacity:1"
+ sodipodi:type="star" />
+ </g>
+ </g>
+</svg>
Modified: trunk/public/stylesheets/logilogi.css
===================================================================
--- trunk/public/stylesheets/logilogi.css 2009-10-29 00:20:18 UTC (rev 1635)
+++ trunk/public/stylesheets/logilogi.css 2009-11-02 19:52:26 UTC (rev 1636)
@@ -1180,6 +1180,14 @@
float: right;
padding-top: -2em;
}
+#personal_rss .your_feed {
+ float: left;
+}
+#personal_rss .rss_link {
+ float: left;
+ padding-left: 0.5em;
+ padding-top: 0.2em;
+}
.tab_description .rss_link {
margin-top: -0.2em;
margin-bottom: -0.2em;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <wy...@us...> - 2009-10-29 00:20:25
|
Revision: 1635
http://logilogi.svn.sourceforge.net/logilogi/?rev=1635&view=rev
Author: wybow
Date: 2009-10-29 00:20:18 +0000 (Thu, 29 Oct 2009)
Log Message:
-----------
Added disabled buttons for up/down & parsing of anchors
Modified Paths:
--------------
trunk/app/helpers/application_helper.rb
trunk/app/models/const/link.rb
trunk/app/views/layouts/_foot.html.erb
trunk/app/views/logis/_steps.html.erb
trunk/public/images/up_button.svg
trunk/public/stylesheets/logilogi.css
trunk/test/unit/link_test.rb
Modified: trunk/app/helpers/application_helper.rb
===================================================================
--- trunk/app/helpers/application_helper.rb 2009-10-28 23:06:30 UTC (rev 1634)
+++ trunk/app/helpers/application_helper.rb 2009-10-29 00:20:18 UTC (rev 1635)
@@ -611,6 +611,14 @@
button_to text, new_logi_url(), :class => 'go_button'
end
+ def toggle_button_to(name, *args, &block)
+ if args.last[:disabled]
+ disabled_button(name, *args, &block)
+ else
+ button_to(name, *args, &block)
+ end
+ end
+
def toggle_button_to_remote(name, *args, &block)
if args.last[:disabled]
disabled_button(name, *args, &block)
Modified: trunk/app/models/const/link.rb
===================================================================
--- trunk/app/models/const/link.rb 2009-10-28 23:06:30 UTC (rev 1634)
+++ trunk/app/models/const/link.rb 2009-10-29 00:20:18 UTC (rev 1635)
@@ -29,9 +29,10 @@
(#{Const::LogiVersion::BLOCK_LOGI_VERSION})?/x
SCAN_EXTRA_SPECS_RE = /((?:#{BLOCK_SPEC_STANCE_S_SLASHED})[^$]+)/
DISSECT_LINK_RE = /^
- ([^=$]+)? # link parts, divided by \/
- ([^$]+)? # requested-logi-and-version (=i2, =i3=v2)
- (.+)? # extra specifications
+ ([^=$#]+)? # link parts, divided by \/
+ ([^$#]+)? # requested-logi-and-version (=i2, =i3=v2)
+ ([^#]+)? # extra specifications
+ (.+)? # anchor
$/x
end
end
Modified: trunk/app/views/layouts/_foot.html.erb
===================================================================
--- trunk/app/views/layouts/_foot.html.erb 2009-10-28 23:06:30 UTC (rev 1634)
+++ trunk/app/views/layouts/_foot.html.erb 2009-10-29 00:20:18 UTC (rev 1635)
@@ -63,9 +63,15 @@
mcorners.add('div.up_button', {
'scaled_image' : 'up_button.svg', 'corner_size' : 7,
'stretch_side' : 'right'});
+ mcorners.add('div.up_button_disabled', {
+ 'scaled_image' : 'up_button_disabled.svg', 'corner_size' : 7,
+ 'stretch_side' : 'right'});
mcorners.add('div.down_button', {
'scaled_image' : 'down_button.svg', 'corner_size' : 7,
'stretch_side' : 'right'});
+ mcorners.add('div.down_button_disabled', {
+ 'scaled_image' : 'down_button_disabled.svg', 'corner_size' : 7,
+ 'stretch_side' : 'right'});
mcorners.add('div.next_button', {
'scaled_image' : 'next_button.svg', 'corner_size' : 7,
'stretch_side' : 'right'});
Modified: trunk/app/views/logis/_steps.html.erb
===================================================================
--- trunk/app/views/logis/_steps.html.erb 2009-10-28 23:06:30 UTC (rev 1634)
+++ trunk/app/views/logis/_steps.html.erb 2009-10-29 00:20:18 UTC (rev 1635)
@@ -1,5 +1,7 @@
-<% if steps.size > 11
- index = steps.index(steps.detect {|s| s.logi == current_logi})
+<%
+index = steps.index(steps.detect {|s| s.logi == current_logi})
+
+if steps.size > 11
if index + 6 > steps.size
i_start = steps.size - 11
else
@@ -12,23 +14,24 @@
i_end = index + 6
end
i_end = steps.size if i_end > steps.size
- puts i_end
- puts steps.size
+else
+ i_start = 0
+ i_end = steps.size
+end
%>
- <% if index > 1 %>
- <%= button_to 'Previous', logi_ll_url(steps[index - 1].logi, :anchor => 'logi_top'),
- :class => 'up_button' %>
- <div class="spacer"></div>
- <% end %>
- <% if i_start != 0 %>
- <div class="step">
- <div class="level2">
- ...
- </div>
+<%= toggle_button_to 'Previous',
+ (index > 0 ? logi_ll_url(steps[index - 1].logi, :anchor => 'logi_top') : ''),
+ :class => 'up_button', :disabled => (index == 0) %>
+<div class="spacer"></div>
+
+<div class="steps">
+<% if i_start != 0 %>
+ <div class="step">
+ <div class="level2">
+ ...
</div>
- <% end %>
+ </div>
<% end %>
-
<% steps[i_start...i_end].each do |step| %>
<% if current_logi == step.logi %>
<div class="step step_current">
@@ -47,17 +50,17 @@
</div>
<% end %>
<% end %>
-<% if steps.size > 11 %>
- <% if i_end != steps.size %>
- <div class="step">
- <div class="level2">
- ...
- </div>
+<% if i_end != steps.size %>
+ <div class="step">
+ <div class="level2">
+ ...
</div>
- <% end %>
- <% if index + 1 < steps.size %>
- <div class="spacer"></div>
- <%= button_to 'Next', logi_ll_url(steps[index + 1].logi, :anchor => 'logi_top'),
- :class => 'down_button' %>
- <% end %>
+ </div>
<% end %>
+</div>
+
+<div class="spacer"></div>
+<%= toggle_button_to 'Next',
+ (index + 1 < steps.size ? logi_ll_url(steps[index + 1].logi, :anchor => 'logi_top') : ''),
+ :class => 'down_button', :disabled => (index + 1 == steps.size) %>
+<div class="spacer"></div>
Modified: trunk/public/images/up_button.svg
===================================================================
--- trunk/public/images/up_button.svg 2009-10-28 23:06:30 UTC (rev 1634)
+++ trunk/public/images/up_button.svg 2009-10-29 00:20:18 UTC (rev 1635)
@@ -14,7 +14,7 @@
sodipodi:version="0.32"
inkscape:version="0.46"
version="1.0"
- sodipodi:docname="previous_button.svg"
+ sodipodi:docname="up_button.svg"
inkscape:output_extension="org.inkscape.output.svg.inkscape"
inkscape:export-filename="/home/wybo/logilogi/trunk/public/images/add_icon_16.png"
inkscape:export-xdpi="90"
Modified: trunk/public/stylesheets/logilogi.css
===================================================================
--- trunk/public/stylesheets/logilogi.css 2009-10-28 23:06:30 UTC (rev 1634)
+++ trunk/public/stylesheets/logilogi.css 2009-10-29 00:20:18 UTC (rev 1635)
@@ -254,6 +254,10 @@
padding-left: 0.2em;
list-style: none;
}
+.panel div.steps {
+ padding-top: 1em;
+ padding-bottom: 1em;
+}
.panel div.step div.level1,
.panel div.step div.level2 {
font-family: "Times New Roman", Times, serif;
Modified: trunk/test/unit/link_test.rb
===================================================================
--- trunk/test/unit/link_test.rb 2009-10-28 23:06:30 UTC (rev 1634)
+++ trunk/test/unit/link_test.rb 2009-10-29 00:20:18 UTC (rev 1635)
@@ -467,6 +467,7 @@
def test_parsing_to_s_for_edit
link_string_hash = self.get_link_string_hash
link_string_hash.delete(:tag_current_logi_version)
+ link_string_hash.delete(:tags_anchor)
assert_equal_string_parsing_for_hashes(link_string_hash,
link_string_hash, :for => :edit)
@@ -658,6 +659,8 @@
'Eduard_Edison/' + Tag.user.to_s,
:tags_stance =>
'Peter_Abelard/Botanics$stance=critique',
+ :tags_anchor =>
+ 'Peter_Abelard/Botanics#logi_top',
:non_existing_tag =>
'Non_Existing',
:tags_with_non_existing_tag =>
@@ -670,37 +673,40 @@
return {
:tag =>
[test_link_string_hash[:tag],
- 'Botanics', nil, nil],
+ 'Botanics', nil, nil, nil],
:multi_part_tag =>
[test_link_string_hash[:multi_part_tag],
- 'Peter_Abelard_Economics', nil, nil],
+ 'Peter_Abelard_Economics', nil, nil, nil],
:tag_logi =>
[test_link_string_hash[:tag_logi],
- 'Logi_Logi', logis(:logi_logi).to_s, nil],
+ 'Logi_Logi', logis(:logi_logi).to_s, nil, nil],
:tag_logi_version =>
[test_link_string_hash[:tag_logi_version],
- 'Logi_Logi', logis(:logi_logi).to_s + '=v2', nil],
+ 'Logi_Logi', logis(:logi_logi).to_s + '=v2', nil, nil],
:tag_current_logi_version =>
[test_link_string_hash[:tag_current_logi_version],
- 'Logi_Logi', logis(:logi_logi).to_s + '=vc', nil],
+ 'Logi_Logi', logis(:logi_logi).to_s + '=vc', nil, nil],
:tags =>
[test_link_string_hash[:tags],
- 'Peter_Abelard/Botanics', nil, nil],
+ 'Peter_Abelard/Botanics', nil, nil, nil],
:tags_logi =>
[test_link_string_hash[:tags_logi],
- 'Peter_Abelard/Botanics', logis(:peter_abelard_botanics).to_s, nil],
+ 'Peter_Abelard/Botanics', logis(:peter_abelard_botanics).to_s, nil, nil],
:tags_user_home =>
[test_link_string_hash[:tags_user_home],
- 'Eduard_Edison/' + Tag.user.to_s, nil, nil],
+ 'Eduard_Edison/' + Tag.user.to_s, nil, nil, nil],
:tags_stance =>
[test_link_string_hash[:tags_stance],
- 'Peter_Abelard/Botanics', nil, '$stance=critique'],
+ 'Peter_Abelard/Botanics', nil, '$stance=critique', nil],
+ :tags_anchor =>
+ [test_link_string_hash[:tags_anchor],
+ 'Peter_Abelard/Botanics', nil, nil, '#logi_top'],
:non_existing_tag =>
[test_link_string_hash[:non_existing_tag],
- 'Non_Existing', nil, nil],
+ 'Non_Existing', nil, nil, nil],
:tags_with_non_existing_tag =>
[test_link_string_hash[:tags_with_non_existing_tag],
- 'Peter_Abelard/Economics/Non_Existing_Word/Botanics', nil, nil]
+ 'Peter_Abelard/Economics/Non_Existing_Word/Botanics', nil, nil, nil]
}
end
@@ -744,12 +750,15 @@
:to_logi_perma_id => logis(:peter_abelard_botanics).perma_id
},
:tags_user_home =>
- {:requested_tags => [Tag.from_s('Eduard_Edison'), Tag.user],
+ {:requested_tags => [Tag.from_s('Eduard_Edison'), Tag.user]
},
:tags_stance =>
{:requested_tags => [Tag.from_s('Peter_Abelard'),Tag.from_s('Botanics')],
:stance => Const::Link::STANCES[:critique]
},
+ :tags_anchor =>
+ {:requested_tags => [Tag.from_s('Peter_Abelard'),Tag.from_s('Botanics')]
+ },
:non_existing_tag =>
{:requested_tags => [Tag.from_s('Non_Existing')]
},
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|