/**
 * CSS選択
 *
 * ブラウザを判別し、対応するCSSのリンクを返す
 *
 * $Id: CSS.js,v 1.3 2003/07/22 04:28:10 ogata Exp $
 */
function CSS(cssList) {
	this.css = cssList;
	this.level = 1;
	this.us = null;
	this.dir = "style/";
	this.media = "screen";
	
	/**
	 * 階層を設定する
	 */
	function _setLevel(level) {
		if (level > 0) {
			this.level = level;
		}
	}
	
	/**
	 * CSSのディテクトリを設定する
	 */
	function _setDir(dir) {
		this.dir = dir;
	}
	
	/**
	 * メディアを設定する
	 */
	function _setMedia(media) {
		this.media = media;
	}
	
	/**
	 * ブラウザを判別
	 */
	function _getUA() {
		var ua = "";
		switch (navigator.family) {
		case "gecko" :
			if (navigator.version < 1) {
				ua = "moz0";
				break;
			} else {
				ua = "moz1";
				break;
			}
		case "ie4" :
			switch (navigator.OS) {
			case "win" :
				if (navigator.version >= 6) {
					ua = "ie6";
					break;
				} else {
					ua = "ie5w";
					break;
				}
			case "mac" :
				ua = "ie5m";
				break;
			}
			break;
		case "nn4" :
			ua = "nn4";
			break;
		default :
			ua = "default";
			break;
		}
		
		return ua;
	}
	
	/**
	 * CSSを取得する
	 */
	function _getCSS(level) {
		var tmp = '';
		
		this.setLevel(level);
		
		if (this.level < 2) {
			tmp = './';
		} else {
			for (var i = 1; i < this.level; i++) {
				tmp += '../';
			}
		}
		
		var css = this.css[this.getUA()];
		
		if (!this.media) {
			media = '';
		} else {
			media = ' media="' + this.media + '"';
		}
		
		if (css) {
			var link = '<link rel="stylesheet" type="text/css" href="' + tmp + this.dir + css + '"' + media + '>';
		} else {
			var link = '';
		}
		
		
		return link;
	}
	
	CSS.prototype.setLevel = _setLevel;
	CSS.prototype.setDir = _setDir;
	CSS.prototype.setMedia = _setMedia;
	CSS.prototype.getUA = _getUA;
	CSS.prototype.getCSS = _getCSS;
	
	return this;
}