Link to home
Start Free TrialLog in
Avatar of MomentumRB
MomentumRBFlag for United States of America

asked on

flash created with Matchware Mediator 8 not displaying properly in some browsers

A flash file that I created using Matchware Mediator 8 is not displaying in some browsers. I've uploaded the file using WinSCP. The flash displays properly in IE7 but not in Firefox, Chrome and Safari. I am a newb when it comes to flash so please be gentle. The flash is on www.toolbro.com homepage.

Using the error console in Firefox:
MM_latestPluginRevision[playerVersion] is undefined
http://www.toolbro.com/animation/Dispatcher.js                                      Line 528
/*********************************************************************
 *
 * Macromedia Flash Dispatcher -- a scriptable detector for Flash Player
 *
 *
 * copyright (c) 2000 Macromedia, Inc.
 *
 *********************************************************************/
 
 
/*
 * URL of the Flash self-detecting movie ("sniffer").
 *
 * Reset this if you move the file out of the directory in which the
 * document containing the script that calls MM_FlashDispatch() resides.
 */
 
var MM_FlashSnifferURL = "detectFlash.swf";
 
 
/*
 * Latest available revisions of the Plug-in.
 */
 
var MM_latestPluginRevision = new Object();
MM_latestPluginRevision["6.0"] = new Object();
MM_latestPluginRevision["5.0"] = new Object();
MM_latestPluginRevision["4.0"] = new Object();
MM_latestPluginRevision["3.0"] = new Object();
MM_latestPluginRevision["2.0"] = new Object();
 
/*
 * This table must be updated as new versions and revisions of the
 * plug-in are released, in support of the 'requireLatestRevision'
 * option in MM_FlashDispatch().
 */
//FS 103101 - the 6.0 revision numbers need to be updated once we know the revision numbers will be.
MM_latestPluginRevision["6.0"]["Windows"] = 79;
MM_latestPluginRevision["6.0"]["Macintosh"] = 79;
 
MM_latestPluginRevision["5.0"]["Windows"] = 42;
MM_latestPluginRevision["5.0"]["Macintosh"] = 41;
 
MM_latestPluginRevision["4.0"]["Windows"] = 28;
MM_latestPluginRevision["4.0"]["Macintosh"] = 27;
MM_latestPluginRevision["4.0"]["Unix"] = 12;
 
MM_latestPluginRevision["3.0"]["Windows"] = 10;
MM_latestPluginRevision["3.0"]["Macintosh"] = 10;
 
MM_latestPluginRevision["2.0"]["Windows"] = 11;
MM_latestPluginRevision["2.0"]["Macintosh"] = 11;
 
 
/*
 * MM_FlashInfo() -- construct an object representing Flash Player status
 *
 * Constructor:
 *
 *	new MM_FlashInfo()
 *
 * Properties:
 *
 *	installed		true if player is installed
 *				(undefined if undetectable)
 *
 *	implementation		the form the player takes in this
 *				browser: "ActiveX control" or "Plug-in"
 *
 *	autoInstallable		true if the player can be automatically
 *				installed/updated on this browser/platform
 *
 *	version			player version if installed
 *
 *	revision		revision if implementation is "Plug-in"
 *
 * Methods:
 *
 *	canPlay(contentVersion)	true if installed player is capable of
 *				playing content authored with the
 *				specified version of Flash software
 *
 * Description:
 *
 *	MM_FlashInfo() instantiates an object that contains as much
 *	information about Flash Player--whether it is installed, what
 *	version is installed, and so one--as is possible to collect.
 *
 *	Where Flash Player is implemented as a plug-in and the user's
 *	browser supports plug-in detection, all properties are defined;
 *	this includes Netscape on all platforms and Microsoft Internet
 *	Explorer 5 on the Macintosh.  Where Flash Player is implemented
 *	as an ActiveX control (MSIE on Windows), all properties except
 *	'revision' are defined.
 *
 *	Prior to version 5, Microsoft Internet Explorer on the Macintosh
 *	did not support plug-in detection.  In this case, no properties
 *	are defined, unless the cookie 'MM_FlashDetectedSelf' has been
 *	set, in which case all properties except 'version' and 'revision'
 *	are set.
 *
 *	This object is primarily meant for use by MM_FlashDispatch(), but
 *	may be of use in reporting the player version, etc. to the user.
 */
 
