Wiki Navigation
- Loading...
Show message box
//css_reference "MpeCore.dll"; using MpeCore.Classes; using MpeCore; using System.Windows.Forms; public class Script { public static void Main(PackageClass packageClass, ActionItem actionItem) { if (!packageClass.Silent) { MessageBox.Show("Message"); } return; } }
Deleting a File
//css_reference "MpeCore.dll"; using MpeCore.Classes; using MpeCore; using System.IO; public class Script { public static void Main(PackageClass packageClass, ActionItem actionItem) { string setupExe = Path.Combine( MpeInstaller.TransformInRealPath("%Base%"), "aMPedSetup.exe"); try { if (File.Exists(setupExe)) File.Delete(setupExe); } catch {} return; } }
Set default Skin
//css_reference "MpeCore.dll"; //css_reference "Utils.dll"; using MpeCore.Classes; using MpeCore; using MediaPortal.Profile; public class Script { public static void Main(PackageClass packageClass, ActionItem actionItem) { using (MediaPortal.Profile.Settings xmlwriter = new MPSettings()) { xmlwriter.SetValue("skin", "name", "BleazleWide"); } MediaPortal.Profile.Settings.SaveCache(); return; } }
Install MovingPictures Scraper Script
This example uses a plugins API and illustrates how you can reference and load externals libraries.
//css_reference "MpeCore.dll"; //css_reference "Plugins\\Windows\\Cornerstone.dll"; //css_reference "Plugins\\Windows\\MovingPictures.dll"; using MediaPortal.Plugins.MovingPictures; using MediaPortal.Plugins.MovingPictures.Database; using MediaPortal.Plugins.MovingPictures.DataProviders; using MpeCore.Classes; using MpeCore; using System; using System.IO; using System.Reflection; using System.Windows.Forms; public class Script { public static void Main(PackageClass packageClass, ActionItem actionItem) { try { // Load Assemblies Assembly.LoadFrom(Path.Combine(MpeInstaller.TransformInRealPath("%Plugins%"), @"Windows\MovingPictures.dll")); // Instal Scraper Script string xmlFile = Path.Combine(MpeInstaller.TransformInRealPath("%Config%"), @"IMDb+\IMDb+.Scraper.SVN.xml"); // Check if already installed. if (!IsScraperInstalled()) { if (ScraperScriptInstallation(xmlFile)) { // Make script first priority SetScriptPositioning(); } } File.Delete(xmlFile); } catch {} return; } static bool ScraperScriptInstallation(string xmlFile) { // Grab the contents of the scraper script file StreamReader reader = new StreamReader(xmlFile); string script = reader.ReadToEnd(); reader.Close(); // Add it to the scraper script manager DataProviderManager.AddSourceResult addResult = MovingPicturesCore.DataProviderManager.AddSource(typeof(ScriptableProvider), script, true); if (addResult == DataProviderManager.AddSourceResult.SUCCESS_REPLACED) { return true; } else if (addResult == DataProviderManager.AddSourceResult.SUCCESS) { // Scraper script has been added successfully return true; } else { // Scraper installation failed return false; } } static void SetScriptPositioning() { DBSourceInfo source = DBSourceInfo.GetFromScriptID(314159265); if (source == null) return; // shift all enabled 'movie detail' sources down by one foreach (DBSourceInfo enabledSource in DBSourceInfo.GetAll()) { if (enabledSource.DetailsPriority > -1) { enabledSource.DetailsPriority++; enabledSource.Commit(); } } // now set highest priority to the IMDb+ source source.SetPriority(DataType.DETAILS, 0); source.Commit(); // set IMDb+ cover source higher than default IMDb source DBSourceInfo IMDbSource = DBSourceInfo.GetFromScriptID(874902); if (IMDbSource != null && IMDbSource.CoverPriority != null) { int coverPriority = (int)IMDbSource.CoverPriority; // shift down the rest, leave anything else in place foreach (DBSourceInfo enabledSource in DBSourceInfo.GetAll()) { if (enabledSource.CoverPriority >= coverPriority) { enabledSource.CoverPriority++; enabledSource.Commit(); } } // now replace IMDb cover priority with IMDb+ source source.SetPriority(DataType.COVERS, coverPriority); source.Commit(); } } static bool IsScraperInstalled() { return DBSourceInfo.GetFromScriptID(314159265) != null; } }
This page has no comments.