<script type="text/javascript" src="${appRoot}/res/ui/config.js"></script>
<script type="text/javascript">
// <![CDATA[
// data
var configData = ${__data__};
var selectedPid = '${selectedPid}';
var i18n = { // i18n
	stat_ok      : '${config.status.ok}', // "Configuration Admin Service is running.";
	stat_missing : '${config.status.missing}', //"Configuration Admin Service is not installed/running."
	save         : '${save}',
	reset        : '${reset}',
	del          : '${delete}',
	abort        : '${abort}',
	props_title  : '${config.properties}',
	props_enter  : '${config.properties.enter}', // "Enter Name-Value pairs of configuration properties"
	cfg_title    : '${config.info.title}', // "Configuration Information"
	pid          : '${config.info.pid}', // "Persistent Identity (PID)";
	fpid         : '${config.info.fpid}', // "Factory Peristent Identifier (Factory PID)";
	binding      : '${config.info.binding}', // "Configuration Binding";
	unbound      : '${config.info.unbound}', // "Unbound or new configuration"; 
	unbind_btn   : '${config.unbind.btn}', // "Unbind;
	unbind_tip   : '${config.unbind.tip}', // "Unbind Configuration from Bundle"
	del_ask      : '${config.del.ask}', // "Are you sure to delete this configuration ?";
	del_config   : '${config.del.config}', // "Configuration: ";
	del_bundle   : '${config.del.bundle}', // "Bundle: ";
	unbind_ask   : '${config.unbind.ask}', // "Are you sure to unbind this configuration ?"
	err_bind     : '${config.bind.error}' // Error: the PID'{0}' is bound to '{1}' but the actual managed service is registered from '{2}' bundle
};
var param = { // param
    apply        : '${param.apply}',
    create       : '${param.create}',
    unbind       : '${param.unbind}',
    dele         : '${param.delete}',
    propertylist : '${param.propertylist}',
    pidFilter    : '${param.pidFilter}'
};
// ]]>
</script>

<!-- status line -->
<p class="statline">&nbsp;</p>


<div id="configContent" >
	<div id="fPidsSelect" class="ui-widget-header ui-corner-top buttonGroup">
		${config.configurations.title}
	</div>
	<table id="configTable" class="tablesorter nicetable noauto">
		<thead>
			<tr>
				<th class="col_Name">${config.title.name}</th>
				<th class="col_Binding">${config.title.bundle}</th>
				<th class="col_Actions">${config.title.actions}</th>
			</tr>
		</thead>
		<tbody>
			<tr>
				<td class="pointer"><div class="ui-icon ui-icon-triangle-1-e subpid">&nbsp;</div></td>
				<td>&nbsp;</td>
				<td>
					<ul class="icons">
						<li class="dynhover" title="${config.edit.tip}"><span class="ui-icon ui-icon-pencil">&nbsp;</span></li>
						<li class="ui-state-disabled dynhover" title="${config.unbind.tip}"><span class="ui-icon ui-icon-transferthick-e-w">&nbsp;</span></li>
						<li class="dynhover" title="${delete}"><span class="ui-icon ui-icon-trash">&nbsp;</span></li>
					</ul>
				</td>
			</tr>
			<tr class="fpid">
				<td class="pointer">&nbsp;</td>
				<td>-</td>
				<td>
					<ul class="icons">
						<li class="dynhover" title="${config.create.tip}"><span class="ui-icon ui-icon-plusthick">&nbsp;</span></li>
					</ul>
				</td>
			</tr>
		</tbody>
	</table>
	
</div>

<!-- placeholder for property editor -->
<div id="editor" class="ui-helper-hidden">
	<p class="ui-state-error ui-helper-hidden">&nbsp;</p>
	<table id="editorTable" class="nicetable">
		<tr><td>&nbsp;</td></tr>
	</table>
</div>
