# XMM Documentation Project

eXtreme Movie Manager (abbreviated: XMM) is probably the most advanced Movies/TV Series/Actors collection manager around. It can catalog movies stored on your hard disk and removable devices in seconds with all information about codecs, resolutions etc. automatically. XMM imports movie information and covers directly from online databases.

With this XMM documentation project we want to help the developer to concentrate on coding, answering forum posts and replying to emails. Everybody is invited to contribute to the XMM community with writing a documentation snippet for this great software product.

You need to create a user account before being able to edit and/or create new pages in this wiki. We recommend to use the same username as of the official XMM forum (if we don't recognize your username it might happen that we delete your changes to this Wiki). Please keep in mind that the author of eXtreme Movie Manager is allowed to use parts of this wiki's content without notice in his products.

For additional informations regarding editing please read following pages:

- http://meta.wikimedia.org/wiki/MediaWiki_Users_Guide

Any general discussion regarding this Wiki is taken place in following XMM forum thread: http://www.binaryworks.it/forum/topic.asp?TOPIC_ID=5617

# Table of Contents

- MagicScript Technology
  - Programmer's Guide
  - Scripts
    - dvd-palace.de
    - Beyazperde
- Templates
  - ActorCard
  - EpisodeCard
  - MovieCard / SerieCard
  - Special Card Options
- Collected Feature Requests
- Collected Skript Requests

# MagicScript Technology Programmer's Guide

# Copyright

- (C) 2001-2010 BinaryWorks.it
- Web : http://www.binaryworks.it/
- E-Mail : alessioviti@binaryworks.it
- Documentation Version [4.6]

# Disclaimer

The author is in no way responsible for any damage, loss or costs that the installation or use of this program (or attempted installation or use) may cause you or your equipment. Installation and use of this program is entirely at your own risk. This program comes with no guarantees and is provided on an 'as is' basis. The author makes no guarantees on its soundness, reliability or suitability for any given purpose.

This program is Freeware. You may distribute this program freely but you must request permission and include the full unmodified setup package including all program files and documentation. If you wish to distribute this program commercially, you must request permission from the author.

TOP

# What Is MagicScript

MagicScript Technology is the new way to import information about your favourite movies from the web. In its past version, eXtreme Movie Manager allowed you to import information from two important websites only: imdb.com & dvdempire.com. With this new version, you can, in theory, import information from all the websites you want!

TOP

# How To Use MagicScript

MagicScript is a mini programming language that will allow you to write code to obtain information from a HTML page. For this purpose, you can use IF and REPEAT-WHILE statements, and many others. Of course, this language isn't as powerful as other complete languages like Basic etc., but it is sufficiently powerful for eXtreme Movie Manager's goals.

A Script won't be simple to build if you don't know any other programming languages. In this case you can use the Ready-Made Scripts available on my web page.

TOP

## Script Structure

A Script is a normal TXT file composed of INSTRUCTIONS, BLOCKS and STATEMENTS that you can edit with any editor.

Every Script file is associated with one movie site, so there will be a Script file for IMDb, another one for dvdempire, etc...

The structure of the text is free. This means that you can add notes and comments where you want, because all keywords are written inside sharps, like this : #IF#

The basic structure that must be present in every Script is formed by the keyword #WEBQUERY# and the Block #RIGHTPAGEFOUND#. We will discuss their functions in detail later.

A Script consists of a series of BLOCKS. Functions & Instruction inside Blocks are executed sequentially until the end of every BLOCK is reached.

When you want to import information, MagicScript opens the Script of the Web site you want and proceeds to gathering information as described in the Script. Of course, a script written for IMDb will not work in the dvdempire.com site, and you will probably have an unpredictable end of program.

As I have said, the Keyword #WEBQUERY# must be contained in every script to question the DB of a movie website. The BLOCK #RIGHTPAGEFOUND# is vital too. It can check if you have found what you are looking for. All other blocks are optional. For example, if the information retrieved from IMDb is satisfactory to you, but you want all the BoxCover from dvdempire.com, you can write a Full Script for IMDb and a little script for dvdempire with only the BLOCK to take the images : #POSTER#...#ENDPOSTER# Of course there is another way to do it : you can simply check the Cover Option in eXtreme Movie Manager Import Config and you will take only that.

TOP

## Why Block Structure?

For every item of information imported there is a special Block. This is because if a user wants to import only a particular item, he can uncheck all the others directly inside the software, without modify the script. For example, to take the TITLE of a movie, you should write all of the instructions inside this Block:

        #MOVIETITLE#
            ......
            ......
            #TITLE#=#03# #ONERROR#=*ASK*
        #ENDMOVIETITLE#

Of couse, you can also use only one Block ( #MOVIETITLE# in this case) to write ALL the instructions for gathering all information, but your script will be less configurable by users.

TOP

# First, Second and Third Script Generation

From eXtreme Movie Manager 1.0 to 4.8, the engine can handle two different types of Scripts : the OLD, also known as First Generation, and the Latest, or Second Generation. The instructions and functions are the same for both ( 2. has some new ), but the difference is the HTML. When the engine detects a First Generation script, the HTML is "pre-processed". This means that the HTML is rewritten in more lines, how it is if you edit with a normal text editor. The Second Generation doesn't pre-process the HTML (so the speed is increased), but the HTML in most cases is contained in only one line. This means that a Second Generation script cannot work with Divxmanager 0.9, because the HTML is always pre-processed.

Divxmanager 1.0 can work with both 1. and 2. because it can "read" the generation with this line :

    #SCRIPTGENERATION#=2

The 2. also has another Header variable : #REPLACESPACES#= This tells the engine what characters must be used to replace spaces in the movie title when querying the Web sites. This is indispensable for sites like ALLOCINE.FR (or the movie will not be found).

From eXtreme Movie Manager 5.0, the engine can handle only Third Generation Scripts. The instructions and functions are the same as Second Generation, but there are several new ones to import TV series and to parse the HTML better . In the Third Generation, the HTML is "pre-processed" (like Generation 1), because it is easier and quicker to make scripts in this way.

The most uptodate Script Generation is 5 (five!).

TOP

INSTRUCTIONS: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

A: | #ADDACTOR#
| #ADDFILMOGRAPHY#
C: | #CHECKACTOREXIST#
| #CHECKVARIABLE#
| #CLEARBUFFERACTORS#
| #CLEARTAGS#
| #COMPUTECURSOR#
| #COMPUTEVAR#
| #CONDITIONRIGHTPAGE#
D: | #DELETEWORD#
| #DOWNLOADTRAILER1#...#DOWNLOADTRAILER2#
E: | #ENDIF#
F: | #FIND#
| #FINDLINE#
| #FINDLINEPREVIOUS#
| #FINDLINEVAR#
| #FINDPREVIOUS#
| #FINDPREVIOUSVAR#
| #FINDVAR#
G: | #GETACTORVAR#
| #GETMOVIEVAR#
| #GETWEBSITELINE#
| #GETTITLE#
| #GOTO#
I: | #IF#
| #ISNUMERICAL#
L: | #LOADCURSOR#
| #LOADWEBSLOT1#
O: | #OPENNEWWEB#
| #OPENWEBSLOT1#...#OPENWEBSLOT5#
| #ORIGINALTITLE#
P: | #PUT#
| #PUTCURSOR#
R: | #READNEXTLINE#
| #READPREVIOUSLINE#
| #REPEAT#
| #RESETCURSOR#
| #RESTOREMAIN#
| #RESTOREWEB#
| #RESTOREWEBSITELINE#
S: | #SAVEEPISODEINFO#
| #SAVEMOVIE#
| #SAVEWEBSITELINE#
| #SETCURSOR#
| #SETOPTION#
| #SHOWVAR#
| #SIMILARSHOWS#
| #STARTDELETETAGS#
| #STARTREADWEB#
| #STARTSUBSTITUTETAGS#
| #STRING#
| #SUBSTITUTEWEBQUERYWORD#
| #SUBSTITUTEWORD#
T: | #TAKEACTOR#
| #TAKEACTORBDATE#
| #TAKEACTORBIO#
| #TAKEACTORBIRTHNAME#
| #TAKEACTORBPLACE#
| #TAKEACTORCOUNTRY#
| #TAKEACTORFILM#
| #TAKEACTORNAME#
| #TAKEACTORPROFESSION#
| #TAKEACTORSERIE#
| #TAKEACTORSEX#
| #TAKEACTORWEB#
| #TAKEAUDIODVD#
| #TAKEAWARDS#
| #TAKECHAPTERS#
| #TAKECOMMENTS#
| #TAKECOUNTRY#
| #TAKECUSTOM1#...#TAKECUSTOM11#
| #TAKEDEATHDATE#
| #TAKEDIRECTLINK#
| #TAKEDIRECTOR#
| #TAKEDISTRIBUTOR#
| #TAKEDVDYEAR#
| #TAKEEDITION#
| #TAKEFEATURE#
| #TAKEGENRE#
| #TAKELANGUAGE#
| #TAKEMEDIA#
| #TAKEMEDIALANGUAGE#
| #TAKEMEDIAYEAR#
| #TAKEMOVIEID#
| #TAKEMPAA#
| #TAKEMUSIC#
| #TAKENUMBER#
| #TAKEOFFICIALWEB#
| #TAKEORIGINAL#
| #TAKEPACKAGING#
| #TAKEPHOTOGRAPHER#
| #TAKEPICTURE#
| #TAKEPICTUREINMOVIES#
| #TAKEPLOT#
| #TAKEPOSTER#
| #TAKEPOSTERBACK#
| #TAKEPOSTEREPISODE#
| #TAKEPOSTERFANART#
| #TAKEPOSTERSERIE#
| #TAKEPREMIERED#
| #TAKEPRODCODE#
| #TAKEPRODUCER#
| #TAKEQUOTES#
| #TAKERATING#
| #TAKEREGION#
| #TAKEREVIEW#
| #TAKERUNTIME#
| #TAKESCREENDVD#
| #TAKESEASON#
| #TAKESTORY#
| #TAKESTUDIO#
| #TAKESUBGENRE#
| #TAKESUBTITLE#
| #TAKETAGLINE#
| #TAKETRAILER1#...#TAKETRAILER2#
| #TAKEUPC#
| #TAKEWORD#
| #TAKEWORDLEN#
| #TAKEWRITER#
| #TAKEYEAR#
| #TITLE#
| #TRIM#
W: | #WHILE#
| #WRITETITLELIST#
| #WRITEWARNING#

TOP

BLOCKS: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

| Start of Block | --> | End of Block | Function(s) | Description
A: | #ACTORDATA# | --> | #ENDACTORDATA# | #ADDFILMOGRAPHY# #TAKEACTORBDATE# #TAKEACTORBIO# #TAKEACTORBIRTHNAME# #TAKEACTORBPLACE#
#TAKEACTORCOUNTRY#
#TAKEACTORFILM#
#TAKEACTORNAME#
#TAKEACTORPROFESSION#
#TAKEACTORSEX#
#TAKEACTORWEB#
Get actor's movies
Get actor's birthdate
Get actor's biography
Get actor's birthname
Get actor's birth place
Get actor's birth country
Get actor's movie in database
Get actor's real name
Get actor's profession
Get actor's sex
Get actor's web site
Contains all functions to get every data of an actor.
| #ACTORS# | --> | #ENDACTORS# | #TAKEACTOR# | Get all actors of a movie.
| #AUDIODVD# | --> | #ENDAUDIODVD# | #TAKEAUDIODVD# | Get audio of the DVD
| #AWARDS# | --> | #ENDAWARDS# | #TAKEAWARDS# | Get awards infos
C: | #CHAPTERS# | --> | #ENDCHAPTERS# | #TAKECHAPTERS# | Get chapters of the DVD
| #COMMENTS# | --> | #ENDCOMMENTS# | #TAKECOMMENTS# | Get comments
| #COUNTRY# | --> | #ENDCOUNTRY# | #TAKECOUNTRY# | Get country
| #CREATEEPISODELIST# | --> | #ENDCREATEEPISODELIST# | #WRITETITLELIST# | Create a list of all episodes of a tv show
| #CREATEMOVIELIST# | --> | #ENDCREATEMOVIELIST# | #WRITETITLELIST# | Create a list of all movies that fit the search word
| #CUSTOM1#...#CUSTOM11# | --> | #ENDCUSTOM1#...#ENDCUSTOM11# | #TAKECUSTOM1# | Get custom infos no. 1 to 11
D: | #DELETETAGS# | --> | #ENDDELETETAGS# | #DELETEWORD# | Delete tags in here
| #DIRECTOR# | --> | #ENDDIRECTOR# | #TAKEDIRECTOR# | Get the director
| #DISTRIBUTOR# | --> | #ENDDISTRIBUTOR# | #TAKEDISTRIBUTOR# | Get the distributor
E: | #EDITION# | --> | #ENDEDITION# | #TAKEEDITION# | Get edition info
| #EPISODEAIRDATE# | --> | #ENDEPISODEAIRDATE# | #TAKEPREMIERED# | Get the episode's premiere date
| #EPISODEDIRECTOR# | --> | #ENDEPISODEDIRECTOR# | #TAKEDIRECTOR# | Get the episode's director
| #EPISODEPLOT# | --> | #ENDEPISODEPLOT# | #TAKEPLOT# | Get the episode's plot
| #EPISODESHOWSTARS# | --> | #ENDEPISODESHOWSTARS# | #TAKEACTORSERIE# | Get episode's actors
| #EPISODESTORY# | --> | #ENDEPISODESTORY# | #TAKESTORY# | Get the episode's story
| #EPISODETITLE# | --> | #ENDEPISODETITLE# | #TITLE# | Get the episode's title
| #EPISODEWRITER# | --> | #ENDEPISODEWRITER# | #TAKEWRITER# | Get the episode's writer
F: | #FEATURES# | --> | #ENDFEATURES# | #TAKEFEATURES# | Get the features of a DVD
G: | #GENRE# | --> | #ENDGENRE# | #TAKEGENRE# | Get the genre
L: | #LANGUAGE# | --> | #ENDLANGUAGE# | #TAKELANGUAGE# | Get the original language of a DVD
| #LOADOPTIONS# | --> | #ENDLOADOPTIONS# | #SETOPTION# | Load script's options
| #LOADWEBSLOTS# | --> | #ENDLOADWEBSLOTS# | #LOADWEBSLOT1# | Load web slots (1 to 5)
M: | #MEDIA# | --> | #ENDMEDIA# | #TAKEMEDIA# | Get the media type
| #MEDIALANGUAGE# | --> | #ENDMEDIALANGUAGE# | #TAKEMEDIALANGUAGE# | Get the languages of a DVD
| #MEDIAYEAR# | --> | #ENDMEDIAYEAR# | #TAKEMEDIAYEAR# | Get the publication year of a DVD
| #MOVIEID# | --> | #ENDMOVIEID# | #TAKEMOVIEID# | Get the movie's web site id
| #MOVIETITLE# | --> | #ENDMOVIETITLE# | #GETTITLE# | Get the movie's title
| #MPAA# | --> | #ENDMPAA# | #TAKEMPAA# | Get the MPAA for a movie
| #MUSIC# | --> | #ENDMUSIC# | #TAKEMUSIC# | Get the music info of a movie
N: | #NUMBER# | --> | #ENDNUMBER# | #TAKENUMBER# | Get number of discs
O: | #OFFICIALWEB# | --> | #ENDOFFICIALWEB# | #TAKEOFFICIALWEB# | Get official web site of a movie
| #ORIGINAL# | --> | #ENDORIGINAL# | #TAKEORIGINALTITLE# | Get the original title of a movie
P: | #PACKAGING# | --> | #ENDPACKAGING# | #TAKEPACKAGING# | Get packaging info of a movie
| #PHOTOGRAPHER# | --> | #ENDPHOTOGRAPHER# | #TAKEPHOTOGRAPHER# | Get the photographer
| #PLOT# | --> | #ENDPLOT# | #TAKEPLOT# | Get the plot
| #POSTER# | --> | #ENDPOSTER# | #TAKEPOSTER# | Get all posters of a movie
| #PREMIERED# | --> | #ENDPREMIERED# | #TAKEPREMIERED# | Get the premiere date of a movie
| #PRODUCER# | --> | #ENDPRODUCER# | #TAKEPRODUCER# | Get the producer
R: | #RATING# | --> | #ENDRATING# | #TAKERATING# | Get the official rating
| #REGION# | --> | #ENDREGION# | #TAKEREGION# | Get the regeion of a DVD
| #REVIEWS# | --> | #ENDREVIEWS# | #TAKEREVIEWS# | Get the reviews of a movie
| #RIGHTPAGEFOUND# | --> | #ENDRIGHTPAGEFOUND# | #CONDITIONRIGHTPAGE# | Block to analyze if the search returns directly the Movie Page or the List of Movies to show
| #RUNTIME# | --> | #ENDRUNTIME# | #TAKERUNTIME# | Get the runtime of a movie
S: | #SCREENDVD# | --> | #ENDSCREENDVD# | #TAKESCREENDVD# | Get the resolution of a DVD
| #SERIEAWARDS# | --> | #ENDSERIEAWARDS# | #TAKEAWARDS# | Get the awards for a tv show
| #SERIECOUNTRY# | --> | #ENDSERIECOUNTRY# | #TAKECOUNTRY# | Get the country of a tv show
| #SERIEGENRE# | --> | #ENDSERIEGENRE# | #TAKEGENRE# | Get the genre of a tv show
| #SERIELANGUAGE# | --> | #ENDSERIELANGUAGE# | #TAKELANGUAGE# | Get the language of a tv show
| #SERIEPLOT# | --> | #ENDSERIEPLOT# | #TAKEPLOT# | Get the plot of a tv show
| #SERIEPOSTER# | --> | #ENDSERIEPOSTER# | #TAKEPOSTERSERIE# | Get the poster of a tv show
| #SERIEPREMIERED# | --> | #ENDSERIEPREMIERED# | #TAKEPREMIERED# | Get the premiere date of a tv show
| #SERIESUBGENRE# | --> | #ENDSERIESUBGENRE# | #TAKESUBGENRE# | Get the subgenre of a tv show
| #SERIETITLE# | --> | #ENDSERIETITLE# | #ORIGINALTITLE# | Get the title of a tv show
| #SETVARIABLES# | --> | #ENDSETVARIABLES# | #SETOPTION# | Predefine script's variables
| #SIMILARSHOWS# | --> | #ENDSIMILARSHOWS# | #SIMILARSHOWS# | Get similar shows
| #STUDIO# | --> | #ENDSTUDIO# | #TAKESTUDIO# | Get the production studio of a movie
| #SUBGENRE# | --> | #ENDSUBGENRE# | #TAKESUBGENRE# | Get the subgenre of a movie
| #SUBSTITUTETAGS# | --> | #ENDSUBSTITUTETAGS# | #SUBSTITUTEWORD# | Substitute tags in here
| #SUBSTITUTEWEBQUERY# | --> | #ENDSUBSTITUTEWEBQUERY# | #SUBSTITUTEWEBQUERYWORD# | Substitute tags in #MOVIE# in here
| #SUBTITLES# | --> | #ENDSUBTITLES# | #TAKESUBTITLES# | Get the subtitles of a DVD
T: | #TAGLINE# | --> | #ENDTAGLINE# | #TAKETAGLINE# | Get the tag line of a movie
| #TRAILER# | --> | #ENDTRAILER# | #TAKETRAILER1# | Get the trailer(s) or adress(es) of them
U: | #UPC# | --> | #ENDUPC# | #TAKEUPC# | Get the UPC code
W: | #WRITER# | --> | #ENDWRITER# | #TAKEWRITER# | Get the writer of a movie
Y: | #YEAR# | --> | #ENDYEAR# | #TAKEYEAR# | Get the production year of a movie

TOP

SCRIPT HEADER:

#DATEBUILD#= | Date of script's creation or last modification
#ICONQUALITY#= | Quality of the pics
#LANGUAGESORT#= | Language of the web site info
#MADEBY#= | Name of script's creator or modifier
#NOTE#= | Characteristic of script
#OPTIONS#= | 0=No options|1=With options
#RELEASE#= | Minimum XMM release
#REPLACESPACES#= | Characters that must replace the spaces in the movie's title (for query the web)
#SCRIPTFORACTORS#= | TRUE|FALSE
#SCRIPTGENERATION#= | Generation of the script (actual=5)
#SCRIPTQUALITY#= | Quality of the script
#TVSERIES#= | TRUE|FALSE
#TYPE#= | 0=Complete|1=Only covers|2=Only informations
#WEBSITE#= | URL of web site

TOP

CONSTANTS:

#WEBQUERY#= | Search adress (http://akas.imdb.com/find?s=all&q=#MOVIE#)
#WEBQUERYID#= | Web adress (http://akas.imdb.com/Details?#MOVIEUPDATEID#)
#MOVIE#= | Search Name of the Movie
#MOVIEUPDATEID#= | Last used movie link for import
#SCRIPTWEBSITE#= | Base web adress (http://akas.imdb.com/)

TOP

#ADDACTOR#
Adds the Name of an Actor to Database.
Syntax:
#ADDACTOR#=#??#
Parameters:
#??# Required. The Variable where the NAME of the Actor is stored.
Examples:
1. #ADDACTOR#=#03#
This example takes the Name of Actor that is stored on the #03# variable. You can use this function several time to add all actors to Database.
Instructions | Top

#ADDFILMOGRAPHY#
Adds a Movie to Actor's data.
Syntax:
#ADDFILMOGRAPHY#=#??#
Parameters:
#??# Required. The Variable where the INFO of the Movie is stored.
Examples:
1. #ADDFILMOGRAPHY#=#03#
This example takes the Info of a Movie that is stored on the #03# variable. You can use this function several time to add all movies.
Remarks:
The Info must have following structure: TITLE (YEAR)§Link to Movie§Script name
Example: Avatar (2009)§http://www.imdb.com/title/tt0499549/§IMDB.COM (Complete).txt
Instructions | Top

#CHECKACTOREXIST#
Checks if the Name of an Actor is already in Database.
Syntax:
#CHECKACTOREXIST#=#?1#,#?2#
Parameters:
#?1# Required. The Variable where the RESULT is stored. 0 or Actor's ID in database.
#?2# Required. The Variable where the NAME of the Actor is stored.
Examples:
1. #CHECKACTOREXIST#=#03#,#04#
This example takes the Name of Actor that is stored on the #04# variable and returns the result on the #03# variable.
Instructions | Top

#CHECKVARIABLE#
Prepares a VARIABLE for #DELETETAGS#, #CLEARTAGS# or #SUBSTITUTETAGS#.
Syntax:
#CHECKVARIABLE#=#??#
Parameters:
#??# Required. The Variable that should be used.
Examples:
1. #CHECKVARIABLE#=#03#
This example takes the #03# variable and prepares it for #DELETETAGS#, #CLEARTAGS# or #SUBSTITUTETAGS#.
Instructions | Top

#CLEARBUFFERACTORS#
Clears all data of a previously import of an Actor.
Syntax:
#CLEARBUFFERACTORS#
Parameters:
none
Instructions | Top

#CLEARTAGS#
Clears all tags inside a variable.
Syntax:
#CLEARTAGS#=#??#
Parameters:
#??# Required. The Variable that must be cleared.
Instructions | Top

#COMPUTECURSOR#
Makes a SUM or SUBTRACTION to the CURSOR variable.
Syntax:
#COMPUTECURSOR#=±number
Parameters:
± Required. Is the operation you want make.
number Required. Is the Value to SUM or SUBTRACT
Examples:
1. #COMPUTECURSOR#=+2
This Example sum to the value of CURSOR "2".
Instructions | Top

#COMPUTEVAR#
Makes a SUM or SUBTRACTION to a variable that contains a numerical variable.
Syntax:
#COMPUTEVAR#=#??#±number
Parameters:
#??# Required. The numerical Variable that should be used for operation.
± Required. Is the operation you want make.
number Required. Is the Value to SUM or SUBTRACT
Examples:
1. #COMPUTECURSOR#=+2
This Example sum to the value of CURSOR "2".
Instructions | Top

#CONDITIONRIGHTPAGE#
Specifies if you have found directly the page of a movie.
Syntax:
#CONDITIONRIGHTPAGE# #?1#==#?2#
Parameters:
#?1# Required. The first variable to compare.
#?2# Required. The second variable to compare.
== Required. The Operator. It can assume this value :
"==" this means "Equal To"
"<>" this means "Different to"
Examples:
1. #CONDITIONRIGHTPAGE# #03#<>#04#
Here the page you found is directly of the movie if value of #03# variable is different from value of #04#.
Remarks:
You can use with this function only Variables, so if you need to compare a variable with a string, first you must #PUT# you string in another variable and then compare.
Instructions | Top

#DELETEWORD#
Delete defined words inside a variable.
Syntax:
#DELETEWORD#=text
Parameters:
text Required. Any String that has to be deleted from a Variable.
Remarks:
Variable has to be prepared with #CHECKVARIABLE#. Function must be inside #DELETETAGS# block.
Instructions | Top

#DOWNLOADTRAILER1#
Downloads the Link of a Trailer or the Link to the web page containing the Trailer.
Syntax:
#DOWNLOADTRAILER1#=#?1##?2#
Parameters:
#?1# Required. Link of the Trailer.
#?2# Optional. Extension of the Trailer.
Examples:
1. #DOWNLOADTRAILER1#=#03#
This example stores the Link to the page of the Trailer in #03# variable.
2. #DOWNLOADTRAILER1#=#03##04#
This example stores the Link to the Trailer in #03# variable and the file extension in #04# variable.
Instructions | Top

#IF# ... #ENDIF#
The Engine can supports the IF Statement, but you can't make an IF statement inside another IF. It Means that you can use any IF you want but each one must be used separatly; however, you can put an IF Statement inside a REPEAT...WHILE and vice-versa
This release of MagicScript Doesn't support the "ELSE" statement, but you have the #GOTO# Function that will help you in many different cases. The Structure is :
#IF# #?1#==#?2#
.....
.....
#ENDIF#
The IF compares two (RED) VARIABLES, and supports only these variables. If the result of the comparison is positive, Engine will execute the instruction inside IF-ENDIF, else all instructions will be ignored.This means that if you want to compare two strings, you must put it on empty VARIABLES first and then use the IF Statement. This isn't a big limitation for this kind of application.
Operators
Operators you can use with IF Statement :
"==" that means "Equal To", you can use it for strings and number comparisons
"<>" that means "Different", you can use it for strings and number comparisons
"<<" that means "Minor" , this makes a comparison only between numbers
">>" that means "Major" , this makes a comparison only between numbers
It isn't supported any operator like <= or >= because these operators are useless.
Instructions | Top

#FIND#
Search for a string only in the CURRENT LINE of HTML page.
Syntax:
#FIND#=text#??##ONERROR#=*options*
Parameters:
text Required. The text to find in the HTML.
#??# Required. The number of Variable where Function store the result of the Search.
If the text is found, the variable will contain his position , if no text is found, value 0
#ONERROR#=*options* Optional. In the options you can specify what Engine must do in case of ERROR of the Function :
STOP -> Will terminate the BLOCK where is the Function.
ASK -> Will show you the message of error and the script-line where is located
OK -> Will ignore the error and go on with executing the others functions
Examples:
1. #FIND#=<title>#12##ONERROR#=*ASK*
2. #FIND#=<title> #12##ONERROR#=*OK*
Note that these two functions search for different strings! the first searches "<title>", the Second the String "<title> " .Be careful!
This Instruction is similar to the #FINDLINE#, but searches for the text only in the current line of HTML.
Remarks:
This function writes also on the main variable CURSOR the position where the string you search starts. remember that all other functions start to
search text from the position of the CURSOR variable.
Instructions | Top

#FINDLINE#
Search downwards for a string in a HTML page.
Syntax:
#FINDLINE#=text#??##ONERROR#=*options*
Parameters:
text Required. The text to find in the HTML.
#??# Required. The number of Variable where Function store the result of the Search.
If the text is found, the variable will contain value 1 , if no text is found, value 0
#ONERROR#=*options* Optional. In the options you can specify what Engine must do in case of ERROR of the Function :
STOP -> Will terminate the BLOCK where is the Function.
ASK -> Will show you the message of error and the script-line where is located
OK -> Will ignore the error and go on with executing the others functions
Examples:
1. #FINDLINE#=<title>#12##ONERROR#=*STOP*
2. #FINDLINE#=<title> #01##ONERROR#=*ASK*
Note that these two functions search for different strings! the first search "<title>", Second the String "<title> " .Be careful!
This Instruction is useful when you want to search for a particular string in the whole HTML , but you don't know where it is. It is different from the #FIND#
function that searches for a string only in the CURRENT Line of HTML. To know the the position in the string where is text you are looking for begin,
you can use the CURSOR Variable.
Remarks:
This function writes on the main variable CURSOR the position where the string you are searching starts. Remember that all others functions start to
search text from the position of the CURSOR variable!.
Instructions | Top

#FINDLINEPREVIOUS#
Search upwards for a string in a HTML page.
Syntax:
#FINDLINEPREVIOUS#=text#??##ONERROR#=*options*
Parameters:
text Required. The text to find in the HTML.
#??# Required. The number of Variable where Function store the result of the Search.
If the text is found, the variable will contain value 1 , if no text is found, value 0
#ONERROR#=*options* Optional. In the options you can specify what Engine must do in case of ERROR of the Function :
STOP -> Will terminate the BLOCK where is the Function.
ASK -> Will show you the message of error and the script-line where is located
OK -> Will ignore the error and go on with executing the others functions
Examples:
1. #FINDLINEPREVIOUS#=<title>#12##ONERROR#=*STOP*
2. #FINDLINEPREVIOUS#=<title> #01##ONERROR#=*ASK*
Note that these two functions search for different strings! the first search "<title>", Second the String "<title> " .Be careful!
This Instruction is useful when you want to search for a particular string in the whole HTML , but you don't know where it is. It is different from the #FINDPREVIOUS#
function that searches for a string only in the CURRENT Line of HTML. To know the the position in the string where is text you are looking for begin,
you can use the CURSOR Variable.
Remarks:
This function writes on the main variable CURSOR the position where the string you are searching starts. Remember that all others functions start to
search text from the position of the CURSOR variable!.
Instructions | Top

#FINDLINEVAR#
Search downwards for a variable in a HTML page.
Syntax:
#FINDLINEVAR#=#?1#?2##ONERROR#=*options*
Parameters:
#?1# Required. The variable containing the text to find in the HTML.
#?2# Required. The number of Variable where Function store the result of the Search.
If the text is found, the variable will contain value 1 , if no text is found, value 0
#ONERROR#=*options* Optional. In the options you can specify what Engine must do in case of ERROR of the Function :
STOP -> Will terminate the BLOCK where is the Function.
ASK -> Will show you the message of error and the script-line where is located
OK -> Will ignore the error and go on with executing the others functions
Examples:
1. #FINDLINEVAR#=#11##12##ONERROR#=*STOP*
This Instruction is useful when you want to search for a particular string in the whole HTML , but you don't know where it is. It is different from the #FIND#
function that searches for a string only in the CURRENT Line of HTML. To know the the position in the string where is text you are looking for begin,
you can use the CURSOR Variable.
Remarks:
This function writes on the main variable CURSOR the position where the string you are searching starts. Remember that all others functions start to
search text from the position of the CURSOR variable!.
Instructions | Top

#FINDPREVIOUS#
Search for a string backwards only in the CURRENT LINE of HTML page.
Syntax:
#FINDPREVIOUS#=text#??##ONERROR#=*options*
Parameters:
text Required. The text to find in the HTML.
#??# Required. The number of Variable where Function store the result of the Search.
If the text is found, the variable will contain his position , if no text is found, value 0
#ONERROR#=*options* Optional. In the options you can specify what Engine must do in case of ERROR of the Function :
STOP -> Will terminate the BLOCK where is the Function.
ASK -> Will show you the message of error and the script-line where is located
OK -> Will ignore the error and go on with executing the others functions
Examples:
1. #FINDPREVIOUS#=<title>#12##ONERROR#=*ASK*
2. #FINDPREVIOUS#=<title> #12##ONERROR#=*OK*
Note that these two functions search for different strings! the first searches "<title>", the Second the String "<title> " .Be careful!
This Instruction is similar to the #FINDLINE#, but searches for the text only in the current line of HTML.
Remarks:
This function writes also on the main variable CURSOR the position where the string you search starts. remember that all other functions start to
search text from the position of the CURSOR variable.
Instructions | Top

#FINDPREVIOUSVAR#
Search backwards for a variable only in the CURRENT LINE of HTML page.
Syntax:
#FINDPREVIOUSVAR#=#?1##?2##ONERROR#=*options*
Parameters:
#?1# Required. The variable containing the text to find in the HTML.
#?2# Required. The number of Variable where Function store the result of the Search.
If the text is found, the variable will contain his position , if no text is found, value 0
#ONERROR#=*options* Optional. In the options you can specify what Engine must do in case of ERROR of the Function :
STOP -> Will terminate the BLOCK where is the Function.
ASK -> Will show you the message of error and the script-line where is located
OK -> Will ignore the error and go on with executing the others functions
Examples:
1. #FINDPREVIOUSVAR#=#11##12##ONERROR#=*ASK*
This Instruction is similar to the #FINDPREVIOUS#, but searches for the text only in the current line of HTML.
Remarks:
This function writes also on the main variable CURSOR the position where the string you search starts. remember that all other functions start to
search text from the position of the CURSOR variable.
Instructions | Top

#FINDVAR#
Search for a variable only in the CURRENT LINE of HTML page.
Syntax:
#FIND#=#?1##?2##ONERROR#=*options*
Parameters:
text Required. The text to find in the HTML.
#??# Required. The number of Variable where Function store the result of the Search.
If the text is found, the variable will contain his position , if no text is found, value 0
#ONERROR#=*options* Optional. In the options you can specify what Engine must do in case of ERROR of the Function :
STOP -> Will terminate the BLOCK where is the Function.
ASK -> Will show you the message of error and the script-line where is located
OK -> Will ignore the error and go on with executing the others functions
Examples:
1. #FIND#=<title>#12##ONERROR#=*ASK*
This Instruction is similar to the #FINDLINE#, but searches for the text only in the current line of HTML.
Remarks:
This function writes also on the main variable CURSOR the position where the string you search starts. remember that all other functions start to
search text from the position of the CURSOR variable.
Instructions | Top

#GETACTORVAR#
Take the Actor variables directly from database.
Syntax: #GETACTORVAR#=#??#=%WEBID%
Parameters:
#??# Required. The Variable where put the data taken from the Database.
%WEBID% Required. Example, this is for take the WebID of the actor .
Examples:
1. #GETACTORVAR#=#12#=%WEBID%
This Instruction is used to know if an Actor is alread on the Database, especially for IMDB).
Instructions | Top

#GETMOVIEVAR#
Put Movie Name in a variable.
Syntax: #GETMOVIEVAR#=#??#=%MOVIE%
Parameters:
#??# Required. The Variable where the title movie must be loaded.
%MOVIE% Required. The Title passed from XMM.
Examples:
1. #GETMOVIEVAR#=#12#=%MOVIE%
Instructions | Top

#GETTITLE#
Put the title of the movie in a variable, useful if you need the movie's title in the script.
Syntax:
#GETTITLE#=#??#
Parameters:
#??# Required. The Variable where the title movie must be loaded.
Examples:
1. #GETTITLE#=#03#
Instructions | Top

#GETWEBSITELINE#
Function to know the Current Text Line number of the Website HTML
Syntax:
#GETWEBSITELINE#=#??#
Parameters:
#??# Required. The Variable where the number must be loaded.
Examples:
1. #GETWEBSITELINE#=#03#
Instructions | Top

#GOTO#
Helping you to write powerful scripts, the #GOTO# Instruction is at your disposal. When the Engine will find this, the execution will jump to the LABEL Specified.
The Structure of this Instruction is :
#GOTO#=LABEL
Where label is a LABEL in another line of the Script.
A LABEL statement is composed by a colon followed by text : ":LABEL1"
When you want to go to this label, you must use this instruction :
"#GOTO#=LABEL1"
It is important not to put the colons in the #GOTO# instruction! : "#GOTO#=:LABEL1" and to cancel all spaces to the right! If you write a goto like this : "#GOTO#=LABEL1 ", the Engine will not find the Label and will report to you an error!
Particular attention must be payed when you use #GOTO# inside REPEAT..WHILE Statement :
Example
Good Code :
In this part of code everything is OK, the #GOTO# Instruction points to a LABEL that is out of any IF and REPEAT.
#REPEAT#
#FIND#=Href="#10# #ONERROR#=*OK*
#IF# #10#==#09#
#GOTO#=CAST2
#ENDIF#
#FIND#=>#01# #ONERROR#=*ASK*
#FIND#=<#02# #ONERROR#=*ASK*
#TAKEWORD#=#03#,#01#,#02#
#TAKEACTOR#=#03#
#WHILE# #09#<>#10#
:CAST2
BAD Code :
This code is BADLY written, because the #GOTO# Instruction points to a LABEL inside another REPEAT! At this time of development, MagicScript will not warn you this error, and the result of this script ARE UNPREDICTABLE!
#REPEAT#
#FIND#=Href="#10# #ONERROR#=*OK*
#IF# #10#==#09#
#GOTO#=CAST2
#ENDIF#
#TAKEWORD#=#03#,#01#,#02#
#TAKEACTOR#=#03#
#WHILE# #09#<>#10#
#REPEAT#
#FIND#=Href="#10# #ONERROR#=*OK*
:CAST2
#TAKEWORD#=#03#,#01#,#02#
#TAKEACTOR#=#03#
#WHILE# #09#<>#10#
Instructions | Top

#ISNUMERICAL#
Checks if a variable is numerical.
Syntax:
#ISNUMERICAL#=#?1#,#?2#
Parameters:
#?1# Required. The Variable to be checked.
#?2# Required. The Result of the check. 1=numeric, 0=alphanumeric
Examples:
1. #ISNUMERICAL#=#01#,#02#
Instructions | Top

#LOADCURSOR#
Loads a value in the Cursor Variable.
Syntax:
#LOADCURSOR#=#??#
Parameters:
#??# Required. The Variable where the value is stored.
Examples:
1. #LOADCURSOR#=#03#
Instructions | Top

#LOADWEBSLOT1#
Sets a previously loaded web page as active.
Syntax:
#LOADWEBSLOT1#
Parameters:
none
Examples:
1. #LOADWEBSLOT1#
Remarks:
Five Webslots are available: #LOADWEBSLOT1# to #LOADWEBSLOT5#
Instructions | Top

#OPENNEWWEB#
Particular attention must be focused on this Special Function #OPENNEWWEB#. Basically MagicScript Works with the HTML specified on #WEBQUERY# when you find directly the page of a movie, or another HTML you select from the LIST of MOVIE FOUND. With this instruction, you can OPEN and work to another HTML Until #RESTOREWEB# instruction is reached. This is particularly useful when some information (like plot in imdb.com, box covers in dvdempire.com) is stored in a different page. It is important that you SAVE the position of the CURSOR before using this function, so that you will find it when you go back to the original HTML.
Example
#OPENNEWWEB#=#50#
#REPEAT#
#FINDLINE#=http://posters.imdb.com#12##ONERROR#=*STOP*
#FIND#=http://posters.imdb.com#01# #ONERROR#=*STOP*
#IF# #12#<>#09#
#FIND#="#02# #ONERROR#=*STOP*
#TAKEWORD#=#03#,#01#,#02#
#STRING#=#04#=h#03#
#TAKEPOSTER#=#04#
#ENDIF#
#WHILE# #09#<>#12#
#RESTOREWEB#
This is a part of imdb's Script. In the variable #50# is stored the URL of the page that contains the posters.
The Engine with #OPENNEWWEB# re-initializes itself. To start reading the new HTML, set the first line at the top (without #STARTREADWEB# function) and set CURSOR to 1. The functions inside #OPENNEWWEB# are executed sequentially until #RESTOREWEB# is reached.
NOTE: You can use this function where you want in the script and as many times as you want, BUT you can't use it inside another #OPENNEWWEB#-#RESTOREWB#.
You can have :
#OPENNEWWEB#=#50#
.....
#RESTOREWEB#
....
#OPENNEWWEB#=#50#
.....
#RESTOREWEB#
But it is not correct to write:
#OPENNEWWEB#=#50#
......
#OPENNEWWEB#=#50#
......
#RESTOREWEB#
......
#RESTOREWEB#
The result of this Script are UNPREDICTABLE
Instructions | Top

#OPENWEBSLOT1#
Loads a web page into a slot.
Syntax:
#OPENWEBSLOT1#=#??#
Parameters:
#??# Required. The Variable containing the address of the web page.
Examples:
1. #OPENWEBSLOT1#=#03#
Remarks:
Five Webslots are available: #OPENWEBSLOT1# to #OPENWEBSLOT5#
Instructions | Top

#ORIGINALTITLE#
Takes the Original Title.
Syntax:
#ORIGINALTITLE#=#??#
Parameters:
#??# Required. The Variable where to store the Original Title.
Examples:
1. #ORIGINALTITLE#=#03#
Instructions | Top

#PUT#
Puts a text or a number into a variable.
Syntax:
#PUT#=Text#??#
Parameters:
Text Required. The Text (or number) you want put into the variable.
#??# Required. The Variable where put the text.
Examples:
1. #PUT#=mytext#02#
This Example put in the Variable #02# the text "mytext".
Remarks:
Remember that your text must be inside "="<-and first->"#" : the function #PUT#=text#02# is different from #PUT#=text #02# !.
Instructions | Top

#PUTCURSOR#
Puts the value of CURSOR into a variable.
Syntax:
#PUTCURSOR#=#??#
Parameters:
#??# Required. The Variable where put the value of CURSOR.
Examples:
1. #PUTCURSOR#=#01#
This Example puts the CURSOR into #01# variable.
Instructions | Top

#READNEXTLINE#
Read the next line of HTML and set the CURSOR Variable to 1;
Syntax:
#READNEXTLINE#
Parameters:
none
Remarks:
This instruction is useful when you have found a particular thing with #FINDLINE# instruction and you want analyze the text line by line.
Instructions | Top

#READPREVIOUSLINE#
Read the previous line of HTML and set the CURSOR Variable to 1;
Syntax:
#READPREVIOUSLINE#
Parameters:
none
Remarks:
This instruction is useful when you have found a particular thing with #FINDLINE# instruction and you want analyze the text line by line.
Instructions | Top

#REPEAT#...#WHILE#
The Engine can support REPEAT...WHILE Statement, but you can't make a REPEAT statement inside another REPEAT. It Means that you can use any REPEAT you want but each one must be used separatly. Inside a REPEAT, you can put all the instructions you want, also IF Statements (and vice-versa).
The Structure is :
#REPEAT#
.....
.....
#WHILE# #??#==#??#
The WHILE compares two (RED) VARIABLES, and supports only these variables. If the result of the comparison is positive, Engine will execute the cycle of instructions again, otherwise it will terminate the REPEAT-WHILE Statement.If you want to compare two strings, you must first put them on empty VARIABLES and then use the WHILE. This isn't a big limitation for this kind of application.
Operators
Operators you can use with the WHILE Statement are :
"==" that means "Equal To", you can use it for strings and number comparison
"<>" that means "Different", you can use it for strings and number comparison
You must be careful when you use a #GOTO# Instruction! See Example :
Good Code :
In this part of code everything is OK, the #GOTO# Instruction points to a LABEL that is out of any IF and REPEAT.
#REPEAT#
#FIND#=Href="#10# #ONERROR#=*OK*
#IF# #10#==#09#
#GOTO#=CAST2
#ENDIF#
#FIND#=>#01# #ONERROR#=*ASK*
#FIND#=<#02# #ONERROR#=*ASK*
#TAKEWORD#=#03#,#01#,#02#
#TAKEACTOR#=#03#
#WHILE# #09#<>#10#
:CAST2
BAD Code :
This code is BADLY written, because the #GOTO# Instruction points to a LABEL that is inside another REPEAT! At this time of development, MagicScript will not warn you of this error, and the result of this script ARE UNPREDICTABLE!
#REPEAT#
#FIND#=Href="#10# #ONERROR#=*OK*
#IF# #10#==#09#
#GOTO#=CAST2
#ENDIF#
#TAKEWORD#=#03#,#01#,#02#
#TAKEACTOR#=#03#
#WHILE# #09#<>#10#
#REPEAT#
#FIND#=Href="#10# #ONERROR#=*OK*
:CAST2
#TAKEWORD#=#03#,#01#,#02#
#TAKEACTOR#=#03#
#WHILE# #09#<>#10#
Instructions | Top

#RESETCURSOR#
Reset the Cursor variable.
Syntax:
#RESETCURSOR#
Parameters:
none
Examples:
1. #RESETCURSOR#
Instructions | Top

#RESTOREWEBSITELINE#
Restore the previously saved website line.
Syntax:
#RESTOREWEBSITELINE#
Parameters:
none
Examples:
1. #RESTOREWEBSITELINE#
Instructions | Top

#RESTOREMAIN#
Function to Re-Open in memory the Main HTML. Used when you load other webpages with #LOADWEBSLOT?#
Syntax:
#RESTOREMAIN#
Parameters:
none
Examples:
1. #RESTOREMAIN#
Instructions | Top

#SAVEEPISODEINFO#
This instruction save the Current Episode Information and clear the variables for Next Episode
Syntax:
#SAVEEPISODEINFO#
Parameters:
none
Examples:
1. #SAVEEPISODEINFO#
Instructions | Top

#SAVEMOVIE#
Force the Engine to Save Current Imported info in the Database without wait the End of Import Process
Syntax:
#SAVEMOVIE#
Parameters:
none
Examples:
1. #SAVEMOVIE#
Instructions | Top

#SAVEWEBSITELINE#
Save the actual website line.
Syntax:
#SAVEWEBSITELINE#
Parameters:
none
Examples:
1. #SAVEWEBSITELINE#
Instructions | Top

#SETCURSOR#
Puts a value in the CURSOR Variable.
Syntax:
#SETCURSOR#=number
Parameters:
number Required. The number you want put into the CURSOR variable.
Examples:
1. #SETCURSOR#=12
This Example puts in the value 12 in the CURSOR variable.
Instructions | Top

#SETOPTION#
Set an option.
Syntax:
#SETOPTION#=#?1#?[text]text
Parameters:
#?1# Required. The Option Variable.
? Required. The Option's value.
[text] Required. The Name of the Option.
text Required. The Description of the Option
Examples:
1. #SETOPTION#=#80#1[Title Import]0=Do not Take The Title|1=Take the Title
Instructions | Top

#SHOWVAR#
Show a variable, used for Debug
Syntax:
#SHOWVAR#=#??#
Parameters:
#??# The Variable to Show
Examples:
1. #SHOWVAR#=#??#
Instructions | Top

#SIMILARSHOWS#
Function to Import Similar TVShow
Syntax:
#SIMILARSHOWS#=#??#
Parameters:
#??# Required. The Varible of the Similar Show
Examples:
1. #SIMILARSHOWS#=#??#
Instructions | Top

#STARTDELETETAGS#
Call DELETETAGS block for a selected (#CHECKVARIABLE#) variable and delete text parts.
Syntax:
#STARTDELETETAGS#
Parameters:
none
Examples:
1. #STARTDELETAGS#
Instructions | Top

#STARTREADWEB#
Reset the Read Engine to the first line of HTML and set the CURSOR Variable to 1.
Syntax:
#STARTREADWEB#
Parameters:
No Parameter
This Instruction Tell to engine that you want start your search to the top of the HTML file.
Remarks:
It's recommended that you put this instruction in all Blocks for re-initializing the Engine. If you read the title of a movie that is at the bottom of the HTML file, and then read the Director that is at the top,you will not find Director's info if you didn't re-initialize the engine with this instruction .
Instructions | Top

#STARTSUBSTITUTETAGS#
Call SUBSTITUTETAGS block for a selected (#CHECKVARIABLE#) variable and replace text parts.
Syntax:
#STARTSUBSTITUTETAGS#
Parameters:
none
Examples:
1. #STARTSUBSTITUTETAGS#
Instructions | Top

#STRING#
Puts a string into a variable , the string can contain text and variables.
Syntax:
#STRING#=#?1#=[Text1][#?2#]{Text#??#}
Parameters:
#?1# Required. The Variable where put the string.
Text1, Text ... Optional. The Text you want put in the string.
#??# Optional. The Variable you want put in the string at the particular position.
Examples:
1. #PUT#=www.emuitalia.com/#01#
#PUT#=aletsg/#02#
#STRING#=#04#=http:/#01##02#divxmanager/
This Example put in the Variable #04# the text "http://www.movieplayer.it/divxmanager/" that is formed of various text and variables .
Remarks:
With this function you can build your strings before sending it to the Engine.
Instructions | Top

#SUBSTITUTEWEBQUERYWORD#
Replace defined words inside variable #MOVIE#.
Syntax:
#SUBSTITUTEWEBQUERYWORD#=text1=text2
Parameters:
text1 Required. Any String that has to be replaced in variable #MOVIE#.
text2 Required. Any String that replaces a text in variable #MOVIE#.
Remarks:
Function must be inside #SUBSTITUTEWEBQUERY# block.
Instructions | Top

#SUBSTITUTEWORD#
Replace defined words inside a variable.
Syntax:
#SUBSTITUTEWORD#=text1=text2
Parameters:
text1 Required. Any String that has to be replaced in a Variable.
text2 Required. Any String that replaces a text in a Variable.
Remarks:
Variable has to be prepared with #CHECKVARIABLE#. Function must be inside #DELETETAGS# block.
Instructions | Top

#TAKEXXX#
Take the XXX Variable.
Syntax:
#TAKEXXX#=#??#
Parameters:
#??# Required. The Variable where the XXX of the Movie is stored.
Examples:
1. #TAKEXXX#=#03#
This Example Takes the XXX on the #03# variable.
Instructions | Top

#TAKEWORD#
Takes a string from the current line.
Syntax:
#TAKEWORD#=#?1#,#?2#,#?3#
Parameters:
#?1# Required. The Variable where is the Text Extracted.
#?2# Required. The Variable of starting point of the Text to extract.
#?3# Required. The Variable of ending point of the Text to extract. If you set this = "0", you will take all the line!
Examples:
1. #TAKEWORD#=#03#,#01#,#02#
This Example takes a string from CURRENT LINE, starting from the position stored on variable #01# through #02# , and puts the text in the #03# Variable.
Remarks:
This function is fundamental for working with strings, it doesn't modify the CURSOR Variable.
Instructions | Top

#TAKEWORDLEN#
Takes a string from the current line;
Syntax:
#TAKEWORDLEN#=#?1#,#?2#,#?3#
Parameters:
#?1# Required. The Variable where is the Text Extracted.
#?2# Required. The Variable of starting point of the Text to extract.
#?3# Required. The length of the string to extract.
Examples:
1. #TAKEWORD#=#03#,#01#,#02#
This Example take a string LONG #02# from CURRENT LINE, starting at position stored on variable #01#, and puts the text in the #03# Variable.
Remarks:
This function is fundamental for working with strings, it doesn't modify the CURSOR Variable.
Instructions | Top

#TITLE#
Take the Title Variable.
Syntax:
#TITLE#=#??#
Parameters:
#??# Required. The Variable where the Title of the Movie is stored.
Examples:
1. #TITLE#=#03#
This Example Takes the Title on the #03# variable.
Instructions | Top

#TRIM#
Delete all leading and trailing spaces out of a selected (#CHECKVARIABLE#) variable.
Syntax:
#TRIM#
Parameters:
none
Examples:
1. #TRIM#
Instructions | Top

#WRITETITLELIST#
Writes the string in the MOVIE LIST FOUND; the string can contain text and variables.
Syntax:
#WRITETITLELIST#=[Text1][#?2#] --->{Text#??#}
Parameters:
Text1, Text ... Optional. The Text you want write.
#??# Optional. The Variable you want put in the string at the particular position.
" --->" Required. This String is REQUIRED : Engine use this for separate the URL of a movie from his TITLE!
Examples:
1. #PUT#=Title=?0133093#06#
#PUT#=Matrix, The#07#
#WRITETITLELIST#=http://imdb.com/#06# ---> #07#
This Example write the URL and the TITLE of the "Matrix" Movie.
Remarks:
You MUST use this function for create the list of all movies found on a page.
Instructions | Top

#WRITEWARNING#
Show a Messagebox with a text.
Syntax:
#WRITEWARNING#=Text
Parameters:
Text Required. The Text you want to write.
Examples:
1. #WRITEWARNING#=This may take some time to finish!
Instructions | Top

Templates:

# ActorCard:

Actorcards are based on HTML but with one big difference. The concept of actorcards is to place spaceholders called html-replacers in a blank html file, the program replaces these spaceholders with actual values of the database fields when you choose to display an actor::

1. HTML-replacer for the field name, e.g. when you want to put the field name for the actor filmography onto the actorcard you have to wrtite "_TACTOR_FILMOGRAPHY_" in the html-code. 2. HTML-replacer for the field content, e.g. when you want to put the field content for actor filmography onto the moviecard you have to wrtite ""_ACTOR_FILMOGRAPHY_" in the html-code.

As most people want something original of their own design, e.g. to make it match the general look and feel of the rest of their website, there is the possibility to create own actorcards. You need to have a HTML editor (such as MS FrontPage, Netscape etc.), or a text editor such as NotePad. Basic HTML knowledge is required. The best startingpoint for this is of course the "all" actorcard that contains all data fields and has a plain and simple layout.

There are two actorcard types you can use:

1. Ordinary Actorcard (as described above)

Field Name | Field Content | Description
| _ACTOR_NAME_ | Actor's name
| _ACTOR_ID_ | Actor's ID
| _ACTOR_COVER_ | Actor's cover
_TACTOR_BIRTHNAME_ | _ACTOR_BIRTHNAME_ | Actor's birth name
_TACTOR_BIRTHPLACE_ | _ACTOR_BIRTHPLACE_ | Actor's birth place
_TACTOR_COUNTRY_ | _ACTOR_COUNTRY_ | Actor's country
_TACTOR_BIRTHDATE_ | _ACTOR_BIRTHDATE_ | Actor's birth place
_TACTOR_DEATHDATE_ | _ACTOR_DEATHDATE_ | Actor's death date
_TACTOR_SEX_ | _ACTOR_SEX_ | Actor's sex
_TACTOR_WEBPAGE_ | _ACTOR_WEBPAGE_ | Actor's web page
_TACTOR_SCRIPTUSED_ | _ACTOR_SCRIPTUSED_ | Last used script
_TACTOR_LINK_SCRIPT_ | _ACTOR_LINK_SCRIPT_ | Actor's link script
_TACTOR_BIOGRAPHY_ | _ACTOR_BIOGRAPHY_ | Actor's biography
_TACTOR_FILMOGRAPHY_ | _ACTOR_FILMOGRAPHY_ | Actor's filmography
_TACTOR_COMMENTS_ | _ACTOR_COMMENTS_ | Actor's comments
_TACTOR_AWARDS_ | _ACTOR_AWARDS_ | Actor's awards
_TACTOR_PICTURES_ | _ACTOR_COVERX_ | Actor's covers
_TACTOR_PROFESSION_ | _ACTOR_PROFESSION_ | Actor's profession
| _MOVIE_ACTOR_COVER_ |
| _MOVIE_ACTOR_TITLE_ |
| _MOVIE_ACTOR_YEAR_ |
| _MOVIE_ACTOR_PLOT_ |

2. GeneralDB2HTML-Template

In the xMM documents folder there is a subfolder "(x)HTML-DB" where you can find an addon called GeneralDB2HTML . With this really cool application you can create all (x)HTML-databases you want with all fields you like. Warning: Syntax for html-id-tag differs from ordinary or other (x)HTML-compatible moviecards, which means that you have to create an own template for GeneralDB2HTML (see overview). JavaScript is case-sensitive. So please use the tags exactly as they are shown in the table (or inside GeneralDB2HTML)!

For a short overview take a look at the following table:

Description | "GeneralDB2HTML Template"
HTML-ID <... id="..." name="..."...>
Actor Awards | -
Actor Birthdate | BirthDate
Actor Birthname | BirthName
Actor Birthplace | BirthPlace
Actor Biography | Biography
Actor Comments | Comment
Actor Country | Country
Actor Deathdate | -
Actor Filmography | Filmography
Actor Cover | Picture
Actor Cover Nr.X | -
Actor ID | Actor ID
Actor Link Script | WebLinkActor
Actor Name | Name
Actor Profession | -
Actor Sex | Sex
Actor Used Script | ScriptUsed
Actor Webpage | WebPage

# MovieCard:

Moviecards are based on HTML but with one big difference. The concept of moviecards is to place spaceholders called html-replacers in a blank html file, the program replaces these spaceholders with actual values of the database fields when you choose to display a movie:

1. HTML-replacer for the field name, e.g. when you want to put the field name for the original title onto the moviecard you have to wrtite "_TMOVIE_ORIGINALTITLE_" in the html-code. 2. HTML-replacer for the field content, e.g. when you want to put the field content for the original title onto the moviecard you have to wrtite "_MOVIE_ORIGINALTITLE_" in the html-code.

As most people want something original of their own design, e.g. to make it match the general look and feel of the rest of their website, there is the possibility to create own moviecards. You need to have a HTML editor (such as MS FrontPage, Netscape etc.), or a text editor such as NotePad. Basic HTML knowledge is required. The best startingpoint for this is of course the "all" moviecard that contains all data fields and has a plain and simple layout.

There are three moviecard types you can use:

1. Ordinary Moviecard (as described above)

Field Name | Field Content | Description
_TMOVIE_NCD_ | _MOVIE_NCD_ | Number of discs
_TMOVIE_TITLE_ | _MOVIE_TITLE_ | Movie's title
_TMOVIE_COUNTRY_ | _MOVIE_COUNTRY_ | Movie's country
_TMOVIE_TAGLINE_ | _MOVIE_TAGLINE_ | Movie's tagline
_TMOVIE_RATED_ | _MOVIE_RATED_ | Movie's rating
_TPERSONAL_RATING_ | _MOVIE_PERSONALRATING_ | Movie's personal rating
| _MOVIE_ID_ | Movie ID
| _MOVIE_FANART_ | Movie's fanart pic
| _MOVIE_FANART1_ | Additional fanart pic
| _MOVIE_FANART2_ | Additional fanart pic
| _MOVIE_FANART3_ | Additional fanart pic
| _MOVIE_FANART4_ | Additional fanart pic
| _MOVIE_FANART5_ | Additional fanart pic
| _MOVIE_FANART6_ | Additional fanart pic
| _MOVIE_FANART7_ | Additional fanart pic
| _MOVIE_FANART8_ | Additional fanart pic
| _MOVIE_FANART9_ | Additional fanart pic
| _MOVIE_COVER_ | Movie's cover pic
| _MOVIE_COVER1_ | Additional cover pic
| _MOVIE_COVER2_ | Additional cover pic
| _MOVIE_COVER3_ | Additional cover pic
| _MOVIE_COVER4_ | Additional cover pic
| _MOVIE_COVER5_ | Additional cover pic
| _MOVIE_COVER6_ | Additional cover pic
| _MOVIE_COVER7_ | Additional cover pic
| _MOVIE_COVER8_ | Additional cover pic
| _MOVIE_COVER9_ | Additional cover pic
| _MOVIE_BACKCOVER_ | Movie's backcover pic
| _MOVIE_BACKCOVER1_ | Additional backcover pic
| _MOVIE_BACKCOVER2_ | Additional backcover pic
| _MOVIE_BACKCOVER3_ | Additional backcover pic
| _MOVIE_BACKCOVER4_ | Additional backcover pic
| _MOVIE_BACKCOVER5_ | Additional backcover pic
| _MOVIE_BACKCOVER6_ | Additional backcover pic
| _MOVIE_BACKCOVER7_ | Additional backcover pic
| _MOVIE_BACKCOVER8_ | Additional backcover pic
| _MOVIE_BACKCOVER9_ | Additional backcover pic
_TMOVIE_SEEN_ | _MOVIE_SEEN_ | seen/unseen
_TMOVIE_CDBOXID_ | _MOVIE_CDBOXID_ | CatalogN°
_TMOVIE_MEDIA_ | _MOVIE_MEDIA_ | Mediatype
_TMOVIE_MEDIAST_ | _MOVIE_MEDIAST_ | Status
_TMOVIE_LENGTH_ | _MOVIE_LENGTH_ | Movie's runtime
_TDATE_INSERT_ | _DATE_INSERT_ | Date of insertion
_TLAST_MODIFY_ | _LAST_MODIFY_ | Date of last modification
_TLOCATION_ | _LOCATION_ | Location
_TMOVIE_ORIGINALTITLE_ | _MOVIE_ORIGINALTITLE_ | Movie's original title
_TMOVIE_YEAR_ | _MOVIE_YEAR_ | Movie's year
_TMOVIE_GENRE_ | _MOVIE_GENRE_ | Movie's genre
_TMOVIE_SUBGENRE_ | _MOVIE_SUBGENRE_ | Movie's subgenre
_TMOVIE_MPAA_ | _MOVIE_MPAA_ | Movie's MPAA
_TMOVIE_PLOT_ | _MOVIE_PLOT_ | Movie's plot
_TMOVIE_COMMENT_ | _MOVIE_COMMENT_ | Movie's comments
_TMOVIE_REVIEW_ | _MOVIE_REVIEW_ | Movie's reviews
_TMOVIE_NOTES_ | _MOVIE_NOTES_ | Movie's notes
_TMOVIE_STUDIO_ | _MOVIE_STUDIO_ | Movie's studio
_TMOVIE_DISTRIBUTOR_ | _MOVIE_DISTRIBUTOR_ | Movie's distributor
_TMOVIE_LANGUAGE_ | _MOVIE_LANGUAGE_ | Movie's languages
_TLOAN_DATE_ | _LOAN_DATE_ | Loan date
_TLOANED_BY_ | _LOANED_BY_ | Leaned by
_TMOVIE_SITEID_ | _MOVIE_SITEID_ | Movie's site ID
_TMOVIE_SCRIPTUSED_ | _MOVIE_SCRIPTUSED_ | Last used script
| _EPISODE_SEASON_ | Episode's season
| _EPISODE_NUMBER_ | Episode's number
| _EPISODE_ID_ | Episode's ID
| _EPISODE_TITLE_ | Episode's title
| _IS_TVSHOW_ | Is entry a movie or a show
_TMOVIE_ACTORS_ |  | Starring
| _MOVIE_ACTORS_ID_ | Actor's ID
| _MOVIE_ACTORS_NAME_ | Actor's name
| _MOVIE_ACTORS_ROLE_ | Actor's role
_TMOVIE_DIRECTOR_ | _MOVIE_DIRECTOR_ | Movie's director
_TMOVIE_PRODUCER_ | _MOVIE_PRODUCER_ | Movie's producer
_TMOVIE_WRITER_ | _MOVIE_WRITER_ | Movie's writer
_TMOVIE_PHOTOGRAPHER_ | _MOVIE_PHOTOGRAPHER_ | Movie's photographer
_TMOVIE_MUSIC_ | _MOVIE_MUSIC_ | Movie's composer
_TMOVIE_AWARDS_ | _MOVIE_AWARDS_ | Movie's awards
_TMOVIE_REGION_ | _MOVIE_REGION_ | Region
_TMOVIE_EDITION_ | _MOVIE_EDITION_ | Edition
_TMOVIE_SCREENRATIO_ | _MOVIE_SCREENRATIO_ | Screen ratio
_TMOVIE_AUDIOFORMAT_ | _MOVIE_AUDIOFORMAT_ | Audio format
_TUPC_CODE_ | _UPC_CODE_ | UPC
_TMEDIA_YEAR_ | _MEDIA_YEAR_ | Media's year
_TDVD_CHAPTERS_ | _DVD_CHAPTERS_ | Media chapters
_TMOVIE_VIDEOSTANDARD_ | _MOVIE_VIDEOSTANDARD_ | Video standard
_TDATE_PURCHASED_ | _DATE_PURCHASED_ | Date purchased
_TPRICE_ | _PRICE_ | Price
_TDATE_SEEN_ | _DATE_SEEN_ | Date seen
_TSEEN_WHERE_ | _SEEN_WHERE_ | Seen at
_TOWNER_ | _OWNER_ | Owner
_TAQUIRED_FROM_ | _AQUIRED_FROM_ | Aquired from
_TVALUE_ | _VALUE_ | Value ????
_TMOVIE_CODEC_ | _MOVIE_CODEC_ | Codec
_TMOVIE_BITRATE_ | _MOVIE_BITRATE_ | Bitrate
_TMOVIE_RESOLUTION_ | _MOVIE_RESOLUTION_ | Resolution
_TMOVIE_AUDIO_ | _MOVIE_AUDIO_ | Audio
_TMOVIE_SUBTITLE_ | _MOVIE_SUBTITLE_ | Movie's subtitles
_TMOVIE_ABITRATE_ | _MOVIE_ABITRATE_ | Audio bitrate
_TMOVIE_SRATE_ | _MOVIE_SRATE_ | Sample rate
_TMOVIE_CHANNELS_ | _MOVIE_CHANNELS_ | Channels
_TMOVIE_FILESIZE_ | _MOVIE_FILESIZE_ | Movie's file size
_TMOVIE_RIPPER_ | _MOVIE_RIPPER_ | Ripper
| _MOVIE_AUDIOQUALITY_ | Audio rating
| _MOVIE_AUDIODVD_ | AudioDVD
| _MOVIE_CATEGORY_ | Category
| _MOVIE_COLOR_ | Colour
_TMOVIE_CUSTOMFIELD1_ | _MOVIE_CUSTOMFIELD1_ | Custom field 1
_TMOVIE_CUSTOMFIELD2_ | _MOVIE_CUSTOMFIELD2_ | Custom field 2
_TMOVIE_CUSTOMFIELD3_ | _MOVIE_CUSTOMFIELD3_ | Custom field 3
_TMOVIE_CUSTOMFIELD4_ | _MOVIE_CUSTOMFIELD4_ | Custom field 4
_TMOVIE_CUSTOMFIELD5_ | _MOVIE_CUSTOMFIELD5_ | Custom field 5
_TMOVIE_CUSTOMFIELD6_ | _MOVIE_CUSTOMFIELD6_ | Custom field 6
_TMOVIE_CUSTOMFIELD7_ | _MOVIE_CUSTOMFIELD7_ | Custom field 7
_TMOVIE_CUSTOMFIELD8_ | _MOVIE_CUSTOMFIELD8_ | Custom field 8
_TMOVIE_CUSTOMFIELD9_ | _MOVIE_CUSTOMFIELD9_ | Custom field 9
_TMOVIE_CUSTOMFIELD10_ | _MOVIE_CUSTOMFIELD10_ | Custom field 10
_TMOVIE_CUSTOMFIELD11_ | _MOVIE_CUSTOMFIELD11_ | Custom field 11
_TMOVIE_DOLBY_ | _MOVIE_DOLBY_ | Dolby
| _MOVIE_FEATURES_ | Media features
| _MOVIE_FILMQUALITY_ | Film rating
_TMOVIE_FREETIME_ | _MOVIE_FREETIME_ | Free time
_TMOVIE_FPS_ | _MOVIE_FPS_ | FPS
_TMOVIE_LANGUAGEENCODED_ | _MOVIE_LANGUAGEENCODED_ | Media Language
_TMOVIE_MOVIEFILE1_ | _MOVIE_MOVIEFILE1_ | Movie file 1
_TMOVIE_MOVIEFILE2_ | _MOVIE_MOVIEFILE2_ | Movie file 2
_TMOVIE_MOVIEFILE3_ | _MOVIE_MOVIEFILE3_ | Movie file 3
_TMOVIE_MOVIEFILE4_ | _MOVIE_MOVIEFILE4_ | Movie file 4
_TMOVIE_MOVIEFILE5_ | _MOVIE_MOVIEFILE5_ | Movie file 5
_TMOVIE_MOVIEFILE6_ | _MOVIE_MOVIEFILE6_ | Movie file 6
_TMOVIE_OFFICIALWEB_ | _MOVIE_OFFICIALWEB_ | Movie's official web site
_TPACKAGING_ | _PACKAGING_ | Packaging
_TMOVIE_PLAYER_ | _MOVIE_PLAYER_ | Player
_TMOVIE_START_ | _MOVIE_START_ | Starting position
| _MOVIE_TOTALACTORS_ | Total number of actors
| _MOVIE_TOTALMOVIES_ | Total number of movies
_TMOVIE_TRAILERFILE1_ | _MOVIE_TRAILERFILE1_ | Trailer file 1
_TMOVIE_TRAILERFILE2_ | _MOVIE_TRAILERFILE2_ | Trailer file 2
| _MOVIE_VIDEODVD_ | Video DVD
_TMOVIE_VIDEOMODE_ | _MOVIE_VIDEOMODE_ | Video mode
| _MOVIE_VIDEOQUALITY_ | Video rating
| _MOVIE_WEBIMPORTED_ | Web imported
_TMOVIE_WEBLINK_ | _MOVIE_WEBLINK_ | Web link
| _MOVIE_ACTORS_PICTURE_ | Actor's pic

2. (x)HTML-database compatible Moviecard

If you want to use your moviecard for the export as (x)HTML-database you have to write a special html-id-tag additionally, otherwise the content will not be exported. At the moment not all fields can be exported into the (x)HTML-database!

3. GeneralDB2HTML-Template

In the xMM documents folder there is a subfolder "(x)HTML-DB" where you can find an addon called GeneralDB2HTML . With this really cool application you can create all (x)HTML-databases you want with all fields you like. Warning: Syntax for html-id-tag differs from ordinary or other (x)HTML-compatible moviecards, which means that you have to create an own template for GeneralDB2HTML (see overview). JavaScript is case-sensitive. So please use the tags exactly as they are shown in the table (or inside GeneralDB2HTML)!

For a short overview take a look at the following table:

Description | "(X)HTML Moviecard" | "GeneralDB2HTML Template"

> HTML-ID
> <.. id="..." name="..."..>

HTML-ID
<.. id="..." name="..."..>

Aquired From | - | AquiredFrom
Audio | mAudio | AudioCodec
A.Bitrate | mABR | AudioBitRate
Audio Format | mADVD | AudioDVD
Audio Rating | - | -
AudioDVD | - | -
Awards | - | Awards
Bitrate | mBR | Bitrate
CatalogN° | mRefNo | CatalogNo
Category | - | -
Channels | mACH | Channels
Chapters | - | Chapter
Codec | mCodec | Codec
Colour | - | Colour
Comments | mComm | Comments
Cover | mCover | Cover
Custom Field 1 | - | Custom1
Custom Field 2 | - | Custom2
Custom Field 3 | - | Custom3
Custom Field 4 | - | Custom4
Custom Field 5 | - | Custom5
Custom Field 6 | - | Custom6
Custom Field 7 | - | Custom7
Custom Field 8 | - | Custom8
Custom Field 9 | - | Custom9
Custom Field 10 | - | Custom10
Custom Field 11 | - | Custom11
Country | mCountry | Country
Date Last Loan | - | DateLoan
Date Of Insert | mDoI | DateInsert
Date Purchased | - | DatePurchased
Date Seen | - | SeenWhen
Director | mDIR | Director
Disks | mNCD | Disk
Distributor | mDistr | Distributor
Dolby | mDolby | DolbyCodec
Edition | mEdition | Edition
Features | - | -
Film Rating | - | -
Free Time | mFTime | FreeTime
FPS | mFPS | FPS
Genre | mGenre | Genre
Last Loan | - | Loaner
Last Modify | - | Modified
Length | mTime | Length
Loaned | - | Loan
Location | - | Location
Marked | - | Marked
Media | mMedia | Media
Media Language | mLang | Language
Media Year | - | -
Movie File 1 | - | MovieFile1
Movie File 2 | - | MovieFile2
Movie File 3 | - | MovieFile3
Movie File 4 | - | MovieFile4
Movie File 5 | - | MovieFile5
Movie File 6 | - | MovieFile6
Movie ID | mMediaID | MovieID
Movie Title | mTitle | Title
MPAA | mPAA | MPAA
Music | - | Musician
Notes | mNotes | Notes
Official Web | - | URL
Original Language | mOLang | OriginalLanguage
Original Title | mOTitle | OriginalTitle
Owner | - | Owner
Packaging | - | Packaging
Personal Rating | - | -
Photographer | mPhtg | Photographer
Player | - | Player
Plot | mPlot | Plot
Price | - | Price
Producer | mProd | Producer
Rating | mRated | Rating
Region | mRegion | Region
Resolution | mRES | Resolution
Review | - | -
Ripper | mRipper | Ripped
S.Rate | mSR | SampleRate
Screen Ratio | mVDVD | VideoDVD
Script Used | - | ScriptUsed
Seen At | - | SeenWhere
seen/unseen | - | Seen
Site ID | - | InternetID
Starring | mActors | Actors
Starting Position | mPOS | Position
Status | mStatus | Status
Studio | mStudio | Studio
SubGenre | - | Subgenre
SubTitle | mSubT | Subtitles
Tagline | mTagline | TagLine
Total Actors | - | -
Total Filesize | mFSize | Filesize
Total Movies | - | -
Trailer File 1 | - | TrailerFile1
Trailer File 2 | - | TrailerFile2
UPC Code | - | UPC
Value | - | Value
VideoDVD | - | -
Video Mode | mMode | Mode
Video Rating | - | -
Video Standard | mVStd | VideoStandard
Web Imported | - | WebImported
Web Link | - | WebLinkScript
Writer | mWriter | Writer
Year | mYear | Year

# EpisodeCard:

Field Name | Field Content | Description
| _EPISODE_RATED_ | Episode's rating
| _EPISODE_NCD_ | Episode's number of media
| _EPISODE_COUNTRY_ | Episode's Country
| _EPISODE_SEEN_ | Seen/Unseen
| _EPISODE_GENRE_ | Episode's genre
| _EPISODE_TITLE_ | Episode's title
| _EPISODE_SERIEID_ | Episode's serie ID
| _EPISODE_SERIETITLE_ | Episode's serie title
| _EPISODE_SEASON_ | Episode's season
| _EPISODE_NUMBER_ | Episode number
| _PREV_EPISODE_ID_ | Previous episode
| _NEXT_EPISODE_ID_ | Next episode
| _EPISODE_COVER_ | Episode's pic
_TEPISODE_PERSONALRATING_ | _EPISODE_PERSONALRATING_ | Episode's personal rating
_TEPISODE_AIRDATE_ | _EPISODE_AIRDATE_ | Episode's air date
_TEPISODE_DIRECTOR_ | _EPISODE_DIRECTOR_ | Episode's director
_TEPISODE_WRITER_ | _EPISODE_WRITER_ | Episode's writer
_TEPISODE_STORY_ | _EPISODE_STORY_ | Episode's story
_TEPISODE_RATING_ | _EPISODE_RATING_ | Episode's rating
_TEPISODE_PLOT_ | _EPISODE_PLOT_ | Episodes's plot
_TEPISODE_CAST_ | _EPISODE_CAST_ | Episode's cast
_TEPISODE_NOTES_ | _EPISODE_NOTES_ | Episode's notes
_TEPISODE_COMMENTS_ | _EPISODE_COMMENTS_ | Episode's comments
_TEPISODE_REVIEWS_ | _EPISODE_REVIEWS_ | Episodes' reviews
_TEPISODE_TRIVIA_ | _EPISODE_TRIVIA_ | Episode's trivia
_TEPISODE_QUOTES_ | _EPISODE_QUOTES_ | Episode's quotes
_TEPISODE_AUDIOFORMAT_ | _EPISODE_AUDIOFORMAT_ | Episode's audio format
_TEPISODE_CODEC_ | _EPISODE_CODEC_ | Episode's codec
_TEPISODE_BITRATE_ | _EPISODE_BITRATE_ | Episode's bitrate
_TEPISODE_RESOLUTION_ | _EPISODE_RESOLUTION_ | Episode's resolution
_TEPISODE_AUDIO_ | _EPISODE_AUDIO_ | Episode's audio
_TEPISODE_ABITRATE_ | _EPISODE_ABITRATE_ | Episode's audio bitrate
_TEPISODE_SRATE_ | _EPISODE_SRATE_ | Episode's sample rate
_TEPISODE_CHANNELS_ | _EPISODE_CHANNELS_ | Episode's channels
_TEPISODE_FILESIZE_ | _EPISODE_FILESIZE_ | Episode's file size

Special Card Options:

_SEASONS_DISPLAY_ | (Un)fold seasons
_EPISODES_DISPLAY_ | (Un)fold episodes
_ACTORS_DISPLAY_ | (Un)fold actors
_CREW_DISPLAY_ | (Un)fold crew
_AWARDS_DISPLAY_ | (Un)fold awards
_OTHER_DISPLAY_ | (Un)fold Other Informations