def save_to_disk(self, exit_imminent=False, changing_journal=False, saveas=False): self.save_old_day() try: filesystem.make_directory(self.dirs.data_dir) except (OSError, IOError): self.frame.show_save_error_dialog(exit_imminent) return True try: something_saved = storage.save_months_to_disk( self.months, self.dirs.data_dir, exit_imminent, saveas) except (IOError, OSError): self.frame.show_save_error_dialog(exit_imminent) something_saved = None if something_saved: self.show_message(_('The content has been saved to %s') % self.dirs.data_dir, error=False) logging.info('The content has been saved to %r' % self.dirs.data_dir) elif something_saved is None: # Don't display this as an error, because we already show a dialog. self.show_message(_('The journal could not be saved'), error=False) else: self.show_message(_('Nothing to save'), error=False) self.config.save_to_disk() if not (exit_imminent or changing_journal) and something_saved: # Update cloud self.frame.cloud.update(force_update=True) # tell gobject to keep saving the content in regular intervals return True
def save_to_disk(self, exit_imminent=False, changing_journal=False, saveas=False): #logging.info('Trying to save the journal') self.save_old_day() try: filesystem.make_directory(self.dirs.data_dir) except OSError: self.frame.show_save_error_dialog(exit_imminent) return True if not os.path.exists(self.dirs.data_dir): logging.error('Save path does not exist') self.frame.show_save_error_dialog(exit_imminent) return True something_saved = storage.save_months_to_disk(self.months, self.dirs.data_dir, self.frame, exit_imminent, changing_journal, saveas) if something_saved: self.show_message(_('The content has been saved to %s') % self.dirs.data_dir, error=False) logging.info('The content has been saved to %s' % self.dirs.data_dir) else: self.show_message(_('Nothing to save'), error=False) self.config.save_to_disk() if not (exit_imminent or changing_journal) and something_saved: # Update cloud self.frame.cloud.update(force_update=True) # tell gobject to keep saving the content in regular intervals return True
def save_to_disk(self, exit_imminent=False, changing_journal=False, saveas=False): self.save_old_day() try: filesystem.make_directory(self.dirs.data_dir) except OSError as err: logging.error("Creating journal directory failed: {}".format(err)) self.frame.show_save_error_dialog(exit_imminent) return True try: something_saved = storage.save_months_to_disk( self.months, self.dirs.data_dir, exit_imminent, saveas) except OSError as err: logging.error("Saving month files failed: {}".format(err)) self.frame.show_save_error_dialog(exit_imminent) something_saved = None if something_saved: self.show_message(_("The content has been saved to %s") % self.dirs.data_dir, error=False) logging.info("The content has been saved to %r" % self.dirs.data_dir) elif something_saved is None: # Don't display this as an error, because we already show a dialog. self.show_message(_("The journal could not be saved"), error=False) else: self.show_message(_("Nothing to save"), error=False) self.config.save_to_disk() if not (exit_imminent or changing_journal) and something_saved: # Update cloud. self.frame.cloud.update(force_update=True) for tag in self.get_escaped_tags(): self.frame.search_box.add_entry(tag) # tell gobject to keep saving the content in regular intervals return True