Fork me on GitHub




(1) 2 3 4 ... 8 »


Liste des bugs de 2.3.1 pour correction dans 2.3.2
Xoops accro
Inscrit: 18/01/2004 17:13
De Ma Caverne
Messages: 2839
Bonjour à tous,

après quelques semaines de break, je reviens pour identifier les bugs que vous avez détectés sur 2.3.1.
Ceci afin de sortir une 2.3.2 dès que possible.

merci de votre aide sur la centralisation des bugs dans ce thread

marco

NB @titi, j'ai un de tes MP à regarder, je m'y attèle bientôt

Posté le : 16/11/2008 11:48

Trio de choc : FrXoops, FreeboxHD et OVH
MdxProd.com : des liens xoops indispensables
Partager Twitter Partagez cette article sur GG+
Re: Liste des bugs de 2.3.1 pour correction dans 2.3.2
Régulier
Inscrit: 01/04/2007 20:31
De Ile de France
Messages: 461
Salut Marco,
Sympa de te revoir ici sur le sujet, compte sur moi pour te donner un coup de main comme testeur.

@+ Titi

Posté le : 16/11/2008 12:39
Partager Twitter Partagez cette article sur GG+
Re: Liste des bugs de 2.3.1 pour correction dans 2.3.2
Régulier
Inscrit: 01/04/2007 20:31
De Ile de France
Messages: 461
On attaque :
Dans le module Profil 1.51 l'administrateur voit l'ensemble des champs, chose très embêtante, car ceci empêche de réaliser une nouvelle mise en page du template "profile_userinfo.html" avec photo par exemple

Open in new window


























Voici ma solution pour résoudre le problème


Dans "Profil/userinfo.php" = Origine ligne 121
// Dynamic User Profiles
$thisUsergroups $thisUser->getGroups();
$visibility_handler xoops_getmodulehandler('visibility');
$field_ids_visible null;
// Admin has access to all fields
if (!$xoopsUser->isAdmin()) {
    
$field_ids_visible $visibility_handler->getVisibleFields($groups$thisUsergroups);
}

$profile_handler =& xoops_getmodulehandler('profile');



Dans "Profil/userinfo.php" = Modification ligne 121
// Dynamic User Profiles
$thisUsergroups $thisUser->getGroups();
$visibility_handler xoops_getmodulehandler('visibility');
$field_ids_visible null;
// Admin has access to all fields
if (!$xoopsUser->isAdmin()) {
    
$field_ids_visible $visibility_handler->getVisibleFields($groups$thisUsergroups);
}

$profile_handler =& xoops_getmodulehandler('profile');


