From 0faf7dfa6c0e266c7713c09bb4af924998c2a7a1 Mon Sep 17 00:00:00 2001 From: Yader Velásquez Date: Sat, 06 Nov 2010 23:15:07 +0000 Subject: bug 1 fixed --- (limited to 'archivo.py') diff --git a/archivo.py b/archivo.py index 180b160..3651db1 100644 --- a/archivo.py +++ b/archivo.py @@ -18,8 +18,12 @@ import gtk import pickle import gobject +import os +import logging from gettext import gettext as _ +_log = logging.getLogger('Log archivo') + def indice_entero(cadena): '''return an int from a string with tuple sintax''' cadena = cadena.replace('(','') @@ -27,38 +31,60 @@ def indice_entero(cadena): cadena = cadena.replace(')','') return int(cadena) -def crear_modelo(indice): +def crear_modelo(indice, path): '''create the liststore model for the main block''' - archivo = open('files/actividades.pkl', 'rb') - dia = pickle.load(archivo) - contar = 1 - modelo = gtk.ListStore(gobject.TYPE_INT, gobject.TYPE_STRING) + path = path + '/data/actividades.pkl' + modelo = gtk.ListStore(gobject.TYPE_INT, gobject.TYPE_STRING) vacio = _('no hay actividades para el día de hoy') - if dia.has_key(indice): - if len(dia[indice]): - for activ in dia[indice]: - modelo.append([contar, activ]) - contar += 1 - else: - modelo.append([0, vacio]) - else : - modelo.append([0, vacio]) + if not os.path.exists(path): + _log.debug('THE FILE ACTIVIDADES DID NOT EXISTS') + archivo = open(path, 'wb') + dia = {} + pickle.dump(dia, archivo) + modelo.append([0, vacio]) + + else: + _log.debug('THE FILE EXISTS') + archivo = open(path, 'rb') + dia = pickle.load(archivo) + contar = 1 + if dia.has_key(indice): + if len(dia[indice]): + for activ in dia[indice]: + modelo.append([contar, activ]) + contar += 1 + else: + modelo.append([0, vacio]) + else : + modelo.append([0, vacio]) archivo.close() return modelo -def abrir_efemeride(): +def abrir_efemeride(path): '''open the ephemeris file and return a data dictionary''' - archivo = open('files/efemerides.pkl', 'rb') - texto = pickle.load(archivo) + path = path + '/data/efemerides.pkl' + + if not os.path.exists(path): + _log.debug('THE FILE EFEMERIDES DID NOT EXISTS') + archivo = open(path, 'wb') + texto = {} + pickle.dump(texto, archivo) + + else: + _log.debug('THE FILE EXISTS') + archivo = open(path, 'rb') + texto = pickle.load(archivo) + return texto -def guardar_dato(indice, contenido): +def guardar_dato(indice, contenido, path): '''save the content in a file, add the content to a dictionary->list''' + path = path + '/data/actividades.pkl' indice = str(indice) - f = open('files/actividades.pkl', 'rb+wb') + f = open(path, 'rb+wb') dia = pickle.load(f) if dia.has_key(indice) is False: dia[indice] = [] @@ -68,12 +94,13 @@ def guardar_dato(indice, contenido): f.flush() f.close() -def borrar_dato(indice, indice_lista): +def borrar_dato(indice, indice_lista, path): '''delete the selected content''' + path = path + '/data/actividades.pkl' indice_lista = str(indice_lista) indice = str(indice) indice_lista = indice_entero(indice_lista) - f = open('files/actividades.pkl', 'rb+wb') + f = open(path, 'rb+wb') dia = pickle.load(f) del dia[indice][indice_lista] f.seek(0) -- cgit v0.9.1