Jump to content

Edit History

Prestafan33

Prestafan33

15 minutes ago, Adrian said:

Ahora una última pregunta, espero no molestarte mucho >.<

Sabes donde puedo tocar para poder poner letras en el código ISBN. Estoy intentando "engañar" a prestashop porque en sí no es un código ISBN. Son códigos con números y letras. Sabrias donde modificarlo para que me permita hacer eso? Si me sale eso ya estaría todo :)

En /classes/Product.php, hacia la línea 316, tienes la validación de los campos que componen la clase "producto", concretamente el ISBN está en la línea 335 (en la versión 1.7.5, que es donde lo estoy mirando):

'isbn' => array('type' => self::TYPE_STRING, 'validate' => 'isIsbn', 'size' => 32),

si vas a meter algo que sea texto, se podría poner que simplemente validase que sea una cadena alfanumérica y nada más:

'isbn' => array('type' => self::TYPE_STRING, 'validate' => 'isString', 'size' => 32),

Si quieres variar la longitud máxima también puedes cambiar el valor de "size".

Ten en cuenta que esta modificación se perderá si haces luego una actualización de Prestashop a otra versión. Para que no fuera así habría que hacer un override, extendiendo la clase Product, pero eso ya es un poco más complicado.

Prestafan33

Prestafan33

13 minutes ago, Adrian said:

Ahora una última pregunta, espero no molestarte mucho >.<

Sabes donde puedo tocar para poder poner letras en el código ISBN. Estoy intentando "engañar" a prestashop porque en sí no es un código ISBN. Son códigos con números y letras. Sabrias donde modificarlo para que me permita hacer eso? Si me sale eso ya estaría todo :)

En /classes/Product.php, hacia la línea 316, tienes la validación de los campos que componen la clase "producto", concretamente el ISBN está en la línea 335 (en la versión 1.7.5, que es donde lo estoy mirando):

'isbn' => array('type' => self::TYPE_STRING, 'validate' => 'isIsbn', 'size' => 32),

si vas a meter algo que sea texto, se podría poner que simplemente validase que sea una cadena alfanumérica y nada más:

'isbn' => array('type' => self::TYPE_STRING, 'validate' => 'isString', 'size' => 32),

Si quieres variar la longitud máxima también puedes cambiar el valor de "size".

Ten en cuenta que esta modificación se perderá si haces luego una actualización de Prestashop. Para que no fuera así habría que hacer un override, extendiendo la clase Product, pero eso ya es un poco más complicado.

Prestafan33

Prestafan33

4 minutes ago, Adrian said:

Ahora una última pregunta, espero no molestarte mucho >.<

Sabes donde puedo tocar para poder poner letras en el código ISBN. Estoy intentando "engañar" a prestashop porque en sí no es un código ISBN. Son códigos con números y letras. Sabrias donde modificarlo para que me permita hacer eso? Si me sale eso ya estaría todo :)

En /classes/Product.php, hacia la línea 316, tienes la validación de los campos que componen la clase "producto", concretamente el ISBN está en la línea 335 (en la versión 1.7.5, que es donde lo estoy mirando):

'isbn' => array('type' => self::TYPE_STRING, 'validate' => 'isIsbn', 'size' => 32),

si vas a meter algo que sea texto, se podría poner que simplemente validase que sea una cadena alfanumérica y nada más:

'isbn' => array('type' => self::TYPE_STRING, 'validate' => 'isString', 'size' => 32),

Si quieres variar la longitud máxima también puedes cambiar el valor de "size".

×
×
  • Create New...