Er mogen op dit forum GEEN verzoekjes of requests gevraagd worden, dit staat ook in de regels die je accepteert bij het registreren op dit forum, hiervoor krijg je direct een permanente ban.

Filters.xml aanpassen

Description: Edit filters.xml

Categories: Spotnet, Tutorial

Link to this article: Selecteer alles

[url=http://spot-net.nl/forums/kb/viewarticle?a=13&sid=f93a2561843a8cbcb132958f98b5b549]Knowledge Base - Filters.xml aanpassen[/url]

Tutorial

Vooraf

Waar je de verschillende dingen kunt vinden op jou PC is een verhaal apart en daar ga ik hier niet verder over schrijven dan nodig is voor dit verhaal.

Iets over XML

XML is niets meer dan een tekstbestand dat je kunt bewerken met Kladblok, Notepad, Notepad++, UltraEdit, enz.
Het is bedoeld om op een gestructureerde manier gegevens in op te slaan die later eruit gehaald kunnen worden door een programma.
Voor de filters van Spotnet is het niet nodig om ALLES te beschrijven, maar ik zal de belangrijkste dingen hieronder beschrijven zodat je aan de slag kunt.

De structuur werkt als volgt:
- je hebt een soort envelop waar je de gegevens in opslaat en die envelop moet op een bepaalde manier herkenbaar zijn
- een envelop heeft een 'begin' en een 'eind'

Dat ziet er als volgt uit:

CODE: Selecteer alles

Spotnet
/Spotnet
Het 'begin' wordt aangegeven door een stukje aan het begin met '' en '' en daartussen een naam, in dit geval 'Spotnet'. Die naam is voor het programma belangrijk omdat het dan weet wat het verder allemaal kan verwachten. Het is een soort type-aanduiding.
Het 'eind' wordt aangegeven door het stukje aan het einde met '/' en '' en daartussen precies dezelfde naam. Let op de '/' die aangeeft dat het om een 'eind' gaat.
Begin en eind hoeven niet op aparte regels te staan, en mogen dus ook op dezelfde regel voorkomen. Zie ook de volgende voorbeelden.

Alles wat tussen het begin Spotnet en het eind /Spotnet staat is de inhoud, oftewel de gegevens.

In een envelop kun je een tweede envelop(je) stoppen.

Dat ziet er als volgt uit:

CODE: Selecteer alles

Spotnet
  Filter Name=Nieuw Image=C\Program Files (x86)\Spotnet\Images\custom2ico Margin=0,0,0,0!CDATANew = 1/Filter
KennisBank
Filters.xml aanpassen 
Artikel ID: 135
Geschreven door: FourthRock
Geschreven op: 26 feb 2011, 00:59
Beschrijving: Edit filters.xml
LINK NAAR DIT ARTIKEL OP SPOT-NET.NL: SELECT ALL
[kb=135]Filters.xml aanpassen[/kb]
LINK NAAR DIT ARTIKEL OP JE EIGEN FORUM: SELECT ALL
[url=http://www.spot-net.nl/kb/article.php?a=135]Filters.xml aanpassen[/url]
Tutorial

Vooraf

Waar je de verschillende dingen kunt vinden op jou PC is een verhaal apart en daar ga ik hier niet verder over schrijven dan nodig is voor dit verhaal.

Iets over XML

XML is niets meer dan een tekstbestand dat je kunt bewerken met Kladblok, Notepad, Notepad++, UltraEdit, enz.
Het is bedoeld om op een gestructureerde manier gegevens in op te slaan die later eruit gehaald kunnen worden door een programma.
Voor de filters van Spotnet is het niet nodig om ALLES te beschrijven, maar ik zal de belangrijkste dingen hieronder beschrijven zodat je aan de slag kunt.

De structuur werkt als volgt:
- je hebt een soort envelop waar je de gegevens in opslaat en die envelop moet op een bepaalde manier herkenbaar zijn
- een envelop heeft een 'begin' en een 'eind'

Dat ziet er als volgt uit:
[code]
<Spotnet>
</Spotnet>
Het 'begin' wordt aangegeven door een stukje aan het begin met '<' en '>' en daartussen een naam, in dit geval 'Spotnet'. Die naam is voor het programma belangrijk omdat het dan weet wat het verder allemaal kan verwachten. Het is een soort type-aanduiding.
Het 'eind' wordt aangegeven door het stukje aan het einde met '</' en '>' en daartussen precies dezelfde naam. Let op de '/' die aangeeft dat het om een 'eind' gaat.
Begin en eind hoeven niet op aparte regels te staan, en mogen dus ook op dezelfde regel voorkomen. Zie ook de volgende voorbeelden.

Alles wat tussen het begin <Spotnet> en het eind </Spotnet> staat is de inhoud, oftewel de gegevens.

In een envelop kun je een tweede envelop(je) stoppen.

Dat ziet er als volgt uit:

CODE: Selecteer alles

<Spotnet>
  <Filter Name="Nieuw" Image="C:\Program Files (x86)\Spotnet\Images\custom2.ico" Margin="0,0,0,0"><![CDATA[New = 1]]></Filter>
</Spotnet>
Hier zit het envelopje 'Filter' in het envelopje 'Spotnet'.

Het is belangrijk dat de envelopjes in de juiste volgorde gesloten worden. Dus eerst het 'binnenste' envelopje (Filter) sluiten, dan pas het 'buitenste' (Spotnet). Anders hangt er 'iets' uit t envelopje wat er eigenlijk in hoort, alsof je ondergoed uit je gulp hangt zeg maar ;). Als dat niet netjes gebeurt weet het programma (Spotnet) geen raad ermee en zal het niet goed werken.

We zien in ons voorbeeld dat in het begin van het Filter-envelopje een paar extra dingen staan. Er staat

CODE: Selecteer alles

Name="Nieuw"
Dit is nodig om dit envelopje te onderscheiden van andere enveloppen die ook van het type 'Filter' zijn. Bovendien wordt deze tekst gebruikt om te tonen als filternaam in het lijstje. Wanneer er meerder envelopjes zijn met dezelfde naam, kan het programma geen onderscheid meer maken en raakt het in de war, of het crasht.

Vervolgens staat er ook

CODE: Selecteer alles

Image="C:\Program Files (x86)\Spotnet\Images\custom2.ico"
Dit is om aan te geven aan Spotnet waar welk plaatje getoond moet worden. Je ziet dat een pad dat naar een map op je eigen PC wijst ("C:\Program Files (x86)\Spotnet\Images\").
De verwijzing uit het voorbeeld is typisch voor 32bit versie van Spotnet 1.5.60 op een Windows 7 (of Vista) 64bit systeem.
Voor het juiste pad op een XP systeem, of een W7/Vista 32bit systeem, of andere versies van Spotnet moet je even zelf op zoek (succes!).

Vervolgens staat er ook

CODE: Selecteer alles

Margin="0,0,0,0"
Dit is iets voor het programma Spotnet, waarvan ik de bedoeling nog niet heb ontdekt. Gewoon laten staan dus...

Tenslotte hebben we ook nog de inhoud van het Filter-envelopje

CODE: Selecteer alles

<![CDATA[New = 1]]>
Dit is bijzonder stukje XML. Het is iets dat op zichzelf staat, en heeft dus geen 'eind' ('/').

CODE: Selecteer alles

![CDATA[ 
en geeft aan dat wat er tussen in staat niet mag worden gezien als XML en dus pure gegevens zijn die het programma in 1 blok onveranderd binnen moet krijgen om iets mee te doen.

CODE: Selecteer alles

New = 1
Dit is uiteindelijk het gegeven waar Spotnet mee aan de slag gaat om je lijst van spots mee te filteren. In dit voorbeeld heb ik het simpel gehouden om het goed uit te kunnen leggen. Een ander voorbeeld is:

CODE: Selecteer alles

( Cat='3' AND (  (  SCat = '0' )  ) )
Let op de haakjes. Evenveel 'open' en evenveel 'dicht'. Wat binnen de haakjes staat wordt eerst beoordeeld, en het resultaat wordt gebruikt om te beoordelen wat er buiten de haakjes staat. Alleen als programmeur is dit verder interessant, maar als je er aan gaat knutselen is het wel iets om in t achterhoofd te houden zodat je niet jezelf in de problemen brengt door met die haakjes te gaan stoeien.

Voordat we beginnen

Voordat we beginnen, zorgen we dat Spotnet NIET actief is. Ook niet ge-minimized of in de SysTray (actief in de achtergrond). Sluit het programma af als het wel actief is. De reden is dat Spotnet heeft ingelezen wat wij gaan aanpassen, en ons werk wordt ongedaan gemaakt als Spotnet besluit om zelf de boel nog eens te saven.

Wanneer we het bestand filters.xml gevonden hebben, maken we er een kopie (backup) van. Zet die kopie op een plek waar je het zelf terug kunt vinden (bijvoorbeeld in 'Documenten'). Wanneer het hopeloos mis gaat kun je die kopie weer terugzetten om de boel weer werkend te krijgen.

Toevoegen een verwijderen van Spotnet-filters

De filters van Spotnet gebruiken allemaal 1 regel per stuk, wat wel prettig is als we filters gaan toevoegen of verwijderen. Een regel erbij of eraf is in Kladblok niet al te moeilijk.

Let op dat <Spotnet> en </Spotnet> netjes aan het begin en eind blijven staan.

Aanpassen van Spotnet-filters

Er zijn eigenlijk 2 dingen die we vrij makkelijk met de hand kunnen doen. Dat zijn:
- de volgorde van de filters veranderen
- een icoontje kiezen voor een filter
- een ander icoontje kiezen voor een filter

De volgorde veranderen doen we door een hele regel te verplaatsen naar boven of beneden. Het is standaard knippen en plakken.

CODE: Selecteer alles

<Spotnet>
  <Filter Name="Nieuw" Margin="0,0,0,0"><![CDATA[New = 1]]></Filter>
  <Filter Name="Nieuw Beeld" Margin="0,0,0,0"><![CDATA[New = 1 AND Cat = 0 AND Erotiek = 0]]></Filter>
  <Filter Name="Nieuw Muziek" Margin="0,0,0,0"><![CDATA[New = 1 AND Cat = 1]]></Filter>
</Spotnet>
wordt dan bijvoorbeeld

CODE: Selecteer alles

<Spotnet>
  <Filter Name="Nieuw" Margin="0,0,0,0"><![CDATA[New = 1]]></Filter>
  <Filter Name="Nieuw Muziek" Margin="0,0,0,0"><![CDATA[New = 1 AND Cat = 1]]></Filter>
  <Filter Name="Nieuw Beeld" Margin="0,0,0,0"><![CDATA[New = 1 AND Cat = 0 AND Erotiek = 0]]></Filter>
</Spotnet>
Als er nog geen icoontje aangegeven is bij een filter (zoals in het voorbeeld hierboven) dan kunnen we die aanwijzing toevoegen. Dat doen we door

CODE: Selecteer alles

Image="C:\Program Files (x86)\Spotnet\Images\custom2.ico"
toe te voegen in de regel van het filter.
Het 'Nieuw'-filter

CODE: Selecteer alles

<Spotnet>
  <Filter Name="Nieuw" Margin="0,0,0,0"><![CDATA[New = 1]]></Filter>
</Spotnet>
passen we aan en wordt dan

CODE: Selecteer alles

<Spotnet>
  <Filter Name="Nieuw" Image="C:\Program Files (x86)\Spotnet\Images\custom2.ico" Margin="0,0,0,0"><![CDATA[New = 1]]></Filter>
</Spotnet>
Het plaatje veranderen doen we door de naam van een ander plaatje te zetten in het stukje

CODE: Selecteer alles

Image="C:\Program Files (x86)\Spotnet\Images\custom2.ico"
en dat kan dan bijvoorbeeld in

CODE: Selecteer alles

Image="C:\Program Files (x86)\Spotnet\Images\video2.ico"
veranderd worden.

Vergeet niet te 'saven'! (Opslaan, Bewaren, of hoe het verder ook heet in je kladblok/notepad/ultraedit...)

Tot slot

Als het goed is kunnen we Spotnet starten en zie je wat je allemaal veranderd hebt. Wanneer het niet naar je zin is, dan Spotnet afsluiten en filters.xml verder aanpassen. Wanneer het niet meer werkt dan de kopie terugzetten en even controleren of het weer werkt. Daarna kun je weer afsluiten en nog een poging wagen.

Hopelijk geven deze voorbeelden genoeg inspiratie om zelf de boel leuker te maken dan het al is.
Veel plezier!
Spot-net.nl Forums : Disclaimer
  • Advertisement
cron