Jump to content

EPGImporter


kuehnch

Recommended Posts

  • Replies 399
  • Created
  • Last Reply

Top Posters In This Topic

  • xarko

    57

  • jErk`

    46

  • tbuk00

    36

  • kuehnch

    27

Top Posters In This Topic

Posted Images

Sprich dich nur aus :bye:

 

Also so zu deinem Fehler. Diese Template-API betrachtet all diese Formatvariablen als Objekte. Wenn du nun ausversehen irgendwo an falscher Stelle ein $-Zeichen einbaust oder dich bei einem Variablennamen vertippst (z.B. $titel$ anstatt $title$ ), dann kann das zu einem noch ungeklärten Verhalten führen, weil die Engine auf Objekte zugreifen möchte, die garnicht existieren. Da muss ich noch Feinschliff betreiben, aber prinzipiell kann ich hier auf zwei Systemen keine großen Probleme ausmachen. Hast du auch beachtet, dass am Ende wieder ein $-Zeichen ran muss? Nicht, dass du PHP-Programmierer bist, denn dann ist das durchaus denkbar :P

Edited by kuehnch
Link to comment

der fehler kommt auch wenn ich alle *.xml's lösche

und alle genres und chans neueintrage :bye:

 

 

Vor dieser Version kam immer n Fehler, dass er die "TVmovie-Datei nicht lesen kann"

Link to comment

Was steht denn in den drei Format-Feldern? Du kannst die Felder auch mal ganz leer machen und Speichern drücken. Beim Import werden dann Standardwerte verwendet ($title$,$subtitle$ und $description$).

 

Das mit der TVMovie-Datenbank kann nur zwei Gründe haben. Clickfinder ist nicht sauber installiert. Der Importer ermittelt den Pfad zur Datenbank aus der Registry. Wenn hier was nicht stimmt, findet der Importer die Datenbank nicht. Gegebenefalls ist die Datenbank aber auch defekt. Das passiert sehr gerne mal bei Access-Datenbanken. Im Clickfinder findest du dann aber in den Einstellungen eine Möglichkeit, die Datenbank zu reparieren. Benutzt du Clickfinder 5.2? Da war vor kurzem eine neue Version erschienen, auf welche du Updaten solltest, was aber nichts mit diesem Problem zu tun hat.

 

Ich selbst setze den Importer natürlich auch intensiv ein und kann die Probleme blöderweise nicht nachvollziehen...

 

Verwendest du das ZIP-Paket oder gehst du über ClickOnce?

Link to comment

ich verstehs net...heute gehts wieder perfekt.

 

Achja, mit der Bewertung. Wie kann ich einstellen, dass sie garnicht angezeigt wird, wenn keine vorhanden ist? Jetzt steht da dann immer "-1"

Edited by spAik
Link to comment

Das ist sicher auch irgendwie mit der Template Engine machbar, allerdings habe ich mal schnell das TVMovieDataSource-Modul so abgeändert, dass eine Bewertung nur dann vorliegt, wenn der Wert > 0 ist. Also einfach das Modul herunterladen und in den EPGImporter laden, so dass es auf 0.66a aktualisiert wird. Dann kannst du ja wieder per

 

$if(rating)$

Bewertung: $rating$$\n$

$endif$

 

einen Ausschluss erzeugen, wenn keine Bewertung vorliegt. Ich wollte bei Gelegenheit auch noch diese TVMovie-Bewertungen (Spass,Spannung,... - TVMovie hat da ja diese Grafik, welche mit Punkten anzeigt, was die aktuelle Sendung ist) durchleiten, weil das vielleicht aussagekräftiger ist, als dieser TVMovie-Star-Wert.

Edited by kuehnch
Link to comment

So, jetzt teste ich das auch einmal, aber irgendwie komme ich nicht weiter:

 

- Clickfinder hat alle Daten

- Testweise nur Mapping für ARD und ZDF

- Für diese beiden Kanäle nur "externes EPG" im Kanaleditor angewählt

- Genre Mapping geladen, aber hat hier wohl nur sekundären Einfluß

- EPG.dat gelöscht

- Nur ARD und ZDF geschaltet: "Keine Daten vorhanden"

- "Run import" im EPGimporter läuft ganz kurz, obwohl Images und 21 Tage gewählt sind

- Weiterhin "Keine Daten vorhanden"

- Settings haben bei *-Format die Standardeinstellungen

- DataSource-Modul Clickfinder-Importer ist natürlich vorhanden und angewählt

 

Was fehlt?

 

Vielleicht kann man die einzelnen Konfigurationen die hier erwähnt sind einmal zusammentragen?

 

Error.log sagt:

 

"bei EPGImporter.Importing.ImportThread.Run()

04.01.2007 17:52:00 -> Error while importing (Das System kann die angegebene Datei nicht finden)

bei System.Diagnostics.Process.StartWithShellExecuteEx(ProcessStartInfo startInfo)

 

bei System.Diagnostics.Process.Start()

 

bei TVMovieDataSource.TVMDatabaseManager.RefreshData()"

 

Warum findet er die Datei nicht, Clickfinder hat sie ja? Wo gebe ich das ggf. manuell an?

Edited by uglyrooster
Link to comment

Welche Clickfinder-Version setzt du ein? Vermutlich < 5.20.

Mit dem Update von Clickfinder 5.12 auf Clickfinder 5.20 wurde auch das tvmovie-eigene Datenupdateprogramm, welches die TVMovie-Datenbank aus dem Internet auffrischt umbenannt von "tvupdate.exe" nach "tvuptodate.exe". Ich habe das im Quellcode ohne Rücksicht auf Verluste so übernommen, was mir aber erst im Nachhinein bewusst geworden ist. Ich werde hier nochmal ein wenig Feinarbeit betreiben, denn der Import sollte natürlich nicht abbrechen, wenn ein DataSource-Modul in seiner RefreshData-Methode eine Ausnahme schmeißt..

 

Aktuelle Lösung: Clickfinder starten und im Menü den Punkt "Clickfinder aktualisieren" anwählen, um Clickfinder auf die neuste Version 5.21 zu aktualisieren.

 

Weitere Info: DVBViewer muss in den Versionen 3.50.120, 3.50.121, 3.6.0.1 oder 3.6.0.2 vorliegen. Sowohl DVBV-Versionen < 3.50.120 als auch die Version 3.6.0.0 hatten Fehler drinnen, was die Datenübernahme der EPG-Daten verhinderte.

Link to comment

Danke für die Hinweise, ist in der Tat eine alte Clickfinder-Version.

 

Ich habe jetzt TVUpdate.exe als TVUptodate.exe kopiert und schon geht es los. Der Fortschrittsbalken hängt zwar vor dem Ende, aber aus "Cancel Import" wurde schon einmal wieder "Run Import" und die Daten sind im DVBViewer. Ich mache dann einmal ein Clickfinder-Update.

 

DVBViewer ist 3.6.02, das passt also.

 

Kann man die Änderungen für Bilder im neuen Standard-OSD etc. einmal veröffentlichen, damit nicht jeder neu basteln muss?

 

PS: Kopieren und umbenennen reicht wohl, denn bei einem neuen Import klappt auch alles. Insofern auch für Leute mit altem Clickfinder geeignet nach dem Motto "Never Change a Running System...".

Edited by uglyrooster
Link to comment

Richtig. Die Idee mit dem Umbenennen hatte ich auch.

 

Die Sache mit dem stehenbleibenden Fortschrittsbalken ist mir bekannt, allerdings habe ich noch nicht so richtig nachgeschaut, wo der Fehler liegt. Die einzelnen GUI-Elemente werden zu gewissen Zeitpunkten (und gerade wenn andere Fenster überdecken) komischerweise nicht revalidiert. Die Funktionalität an sich ist aber nicht gestört.

Link to comment

Noch eine kurze Anmerkung:

 

Kann man auf die Prüfung des laufenden DVBViewer am Anfang nicht verzichten? Das ist zwar für den Channelmanager wohl zwingend notwendig, aber schließlich läuft der EPGImporter ja auch noch, wenn der DVBViewer geschlossen wird.

 

Es wäre dann einfacher, einen einmaligen Aufruf zu starten. Jetzt steht er bei mir im Script nach dem DVBViewer um eine manuelle Antwort zu vermeiden, aber das ist auch nicht ideal.

Edited by uglyrooster
Link to comment

Wo ich gerade so gut in Fahrt bin :bye: :

 

Kann man den Scheduler auch separat aufrufen oder mit einer Option?

 

Alternativ bei verpassten Tasks (weil der Rechner aus war) sofort mit dem Datensammeln beginnen?

 

Das wäre ja ganz gut wenn nach 14 Tagen Urlaub keine aktuellen Daten mehr vorliegen und man EIT komplett abgeschaltet hat.

 

Man könnte natürlich auch zum Zeitpunkt des Einlesens einfach eine Pseudo-Aufnahme wiederholt programmieren.

 

Übersteht der EPGImporter in der Taskleiste einen Restart aus S3 mit Neustart des DVBViewer? Ich teste das einmal...

Link to comment
Kann man auf die Prüfung des laufenden DVBViewer am Anfang nicht verzichten? Das ist zwar für den Channelmanager wohl zwingend notwendig, aber schließlich läuft der EPGImporter ja auch noch, wenn der DVBViewer geschlossen wird.

Ist prinzipiell notwendig, weil während des Starts sämtliche getätigten Zuordnungen auf Validität hin geprüft werden müssen. Weiterhin müssen die Kanal/Genrelisten mit Inhalt gefüllt werden. Wenn die MessageBox mit dem Hinweis, dass der DVBViewer nicht läuft, erscheint, dann ist das nicht einfach das Ergebnis einer Überprüfung die man mal kurz ausknippsen kann, sondern ein Hinweis auf einen schweren Fehler, der das Programm am Arbeiten hindert.

Nach dem Programmstart werden also sowohl vom DVBViewer als auch von den DataSource-Modulen sämtliche verfügbaren Kanäle und Genres angefordert. Dann werden die Zuordnungen überprüft und nicht mehr valide Zuordnungen (z.B. weil während der Auszeit des EPGImporters Kanäle aus der DVBViewer-Kanalliste entfernt wurden) werden verworfen. Weiterhin werden alle so erhaltenen Listeninhalte in die entsprechenden GUI-Elemente verfrachtet.

Sicher könnte man das alles irgendwie hinbekommen, dass die Zuordnungen etc. erstmalig gemacht werden, wenn der Benutzer entweder im EPGImporter eine der Listen einblendet oder der erste Import ansteht, allerdings ist mir das derzeit zuviel Gefrickel :bye:

Der EPGImporter ist dann, wenn er denn mal gestartet wurde, auch relativ resistent. Der DVBViewer kann also zwischenzeitlich beendet und neu gestartet werden. Das macht dem EPGImporter nichts, weshalb nicht nach jedem DVBViewer-Neustart neu geladen werden muss. Einfach weiterlaufen lassen das Teil und gut is.

Link to comment
Kann man den Scheduler auch separat aufrufen oder mit einer Option?

Was genau meinst du? Meinst du, ob man einen Import auch von außerhalb anstoßen kann? Wenn dem so sein sollte, dann lade dir mal die neuste Version runter. Habe eben noch schnell eine Kleinigkeit eingebaut, welche in diese Richtung geht: Die EPGImporter.exe kann nun mit dem Parameter "-import" aufgerufen werden. Ist bereits eine Instanz des EPGImporters am laufen, so wird diese Instanz zum Importieren (derzeit noch grundsätzlich mit allen verfügbaren und aktivierten DataSource-Modulen) aufgefordert. Wenn noch keine Instanz läuft, so wird EPGImporter ganz normal gestartet.

 

Alternativ bei verpassten Tasks (weil der Rechner aus war) sofort mit dem Datensammeln beginnen?

 

Das wäre ja ganz gut wenn nach 14 Tagen Urlaub keine aktuellen Daten mehr vorliegen und man EIT komplett abgeschaltet hat.

Eine nette Spielerei :bye: Ist mir derzeit auch eine äußerst feine Feinheit, welche mehr Aufwand als Nutzen hat denn es muss ja erstmal eine Logik implementiert werden, welche auswertet, ob Importtermine versäumt wurden (es müsste ein Importtagebuch geführt werden usw. usw.). Wenn man nach Wochen aus dem Urlaub Heim kommt, wird es sicher nicht allzuviel verlangt sein, mal kurz auf den "Run Import"-button zu drücken.

 

Übersteht der EPGImporter in der Taskleiste einen Restart aus S3 mit Neustart des DVBViewer? Ich teste das einmal...

Ich selbst verwende den Energiekram hier garnicht, weil die Kiste, worauf DVBViewer werkelt, als Server fungiert, der durchweg laufen muss. Allerdings sehe ich da kein Problem, weil der EPGImporter ja recht resistent gegen das zwischenzeitliche Beenden des DVBViewers ist. Wenn der DVBViewer also zwischenzeitlich beendet und neu gestartet wird, so wird der EPGImporter dann trotzdem wieder importieren.

Link to comment

Sehr gut, ich bin gerade am basteln vom OSD etc. und teste den Importer darauf, HTPC (Fernbedienungs-)sicher zu arbeiten. Den Ausdruck "WAF" kann Lars ja nicht mehr hören :) .

 

Eine Kleinigkeit: So elegant die Transparenz des Hauptfensters auch ist, habe ich damit ein Problem. Mein Remote-Tool, mit dem ich den HTPC verwalte, zeigt mir das Hauptfenster auf dem Remoterechner so nicht an.

 

Ein Parameter zum Abschalten der Transparenz wäre deshalb genial.

 

Der separate Anstoß mit -Import ist super, vermutlich programmiere ich aber eine automatische Pseudoaufnahme einmal pro Woche auf den gleichen Zeitpunkt, zu dem der Scheduler des EPGImporters laufen soll. Dann wird auch bei Abwesenheit hochgefahren, der Importer findet einen laufenden DVBViewer und das Ganze kann nachts irgendwann stattfinden.

 

Klassetool auf jeden Fall!

 

PS: Kaum geschrieben und schon (vorher) erledigt. Die neue Version ist ohne Transparenz, Danke!

Edited by uglyrooster
Link to comment

Soweit läuft alles, Taskicon und Tool übersteht Standby S3 und alles andere funktioniert auch gut.

 

OSD ist angepaßt, allerdings wollte ich in "myminiepg" auch einmal ein Bild testen, da ich ohnehin 1,5 Sekunden Verzögerung beim Umschalten in den DVBViewer-Optionen angegeben habe.

 

Dabei ist mir aufgefallen, daß in "myminiepg" erst ein Bild angezeigt wird, wenn einmal "myepg" mit Bild aufgerufen wurde. Nach einem Neustart "vergißt" der DVBViewer in "myminiepg" das Bild allerdings wieder und man muß "myepg" erst einmal aufrufen.

 

Gibt es eine Idee hierzu?

Link to comment
Dabei ist mir aufgefallen, daß in "myminiepg" erst ein Bild angezeigt wird, wenn einmal "myepg" mit Bild aufgerufen wurde. Nach einem Neustart "vergißt" der DVBViewer in "myminiepg" das Bild allerdings wieder und man muß "myepg" erst einmal aufrufen.

 

Gibt es eine Idee hierzu?

Die Variablen im Skin werden nur in Abhängigkeit von den angezeigten Seiten Aktualisiert hier ob sich das mit Skripten lösen lässt weiß ich nicht sonst musst du Fragen ob das im DVBViewer erweitert werden kann.

Das hier könnt für dich auch noch Interessant sein.

Link to comment

@Tjod:

 

Danke für die Hinweise, die ich anderweitig gut gebrauchen kann.

 

Den hier genannten Punkt ziehe ich allerdings wegen "Blödsinn" zurück, kein Mensch braucht bei der laufenden Sendung auch ein Bild davon...

Link to comment

Hallo,

habe nun mal diese erweiterten Bewertungen von TVMovie integriert. TVMovie bietet bei einigen Sendungen spezielle redaktionelle Bewertungen an:

 

Spaß = 2, Action = 1, Erotik = 0...

 

Im Clickfinder selbst werden diese Daten als so eine kleine Tabelle angezeigt:

 

clickfinder_bewertungen.jpg

 

Diese Bewertungen lassen sich also nun auch im DVBViewer zur Anzeige bringen. Damit das schön flexibel ist, habe ich die Bewertungen nicht einfach als Zeichenkette übernommen, sondern als "Dictionary", was bedeutet, dass die Ausgabe der Werte im Formatstring etwas komplizierter zu definieren ist. Dafür ist es aber flexibel und jeder kann sich selbst überlegen, wie er diese Bewertungen anzeigen lassen möchte.

Die Bewertungen liegen im neu eingeführten DataTag "extendedrating" vor. Folgender Formatstring würde die eingangs erwähnte, komma-separierte Auflistung erzeugen:

 

Erweiterte Bewertung: $extendedrating.keys: {k| $k$ = $extendedrating.(k)$}; separator=", "$

 

Abstrakt bedeutet das, dass die Schlüsselwerte des Dictionaries (also Spaß, Action usw.) jeweils in eine Variable "k" gepackt werden. Über extendedrating.(k) wird dann auf den jeweiligen Bewertungswert zugegriffen. Das wird solange gemacht, bis alle Schlüssel abgearbeitet wurden ( {} ist quasi ein Schleifenrumpf).

 

Damit das funktioniert, müssen sowohl der EPGImporter als auch TVMovieDataSource auf den neusten Stand gebracht werden.

Edited by kuehnch
Link to comment

Wieder ein Update draußen:

 

EPGImporter 0.6.8.0

---------------------------

+ DVBViewer muss nicht mehr länger laufen, um den EPGImporter starten zu können

+ Anwendungs- und Konfigurationsverzeichnis lassen sich aus dem EPGImporter heraus öffnen (About)

 

LibEPGImporter 0.7.8.0

---------------------------

+ DataTags.OTHER zur DataTags-Liste hinzugefügt, um moduleigene DataTags zu erlauben

! Import bricht bei falsch definierten Formatstrings nicht mehr ab

! Import bricht nicht mehr ab, wenn es zu einem Fehler beim Auffrischen der Daten eines DataSource-Moduls kommt

 

TVMovieDataSource 0.6.9

-----------------------------

: Genreliste wird nun aus Keywords-Tabelle der TVM-Datenbank ermittelt

: Kompatibilität zu LibEPGImporter 0.7.8.0 hergestellt

 

Wird über ClickOnce geupdatet (nach EPGImporter-Neustart), so muss nachträglich manuell noch die neue Version des Clickfinder-Importers eingespielt werden (TVMovieDataSource.zip laden, entpacken und die entpackte DLL-Datei über den Add/Update-Button einspielen). Bei manuellem Update muss dies natürlich ebenfalls erfolgen.

Edited by kuehnch
Link to comment

Kleines Update:

 

EPGImporter 0.6.9.0

---------------------------

+ Mehrsprachenunterstützung hinzugefügt (aktuell: Englisch, Deutsch)

 

LibEPGImporter 0.7.9.0

---------------------------

+ Mehrsprachenunterstützung teilweise hinzugefügt (aktuell: Englisch, Deutsch)

 

Es wurden noch nicht alle Logmeldungen übersetzt...

 

Hinweis

Wer den EPGImporter über ClickOnce bezieht, wird zwar eine eingedeutschte Benutzeroberfläche haben, jedoch werden die meisten Logeinträge nach wie vor in Englisch sein, da ich noch nicht so ganz begriffen habe, wie ich mehrere Sprachen für die Bibliothek LibEPGImporter.dll per ClickOnce ausliefern kann. Deshalb fehlt diese Übersetzung derzeit noch im ClickOnce-Paket und Log-Meldungen sowie Schedulereinträge werden in Englisch angezeigt.

Link to comment
  • 2 months later...

Wenn du dir die mühe gemacht hättest zumindest dieses Thema ganz zu lesen wüstest du es. :bye:

Es gibt keine TV-Browser Unterstützung für den EPGImporter

und wird es aus rechtlichen gründen auch nicht geben (hier).

Nutze kannst du den TV-Browser aber schon (hier).

Link to comment
  • 2 months later...

Da ich derzeit keine Zeit mehr zu einer möglichen Weiterentwicklung habe und meine Interessen auch ein wenig in eine andere Richtung zeigen, stelle ich der Vollständigkeit halber mal den Quellkode des EPGImporters zur Verfügung (VS2005 Projektmappe). Der erste Post wird um den Downloadlink erweitert.

Link to comment
  • 4 months later...

Sorry, aber ich muss den Thread mal wieder ausgraben.

 

Bei den Kanälen, die nicht über den Clickfinder bedient werden können lasse ich ja im Kanaleditor den EPG Empfang. Bei den anderen stelle ich auf den Importer. Folglich muss ich in den EPG-Optionen des DVBV den EPG Empfang global aktiviert lassen, richtig? Der Kanaleditor hat hier Vorrang?

 

Wäre es möglich, das alles in Kurzform ins OSD eingebaut zu bekommen? Also z.B. einen Punkt der den CF updatet und anschließend (automatisch oder manuell) den Importer importieren lässt.

Link to comment
  • 3 months later...

Hi,

 

mein Post bezieht sich nur auf:

- Vista

- EPGimporter

- Clickfinder

- ImportImages

 

Allen anderen kanns egal sein.

 

Fix: EPGImporter importiert EPG-Bilder unter Vista garnicht, oder falsch

  Change: ChannelManager.GetDVBViewerImagesDirPath 
          + if (myOS.Version.Major == 6) {
          + IImportSettingsManager importSettingsManager = ObjectManager.GetImportSettingsManager(GlobalSettings.IMPORTSETTINGSFILE_PATH);
          +     return importSettingsManager.GetSetting(EPGImporter.Importing.Settings.vistaImgPath).To
String();
          + }
 Add: EPGImporter.Importing.Settings.vistaImgPath

 

Usage:

1) Beide Dateien ins EPGImporter Verzeichnis kopieren.

2) EPGImporter starten

3) Einstellungen,

4) "ImagePath" prüfen

5) Speichern(!) Wichtig(!) [ich bin faul]

6) Import starten.

 

Unter Vista klappts, XP k/A. Feedback gern, aber siehe (5), ich bin faul. Wenn jemand das sauberer einbauen möchte, siehe CodeBox, das ja nur ein mini Fix.

 

Download hier.

 

hth.

jrk.

 

[Edit: Neuer Downloadlink gesetzt, inline download entfernt]

Edited by jErk`
Link to comment
  • 2 months later...

