    <rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:content="http://purl.org/rss/1.0/modules/content/">
     <channel>
        <title>vaporbase :: Accessing dynamic data via hooks and tags</title>
        <link>http://www.vaporbase.com/</link>
        <description>the knowledge base that almost is</description>
        <dc:language>en-us</dc:language> 
        <dc:creator>Vaporbase Admin</dc:creator> 
        <admin:generatorAgent rdf:resource="http://www.xaraya.org" /> 
        <admin:errorReportsTo rdf:resource="mailto:admin@parkerhill.com" /> 
       <sy:updatePeriod>hourly</sy:updatePeriod> 
       <sy:updateFrequency>1</sy:updateFrequency> 
       <docs>http://backend.userland.com/rss</docs>

<!-- show a header for the current publication type -->
        <h2>Postings</h2>


<div class="xar-mod-head"><span class="xar-mod-title">xaraya</span></div>

<table border="0" cellpadding="1" cellspacing="0">
<tr>
    <td valign="top">
        Browse in :
   </td>
   <td valign="top">

                                    <a href="http://www.vaporbase.com/postings/">All</a>

                 &gt;                     <a href="http://www.vaporbase.com/postings/c36/">subjects</a>

                 &gt;                     <a href="http://www.vaporbase.com/postings/c37/">xaraya</a>
<br />
</td>
</tr>
</table>






<div class="xar-error">
   <p>
 <strong>Note:</strong> when you create a new publication type,
the articles module will automatically use the templates
<em>user-display-[publicationtype].xd</em>
and <em>user-summary-[publicationtype].xd</em>.
If those templates do not exist when you try to preview or display a new article,
you'll get this warning :-)  Please place your own templates in themes/<em>yourtheme</em>/modules/articles
The templates will get the extension .xt there. </p>
</div>
<div class="xar-norm xar-standard-box-padding">
   <h1><strong>Title:</strong>&nbsp;Accessing dynamic data via hooks and tags</h1>