Dans "Profil/class/visibility.php" = Origine ligne 88
function getVisibleFields($profile_groups$user_groups null
    {
        
$sql "SELECT field_id FROM {$this->table} WHERE profile_group IN (" implode(','$profile_groups) . ")";
        if (!empty(
$user_groups) && !in_array(XOOPS_GROUP_ADMIN$user_groups)) {
            
$sql .= " AND user_group IN (" implode(','$user_groups) . ")";
        }

        
$field_ids = array();
        if (
$result $this->db->query($sql)) {
            while (list(
$field_id) = $this->db->fetchRow($result)) {
                
$field_ids[] = $field_id;
            }


Dans "Profil/class/visibility.php" = Modification ligne 88
function getVisibleFields($profile_groups$user_groups null
    {
        
// Debut variante pour champs visible par administrateur
        
global $xoopsUser;
        
$profile_groups[] = 0;
        
$user_groups[] = 0;

        
$sql "SELECT field_id FROM {$this->table} WHERE profile_group IN (" implode(','$profile_groups) . ")";
        
$sql .= " AND user_group IN (" implode(','$user_groups) . ")";
        
        
/*
        $sql = "SELECT field_id FROM {$this->table} WHERE profile_group IN (" . implode(',', $profile_groups) . ")";
        if (!empty($user_groups) && !in_array(XOOPS_GROUP_ADMIN, $user_groups)) {
            $sql .= " AND user_group IN (" . implode(',', $user_groups) . ")";
        }
        */
        
        // Fin de variante pour champs visible par administrateur

        
$field_ids = array();
        if (
$result $this->db->query($sql)) {
            while (list(
$field_id) = $this->db->fetchRow($result)) {
                
$field_ids[] = $field_id;
            }

Posté le : 16/11/2008 13:21
Partager Twitter Partagez cette article sur GG+
Re: Liste des bugs de 2.3.1 pour correction dans 2.3.2
Régulier
Inscrit: 06/01/2006 23:55
Messages: 379
y a toujours un petit pb dans la tructure de la base sur la table suivante : groups_users_link

cf ici le pb fonctionnel que cela peut engendrer en dehors de la perte de perf.
Deja discuter du sujet sur xoops.org mais bon la j'ai la preuve de ce que j'avancais car Herve non seulement n'etait pas d'accord mais en plus voulait m'apprendre a quoi servait une cle technique.

Posté le : 16/11/2008 13:38
Partager Twitter Partagez cette article sur GG+
Re: Liste des bugs de 2.3.1 pour correction dans 2.3.2
Semi pro
Inscrit: 19/08/2005 21:01
De 97221
Messages: 1980
Un bug bizarre, ou de xoops 3.x.x ou de différents modules qui sont mal adaptés
Exemple, newbbex, quant on utilise la prévisualisation ou l'édition d'un post, la zone de saisie est vide.
Je suis pas assez calé pour donner plus de précisions sur le soucis.

Posté le : 16/11/2008 14:23

Open in new windowOpen in new window
Partager Twitter Partagez cette article sur GG+
Re: Liste des bugs de 2.3.1 pour correction dans 2.3.2
Xoops accro
Inscrit: 18/01/2004 17:13
De Ma Caverne
Messages: 2839
Citation :

Jah a écrit:
Un bug bizarre, ou de xoops 3.x.x ou de différents modules qui sont mal adaptés
Exemple, newbbex, quant on utilise la prévisualisation ou l'édition d'un post, la zone de saisie est vide.
Je suis pas assez calé pour donner plus de précisions sur le soucis.

oui, nous (instant zero) allons bientôt sortir de nouvelles versions de nos modules pour 2.3x, ce qui corrigera ceci ainsi que les quelques soucis rencontrés sur éditeurs WYSIWYG
marco

Posté le : 16/11/2008 14:33

Trio de choc : FrXoops, FreeboxHD et OVH
MdxProd.com : des liens xoops indispensables
Partager Twitter Partagez cette article sur GG+
Re: Liste des bugs de 2.3.1 pour correction dans 2.3.2
Régulier
Inscrit: 06/01/2006 23:55
Messages: 379
argh...
Je comprends mieux pourquoi Xoops est plus gros...Y a de la duplication de code.
Je presumes que c'est juste en attendant d'avoir modifier par tout l'usage des xoopsobject etc...

Bon un bon point, il etait temps seul les valeurs modifiées dans un objet seront remises a jours maintenant. En tout cas si j'ai compris le code, malheureusement pour l'instant c'est juste pour le user

Un petit bug a corriger dans htdocs\xoops\htdocs\class\model\write.php. Sur la methode insert, lorsque l'on passe par le Insert il faut flague l'objet a isNew = false. Car si jamais tu lances 2 fois de suite la methode sur un objet il va en creer 2 differents et non remettre a jours. Il suffit juste de rajouter $objet->unsetNew() dans le partie d'insertion.

A noter que ce bug existe sur tous les objets du kernel. Pourtant c'est signale sur le tracker de sourceforge depuis pfuuuuuuttttt

Posté le : 16/11/2008 17:58
Partager Twitter Partagez cette article sur GG+
Re: Liste des bugs de 2.3.1 pour correction dans 2.3.2
Régulier
Inscrit: 06/01/2006 23:55
Messages: 379
je proposerai bien aussi une petite methode supplementaire dans XoopsPersistableObjectHandler :
/**
     * 
     * @param $obj to test if is an instance of $this->className 
     * @return bool
     */
    
protected function isIntanceOf($obj){
        return (
class_exists($this->className) && $obj instanceof $this->className);
    }


ou a la limite avec juste is_a($obj, $this->className) mais bon le but c'est d'avoir moins de code a changer apres.

Posté le : 16/11/2008 18:12
Partager Twitter Partagez cette article sur GG+
Re: Liste des bugs de 2.3.1 pour correction dans 2.3.2
Régulier
Inscrit: 06/01/2006 23:55
Messages: 379
la classe privatemessage en utilisant XoopsPersistableObjectHandler, c'est pas une correction de bug c'est une simplification du code pour utiliser ce qui est fournis maintenant. Quoique si on corrige le petit bug 2 posts au dessus, c corrige en meme temps
<?php
// $Id: privmessage.php,v 1.1 2008/11/11 10:55:24 forte1 Exp $
//  ------------------------------------------------------------------------ //
//                XOOPS - PHP Content Management System                      //
//                    Copyright (c) 2000 XOOPS.org                           //
//                       <http://www.xoops.org/>   ... nbsp;   //
//  ------------------------------------------------------------------------ //
//  This program is free software; you can redistribute it and/or modify     //
//  it under the terms of the GNU General Public License as published by     //
//  the Free Software Foundation; either version 2 of the License, or        //
//  (at your option) any later version.                                      //
//                                                                           //
//  You may not change or alter any portion of this comment or credits       //
//  of supporting developers from this source code or any supporting         //
//  source code which is considered copyrighted (c) material of the          //
//  original comment or credit authors.                                      //
//                                                                           //
//  This program is distributed in the hope that it will be useful,          //
//  but WITHOUT ANY WARRANTY; without even the implied warranty of           //
//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the            //
//  GNU General Public License for more details.                             //
//                                                                           //
//  You should have received a copy of the GNU General Public License        //
//  along with this program; if not, write to the Free Software              //
//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA //
//  ------------------------------------------------------------------------ //
// Author: Kazumi Ono (AKA onokazu)                                          //
// URL: http://www.myweb.ne.jp/http://www.xoops.org/http://jp.xoops.org/ //
// Project: The XOOPS Project                                                //
// ------------------------------------------------------------------------- //
if (!defined('XOOPS_ROOT_PATH')) {
    exit();
}
/**
 * {description}
 *
 * @package        kernel
 *
 * @author        Kazumi Ono    <onokazu@xoops.org>
 * @copyright    copyright (c) 2000-2003 The XOOPS Project (http://www.xoops.org)
 *
 * @version        $Id: privmessage.php,v 1.1 2008/11/11 10:55:24 forte1 Exp $
 */
class XoopsPrivmessage extends XoopsObject
{

/**
 * constructor
 **/
    
function XoopsPrivmessage()
    {
        
$this->XoopsObject();
        
$this->initVar('msg_id'XOBJ_DTYPE_INTnullfalse);
        
$this->initVar('msg_image'XOBJ_DTYPE_OTHER'icon1.gif'false100);
        
$this->initVar('subject'XOBJ_DTYPE_TXTBOXnulltrue255);
        
$this->initVar('from_userid'XOBJ_DTYPE_INTnulltrue);
        
$this->initVar('to_userid'XOBJ_DTYPE_INTnulltrue);
        
$this->initVar('msg_time'XOBJ_DTYPE_OTHERnullfalse);
        
$this->initVar('msg_text'XOBJ_DTYPE_TXTAREAnulltrue);
        
$this->initVar('read_msg'XOBJ_DTYPE_INT0false);
    }
}

/**
 * XOOPS private message handler class.
 *
 * This class is responsible for providing data access mechanisms to the data source
 * of XOOPS private message class objects.
 *
 * @package        kernel
 *
 * @author        Kazumi Ono    <onokazu@xoops.org>
 * @copyright    copyright (c) 2000-2003 The XOOPS Project (http://www.xoops.org)
 *
 * @version        $Revision: 1.1 $ - $Date: 2008/11/11 10:55:24 $
 */
class XoopsPrivmessageHandler extends XoopsPersistableObjectHandler
{


    
/**
     * Constructor
     *
     * @access public
     */
    
public function __construct($db
    {
        
parent::__construct($db'priv_msgs''XoopsPrivmessage''msg_id');
    }
    
/**
 * Mark a message as read
 * @param     object     $pm     {@link XoopsPrivmessage} object
 * @return     bool
 **/
    
function setRead(&$pm)
    {
        
/**
        * @TODO: Change to if (!(class_exists($this->className) && $obj instanceof $this->className)) when going fully PHP5
        */
        
if (!is_a($pm'xoopsprivmessage')) {
            return 
false;
        }

        
$sql sprintf('UPDATE %s SET read_msg = 1 WHERE msg_id = %u'$this->db->prefix('priv_msgs'), $pm->getVar('msg_id'));
        return (
$this->db->queryF($sql));
    }
}
?>

Posté le : 16/11/2008 18:36
Partager Twitter Partagez cette article sur GG+
Re: Liste des bugs de 2.3.1 pour correction dans 2.3.2
Régulier
Inscrit: 06/01/2006 23:55
Messages: 379
Citation :

garrath a écrit:
je proposerai bien aussi une petite methode supplementaire dans XoopsPersistableObjectHandler :
/**
     * 
     * @param $obj to test if is an instance of $this->className 
     * @return bool
     */
    
protected function isIntanceOf($obj){
        return (
class_exists($this->className) && $obj instanceof $this->className);
    }


ou a la limite avec juste is_a($obj, $this->className) mais bon le but c'est d'avoir moins de code a changer apres.


Je reviens la dessus...
Car il faut absolument faire le test entre l'objet traité et la classe, dans toutes les methodes qui gerent les objets dans XoopsPersistableObjectHandler car sinon ca risque de poser pas mal de pb. C'est le cas actuellement dans les classes heritante de XoopsObjectHandler qui gere les objets, mais ce n'est absolument pas fait dans XoopsPersistableObjectHandler ou les handlers. Donc risque apres...

Posté le : 16/11/2008 18:49
Partager Twitter Partagez cette article sur GG+

 Haut   Précédent   Suivant
(1) 2 3 4 ... 8 »



Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

352 Personne(s) en ligne (288 Personne(s) connectée(s) sur Forum) | Utilisateur(s): 0 | Invité(s): 352 | Plus ...