← Back to team overview

openlp-core team mailing list archive

[Merge] lp:~smpettit/openlp/save_service into lp:openlp

 

Stevan Pettit has proposed merging lp:~smpettit/openlp/save_service into lp:openlp.

Requested reviews:
  Raoul Snyman (raoul-snyman)
  Andreas Preikschat (googol)

For more details, see:
https://code.launchpad.net/~smpettit/openlp/save_service/+merge/70636

Bug #802150

Added code to servicemanager to check if a file is missing during a "save service".

If a file is missing, the user is notified and given the choice to continue saving (without the missing file) or abort the save.

Removed un-needed commented code.

Exit the dialog if user selects "no" to the missing file message
-- 
https://code.launchpad.net/~smpettit/openlp/save_service/+merge/70636
Your team OpenLP Core is subscribed to branch lp:openlp.
=== modified file 'openlp/core/ui/servicemanager.py'
--- openlp/core/ui/servicemanager.py	2011-08-02 18:17:07 +0000
+++ openlp/core/ui/servicemanager.py	2011-08-05 22:46:26 +0000
@@ -495,25 +495,24 @@
                 # Only write a file once
                 if path_from in write_list:
                     continue
-                file_size = os.path.getsize(path_from)
-                size_limit = 52428800 # 50MiB
-                #if file_size > size_limit:
-                #    # File exeeds size_limit bytes, ask user
-                #    message = unicode(translate('OpenLP.ServiceManager',
-                #        'Do you want to include \n%.1f MB file "%s"\n'
-                #        'into the service file?\nThis may take some time.\n\n'
-                #        'Please note that you need to\ntake care of that file'
-                #        ' yourself,\nif you leave it out.')) % \
-                #        (file_size/1048576, os.path.split(path_from)[1])
-                #    ans = QtGui.QMessageBox.question(self.mainwindow,
-                #        translate('OpenLP.ServiceManager', 'Including Large '
-                #        'File'), message, QtGui.QMessageBox.StandardButtons(
-                #        QtGui.QMessageBox.Ok|QtGui.QMessageBox.Cancel),
-                #        QtGui.QMessageBox.Ok)
-                #    if ans == QtGui.QMessageBox.Cancel:
-                #        continue
-                write_list.append(path_from)
-                total_size += file_size
+                if not os.path.exists(path_from):
+                    Receiver.send_message(u'cursor_normal')
+                    title = unicode(translate('OpenLP.ServiceManager',
+                        'Service File Missing'))
+                    message = unicode(translate('OpenLP.ServiceManager',
+                        'File missing from service\n\n %s \n\n'
+                        'Continue saving?' % path_from ))
+                    answer = QtGui.QMessageBox.critical(self, title, message,
+                        QtGui.QMessageBox.StandardButtons(
+                        QtGui.QMessageBox.Yes | QtGui.QMessageBox.No)) 
+                    if answer == QtGui.QMessageBox.No:
+                        self.mainwindow.finishedProgressBar()
+                        return False
+                    Receiver.send_message(u'cursor_busy')
+                else:
+                    file_size = os.path.getsize(path_from)
+                    write_list.append(path_from)
+                    total_size += file_size
         log.debug(u'ServiceManager.saveFile - ZIP contents size is %i bytes' %
             total_size)
         service_content = cPickle.dumps(service)


Follow ups