From ae3b752a81135d139c057bb5f060a9ddcb8ab397 Mon Sep 17 00:00:00 2001
From: Britney Fransen <brfransen@gmail.com>
Date: Tue, 19 Nov 2013 12:19:58 -0600
Subject: mythtv mythplugins: update to latest .27-fixes. refs #933.

add suggestedstarttime patch for mythweb showing suggested start time of mythfilldatabase
---
 abs/core/mythtv/stable-0.27/git_src/git_hash       |   2 +-
 abs/core/mythtv/stable-0.27/mythplugins/PKGBUILD   |   4 +-
 abs/core/mythtv/stable-0.27/mythtv/PKGBUILD        |  18 ++--
 .../mythtv/stable-0.27/mythtv/myth_settings.patch  | 104 +++++++++++----------
 .../stable-0.27/mythtv/suggestedstarttime.patch.v1 |  32 +++++++
 5 files changed, 102 insertions(+), 58 deletions(-)
 create mode 100644 abs/core/mythtv/stable-0.27/mythtv/suggestedstarttime.patch.v1

diff --git a/abs/core/mythtv/stable-0.27/git_src/git_hash b/abs/core/mythtv/stable-0.27/git_src/git_hash
index 4d9183d..aa97d7b 100644
--- a/abs/core/mythtv/stable-0.27/git_src/git_hash
+++ b/abs/core/mythtv/stable-0.27/git_src/git_hash
@@ -1 +1 @@
-77a66f4fd77744727c2a22182d34a69da94290c0
+a6c1d5336502a97f25b747e0a036fde4d25fd2ee
diff --git a/abs/core/mythtv/stable-0.27/mythplugins/PKGBUILD b/abs/core/mythtv/stable-0.27/mythplugins/PKGBUILD
index ec47156..0e11c4e 100644
--- a/abs/core/mythtv/stable-0.27/mythplugins/PKGBUILD
+++ b/abs/core/mythtv/stable-0.27/mythplugins/PKGBUILD
@@ -9,7 +9,7 @@ pkgname=('mytharchive'
          'mythweather'
          'mythzoneminder')
 pkgver=0.27
-pkgrel=2
+pkgrel=3
 arch=('i686' 'x86_64')
 url="http://www.mythtv.org"
 license=('GPL')
@@ -112,4 +112,4 @@ package_mythzoneminder() {
     make INSTALL_ROOT="${pkgdir}" install || return 1
 }
 
-md5sums=('19446f65722769926bafad220bbc6551')
+md5sums=()
diff --git a/abs/core/mythtv/stable-0.27/mythtv/PKGBUILD b/abs/core/mythtv/stable-0.27/mythtv/PKGBUILD
index 6af1e2f..6ec4e55 100644
--- a/abs/core/mythtv/stable-0.27/mythtv/PKGBUILD
+++ b/abs/core/mythtv/stable-0.27/mythtv/PKGBUILD
@@ -1,6 +1,6 @@
 pkgname=mythtv
 pkgver=0.27
-pkgrel=2
+pkgrel=3
 commit_hash=`cat ../git_src/git_hash`
 pkgdesc="A Homebrew PVR project $commit_hash"
 arch=('i686' 'x86_64')
@@ -18,10 +18,12 @@ groups=('pvr')
 backup=()
 install='mythtv.install'
 
-patches=(#'myth_settings.patch' 
-         '0001-protect-metadata-loads-from-multiple-threads.patch')
+patches=('myth_settings.patch' 
+         '0001-protect-metadata-loads-from-multiple-threads.patch'
          #http://code.mythtv.org/trac/ticket/10825   thread safety in video metadata load
- 
+         'suggestedstarttime.patch.v1')
+         #http://code.mythtv.org/trac/ticket/11562   next mythfilldatabase run in mythweb
+
 optdepends=()
 replaces=('mythvideo' 'myththemes')
 conflicts=('mythvideo' 'myththemes')
