예제 #1
0
파일: conexion.py 프로젝트: dravix/pyventa
class Conexion:
    def __init__(self, parent, config=False,datos=False):
	self.parent=parent
	if datos and isinstance(datos,dict) and len(datos)>0:
	  self._host=datos['host']
	  self._user=datos['user']
	  self._pass=datos['pass']
	  self._schema=datos['schema']
	  self.conectar()
	else:
	  if not config:
	    self.cfg = Configurador(parent)
	  else :
	    self.cfg=config
	  if self.cfg.stat:
	    self._host=self.cfg.getDato('mysql','host')
	    self._user=self.cfg.getDato('mysql','user')
	    self._pass=base64.b64decode(self.cfg.getDato('mysql','pass'))
	    self._schema=self.cfg.getDato('mysql','db')
	    self.conectar()
	  else:
	    self.stat=False

    def asistente(self):
	print "Configurando base de datos"
	ui = BDConfig(self.cfg)
	dialog=ui.exec_()
	if (dialog==1):
	  self.__init__(self.parent)  
	else:
	  self.stat=False
    
    def lastId(self):
      if self.cfg.getDato('pyventa','motor')=="sqlite3":
       return "SELECT last_insert_rowid();"
      else:
	return "SELECT LAST_INSERT_ID();"
      

    def conectar(self):
      if self.cfg.getDato('pyventa','motor')=="sqlite3":
	dbpath=os.path.join(home,"pyventa.sqlite")
	if os.path.exists(dbpath):
	  self.db=sqlite3.connect(dbpath)
	  self.db.create_function("NOW", 0, ahora)
	  self.db.create_function("CURDATE", 0, hoy)
	  self.db.create_function("DATE_FORMAT", 2, dateformat)
	  self.db.create_function("ELT", -1, elt)
	  self.cursor=self.db.cursor()
	  self.curser=self.db.cursor()
	  self.stat=True
	else:
	  try:
	    shutil.copy("perfil/pyventa.sqlite",dbpath)
	  except shutil.Error, e:
	    print "No se encontro el archivo de la base de datos y no se pudo copiar una nueva"
	    raise(e)
	  else:
	    self.conectar()
예제 #2
0
파일: config.py 프로젝트: dravix/pyventa
    def recargar(self,modulo):
	  for key in self.modulos[modulo]:
	      try:
		print self.modulos[modulo][key].text()
		self.cfg.set(modulo,key,str(self.modulos[modulo][key].text()))
	      except:
		pass
	  self.cfg.guardar()
	  self.kfg=Configurador()
	  msgBox=QtGui.QMessageBox()
	  msgBox.setText("Se han guardado las configuraciones")	
	  msgBox.setStandardButtons(QtGui.QMessageBox.Ok | QtGui.QMessageBox.Cancel)
	  msgBox.exec_()
예제 #3
0
파일: padmin.py 프로젝트: dravix/pyventa
    def __init__(self):
		QDialog.__init__(self)
		self.setupUi(self)
		self.curser=None
		self.cursor=None
		self.home=home
		self.cfg=Configurador(self)
		if self.cfg.stat:
		  self.conexion=Conexion(self,self.cfg)
		  if self.conexion.stat:
		    self.cursor=self.conexion.cursor
		    self.curser=self.conexion.curser
		    self.conexion.db.text_factory = str
		    self.iniciarEstilo()
		    self.iniciarSesion()
		else:
		  print "Error al iniciar configuraciones"
		  sys.exit()
		#Inicio de funciones
		self.showMaximized()
		self.stack.setCurrentIndex(1)
		self.impuesto=Impuestos(self)
		self.departamento=Departamentos(self)
		self.familia=Familias(self)		
		self.unidad=Unidades(self)
		self.productos=Productos(self)
		self.clientes=Clientes(self,True)
		self.proveedores=Proveedores(self,True)
		self.usuarios=Usuarios(self)
		self.ofertas=Oferta(self)
		self.cajas=Cajas(self,True)
		self.inv=Inventario(self)
		self.faltantes=Faltantes(self)
		self.compras=Compras(self)
		try:
		  self.conexiones=Conexiones(self)
		except:
		  self.tConexiones.setVisible()
		#Inicio de combos
		self.iniciarCombos()
		#self.familias=self.familia.getLista()
		self.menuHerramientas.addAction("Recargar estilo",self.iniciarEstilo)
		self.iniciarEstilo()
