/*  METODOS DE SERVICIO DEL CLIENTE
    Estos métodos invocan a los servicios web correspondientes y devuelven la información devuelta por éstos en forma de
    objetos.
    NOTA IMPORTANTE: Todos los métodos pueden devolver, o bien un objeto Array cuyos elementos pertenecen al tipo indicado 
    en el comentario de la función, o bien un objeto del tipo indicado, o bien un objeto de tipo Error, del cual podemos
    obtener información de código de error (Error.codigo) y descripción (Error.descripcion), en función del código de error,
    definido en TiposError.js se tomarán decisiones de actuación. Para determinar si ha ocurrido un error tras la ejecución de
    traducirTextoAObjecto(...), podemos utilizar el operador instanceof para comparar el tipo del objeto devuelto, por ejemplo
    traducirTextoAObjecto(clientes) instanceof Error, devolverá true si efectivamente ha ocurrido un error.    
*/
 function obtenerAccesoriosDeTipo(codTipoAccesorio) {              
    var accesorios = ArticulosWebServiceSoapHttpPort_obtenerAccesoriosDeTipo(codTipoAccesorio);		
    return traducirTextoAObjeto(accesorios);        
 }
 
 function obtenerTallasDeAccesorio(codAccesorio) {
    var tallas = ArticulosWebServiceSoapHttpPort_obtenerTallasDeAccesorio(codAccesorio);
    return traducirTextoAObjeto(tallas);      
 } 
 
 function crearAccesorio() {
    var accesorio = ArticulosWebServiceSoapHttpPort_crearAccesorio();
    var accesorios = traducirTextoAObjeto(accesorio); 
    //Aunque se devuelve un array, el elemento a devolver sería el primero (podría ser null)    
    return accesorios[0];     
 }
 
 function crearArticulo() {
    var articulo = ArticulosWebServiceSoapHttpPort_crearArticulo();
    var articulos = traducirTextoAObjeto(articulo); 
    //Aunque se devuelve un array, el elemento a devolver sería el primero (podría ser null)    
    return articulos[0];     
 } 
 
 function crearTipoAccesorio() {
    var tipoAccesorio = ArticulosWebServiceSoapHttpPort_crearTipoAccesorio();
    var tiposAccesorio = traducirTextoAObjeto(tipoAccesorio); 
    //Aunque se devuelve un array, el elemento a devolver sería el primero (podría ser null)    
    return tiposAccesorio[0];     
 } 
 
 function modificarArticulo(articulo) {
    var art = ArticulosWebServiceSoapHttpPort_modificarArticulo(articulo.codArticulo, articulo.alto, 
                                                                articulo.ancho, articulo.codAccesorio);     		
    var articulos = traducirTextoAObjeto(art);          
    //Aunque se devuelve un array, el elemento a devolver sería el primero (podría ser null)                
    return articulos[0]; 
 }
 
 function modificarTipoAccesorio(tipoAccesorio) {
    var tip = ArticulosWebServiceSoapHttpPort_modificarTipoAccesorio(tipoAccesorio.codTipoAccesorio, tipoAccesorio.nombre, 
                                                                     tipoAccesorio.descripcion);     		
    var tipos = traducirTextoAObjeto(tip);          
    //Aunque se devuelve un array, el elemento a devolver sería el primero (podría ser null)                
    return tipos[0]; 
 } 
 
 function modificarAccesorio(accesorio) {
    var acc = ArticulosWebServiceSoapHttpPort_modificarAccesorio(accesorio.codAccesorio, accesorio.nombre, 
                                                                 accesorio.descripcion, accesorio.foto, accesorio.precio,
                                                                 accesorio.alto, accesorio.ancho, accesorio.codTipoAccesorio,
                                                                 accesorio.codAccesorioTalla);     		
    var accesorios = traducirTextoAObjeto(acc);          
    //Aunque se devuelve un array, el elemento a devolver sería el primero (podría ser null)                
    return accesorios[0]; 
 }  
 