Hallo!

 

Gibt es noch jemanden der das ganze Thema EPGImporter weiter betreuen könnte???

Die Liste der unterstützten Sender wird immer lückenhafter, leider! :bye:

Link to comment
  • 6 months later...
Die Liste der unterstützten Sender wird immer lückenhafter, leider! ;)

 

Lieber spät als nie ;) In Bezug auf das Clickfinder-Plugin kann das nicht zutreffen, da sich nichts an der Schnittstelle geändert hat. Es kann dann lediglich sein, dass irgendetwas Clickfinder daran hindert, die neusten Daten aus dem Internet zu beziehen, wodurch dann nach und nach auch Sender aus dem EPGImporter verschwinden, weil Clickfinder "leere Sender" nicht mehr an den EPGImporter meldet.

 

Was anderes: Ich habe die Downloads der Anwendung und des Clickfinder-Moduls mal aktualisiert, so dass der EPGImporter auch unter 64-Bit-Systemen verwendbar ist. Sonstige Änderungen gab es nicht. Der Importer funktioniert hier übrigens nach einem Jahr der Nichtbenutzung nach wie vor einwandfrei.

Link to comment
  • 3 weeks later...
  • 7 months later...
  • 2 weeks later...
die 6 Links scheinen tot zu sein.

 

 

 

