====== 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);