Revision: 1434
Author: sebastien.lelong
Date: Fri Oct 30 09:05:31 2009
Log: fixed image link, added JAPP overview diagram, clickable
http://code.google.com/p/jallib/source/detail?r=1434

Added:
  /trunk/doc/dita/development/images
  /trunk/doc/dita/development/images/japp_overview.jpg
Modified:
  /trunk/doc/dita/customization/README
  /trunk/doc/dita/development/japp.xml
  /trunk/doc/dita/tutorials/tutorial_gp2d02.xml

=======================================
--- /dev/null   
+++ /trunk/doc/dita/development/images/japp_overview.jpg        Fri Oct 30  
09:05:31 2009
Binary file, no diff available.
=======================================
--- /trunk/doc/dita/customization/README        Fri Oct 30 08:55:29 2009
+++ /trunk/doc/dita/customization/README        Fri Oct 30 09:05:31 2009
@@ -3,4 +3,15 @@
  following their customization guideline.

    "demo" contains XSL-FO customization for PDF creation
-  "xsl/xslhtml" contains XSL-HTML customization for HTML creaton
+  "xsl/xslhtml" contains XSL-HTML customization for HTML creation
+
+
+In order to deploy this customization, get DITA-OT version 1.5-M21.
+You'll get a "DITA-OT1.5". Now into parent directory containing this  
DITA-OT1.5
+directory, and checkout these customization:
+
+$ svn co --force  
https://jallib.googlecode.com/svn/trunk/doc/dita/customization DITA-OT1.5
+
+Using --force option will make SVN checkout sources even if unversioned  
directories exist.
+(this is what we want)
+
=======================================
--- /trunk/doc/dita/development/japp.xml        Thu Oct 29 13:14:50 2009
+++ /trunk/doc/dita/development/japp.xml        Fri Oct 30 09:05:31 2009
@@ -8,7 +8,6 @@
      <publisher>Jallib Group</publisher>
    </prolog>
    <body>
-    <p id="firstcontent"/>
      <section>
        <title>What is JAPP, and why using it ?</title>
        <p><b>JAPP</b>, <b>J</b>allib <b>A</b>utomated <b>P</b>ublishing  
<b>P</b>rocess, is the name given to the process used to publish DITA based  
content to justanotherlanguage.org website. The idea is automatically  
monitor DITA files, and publish contents. Because this an nice acronym,  
JAPP is powerful and sounds like a nice tool...</p>
@@ -17,6 +16,10 @@
      </section>
      <section>
        <title>Overview</title>
+      <fig>
+        <title>JAPP Overview</title>
+        <image href="images/japp_overview.jpg" width="500"  
placement="break" otherprops="clickable"/>
+      </fig>
        <p>JAPP works like the following:<ol>
            <li>JAPP monitors DITA files. This is actually done by a  
buildbot<fn>buildbot is python application which can monitor many source of  
information, like a SVN (Subversion) repository, and reacts according to  
given rules.</fn>, which listens to SVN changes</li>
            <li>If something has changes, JAPP tells DITA compiler to  
produce an HTML file, from each DITA modified files (it iterates over  
changes)</li>
@@ -66,11 +69,11 @@
        <p><b>mailhander</b> module takes care of monitoring an email  
address, retrieve emails and process them. The From address in email  
identify a Drupal user, allowed to have access to all mailhandler  
machinery, create nodes, upload files, etc... This special user is named  
<b>japp</b>.</p>
        <p>Processing emails means it&apos;s able to extract some special  
commands. These commands must appears at the very beginning of email, and  
tell mailhandler what to do. There can be default commands (configured in  
mailhandler)  and email commands. The current configuration is the  
following:</p>
        <p><i>Default commands</i></p>
-      <p><codeblock>type: story
+      <p><codeblock>type: page
  status: 0
  promote: 0
  pathauto_perform_alias: 0</codeblock></p>
-      <p>Here we tell mailhandler to create <b>Story </b>node type by  
default. Story, compared to Page type for instance, doesn&apos;t display  
author information. This is what we want because authorship is done in  
original HTML, not by Drupal (else all nodes would be owned by user  
<b>japp</b>).</p>
+      <p>Here we tell mailhandler to create <b>Page </b>node type by  
default. Page, compared to Story type for instance, doesn&apos;t display  
author information. This is what we want because authorship is done in  
original HTML, not by Drupal (else all nodes would be owned by user  
<b>japp</b>).</p>
        <p>We then tell mailhandler that created node won&apos;t be  
