Commit f86b272d authored by Pedro Eduardo Trujillo's avatar Pedro Eduardo Trujillo
Browse files

Añade templates para acoustic y nuevos helpers

parent 6eeab28c
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -61,6 +61,8 @@ module.exports = function(grunt) {
						Image: true,
						ObservationMissingRegister: true,
						AtlasProperties: true,
						Length: true,
						AcousticDetectionCounters: true,

						// string
						bold: true,
@@ -257,6 +259,8 @@ module.exports = function(grunt) {
				, 'dist/RealTimeInfo.js': 'src/RealTime/Info.hbs'

				, 'dist/ProductList.js': 'src/Product/List.hbs'
				, 'dist/AcousticDetectionList.js': 'src/AcousticDetection/List.hbs'
				, 'dist/AcousticDetectionPopup.js': 'src/AcousticDetection/Popup.hbs'
			}
		}
	});
+6 −0
Original line number Diff line number Diff line
<span class='spanTemplate'>
	<span class='title'>
		<span class='name'>{{data.name}}</span>
	</span>
	{{AcousticDetectionCounters data i18n}}
</span>
+39 −0
Original line number Diff line number Diff line
{{#if feature.properties}}
<div class='mainTitle'>{{feature.properties.name}}</div>

<div class="">
{{#each feature.properties.organisations}}
	{{#if @first}}
	<span class="title">{{../i18n.organisations}}</span>
	<span>[{{Length ../feature.properties.organisations}}]</span>
	<ul class="">
	{{/if}}
		<li class="">
		{{TextURL (concat '/catalog/organisation-info/' @key) this ../i18n.checkOrganisationAtCatalog}}
		</li>
	{{#if @last}}
	</ul>
	{{/if}}
{{/each}}
</div>

<div class="">
{{#each feature.properties.species}}
	{{#if @first}}
	<span class="title">{{../i18n.species}}</span>
	<span>[{{Length ../feature.properties.species}}]</span>
	<ul class="">
	{{/if}}
		<li class="">
		{{TextURL (concat 'https://redpromar.org/species/' @key) this ../i18n.checkSpeciesAtCatalog}}
		</li>
	{{#if @last}}
	</ul>
	{{/if}}
{{/each}}
</div>

{{AcousticDetectionCounters feature.properties i18n}}
{{else}}
<span>{{i18n.noData}}</span>
{{/if}}
+42 −4
Original line number Diff line number Diff line
define([
	'src/redmicConfig'
	, 'dojo/_base/lang'
	'dojo/_base/lang'
	, 'handlebars'
	, 'moment'
	, 'src/redmicConfig'
	, 'src/util/Credentials'
	, 'src/util/stringFormats'
], function(
	redmicConfig
	, lang
	lang
	, handlebars
	, moment
	, redmicConfig
	, Credentials
	, stringFormats
) {
@@ -280,6 +280,44 @@ define([
			return new handlebars.SafeString(message);
		},

		Length: function(data) {

			if (!data) {
				return 0;
			}

			if (data instanceof Array || typeof data === 'string') {
				return data.length;
			}

			if (typeof data === 'object') {
				return Object.keys(data).length;
			}

			return new handlebars.SafeString('?');
		},

		AcousticDetectionCounters: function(data, i18n) {

			const receptors = data?.totalReceptors ?? 0,
				animals = data?.totalAnimals ?? 0,
				detections = data?.totalDetections ?? 0;

			const receptorsCounter = `<div><i title="${i18n.totalReceptors}" class="acousticReceptorsIcon">
				</i><span>${receptors}</span></div>`;

			const animalsCounter = `<div><i title="${i18n.totalAnimals}" class="acousticAnimalsIcon">
				</i><span>${animals}</span></div>`;

			const detectionsCounter = `<div><i title="${i18n.totalDetections}" class="acousticDetectionsIcon">
				</i><span>${detections}</span></div>`;

			const result = `<div class="badgesContainer badgesWithCounters">
				${receptorsCounter}${animalsCounter}${detectionsCounter}</div>`;

			return new handlebars.SafeString(result);
		},

		AtlasProperties: function(data, i18n) {

			// TODO esto hay que revisarlo, es un monstruo con utilidad dudosa