Hat jemand die Möglichkeit, mir diese Sourcen (z.B. per Mail) zukommen zu lassen?

 

Danke und Gruß o:)

 

AMC

 

wäre auch interessiert - funktionierender Link oder pm ...

Link to comment
  • 1 month later...

http://ckuehn.info.dd22238.kasserver.com/d...EPGImporter.zip

 

kuehnch hat mir geschrieben

 

Irgendwo im bin-Unterordner der beiden Ordner liegen vorkompilierte Dateien. Vorgehensweise:

 

1. Die Dateien aus EPGImporter\EPGImporter\bin\x86\Release in ein Verzeichnis kopieren

2. Den EPGImporter durch Starten der Datei epgimporter.exe starten

3. Auf dem letzten Reiter der Anwendung das TVMovie-Plugin hinzufügen:

3.1 Im Durchsuchen-Dialog die Datei TVMovieDataSource\TVMovieDataSource\bin\x86\Release\TVMovieDataSource.dll auswählen und bestätigen

 

Fertig sieht das dann so aus

http://rapidshare.com/files/262924414/EPGImporter.rar

Link to comment
  • 3 months later...

Hat schon jemand den EPGImporter unter Windows7 zum laufen gekommen?

Bei mir scheitert das am fehlgeschlagenem Import der TVMovieDataSource.

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...