User Tools

Site Tools


sermn_wiki:userpages:marta:reserves_117

Posada en funcionament de la v.1.1.7

Aquí es detallen les comprovacions i els ajusts que s'han fet per poder instal·lar la versió 1.1.7 des de zero i sense errors.

Instal·lació i canvis en la instal·lació

Instal·lació

Perquè la contrasenya sigui segura, ha de contenir lletres majúscules i minúscules, números i caràcters com per exemple: ?!“#$… Si tot va bé, veurem una cosa semblant a:

  Results
  Checking to see if your kit looks good...
  GOOD: Found installation of Bumblebee version 1.1.7.
  GOOD: Configuration loaded successfully.
  GOOD: php-gettext found for generating translated content.
  GOOD: LDAP extension found for LDAP authentication.
  GOOD: PECL RADIUS extension found for RADIUS authentication.
  GOOD: FPDF library found for generating PDF reports.
  GOOD: Admin username is valid.
  GOOD: Admin user's password seems ok. password seems strong enough
  GOOD: Database user's password seems ok. password seems strong enough
  Excellent! Your setup looks fine. 
  

I al final:

  
  Post-install check results
  Checking your setup works now you've installed the db.ini file and created the database...
  GOOD: Configuration loaded successfully
  GOOD: Successfully connected to database
  GOOD: Admin can log in to Bumblebee with this username and password.
  GOOD: db.ini file is protected against downloading (gives 403 Forbidden).
  GOOD: I could find your installation using http through your web server 
  (found at http://localhost:80/Debug-bmbee-116/index.php and http://localhost:80/Debug-bmbee-116/).
  Excellent! Your setup looks fine. 
  

Fitxer /config/bumblebee.ini

S'ha canviat el logo.png pel logo de la UAB:

; The relative location on disk of image/logo to show next to the tile
; Do not use complete path, only sice BasePath
LogoPath = "/theme/images/logo.png"

El SiteTitle també es modifica directament al bumbleebee.ini:

SiteTitle  = "SeRMN Instrument Booking Tool UAB"

Canvis i adaptació de la base de dades que calien per la versió 1.1.6 (corregits a la 1.1.7)

Taula usergroups

DROP TABLE IF EXISTS usergroups;
CREATE TABLE IF NOT EXISTS `usergroups` (
  `userid` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
  `groupid` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
  `isdefault` tinyint(1) DEFAULT '0',
  UNIQUE KEY `usergroup` (userid, groupid)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

Amb la següent comanda podem crear la relació entre usuaris i grups (que ja teníem a la bd) i omplir la taula usergroups:

INSERT INTO `usergroups` (userid, groupid)
SELECT DISTINCT `userprojects.userid`, `projectgroups.groupid`
FROM `userprojects`, `projectgroups`
WHERE `userprojects.projectid` = `projectgroups.projectid`;

Atenció: si un projecte és compartit per 2 grups i tenim un usuari assignat a aquell projecte, si ho fem d'aquesta manera, l'usuari passarà a pertànyer als 2 grups. Si això no és desitjable, ara per ara s'ha de corregir manualment.

Si la major part d'usuaris només pertanyen a un grup, podem emprar la següent comanda per indicar que el grup al qual pertanyen és el grup per defecte,

UPDATE `usergroups` SET `isdefault` = 1 WHERE 1

i tot seguit canviar isdefault a zero en tots els usuaris assignats a més d'un grup,

UPDATE `usergroups` SET `isdefault` = 0 WHERE `userid` IN (
  SELECT `uid` FROM (
    SELECT `userid` AS `uid`
    FROM `usergroups`
    GROUP BY `userid`
    HAVING COUNT( `userid` ) > 1
  ) AS tmptble
)

La llista d'usuaris assignats a més d'un grup, i pels quals hem d'indicar el grup per defecte, es pot obtenir amb la següent comanda,

SELECT userid, COUNT( `userid` )
FROM `usergroups`
GROUP BY `userid`
HAVING COUNT( `userid` ) > 1;


Status i Taula statususers

2012-08-08 - MCE - He canviat el nom del camp de status a role.

Caldrà modificar el codi del programa perquè faci servir aquest nom de camp

S'ha afegit el camp role a la taula users:

role SMALLINT UNSIGNED DEFAULT 3,

En principi està pensat que:

  • Role 1 = admin
  • Role 2 = cap de grup
  • Role 3 = usuari

A més a més, el fitxer /install/setup-tables.sql s'ha d'actualitzar la línia perquè l'administrador tingui role 1:

INSERT INTO users (username,name,passwd,isadmin,ROLE)
VALUES ('BumblebeeAdmin','Queen Bee',MD5('defaultpassword123'),1,1);

També, del fitxer install/installer/createdatabase.php s'ha de canviar la següent línia perquè al instal·lar li posi role 1 al admiunistrador:

$sql = preg_replace("/\('$bbDefaultAdmin','$bbDefaultAdminName',MD5\('$bbDefaultAdminPass'\),1\)/",
       "('$bbAdmin','$bbAdminName','".md5($bbAdminPass)."',1);", $sql);

La canviem per:

$sql = preg_replace("/\('$bbDefaultAdmin','$bbDefaultAdminName',MD5\('$bbDefaultAdminPass'\),1,1\)/",
       "('$bbAdmin','$bbAdminName','".md5($bbAdminPass)."',1,1);", $sql);

2012-12-27 - MCE - He canviat el nom de la taula de statususers a roleusers.

Caldrà modificar el codi del programa perquè faci servir aquest nom de camp

Altre cop a /install/setup-tables.sql hem de crear una nova taula, la de roleusers:

DROP TABLE IF EXISTS roleusers;
CREATE TABLE IF NOT EXISTS roleusers (
  id SMALLINT UNSIGNED NOT NULL,
  name VARCHAR(255) CHARACTER SET utf8 NOT NULL,
  deleted BOOL DEFAULT 0,
  PRIMARY KEY (id),
  UNIQUE KEY name (name)
) DEFAULT CHARACTER SET utf8;

I en el mateix fitxer ja l'omplim (perquè seran valors fixes):

INSERT INTO roleusers (id,name) VALUES (1,'Administrator');
INSERT INTO roleusers (id,name) VALUES (2,'Group leader');
INSERT INTO roleusers (id,name) VALUES (3,'User');

Servidor de correo

Perquè funcionin opcions com 'I forgot my password' que han d'enviar correos, s'ha de configurar el servidor d'aquest.

Requires_once

A la versió 1.1.6 hi havien molts fitxers que no funcionaven perquè els hi faltava incloure altres fitxers que no s'havia tingut en compte en fer la versió 1.1.6. Això és una part de les correccions de la 1.1.7.

S'ha afegit a /inc/actions/book.php

/** sql manipulation routines */
require_once 'inc/formslib/sql.php';
/** system configuration */
require_once 'inc/bb/configreader.php';

Cal afegir /inc/actions/instruments.php l'include:

require_once 'inc/formslib/anchortablelist.php';

I a /inc/bb/instrument.php l'include:

require_once 'inc/formslib/staticlist.php'; 

S'ha d'afegir a /inc/actions/consumables.php l'include:

require_once 'inc/formslib/anchortablelist.php';

S'ha d'afegir a /inc/bb/group.php l'include:

require_once 'inc/formslib/staticlist.php';

Cal afegir a /inc/actions/lists.php els següents includes:

require_once 'inc/formslib/staticlist.php'; 
require_once 'inc/formslib/anchortablelist.php'; 

Bugs corregits

La versió 1.1.7 corregeix bugs importants:

Permisos al calendari i al fer/veure reserves

Fins ara es podien fer i veure reserves d'instruments que no tenies permís, s'han fet els canvis:

  • Els usuaris només poden reservar i veure les reserves dels instruments que tenen permís.
  • Els usuaris només poden veure els calendaris dels instruments els quals tinguin permís.
  • Els caps de grup, igual que els usuaris, però ells si poden veure les reserves dels usuaris dels seus grups o projectes encara que no tinguin permís per aquell instrument (el que no poden fer és fer reserves per instruments que no tenen permís).

Llistes

Les llistes no mostraven correctament el que tocava, per exemple a usuaris suspesos deia que suspended=1 i deleted<>1, per tant tot els usuaris que tenen suspended=1 i deleted=1 no es mostraven (que són la majoria). S'ha solucionat perquè ho faci correctament (si volem consultar coses suspeses no ens importa el camp deleted i per això ha d'estar a NULL).

Es pot comprovar si es fan les consultes correctament descomentant la línia 169 de /inc/formslib/dbchoicelist.php

//printf("sql: %s<br/>",$q);
This website uses cookies. By using the website, you agree with storing cookies on your computer. Also you acknowledge that you have read and understand our Privacy Policy. If you do not agree leave the website.More information about cookies
sermn_wiki/userpages/marta/reserves_117.txt · Last modified: 2020/07/09 12:11 by miquel