/*
 * basic.js 0.1
 * 
 * Copyright (c) 2009 Takao Tagawa (dounokouno.com)
 * Licensed under the MIT License:
 * http://www.opensource.org/licenses/mit-license.php
 *
 * Since:     2009-04-24
 * Modified:  2009-04-25
 *
 * jQuery 1.3.2
 * 
*/

(function($){
	$(function(){
		// 初期状態で変換前へフォーカス
		$("#basic_id").focus();
		
		// ランダムID生成ボタン
		$("#id_create").click($.basic.id_create);
		
		// ランダムパスワード生成ボタン
		$("#pw_create").click($.basic.pw_create);
		
		// コード生成
		$("#code_create").click($.basic.create);
		
		// .htaccss選択
		$("#htaccess_select").click($.basic.htaccess_select);
		
		// .htpasswd選択
		$("#htpasswd_select").click($.basic.htpasswd_select);
		
	});
	
	// 処理
	$.basic={
		// ランダムID生成ボタン
		id_create:function(){
			// ID生成
			$("#basic_id").val($.pw.create(8,1,0,0));
		},
		
		// ランダムパスワード生成ボタン
		pw_create:function(){
			// パスワード生成
			$("#basic_pw").val($.pw.create(8,1,0,0));
		},
		
		// コード生成
		create:function(){
			var id = $("#basic_id").val();
			var pw = $("#basic_pw").val();
			var a = "";
			var p = "";
			
			// .htaccessコード生成
			a += "AuthUserFile " + $("#sitepath").val() + "/.htpasswd" + "\n";
			a += "AuthGroupFile /dev/null" + "\n";
			a += "AuthName \"Please enter your ID and password.\"" + "\n";
			a += "AuthType Basic" + "\n";
			a += "require valid-user" + "\n";
			a += "<Files ~ \"^\.ht\">" + "\n";
			a += "deny from all" + "\n";
			a += "</Files>";
			
			// .htpasswdコード生成
			p = id + ":" + Javacrypt.crypt($.pw.create(8,1,0,0), pw)[0];
			
			// コード出力
			$("#htaccess").val(a);
			$("#htpasswd").val(p);
			
			// 選択状態
			$.basic.htaccess_select();
		},
		
		// .hhaccess選択
		htaccess_select:function(){
			// 選択状態
			$("#htaccess").focus();
			$("#htaccess").select();
		},
		
		// .hhaccess選択
		htpasswd_select:function(){
			// 選択状態
			$("#htpasswd").focus();
			$("#htpasswd").select();
		}
	};
})(jQuery);