Files
node-red-contrib-nextcloud/nextcloud-cal.html
2021-02-22 01:03:28 +01:00

72 lines
3.1 KiB
HTML

<script type="text/javascript">
RED.nodes.registerType('nextcloud-caldav', {
category: 'nextcloud',
color: '#0082c9',
paletteLabel: 'CalDAV',
defaults: {
nname: {value: ''},
server: {type: 'nextcloud-credentials', required: true},
calendar: {value: '', required: false},
pastWeeks: { type: 'num', value: 0, required: true},
futureWeeks: { type: 'num', default: 4, required: true }
},
inputs: 1,
outputs: 1,
outputLabels: ['stdout'],
icon: 'nextcloud.png',
label: function() {
return this.nname || 'Nextcloud CalDAV'
}
})
</script>
<script type="text/x-red" data-template-name="nextcloud-caldav">
<div class="form-row">
<label for="node-input-nname"><i class="fa fa-tag"></i> Name</label>
<input type="text" id="node-input-nname" placeholder="Name" style="width: 70%">
</div>
<div class="form-row">
<label for="node-input-server"><i class="fa fa-server"></i> Server</label>
<input type="text" id="node-input-server">
</div>
<div class="form-row">
<label for="node-input-calendar"><i class="fa fa-calendar"></i> Calendar</label>
<input type="text" id="node-input-calendar">
</div>
<div class="form-row">
<label for="node-input-pastWeeks"><i class="fa fa-check-square"></i> Past weeks to sync</label>
<span class="ui-spinner ui-widget ui-widget-content ui-corner-all"><input type="number" id="node-input-pastWeeks"></span>
</div>
<div class="form-row">
<label for="node-input-futureWeeks"><i class="fa fa-random"></i> Upcoming weeks to sync</label>
<span class="ui-spinner ui-widget ui-widget-content ui-corner-all"><input type="number" id="node-input-futureWeeks"></span>
</div>
</script>
<script type="text/x-red" data-help-name="nextcloud-caldav">
<p>Connects to a Nextcloud server and downloads calendar entries (ics)</p>
<h3>Inputs</h3>
<dl class="message-properties">
<dt>payload
<span class="property-type">any</span>
</dt>
<dd> Incoming message triggers download of calendar items. Any payload is possible. </dd>
<dt class="optional">calendar <span class="property-type">string</span></dt>
<dd> Calendar can be specified on incoming message or in nodes properties (expects displayname
of calendar - the name of the calendar as shown in nextcloud calendar app). Downloads
calendar items from all calendars if not set.</dd>
</dl>
<h3>Outputs</h3>
<dl class="message-properties">
<dt>payload
<span class="property-type">Object</span>
</dt>
<dd> Outputs one message for each calendar. Output payload is an object with two keys:</dd>
<dt class="optional">name <span class="property-type">string</span></dt>
<dd> The name of the calendar</dd>
<dt class="optional">data <span class="property-type">Array of objects</span></dt>
<dd> Each calendar entry is an ics parsed to a JSON object</dd>
</dl>
</script>