Modificaciones - RodrigoRoy/lais-fotografia GitHub Wiki
Para habilitar el uso de mapas se requiere un API key de Google. En el siguiente enlace se indica como generarlo: Create API keys
Modificar del archivo public/angular/views/index.html
la siguiente línea de código:
<script src="https://maps.googleapis.com/maps/api/js?libraries=places&key=*****&v=3"></script>
Así se verá después de incluir API key:
<script src="https://maps.googleapis.com/maps/api/js?libraries=places&key=gOoGlEmApS_aPiKeY&v=3"></script>
El archivo app/api/file.js
realiza operaciones con los archivos digitales de imagen, por ejemplo generar versiones de baja resolución empleando GraphicsMagick por default.
Para emplear ImageMagick se debe cambiar esta línea de código:
gm = require('gm');
por lo siguiente:
gm = require('gm').subClass({ imageMagick: '7+' });
Más información en la documentación de la biblioteca gm
El archivo config.js
es generado automáticamente al momento de la instalación. Puede ser creado previamente y ser compatible, siempre y cuando contenga la siguiente estructura:
module.exports = {
port: 8080, // Puerto del servidor
db: 'mongodb://localhost:27017/mi-base-de-datos', // Dirección de la base de datos
jwt: '123456789abcdefg', // Llave secreta o privada para cifrado
prefix: 'MXIM', // Prefijo para el código de referencia
name: 'Fotografía e investigación' // Nombre de la fototeca
}
db
y jwt
pueden causar que el sistema deje de funcionar.
El sistema de colores sigue las convenciones establecidas en Material Design y puede modificarse en el archivo public/angular/app.js
:
// Tema claro
$mdThemingProvider.theme('light').primaryPalette('pink').accentPalette('pink').warnPalette('red').backgroundPalette('grey');
// Tema oscuro
$mdThemingProvider.theme('dark').primaryPalette('pink').accentPalette('pink').warnPalette('red').backgroundPalette('grey');
// Tema personalizado
$mdThemingProvider.theme('my-theme').primaryPalette('red').accentPalette('grey').warnPalette('red').backgroundPalette('grey').dark();
Mas detalles en la documentación de AngularJS Material
La manera más simple es ocultar el campo deseado comentando el código HTML. Por ejemplo, para ocultar el campo Grabado relacionado
en el área de documentación asociada de la unidad documental
- Desde el formulario
public/angular/views/unidadDocumentalForm.html
<!-- <md-input-container class="md-block" ng-repeat="value in auxiliar.grabadoRelacionado">
<label>Grabado relacionado</label>
<input ng-model="value.text" ng-blur="agregarGrabadoRelacionado(value.text)"></input>
</md-input-container> -->
- Desde la vista
public/angular/views/unidadDocumentalDialog.html
<!--<tr ng-if="unidad.documentacionAsociada.grabadoRelacionado && unidad.documentacionAsociada.grabadoRelacionado.length > 0">
<td>Grabado relacionado</td>
<td>
<table>
<tr ng-repeat="fotografia in unidad.documentacionAsociada.grabadoRelacionado">
<td>{{fotografia}}</td>
</tr>
</table>
</td>
</tr>-->
El siguiente procedimiento aplica para campos de texto simple. Es necesario modificar el modelo en la base de datos, agregar una entrada en el formulario y en la vista. Por ejemplo, para agregar el campo Ubicación física
en el área de notas de la unidad documental
- Desde el modelo de la base de datos
app/models/unidadDocumental.js
notas: {
ubicacionFisica: {type: String, trim: true},
}
- Desde el formulario
public/angular/views/unidadDocumentalForm.html
<md-input-container class="md-block" flex-gt-sm>
<label>Ubicación física</label>
<input ng-model="unidadDocumental.notas.ubicacionFisica">
</md-input-container>
- Desde la vista
public/angular/views/unidadDocumentalDialog.html
Primero ubicar su correspondiente sección y agregar el campo en propiedad condicionalng-if
<md-tab label="Notas" ng-if="unidad.notas.notas || unidad.notas.ubicacionFisica">
Después agregar el código para visualizar la información
<tr ng-if="unidad.notas.ubicacion">
<td>Ubicación física</td>
<td>{{unidad.notas.ubicacionFisica}}</td>
</tr>
ℹ️ Para quitar o agregar campos al modelo descriptivo de conjuntos documentales el procedimiento es análogo, los archivos a editar son app/models/conjuntoDocumental.js
, public/angular/views/conjuntoDocumentalForm.html
y public/angular/views/conjuntoDocumentalDialog.html