@@ -41,11 +43,11 @@ build() {
     echo "#!/bin/bash" > version.sh
 
     msg "--------------------------applying patches------------------------------"
-    for i in `echo ${patches[@]:0} `
+    for i in `echo ${patches[@]:0}`
     do
         echo applying $i
-        echo "-----------------------------"
         patch -Np2  -i ${startdir}/src/$i  || return 1
+        echo "-----------------------------"
     done
     msg "--------------------------done applying patches-------------------------"
 
@@ -97,5 +99,7 @@ package() {
     install -m0755 ${srcdir}/recordings ${pkgdir}/etc/cron.hourly/
 }
 
-md5sums=('67f7316c750fba17fa578d10840b9dbd'
+md5sums=('5f3e43567e62afe17bad39f5a9b604cf'
+         '67f7316c750fba17fa578d10840b9dbd'
+         '35a7fd3e3057691e3b1bf355bb9e8b16'
          '65a08d8949431ecdeb51a686dc6f9c21')
diff --git a/abs/core/mythtv/stable-0.27/mythtv/myth_settings.patch b/abs/core/mythtv/stable-0.27/mythtv/myth_settings.patch
index dd1de24..27f9283 100644
--- a/abs/core/mythtv/stable-0.27/mythtv/myth_settings.patch
+++ b/abs/core/mythtv/stable-0.27/mythtv/myth_settings.patch
@@ -1,16 +1,14 @@
-commit 9b4205fa320c06afde8c6d866b854cb12d3ec99c
-Author: root <root@localhost.localdomain>
-Date:   Fri Sep 28 14:25:06 2012 -0500
+commit 0bfb6515f1c6f10d4d9d5d7297ca56a18ac3c138
+Author: James Meyer <james.meyer@operamail.com>
+Date:   Sun Nov 17 18:58:50 2013 -0600
 
-    new patch
-    
-    Signed-off-by: root <root@localhost.localdomain>
+    mythutil updated with myth_settings for .27
 
 diff --git a/mythtv/libs/libmythbase/mythcorecontext.cpp b/mythtv/libs/libmythbase/mythcorecontext.cpp
-index 84cb01a..6e3c54a 100644
+index e9cc880..4f7a3bd 100644
 --- a/mythtv/libs/libmythbase/mythcorecontext.cpp
 +++ b/mythtv/libs/libmythbase/mythcorecontext.cpp
-@@ -1260,6 +1260,90 @@ void MythCoreContext::ResetLanguage(void)
+@@ -1262,6 +1262,90 @@ void MythCoreContext::ResetLanguage(void)
      d->language.clear();
  }
  
@@ -19,7 +17,7 @@ index 84cb01a..6e3c54a 100644
 +                                            QString saved_settingsgroupname )
 +{
 +    return d->m_database->savesettings_togroup(src_hostname,
-+                                               saved_settingsgroupname);
++                                        saved_settingsgroupname);
 +}
 +
 +void MythCoreContext::deletesettings(QString delete_hostname,
@@ -102,55 +100,66 @@ index 84cb01a..6e3c54a 100644
  {
      if (!d->m_locale)
 diff --git a/mythtv/libs/libmythbase/mythcorecontext.h b/mythtv/libs/libmythbase/mythcorecontext.h
-index 0917313..3f6d5f8 100644
+index aed83d7..3f0de5e 100644
 --- a/mythtv/libs/libmythbase/mythcorecontext.h
 +++ b/mythtv/libs/libmythbase/mythcorecontext.h
-@@ -168,6 +168,40 @@ class MBASE_PUBLIC MythCoreContext : public MythObservable, public MythSocketCBs
-     QString GetLanguageAndVariant(void);
-     void ResetLanguage(void);
- 
+@@ -198,7 +198,42 @@ class MBASE_PUBLIC MythCoreContext : public QObject, public MythObservable, publ
+     void emitTVPlaybackUnpaused(void)           { emit TVPlaybackUnpaused(); }
+     void emitTVPlaybackAborted(void)            { emit TVPlaybackAborted(); }
+     void emitTVPlaybackPlaying(void)            { emit TVPlaybackPlaying(); }
+-
++    
 +    //JM ADDED
 +    void savesettings_togroup(QString src_hostname,
 +                              QString saved_settingsgroupname );
-+
++    
 +    void deletesettings(QString delete_hostname,
 +                        QString saved_settingsgroupname);
-+
++    
 +    QMap<QString,QStringList> list_settingsgroupname();
 +    QMap<QString,QStringList> diff_settingsgroupname(QString diff_hostname1,
 +                                                     QString diff_hostname2,
 +                                                     QStringList table_list);
-+
++    
 +    void clonesettings(QString src_hostname,
 +                       QString saved_settingsgroupname,
 +                       QStringList table_list,
 +                       bool is_full_clone=TRUE,
 +                       QString dest_hostname="");
-+
++    
 +    void restoresettings (QString dest_hostname,
 +                          QString saved_settingsgroupname,
 +                          QStringList table_list);
-+
++    
 +    void change_hostname (QString old_hostname, QString new_hostname);
-+
++    
 +    bool settings_check (QString src_hostname ,QString saved_settingsgroupname);
 +    void import_settings(QMap<QString,QString> vp_map, QString table);
-+
++    
 +    QMap<QString,QMap <QString,QString> > export_settings(
-+                                             QString src_hostname,
-+                                             QString saved_settingsgroupname,
-+                                             QStringList table_list,
-+                                             bool skip_host = FALSE );
++        QString src_hostname,
++        QString saved_settingsgroupname,
++        QStringList table_list,
++        bool skip_host = FALSE );
 +    //END JM ADDED
-+
++    
++    
+   signals:
+     void TVPlaybackStarted(void);
+     //// TVPlaybackStopped signal should be used in combination with
+@@ -211,6 +246,7 @@ class MBASE_PUBLIC MythCoreContext : public QObject, public MythObservable, publ
+     void TVPlaybackAboutToStart(void);
+     void TVPlaybackPlaying(void);
+ 
++   
    private:
      MythCoreContextPrivate *d;
  
 diff --git a/mythtv/libs/libmythbase/mythdb.cpp b/mythtv/libs/libmythbase/mythdb.cpp
-index ea30783..e4c1781 100644
+index e60fce0..ed3bdf7 100644
 --- a/mythtv/libs/libmythbase/mythdb.cpp
 +++ b/mythtv/libs/libmythbase/mythdb.cpp
-@@ -774,7 +774,7 @@ void MythDB::OverrideSettingForSession(
+@@ -775,7 +775,7 @@ void MythDB::OverrideSettingForSession(
      QString mk = key.toLower(), mk2 = d->m_localhostname + ' ' + mk, mv = value;
      if ("dbschemaver" == mk)
      {
@@ -159,7 +168,7 @@ index ea30783..e4c1781 100644
              QString("ERROR: Refusing to allow override for '%1'.").arg(key));
          return;
      }
-@@ -1055,6 +1055,1015 @@ void MythDB::WriteDelayedSettings(void)
+@@ -896,6 +896,1015 @@ void MythDB::WriteDelayedSettings(void)
      }
  }
  