var MM_FlashControlInstalled;	// is the Flash ActiveX control installed?
var MM_FlashControlVersion;	// ActiveX control version if installed
 
function MM_FlashInfo()
{
    if (navigator.plugins && navigator.plugins.length > 0)
    {
	this.implementation = "Plug-in";
	this.autoInstallable = false;	// until Netscape SmartUpdate supported
 
	// Check whether the plug-in is installed:
 
	if (navigator.plugins["Shockwave Flash"])
	{
	    this.installed = true;
 
	    // Get the plug-in version and revision:
 
	    var words =
		navigator.plugins["Shockwave Flash"].description.split(" ");
 
	    for (var i = 0; i < words.length; ++i)
	    {
		if (isNaN(parseInt(words[i])))
		continue;
 
		this.version = words[i];
		
 
		this.revision = parseInt(words[i + 1].substring(1));
	    }
	}
	else
	{
	    this.installed = false;
	}
    }
    else if (MM_FlashControlInstalled != null)
    {
	this.implementation = "ActiveX control";
	this.installed = MM_FlashControlInstalled;
	this.version = MM_FlashControlVersion;
	this.autoInstallable = true;
    }
    else if (MM_FlashDetectedSelf())
    {
	this.installed = true;
	this.implementation = "Plug-in";
	this.autoInstallable = false;
    }
 
    this.canPlay = MM_FlashCanPlay;
}
 
 
/*
 * MM_FlashDispatch() -- get Flash Player status and redirect appropriately
 *
 * Synopsis:
 *
 *	MM_FlashDispatch(contentURL, contentVersion, requireLatestRevision,
 *			 upgradeURL, install, installURL, altURL,
 *			 overridePluginsPage)
 *
 *	Arguments:
 *
 *	    contentURL			URL of document containing Flash content
 *
 *	    contentVersion		version of Flash software used to
 *					author content
 *
 *	    requireLatestRevision	Boolean indicating whether to require
 *					latest revision of player (plug-in only)
 *
 *	    upgradeURL			document to load if player must be
 *					upgraded to play content and automated
 *					updating is not supported on the user's
 *					browser & platform
 *
 *	    install			Boolean indicating whether to install
 *					if player is not installed
 *
 *	    installURL			document to load if 'install' is true
 *					and automated installation is not
 *					supported on user's browser & platform
 *
 *	    altURL			document to load if 'install' is false
 *
 *	    overridePluginsPage		Boolean indicating whether to set the
 *					PLUGINSPAGE attribute for the embedded
 *					Flash Player sniffer to `installURL'
 *		disableAutoInstall		Boolean indicating that the auto-installation
 *					should not occur and that the user will go to the installURL
 * 					or to the upgradeURL as specified
					
 *
 *	Returns:
 *
 *	    Normally, never returns; changes window.location.
 *	    Returns with no value when called improperly.
 *
 * Description:
 *
 *	MM_FlashDispatch() detects whether the user's Web browser has the
 *	Flash plug-in or ActiveX control installed, and what version is
 *	installed if so. It then takes appropriate action based on whether
 *	Flash Player is installed and is compatible with 'contentVersion':
 *	load a document containing Flash content, load alternate content,
 *	or oversee the updating or installation of the player.
 *
 *	There are three possible outcomes of the detection process: 
 *
 *	    1. A version of Flash Player has been detected that is
 *	       suitable for playing the requested content version.
 *	       MM_FlashDispatch() will load 'contentURL'.
 *
 *	    2. An unsuitable version of Flash Player has been detected.
 *	       MM_FlashDispatch() will load 'contentURL' if automated
 *	       updating is supported on the user's browser & platform;
 *	       otherwise, it will load 'upgradeURL'.
 *
 *	    3. Flash Player is not installed.  If 'install' is set to
 *	       true, MM_FlashDispatch() will load 'contentURL' if the
 *	       user's browser supports automated installation; otherwise,
 *	       it will load 'installURL'.  If 'install' is false,
 *	       MM_FlashDispatch() will load 'altURL'.
 *
 *	When script-based detection of Flash Player is not possible,
 *	MM_FlashDispatch() attempts to load a Flash movie to carry out
 *	the detection. If Flash Player is not installed, there is presently
 *	no choice but to let the browser redirect the user via the
 *	PLUGINSPAGE attribute of the EMBED tag. In this case, 'install'
 *	is ignored, but setting 'overridePluginsPage' to true will
 *	set PLUGINSPAGE to 'installURL', overriding its default value
 *	(the URL for the Macromedia Flash download center). If this flag
 *	is set, 'installURL' must be absolute, not relative.
 */
 