published (only special users can see it, like reviewers). It won&apos;t be  
promoted to front-page too, and no autoaliasing will be performed  
(we&apos;ll set our own path).</p>
        <p>This is default commands, valid for all submitted emails.</p>
        <p><i>Email specific commands</i></p>
@@ -88,8 +91,13 @@
        <p>Currently, JAPP publishes content on the website, but manual  
operations are still needed: you need to tell Drupal where to attach your  
page, that is, in which menu or book it should appear.</p>
        <p>Automation of this part may be for another JAPP version. For now,  
manual operations, in Drupal, may be required to assemble pages together.  
Luckily, this has to be done at first, then very rarely, as content will be  
updated more than created (I guess).</p>
        <p>Now, imagine the following scenario. You create a DITA document  
named &quot;my tutorial&quot;. It gets published to the website. Now you  
update your tutorial. Should this triggers another page creation ? Is so,  
this means each updates needs manual operations. And URL for this updated  
page can&apos;t be the same as the first one, so all referring pages would  
need to be updated ! Instead, node&apos;s content must be updated, and  
attachments renewed. For this, we need to know, when sending the email, if  
a previous page exists, and what is its node ID. This typically can&apos;t  
be done that way, because when sending emails, we can&apos;t know if a node  
exists for this page, and if so, what is its ID...</p>
-      <p>So, a solution is to write a Drupal module, and implement a  
<codeph>hook_mailhandler</codeph>. A hook is a special PHP function (it has  
a special name, here it finished with <i>_mailhandler</i>) in Drupal. This  
hook will be called before node&apos;s creation. From given path command,  
it&apos;ll lookup in Drupal database to find corresponding node.  Does it  
exist ? If not, it triggers a page creation (it just lets mailhandler  
processes the email as usual). If it exists, then it fetches its node ID  
and revision ID (version), and put &quot;<cmdname>nid: XX</cmdname>&quot;  
command and &quot;<cmdname>vid: YY</cmdname>&quot; command. mailhandler  
then continues its processing and now knows this is for an existing node.  
</p>
+      <p>So, a solution is to write a Drupal module, and implement a  
<codeph>hook_mailhandler</codeph>. A hook is a special PHP function (it has  
a special name, here it finished with <i>_mailhandler</i>) in Drupal. This  
hook will be called before node&apos;s creation. From given path command,  
it&apos;ll lookup in Drupal database to find corresponding node.  Does it  
exist ? If not, it triggers a page creation (it just lets mailhandler  
processes the email as usual). If it exists, then it fetches its node ID  
and revision ID (version), and put &quot;<cmdname>nid: XX</cmdname>&quot;  
command and &quot;<cmdname>vid: YY</cmdname>&quot; command. mailhandler  
then continues its processing and now knows this is for an existing  
node.</p>
+      <p><xref  
href="http://code.google.com/p/jallib/source/browse/#svn/trunk/tools/japp/japp"; 
 
format="html">japp</xref> module is under jallib SVN repository.</p>
        <p/>
+    </section>
+    <section>
+      <title>Reviewing content</title>
+      <p>A final step would consist into checking for unpublished content  
on website, reviewing it and publish it. This is also during this final  
step that content is being attached to a menu, books... This step  
isn&apos;t necessary during content updates: nodes are updated in this  
case, this means menu or book configuration is kept.</p>
      </section>
    </body>
  </topic>
=======================================
--- /trunk/doc/dita/tutorials/tutorial_gp2d02.xml       Fri Sep 25 13:30:54 2009
+++ /trunk/doc/dita/tutorials/tutorial_gp2d02.xml       Fri Oct 30 09:05:31 2009
@@ -38,7 +38,7 @@
        <p>Here&apos;s the whole schematic. The goal here is to collect data  
from the sensor, and light up a LED, more or less according to the read  
distance. That&apos;s why we&apos;ll use a LED driven by PWM.</p>
        <fig>
          <title>Interfacing Sharp GP2D02 IR range : schematic</title>
-        <image href="images/gp2d02_gp2d02_schematics.png"/>
+        <image href="images/gp2d02_schematics.png"/>
        </fig>
        <p>Here&apos;s the ranger with the diode soldered on the green wire  
(which is Vin pin, using your previously created mental note...):</p>
        <image href="images/gp2d02_diode.jpg" width="400" placement="break"/>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"jallib" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/jallib?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to