irec entrevistas - CGastrell/phonegap GitHub Wiki
Entrevistas
Las entrevistas se van a almacenar en el archivo entrevistas.json
, el objeto entrevistas
sera muy parecido a guias
, pero a entrevistas
le daremos otro metodo: agregar
var entrevistas = {
lista: [],
ready: false,
initialize: function(){
entrevistas.obtenerEntrevistas(function(err, contents){
if(err) {
console.log('Error obteniendo el archivo de entrevistas');
entrevistas.lista = [];
}
if(contents) {
entrevistas.lista = JSON.parse(contents);
}
entrevistas.ready = true;
});
},
agregar: function(entrevista, callback) {
entrevistas.lista.push(entrevista);
entrevistas.guardarEntrevistas(function(){
console.log('entrevista agregada y guardada');
callback && callback(entrevista);
});
},
guardarEntrevistas: function(callback){
var entrevistasEnTexto = JSON.stringify(entrevistas.lista);
fileApi.writeTextFile('entrevistas.json', entrevistasEnTexto, function(){
callback && callback();
});
},
obtenerEntrevistas: function(callback) {
var onError = function(err) {
callback && callback(err, null);
}
var onFile = function(fileEntry) {
fileEntry.file(
function(fileObject){
var reader = new FileReader();
reader.onloadend = function(){
callback && callback(null, this.result);
}
reader.readAsText(fileObject);
},
onError
);
}
fileApi.dir.getFile('entrevistas.json', {create:true}, onFile, onError);
}
}
Nuevamente vamos a ubicar la llamada de inicializacion en el callback de fileApi.initialize
ya que entrevistas
depende de la correcta inicializacion de fileApi
:
fileApi.initialize(function(err, apiRef){
if(err) {
console.log('file api error');
console.log(err);
return;
}
guias.initialize();
entrevistas.initialize();
});
Esta vez no tenemos una funcion para crear una entrevista de prueba, pero en el proximo paso ya podremos empezar a crear entrevistas.