@@ -1176,10 +1185,10 @@ index ea30783..e4c1781 100644
   *  \brief Set a flag indicating we have successfully connected to the database
   */
 diff --git a/mythtv/libs/libmythbase/mythdb.h b/mythtv/libs/libmythbase/mythdb.h
-index 79abe56..fd6044e 100644
+index ac2a8ec..f3689a5 100644
 --- a/mythtv/libs/libmythbase/mythdb.h
 +++ b/mythtv/libs/libmythbase/mythdb.h
-@@ -75,6 +75,49 @@ class MBASE_PUBLIC MythDB
+@@ -74,6 +74,49 @@ class MBASE_PUBLIC MythDB
  
      void WriteDelayedSettings(void);
  
@@ -1230,11 +1239,11 @@ index 79abe56..fd6044e 100644
      void SetHaveSchema(bool schema);
      bool HaveSchema(void) const;
 diff --git a/mythtv/programs/mythutil/commandlineparser.cpp b/mythtv/programs/mythutil/commandlineparser.cpp
-index f4a6035..fdeeb8e 100644
+index 902314d..d86b548 100644
 --- a/mythtv/programs/mythutil/commandlineparser.cpp
 +++ b/mythtv/programs/mythutil/commandlineparser.cpp
-@@ -118,6 +118,37 @@ void MythUtilCommandLineParser::LoadArguments(void)
-         << add("--print-template", "printtemplate", false,
+@@ -144,6 +144,37 @@ void MythUtilCommandLineParser::LoadArguments(void)
+         << add("--print-notification-template", "printntemplate", false,
                  "Print the template to be sent to the frontend", "")
                  ->SetGroup("Messaging")
 +
@@ -1271,9 +1280,9 @@ index f4a6035..fdeeb8e 100644
          );
  
      // mpegutils.cpp
-@@ -140,6 +171,59 @@ void MythUtilCommandLineParser::LoadArguments(void)
-     add("--bcastaddr", "bcastaddr", "127.0.0.1", "(optional) IP address to send to", "")
-         ->SetChildOf("message");
+@@ -194,6 +225,59 @@ void MythUtilCommandLineParser::LoadArguments(void)
+     add("--type", "type", "type", "(optional) type of notification (normal, error, warning, check, busy", "")
+     ->SetChildOf("notification");
  
 +    //settingsutils.cpp
 +    add("--groupname", "groupname", "", "Group of settings name", "")
@@ -1332,18 +1341,18 @@ index f4a6035..fdeeb8e 100644
      addRecording();
      addInFile(true);
 diff --git a/mythtv/programs/mythutil/main.cpp b/mythtv/programs/mythutil/main.cpp
-index 418ea01..bd4a1f4 100644
+index 0bc49f2..faada3d 100644
 --- a/mythtv/programs/mythutil/main.cpp
 +++ b/mythtv/programs/mythutil/main.cpp
