﻿# -*- coding: utf-8 -*-#

__author__='Mario Lacunza <mlacunza@gmail.com>'
__version__='2.0'

import wx
import wx.lib.buttons
import modGlobals
from Main import Main
from segur import Seguridad


class Archivero(wx.Frame):
    def __init__(self,prnt):
        wx.Frame.__init__(self, parent=prnt, id=-1, title=u'ArchiveroDB', size=(780,550), style=wx.DEFAULT_FRAME_STYLE)
        self.SetClientSize(wx.Size(780,550))
        self.Center(wx.BOTH)
        
        self.panel1 = wx.Panel(id=-1, name='panel1', parent=self, pos=wx.Point(0, 0), size=wx.Size(780, 550))
        
        self.App=modGlobals.APP_PATH
        self.CargarImagenes()
        
        self.btnCatalogo = wx.lib.buttons.GenBitmapTextButton(bitmap=self.icat, parent=self.panel1, id=-1, label=u'A - CAT\xc1LOGO', pos=wx.Point(20, 40),size=wx.Size(180, 70), style=0)
        self.btnCatalogo.SetToolTipString(u'Catálogo')
        self.Bind(wx.EVT_BUTTON, self.OnBtnCatalogoButton, self.btnCatalogo)

        self.btnUsuarios = wx.lib.buttons.GenBitmapTextButton(bitmap=self.iuser,
              id=-1, label=u'B - USUARIOS',
              name=u'btnUsuarios', parent=self.panel1, pos=wx.Point(300, 40),
              size=wx.Size(180, 70), style=0)
        self.btnUsuarios.SetToolTipString(u'Usuarios')
        self.btnUsuarios.Bind(wx.EVT_BUTTON, self.OnBtnUsuariosButton,
              self.btnUsuarios)
        
        self.btnCirculacion = wx.lib.buttons.GenBitmapTextButton(bitmap=self.icircu,
              id=-1, label=u'C - CIRCULACI\xd3N',
              name=u'btnCirculacion', parent=self.panel1, pos=wx.Point(580, 40),
              size=wx.Size(180, 70), style=0)
        self.btnCirculacion.SetToolTipString(u'Circulación')
        self.btnCirculacion.Bind(wx.EVT_BUTTON, self.OnBtnCirculacionButton,
              self.btnCirculacion)
        
        self.btnReportes = wx.lib.buttons.GenBitmapTextButton(bitmap=self.irepo,
              id=-1, label=u'D - REPORTES',
              name=u'btnReportes', parent=self.panel1, pos=wx.Point(20, 210),
              size=wx.Size(180, 70), style=0)
        self.btnReportes.SetToolTipString(u'Reportes')
        self.btnReportes.Bind(wx.EVT_BUTTON, self.OnBtnReportesButton,
              self.btnReportes)
        
        self.btnBusquedas = wx.lib.buttons.GenBitmapTextButton(bitmap=self.ibusq,
              id=-1, label=u'E - B\xdaSQUEDAS',
              name=u'btnBusquedas', parent=self.panel1, pos=wx.Point(300, 210),
              size=wx.Size(180, 70), style=0)
        self.btnBusquedas.SetToolTipString(u'B\xfasquedas')
        self.btnBusquedas.Bind(wx.EVT_BUTTON, self.OnBtnBusquedasButton,
              self.btnBusquedas)
        
        self.btnBackup = wx.lib.buttons.GenBitmapTextButton(bitmap=self.ibkp,
              id=-1, label=u'F - BACKUP', name=u'btnBackup',
              parent=self.panel1, pos=wx.Point(580, 210), size=wx.Size(180, 70),
              style=0)
        self.btnBackup.SetToolTipString(u'Backup')
        self.btnBackup.Bind(wx.EVT_BUTTON, self.OnBtnBackupButton,self.btnBackup)
        
        self.btnReclamos = wx.lib.buttons.GenBitmapTextButton(bitmap=self.irecla,
              id=-1, label=u'CONTROL DE RECLAMOS',
              name=u'btnReclamos', parent=self.panel1, pos=wx.Point(185, 360),
              size=wx.Size(180, 70), style=0)
        self.btnReclamos.SetToolTipString(u'Reclamos')
        self.btnReclamos.Bind(wx.EVT_BUTTON, self.OnBtnReclamosButton,self.btnReclamos)
        
        self.btnManten = wx.lib.buttons.GenBitmapTextButton(bitmap=self.imant,
              id=-1, label=u'MANTENIMIENTO', name=u'btnManten',
              parent=self.panel1, pos=wx.Point(300, 360), size=wx.Size(180, 70),
              style=0)
        self.btnManten.SetToolTipString(u'Mantenimiento')
        self.btnManten.Bind(wx.EVT_BUTTON, self.OnBtnMantenButton,
              self.btnManten)
        
        self.btnSalir = wx.lib.buttons.GenBitmapTextButton(bitmap=self.isal,
              id=-1, label=u'Salir', name=u'btnSalir',
              parent=self.panel1, pos=wx.Point(415, 360), size=wx.Size(180, 70),
              style=0)
        self.btnSalir.SetToolTipString(u'Salir')
        self.btnSalir.Bind(wx.EVT_BUTTON, self.OnBtnSalirButton,
              self.btnSalir)
        
        #Inhabilita el btn
        self.btnReclamos.Enable(False)
        
        #Sizers
        bsArch= wx.BoxSizer(wx.VERTICAL)
        fgArch=wx.FlexGridSizer(rows=3, cols=3, vgap=0, hgap=0)
        fgArch.AddGrowableCol(0)
        #fgArch.AddGrowableCol(1)
        #fgArch.AddGrowableCol(2)
        fgArch.AddGrowableRow(0)
        fgArch.AddGrowableRow(1)
        fgArch.AddGrowableRow(2)
        
        fgArch.Add(self.btnCatalogo,0,wx.EXPAND)
        fgArch.Add(self.btnUsuarios,0,wx.EXPAND)
        fgArch.Add(self.btnCirculacion,0,wx.EXPAND)
        fgArch.Add(self.btnReportes,0,wx.EXPAND)
        fgArch.Add(self.btnBusquedas,0,wx.EXPAND)
        fgArch.Add(self.btnBackup,0,wx.EXPAND)
        fgArch.Add(self.btnReclamos,0,wx.EXPAND)
        fgArch.Add(self.btnManten,0,wx.EXPAND)
        fgArch.Add(self.btnSalir,0,wx.EXPAND)
        
        bsArch.Add(fgArch,0,wx.EXPAND,10)
        
        self.panel1.SetSizer(bsArch)
        bsArch.Fit(self)
        bsArch.SetSizeHints(self)
        
        omm=Main()
        omm.DefinePath()
        
        #Implementa objeto de Seguridad
        self.oSegur=Seguridad()
        
