4fb614be87
Human-readable help in all six palette nodes, docs/NODES.md with usage examples, expanded example flows, and auto-detect NODERED_DIR plus CODE bridge IP from .env on any VM.
65 lines
2.7 KiB
HTML
65 lines
2.7 KiB
HTML
<script type="text/javascript">
|
|
RED.nodes.registerType('collabora-wopi', {
|
|
category: 'nextcloud collabora',
|
|
color: '#7950a2',
|
|
defaults: {
|
|
name: { value: '' },
|
|
config: { type: 'nc-collab-config', required: true },
|
|
operation: { value: 'capabilities' }
|
|
},
|
|
inputs: 1,
|
|
outputs: 1,
|
|
icon: 'font-awesome/fa-search',
|
|
label: function () {
|
|
return this.name || `wopi ${this.operation}`;
|
|
}
|
|
});
|
|
</script>
|
|
|
|
<script type="text/html" data-template-name="collabora-wopi">
|
|
<div class="form-row">
|
|
<label for="node-input-name"><i class="fa fa-tag"></i> Namn</label>
|
|
<input type="text" id="node-input-name">
|
|
</div>
|
|
<div class="form-row">
|
|
<label for="node-input-config"><i class="fa fa-cog"></i> Config</label>
|
|
<input type="text" id="node-input-config">
|
|
</div>
|
|
<div class="form-row">
|
|
<label for="node-input-operation"><i class="fa fa-wrench"></i> Operation</label>
|
|
<select id="node-input-operation">
|
|
<option value="capabilities">capabilities</option>
|
|
<option value="discovery">discovery</option>
|
|
<option value="buildEditor">buildEditor</option>
|
|
<option value="checkFileInfo">checkFileInfo (debug)</option>
|
|
<option value="getFile">getFile (debug)</option>
|
|
</select>
|
|
</div>
|
|
</script>
|
|
|
|
<script type="text/html" data-help-name="collabora-wopi">
|
|
<p>Inte filkonvertering — hälsokoll och WOPI-hjälp mot CODE.</p>
|
|
|
|
<table style="width:100%; font-size:12px;">
|
|
<tr><th>Operation</th><th>Du får</th></tr>
|
|
<tr><td><code>capabilities</code></td><td>JSON: vad CODE kan (convert-to m.m.)</td></tr>
|
|
<tr><td><code>discovery</code></td><td>XML: mime → editor-URL</td></tr>
|
|
<tr><td><code>buildEditor</code></td><td><code>msg.editorUrl</code> från <code>msg.wopiSrc</code> + <code>msg.token</code></td></tr>
|
|
<tr><td><code>checkFileInfo</code></td><td>JSON om filen (WOPI-host, oftast Nextcloud)</td></tr>
|
|
<tr><td><code>getFile</code></td><td>filbytes via WOPI GET</td></tr>
|
|
</table>
|
|
|
|
<p><code>buildEditor</code> sätter ungefär:<br>
|
|
<code>{collaboraPublicUrl}/browser/dist/cool.html?WOPISrc=...&access_token=...</code><br>
|
|
Publik URL = Nextcloud/proxy (<code>https://cloud.hannesahlin.se</code>), inte intern CODE-IP.</p>
|
|
|
|
<h4>När</h4>
|
|
<ul>
|
|
<li>Första test att CODE lever → <code>capabilities</code></li>
|
|
<li>WOPI-token från <code>nc-office document:direct</code> → bygg iframe-URL</li>
|
|
<li>Felsökning. Spara filer via WebDAV, inte WOPI PutFile.</li>
|
|
</ul>
|
|
|
|
<pre>inject → collabora-wopi (capabilities) → debug</pre>
|
|
</script>
|