예제 #4
0
파일: conexion.py 프로젝트: dravix/pyventa
    def __init__(self, parent, config=False,datos=False):
	self.parent=parent
	if datos and isinstance(datos,dict) and len(datos)>0:
	  self._host=datos['host']
	  self._user=datos['user']
	  self._pass=datos['pass']
	  self._schema=datos['schema']
	  self.conectar()
	else:
	  if not config:
	    self.cfg = Configurador(parent)
	  else :
	    self.cfg=config
	  if self.cfg.stat:
	    self._host=self.cfg.getDato('mysql','host')
	    self._user=self.cfg.getDato('mysql','user')
	    self._pass=base64.b64decode(self.cfg.getDato('mysql','pass'))
	    self._schema=self.cfg.getDato('mysql','db')
	    self.conectar()
	  else:
	    self.stat=False
예제 #5
0
파일: padmin.py 프로젝트: dravix/pyventa
class Administrador(QMainWindow, Ui_admin):  
    def __init__(self):
		QDialog.__init__(self)
		self.setupUi(self)
		self.curser=None
		self.cursor=None
		self.home=home
		self.cfg=Configurador(self)
		if self.cfg.stat:
		  self.conexion=Conexion(self,self.cfg)
		  if self.conexion.stat:
		    self.cursor=self.conexion.cursor
		    self.curser=self.conexion.curser
		    self.conexion.db.text_factory = str
		    self.iniciarEstilo()
		    self.iniciarSesion()
		else:
		  print "Error al iniciar configuraciones"
		  sys.exit()
		#Inicio de funciones
		self.showMaximized()
		self.stack.setCurrentIndex(1)
		self.impuesto=Impuestos(self)
		self.departamento=Departamentos(self)
		self.familia=Familias(self)		
		self.unidad=Unidades(self)
		self.productos=Productos(self)
		self.clientes=Clientes(self,True)
		self.proveedores=Proveedores(self,True)
		self.usuarios=Usuarios(self)
		self.ofertas=Oferta(self)
		self.cajas=Cajas(self,True)
		self.inv=Inventario(self)
		self.faltantes=Faltantes(self)
		self.compras=Compras(self)
		try:
		  self.conexiones=Conexiones(self)
		except:
		  self.tConexiones.setVisible()
		#Inicio de combos
		self.iniciarCombos()
		#self.familias=self.familia.getLista()
		self.menuHerramientas.addAction("Recargar estilo",self.iniciarEstilo)
		self.iniciarEstilo()
    
    def conexion():
      self.conexion=Conexion(self,self.cfg)
      if self.conexion.stat:
	self.cursor=self.conexion.cursor
	self.curser=self.conexion.curser
	self.iniciarEstilo()
	self.iniciarSesion()

    def iniciarEstilo(self):
	 try:
	  kcss = open(os.path.join(os.path.dirname(os.path.realpath(__file__)),"perfil","estilos",self.cfg.get("pyventa","estilo")),"r")
	  estilo=kcss.read()
	  self.setStyleSheet(estilo)
	  kcss.close()	
	 except:
	    try:
		kcss = open(os.path.join(self.home,"estilos",self.cfg.get("pyventa","estilo")),"r")
		estilo=kcss.read()
		self.setStyleSheet(estilo)
		kcss.close()	
	    except:
		print "No se cargo el estilo "+self.cfg.get("pyventa","estilo")
    	
    def iniciarSesion(self):
	dlg=Seguridad(self,nivel=5,logo=":/actions/images/padmin.simple.logo.png", nombre="Administrador de Pyventa")
	acceso=dlg.exec_()
	if acceso>-1:
	  self.usuario=dlg.usuario
	  self.cursor=dlg.cursor
	  self.curser=dlg.curser
	else:
	  sys.exit()
	  
    def iniciarCombos(self):
	#self.cbpDepartamentos.clear()
	#self.cbpFamilias.clear()
	self.cbeFamilias.clear()
	self.cbeImpuestos.clear()
	self.cbeUnidades.clear()
	
	#combo=self.departamento.getModelo()
	#self.cbpDepartamentos.setModel(combo)
	#self.cbpDepartamentos.setModelColumn(1)
	
	#self.cbpFamilias.setModel(self.familia.getModelo())
	self.cbeFamilias.setModel(self.familia.getModelo())
	#self.cbpFamilias.setModelColumn(1)
	self.cbeFamilias.setModelColumn(1)
	
	self.cbeImpuestos.setModel(self.impuesto.getModelo())
	self.cbeImpuestos.setModelColumn(1)
	
	self.cbeUnidades.setModel(self.unidad.getModelo())
	self.cbeUnidades.setModelColumn(1)
	
    def goHome(self):
	self.stack.setCurrentIndex(0)
	#self.tbrProductos.hide()


	    
    def tabular(self,tabla,sql,head):
