parlement 0.2 → 0.3
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGES +14 -4
- data/README +25 -5
- data/Rakefile +21 -21
- data/app/controllers/account_controller.rb +5 -1
- data/app/controllers/elt_controller.rb +7 -10
- data/app/controllers/person_controller.rb +9 -0
- data/app/controllers/subscriber_controller.rb +21 -0
- data/app/helpers/elt_helper.rb +25 -13
- data/app/helpers/mailman.rb +9 -92
- data/app/helpers/subscriber_helper.rb +2 -0
- data/app/models/attachment.rb +2 -0
- data/app/models/elt.rb +64 -2
- data/app/models/mail.rb +198 -0
- data/app/models/mail_notify.rb +63 -0
- data/app/models/person.rb +8 -1
- data/app/views/account/_login.rhtml +31 -28
- data/app/views/account/_show.rhtml +4 -4
- data/app/views/elt/_elt.rhtml +23 -28
- data/app/views/elt/_list.rhtml +6 -2
- data/app/views/elt/new.rhtml +1 -1
- data/app/views/elt/show.rhtml +32 -10
- data/app/views/layouts/top.rhtml +16 -10
- data/app/views/mail_notify/publish.text.html.rhtml +46 -0
- data/app/views/mail_notify/publish.text.plain.rhtml +2 -0
- data/app/views/person/_listElts.rhtml +33 -0
- data/app/views/person/show.rhtml +21 -19
- data/config/boot.rb +2 -0
- data/config/environment.rb +19 -13
- data/config/environments/development.rb +3 -1
- data/config/environments/production.rb +2 -0
- data/config/environments/test.rb +2 -0
- data/config/routes.rb +5 -2
- data/db/ROOT/mail.txt +2 -0
- data/db/ROOT/parlement/news/release0.2.txt +8 -0
- data/db/ROOT/parlement/news/release0.3.txt +11 -0
- data/db/ROOT/parlement/test.txt +6 -1
- data/db/ROOT/parlement.txt +23 -30
- data/db/ROOT/perso.txt +17 -18
- data/db/development_structure.sql +133 -217
- data/db/schema.rb +83 -0
- data/db/schema.sql +11 -15
- data/lib/data_import.rb +3 -1
- data/public/attachment/file/architecture.png +0 -0
- data/public/attachment/file/architecture.svg +8972 -0
- data/public/attachment/file/security.svg +8960 -0
- data/public/images/Sleep-Deprivation-5.JPG +0 -0
- data/public/images/eltBackground.png +0 -0
- data/public/images/eltBackground.svg +89 -0
- data/public/images/orange_by_darren_Hester_350o.jpg +0 -0
- data/public/images/rails.png +0 -0
- data/public/images/smile.png +0 -0
- data/public/images/smile.svg +257 -0
- data/public/images/world.png +0 -0
- data/public/images/world.svg +170 -0
- data/public/javascripts/controls.js +30 -1
- data/public/javascripts/dragdrop.js +210 -145
- data/public/javascripts/effects.js +261 -399
- data/public/javascripts/ie7.js +6 -0
- data/public/javascripts/prototype.js +131 -72
- data/public/oldindex.html +270 -71
- data/public/stylesheets/default.css +189 -215
- data/script/about +1 -1
- data/script/breakpointer +1 -1
- data/script/console +1 -1
- data/script/destroy +1 -1
- data/script/generate +1 -1
- data/script/performance/benchmarker +1 -1
- data/script/performance/profiler +1 -1
- data/script/plugin +1 -1
- data/script/process/reaper +1 -1
- data/script/process/spawner +1 -1
- data/script/process/spinner +1 -1
- data/script/runner +1 -1
- data/script/server +1 -1
- data/test/fixtures/elts.yml +2 -0
- data/test/fixtures/mail/mail_ruby +27 -0
- data/test/fixtures/mail/mail_rubyChild +28 -0
- data/test/fixtures/mail/mail_rubyWithAttachment +7932 -0
- data/test/fixtures/mail/mail_rubyWithSubject +27 -0
- data/test/fixtures/mails.yml +7 -1
- data/test/fixtures/people.yml +5 -0
- data/test/fixtures/subscribers.yml +11 -0
- data/test/functional/account_controller_test.rb +38 -37
- data/test/functional/subscriber_controller_test.rb +128 -0
- data/test/test_helper.rb +44 -0
- data/test/unit/attachment_test.rb +1 -1
- data/test/unit/elt_test.rb +3 -2
- data/test/unit/mail_notify_test.rb +37 -0
- data/test/unit/mail_test.rb +124 -1
- data/test/unit/notifier_test.rb +0 -14
- data/test/unit/person_test.rb +2 -1
- data/test/unit/subscriber_test.rb +35 -0
- data/test/unit/user_test.rb +3 -3
- data/vendor/plugins/file_column/CHANGELOG +64 -0
- data/vendor/plugins/file_column/README +54 -0
- data/vendor/plugins/file_column/Rakefile +36 -0
- data/vendor/plugins/file_column/TODO +6 -0
- data/vendor/plugins/file_column/init.rb +12 -0
- data/vendor/plugins/file_column/lib/file_column.rb +719 -0
- data/vendor/plugins/file_column/lib/file_column_helper.rb +145 -0
- data/vendor/plugins/file_column/lib/file_compat.rb +28 -0
- data/vendor/plugins/file_column/lib/magick_file_column.rb +188 -0
- data/vendor/plugins/file_column/lib/validations.rb +112 -0
- data/vendor/plugins/file_column/test/abstract_unit.rb +90 -0
- data/vendor/plugins/file_column/test/connection.rb +17 -0
- data/vendor/plugins/file_column/test/file_column_helper_test.rb +97 -0
- data/vendor/plugins/file_column/test/file_column_test.rb +630 -0
- data/vendor/plugins/file_column/test/fixtures/entry.rb +32 -0
- data/vendor/plugins/file_column/test/fixtures/invalid-image.jpg +1 -0
- data/vendor/plugins/file_column/test/fixtures/kerb.jpg +0 -0
- data/vendor/plugins/file_column/test/fixtures/mysql.sql +25 -0
- data/vendor/plugins/file_column/test/fixtures/schema.rb +10 -0
- data/vendor/plugins/file_column/test/fixtures/skanthak.png +0 -0
- data/vendor/plugins/file_column/test/magick_test.rb +251 -0
- data/vendor/plugins/file_column/test/magick_view_only_test.rb +21 -0
- data/vendor/plugins/guid/README.TXT +19 -0
- data/vendor/plugins/guid/init.rb +23 -0
- data/vendor/plugins/guid/lib/usesguid.rb +37 -0
- data/vendor/plugins/guid/lib/uuid22.rb +43 -0
- data/vendor/plugins/guid/lib/uuidtools.rb +565 -0
- metadata +83 -15
- data/db/ROOT/CV.txt +0 -166
- data/lib/file_column.rb +0 -263
- data/lib/file_column_helper.rb +0 -45
- /data/{lib → vendor/plugins/file_column/lib}/rails_file_column.rb +0 -0
@@ -0,0 +1,46 @@
|
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
|
2
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
3
|
+
|
4
|
+
<html>
|
5
|
+
<head>
|
6
|
+
<title><%= @elt.subject %></title>
|
7
|
+
|
8
|
+
<!-- Yes I use the mail domain for lack of another variable :-( -->
|
9
|
+
<base href="http://<%= ActionMailer::Base.server_settings[:domain] %>"/>
|
10
|
+
|
11
|
+
<link href="/stylesheets/default.css" media="screen" rel="Stylesheet" type="text/css" />
|
12
|
+
<script src="/javascripts/prototype.js" type="text/javascript"></script>
|
13
|
+
<script src="/javascripts/scriptaculous.js" type="text/javascript"></script>
|
14
|
+
|
15
|
+
<link rel="shortcut icon" href="/images/world.png" type="image/png"/>
|
16
|
+
|
17
|
+
<meta name="ROBOTS" content="ALL"/>
|
18
|
+
<meta name="author" content="Emmanuel Charpentier"/>
|
19
|
+
<meta name="description" content="Parlement, a mix between direct and
|
20
|
+
representative democracy, in the shape of a website. A mailing list,
|
21
|
+
forum, chat."/>
|
22
|
+
<meta name="keywords" content="collaborative writing, democracy, direct
|
23
|
+
democracy, representative democracy, forum, mailing list, chat, ruby on
|
24
|
+
rails, PostgreSQL"/>
|
25
|
+
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
|
26
|
+
</head>
|
27
|
+
|
28
|
+
<body>
|
29
|
+
<div class="links">
|
30
|
+
<a class="title" href="http://leparlement.org">Parlement</a>
|
31
|
+
<div class="signets">
|
32
|
+
<a href="http://rubyforge.org/projects/parlement">forge</a>
|
33
|
+
<a href="http://www.gnu.org/licenses/gpl.html">GPL</a>
|
34
|
+
</div>
|
35
|
+
</div>
|
36
|
+
|
37
|
+
<div class="elt">
|
38
|
+
<h1><%= textilize_without_paragraph @elt.subject %></h1>
|
39
|
+
|
40
|
+
<div class="eltBody">
|
41
|
+
<%= RedCloth.new(@elt.body).to_html%>
|
42
|
+
</div>
|
43
|
+
</div>
|
44
|
+
</body>
|
45
|
+
</html>
|
46
|
+
|
@@ -0,0 +1,33 @@
|
|
1
|
+
<%
|
2
|
+
e_pages = ActionController::Pagination::Paginator.new(
|
3
|
+
self, person.elts.count, PAGE_ELT_LENGTH, @params['page'])
|
4
|
+
e = Elt.find_all("person_id = '#{person.id}'",
|
5
|
+
'created_on DESC', e_pages.current.to_sql)
|
6
|
+
%>
|
7
|
+
|
8
|
+
<%
|
9
|
+
# TODO There seems to be a problem with firefox when trying to use a visual_effect
|
10
|
+
%>
|
11
|
+
|
12
|
+
<%= link_to_remote('< Previous',
|
13
|
+
:update => 'personElts_'+person.id.to_s,
|
14
|
+
:url => { :action => 'list', :id => person, :page => e_pages.current.next },
|
15
|
+
:complete => visual_effect(:BlindDown, 'personElts_'+person.id.to_s)) if e_pages.current.next %>
|
16
|
+
|
17
|
+
<span style="display:<%= e_pages.length > 1 ? '' : 'none'%>" class="pageCount">
|
18
|
+
(<%= e_pages.length-e_pages.current.to_i+1 %>/<%= e_pages.length %>)
|
19
|
+
</span>
|
20
|
+
|
21
|
+
<%= link_to_remote('Next >',
|
22
|
+
:update => 'personElts_'+person.id.to_s,
|
23
|
+
:url => { :action => 'list', :id => person, :page => e_pages.current.previous },
|
24
|
+
:complete => visual_effect(:BlindDown, 'personElts_'+person.id.to_s)) if e_pages.current.previous %>
|
25
|
+
|
26
|
+
<% for elt in e.reverse[0...PAGE_ELT_LENGTH] %>
|
27
|
+
<div class="boxLine">
|
28
|
+
<%= elt.created_on.strftime('%d/%m %H:%M') %>
|
29
|
+
<%= link_to(elt.subject, :controller => 'elt', :action => 'show', :id => elt) %>
|
30
|
+
(<%= elt.children.size %> sub)
|
31
|
+
</div>
|
32
|
+
<% end %>
|
33
|
+
|
data/app/views/person/show.rhtml
CHANGED
@@ -1,3 +1,21 @@
|
|
1
|
+
<div class="sidebar">
|
2
|
+
<% if @person.subscribed_elts.size > 0 %>
|
3
|
+
<div class="boxTitle">Subscribed elts</div>
|
4
|
+
<% end %>
|
5
|
+
|
6
|
+
<div class="box">
|
7
|
+
<% for elt in @person.subscribed_elts.reverse[0...PAGE_ELT_LENGTH] %>
|
8
|
+
<div class="boxLine">
|
9
|
+
<span style="float:right;margin-right:0.5em;font-size:smaller;">
|
10
|
+
<%= elt.created_on.strftime('%d/%m') %>
|
11
|
+
</span>
|
12
|
+
<%= link_to(elt.subject, :controller => 'elt', :action => 'show', :id => elt) %>
|
13
|
+
</div>
|
14
|
+
<% end %>
|
15
|
+
</div>
|
16
|
+
</div>
|
17
|
+
|
18
|
+
|
1
19
|
<h1><%= @person.name %></h1>
|
2
20
|
|
3
21
|
<p>Created on <%= @person.created_on %></p>
|
@@ -18,23 +36,7 @@ e = Elt.find_all("person_id = '#{@person.id}'",
|
|
18
36
|
'created_on DESC', e_pages.current.to_sql)
|
19
37
|
%>
|
20
38
|
|
21
|
-
<%=
|
22
|
-
|
23
|
-
|
24
|
-
:loading => visual_effect(:BlindDown, 'eltSubsClose_'+elt.id.to_s),
|
25
|
-
:loaded => visual_effect(:BlindDown, 'eltSubs_'+elt.id.to_s)) if e_pages.current.next %>
|
26
|
-
|
27
|
-
<span style="display:<%= e_pages.length > 1 ? '' : 'none'%>" class="pageCount">
|
28
|
-
(<%= e_pages.length-e_pages.current.to_i+1 %>/<%= e_pages.length %>)
|
29
|
-
</span>
|
30
|
-
|
31
|
-
<%= link_to_remote('Next >',
|
32
|
-
:update => 'eltSubs_'+elt.id.to_s,
|
33
|
-
:url => { :action => 'list', :id => elt, :page => e_pages.current.previous },
|
34
|
-
:loading => visual_effect(:BlindDown, 'eltSubsClose_'+elt.id.to_s),
|
35
|
-
:loaded => visual_effect(:BlindDown, 'eltSubs_'+elt.id.to_s)) if e_pages.current.previous %>
|
36
|
-
|
37
|
-
<%= render :partial => '/elt/elt',
|
38
|
-
:collection => e.reverse,
|
39
|
-
:locals => { :eltTop => false } %>
|
39
|
+
<div class="eltSubs" id="personElts_<%= @person.id %>">
|
40
|
+
<%= render :partial => '/person/listElts', :locals => { :person => @person } %>
|
41
|
+
</div>
|
40
42
|
|
data/config/boot.rb
CHANGED
data/config/environment.rb
CHANGED
@@ -1,23 +1,27 @@
|
|
1
1
|
# Be sure to restart your web server when you modify this file.
|
2
2
|
|
3
3
|
# Uncomment below to force Rails into production mode
|
4
|
-
#
|
4
|
+
# you don't control web/app server and can't set it the proper way
|
5
5
|
# ENV['RAILS_ENV'] ||= 'production'
|
6
6
|
|
7
7
|
# Bootstrap the Rails environment, frameworks, and default configuration
|
8
8
|
require File.join(File.dirname(__FILE__), 'boot')
|
9
9
|
|
10
10
|
Rails::Initializer.run do |config|
|
11
|
+
# Settings in config/environments/* take precedence those specified here
|
12
|
+
|
11
13
|
# Skip frameworks you're not going to use
|
12
14
|
# config.frameworks -= [ :action_web_service, :action_mailer ]
|
13
15
|
|
14
16
|
# Add additional load paths for your own custom dirs
|
15
17
|
# config.load_paths += %W( #{RAILS_ROOT}/extras )
|
16
18
|
|
17
|
-
# Force all environments to use the same logger level
|
19
|
+
# Force all environments to use the same logger level
|
18
20
|
# (by default production uses :info, the others :debug)
|
19
21
|
# config.log_level = :debug
|
20
22
|
|
23
|
+
config.log_level = :info
|
24
|
+
|
21
25
|
# Use the database for sessions instead of the file system
|
22
26
|
# (create the session table with 'rake create_sessions_table')
|
23
27
|
# config.action_controller.session_store = :active_record_store
|
@@ -31,7 +35,7 @@ Rails::Initializer.run do |config|
|
|
31
35
|
|
32
36
|
# Make Active Record use UTC-base instead of local time
|
33
37
|
# config.active_record.default_timezone = :utc
|
34
|
-
|
38
|
+
|
35
39
|
# Use Active Record's schema dumper instead of SQL when creating the test database
|
36
40
|
# (enables use of different database adapters for development and test environments)
|
37
41
|
# config.active_record.schema_format = :ruby
|
@@ -58,10 +62,10 @@ require 'rails_file_column'
|
|
58
62
|
require 'jcode'
|
59
63
|
$KCODE = 'u'
|
60
64
|
|
61
|
-
PARLEMENT_VERSION='0.
|
65
|
+
PARLEMENT_VERSION='0.3'
|
62
66
|
|
63
67
|
# How many elements are displayed at once
|
64
|
-
PAGE_ELT_LENGTH =
|
68
|
+
PAGE_ELT_LENGTH = 10
|
65
69
|
|
66
70
|
# What is the name of a quick anonymous poster
|
67
71
|
ANONYMOUS_POSTER = 'anon'
|
@@ -70,18 +74,20 @@ require 'environments/user_environment'
|
|
70
74
|
|
71
75
|
CONFIG = { :default_language => 'en' }
|
72
76
|
|
77
|
+
# This variable is of course used for mails, but also in the html mail
|
78
|
+
# template, to set the base url for the generated html
|
73
79
|
ActionMailer::Base.server_settings = {
|
74
80
|
:domain => 'leparlement.org'
|
75
81
|
}
|
76
|
-
"""
|
77
|
-
:address => 'smtp.postoffice.net',
|
78
|
-
:port => 25,
|
79
|
-
:domain => 'www.mywebsite.com',
|
80
|
-
:user_name => 'me@postoffice.net',
|
81
|
-
:password => 'mypass',
|
82
|
-
:authentication => :login
|
83
|
-
"""
|
84
82
|
|
83
|
+
#
|
84
|
+
# :address => 'smtp.postoffice.net',
|
85
|
+
# :port => 25,
|
86
|
+
# :domain => 'www.mywebsite.com',
|
87
|
+
# :user_name => 'me@postoffice.net',
|
88
|
+
# :password => 'mypass',
|
89
|
+
# :authentication => :login
|
90
|
+
#
|
85
91
|
|
86
92
|
module LoginEngine
|
87
93
|
config :salt, 'parle'
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# Settings specified here will take precedence over those in config/environment.rb
|
2
|
+
|
1
3
|
# In the development environment your application's code is reloaded on
|
2
4
|
# every request. This slows down response time but is perfect for development
|
3
5
|
# since you don't have to restart the webserver when you make code changes.
|
@@ -14,4 +16,4 @@ config.action_controller.consider_all_requests_local = true
|
|
14
16
|
config.action_controller.perform_caching = true
|
15
17
|
|
16
18
|
# Don't care if the mailer can't send
|
17
|
-
|
19
|
+
config.action_mailer.raise_delivery_errors = true
|
data/config/environments/test.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
# Settings specified here will take precedence over those in config/environment.rb
|
2
|
+
|
1
3
|
# The test environment is used exclusively to run your application's
|
2
4
|
# test suite. You never need to work with it otherwise. Remember that
|
3
5
|
# your test database is "scratch space" for the test suite and is wiped
|
data/config/routes.rb
CHANGED
@@ -12,10 +12,13 @@ ActionController::Routing::Routes.draw do |map|
|
|
12
12
|
|
13
13
|
map.connect '', :controller => 'elt', :action => 'show', :id => 'parlement'
|
14
14
|
map.connect 'index.rss', :controller => 'elt', :action => 'rss', :id => 'parlement'
|
15
|
-
|
15
|
+
|
16
|
+
map.connect ':id', :controller => 'elt', :action => 'rss', :requirements => { :id => /.*\.rss/ }
|
17
|
+
map.connect ':id', :controller => 'elt', :action => 'show'
|
16
18
|
map.connect ':id/index.rss', :controller => 'elt', :action => 'rss'
|
19
|
+
map.connect ':id//index.rss', :controller => 'elt', :action => 'rss'
|
17
20
|
|
18
|
-
map.connect 'perso/:id', :controller => 'elt'
|
21
|
+
map.connect 'perso/:id', :controller => 'elt', :action => 'show'
|
19
22
|
map.connect 'perso/:id/index.rss', :controller => 'elt', :action => 'rss'
|
20
23
|
map.connect 'perso/blog/:id', :controller => 'elt'
|
21
24
|
map.connect 'perso/blog/:id/index.rss', :controller => 'elt', :action => 'rss'
|
data/db/ROOT/mail.txt
ADDED
@@ -0,0 +1,8 @@
|
|
1
|
+
Version 0.2
|
2
|
+
|
3
|
+
Evolutions
|
4
|
+
|
5
|
+
* Anonymous users doing a quick post (where the subject is not modified) will be marked as "anon"
|
6
|
+
* Each person has a public page listing its posts (this page can also be used to post...)
|
7
|
+
* Display the creation time for the most important posts
|
8
|
+
|
data/db/ROOT/parlement/test.txt
CHANGED
@@ -1,4 +1,9 @@
|
|
1
1
|
Testing
|
2
2
|
|
3
|
-
You can
|
3
|
+
You can use the basic part of the system right now (no mailing list or chat, no
|
4
|
+
vote, no delegation, no signatures, no electoral list, no P2P cluster). Just
|
5
|
+
click on the *more* links to drill down into the available elements. Click on
|
6
|
+
the *>>* links to propose new sub elements.
|
7
|
+
|
8
|
+
Do test this here!
|
4
9
|
|
data/db/ROOT/parlement.txt
CHANGED
@@ -1,51 +1,44 @@
|
|
1
1
|
Parlement
|
2
2
|
|
3
|
-
|
4
|
-
unities: unity of time, unity of place and unity of object. It's a principle
|
5
|
-
taking its roots in ancient Greece, and it certainly contributes to the awe we
|
6
|
-
can feel when comes election day. But it is also a limitation...
|
3
|
+
Forum, mailing list, blog, home page, chat room, newspaper.
|
7
4
|
|
8
|
-
|
5
|
+
p=. *AND*
|
9
6
|
|
10
|
-
|
7
|
+
A collaborative writing system based on democratic principles.
|
11
8
|
|
9
|
+
!{float:left;margin-right: 2em;}/attachment/file/architecture.png!
|
10
|
+
|
11
|
+
With _paper_ we vote:
|
12
12
|
* one day
|
13
13
|
* one place
|
14
14
|
* one issue
|
15
15
|
|
16
|
-
|
17
|
-
|
18
|
-
=>
|
19
|
-
|
20
|
-
</td><td>
|
21
|
-
|
22
|
-
In Internet we can vote:
|
23
|
-
|
16
|
+
With _Internet_ we can vote:
|
24
17
|
* any time
|
25
18
|
* any where
|
26
19
|
* any issue
|
27
20
|
|
28
|
-
|
21
|
+
This is a revolution, breaking rules that go back to antic Greece. Rules that
|
22
|
+
probably contribute to the feeling of awe one can resent when comes election
|
23
|
+
day, but which also restrict our ability to participate in politics.
|
29
24
|
|
30
|
-
|
25
|
+
Now we can acquire three new freedoms: freedom of time, of place and of object.
|
26
|
+
we can vote from our home, in the middle of the night and on the small issues
|
27
|
+
that we care about.
|
31
28
|
|
32
|
-
|
33
|
-
|
34
|
-
agendas
|
29
|
+
There are consequences. For example if you can vote anytime, why not also
|
30
|
+
_change your vote_ if you so wish? If votes are permanent, why have dates and
|
31
|
+
agendas, except for outside conditions?
|
35
32
|
|
36
33
|
If you can vote on any issue, then why not allow _everybody to propose polls_?
|
37
|
-
|
38
|
-
|
39
|
-
|
34
|
+
No technical limitation limits that ability, but for our own capacity to follow
|
35
|
+
all of them. And in fact their number growing, _delegating_ your votes will
|
36
|
+
become a required feature, allowing you to concentrate on the parts that
|
37
|
+
interest you the most, while delegating your voice to someone you trust on
|
38
|
+
other matters.
|
40
39
|
|
41
40
|
If you can vote from anywhere, then you can vote in front of anybody, this
|
42
41
|
means _vote selling_ is a possibility. It is not anti democratic, it's a
|
43
|
-
feature.
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
You can use the basic part of the system right now (no mailing list or chat, no
|
48
|
-
vote, no delegation, no signatures, no electoral list). Just click on the
|
49
|
-
*more* links to drill down into the available elements. Click on the *>>* links
|
50
|
-
to propose new sub elements.
|
42
|
+
feature. A feature that, yes, could result into an oligarchy, it all depends on
|
43
|
+
the value of our votes.
|
51
44
|
|
data/db/ROOT/perso.txt
CHANGED
@@ -1,12 +1,12 @@
|
|
1
|
-
echarp
|
1
|
+
echarp
|
2
2
|
|
3
3
|
<style>
|
4
|
-
.
|
4
|
+
.eltSubs, .eltSubsClose { display: none; }
|
5
5
|
</style>
|
6
6
|
|
7
7
|
<div class="sidebar" style="clear:right">
|
8
|
+
<div class="boxTitle">Amis et famille</div>
|
8
9
|
<div class="box">
|
9
|
-
<div class="boxTitle">Amis et famille</div>
|
10
10
|
<div class="boxLine">
|
11
11
|
Fr�rot <a href="http://www.christhalie.free.fr">christophe</a>,et des
|
12
12
|
<a href="http://www.motorun.net">motos!</a>
|
@@ -26,8 +26,8 @@ echarp / manu
|
|
26
26
|
</div>
|
27
27
|
</div>
|
28
28
|
|
29
|
+
<div class="boxTitle">Un ptit peu de logiciels libres</div>
|
29
30
|
<div class="box">
|
30
|
-
<div class="boxTitle">Un ptit peu de logiciels libres</div>
|
31
31
|
<a href="http://www.fsf.org">FSF</a>
|
32
32
|
<a href="http://april.org">APRIL</a>
|
33
33
|
<a href="http://debian.org">debian</a> <a href="http://cocoon.apache.org">Cocoon</a>
|
@@ -39,8 +39,8 @@ echarp / manu
|
|
39
39
|
<a href="http://kuro5hin.org">kuro5hin</a> <a href="http://javalobby.org">javalobby</a>
|
40
40
|
</div>
|
41
41
|
|
42
|
+
<div class="boxTitle">Int�ressants</div>
|
42
43
|
<div class="box">
|
43
|
-
<div class="boxTitle">Int�ressants</div>
|
44
44
|
<div class="boxLineR">
|
45
45
|
<a href="http://www.radioparadise.com">Radio Paradise</a>
|
46
46
|
</div>
|
@@ -64,8 +64,8 @@ echarp / manu
|
|
64
64
|
</div>
|
65
65
|
</div>
|
66
66
|
|
67
|
+
<div class="boxTitle">De mon histoire</div>
|
67
68
|
<div class="box">
|
68
|
-
<div class="boxTitle">De mon histoire</div>
|
69
69
|
<div class="boxLine">
|
70
70
|
<a href="http://www.editronics-edu.fr" title="liquid�">Editronics</a>
|
71
71
|
</div>
|
@@ -107,18 +107,17 @@ echarp / manu
|
|
107
107
|
</div>
|
108
108
|
</div>
|
109
109
|
|
110
|
-
!{width:10em;float:right;margin:1em;}/images/image/viveLeSki.jpg!:/images/image/viveLeSki.jpg
|
111
|
-
|
112
110
|
Bonjour le monde
|
113
111
|
|
114
112
|
Je suis un parisien d'origine paysanne. Cru 1973 et �lev� dans une bonne ferme
|
115
|
-
pleine de poules et de ch�vres. Quand j'�tais petit,
|
116
|
-
|
117
|
-
|
113
|
+
pleine de poules et de ch�vres. Quand j'�tais petit, je passais du temps dans
|
114
|
+
les pr�s et les chemins. Autant vous dire que j'�tais un grand fan d'heidi!
|
115
|
+
|
116
|
+
!{width:10em;float:right;margin:1em;}/images/image/viveLeSki.jpg!:/images/image/viveLeSki.jpg
|
118
117
|
|
119
|
-
|
120
|
-
|
121
|
-
|
118
|
+
Dire qu'aujourd'hui je suis devenu un intello qui aime se prendre la t�te sur
|
119
|
+
toutes sortes de sujets. Politique, philosophie, psychologie, science fiction
|
120
|
+
hard.
|
122
121
|
|
123
122
|
En 1997 j'ai imagin� une chose qui me tient � coeur, un outil d'�criture
|
124
123
|
collaborative o� un groupe peut �crire n'importe quel genre de texte structur�
|
@@ -143,7 +142,7 @@ j'adore construire, imaginer. D
|
|
143
142
|
inutilies avec des l�gos. Comme quoi avec les ann�es on ne change pas tant que
|
144
143
|
�a...
|
145
144
|
|
146
|
-
<pre style="float:left">
|
145
|
+
<pre style="float: left; color: #aa0;">
|
147
146
|
�
|
148
147
|
\ | /
|
149
148
|
|
|
@@ -152,7 +151,7 @@ inutilies avec des l
|
|
152
151
|
\_|_/
|
153
152
|
\ | /
|
154
153
|
</pre>
|
155
|
-
<pre style="float:left">
|
154
|
+
<pre style="float: left; color: #aa0;">
|
156
155
|
�
|
157
156
|
\ | /
|
158
157
|
|
|
@@ -164,11 +163,11 @@ inutilies avec des l
|
|
164
163
|
Les deux figures bizarres � gauche sont le clavier d'un alphabet imaginaire. Je
|
165
164
|
l'appelle smile :)
|
166
165
|
|
166
|
+
!{float:right; margin-left:1em; width:14em;}/images/image/smileCircles.png!:/images/image/smileCircles.png
|
167
|
+
|
167
168
|
Cela consiste en six traits qui forment un carr� et ses diagonales. Six carr�s
|
168
169
|
forment les six faces d'un cube. En vue isom�trique cela donne deux hexagones.
|
169
170
|
|
170
|
-
!{float:right; margin-left:1em; width:6em;}/images/image/smileCircles.png!:/images/image/smileCircles.png
|
171
|
-
|
172
171
|
Mais bon, c'est bien gentil d'avoir des mots qui peuvent �tre repr�sent�s en 3D
|
173
172
|
ou sous des projections �tranges, mais je n'ai aucune s�mantique � leur
|
174
173
|
appliquer... Pourtant il y a plein de combinaisons/mots possibles! Si vous avez
|