#-------------------------------------------------------------------------------
    def OnClickbtnCatalogo(self, event):
        pass

#-------------------------------------------------------------------------------

    def OnBtnCatalogoButton(self, event):
        event.Skip()
#-------------------------------------------------------------------------------
    def OnBtnUsuariosButton(self, event):
        import frmUsuarios
        usr=frmUsuarios.create(None)
        usr.Show()
#-------------------------------------------------------------------------------

    def OnBtnCirculacionButton(self, event):
        event.Skip()

    def OnBtnReportesButton(self, event):
        event.Skip()

    def OnBtnBusquedasButton(self, event):
        event.Skip()
#-------------------------------------------------------------------------------

    def OnBtnBackupButton(self, event):
        import frmBackup
        nombre=frmBackup.__modulo__

        if self.oSegur.VerificaAx(nombre)==True:
            bkp=frmBackup.create(None)
            bkp.Show()
        else:
            dlg = wx.MessageDialog(self, 'Usted no tiene Acceso a este Módulo', 'ArchiveroBD', wx.OK | wx.ICON_INFORMATION)
            try:
                result = dlg.ShowModal()
            finally:
                dlg.Destroy()

#-------------------------------------------------------------------------------

    def OnBtnReclamosButton(self, event):
        event.Skip()

#-------------------------------------------------------------------------------
    def OnBtnSalirButton(self, event):
        self.Close()

#-------------------------------------------------------------------------------
    def OnBtnMantenButton(self, event):
        event.Skip()

#-------------------------------------------------------------------------------

    def CargarImagenes(self):

        self.icat = wx.Image(self.App+'/iconos/catalog48.png', wx.BITMAP_TYPE_PNG).ConvertToBitmap()
        self.iuser = wx.Image(self.App+'/iconos/Usuario48.png', wx.BITMAP_TYPE_PNG).ConvertToBitmap()
        self.icircu = wx.Image(self.App+'/iconos/circulacion48.png', wx.BITMAP_TYPE_PNG).ConvertToBitmap()
        self.irepo = wx.Image(self.App+'/iconos/reportes48.png', wx.BITMAP_TYPE_PNG).ConvertToBitmap()
        self.ibusq = wx.Image(self.App+'/iconos/busqueda.png', wx.BITMAP_TYPE_PNG).ConvertToBitmap()
        self.ibkp = wx.Image(self.App+'/iconos/backup48.png', wx.BITMAP_TYPE_PNG).ConvertToBitmap()
        self.irecla = wx.Image(self.App+'/iconos/Reclamos48.png', wx.BITMAP_TYPE_PNG).ConvertToBitmap()
        self.isal = wx.Image(self.App+'/iconos/salir.png', wx.BITMAP_TYPE_PNG).ConvertToBitmap()
        self.imant = wx.Image(self.App+'/iconos/mant.png', wx.BITMAP_TYPE_PNG).ConvertToBitmap()
#-------------------------------------------------------------------------------
