add.smarty 2.52 KB
{$context->oPage->requireJSResource('thirdpartyjs/MochiKit/Base.js')}
{$context->oPage->requireJSResource('thirdpartyjs/MochiKit/Async.js')}
{$context->oPage->requireJSResource('thirdpartyjs/MochiKit/Iter.js')}
{$context->oPage->requireJSResource('thirdpartyjs/MochiKit/DateTime.js')}
{$context->oPage->requireJSResource('thirdpartyjs/MochiKit/DOM.js')}

<!-- unforunate, but (currently) necessary -->

{$context->oPage->requireJSResource('resources/js/taillog.js')}
{$context->oPage->requireJSResource('resources/js/conditional_usage.js')}

{$context->oPage->requireCSSResource('resources/css/kt-treewidget.css')}

{capture assign=sJavascript}
{literal}
function swapInItem(elementId, req) {
    
    var cp = getElement(elementId);
    
    cp.innerHTML = req.responseText;
    initialiseConditionalFieldsets();
}

function xmlFailure(err) {
    alert('failed');
}

function swapElementFromRequest(elementId, url) {
    var deff = doSimpleXMLHttpRequest(url);
    deff.addCallback(partial(swapInItem, elementId));
    var cp = getElement(elementId);
    cp.innerHTML="loading...";
    
}

function getMetadataForType(id) {
    swapElementFromRequest('type_metadata_fields',
        '{/literal}{$rootUrl}{literal}/presentation/lookAndFeel/knowledgeTree/documentmanagement/getTypeMetadataFields.php?fDocumentTypeID='
        + id);
}

function document_type_changed() {
    typeselect = getElement('add-document-type');
    getMetadataForType(typeselect.value);
}

function startupMetadata() {
    typeselect = getElement('add-document-type');
    addToCallStack(typeselect, "onchange", document_type_changed, false);
    document_type_changed();
}

addLoadEvent(startupMetadata);
{/literal}
{/capture}
{$context->oPage->requireJSStandalone($sJavascript)}

<h2>{i18n}Add a document{/i18n}</h2>

<form method="POST" action="{$smarty.server.PHP_SELF|addQueryString:"postExpected=1&fFolderId="}{$context->oFolder->getId()}" enctype="multipart/form-data">
<fieldset><legend>{i18n}Add a document{/i18n}</legend>
<input type="hidden" name="action" value="upload">
<input type="hidden" name="fFolderId" value="{$context->oFolder->getId()}">

{foreach from=$add_fields item=oWidget }
  {$oWidget->render()}
{/foreach}

<div id="generic_metadata_fields">
{foreach item=oFieldset from=$generic_fieldsets}
    {$oFieldset->renderEdit($document_data)}
{/foreach}
</div>

<div id="type_metadata_fields">
{$type_metadata_fields}
</div>

<div class="form_actions">
  <input type="submit" name="submit" value="{i18n}Add{/i18n}" />
</div>
<input type="hidden" name="postReceived" value="1" />
</form>