summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonas Smedegaard <dr@jones.dk>2012-08-02 02:23:29 +0200
committerJonas Smedegaard <dr@jones.dk>2012-08-02 02:23:29 +0200
commita44fcf7ba83ffbd3e490627307b51c3cde099542 (patch)
treeaa597fa3d337ca772a5eb9d65432262f2955668f
parentbbea659ae5d7d998ae23d412e087bfb6db23e7b3 (diff)
Adapt texts and graphs to produce alternative pages (not wiki pages or admin site).
-rw-r--r--ikiroles.mdwn15
-rw-r--r--ikiwiki/website.mdwn78
-rw-r--r--ikiwiki/website/tech.mdwn10
3 files changed, 50 insertions, 53 deletions
diff --git a/ikiroles.mdwn b/ikiroles.mdwn
index 43f145a..c136c5e 100644
--- a/ikiroles.mdwn
+++ b/ikiroles.mdwn
@@ -12,9 +12,8 @@ the site can be live readable while evolving both content and style.
* Html is expressed in a simple template format - similar to plain html.
* Graphics and other rich media files are stored as-is.
-The system builds two websites in parallel - one presented for normal reading, and
-another one with edit links, only offered to designer and author (secured by
-individual passwords).
+The system can build multiple websites in parallel - e.g. a stable official site and an
+alternate development draft site using different git branch for content and/or styling.
[[graph height=8 width=8 src="""
{
@@ -46,7 +45,7 @@ individual passwords).
tmpl_stored
media_stored
}
- {rank=same; webpages webpages_admin webpages_searchresult}
+ {rank=same; webpages webpages_alt webpages_searchresult}
/* roles */
user [shape=house, label="Reader"]
@@ -67,21 +66,21 @@ individual passwords).
tmpl_stored [shape=box, label="Version-controlled html templates"]
webpages [label="Static website"]
- webpages_admin [label="(Admin-)editable website"]
+ webpages_alt [label="Alternate static website", color=grey]
webpages_searchresult [label="Search results", style=dotted]
user -> search_query -> search_db -> webpages_searchresult
author -> txt -> txt_stored -> webpages
- txt_stored -> webpages_admin
+ txt_stored -> webpages_alt [color=grey]
designer -> txt
designer -> tmpl -> tmpl_stored -> webpages
- tmpl_stored -> webpages_admin
+ tmpl_stored -> webpages_alt [color=grey]
designer -> media -> media_stored -> webpages
- media_stored -> webpages_admin
+ media_stored -> webpages_alt [color=grey]
}
"""]]
diff --git a/ikiwiki/website.mdwn b/ikiwiki/website.mdwn
index 5321240..d1c3e69 100644
--- a/ikiwiki/website.mdwn
+++ b/ikiwiki/website.mdwn
@@ -21,9 +21,9 @@ all readers of the website:
{
reader [shape=house, label="Reader"]
- webpages_static [label="static pages"]
+ webpages [label="static pages"]
- reader -> webpages_static
+ reader -> webpages [dir=back]
}
"""]]
@@ -41,29 +41,20 @@ each search:
reader [shape=house, label="Reader"]
/* targets */
- webpages_static [label="static pages"]
+ webpages [label="static pages"]
webpages_searchresult [label="search results", style=dotted]
- {rank=same; webpages_static webpages_searchresult}
+ {rank=same; webpages webpages_searchresult}
search_query [shape=plaintext, label="search query"]
search_db [shape=box, label="search index"]
/* paths */
- reader -> webpages_static
+ reader -> webpages [dir=back]
reader -> search_query -> search_db -> webpages_searchresult
}
"""]]
-## Administration access
-
-Websites are normally meant to be published to the whole world, but only
-edited by a select few.
-
-ikiwiki-based websites have a separate address (typically replacing the
-leading "www" with "admin") with administration access added on top of
-all pages.
-
## Administration roles
Often the website owner writes the text content themselves, but hire
@@ -83,9 +74,7 @@ ikiwiki-based websites are setup to reflect that:
{rank=same; reader editor designer}
/* targets */
- webpages_static [label="website"]
- webpages_wiki [label="admin website"]
- {rank=same; webpages_static webpages_wiki}
+ webpages [label="website"]
/* input data */
txt [shape=plaintext, label="text"]
@@ -96,26 +85,34 @@ ikiwiki-based websites are setup to reflect that:
iki_engine [shape=box, label="web engine"]
/* paths */
- reader -> webpages_static [dir=back]
- editor -> txt -> iki_engine -> webpages_wiki
+ reader -> webpages [dir=back]
+ editor -> txt -> iki_engine
designer -> media -> iki_engine
designer -> tmpl -> iki_engine
- iki_engine -> webpages_static
+ iki_engine -> webpages
}
"""]]
## Editing
-In addition to the main website, an additional website is generated,
-with the main feature of Ikiwiki - [[wiki]]-like text editing - enabled:
+Text content can be edited using a simple web interface.
+
+The static website is navigated to locate the page to edit, a dynamic
+web-based edititing form is started for that page, and saving the form
+causes the static web page to be regenerated.
[[graph height=8 width=8 src="""
{
+ /* roles */
editor [shape=house, label="Editor"]
- webpages_wiki [label="wiki pages"]
+ /* targets */
+ webpages [label="static pages"]
+ webpage_new [label="new static pages"]
+ {rank=same; webpages webpage_new}
- content_form [shape=plaintext, label="edit form"]
+ /* input data */
+ content_form [label="dynamic edit form", style=dotted]
/* stored data */
txt_stored [shape=box, label="text content"]
@@ -124,27 +121,30 @@ with the main feature of Ikiwiki - [[wiki]]-like text editing - enabled:
{rank=same; txt_stored media_stored tmpl_stored}
/* paths */
- editor -> webpages_wiki
- editor -> content_form -> txt_stored -> webpages_wiki
- media_stored -> webpages_wiki
- tmpl_stored -> webpages_wiki
+ editor -> webpages [dir=back]
+ editor -> content_form -> txt_stored -> webpage_new
+ media_stored -> webpage_new
+ tmpl_stored -> webpage_new
}
"""]]
-Whenever the wiki pages are edited, the static pages are also rebuilt:
+Designer may prefer the more powerful git interface.
+
+Exact same processing, but editing the files directly on the desktop,
+maybe even while offline.
[[graph height=8 width=8 src="""
{
/* roles */
- editor [shape=house, label="Editor"]
+ designer [shape=house, label="Designer"]
/* targets */
- webpages_static [label="static pages"]
- webpages_wiki [label="wiki pages"]
- {rank=same; webpages_static webpages_wiki}
+ webpages [label="static pages"]
+ webpage_new [label="new static page"]
+ {rank=same; webpages webpage_new}
/* input data */
- content_form [shape=plaintext, label="edit form"]
+ git [shape=plaintext]
/* stored data */
txt_stored [shape=box, label="text content"]
@@ -152,12 +152,10 @@ Whenever the wiki pages are edited, the static pages are also rebuilt:
tmpl_stored [shape=box, label="html templates"]
{rank=same; txt_stored media_stored tmpl_stored}
- iki_engine [shape=box, label="html renderer (ikiwiki)"]
-
/* paths */
- editor -> content_form -> txt_stored -> iki_engine -> webpages_wiki
- media_stored -> iki_engine
- tmpl_stored -> iki_engine
- iki_engine -> webpages_static
+ designer -> webpages [dir=back]
+ designer -> git -> txt_stored -> webpage_new
+ media_stored -> webpage_new
+ tmpl_stored -> webpage_new
}
"""]]
diff --git a/ikiwiki/website/tech.mdwn b/ikiwiki/website/tech.mdwn
index 38bd42b..daa3417 100644
--- a/ikiwiki/website/tech.mdwn
+++ b/ikiwiki/website/tech.mdwn
@@ -16,10 +16,10 @@ and different kinds of users (see also the [[introduction|website]]):
{rank=same; reader editor designer}
/* targets */
- webpages_static [label="static pages"]
- webpages_wiki [label="wiki pages"]
+ webpages [label="static pages"]
+ webpages_alt [label="alternative static pages", color=grey]
webpages_searchresult [label="search results", style=dotted]
- {rank=same; webpages_static webpages_wiki webpages_searchresult}
+ {rank=same; webpages webpages_alt webpages_searchresult}
/* input data */
search_query [shape=plaintext, label="search query"]
@@ -101,8 +101,8 @@ and different kinds of users (see also the [[introduction|website]]):
search_db -> search_engine
search_db -> iki_engine [dir=back]
- editor -> txt_editor -> browser_editor -> txt_form -> vcs_txt -> txt_stored -> iki_engine -> webpages_static
- iki_engine -> webpages_wiki
+ editor -> txt_editor -> browser_editor -> txt_form -> vcs_txt -> txt_stored -> iki_engine -> webpages
+ iki_engine -> webpages_alt
designer -> txt_designer -> browser_designer -> txt_form
txt_designer -> vcs_txt_local