#Recibe una consulta de sql la ejecuta y tabula el resultado
	    lista=[]
	    try:
	      self.cursor.execute(sql)
	      result = self.cursor.fetchall()
	    except MySQLdb.Error, e:
	      print e
	    else:
예제 #6
0
파일: config.py 프로젝트: dravix/pyventa
class Configs(QtGui.QDialog, Ui_Form):
    def __init__(self,parent,id=0):
	QtGui.QDialog.__init__(self)
	self.setupUi(self)
	self.stack.setCurrentIndex(0)
	self.curser=parent.curser
	self.cursor=parent.cursor
	self.datos={'nombre':"Configurador",'descripcion':"Configura el funcionamiento del programa, ademas de guardar las personalizaciones .",'version':"0.05",'id':id,'nivel':2}
	self.id=id
	self.parent=parent
	self.action = QtGui.QAction(self)
	self.action.setObjectName(self.datos['nombre']+str(id))
	self.action.setToolTip("Configuraciones globales de este punto de venta.") 
	#self.action.setShortcut("F4")
	#self.action.setShortcut(QtGui.QApplication.translate("Principal", "F4", None, QtGui.QApplication.UnicodeUTF8))
	icono = QtGui.QIcon()
	icono.addPixmap(QtGui.QPixmap(":/modulos/images/png/elegant/config.png"), 0, QtGui.QIcon.Off)
	self.icono=":/modulos/images/png/elegant/config.png"
	icono.addPixmap(QtGui.QPixmap(self.icono), 2, QtGui.QIcon.Off)
	self.action.setIcon(icono)
	self.action.setIconVisibleInMenu(True)

	self.action.setText(self.datos['nombre'])
	#self.connect(self.action, QtCore.SIGNAL("triggered()"), lambda: parent.stackMove(self.id) )
	self.connect(self.action, QtCore.SIGNAL("triggered()"), self.launch )

	#self.connect(self.benter, QtCore.SIGNAL("clicked()"), lambda: self.stack.setCurrentIndex(1) )
	#self.connect(self.bdata, QtCore.SIGNAL("clicked()"), lambda: self.stack.setCurrentIndex(0) )
	#self.connect(self.bpyventa, QtCore.SIGNAL("clicked()"), lambda: self.stack.setCurrentIndex(2) )
	#self.connect(self.tbFormas, QtCore.SIGNAL("clicked()"), lambda: self.stack.setCurrentIndex(3) )
	#self.connect(self.bRespaldo, QtCore.SIGNAL("clicked()"), lambda: self.stack.setCurrentIndex(4) )
	self.connect(self.cbPath, QtCore.SIGNAL("clicked()"),  self.cambiarFolderFacturas )
	self.connect(self.ctPrinter, QtCore.SIGNAL("clicked()"),  self.cambiarImpresoraTickets )
	self.connect(self.pbEditar, QtCore.SIGNAL("clicked()"),  self.editar )
	
	#self.connect(parent.stack, QtCore.SIGNAL("currentChanged(int)"),lambda: parent.aut(self.id,2) )
	#self.connect(self.tablaImpuestos, QtCore.SIGNAL("currentItemChanged(QTableWidgetItem*,QTableWidgetItem*)"), self.cambiarImp)
	#self.connect(parent.stack, QtCore.SIGNAL("currentChanged(int)"), self.inicia)
	self.connect(self.rlBackup, QtCore.SIGNAL("clicked()"), self.respaldarLocal)
	self.connect(self.cpgrespaldo, QtCore.SIGNAL("clicked()"), self.respaldarRemoto)
	self.connect(self.rsServer, QtCore.SIGNAL("editingFinished ()"), lambda: self.setCambio('respaldo','server',self.rsServer.text()))
	self.connect(self.rsUser, QtCore.SIGNAL("editingFinished ()"), lambda: self.setCambio('respaldo','user',self.rsUser.text()))
	self.connect(self.rsPass, QtCore.SIGNAL("editingFinished ()"), lambda: self.setCambio('respaldo','pass',self.rsPass.text()))
	self.connect(self.rsPath, QtCore.SIGNAL("editingFinished ()"), lambda: self.setCambio('respaldo','rpath',self.rsPath.text()))
	self.connect(self.rlPeriod, QtCore.SIGNAL("valueChanged ( int )"), lambda: self.setCambio('respaldo','autolocal',self.rlPeriod.value()))
	self.connect(self.rsPeriod, QtCore.SIGNAL("valueChanged ( int )"), lambda: self.setCambio('respaldo','autoremoto',self.rsPeriod.value()))
	self.connect(self.bprobar, QtCore.SIGNAL("clicked()"), self.conexion )
	self.connect(self.bset, QtCore.SIGNAL("clicked()"), self.setDB )
	self.connect(self.bclose, QtCore.SIGNAL("clicked()"), self.close )
	self.connect(self.bcreate, QtCore.SIGNAL("clicked()"), self.crearDB )
	self.connect(self.brecargar, QtCore.SIGNAL("clicked()"),lambda: self.recargar('empresa') )
	self.connect(self.cbEstilos,QtCore.SIGNAL("activated(const QString)"),self.cambiarEstilo)
	self.connect(self.cbPrinters,QtCore.SIGNAL("activated(const QString)"),self.setPrinter)
	self.connect(self.cbDrivers,QtCore.SIGNAL("activated(const QString)"),self.setDriver)
	self.connect(self.clrExplorar,QtCore.SIGNAL("clicked()"),self.cambiarFolderRespaldo)
	self.connect(self.cbpreview,QtCore.SIGNAL("clicked()"),self.editarTicket)
	self.connect(self.pbfEditar,QtCore.SIGNAL("clicked()"),self.editarFactura)
	self.connect(self.pbpEditar_,QtCore.SIGNAL("clicked()"),self.editarPresupuesto)
	self.connect(self.pbEditarCorte,QtCore.SIGNAL("clicked()"),self.editarCorte)
	self.connect(self.rlRestore,QtCore.SIGNAL("clicked()"),self.restaurar)
	self.connect(self.rlRestoreDB,QtCore.SIGNAL("clicked()"),lambda:self.restaurar(True,False))		
	self.connect(self.rlRestoreConf,QtCore.SIGNAL("clicked()"),lambda:self.restaurar(False,True))		
	self.connect(self.sbCaja,QtCore.SIGNAL("editingFinished ()"),lambda: self.setCambio('pyventa','caja',self.sbCaja.value()))		
	self.connect(self.tbBuscarCaja,QtCore.SIGNAL("clicked()"),self.buscador)
	self.connect(self.tbLogo,QtCore.SIGNAL("clicked()"),self.cambiarLogo)
	self.connect(self.tbRecargarEstilo,QtCore.SIGNAL("clicked()"),self.parent.iniciarEstilo)
	self.connect(self.chbRecibePagos,QtCore.SIGNAL("stateChanged ( int  )"),self.setRecibePagos)
	self.connect(self.chbImprimirCopia,QtCore.SIGNAL("stateChanged ( int  )"),self.setImprimeCopiaRecibo)
	self.connect(self.chbImprimirTicket,QtCore.SIGNAL("stateChanged ( int  )"),self.setImprimeTicket)

	#self.connect(self.gbTickets,QtCore.SIGNAL("clicked()"),lambda: self.setCambio('ticket','default',self.boolint(self.gbTickets.isChecked())))
	#self.connect(self.gbFacturas,QtCore.SIGNAL("clicked()"),lambda: self.setCambio('facturas','default',self.boolint(self.gbFacturas.isChecked())))		#self.connect(self.bfSave, QtCore.SIGNAL("clicked()"), self.cambiarFolderFacturas )
	self.mysql={'host':'','user':'','pass':'','db':'tpv'}
	self.mysql['db']='tpv'
	self.ruta=join(self.parent.home,"config.cfg")
	#self.cfg = ConfigParser.ConfigParser()
	self.modulos={'empresa':{},'respaldo':{},'mysql':{},'ticket':{},'factura':{},'nota':{},'pyventa':{}}
	self.inicia()
	self.checkRespaldo()
	self.setupMenus()
	#self.listarImp()
		
    def launch(self):
      if self.parent.aut(self.datos['nivel'])>0:
	self.show()

    def inicia(self):
	self.kfg=Configurador()
	if (self.kfg.cfg!=None):
	    self.cfg=self.kfg
	    mysql=['host','user','pass','db']
	    for key in mysql:
	      if self.cfg.has_option("mysql", key):
		self.mysql[key]=self.kfg.getDato('mysql',key)

	    self.modulos['empresa']['nombre']=self.lenombre
	    self.modulos['empresa']['rfc']=self.lerfc
	    self.modulos['empresa']['slogan']=self.leslogan
	    self.modulos['empresa']['direccion']=self.ledir
	    self.modulos['empresa']['ciudad']=self.leciudad
	    self.modulos['empresa']['estado']=self.leestado
	    self.modulos['empresa']['cp']=self.lecp
	    self.modulos['empresa']['email']=self.lemail
	    self.modulos['empresa']['telefono']=self.letel
	    self.modulos['empresa']['pagina']=self.leweb
	    self.modulos['empresa']['logo']=self.leLogo
	    
	    self.lblLogo.setPixmap(QtGui.QPixmap(self.kfg.getDato('empresa','logo')))
	    
	    self.modulos['mysql']['host']=self.tserver
	    self.modulos['mysql']['user']=self.tuser
	    self.modulos['mysql']['pass']=self.tpass
	    self.modulos['mysql']['db']=self.tdb

	    self.modulos['respaldo']['lpath']=self.rlPath
	    self.modulos['respaldo']['server']=self.rsServer
	    self.modulos['respaldo']['user']=self.rsUser
	    self.modulos['respaldo']['pass']=self.rsPass
	    self.modulos['respaldo']['rpath']=self.rsPath

	    remoto=self.kfg.getDato('respaldo','remoto')
	    local=self.kfg.getDato('respaldo','local')
	    #if (remoto!=1):
		#self.gbRemoto.setChecked(False)
	    #if local!=1:
		#self.gbLocal.setChecked(False)
	      
	    for modulo in self.modulos:
	      for key in self.modulos[modulo]:
		try:
		  self.modulos[modulo][key].setText(self.kfg.getDato(modulo,key))
		except:
		  pass
	    self.sbCaja.setValue(float(self.kfg.getDato("pyventa","caja")))
	    self.chbRecibePagos.setCheckState(int(self.kfg.getDato("pyventa","cobra")))
	    #self.gbTickets.setChecked(bool(int(self.kfg.getDato("ticket","default"))))
	    #self.gbFacturas.setChecked(bool(int(self.kfg.getDato("factura","default"))))
	    self.gbBox.setChecked(bool(int(self.kfg.getDato("pyventa","caja"))))
	for  files in os.walk(join(self.parent.home,"estilos")):
	    for i,name in enumerate(files[2]):
		  tipo=name.split('.')
		  if tipo[1]=='css':
		    self.cbEstilos.addItem(str(name))
	
	#----Impresiones
	try:
	  conn = cups.Connection ()
	  printers = conn.getPrinters()
	  self.cbPrinters.addItems([str(p) for p in conn.getPrinters ()])
	  self.cbPrinters.setCurrentIndex(self.cbPrinters.findText(self.kfg.getDato("ticket","impresora")))
	except:
	  self.cbPrinters.addItem("Predeterminada")
	  
	self.dsbCopia.setValue(float(self.kfg.getDato("ticket","copia-trigger")))  
	self.dsbTicketTigger.setValue(float(self.kfg.getDato("ticket","trigger")))  	
	self.chbImprimirCopia.setCheckState(int(self.kfg.getDato("ticket","copia")))  
	self.chbImprimirTicket.setCheckState(int(self.kfg.getDato("ticket","default")))  
	driverpath=join(self.parent.home,'drivers')
	self.cbDrivers.addItems([ f[0:-3] for f in os.listdir(driverpath) if isfile(join(driverpath,f)) and f[-1]=='y' ])
	self.cbDrivers.setCurrentIndex(self.cbDrivers.findText(self.kfg.getDato("ticket","driver")))

	
    def setupMenus(self):
      respaldos=self.parent.menuPyventa.addMenu("Respaldos")
      respaldos.addAction("Generar respaldo",self.respaldarLocal)
      respaldos.addAction("Restaurar todo",lambda:self.restaurar(True,True))
      
      respaldos.addSeparator()
      respaldos.addAction("Restaurar base de datos",lambda:self.restaurar(True,False))
      respaldos.addAction("Restaurar configuraciones",lambda:self.restaurar(False,True))
      
      self.parent.menuHerramientas.addAction("Configuraciones",self.launch)

      
    def cambiarLogo(self):
	  File = QtGui.QFileDialog()
	  saveFile = str(File.getOpenFileName(self, "Seleccione la imagen",expanduser("~"),self.tr("Imagenes (*.png *.jpg *.jpeg)")))
	  if (saveFile!=""):
	    self.lblLogo.setPixmap(QtGui.QPixmap(saveFile))
	    self.leLogo.setText(saveFile)
	    self.setCambio('empresa','logo',saveFile)
	    
    def recargar(self,modulo):
	  for key in self.modulos[modulo]:
	      try:
		print self.modulos[modulo][key].text()
		self.cfg.set(modulo,key,str(self.modulos[modulo][key].text()))
	      except:
		pass
	  self.cfg.guardar()
	  self.kfg=Configurador()
	  msgBox=QtGui.QMessageBox()
	  msgBox.setText("Se han guardado las configuraciones")	
	  msgBox.setStandardButtons(QtGui.QMessageBox.Ok | QtGui.QMessageBox.Cancel)
	  msgBox.exec_()
	  
    def setCambio(self,modulo,propiedad,valor):
	      try:
		self.cfg.set(str(modulo),str(propiedad),str(valor))
	      except ConfigParser.Error,e:
		print "({0},{1},{2}), No se guardo la configuracion".format(modulo,propiedad,valor),e
	      else:
예제 #7
0
파일: config.py 프로젝트: dravix/pyventa
    def inicia(self):
	self.kfg=Configurador()
	if (self.kfg.cfg!=None):
	    self.cfg=self.kfg
	    mysql=['host','user','pass','db']
	    for key in mysql:
	      if self.cfg.has_option("mysql", key):
		self.mysql[key]=self.kfg.getDato('mysql',key)

	    self.modulos['empresa']['nombre']=self.lenombre
	    self.modulos['empresa']['rfc']=self.lerfc
	    self.modulos['empresa']['slogan']=self.leslogan
	    self.modulos['empresa']['direccion']=self.ledir
	    self.modulos['empresa']['ciudad']=self.leciudad
	    self.modulos['empresa']['estado']=self.leestado
	    self.modulos['empresa']['cp']=self.lecp
	    self.modulos['empresa']['email']=self.lemail
	    self.modulos['empresa']['telefono']=self.letel
	    self.modulos['empresa']['pagina']=self.leweb
	    self.modulos['empresa']['logo']=self.leLogo
	    
	    self.lblLogo.setPixmap(QtGui.QPixmap(self.kfg.getDato('empresa','logo')))
	    
	    self.modulos['mysql']['host']=self.tserver
	    self.modulos['mysql']['user']=self.tuser
	    self.modulos['mysql']['pass']=self.tpass
	    self.modulos['mysql']['db']=self.tdb

	    self.modulos['respaldo']['lpath']=self.rlPath
	    self.modulos['respaldo']['server']=self.rsServer
	    self.modulos['respaldo']['user']=self.rsUser
	    self.modulos['respaldo']['pass']=self.rsPass
	    self.modulos['respaldo']['rpath']=self.rsPath

	    remoto=self.kfg.getDato('respaldo','remoto')
	    local=self.kfg.getDato('respaldo','local')
	    #if (remoto!=1):
		#self.gbRemoto.setChecked(False)
	    #if local!=1:
		#self.gbLocal.setChecked(False)
	      
	    for modulo in self.modulos:
	      for key in self.modulos[modulo]:
		try:
		  self.modulos[modulo][key].setText(self.kfg.getDato(modulo,key))
		except:
		  pass
	    self.sbCaja.setValue(float(self.kfg.getDato("pyventa","caja")))
	    self.chbRecibePagos.setCheckState(int(self.kfg.getDato("pyventa","cobra")))
	    #self.gbTickets.setChecked(bool(int(self.kfg.getDato("ticket","default"))))
	    #self.gbFacturas.setChecked(bool(int(self.kfg.getDato("factura","default"))))
	    self.gbBox.setChecked(bool(int(self.kfg.getDato("pyventa","caja"))))
	for  files in os.walk(join(self.parent.home,"estilos")):
	    for i,name in enumerate(files[2]):
		  tipo=name.split('.')
		  if tipo[1]=='css':
		    self.cbEstilos.addItem(str(name))
	
	#----Impresiones
	try:
	  conn = cups.Connection ()
	  printers = conn.getPrinters()
	  self.cbPrinters.addItems([str(p) for p in conn.getPrinters ()])
	  self.cbPrinters.setCurrentIndex(self.cbPrinters.findText(self.kfg.getDato("ticket","impresora")))
	except:
	  self.cbPrinters.addItem("Predeterminada")
	  
	self.dsbCopia.setValue(float(self.kfg.getDato("ticket","copia-trigger")))  
	self.dsbTicketTigger.setValue(float(self.kfg.getDato("ticket","trigger")))  	
	self.chbImprimirCopia.setCheckState(int(self.kfg.getDato("ticket","copia")))  
	self.chbImprimirTicket.setCheckState(int(self.kfg.getDato("ticket","default")))  
	driverpath=join(self.parent.home,'drivers')
	self.cbDrivers.addItems([ f[0:-3] for f in os.listdir(driverpath) if isfile(join(driverpath,f)) and f[-1]=='y' ])
	self.cbDrivers.setCurrentIndex(self.cbDrivers.findText(self.kfg.getDato("ticket","driver")))