-@@ -21,6 +21,7 @@
- #include "jobutils.h"
+@@ -22,6 +22,7 @@
  #include "markuputils.h"
  #include "messageutils.h"
-+#include "settingsutils.h"
  #include "signalhandling.h"
++#include "settingsutils.h"
  
  
-@@ -105,6 +106,7 @@
+ int main(int argc, char *argv[])
+@@ -105,6 +106,7 @@ int main(int argc, char *argv[])
      registerJobUtils(utilMap);
      registerMarkupUtils(utilMap);
      registerMessageUtils(utilMap);
@@ -1352,10 +1361,10 @@ index 418ea01..bd4a1f4 100644
      bool cmdFound = false;
      int cmdResult = GENERIC_EXIT_OK;
 diff --git a/mythtv/programs/mythutil/mythutil.pro b/mythtv/programs/mythutil/mythutil.pro
-index 066e618..87d7952 100644
+index f0ecbf5..f9472fc 100644
 --- a/mythtv/programs/mythutil/mythutil.pro
 +++ b/mythtv/programs/mythutil/mythutil.pro
-@@ -10,7 +10,7 @@ TARGET = mythutil
+@@ -13,7 +13,7 @@ TARGET = mythutil
  target.path = $${PREFIX}/bin
  INSTALLS = target
  
@@ -1364,18 +1373,17 @@ index 066e618..87d7952 100644
  INCLUDEPATH += ../../libs/libmythbase
  
  QMAKE_CLEAN += $(TARGET)
-@@ -19,8 +19,10 @@ QMAKE_CLEAN += $(TARGET)
+@@ -22,8 +22,10 @@ QMAKE_CLEAN += $(TARGET)
  HEADERS += mythutil.h commandlineparser.h
  HEADERS += backendutils.h fileutils.h jobutils.h markuputils.h
  HEADERS += messageutils.h mpegutils.h
 +HEADERS += settingsutils.h
-+
  SOURCES += main.cpp mythutil.cpp commandlineparser.cpp
  SOURCES += backendutils.cpp fileutils.cpp jobutils.cpp markuputils.cpp
  SOURCES += messageutils.cpp mpegutils.cpp
--
 +SOURCES += settingsutils.cpp
- mingw: LIBS += -lwinmm -lws2_32
+ 
+ mingw|win32-msvc*: LIBS += -lwinmm -lws2_32
 diff --git a/mythtv/programs/mythutil/settingsutils.cpp b/mythtv/programs/mythutil/settingsutils.cpp
 new file mode 100644
 index 0000000..8fc7b0e
diff --git a/abs/core/mythtv/stable-0.27/mythtv/suggestedstarttime.patch.v1 b/abs/core/mythtv/stable-0.27/mythtv/suggestedstarttime.patch.v1
new file mode 100644
index 0000000..26d4c36
--- /dev/null
+++ b/abs/core/mythtv/stable-0.27/mythtv/suggestedstarttime.patch.v1
@@ -0,0 +1,32 @@
+diff --git a/mythtv/programs/mythbackend/httpstatus.cpp b/mythtv/programs/mythbackend/httpstatus.cpp
+index 8571a58..be0272f 100644
+--- a/mythtv/programs/mythbackend/httpstatus.cpp
++++ b/mythtv/programs/mythbackend/httpstatus.cpp
+@@ -1392,13 +1392,17 @@ int HttpStatus::PrintMachineInfo( QTextStream &os, QDomElement info )
+             QString sStatus = e.attribute( "status"   , ""  );
+             QDateTime next  = MythDate::fromString( e.attribute( "next"     , ""  ));
+             QString sNext   = next.isNull() ? "" :
+-                                MythDate::toString(next, MythDate::kDatabase);
++                                MythDate::toString(next, MythDate::kDateTimeFull);
+             QString sMsg    = "";
+ 
+             QDateTime thru  = MythDate::fromString( e.attribute( "guideThru", ""  ));
+ 
+             QDomText  text  = e.firstChild().toText();
+ 
++            QString mfdblrs =
++                gCoreContext->GetSetting("mythfilldatabaseLastRunStart");
++            QDateTime lastrunstart = MythDate::fromString(mfdblrs);
++
+             if (!text.isNull())
+                 sMsg = text.nodeValue();
+ 
+@@ -1412,7 +1416,7 @@ int HttpStatus::PrintMachineInfo( QTextStream &os, QDomElement info )
+ 
+             os << sStatus << "<br />\r\n";
+ 
+-            if (!next.isNull() && sNext >= sStart)
++            if (!next.isNull() && next >= lastrunstart)
+             {
+                 os << "    Suggested next mythfilldatabase run: "
+                     << sNext << ".<br />\r\n";
-- 
cgit v0.12