var MM_FlashPluginsPage = "http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash";
 
function MM_FlashDispatch(contentURL, contentVersion, requireLatestRevision,
			  upgradeURL, install, installURL, altURL,
			  overridePluginsPage,disableAutoInstall)
{
    if (disableAutoInstall == null)
    {
	alert("ERROR: MM_FlashDispatch() called with too few arguments.");
	return;
    }
 
 
    if (overridePluginsPage && installURL.substring(0, 7) != "http://")
    {
	alert("ERROR: MM_FlashDispatch() called with relative URL" +
	    " for PLUGINSPAGE (" + installURL + ")");
 
	return;
    }
 
 
    var player = new MM_FlashInfo();
 
    if (player.installed == null)
    {
	var sniffer =
	    "<EMBED HIDDEN=\"true\" TYPE=\"application/x-shockwave-flash\"" +
		  " WIDTH=\"18\" HEIGHT=\"18\"" +
		  " BGCOLOR=\"" + document.bgcolor + "\"" +
		  " SRC=\"" + MM_FlashSnifferURL +
			"?contentURL=" + contentURL + "?" +
			"&contentVersion=" + contentVersion +
			"&requireLatestRevision=" + requireLatestRevision +
			"&latestRevision=" +
			    MM_FlashLatestPluginRevision(contentVersion) +
			"&upgradeURL=" + upgradeURL +
			"\"" +
		  " LOOP=\"false\" MENU=\"false\"" +
		  " PLUGINSPAGE=\"" +
		    (overridePluginsPage ? installURL : MM_FlashPluginsPage) +
		    "\"" +
	    ">" +
	    "</EMBED>";
 
	document.open();
	document.write("<HTML><HEAD><TITLE>");
	document.write("Checking for the Flash Player");
	document.write("</TITLE></HEAD>");
	document.write("<BODY BGCOLOR=\"" + document.bgcolor + "\">");
	document.write(sniffer);
	document.write("</BODY>");
	document.write("</HTML>");
	document.close();
    }
    else if (player.installed)
    {
	if (player.canPlay(contentVersion, requireLatestRevision))
	{
	    location = contentURL;
	}
	else
	{
	if (disableAutoInstall)
	{
	location = upgradeURL;
	}else
	{
	    location = player.autoInstallable ? contentURL : upgradeURL;
	}
	}
    }
    else if (install)
    {
	if (disableAutoInstall){
	location = installURL;
	}
	else{
	location = player.autoInstallable ? contentURL : installURL;
	}
    }
    else
    {
	location = altURL;
    }
}
 
 
/*
 * MM_FlashRememberIfDetectedSelf() -- record that Flash Player detected itself
 *
 * Synopsis:
 *
 *	MM_FlashRememberIfDetectedSelf()
 *	MM_FlashRememberIfDetectedSelf(count)
 *	MM_FlashRememberIfDetectedSelf(count, units)
 *
 *	Arguments:
 *
 *	    count		length of time in units before re-checking
 *				whether content can be played (default: 60)
 *
 *	    units		unit(s) of time to count: "minute(s)," "hour(s)"
 * 				or "day(s)" (default: "days")
 *
 *
 * Description:
 *
 *	This function conditionally sets a cookie signifying that
 *	the current document was referred via the Dispatcher using
 *	Flash Player self-detection.  It is intended to spare the user
 *	whose browser does not support script-based detection from the
 *	process of Flash Player self-detection on each visit.
 *	
 *	The cookie persists for 60 days, or for the amount of time
 *	specified by the 'count' and 'units' parameters.
 *
 *	If cookies are not being accepted, this function is a no-op;
 *	the Dispatcher will simply attempt Flash Player self-detection
 *	on subsequent visits.
 *
 *	This function must be called from a script embedded in the
 *	document referenced by the 'contentURL' argument to
 *	MM_FlashDispatch().
 *
 */
 
function MM_FlashRememberIfDetectedSelf(count, units)
{
    // the sniffer appends an empty search string to the URL
    // to indicate that it is the referrer
 
    if (document.location.search.indexOf("?") != -1)
    {
	if (!count) count = 60;
	if (!units) units = "days";
 
	var msecs = new Object();
 
	msecs.minute = msecs.minutes = 60000;
	msecs.hour = msecs.hours = 60 * msecs.minute;
	msecs.day = msecs.days = 24 * msecs.hour;
 
	var expires = new Date();
 
	expires.setTime(expires.getTime() + count * msecs[units]);
 
	document.cookie =
	    'MM_FlashDetectedSelf=true ; expires=' + expires.toGMTString();
    }
}
 
 
/*
 * MM_FlashDemur() -- record user's decision not to install Flash Player
 *
 * Synopsis:
 *
 *	MM_FlashDemur()
 *	MM_FlashDemur(count)
 *	MM_FlashDemur(count, units)
 *
 *	Arguments:
 *
 *	    count	length of time in units to remember decision
 *			(default: 60)
 *
 *	    units	unit(s) of time to count: "minute(s)," "hour(s)"
 *			or "day(s)" (default: "days")
 *
 *	Returns:
 *
 *	    true if successful; false otherwise.
 *
 
 * Description:
 *
 *	MM_FlashDemur() sets a cookie signifying that the user requested
 *	that the decision not to install Flash be remembered.
 *
 *	The cookie persists for 60 days, or for the amount of time
 *	specified by the 'count' and 'units' parameters.
 *
 *	This function may be used as the handler for the 'onClick' event
 *	associated with the user's selecting a link to alternate content.
 *	If cookies are not being accepted, it will return false; this
 *	may be used to control whether the link is followed.
 */
 
function MM_FlashDemur(count, units)
{
    if (!count) count = 60;
    if (!units) units = "days";
 
    var msecs = new Object();
 
    msecs.minute = msecs.minutes = 60000;
    msecs.hour = msecs.hours = 60 * msecs.minute;
    msecs.day = msecs.days = 24 * msecs.hour;
 
    var expires = new Date();
 
    expires.setTime(expires.getTime() + count * msecs[units]);
 
    document.cookie =
	'MM_FlashUserDemurred=true ; expires=' + expires.toGMTString();
 
 
    if (!MM_FlashUserDemurred())
    {
	alert("Your browser must accept cookies in order to " +
	      "save this information.  Try changing your preferences.");
 
	return false;
    }
    else
	return true;
}
 
 
/*
 * MM_FlashUserDemurred() -- recall user's decision not to install Flash Player
 *
 * Synopsis:
 *
 *	MM_FlashUserDemurred()
 *
 *	Returns:
 *
 *	    true if a cookie signifying that the user declined to install
 *	    Flash Player is set; false otherwise.
 *
 * Description:
 *
 *	This function is useful in determining whether to set the 'install'
 *	flag when calling MM_FlashDispatch().  If true, it means that the
 *	user's previous decision not to install Flash Player should be
 *	honored, i.e., 'install' should be set to false.
 */
 
function MM_FlashUserDemurred()
{
    return (document.cookie.indexOf("MM_FlashUserDemurred") != -1);
}
 
 
/*********************************************************************
 * THE FOLLOWING FUNCTIONS ARE NOT PUBLIC.  DO NOT CALL THEM DIRECTLY.
 *********************************************************************/
 
/*
 * MM_FlashLatestPluginRevision() -- look up latest Flash Player plug-in
 *				     revision for this platform
 *
 * Synopsis:
 *
 *	MM_FlashLatestPluginRevision(playerVersion)
 *
 *	Arguments:
 *
 *	    playerVersion	plug-in version to look up revision of
 *
 *	Returns:
 *
 *	    The latest available revision of the specified version of
 *	    the Flash Player plug-in on this platform, as an integer;
 *	    undefined for versions before 2.0.
 *
 * Description:
 *
 *	This look-up function is only intended to be called internally.
 */
 
function MM_FlashLatestPluginRevision(playerVersion)
{
    var latestRevision;
    var platform;
 
    if (navigator.appVersion.indexOf("Win") != -1)
	platform = "Windows";
    else if (navigator.appVersion.indexOf("Macintosh") != -1)
	platform = "Macintosh";
    else if (navigator.appVersion.indexOf("X11") != -1)
	platform = "Unix";
 
    latestRevision = MM_latestPluginRevision[playerVersion][platform];
 
    return latestRevision;
}
 
 
/*
 * MM_FlashCanPlay() -- check whether installed Flash Player can play content
 *
 * Synopsis:
 *
 *	MM_FlashCanPlay(contentVersion, requireLatestRevision)
 *
 *	Arguments:
 *
 *	    contentVersion		version of Flash software used to
 *					author content
 *
 *	    requireLatestRevision	Boolean indicating whether latest
 *					revision of plug-in should be required
 *
 *	Returns:
 *
 *	    true if the installed player can play the indicated content;
 *	    false otherwise.
 *
 * Description:
 *
 *	This function is not intended to be called directly, only
 *	as an instance method of MM_FlashInfo.
 */
 
function MM_FlashCanPlay(contentVersion, requireLatestRevision)
{
    var canPlay;
 
    if (this.version)
    {
	canPlay = (parseInt(contentVersion) <= this.version);
 
	if (requireLatestRevision)
	{
	    if (this.revision &&
		this.revision < MM_FlashLatestPluginRevision(this.version))
	    {
		canPlay = false;
	    }
	}
    }
    else
    {
	canPlay = MM_FlashDetectedSelf();
    }
 
    return canPlay;
}
 
 
/*
 * MM_FlashDetectedSelf() -- recall whether Flash Player has detected itself
 *
 * Synopsis:
 *
 *	MM_FlashDetectedSelf()
 *
 *	Returns:
 *
 *	    true if a cookie signifying that Flash Player has detected itself
 *	    is set; false otherwise.
 *
 * Description:
 *
 *	This function is only meant to be called internally.
 */
 
function MM_FlashDetectedSelf()
{
    return (document.cookie.indexOf("MM_FlashDetectedSelf") != -1);
}

Open in new window

Avatar of MomentumRB
MomentumRB
Flag of United States of America image

ASKER

Anyone?
Avatar of Asta Cu
Sorry no one has stepped inn to help, and although I understand Browsers somewhat, not so much Flash.  A few thoughts that "may" come to play and add some insights...
How current is Flash or the Flash Player that is called in the various Browser interfaces?  Perhaps it deals with security and/or Flash Settings, which are variables.  Perhaps since Security issues are elevated and most Browsers were recently updated for that reason, some browser updates are needed.  Chrome is still indevelopmental mode, and there may be some updates and/or bugs reported and in process.  Any error messages?
Hopefully others better versed in the Flash creation mode will step in, but hope I can be of some help as time permits.  ":0)  Asta
Are you running TRIAL programs?  Have you checked for updates to the actual Matchware Mediator 8 since many newer versions, patches and updates found on google like this?
http://search.yahoo.com/search?ei=UTF-8&fr=mcsaoffblock&p=matchware+mediator+8&rs=1&fr2=rs-top
Even for version 8, I see a number of Service Packs but with that see CAUTIONS and ALERTS such as this:
http://www.matchware.com/en/support/servicepacks/mediator8.htm
 Best wishes and hope your New Year is safe, and joyful.
Thanks for the reply. I have since installed a full version of Mediator 9 but it has not fixed the issue. I have updated all the browsers and still have no luck.
Is it TRIAL or purchased?  Also see a number of Service Packs...  http://www.matchware.com/en/support/default.htm
off to work!  Hope I've been of help.
Purchased. I have updated also with no change.
Thx, some troubleshooting links for WINSCP http://www.opengroup.org/faqs/sftp/
What browser versions for Firefox and Chrome, the problem Browsers you noted?
Some other possibilities to help ... and I'd only add, in closing for the week, that it could be PORT and Security related that is blocking you.
http://www.brighthub.com/internet/web-development/reviews/16050.aspx
Personally, freebies and "open source" can be a double edged sword with problems like trojans/worms/virus/password stealers and so on with open ports so I opt never to play in that arena.  Some things have their costs, and would be VERY cautious in your explorations.  I sure hope you have good Viruscan/Firewall/Spyware and related updated DAT files installed as you continue on your ventures.
Thanks Asteac. The problem is not in the upload through WinSCP since it uploads to the server and IE can display it. FF error console is saying that the problem is with Dispatcher.js
ASKER CERTIFIED SOLUTION
Avatar of MomentumRB
MomentumRB
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
This question took a couple of weeks with only one person that tried to help. So far I am 0-3 with questions on Expert Exchange.