<p><strong>Author:</strong>&nbsp;linoj</p>
<p>
<strong>Date:</strong> August 27, 2006 1:19:28 PM  or Sun, 27 August 2006 13:19:28 </p>
<p><strong>Summary:</strong>&nbsp;Although you can hook Dynamic Data to many modules, the way of access this data varies if the module has native support for this data.</p>
<p><strong>Body:</strong>&nbsp;<p>
&nbsp;
</p>
<h2>Articles DD Display<br />
</h2>
<p>
In the display and summary templates, as well as the user API getall function, the dd fields come in to you directly. 
</p>
<p>
For example, in the templates, just like you can access $body and $summary, you also have variables for $myfield1 and $myfield2 (if those are the dd field names).
</p>
<p>
This is the raw content of the field. If you want it processed for
output, well, they already did that for you (thank you), its referenced
as
</p>
<p>
#$myfield1_output# 
</p>
<p>
Similarly, using the user API &quot;getall&quot; function (&quot;get&quot; doesnt support dd yet):
</p>
<p>
&lt;xar:set name=&quot;stufflist&quot;&gt;xarModAPIFunc(&#39;articles&#39;, &#39;user&#39;, &#39;getall&#39;, array(&#39;ptid&#39;=&gt;&#39;12&#39;, &#39;extra&#39;=&gt;array(&#39;dynamicdata&#39;)))&lt;/xar:set&gt;
</p>
<p>
&lt;xarset name=&quot;stuff&quot;&gt;current($stufflist)&lt;/xar:set&gt; 
</p>
<p>
#$stuff[&#39;myfield1&#39;]#
</p>
<p>
In this case, if you want it processed for output you dont get an &quot;_output&quot; field. For that you&#39;ll need to get the corresponding dd object directly for this pubtype like the general case (below), e.g. using 
</p>
<p>
&lt;xar:data-getitem name=&quot;$properties&quot; module=&quot;articles&quot; itemtype=&quot;$ptid&quot; itemid=&quot;$aid /&gt; 
</p>
<p>
and then access the properties by name, such as 
</p>
<p>
&lt;xar:data-output property=&quot;$properties[&#39;myfield1&#39;]&quot; /&gt; 
</p>
<p>
UPDATE:
</p>
<p>
articles get api now supports dd, so you can do:
</p>
<p>
&lt;xar:set name=&quot;stuff&quot;&gt;xarModAPIFunc(&#39;articles&#39;, &#39;user&#39;,
&#39;get&#39;, array(&#39;ptid&#39;=&gt;&#39;12&#39;,
&#39;extra&#39;=&gt;array(&#39;dynamicdata&#39;)))&lt;/xar:set&gt;<br />
#$stuff[&#39;myfield1&#39;]#<br />
</p>
<p>
&nbsp;
</p>
<h2>Xarpages DD Display<br />
</h2>
<p>
In an Xarpages item template, dynamic data is contained in an subarray of the $current_page array, as follows:
</p>
<p>
#$current_page[&#39;dd&#39;][&#39;myfield1&#39;]#
</p>
<p>
This is just the raw content, if you want it processed for output you&#39;ll need direct access to the Property objects array. You can make one for each dd object type (eh, that is, hook module item type). Go to Admin &gt; Content &gt; Dynamic Data &gt; View DD Objects to determine the object name. , For example<br />
</p>
<p>
mytheme/modules/dynamicdata/user-displayhook-xarpages_3.xt 
</p>
<p>
To access dd properties directly, use the general case...
</p>
<p>
&nbsp;
</p>
<h2>Roles DD</h2>
<p>
Dynamic Data hooked to Roles lets you define additional user profile variables.  These are directly accessible via the Roles api functions
</p>
<p>
$value = xarUserGetVar( &#39;fieldname&#39; );
</p>
<p>
xarUserSetVar( &#39;fieldname&#39;, $value );
</p>
<p>
These can take an optional 3rd arg, a $uid if other than the current logged in user.
</p>
<p>
To access all the dd fields in an array, use:
</p>
<p>
&lt;xar:data-getitems value=&quot;$profiles&quot; module=&quot;roles&quot; itemids=&quot;$uid&quot; /&gt;<br />
&lt;xar:set name=&quot;profile&quot;&gt;$profiles[$uid]&lt;/xar:set&gt;
</p>
<p>
The data-getitems tag returns an array of values per itemid. In this case it should return an array of one item. Then we take that item into the $profile variable array. 
</p>
<p>
Similarly, for example, to find all users who have a specific dd value, you can do:
</p>
<p>
&lt;xar:set name=&quot;wh&quot;&gt;&#39;myfield eq &#39; . $myvalue&lt;/xar:set&gt;<br />
&lt;xar:data-getitems value=&quot;$users&quot; module=&quot;roles&quot; where=&quot;$wh&quot; /&gt;
</p>
<p>
&lt;xar:foreach in=&quot;$users&quot; key=&quot;$uid&quot; value=&quot;$dd&quot;&gt;<br />
&lt;!-- do something --&gt;<br />
&lt;/xar:foreach&gt;<br />
</p>
<p>
This, of course, doesn&#39;t return the roles table data itself (such a uname, email, etc). If you need that you can call the roles getall, 
</p>
<p>
&lt;xar:set name=&quot;rolesdata&quot;&gt;xarModApiFunc(&#39;roles&#39;,&#39;user&#39;,&#39;getall&#39;,array(&#39;uidlist&#39;=&gt;$uids))&lt;/xar:set&gt;
</p>
<p>
$rolesdata will be sorted by &quot;name&quot;, or you can specify as &#39;order&#39;=&gt; field. But that doesnt let you sort by a dd field. 
</p>
<p>
I tried using data-getitems with a join, and that works sort-of, as there are bugs. See <a href="http://bugs.xaraya.com/show_bug.cgi?id=6016" target="_blank">http://bugs.xaraya.com/show_bug.cgi?id=6016</a> . 
</p>
<p>
Here&#39;s an example where I have a list of articles, and I want to get the profiles of  all the authors who have a specific dd field value, and sort using my sortitems function (http://www.vaporbase.com/postings/74)<br />
</p>
<p>
&lt;xar:set name=&quot;authors&quot;&gt;xarModApiFunc(&#39;articles&#39;,&#39;user&#39;,&#39;getauthors&#39;, array( &#39;ptid&#39;=&gt;&#39;10&#39; )&lt;/xar:set&gt; 
</p>
<p>
&lt;xar:set name=&quot;uids&quot;&gt;array_keys($authors)&lt;/xar:set&gt; 
</p>
<p>
&lt;xar:set name=&quot;wh&quot;&gt;&quot;uid in (&quot; . implode(&quot;,&quot;, $uids) . &quot;)&quot;&lt;/xar:set&gt;
</p>
<p>
 &lt;xar:data-getitems value=&quot;$useritems&quot; module=&quot;roles&quot; join=&quot;xar_roles&quot; where=&quot;$wh&quot; /&gt;
</p>
<p>
&lt;!-- sortitems only works in index arrays right now --&gt;<br />
&lt;xar:set name=&quot;$useritems&quot;&gt;array_values($useritems)&lt;/xar:set&gt; 
</p>
<p>
&lt;xar:set name=&quot;$useritems&quot;&gt;xarModApiFunc(&#39;misctools&#39;,&#39;user&#39;,&#39;sortitems&#39;, array(&#39;items&#39;=&gt;$useritems, &#39;field&#39;=&gt;&#39;lastname&#39;))&lt;/xar:set&gt; 
</p>
<p>
&nbsp;
</p>
<h2>Other (General Case DD Display)</h2>
<p>
You can always retrieve a dynamic data item directly using the DD tags (or api). The general use is:
</p>
<p>
&lt;xar:data-getitem name=&quot;$properties&quot; module=&quot;123&quot; itemtype=&quot;0&quot; itemid=&quot;$id&quot; fieldlist=&quot;$fieldlist&quot; .../&gt;
</p>
<p>
For example, 
</p>
<p>
&lt;xar:data-getitem name=&quot;$properties&quot; module=&quot;xarpages&quot; itemid=&quot;$pid&quot; itemtype=&quot;$current_page[&#39;dd&#39;][&#39;itemtype&#39;]&quot; /&gt;
</p>
<p>
&lt;xar:data-output property=&quot;$properties[&#39;myfield1&#39;]&quot; /&gt;
</p>
<p>
You can override the value as follows:
</p>
<p>
&lt;xar:data-output property=&quot;$properties[&#39;myfield1&#39;]&quot; value=&quot;$newvalue&quot; /&gt;<br />
</p>
<p>
Outputting in a loop:
</p>
<p>
&lt;xar:foreach in=&quot;$properties&quot; key=&quot;$name&quot;&gt;<br />
&lt;p&gt;<br />
&lt;strong&gt;<br />
&lt;xar:data-label property=&quot;$properties[$name]&quot; /&gt;<br />
&lt;/strong&gt;<br />
: <br />
&lt;xar:data-output property=&quot;$properties[$name]&quot; /&gt;<br />
&lt;/p&gt;<br />
&lt;/xar:foreach&gt;
</p>
<p>
&nbsp;
</p>
<h2>Input Forms</h2>
<p>
Sometimes you need to override the default property input tag. 
</p>
<ul>
	<li>You can do it by replacing the property&#39;s showinput template, but that will affect it everywhere on the site. That would be found, for example, in modules/base/xartemplates/properties/showinput-[propname].xd You can put an .xt version in your theme.</li>
</ul>
<ul>
	<li>Make a newhook or modifyhook template for the specific item type. For example, for dd hooked to an Articles pubtype, the object might be called &quot;articles_12&quot;, then you make a template named mytheme/modules/dynamicdata/admin-newhook-articles_12.xt or admin-modifyhook-articles_12.xt <br />
	</li>
</ul>
<ul>
	<li>Manage the dd object directly, such as
	</li>
</ul>
<p>
&lt;xar:data-getitem name=&quot;$properties&quot; module=&quot;xarpages&quot; itemid=&quot;$ptid&quot; /&gt; 
</p>
<p>
then in your form,
</p>
&lt;xar:data-input property=&quot;$properties[&#39;myfield&#39;]&quot; /&gt;
<p>
or even
</p>
<p>
&lt;xar:data-input name=&quot;myfield&quot; type=&quot;dropdown&quot; value=&quot;1&quot; validation=&quot;$options&quot; /&gt;
</p>
<p>
&nbsp;
</p>
<p>
NOTE: for the Articles module built-in fields, there&#39;s a separate Fields definition and
&lt;xar:articles-field&gt; tag you can use for input. See below (bottom
of this article). For example,<br />
</p>
<p>
&lt;xar:articles-field definition=&quot;$fields[&#39;body&#39;][&#39;definition&#39;]&quot; /&gt;
</p>
<p>
&nbsp;
</p>
<h2>What&#39;s in a Properties Data?</h2>
<p>
Example property array format and contents: 
</p>
dynamic_tinymce_property Object<br />
(<br />
[id] =&gt; 113<br />
[name] =&gt; narrative<br />
[label] =&gt; Narrative<br />
[type] =&gt; 205<br />
[default] =&gt; <br />
[source] =&gt; dynamic_data<br />
[status] =&gt; 1<br />
[order] =&gt; 4<br />
[validation] =&gt; <br />
[datastore] =&gt; _dynamic_data_<br />
[value] =&gt; Asdf asdf<br />
[invalid] =&gt; <br />
[_objectid] =&gt; 15<br />
[_moduleid] =&gt; 27<br />
[_itemtype] =&gt; 0<br />
[_itemid] =&gt; 3<br />
[_items] =&gt; <br />
[rows] =&gt; 10<br />
[cols] =&gt; 50<br />
[wrap] =&gt; soft<br />
)
<p>
&nbsp;
</p>
<h2>Dynamic Data Tags - Reference</h2>
<p>
Here&#39;s a synopsis of the DD tags (including usage both on hooked dd as well as dd objects)
</p>
<p>
<strong> *  &lt;xar:data-display ...&gt; display tags</strong><br />
* Format : &lt;xar:data-display module=&quot;123&quot; itemtype=&quot;0&quot; itemid=&quot;555&quot; fieldlist=&quot;$fieldlist&quot; static=&quot;yes&quot; .../&gt;<br />
*       or &lt;xar:data-display fields=&quot;$fields&quot; ... /&gt;<br />
*       or &lt;xar:data-display object=&quot;$object&quot; ... /&gt;<br />
*<br />
* @param array $args array containing the item that you want to display, or fields
</p>
<p>
&nbsp;
</p>
<p>
<strong> * &lt;xar:data-form ...&gt; form tags</strong><br />
* Format : &lt;xar:data-form module=&quot;123&quot; itemtype=&quot;0&quot; itemid=&quot;555&quot; fieldlist=&quot;$fieldlist&quot; static=&quot;yes&quot; ... /&gt;<br />
*       or &lt;xar:data-form fields=&quot;$fields&quot; ... /&gt;<br />
*       or &lt;xar:data-form object=&quot;$object&quot; ... /&gt;<br />
*<br />
* @param $args array containing the item for which you want to show a form, or fields 
</p>
<p>
&lt;xar:data-form currently does everything between the between form tags except hidden fields and the buttons 
</p>
<p>
<br />
<strong> *  &lt;xar:data-getitems ...&gt; getitems tags</strong><br />
* Format : &lt;xar:data-getitems name=&quot;$properties&quot; value=&quot;$values&quot; module=&quot;123&quot; itemtype=&quot;0&quot; itemids=&quot;$idlist&quot; fieldlist=&quot;$fieldlist&quot; .../&gt;<br />
*       or &lt;xar:data-getitems name=&quot;$properties&quot; value=&quot;$values&quot; object=&quot;$object&quot; ... /&gt;<br />
*<br />
* @param $args array containing the items that you want to display, or fields
</p>
<p>
name= returns an array of properties (&#39;propname&#39; =&gt; property object)<br />
</p>
<p>
value = returns an array of items values (&#39;itemid&#39; =&gt; array( &#39;fieldname&#39; =&gt; value))
</p>
<p>
you dont need both name= and value=, just one or the other, or both
</p>
<p>
&nbsp;
</p>
<p>
<strong> *  &lt;xar:data-getitem ...&gt; getitem tags</strong><br />
* Format : &lt;xar:data-getitem name=&quot;$properties&quot; module=&quot;123&quot; itemtype=&quot;0&quot; itemid=&quot;$id&quot; fieldlist=&quot;$fieldlist&quot; .../&gt;<br />
*       or &lt;xar:data-getitem name=&quot;$properties&quot; object=&quot;$object&quot; ... /&gt;<br />
*<br />
* @param $args array containing the module and item that you want to display, or fields<br />
* @returns string
</p>
<p>
N OTE: Use itemid=0 to get back the properties for an empty item, like for an input form to create new objects.
</p>
<p>
&nbsp;
</p>
<p>
<strong> * &lt;xar:data-input ...&gt; form field tags</strong><br />
* Format : &lt;xar:data-input name=&quot;thisname&quot; type=&quot;thattype&quot; value=&quot;$val&quot; ... /&gt;<br />
*       or &lt;xar:data-input field=&quot;$field&quot; /&gt; with $field an array containing the type, name, value, ...<br />
*       or &lt;xar:data-input property=&quot;$property&quot; /&gt; with $property a Dynamic Property object<br />
*<br />
* Special attributes :<br />
*     hidden=&quot;yes&quot; to show a hidden field regardless of the original property type<br />
*     preset=&quot;yes&quot; this can typically be used in admin-new.xd templates for individual<br />
*                  properties you&#39;d like to automatically preset via GET or POST parameters<br />
* Note: don&#39;t use this if you already check the input for the whole object or in the code<br />
* See also preview=&quot;yes&quot;, which can be used on the object level to preview the whole object<br />
*<br />
* @param $args array containing the input field definition or the type, name, value, ... 
</p>
<p>
&nbsp;
</p>
<p>
<strong> *  &lt;xar:data-label ...&gt; label tag</strong><br />
* Format : &lt;xar:data-label object=&quot;$object&quot; /&gt; with $object some Dynamic Object<br />
*       or &lt;xar:data-label property=&quot;$property&quot; /&gt; with $property some Dynamic Property<br />
*       &lt;xar:data-label property=&quot;$property&quot; label=&quot;id&quot; /&gt; will use &lt;label for=&quot;dd_$property-&gt;id&quot;&gt;...&lt;/label&gt;<br />
*       &lt;xar:data-label property=&quot;$property&quot; label=&quot;name&quot; /&gt; will use &lt;label for=&quot;$property-&gt;name&quot;&gt;...&lt;/label&gt;<br />
*       &lt;xar:data-label property=&quot;$property&quot; label=&quot;something&quot; /&gt; will use &lt;label for=&quot;something&quot;&gt;...&lt;/label&gt;<br />
*<br />
* @param $args array containing the object or property
</p>
<p>
&nbsp;
</p>
<p>
<strong> * &lt;xar:data-list ...&gt; list tags</strong><br />
* Format : &lt;xar:data-list module=&quot;123&quot; itemtype=&quot;0&quot; itemids=&quot;$idlist&quot; fieldlist=&quot;$fieldlist&quot; static=&quot;yes&quot; .../&gt;<br />
*       or &lt;xar:data-list items=&quot;$items&quot; labels=&quot;$labels&quot; ... /&gt;<br />
*       or &lt;xar:data-list object=&quot;$object&quot; ... /&gt;<br />
*<br />
* @param $args array containing the items that you want to list, or fields 
</p>
<p>
&nbsp;
</p>
<p>
<strong> *  &lt;xar:data-object ...&gt; object tag</strong><br />
* Format : &lt;xar:data-object object=&quot;$object&quot; property=&quot;$property&quot; /&gt; with $object some object and $property some property of this object<br />
*       or &lt;xar:data-object object=&quot;$object&quot; method=&quot;$method&quot; arguments=&quot;$args&quot; /&gt; with $object some object and $method some method of this object<br />
*<br />
* @param $args array containing the object and property/method<br />
</p>
<p>
&nbsp;
</p>
<p>
<strong> *  &lt;xar:data-output ...&gt; form field tags</strong><br />
* Format : &lt;xar:data-output name=&quot;thisname&quot; type=&quot;thattype&quot; value=&quot;$val&quot; ... /&gt;<br />
*       or &lt;xar:data-output field=&quot;$field&quot; /&gt; with $field an array containing the type, name, value, ...<br />
*       or &lt;xar:data-output property=&quot;$property&quot; /&gt; with $property a Dynamic Property object<br />
*<br />
* @param $args array containing the input field definition or the type, name, value, ...<br />
</p>
<p>
&nbsp;
</p>
<p>
<strong> * &lt;xar:data-view ...&gt; view tags</strong><br />
* Format : &lt;xar:data-view module=&quot;123&quot; itemtype=&quot;0&quot; itemids=&quot;$idlist&quot; fieldlist=&quot;$fieldlist&quot; static=&quot;yes&quot; .../&gt;<br />
*       or &lt;xar:data-view items=&quot;$items&quot; labels=&quot;$labels&quot; ... /&gt;<br />
*       or &lt;xar:data-view object=&quot;$object&quot; ... /&gt;<br />
*<br />
* @param $args array containing the items that you want to display, or fields<br />
<br />
</p>
<h2>Articles Fields</h2>
<p>
This is a bit off topic, but the Articles module has its own field definition and tag for the built in fields.
</p>
<p>
The field type is defined as follows (for example): 
</p>
<p>
[myfield] =&gt; Array<br />
(<br />
[label] =&gt; School<br />
[id] =&gt; body<br />
[definition] =&gt; Array<br />
(<br />
[name] =&gt; body<br />
[type] =&gt; dropdown<br />
[id] =&gt; body<br />
[value] =&gt; Harvard<br />
[validation] =&gt;
xarModApiFunc(&#39;articles&#39;,&#39;user&#39;,&#39;dropdownlist&#39;,array(&#39;ptid&#39;=&gt;&#39;11&#39;,&#39;field&#39;=&gt;&#39;summary&#39;,&#39;status&#39;=&gt;array(0,2,3)))<br />
)<br />
)
</p>
<p>
&nbsp;
</p>
<p>
<strong>&lt;xar:articles-field definition=&quot;$definition&quot; /&gt; </strong>
</p>
<p>
with $definition an array containing the type, name, value, ...<br />
</p>
<p>
or 
</p>
<p>
<strong>&lt;xar:articles-field name=&quot;thisname&quot; type=&quot;thattype&quot; value=&quot;$val&quot; ... /&gt;</strong> 
</p>
<p>
&nbsp;
</p>
</p>
<p><strong>Notes:</strong>&nbsp;</p>
<p><em>More fields may be available via dynamicdata ..</em></p>
        <p>Last modified on Dec 14, 2006 3:05:39 PM by <a href="http://www.vaporbase.com/roles/3">linoj</a></p>
        <p>



<p>
There are no comments attached to this item.</p>
<script type="text/javascript" src="modules/base/xartemplates/includes/submitonce.js"></script>
  <h3>Post a new comment</h3> 
  <form action="http://www.vaporbase.com/?module=comments&amp;func=reply" method="post" name="post" id="post" onSubmit="submitonce(this)" id="post"
 >
   <div class="xar-ib-wrapper xar-accent-outline">
<div class="xar-ib-actionpanel xar-accent">
         <span>
 BBCode Actions             : 
          </span>
          <span>
            <!-- New xaraya style link tag <xar:set name="$stylesheet">xarTplAddStyleLink('bbcode', 'bbcode')</xar:set> -->

<span>
    <input type="button" accesskey="z" name="addbbcode18" value=" p " onclick="bbstyle(18)" onmouseover="document.post.helpbox.value='Paragraph: [p]text[/p] (alt+z)'; return true" />
    <input type="button" accesskey="b" name="addbbcode0" value=" b " style="font-weight:bold;" onclick="bbstyle(0)" onmouseover="document.post.helpbox.value='Bold text: [b]text[/b] (alt+b)'; return true" />
    <input type="button" accesskey="i" name="addbbcode2" value=" i " style="font-style:italic;" onclick="bbstyle(2)" onmouseover="document.post.helpbox.value='Italic text: [i]text[/i] (alt+i)'; return true" />
    <input type="button" accesskey="u" name="addbbcode4" value=" u " style="font-style: underline;" onclick="bbstyle(4)" onmouseover="document.post.helpbox.value='Underline text: [u]text[/u] (alt+u)'; return true" />
    <input type="button" accesskey="q" name="addbbcode6" value="Quote" onclick="bbstyle(6)" onmouseover="document.post.helpbox.value='Quote text: [quote]text[/quote] (alt+q)'; return true" />
    <input type="button" accesskey="c" name="addbbcode8" value="Code" onclick="bbstyle(8)" onmouseover="document.post.helpbox.value='Code display: [code=xml]code[/code] (alt+c)'; return true" />
    <input type="button" accesskey="p" name="addbbcode14" value="Img" onclick="bbstyle(14)" onmouseover="document.post.helpbox.value='Insert image: [img]http://image_url[/img] (alt+p)'; return true" />
    <input type="button" accesskey="w" name="addbbcode16" value="URL" style="text-decoration: underline;" onclick="bbstyle(16)" onmouseover="document.post.helpbox.value='Insert URL: [url]http://url[/url] or [url=http://url]URL text[/url] (alt+w)'; return true" />
</span>
<label for="addbbcode20">
 Font color     :
</label>
<select name="addbbcode20" onchange="bbfontstyle('[color=' + this.form.addbbcode20.options[this.form.addbbcode20.selectedIndex].value + ']', '[/color]');this.selectedIndex=0;" onmouseover="document.post.helpbox.value='Font color: [color=red]text[/color] Tip: you can also use color=#FF0000'; return true">
   <option style="color:black; background-color: #FAFAFA" value="#444444" class="xar-bbcode-genmed">
 Default </option>
   <option style="color:darkred; background-color: #FAFAFA" value="darkred" class="xar-bbcode-genmed">
 Dark Red </option>
   <option style="color:red; background-color: #FAFAFA" value="red" class="xar-bbcode-genmed">
 Red </option>
   <option style="color:orange; background-color: #FAFAFA" value="orange" class="xar-bbcode-genmed">
 Orange </option>
   <option style="color:brown; background-color: #FAFAFA" value="brown" class="xar-bbcode-genmed">
 Brown </option>
   <option style="color:yellow; background-color: #FAFAFA" value="yellow" class="xar-bbcode-genmed">
 Yellow </option>
   <option style="color:green; background-color: #FAFAFA" value="green" class="xar-bbcode-genmed">
 Green </option>
   <option style="color:olive; background-color: #FAFAFA" value="olive" class="xar-bbcode-genmed">
 Olive </option>
   <option style="color:cyan; background-color: #FAFAFA" value="cyan" class="xar-bbcode-genmed">
 Cyan </option>
   <option style="color:blue; background-color: #FAFAFA" value="blue" class="xar-bbcode-genmed">
 Blue </option>
   <option style="color:darkblue; background-color: #FAFAFA" value="darkblue" class="xar-bbcode-genmed">
 Dark Blue </option>
   <option style="color:indigo; background-color: #FAFAFA" value="indigo" class="xar-bbcode-genmed">
 Indigo </option>
   <option style="color:violet; background-color: #FAFAFA" value="violet" class="xar-bbcode-genmed">
 Violet </option>
   <option style="color:white; background-color: #FAFAFA" value="white" class="xar-bbcode-genmed">
 White </option>
   <option style="color:black; background-color: #FAFAFA" value="black" class="xar-bbcode-genmed">
 Black </option>
</select>
<label for="addbbcode22">
 Font size     :
</label>
<select name="addbbcode22" onchange="bbfontstyle('[size=' + this.form.addbbcode22.options[this.form.addbbcode22.selectedIndex].value + ']', '[/size]')" onmouseover="document.post.helpbox.value='Font size: [size=x-small]small text[/size]'; return true">
   <option value="7" class="xar-bbcode-genmed">
 Tiny </option>
   <option value="9" class="xar-bbcode-genmed">
 Small </option>
   <option value="12" selected="selected" class="xar-bbcode-genmed">
 Normal </option>
   <option value="18" class="xar-bbcode-genmed">
 Large </option>
   <option value="24" class="xar-bbcode-genmed">
 Huge     </option>
</select>
<a href="javascript:bbstyle(-1)" class="xar-bbcode-genmed" onmouseover="document.post.helpbox.value='Close all open bbCode tags'; return true">Close Tags</a>
<span class="gensmall">
    <input type="text" name="helpbox" size="50" maxlength="100" class="helpline" value="Tip: Styles can be applied quickly to selected text." />
</span>         </span>
       </div>
       <div class="xar-ib-leftpanelshort">
         <p>
 Name :
              Anonymous</p>
         <label for="package-title">
 Title: </label>
            <input class="xar-ib-field" type="text" name="package[title]" id="package-title" value="Accessing dynamic data via hooks and tags" tabindex="1" />
         <label for="package-text">
 Comment: </label>
<textarea class="xar-ib-fieldtext" name="package[text]" id="package-text" tabindex="2"></textarea>

          <input type="hidden" name="header[modid]" id="header-modid" value="151" /> 
          <input type="hidden" name="header[objectid]" id="header-objectid" value="44" /> 
          <input type="hidden" name="header[itemtype]" id="header-itemtype" value="9" />
<input type="hidden" name="header[pid]" id="header-pid" value="0" />
          <input type="hidden" name="receipt[returnurl][decoded]" id="receipt-returnurl-decoded" value="http://www.vaporbase.com/postings/Accessing_dynamic_data_via_hooks_and_tags?&amp;depth=1&amp;order=1&amp;sortby=2&amp;render=flat" />
          <!--<input type="hidden" name="receipt[returnurl][encoded]" id="receipt-returnurl-encoded" value="#$receipt['returnurl']['encoded']#" />-->
          <input type="hidden" name="receipt[action]" id="receipt-action" /> 
          <input type="submit" id="receipt-action-preview" onclick="document.getElementById('receipt-action').value='preview'" value="Preview" /> 
          <input type="submit" id="receipt-action-submit" onclick="document.getElementById('receipt-action').value='submit'" value="Submit" />
       </div>
</div>
 </form>
</p>
        <p></p>
        <p><br/>
<b>Keywords :</b>
<div style="margin-left: 1em; margin-right: 1em; text-align:left;">
    <li><a href="http://www.vaporbase.com/keywords/dynamic data/">dynamic data</a></li>
</div>
<br/>

</p>
</div>
   </channel>
</rss>
