====== 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.
* [[..:marta:reservescanvisfets_116_a_117| Canvis de la versió 1.1.6 (unstable) a 1.1.7]]
* [[sermn_wiki:userpages:marta:changelog_116_a_117| Changelog dels canvis de la 1.1.6 (unstable) a la 1.1.7]]
===== 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
",$q);