﻿/* SWFObject */if (typeof deconcept == "undefined") { var deconcept = new Object(); } if (typeof deconcept.util == "undefined") { deconcept.util = new Object(); } if (typeof deconcept.SWFObjectUtil == "undefined") { deconcept.SWFObjectUtil = new Object(); } deconcept.SWFObject = function(_1, id, w, h, _5, c, _7, _8, _9, _a) { if (!document.getElementById) { return; } this.DETECT_KEY = _a ? _a : "detectflash"; this.skipDetect = deconcept.util.getRequestParameter(this.DETECT_KEY); this.params = new Object(); this.variables = new Object(); this.attributes = new Array(); if (_1) { this.setAttribute("swf", _1); } if (id) { this.setAttribute("id", id); } if (w) { this.setAttribute("width", w); } if (h) { this.setAttribute("height", h); } if (_5) { this.setAttribute("version", new deconcept.PlayerVersion(_5.toString().split("."))); } this.installedVer = deconcept.SWFObjectUtil.getPlayerVersion(); if (!window.opera && document.all && this.installedVer.major > 7) { deconcept.SWFObject.doPrepUnload = true; } if (c) { this.addParam("bgcolor", c); } var q = _7 ? _7 : "high"; this.addParam("quality", q); this.setAttribute("useExpressInstall", false); this.setAttribute("doExpressInstall", false); var _c = (_8) ? _8 : window.location; this.setAttribute("xiRedirectUrl", _c); this.setAttribute("redirectUrl", ""); if (_9) { this.setAttribute("redirectUrl", _9); } }; deconcept.SWFObject.prototype = { useExpressInstall: function(_d) { this.xiSWFPath = !_d ? "expressinstall.swf" : _d; this.setAttribute("useExpressInstall", true); }, setAttribute: function(_e, _f) { this.attributes[_e] = _f; }, getAttribute: function(_10) { return this.attributes[_10]; }, addParam: function(_11, _12) { this.params[_11] = _12; }, getParams: function() { return this.params; }, addVariable: function(_13, _14) { this.variables[_13] = _14; }, getVariable: function(_15) { return this.variables[_15]; }, getVariables: function() { return this.variables; }, getVariablePairs: function() { var _16 = new Array(); var key; var _18 = this.getVariables(); for (key in _18) { _16[_16.length] = key + "=" + _18[key]; } return _16; }, getSWFHTML: function() { var _19 = ""; if (navigator.plugins && navigator.mimeTypes && navigator.mimeTypes.length) { if (this.getAttribute("doExpressInstall")) { this.addVariable("MMplayerType", "PlugIn"); this.setAttribute("swf", this.xiSWFPath); } _19 = "<embed type=\"application/x-shockwave-flash\" src=\"" + this.getAttribute("swf") + "\" width=\"" + this.getAttribute("width") + "\" height=\"" + this.getAttribute("height") + "\" style=\"" + this.getAttribute("style") + "\""; _19 += " id=\"" + this.getAttribute("id") + "\" name=\"" + this.getAttribute("id") + "\" "; var _1a = this.getParams(); for (var key in _1a) { _19 += [key] + "=\"" + _1a[key] + "\" "; } var _1c = this.getVariablePairs().join("&"); if (_1c.length > 0) { _19 += "flashvars=\"" + _1c + "\""; } _19 += "/>"; } else { if (this.getAttribute("doExpressInstall")) { this.addVariable("MMplayerType", "ActiveX"); this.setAttribute("swf", this.xiSWFPath); } _19 = "<object id=\"" + this.getAttribute("id") + "\" classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" width=\"" + this.getAttribute("width") + "\" height=\"" + this.getAttribute("height") + "\" style=\"" + this.getAttribute("style") + "\">"; _19 += "<param name=\"movie\" value=\"" + this.getAttribute("swf") + "\" />"; var _1d = this.getParams(); for (var key in _1d) { _19 += "<param name=\"" + key + "\" value=\"" + _1d[key] + "\" />"; } var _1f = this.getVariablePairs().join("&"); if (_1f.length > 0) { _19 += "<param name=\"flashvars\" value=\"" + _1f + "\" />"; } _19 += "</object>"; } return _19; }, write: function(_20) { if (this.getAttribute("useExpressInstall")) { var _21 = new deconcept.PlayerVersion([6, 0, 65]); if (this.installedVer.versionIsValid(_21) && !this.installedVer.versionIsValid(this.getAttribute("version"))) { this.setAttribute("doExpressInstall", true); this.addVariable("MMredirectURL", escape(this.getAttribute("xiRedirectUrl"))); document.title = document.title.slice(0, 47) + " - Flash Player Installation"; this.addVariable("MMdoctitle", document.title); } } if (this.skipDetect || this.getAttribute("doExpressInstall") || this.installedVer.versionIsValid(this.getAttribute("version"))) { var n = (typeof _20 == "string") ? document.getElementById(_20) : _20; n.innerHTML = this.getSWFHTML(); return true; } else { if (this.getAttribute("redirectUrl") != "") { document.location.replace(this.getAttribute("redirectUrl")); } } return false; } }; deconcept.SWFObjectUtil.getPlayerVersion = function() { var _23 = new deconcept.PlayerVersion([0, 0, 0]); if (navigator.plugins && navigator.mimeTypes.length) { var x = navigator.plugins["Shockwave Flash"]; if (x && x.description) { _23 = new deconcept.PlayerVersion(x.description.replace(/([a-zA-Z]|\s)+/, "").replace(/(\s+r|\s+b[0-9]+)/, ".").split(".")); } } else { if (navigator.userAgent && navigator.userAgent.indexOf("Windows CE") >= 0) { var axo = 1; var _26 = 3; while (axo) { try { _26++; axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash." + _26); _23 = new deconcept.PlayerVersion([_26, 0, 0]); } catch (e) { axo = null; } } } else { try { var axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7"); } catch (e) { try { var axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6"); _23 = new deconcept.PlayerVersion([6, 0, 21]); axo.AllowScriptAccess = "always"; } catch (e) { if (_23.major == 6) { return _23; } } try { axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash"); } catch (e) { } } if (axo != null) { _23 = new deconcept.PlayerVersion(axo.GetVariable("$version").split(" ")[1].split(",")); } } } return _23; }; deconcept.PlayerVersion = function(_29) { this.major = _29[0] != null ? parseInt(_29[0]) : 0; this.minor = _29[1] != null ? parseInt(_29[1]) : 0; this.rev = _29[2] != null ? parseInt(_29[2]) : 0; }; deconcept.PlayerVersion.prototype.versionIsValid = function(fv) { if (this.major < fv.major) { return false; } if (this.major > fv.major) { return true; } if (this.minor < fv.minor) { return false; } if (this.minor > fv.minor) { return true; } if (this.rev < fv.rev) { return false; } return true; }; deconcept.util = { getRequestParameter: function(_2b) { var q = document.location.search || document.location.hash; if (_2b == null) { return q; } if (q) { var _2d = q.substring(1).split("&"); for (var i = 0; i < _2d.length; i++) { if (_2d[i].substring(0, _2d[i].indexOf("=")) == _2b) { return _2d[i].substring((_2d[i].indexOf("=") + 1)); } } } return ""; } }; deconcept.SWFObjectUtil.cleanupSWFs = function() { var _2f = document.getElementsByTagName("OBJECT"); for (var i = _2f.length - 1; i >= 0; i--) { _2f[i].style.display = "none"; for (var x in _2f[i]) { if (typeof _2f[i][x] == "function") { _2f[i][x] = function() { }; } } } }; if (deconcept.SWFObject.doPrepUnload) { if (!deconcept.unloadSet) { deconcept.SWFObjectUtil.prepUnload = function() { __flash_unloadHandler = function() { }; __flash_savedUnloadHandler = function() { }; window.attachEvent("onunload", deconcept.SWFObjectUtil.cleanupSWFs); }; window.attachEvent("onbeforeunload", deconcept.SWFObjectUtil.prepUnload); deconcept.unloadSet = true; } } if (!document.getElementById && document.all) { document.getElementById = function(id) { return document.all[id]; }; } var getQueryParamValue = deconcept.util.getRequestParameter; var FlashObject = deconcept.SWFObject; var SWFObject = deconcept.SWFObject;

//var $ = jQuery.noConflict();

var S = {

  ShowFormErrors: function(container, message) {
    var el = $(container);
    if (el) {
      el.html(message).fadeIn(500);
    } else {
      alert(message.stripTags());
    }
  },
  
  ShowMessage: function(container, message){
    var el = $('#'+container);
    if(el){
      
      el.html(message).fadeIn(500);
      var y = S.getScrollTop();
      if(y > 0){
        var o = el.offset();
        var elY = o.top;
        window.scrollTo(0, elY - 50);
      }
    }else{ 
      alert(message.stripTags()); 
    }
  },
  
  getScrollTop: function(){
    if (self.pageYOffset){
      // all except Explorer
    	return self.pageYOffset;
    }else if (document.documentElement && document.documentElement.scrollTop){
      // Explorer 6 Strict
    	return document.documentElement.scrollTop;
    }else if (document.body){
      // all other Explorers
    	return document.body.scrollTop;
    }
},
  
  RemoveFromCart: function(id) {
    $('#product' + id).fadeTo('slow', 0.25);
  },

  IncreaseValue: function(input) {
    $(input).val(parseInt($(input).val()) + 1)
  },

  DecreaseValue: function(input) {
    if ($(input).val() > 1) {
      $(input).val(parseInt($(input).val()) - 1)
    }
  },
  
  AddToCart: function(productId){
   
    jQuery.post(window.location.pathname, { ProductId: productId, ActionType:'AddProduct' } , function(responseText, status) {
      if (jQuery('#progSummary').is(':visible')) {
        jQuery('#progSummary').fadeTo('fast', 0.5).fadeTo('fast', 1);
      } else { 
      jQuery('#progSummary').fadeIn('slow');
      }
    });
    
  },
  
  DeleteLocation: function(locationId){
   var answer = confirm("Delete location?");
    if (answer) {
      jQuery.post(window.location.pathname, { LocationId: locationId, ActionType:'DeleteLocation' } , function(responseText, status) {
          jQuery('#loc' + locationId).fadeOut('slow');
      });
    }
  }
}

var Store = {

  Update: function(form){
    var f = jQuery(form);
    $D.Update('#' + f.attr('ResultsContainer').value , window.location.pathname, f.serialize());
    $('#' + f.attr('ResultsContainer').value).fadeIn("slow");
  },
  
  Sort: function(params){
    var uri = window.location.pathname;
    if(uri.indexOf(".aspx") === -1) uri += 'default.aspx';
    $D.Update('#' + params.ResultsContainer, uri, params);
  },
 
  UpdateAndFade: function(expression, url, data) {
    jQuery.post(url, data, function(responseText, status) {
      jQuery(expression).html(responseText).fadeIn("fast");
    });
  }

}

var Notification = {

  showFlash: function(x) {
  var html = '<a style="float:right; font-weight:bold; margin-bottom:5px;" href="#" onclick="$(\'#FlashContainer\').empty(); $(\'#darkBackgroundLayer\').hide(); $(\'#notification-container\').hide(); return false;">Close</a>' +
                '<div id="FlashContainer" style="text-align: center; clear:both;"></div>';

    Notification.displayContent(html);

    var swfPath = '';

    switch (x) {
      case 1:
        swfPath = '/local/flash/inground_planter_animation.swf';
        break;

      case 2:
        swfPath = '/local/flash/inground_trashcan_animation.swf';
        break;
    }

    var so = new SWFObject(swfPath, 'mpl', '640', '480', '9');

    so.write('FlashContainer');
    var el = $('#FlashContainer');
    var y = S.getScrollTop();
    if (y > 0) {
      var o = el.offset();
      var elY = o.top;
      window.scrollTo(0, elY - 50);
    }
  },

  showVideo: function(x) {
    var html = [];

    html.push('<a style="float:right; font-weight:bold; margin-bottom:5px;" href="#" onclick="$(\'#VideoPlayerContainer\').html(\' \');document.getElementById(\'darkBackgroundLayer\').style.display = \'none\'; document.getElementById(\'video-container\').style.display = \'none\'; return false;">Close</a>',
                '<div id="VideoPlayerContainer" style="text-align: center; clear:both;"></div>'
    );
    Notification.displayVideo(html.join(''));
    var so = new SWFObject('/local/flash/player.swf', 'mpl', '640', '480', '9');
    so.addParam('allowscriptaccess', 'always');
    so.addParam('allowfullscreen', 'true');
    so.addParam('wmode', 'transparent');
    switch (x) {
      //All these are for the home page, in sequential order (show me videos)           

      case 1:
        so.addParam('flashvars', '&duration=254&file=http://devbridge.s3.amazonaws.com/video/aircycle/AtoZ_Recycling.flv&backcolor=FFFFFF&frontcolor=5E95C6&lightcolor=2583bf&screencolor=FFFFFF&controlbar=over&autostart=true');
        break;
      case 2:
        so.addParam('flashvars', '&duration=62&file=http://devbridge.s3.amazonaws.com/video/aircycle/cbrereports.flv&backcolor=FFFFFF&frontcolor=5E95C6&lightcolor=2583bf&screencolor=FFFFFF&controlbar=over&autostart=true');
        break;
      case 3:
        so.addParam('flashvars', '&duration=150&file=http://devbridge.s3.amazonaws.com/video/aircycle/BEfull.flv&backcolor=FFFFFF&frontcolor=5E95C6&lightcolor=2583bf&screencolor=FFFFFF&controlbar=over&autostart=true');
        break;
      case 4:
        so.addParam('flashvars', '&duration=254&file=http://devbridge.s3.amazonaws.com/video/aircycle/AtoZ_Recycling.flv&backcolor=FFFFFF&frontcolor=5E95C6&lightcolor=2583bf&screencolor=FFFFFF&controlbar=over&autostart=true');
        break;
      case 6:
        so.addParam('flashvars', '&duration=928&file=http://devbridge.s3.amazonaws.com/video/aircycle/BE_Training.flv&backcolor=FFFFFF&frontcolor=5E95C6&lightcolor=2583bf&screencolor=FFFFFF&controlbar=over&autostart=true');
        break;
      case 7:
        so.addParam('flashvars', '&duration=275&file=http://devbridge.s3.amazonaws.com/video/aircycle/EasyPak_480x320.flv&backcolor=FFFFFF&frontcolor=5E95C6&lightcolor=2583bf&screencolor=FFFFFF&controlbar=over&autostart=true');
        break;
      case 8:
        so.addParam('flashvars', '&duration=234&file=http://www.greensodexo.com/video/Why%20GreenSodexo/Why%20GreenSodexo/why%20GreenSodexo.flv&backcolor=FFFFFF&frontcolor=5E95C6&lightcolor=2583bf&screencolor=FFFFFF&controlbar=over&autostart=true');
        break;
      case 9:
        so.addParam('flashvars', '&duration=275&file=http://devbridge.s3.amazonaws.com/video/aircycle/EasyPak_480x320.flv&backcolor=FFFFFF&frontcolor=5E95C6&lightcolor=2583bf&screencolor=FFFFFF&controlbar=over&autostart=true');
        break;
      case 10:
        so.addParam('flashvars', '&duration=140&file=http://devbridge.s3.amazonaws.com/video/aircycle/recycling.flv&backcolor=FFFFFF&frontcolor=5E95C6&lightcolor=2583bf&screencolor=FFFFFF&controlbar=over&autostart=true');
        break;
      case 11:
        so.addParam('flashvars', '&duration=98&file=http://www.greensodexo.com/video/Why%20GreenSodexo/Getting%20Started/Getting%20Started.flv&backcolor=FFFFFF&frontcolor=5E95C6&lightcolor=2583bf&screencolor=FFFFFF&controlbar=over&autostart=true');
        break;
      case 12:
        so.addParam('flashvars', '&duration=135&file=http://www.greensodexo.com/video/BIO-EZ/BIO-EZ%20v2.flv&backcolor=FFFFFF&frontcolor=5E95C6&lightcolor=2583bf&screencolor=FFFFFF&controlbar=over&autostart=true');
        break;
    }

    so.write('VideoPlayerContainer');
    var el = $('#VideoPlayerContainer');
    var y = S.getScrollTop();
    if (y > 0) {
      var o = el.offset();
      var elY = o.top;
      window.scrollTo(0, elY - 50);
    }
  },

  showMailer: function() {
    var html = [];

    html.push('<a style="float:right; font-weight:bold; margin-bottom:5px;" href="#" onclick="$(\'#darkBackgroundLayer\').hide(); $(\'#notification-container\').hide(); return false;">Close</a>',
               '<form id="mailer" onsubmit="$D.Post(this); return false;" method="post" action="/store/mailer.aspx">',
               '<h2>Email Article</h2>',
               '<div class="errorblock" id="MailError" style="display: none;"></div>',
               '<div class="formarea">',
                 '<div id="mailerForm" style="display:visible;">',
                 '<div style="margin-bottom:15px;"><strong>Send "',
                 document.title,
                 '"</strong></div>',
                 '<label class="side required" style="width: 80px;">To:</label> <input class="text" type="text" name="emailTo" style="width: 210px;" />',
                 '<label class="side" style="width: 80px;">Comments:</label>',
                 '<textarea class="text optional" cols="50" rows="4" id="Textarea1" name="comments" style="width: 450px;" ></textarea><br />',
                 '<input type="image" class="send btn" value="Send" style="margin-left: 90px;" />',
                 '<input type="hidden" name="ActionType" value="SendArticle" />',
                 '<input type="hidden" name="articleUrl" value="',
                 window.location.href,
                 '" />',
                 '</div>',
               '</div>',
               '</form>'

    );
    Notification.displayContent(html.join(''));

  },

  displayNotification: function(xhr) {
    Notification.displayContent(xhr.responseText);
  },


  displayContent: function(content) {

    var nc = $("#notification-container");
    $("#notification").html(content);
    nc.show();
    $('#darkBackgroundLayer').show();
  },

  displayVideo: function(content) {

    var nc = $("#video-container");
    $("#video").html(content);
    nc.show();
    $('#darkBackgroundLayer').show();
  }
}
