if (typeof (TrimPath) == 'undefined')
  TrimPath = {};
( function()
{
  if (TrimPath.evalEx == null)
    TrimPath.evalEx = function(src)
    {
      return eval(src);
    };
  var UNDEFINED;
  if (Array.prototype.pop == null)
    Array.prototype.pop = function()
    {
      if (this.length === 0)
      {
        return UNDEFINED;
      }
      return this[--this.length];
    };
  if (Array.prototype.push == null)
    Array.prototype.push = function()
    {
      for ( var i = 0; i < arguments.length; ++i)
      {
        this[this.length] = arguments[i];
      }
      return this.length;
    };
  TrimPath.parseTemplate = function(tmplContent, optTmplName, optEtc)
  {
    if (optEtc == null)
      optEtc = TrimPath.parseTemplate_etc;
    var funcSrc = parse(tmplContent, optTmplName, optEtc);
    var func = TrimPath.evalEx(funcSrc, optTmplName, 1);
    if (func != null)
      return new optEtc.Template(optTmplName, tmplContent, funcSrc, func,
          optEtc);
    return null;
  }
  var exceptionDetails = function(e)
  {
    return (e.toString()) + ";\n " + (e.message) + ";\n " + (e.name) + ";\n "
        + (e.stack || 'no stack trace') + ";\n "
        + (e.description || 'no further description') + ";\n "
        + (e.fileName || 'no file name') + ";\n "
        + (e.lineNumber || 'no line number');
  }
  try
  {
    String.prototype.process = function(context, optFlags)
    {
      var template = TrimPath.parseTemplate(this, null);
      if (template != null)
      {
        return template.process(context, optFlags);
      }
      return this;
    }
  } catch (e)
  {
  }
  TrimPath.parseTemplate_etc = {};
  TrimPath.parseTemplate_etc.statementTag = "forelse|for|if|elseif|else|var|macro|while";
  TrimPath.parseTemplate_etc.statementDef =
  {
    "if" :
    {
      delta :1,
      prefix :"if (",
      suffix :") {",
      paramMin :1
    },
    "else" :
    {
      delta :0,
      prefix :"} else {"
    },
    "elseif" :
    {
      delta :0,
      prefix :"} else if (",
      suffix :") {",
      paramDefault :"true"
    },
    "/if" :
    {
      delta :-1,
      prefix :"}"
    },
    "while" :
    {
      delta :1,
      prefix :"while (",
      suffix :") {",
      paramMin :1
    },
    "/while" :
    {
      delta :-1,
      prefix :"}"
    },
    "for" :
    {
      delta :1,
      paramMin :3,
      prefixFunc : function(stmtParts, state, tmplName, etc)
      {
        if (stmtParts[2] != "in")
          throw new etc.ParseError(tmplName, state.line,
              "bad for loop statement: " + stmtParts.join(' '));
        var iterVar = stmtParts[1];
        var listVar = "__LIST__" + iterVar;
        return [
            "var ",
            listVar,
            " = ",
            stmtParts[3],
            ";",
            "var __LENGTH_STACK__;",
            "if (typeof(__LENGTH_STACK__) == 'undefined' || !__LENGTH_STACK__.length) __LENGTH_STACK__ = new Array();",
            "__LENGTH_STACK__[__LENGTH_STACK__.length] = 0;", "if ((", listVar,
            ") != null) { ", "var ", iterVar, "_ct = 0;", "for (var ", iterVar,
            "_index in ", listVar, ") { ", iterVar, "_ct++;", "if (typeof(",
            listVar, "[", iterVar, "_index]) == 'function') {continue;}",
            "__LENGTH_STACK__[__LENGTH_STACK__.length - 1]++;", "var ",
            iterVar, " = ", listVar, "[", iterVar, "_index];" ].join("");
      }
    },
    "forelse" :
    {
      delta :0,
      prefix :"} } if (__LENGTH_STACK__[__LENGTH_STACK__.length - 1] == 0) { if (",
      suffix :") {",
      paramDefault :"true"
    },
    "/for" :
    {
      delta :-1,
      prefix :"} }; delete __LENGTH_STACK__[__LENGTH_STACK__.length - 1];"
    },
    "var" :
    {
      delta :0,
      prefix :"var ",
      suffix :";"
    },
    "macro" :
    {
      delta :1,
      prefixFunc : function(stmtParts, state, tmplName, etc)
      {
        var macroName = stmtParts[1].split('(')[0];
        return [
            "var ",
            macroName,
            " = function",
            stmtParts.slice(1).join(' ').substring(macroName.length),
            "{ var _OUT_arr = []; var _OUT = { write: function(m) { if (m) _OUT_arr.push(m); } }; " ]
            .join('');
      }
    },
    "/macro" :
    {
      delta :-1,
      prefix :" return _OUT_arr.join(''); };"
    }
  }
  TrimPath.parseTemplate_etc.modifierDef =
  {
    "eat" : function(v)
    {
      return "";
    },
    "escape" : function(s)
    {
      return String(s).replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(
          />/g, "&gt;");
    },
    "capitalize" : function(s)
    {
      return String(s).toUpperCase();
    },
    "default" : function(s, d)
    {
      return s != null ? s : d;
    }
  }
  TrimPath.parseTemplate_etc.modifierDef.h = TrimPath.parseTemplate_etc.modifierDef.escape;
  TrimPath.parseTemplate_etc.Template = function(tmplName, tmplContent,
      funcSrc, func, etc)
  {
    this.process = function(context, flags)
    {
      if (context == null)
        context = {};
      if (context._MODIFIERS == null)
        context._MODIFIERS = {};
      if (context.defined == null)
        context.defined = function(str)
        {
          return (context[str] != undefined);
        };
      for ( var k in etc.modifierDef)
      {
        if (context._MODIFIERS[k] == null)
          context._MODIFIERS[k] = etc.modifierDef[k];
      }
      if (flags == null)
        flags = {};
      var resultArr = [];
      var resultOut =
      {
        write : function(m)
        {
          resultArr.push(m);
        }
      };
      try
      {
        func(resultOut, context, flags);
      } catch (e)
      {
        if (flags.throwExceptions == true)
          throw e;
        var result = new String(resultArr.join("") + "[ERROR: template: <pre>"
            + exceptionDetails(e) + "</pre>]");
        result["exception"] = e;
        return result;
      }
      return resultArr.join("");
    }
    this.name = tmplName;
    this.source = tmplContent;
    this.sourceFunc = funcSrc;
    this.toString = function()
    {
      return "TrimPath.Template [" + tmplName + "]";
    }
  }
  TrimPath.parseTemplate_etc.ParseError = function(name, line, message)
  {
    this.name = name;
    this.line = line;
    this.message = message;
  }
  TrimPath.parseTemplate_etc.ParseError.prototype.toString = function()
  {
    return ("TrimPath template ParseError in " + this.name + ": line "
        + this.line + ", " + this.message);
  }
  var parse = function(body, tmplName, etc)
  {
    body = cleanWhiteSpace(body);
    var funcText = [ "var TrimPath_Template_TEMP = function(_OUT, _CONTEXT, _FLAGS) { with (_CONTEXT) {" ];
    var state =
    {
      stack : [],
      line :1
    };
    var endStmtPrev = -1;
    while (endStmtPrev + 1 < body.length)
    {
      var begStmt = endStmtPrev;
      begStmt = body.indexOf("{", begStmt + 1);
      while (begStmt >= 0)
      {
        var endStmt = body.indexOf('}', begStmt + 1);
        var stmt = body.substring(begStmt, endStmt);
        var blockrx = stmt.match(/^\{(cdata|minify|eval)/);
        if (blockrx)
        {
          var blockType = blockrx[1];
          var blockMarkerBeg = begStmt + blockType.length + 1;
          var blockMarkerEnd = body.indexOf('}', blockMarkerBeg);
          if (blockMarkerEnd >= 0)
          {
            var blockMarker;
            if (blockMarkerEnd - blockMarkerBeg <= 0)
            {
              blockMarker = "{/" + blockType + "}";
            }
            else
            {
              blockMarker = body.substring(blockMarkerBeg + 1, blockMarkerEnd);
            }
            var blockEnd = body.indexOf(blockMarker, blockMarkerEnd + 1);
            if (blockEnd >= 0)
            {
              emitSectionText(body.substring(endStmtPrev + 1, begStmt),
                  funcText);
              var blockText = body.substring(blockMarkerEnd + 1, blockEnd);
              if (blockType == 'cdata')
              {
                emitText(blockText, funcText);
              }
              else if (blockType == 'minify')
              {
                emitText(scrubWhiteSpace(blockText), funcText);
              }
              else if (blockType == 'eval')
              {
                if (blockText != null && blockText.length > 0)
                  funcText
                      .push('_OUT.write( (function() { ' + blockText + ' })() );');
              }
              begStmt = endStmtPrev = blockEnd + blockMarker.length - 1;
            }
          }
        }
        else if (body.charAt(begStmt - 1) != '$'
            && body.charAt(begStmt - 1) != '\\')
        {
          var offset = (body.charAt(begStmt + 1) == '/' ? 2 : 1);
          if (body.substring(begStmt + offset, begStmt + 10 + offset).search(
              TrimPath.parseTemplate_etc.statementTag) == 0)
            break;
        }
        begStmt = body.indexOf("{", begStmt + 1);
      }
      if (begStmt < 0)
        break;
      var endStmt = body.indexOf("}", begStmt + 1);
      if (endStmt < 0)
        break;
      emitSectionText(body.substring(endStmtPrev + 1, begStmt), funcText);
      emitStatement(body.substring(begStmt, endStmt + 1), state, funcText,
          tmplName, etc);
      endStmtPrev = endStmt;
    }
    emitSectionText(body.substring(endStmtPrev + 1), funcText);
    if (state.stack.length != 0)
      throw new etc.ParseError(tmplName, state.line,
          "unclosed, unmatched statement(s): " + state.stack.join(","));
    funcText.push("}}; TrimPath_Template_TEMP");
    return funcText.join("");
  }
  var emitStatement = function(stmtStr, state, funcText, tmplName, etc)
  {
    var parts = stmtStr.slice(1, -1).split(' ');
    var stmt = etc.statementDef[parts[0]];
    if (stmt == null)
    {
      emitSectionText(stmtStr, funcText);
      return;
    }
    if (stmt.delta < 0)
    {
      if (state.stack.length <= 0)
        throw new etc.ParseError(tmplName, state.line,
            "close tag does not match any previous statement: " + stmtStr);
      state.stack.pop();
    }
    if (stmt.delta > 0)
      state.stack.push(stmtStr);
    if (stmt.paramMin != null && stmt.paramMin >= parts.length)
      throw new etc.ParseError(tmplName, state.line,
          "statement needs more parameters: " + stmtStr);
    if (stmt.prefixFunc != null)
      funcText.push(stmt.prefixFunc(parts, state, tmplName, etc));
    else
      funcText.push(stmt.prefix);
    if (stmt.suffix != null)
    {
      if (parts.length <= 1)
      {
        if (stmt.paramDefault != null)
          funcText.push(stmt.paramDefault);
      }
      else
      {
        for ( var i = 1; i < parts.length; i++)
        {
          if (i > 1)
            funcText.push(' ');
          funcText.push(parts[i]);
        }
      }
      funcText.push(stmt.suffix);
    }
  }
  var emitSectionText = function(text, funcText)
  {
    if (text.length <= 0)
      return;
    var nlPrefix = 0;
    var nlSuffix = text.length - 1;
    while (nlPrefix < text.length && (text.charAt(nlPrefix) == '\n'))
      nlPrefix++;
    while (nlSuffix >= 0
        && (text.charAt(nlSuffix) == ' ' || text.charAt(nlSuffix) == '\t'))
      nlSuffix--;
    if (nlSuffix < nlPrefix)
      nlSuffix = nlPrefix;
    if (nlPrefix > 0)
    {
      funcText.push('if (_FLAGS.keepWhitespace == true) _OUT.write("');
      var s = text.substring(0, nlPrefix).replace('\n', '\\n');
      if (s.charAt(s.length - 1) == '\n')
        s = s.substring(0, s.length - 1);
      funcText.push(s);
      funcText.push('");');
    }
    var lines = text.substring(nlPrefix, nlSuffix + 1).split('\n');
    for ( var i = 0; i < lines.length; i++)
    {
      emitSectionTextLine(lines[i], funcText);
      if (i < lines.length - 1)
        funcText.push('_OUT.write("\\n");\n');
    }
    if (nlSuffix + 1 < text.length)
    {
      funcText.push('if (_FLAGS.keepWhitespace == true) _OUT.write("');
      var s = text.substring(nlSuffix + 1).replace('\n', '\\n');
      if (s.charAt(s.length - 1) == '\n')
        s = s.substring(0, s.length - 1);
      funcText.push(s);
      funcText.push('");');
    }
  }
  var emitSectionTextLine = function(line, funcText)
  {
    var endMarkPrev = '}';
    var endExprPrev = -1;
    while (endExprPrev + endMarkPrev.length < line.length)
    {
      var begMark = "${", endMark = "}";
      var begExpr = line.indexOf(begMark, endExprPrev + endMarkPrev.length);
      if (begExpr < 0)
        break;
      if (line.charAt(begExpr + 2) == '%')
      {
        begMark = "${%";
        endMark = "%}";
      }
      var endExpr = line.indexOf(endMark, begExpr + begMark.length);
      if (endExpr < 0)
        break;
      emitText(line.substring(endExprPrev + endMarkPrev.length, begExpr),
          funcText);
      var exprArr = line.substring(begExpr + begMark.length, endExpr).replace(
          /\|\|/g, "#@@#").split('|');
      for ( var k in exprArr)
      {
        if (exprArr[k].replace)
          exprArr[k] = exprArr[k].replace(/#@@#/g, '||');
      }
      funcText.push('_OUT.write(');
      emitExpression(exprArr, exprArr.length - 1, funcText);
      funcText.push(');');
      endExprPrev = endExpr;
      endMarkPrev = endMark;
    }
    emitText(line.substring(endExprPrev + endMarkPrev.length), funcText);
  }
  var emitText = function(text, funcText)
  {
    if (text == null || text.length <= 0)
      return;
    text = text.replace(/\\/g, '\\\\');
    text = text.replace(/\n/g, '\\n');
    text = text.replace(/"/g, '\\"');
    funcText.push('_OUT.write("');
    funcText.push(text);
    funcText.push('");');
  }
  var emitExpression = function(exprArr, index, funcText)
  {
    var expr = exprArr[index];
    if (index <= 0)
    {
      funcText.push(expr);
      return;
    }
    var parts = expr.split(':');
    funcText.push('_MODIFIERS["');
    funcText.push(parts[0]);
    funcText.push('"](');
    emitExpression(exprArr, index - 1, funcText);
    if (parts.length > 1)
    {
      funcText.push(',');
      funcText.push(parts[1]);
    }
    funcText.push(')');
  }
  var cleanWhiteSpace = function(result)
  {
    result = result.replace(/\t/g, "  ");
    result = result.replace(/\r\n/g, "\n");
    result = result.replace(/\r/g, "\n");
    result = result.replace(/^(\s*\S*(\s+\S+)*)\s*$/, '$1');
    return result;
  }
  var scrubWhiteSpace = function(result)
  {
    result = result.replace(/^\s+/g, "");
    result = result.replace(/\s+$/g, "");
    result = result.replace(/\s+/g, " ");
    result = result.replace(/^(\s*\S*(\s+\S+)*)\s*$/, '$1');
    return result;
  }
  TrimPath.parseDOMTemplate = function(elementId, optDocument, optEtc)
  {
    if (optDocument == null)
      optDocument = document;
    var element = optDocument.getElementById(elementId);
    var content = element.value;
    if (content == null)
      content = element.innerHTML;
    content = content.replace(/&lt;/g, "<").replace(/&gt;/g, ">");
    return TrimPath.parseTemplate(content, elementId, optEtc);
  }
  TrimPath.processDOMTemplate = function(elementId, context, optFlags,
      optDocument, optEtc)
  {
    return TrimPath.parseDOMTemplate(elementId, optDocument, optEtc).process(
        context, optFlags);
  }
})();

var gClosureCounters = {};
var gCurrentThumbs = [];
var gCurrentContent = null;
var gCurrentPage = 0;
var gTotalPages = 0;
var gChannels = [];
var gProviders = [];
var gCurrentThumb = null;
var gThumbIndex = -1;
var PAGESIZE = window.gSmall ? 3 : 9;
var PAGINGLEN = window.gSmall ? 6 : 10;
var SCROLLCATS = 11;
var gPageSetMarker = PAGINGLEN;
var gPageSetOffset = PAGINGLEN;
var gTotalSets = 0;
var gShowSearch = 0;
var gFirstLoad = 0;
var gFirstPlay;
var gHourglassCount = 0;
var gCurrentSearch = '';
var gCurrentSort = 'latest';
var gCurrentCatType = '';
var gCurrentCatName = '';
var URL_HOST = 'http://www.glam.jp/';
var FILE_PATH = 'tv/special/wacoal/';

if (typeof window.console == 'undefined')
  window.console =
  {
    log : function()
    {
    }
  };
if (typeof window.gDebug == 'undefined')
{
  var gDebug = false;
}
if (typeof window.gApibase == 'undefined')
{
  var gApibase = 'http://www.glam.jp/';
}

/***************************************************/
/* TOP                                             */
/***************************************************/

/**
 * 
 * @param content
 * @return
 */
function _setCurrentContent(content)
{
  gCurrentContent = content;
}

/**
 * 
 * @return
 */
function _getCurrentContent()
{
  return gCurrentContent;
}

/**
 * @name loadAd
 * @description Loads Ad to iframe
 * @return N/A
 */
function loadAd()
{
  var iframeWindow = null;
  try
  {
    if (window.boxAd.contentWindow)
    {
      iframeWindow = window.boxAd.contentWindow;
    }
    else
    {
      iframeWindow = window.boxAd;
    }
    iframeWindow.location.replace('iframe2.html');
  }
  catch (e)
  {
  }
}

/**
 * 
 * @param jsurl
 * @param id
 * @return
 */
function loadScript(jsurl, id)
{
  var body = document.getElementsByTagName('body').item(0);
  var o = document.createElement('script');
  o.setAttribute('src', jsurl);
  if (id)
  {
    o.setAttribute('id', id);
  }
  o.setAttribute('type', 'text/javascript');
  body.appendChild(o);
};

var gCs = {};

/**
 * 
 * @param func
 * @param prefix
 * @param scope
 * @return
 */
function registerclosure(func, prefix, scope)
{
  if (!prefix)
  {
    prefix = '_';
  }
  if (!scope)
  {
    scope = window;
  }
  var hourglassTimeout = setTimeout(
      "$(document.body).addClass('wait'); gHourglassCount++;", 1000);
  var i = 0;
  while (true)
  {
    ++i;
    var name = prefix + i;
    if (!gCs[name])
    {
      gCs[name] = function()
      {
        try
        {
          clearTimeout(hourglassTimeout);
          if (gHourglassCount && --gHourglassCount < 1)
          {
            $(document.body).removeClass('wait');
          }
          func.apply(scope, arguments);
        }
        finally
        {
          if (gCs[name])
          {
            delete gCs[name];
          }
          var scriptNode = $('gCs.' + name);
          if (scriptNode && !document.all)
          {
            scriptNode.parentNode.removeChild(scriptNode);
          }
        }
      };
      return 'gCs.' + name;
    }
  }
}

/**
 * 
 * @param name
 * @param callback
 * @param params
 * @return
 */
function invokeAPI(name, callback, params)
{
  if (window.TESTDATA)
  {
    var json = window.TESTDATA[name] || {};
    if (typeof json == 'function')
    {
      json = json(params);
    }
    setTimeout( function()
    {
      callback(json)
    }, 100);
    return;
  }
  var cbname = registerclosure(callback, name);
  var network = window.gBrash ? '&brash=1' : '';
  var url = gApibase + 'api/' + name + '.php?aid=' + getParam('aid')
      + '&callback=' + cbname + network;
  if (name == 'getchannels')
  {
    url = URL_HOST + FILE_PATH + 'getchannels.json';
  }
  else if (name == 'getcount')
  {
    url = URL_HOST + FILE_PATH + 'getcount.json';
  }
  else if (name == 'getvideos')
  {
    url = URL_HOST + FILE_PATH + 'getvideos.json';
  }
  else if (params)
  {
    for (name in params)
    {
      url += '&' + name + '=' + encodeURIComponent(params[name]);
    }
  }
  loadScript(url, cbname);
}

/**
 * 
 * @return
 */
function parseQuery()
{
  var queryString = location.search.substr(1);
  var paramDict = {};
  var params = queryString.split("&");
  for ( var i = 0, len = params.length; i < len; i++)
  {
    var tokens = params[i].split("=");
    var name = unescape(tokens[0]);
    var value = '';
    if (tokens[1])
    {
      value = unescape(tokens[1]);
    }
    paramDict[name] = value;
  }
  return paramDict;
}
var gParams = parseQuery();

/**
 * 
 * @param name
 * @return
 */
function getParam(name)
{
  return gParams[name];
}

/**
 * 
 * @param videoid
 * @param channel
 * @param aid
 * @param sitename
 * @return
 */
function loadPlayer(videoid, channel, aid, sitename)
{
  if (!sitename)
  {
    sitename = "&nbsp;"
  }
  setSiteData(aid, sitename);
  if (!videoid)
  {
    videoid = -1;
  }
  gFirstLoad = 1;
  renderTabLists(channel, videoid);
}

/**
 * 
 * @param selectedChannel
 * @param videoid
 * @return
 */
function renderTabLists(selectedChannel, videoid)
{
  function callback(json)
  {
    gChannels = json.channels;
//    gChannels.unshift('all');
    gProviders = json.providers;
//    gProviders.unshift('all');
    var catsHTML = TrimPath.processDOMTemplate("catsTemplate", json);
    $('catsDisplay').innerHTML = catsHTML;
    var index = 0;
    if (selectedChannel)
    {
      index = gChannels.indexOf(selectedChannel);
    }
    if (index < 0)
    {
      index = 0;
    }    
    selectCat('channel', index, videoid);
  }
  invokeAPI('getchannels', callback,
  {
    type :'video',
    providers :1
  });
}

/**
 * 
 * @param tabtype
 * @param name
 * @param startwith
 * @return
 */
function renderThumbs(tabtype, name, startwith)
{
  gCurrentCatType = tabtype;
  gCurrentCatName = name;
  gFirstPlay = (gFirstLoad == 1) ? 1 : 0;
  var firstLoad = gFirstLoad;
  gFirstLoad = 0;
  function callback(json)
  {
    gCurrentPage = json ? Math.ceil(json.OFFSET / PAGESIZE) : 1;
    gTotalPages = json ? Math.ceil(json.TOTAL / PAGESIZE) : 1;
    gTotalSets = Math.ceil(gTotalPages / PAGINGLEN);
    renderPagingArea(tabtype, name, gCurrentPage);
    if (firstLoad)
    {
      if (gCurrentPage == 1)
      {
        writePagin(tabtype, name, gCurrentPage, 'first', startwith, null);
      }
      else if (gCurrentPage == gTotalPages)
      {
        writePagin(tabtype, name, gCurrentPage, 'last', startwith, null);
      }
      else if ((gTotalPages - gCurrentPage) <= PAGINGLEN)
      {
        writePagin(tabtype, name, gCurrentPage, 'end', startwith, null);
      }
      else
      {
        writePagin(tabtype, name, gCurrentPage, 'reset', startwith, firstLoad);
      }
    }
  }
  var params =
  {
    type :'video'
  };
  var filter = (tabtype == 'provider') ? 'author' : 'channel';
  if (name != 'all')
  {
    params[filter] = name;
  }
  if (startwith > 0)
  {
    params['id'] = startwith;
  }
  if (window.gSmall)
  {
    params['exprovider'] = 'YouTube';
  }
  invokeAPI('getcount', callback, params);
  if (!firstLoad)
  {
    renderThumbPage(tabtype, name, startwith, null);
  }
}

/**
 * 
 * @param cattype
 * @param index
 * @param videoid
 * @return
 */
function clickCat(cattype, index, videoid)
{
  switch(index) {
    case 0:
      window.open('http://ad.doubleclick.net/clk;212487380;26251484;g?http://www.lalan.jp/', 'ad1');
      break;
    case 1:
      window.open('http://ad.doubleclick.net/clk;212487389;26251484;p?http://www.glam.jp/tv/special/wacoal/selfcheck.html', 'ad2');
      break;
    case 2:
      window.open('http://ad.doubleclick.net/clk;212487413;26251484;d?http://www.wacoaldia.com/', 'ad3');
      break;
    case 3:
      window.open('http://ad.doubleclick.net/clk;212487430;26251484;c?http://store.wacoal.jp/', 'ad4');
      break;
    case 4:
      window.open('http://ad.doubleclick.net/clk;212487437;26251484;j?http://www.wacoal.jp/', 'ad5');
      break;
    case 5:
      window.open('http://www.glam.jp/tv/index.html', null);
      break;
    default:
      break;
  } 
  selectCat(cattype, index, videoid);
}

/**
 * 
 * @param cattype
 * @param index
 * @param videoid
 * @return
 */
function selectCat(cattype, index, videoid)
{
  var catarray = (cattype == 'channel') ? gChannels : gProviders;
  var name = catarray[index];
  gPageSetMarker = PAGINGLEN;
  if (cattype == 'search')
  {
    doSearch(gCurrentSearch);
  }
  else
  {
    renderThumbs(cattype, name, videoid);
  }
  
/*
  $$('#div' + cattype + 's .pointer').each( function(e)
  {
    e.removeClass('active')
  });
  if ($(cattype + index))
    $(cattype + index).addClass('active');
  if (cattype == 'search')
  {
    $E('.scrollarea').style.visibility = 'hidden';
  }
  else if (catarray.length > SCROLLCATS)
  {
    $E('.scrollarea').style.visibility = 'visible';
    updateScrollbar();
  }
  else
  {
    $E('.scrollarea').style.visibility = 'hidden';
  }
  var scrollby = 0;
  for (i = 0; i < catarray.length; i++)
  {
    if (i >= (SCROLLCATS - 1))
    {
      if (name == catarray[i])
      {
        scrollby = window.gSmall ? (i * 10) : (i * 20);
      }
    }
  }
  $E('#catsDisplay').scrollTo(0, scrollby);
  updateScrollbar();
  */
}

/**
 * 
 * @param arr
 * @param key
 * @param val
 * @return
 */
function findindex(arr, key, val)
{
  for ( var i = 0; i < arr.length; i++)
  {
    if (arr[i][key] == val)
    {
      return i;
    }
  }
  return -1;
}

/**
 * 
 * @param tabtype
 * @param name
 * @param page
 * @param reset
 * @param playvideo
 * @return
 */
function gotoPage(tabtype, name, page, reset, playvideo)
{
  if (page == 0)
  {
    page = 1;
  }
  if (reset)
  {
    if (gPageSetMarker != PAGINGLEN && gPageSetMarker < gTotalPages)
    {
      if (gPageSetMarker >= PAGINGLEN
          && ((gPageSetMarker + PAGINGLEN) >= gTotalPages))
      {
        gPageSetMarker += PAGINGLEN;
      }
      else
      {
        gPageSetMarker = ((gTotalSets - 1) * PAGINGLEN);
      }
    }
    else
    {
      gPageSetMarker = (Math.ceil(page / PAGINGLEN)) * PAGINGLEN;
    }
    gPageSetOffset = PAGINGLEN;
  }
  if ($E('#pagin' + gCurrentPage + ' a'))
  {
    $E('#pagin' + gCurrentPage + ' a').href = "javascript:gotoPage('" + tabtype
        + "', '" + name + "', " + gCurrentPage + ")";
  }
  gCurrentPage = page;
  if (gTotalPages == 0)
  {
    gTotalPages = 1;
  }
  if (gTotalPages > 1)
  {
    for ( var i = 0; i <= gTotalPages; i++)
    {
      if ($('pagin' + i))
      {
        $('pagin' + i).removeClass('active');
      }
    }
    if ($('pagin' + page))
    {
      $('pagin' + page).addClass('active');
    }
    if ($E('#pagin' + page + ' a'))
    {
      $E('#pagin' + page + ' a').href = "javascript:void(0)";
    }
    if (page == 1 && $E('#prevpage'))
    {
      $E('#prevpage').style.visibility = 'hidden';
      if ($E('#firstpage'))
      {
        $E('#firstpage').addClass('previous-off');
        $E('#firstpage a').href = "javascript:void(0)";
      }
    }
    else if (((page - 1) == gPageSetMarker)
        || ((page - 1) == gPageSetMarker - PAGINGLEN)
        || ((gPageSetMarker == gTotalPages) && gPageSetMarker - PAGINGLEN == page))
    {
      if ($E('#prevpage'))
      {
        $E('#prevpage').style.visibility = 'visible';
      }
      if (gPageSetOffset == PAGINGLEN && gPageSetMarker != gTotalPages)
      {
        if ($E('#prevpage a'))
        {
          $E('#prevpage a').href = "javascript:writePagin('" + tabtype + "','"
              + name + "'," + (page - 1) + ",'prev')";
        }
      }
      else
      {
        $E('#prevpage a').href = "javascript:writePagin('" + tabtype + "','"
            + name + "'," + (page - 1) + ",'reset')";
      }
      if ($E('#firstpage'))
      {
        $E('#firstpage').removeClass('previous-off');
        $E('#firstpage a').href = "javascript:writePagin('" + tabtype + "','"
            + name + "'," + 1 + ",'first')";
      }
    }
    else
    {
      $E('#prevpage').style.visibility = 'visible';
      $E('#prevpage a').href = "javascript:gotoPage('" + tabtype + "','" + name
          + "'," + (page - 1) + ")";
      if ($E('#firstpage'))
      {
        $E('#firstpage').removeClass('previous-off');
        $E('#firstpage a').href = "javascript:writePagin('" + tabtype + "','"
            + name + "'," + 1 + ",'first')";
      }
    }
    if (page == gTotalPages)
    {
      $E('#nextpage').style.visibility = 'hidden';
      $E('#prevpage a').href = "javascript:gotoPage('" + tabtype + "','" + name
          + "'," + (gTotalPages - 1) + ")";
      if ($E('#lastpage'))
      {
        $E('#lastpage').addClass('next-off');
        $E('#lastpage a').href = "javascript:void(0)";
      }
    }
    else if (page == gPageSetMarker)
    {
      $E('#prevpage').style.visibility = 'visible';
      if ($E('#nextpage'))
      {
        $E('#nextpage').style.visibility = 'visible';
      }
      if ((page + 1) <= (gTotalPages - PAGINGLEN))
      {
        $E('#nextpage a').href = "javascript:writePagin('" + tabtype + "','"
            + name + "'," + (page + 1) + ",'next')";
      }
      else
      {
        $E('#nextpage a').href = "javascript:writePagin('" + tabtype + "','"
            + name + "'," + (page + 1) + ",'end')";
      }
      if ($E('#lastpage'))
      {
        $E('#lastpage').removeClass('next-off');
        $E('#lastpage a').href = "javascript:writePagin('" + tabtype + "','"
            + name + "'," + gTotalPages + ",'last')";
      }
    }
    else
    {
      if (page != 1)
      {
        $E('#prevpage').style.visibility = 'visible';
      }
      if ($E('#nextpage'))
      {
        $E('#nextpage').style.visibility = 'visible';
      }
      if ($E('#nextpage a'))
      {
        $E('#nextpage a').href = "javascript:gotoPage('" + tabtype + "','"
            + name + "'," + (gCurrentPage + 1) + ")";
      }
      if ($E('#lastpage'))
      {
        $E('#lastpage').removeClass('next-off');
        $E('#lastpage a').href = "javascript:writePagin('" + tabtype + "','"
            + name + "'," + gTotalPages + ",'last')";
      }
    }
    var offset = PAGESIZE * (page - 1);
    if (tabtype == 'search')
    {
      doSearch(name, offset, true);
    }
    else
    {
      renderThumbPage(tabtype, name, playvideo, offset);
    }
  }
}

/**
 * 
 * @param tabtype
 * @param name
 * @param page
 * @param end
 * @return
 */
function renderPagingArea(tabtype, name, page, end)
{
/*
  var pagingHTML = TrimPath.processDOMTemplate("pagingTemplate",
  {
    paginglength :PAGINGLEN,
    totalsets :gTotalSets,
    pagesetmark :gPageSetMarker,
    total :gTotalPages,
    currentpage :page,
    cattype :tabtype,
    catname :name,
    end :end
  });
  $('pagingDisplay').innerHTML = pagingHTML;
  */
}

/**
 * 
 * @param tabtype
 * @param name
 * @param page
 * @param linktype
 * @param video
 * @param firstLoad
 * @return
 */
function writePagin(tabtype, name, page, linktype, video, firstLoad)
{
  var lastPageSetMarker = ((gTotalSets - 1) * PAGINGLEN);
  var setEnd;
  if (((page + PAGINGLEN) == gPageSetMarker) && linktype != 'prev')
  {
    linktype = 'reset';
  }
  else if (page == gTotalPages)
  {
    linktype = 'last';
  }
  if (linktype == 'prev')
  {
    if (gPageSetMarker != gTotalPages)
    {
      gPageSetMarker -= PAGINGLEN;
      gotoPage(tabtype, name, page, null, null);
    }
    else
    {
      linktype = 'reset';
    }
  }
  if (linktype == 'next')
  {
    gPageSetMarker += PAGINGLEN;
    gotoPage(tabtype, name, page, null, null);
  }
  if (linktype == 'first')
  {
    gPageSetMarker = PAGINGLEN;
    gotoPage(tabtype, name, 1, null, video);
  }
  if (linktype == 'last')
  {
    gPageSetOffset = (gTotalPages - lastPageSetMarker);
    gPageSetMarker = gTotalPages;
    gotoPage(tabtype, name, page, null, video);
  }
  if (linktype == 'end')
  {
    if (gPageSetMarker == gTotalPages)
    {
      gPageSetOffset = 0;
    }
    else if (page == gPageSetMarker)
    {
      gPageSetOffset = (gTotalPages - lastPageSetMarker);
    }
    gPageSetMarker = gTotalPages;
    gotoPage(tabtype, name, page, null, video);
    setEnd = 1;
  }
  if (linktype == 'reset')
  {
    if (page == gPageSetMarker)
    {
      gPageSetMarker = lastPageSetMarker;
      gotoPage(tabtype, name, page, null, video);
    }
    else if ((page + PAGINGLEN == gPageSetMarker)
        && (gPageSetMarker != gTotalPages))
    {
      gPageSetMarker = lastPageSetMarker - PAGINGLEN;
      gotoPage(tabtype, name, page, null, video);
    }
    else
    {
      gotoPage(tabtype, name, page, 'reset', video);
    }
  }
  renderPagingArea(tabtype, name, page, setEnd);
  if (linktype == 'reset')
  {
    $E('#prevpage').style.visibility = 'visible';
    if (gPageSetMarker - PAGINGLEN < page)
    {
      $E('#prevpage a').href = "javascript:gotoPage('" + tabtype + "','" + name
          + "'," + (page - 1) + ")";
    }
    if (!firstLoad)
    {
      if ((gPageSetMarker == lastPageSetMarker)
          && ((page + 1) + PAGINGLEN == gTotalPages))
      {
        $E('#nextpage a').href = "javascript:writePagin('" + tabtype + "','"
            + name + "'," + (page + 1) + ",'end')";
      }
      else if ((gTotalPages - page) > PAGINGLEN)
      {
        $E('#nextpage a').href = "javascript:writePagin('" + tabtype + "','"
            + name + "'," + (page + 1) + ",'next')";
      }
      else
      {
        if (page != 1)
        {
          $E('#nextpage a').href = "javascript:writePagin('" + tabtype + "','"
              + name + "'," + (page + 1) + ",'end')";
        }
        else
        {
          $E('#nextpage a').href = "javascript:gotoPage('" + tabtype + "','"
              + name + "'," + (page + 1) + ")";
        }
      }
    }
  }
  else if (linktype == 'next')
  {
    $E('#prevpage').style.visibility = 'visible';
    if (page != gTotalPages)
    {
      $E('#prevpage a').href = "javascript:writePagin('" + tabtype + "','"
          + name + "'," + (page - 1) + ",'prev')";
    }
    else
    {
      $E('#prevpage a').href = "javascript:gotoPage('" + tabtype + "','" + name
          + "'," + (page - 1) + ")";
    }
  }
  else if (linktype == 'prev' && page != 1)
  {
    $E('#prevpage').style.visibility = 'visible';
    $E('#prevpage a').href = "javascript:gotoPage('" + tabtype + "','" + name
        + "'," + (page - 1) + ")";
    if ((page + PAGINGLEN) == gPageSetMarker)
    {
      $E('#nextpage a').href = "javascript:writePagin('" + tabtype + "','"
          + name + "'," + (page + 1) + ",'end')";
      gPageSetMarker = lastPageSetMarker;
    }
    else
    {
      $E('#nextpage a').href = "javascript:writePagin('" + tabtype + "','"
          + name + "'," + (page + 1) + ",'next')";
    }
  }
  else if (linktype == 'first')
  {
    if ($E('#nextpage'))
    {
      $E('#nextpage').style.visibility = 'visible';
    }
    if ($E('#prevpage'))
    {
      $E('#prevpage').style.visibility = 'hidden';
    }
    if ($E('#prevpage'))
    {
      $E('#prevpage a').href = "javascript:void(0)";
    }
    gPageSetOffset = PAGINGLEN;
  }
  else if (linktype == 'last')
  {
    if ($E('#prevpage'))
    {
      $E('#prevpage').style.visibility = 'visible';
    }
    if ($E('#prevpage a'))
    {
      $E('#prevpage a').href = "javascript:gotoPage('" + tabtype + "','" + name
          + "'," + (page - 1) + ")";
    }
    if ($E('#nextpage'))
    {
      $E('#nextpage').style.visibility = 'hidden';
    }
  }
  else if (linktype == 'end')
  {
    if ($E('#prevpage'))
    {
      $E('#prevpage').style.visibility = 'visible';
    }
    if ($E('#prevpage a'))
    {
      $E('#prevpage a').href = "javascript:gotoPage('" + tabtype + "','" + name
          + "'," + (page - 1) + ")";
    }
    if (((page + PAGINGLEN) == gTotalPages)
        || (((page - 1) + PAGINGLEN) == gTotalPages))
    {
      $E('#prevpage a').href = "javascript:writePagin('" + tabtype + "','"
          + name + "'," + (page - 1) + ",'reset')";
      gPageSetOffset = PAGINGLEN;
    }
  }
  if (page == 1)
  {
    if ($E('#prevpage'))
    {
      $E('#prevpage').style.visibility = "hidden"
    }
  }
}

/**
 * 
 * @param tabtype
 * @param name
 * @param startwith
 * @param offset
 * @return
 */
function renderThumbPage(tabtype, name, startwith, offset)
{
  function callback(json)
  {
    gCurrentThumbs = json.items;
    var catsThumbsHTML = TrimPath.processDOMTemplate("thumbTemplate", json);
    $('thumbsDisplay').innerHTML = catsThumbsHTML;
    if (startwith > 0)
    {
      var index = findindex(gCurrentThumbs, 'ID', startwith);
      if (index > -1)
      {
        showVideo(index);
      }
      else
      {
      }
    }
    else if (startwith == -1)
    {
      showVideo(0);
    }
  }
  var params =
  {
    count :PAGESIZE
  };
  if (name != 'all')
  {
    params[tabtype] = name;
  }
  if (offset)
  {
    params['offset'] = offset;
  }
  params['sort'] = gCurrentSort;
  if (window.gSmall)
  {
    params['exprovider'] = 'YouTube';
  }
  invokeAPI('getvideos', callback, params);
}

/*
 * function sortSearch(sort) { var title = ''; if (sort == 'popular') { title =
 * "Most Popular"; } else if (sort == 'latest') { title = "Latest"; } else if
 * (sort == 'featured') { title = "Featured"; } gCurrentSort = sort;
 * $('dropdown-title').innerHTML = title; $('dropdown-content').style.display =
 * 'none'; writePagin(gCurrentCatType, gCurrentCatName, 1, 'first'); } function
 * doSearch(search, offset, dontRenderPaging) { gShowSearch = 1; gCurrentSearch =
 * search; selectTab('searchs'); if (!offset) offset = 0; function
 * callback(json) { if (!dontRenderPaging) { gCurrentPage = (json &&
 * json.OFFSET) ? Math.ceil(json.OFFSET / PAGESIZE) : 1; gTotalPages = json ?
 * Math.ceil(json.TOTAL / PAGESIZE) : 1; gTotalSets = Math.ceil(gTotalPages /
 * PAGINGLEN); } gCurrentThumbs = json.items; if (json.TOTAL) { var results =
 * "found " + json.TOTAL + ' results for "' + search + '"'; } else { var results =
 * 'no results for "' + search + '"'; } if (window.console) console.log(results + '
 * page ' + gCurrentPage + ' length ' + json.items.length + '(dontrender ' +
 * dontRenderPaging + ')'); $('divsearchs').innerHTML = results; if
 * (!dontRenderPaging) { gPageSetMarker = PAGINGLEN; gPageSetOffset = PAGINGLEN;
 * renderPagingArea('search', search, gCurrentPage); } var catsThumbsHTML =
 * TrimPath.processDOMTemplate("thumbTemplate", json);
 * $('thumbsDisplay').innerHTML = catsThumbsHTML; } var params = { count
 * :PAGESIZE, offset :offset }; params['search'] = search;
 * invokeAPI('searchvideos', callback, params); } function selectTab(tab) { if
 * (gShowSearch == 1) { $('tabsearchs').style.display = 'block'; } if (tab ==
 * "searchs") { $('dropdown-whole').style.visibility = 'hidden';
 * $('sortby').style.visibility = 'hidden'; $E('.scrollarea').style.visibility =
 * 'hidden'; $('divsearchs').style.display = 'block';
 * $('tabsearchs').addClass('tabActive'); var tabs = [ "channels", "providers" ];
 * for ( var i = 0; i < tabs.length; i++) { $('tab' +
 * tabs[i]).removeClass('tabActive'); $('div' + tabs[i]).style.display = 'none'; } }
 * else { $('dropdown-whole').style.visibility = 'visible';
 * $('sortby').style.visibility = 'visible'; $E('.scrollarea').style.visibility =
 * 'visible'; $('divsearchs').style.display = 'none'; var other = (tab ==
 * "channels") ? "providers" : "channels"; $('tab' + tab).addClass('tabActive');
 * $('tab' + other).removeClass('tabActive');
 * $('tabsearchs').removeClass('tabActive'); $('div' + tab).style.display =
 * 'block'; $('div' + other).style.display = 'none'; } updateScrollbar(); }
 * function tabSwitch(tab) { selectTab(tab + 's'); selectCat(tab, 0); }
 */

/**
 * 
 */
function playComplete()
{
  if (gThumbIndex + 1 >= gCurrentThumbs.length)
  {
    showVideo(0);
  }
  else
  {
    showVideo(gThumbIndex + 1);
  }
}

/**
 * 
 * @return
 */
function _getAutoPlay()
{
  if (gFirstPlay)
  {
    var autoplayOverride = getParam('autoplay');
    if (typeof autoplayOverride != 'undefined')
    {
      return (autoplayOverride == '0' || autoplayOverride == 'false' || autoplayOverride == 'no') ? 0
          : 1;
    }
    else if (window.gSmall)
    {
      return 0;
    }
  }
  return 1;
}

/**
 * 
 * @param thumbindex
 * @return
 */
function showVideo(thumbindex)
{
  var autoplay = 1;
  autoplay = _getAutoPlay();
  gFirstPlay = 0;
  var thumb = gCurrentThumbs[thumbindex];
  gCurrentThumb = thumb;
  _setCurrentContent(thumb.CONTENT);

  if (!thumb)
  {
    $('nowPlaying').innerHTML = "Selected Video Not Found<br/><span class='gray'>You may search or browse for videos below</span>";
    return;
  }
  gThumbIndex = thumbindex;

  $$(".thumbOver").each( function(e)
  {
    e.removeClass('visible')
  });
  $('thumbOver' + thumbindex).addClass('visible');
  loadAd();
  var small = (window.gSmall) ? '&small=1' : '';

  var autoplayParam = '';
  autoplayParam = '&autoplay=' + (autoplay ? '1' : '0');

  var width = '';
  var height = '';
  if (window.gVertical)
  {
    if (window.gVert320)
    {
      width = '&width=300';
      height = '&height=250';
    }
    else
    {
      width = '&width=288';
      height = '&height=240';
    }
  }

  var channel = '';
  if (gCurrentCatType == 'channel')
  {
    channel = '&channel=' + gCurrentCatName;
  }

  var network = window.gBrash ? '&brash=1' : '';
  // window.frames['TVplayer'].location.replace(gApibase
  // + 'api/videoiframe.php?id=' + thumb.ID + small + autoplayParam
  // + width + height + network + '&cid=' + thumb.AFFILIATE_ID + '&aid='
  // + getParam('aid') + channel);
  // window.frames['TVplayer'].location.replace('http://localhost/glammedia/glam/products/glamTV/US-source/videoiframe.html');
  // + thumb.ID
  // + small + autoplayParam + width + height + network + '&cid='
  // + thumb.AFFILIATE_ID + '&aid=' + getParam('aid') + channel);
  // window.frames['TVplayer'].document.getElementById("videoframe").innerHTML = "&nbsp;<script defer='defer' src='http://www.ooyala.com/player.js?callback=receiveOoyalaEvent&playerId=p1&width=440&height=330&autoplay=0&embedCode=Vlamg3OsnHNHF1CWUC-iQimM-21YGVRw&hide=sharing,endscreen&thruParamYume=did%3D406454663%26cid%3D325096436%26aid%3D352856581%26chid%3Dfashion'><"+"/script>";
  window.frames['TVplayer'].location.reload();
  displayTitle(thumb);
}

/**
 * 
 * @param thumb
 * @return
 */
function displayTitle(thumb)
{
  var title = '';
  var subtitle = window.gSmall ? ((thumb.AUTHOR != thumb.PROVIDER) ? "<span>Author:&nbsp;"
      + thumb.AUTHOR
      + "</span>"
      + "&nbsp; <span>From:&nbsp;"
      + thumb.PROVIDER
      + "</span>"
      : "<span>From:&nbsp;" + thumb.PROVIDER + "</span>")
      : ((thumb.AUTHOR != thumb.PROVIDER) ? "<span class='gray'>From:&nbsp;"
          + thumb.PROVIDER + "&nbsp;&nbsp;" + "Author:&nbsp;" + thumb.AUTHOR
          + "</span>" : "<span class='gray'>From:&nbsp;" + thumb.PROVIDER
          + "</span>");
  if (thumb.CLICKTHROUGH_URL)
  {
    title = "<a href='" + thumb.CLICKTHROUGH_URL
        + "'><img src='images/GlamTV_BuyIt_button.gif'/></a>&nbsp;";
  }
  title += thumb.TITLE;
  $('nowPlaying').innerHTML = title;
  $('nowPlaying').innerHTML += (window.gSmall) ? "&nbsp;" : "<br/>";
  $('nowPlaying').innerHTML += subtitle;
//  $('sharelink').style.display = 'block';
  if (window.gSmall)
  {
    $('menulinkdiv').style.display = 'block';
  }
}

/*
function shareVideo()
{
  if (window.gSmall)
  {
    MOOdalBox.open("", "320 321", "0.5");
  }
  else
  {
    MOOdalBox.open("", "380 500");
  }
  var shareInfoHTML = "<b>" + gCurrentThumb.TITLE + "</b>&nbsp;";
  shareInfoHTML += "<span>(" + gCurrentThumb.AUTHOR + ")</span>";
  $('shareInfo').innerHTML = shareInfoHTML;
  $('sharePopup').injectInside($('mb_contents'));
  $('mb_contents').style.background = (window.gSmall) ? '#fff url(images/share_headsm.png) no-repeat top right'
      : '#fff url(images/share_head.png) no-repeat top center';
  $('sharePopup').style.display = 'block';
  $('shareform').style.display = 'block';
  $('sharecomplete').style.display = 'none';
}

function shareSubmit()
{
  if ((emails == '') || ($('friendsEmail').value == shareEmailMsg))
  {
    $('shareErrEmails').innerHTML = '&nbsp; Please enter at least one address!';
    return;
  }
  else
  {
    $('shareErrEmails').innerHTML = '';
    var emails = $('friendsEmail').value.split(",");
  }
  if ($('myName').value == '')
  {
    $('shareErrName').innerHTML = '&nbsp; Please enter your name!';
    return;
  }
  else
  {
    $('shareErrName').innerHTML = '';
    var myName = $('myName').value;
  }
  if ($('myEmail').value == '')
  {
    $('shareErrMyEmail').innerHTML = '&nbsp; Please enter your email address!';
    return;
  }
  else
  {
    $('shareErrMyEmail').innerHTML = '';
    var myEmail = $('myEmail').value;
  }
  if ($('myMsg').value != '')
  {
    var myMsg = $('myMsg').value;
  }
  if ($('sendCopy').checked)
  {
    var sendMe = true;
  }
  $('sharePopup').style.display = 'block';
  $('shareform').style.display = 'none';
  $('sharecomplete').style.display = 'block';
}

function closeSharePopup()
{
  $('shareErrEmails').innerHTML = '';
  $('shareErrName').innerHTML = '';
  $('shareErrMyEmail').innerHTML = '';
  setTimeout("MOOdalBox.close();", 200);
}
*/

/**
 * 
 * @param aid
 * @param sitename
 * @return
 */
function setSiteData(aid, sitename)
{
  var logolink = (getParam('logolink')) ? getParam('logolink') : null;
  if (logolink)
  {
    var height = (window.gVertical) ? 30 : 40;
    $('sitelogo').innerHTML = '<img src="' + logolink + '" height="' + height
        + '"/>';
  }
  else if (sitename)
  {
    $('sitelogo').innerHTML = sitename;
    if (window.gSmall)
    {
      $('sitelogo').setStyle('top', '27px');
    }
    if (window.gVertical)
    {
      $('sitelogo').setStyle('top', '15px');
      $('sitelogo').setStyle('font-size', '14px');
    }
  }
  if (window.gSmall)
  {
    if (getParam('bgcolor'))
    {
      var bgRGB = '#' + getParam('bgcolor');
      $('cover').setStyle('border-color', bgRGB);
      $('main').setStyle('background-color', bgRGB);
    }
    if (getParam('txtcolor'))
    {
      var txtRGB = '#' + getParam('txtcolor');
      $('main').setStyle('color', txtRGB);
      $('nowPlaying').setStyle('color', txtRGB);
      $$('a').setStyle('color', txtRGB);
      if (window.gVertical)
      {
        $('calltoaction').setStyle('color', txtRGB);
      }
    }
  }
}

