Commit 8bfc13f3 authored by podesign's avatar podesign

- updates, moved excercises into the folders

parent 6601a5c7
......@@ -53,6 +53,28 @@ This very first Problem Set teaches you the basics of OpenACS:
<td>(<a href="../show-source?file_name=1-quotations/list-quotes.adp">adp source</a>)</td>
</tr>
<tr valign=top>
<td colspan=4>
<br>
<h1>Excercises</h1>
<ul>
<li>Exercise 1.1 Add a new field:<br>
Extend quotations by a new next field called "source"
and add this field to all relevant pages.
<br>&nbsp;
<li>Exercise 1.2 XML Export:<br>
Export quotations in XML format. Check Google for suitable XML standards.
<br>&nbsp;
<li>Exercise 1.3 Implement Searching:<br>
Add a small form at the top of list-quotes.tcl that takes a single query
word from the user. Build a target for this form that returns all quotes
containing the specified word. Your search should be case-insensitive and
also look through the authors column.
<br>&nbsp;
</ul>
</td>
</tr>
</table>
<br>
......
......@@ -64,6 +64,33 @@ including database table and PlPg/SQL database API.</td>
<td></td>
</tr>
<tr valign=top>
<td colspan=5>
<br>
<h1>Excercises</h1>
<ul>
<li>Exercise 2.1 Extend Notes:<br>
Add a new Notes type "skype" to store Skype IDs.
<br>&nbsp;
<li>Exercise 2.2 Advanced Formatting:<br>
Modify the way Notes are rendered and show the note as
a HTTP link if the note is a URL or an Email and as skype:xxxxx if the
note is a skype ID.
<br>&nbsp;
<li>Exercise 2.3 Relating Notes to Other Objects: <br>
Extend the Notes object by a field "related_object_id" in order to
associate a note with other OpenACS/ ]project-open[ object.
Check the "categories" for a reference. Extend the /acs-admin/users/one
page with a list of all notes related to that user and allow to create
new notes in that page.
<br>&nbsp;
</ul>
</td>
</tr>
</table>
<br>
......
......@@ -63,7 +63,7 @@ template::list::create \
}
creation_date {
label "Date"
link_url_eval {[export_vars -base new {note_id object_id return_url}]}
link_url_eval {[export_vars -base new {note_id {form_mode display} return_url}]}
}
creation_user {
label "By User"
......@@ -71,7 +71,6 @@ template::list::create \
}
note {
label "Note"
link_url_eval {[export_vars -base new {note_id {form_mode display} return_url}]}
}
}
......
......@@ -12,8 +12,40 @@ development style.
</pre>
<table width=600>
<tr valign=top>
<td>
<ul>
<li><a href="1-quotations">Problem Set 1 "Quotations": Basic HTML and
SQL</a><br>
This example represents a kind of "Hello World" with a basic way of
working directly with HTML and SQL.
The example demonstrates that you can work with OpenACS/ ]project-open[
just like with any other online platform.<br>
However, this style of programming is heavily deprecated now in favor
of more powerful constructs demonstrated in the examples further below.
<br>&nbsp;
</ul>
</td>
<td>
</td>
</tr>
<tr valign=top>
<td>
<ul>
<li><a href="1-quotations">Problem Set 1 "Quotations": Basic HTML and SQL</a>
<li><a href="2-notes">Problem Set 2 "Notes": Automated Forms and Lists</a>
<li><a href="2-notes">Problem Set 2 "Notes": Automated Forms and Lists</a><br>
This example introduces the concepts of "OpenACS Object", "Form Builder"
and "List Builder".
These techniques basicly eliminate the need to write HTML tags and
allow the developer to define forms and list in a declarative style.
</ul>
</td>
<td>
</td>
</tr>
</table>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment