From bknr at bknr.net Mon Nov 5 10:15:00 2007 From: bknr at bknr.net (bknr at bknr.net) Date: Mon, 5 Nov 2007 05:15:00 -0500 (EST) Subject: [bknr-cvs] r2255 - in branches/trunk-reorg/projects/scrabble: src website website/yui website/yui/animation website/yui/autocomplete website/yui/autocomplete/assets website/yui/autocomplete/assets/skins website/yui/autocomplete/assets/skins/sam website/yui/base website/yui/button website/yui/button/assets website/yui/button/assets/skins website/yui/button/assets/skins/sam website/yui/calendar website/yui/calendar/assets website/yui/calendar/assets/skins website/yui/calendar/assets/skins/sam website/yui/colorpicker website/yui/colorpicker/assets website/yui/colorpicker/assets/skins website/yui/colorpicker/assets/skins/sam website/yui/connection website/yui/container website/yui/container/assets website/yui/container/assets/skins website/yui/container/assets/skins/sam website/yui/datasource website/yui/datatable website/yui/datatable/assets website/yui/datatable/assets/skins website/yui/datatable/assets/skins/sam website/yui/dom website/yui/dragdrop website/yui/editor website/yui/editor/assets website/yui/editor/assets/skins website/yui/editor/assets/skins/sam website/yui/element website/yui/event website/yui/fonts website/yui/grids website/yui/history website/yui/history/assets website/yui/imageloader website/yui/logger website/yui/logger/assets website/yui/logger/assets/skins website/yui/logger/assets/skins/sam website/yui/menu website/yui/menu/assets website/yui/menu/assets/skins website/yui/menu/assets/skins/sam website/yui/reset website/yui/reset-fonts-grids website/yui/slider website/yui/tabview website/yui/tabview/assets website/yui/tabview/assets/skins website/yui/tabview/assets/skins/sam website/yui/treeview website/yui/treeview/assets website/yui/treeview/assets/skins website/yui/treeview/assets/skins/sam website/yui/yahoo website/yui/yuiloader website/yui/yuitest website/yui/yuitest/assets website/yui/yuitest/assets/skins website/yui/yuitest/assets/skins/sam Message-ID: <20071105101500.3A394111CD@common-lisp.net> Author: hhubner Date: 2007-11-05 05:14:48 -0500 (Mon, 05 Nov 2007) New Revision: 2255 Added: branches/trunk-reorg/projects/scrabble/website/yui/ branches/trunk-reorg/projects/scrabble/website/yui/animation/ branches/trunk-reorg/projects/scrabble/website/yui/animation/animation-min.js branches/trunk-reorg/projects/scrabble/website/yui/autocomplete/ branches/trunk-reorg/projects/scrabble/website/yui/autocomplete/assets/ branches/trunk-reorg/projects/scrabble/website/yui/autocomplete/assets/autocomplete-core.css branches/trunk-reorg/projects/scrabble/website/yui/autocomplete/assets/skins/ branches/trunk-reorg/projects/scrabble/website/yui/autocomplete/assets/skins/sam/ branches/trunk-reorg/projects/scrabble/website/yui/autocomplete/assets/skins/sam/autocomplete-skin.css branches/trunk-reorg/projects/scrabble/website/yui/autocomplete/assets/skins/sam/autocomplete.css branches/trunk-reorg/projects/scrabble/website/yui/autocomplete/autocomplete-min.js branches/trunk-reorg/projects/scrabble/website/yui/base/ branches/trunk-reorg/projects/scrabble/website/yui/base/base-min.css branches/trunk-reorg/projects/scrabble/website/yui/button/ branches/trunk-reorg/projects/scrabble/website/yui/button/assets/ branches/trunk-reorg/projects/scrabble/website/yui/button/assets/button-core.css branches/trunk-reorg/projects/scrabble/website/yui/button/assets/skins/ branches/trunk-reorg/projects/scrabble/website/yui/button/assets/skins/sam/ branches/trunk-reorg/projects/scrabble/website/yui/button/assets/skins/sam/button-skin.css branches/trunk-reorg/projects/scrabble/website/yui/button/assets/skins/sam/button.css branches/trunk-reorg/projects/scrabble/website/yui/button/assets/skins/sam/menu-button-arrow-disabled.png branches/trunk-reorg/projects/scrabble/website/yui/button/assets/skins/sam/menu-button-arrow.png branches/trunk-reorg/projects/scrabble/website/yui/button/assets/skins/sam/split-button-arrow-active.png branches/trunk-reorg/projects/scrabble/website/yui/button/assets/skins/sam/split-button-arrow-disabled.png branches/trunk-reorg/projects/scrabble/website/yui/button/assets/skins/sam/split-button-arrow-focus.png branches/trunk-reorg/projects/scrabble/website/yui/button/assets/skins/sam/split-button-arrow-hover.png branches/trunk-reorg/projects/scrabble/website/yui/button/assets/skins/sam/split-button-arrow.png branches/trunk-reorg/projects/scrabble/website/yui/button/button-beta-min.js branches/trunk-reorg/projects/scrabble/website/yui/calendar/ branches/trunk-reorg/projects/scrabble/website/yui/calendar/assets/ branches/trunk-reorg/projects/scrabble/website/yui/calendar/assets/calendar-core.css branches/trunk-reorg/projects/scrabble/website/yui/calendar/assets/calendar.css branches/trunk-reorg/projects/scrabble/website/yui/calendar/assets/callt.gif branches/trunk-reorg/projects/scrabble/website/yui/calendar/assets/calrt.gif branches/trunk-reorg/projects/scrabble/website/yui/calendar/assets/calx.gif branches/trunk-reorg/projects/scrabble/website/yui/calendar/assets/skins/ branches/trunk-reorg/projects/scrabble/website/yui/calendar/assets/skins/sam/ branches/trunk-reorg/projects/scrabble/website/yui/calendar/assets/skins/sam/calendar-skin.css branches/trunk-reorg/projects/scrabble/website/yui/calendar/assets/skins/sam/calendar.css branches/trunk-reorg/projects/scrabble/website/yui/calendar/calendar-min.js branches/trunk-reorg/projects/scrabble/website/yui/colorpicker/ branches/trunk-reorg/projects/scrabble/website/yui/colorpicker/assets/ branches/trunk-reorg/projects/scrabble/website/yui/colorpicker/assets/colorpicker_core.css branches/trunk-reorg/projects/scrabble/website/yui/colorpicker/assets/hue_thumb.png branches/trunk-reorg/projects/scrabble/website/yui/colorpicker/assets/picker_mask.png branches/trunk-reorg/projects/scrabble/website/yui/colorpicker/assets/picker_thumb.png branches/trunk-reorg/projects/scrabble/website/yui/colorpicker/assets/skins/ branches/trunk-reorg/projects/scrabble/website/yui/colorpicker/assets/skins/sam/ branches/trunk-reorg/projects/scrabble/website/yui/colorpicker/assets/skins/sam/colorpicker-skin.css branches/trunk-reorg/projects/scrabble/website/yui/colorpicker/assets/skins/sam/colorpicker.css branches/trunk-reorg/projects/scrabble/website/yui/colorpicker/assets/skins/sam/hue_bg.png branches/trunk-reorg/projects/scrabble/website/yui/colorpicker/assets/skins/sam/picker_mask.png branches/trunk-reorg/projects/scrabble/website/yui/colorpicker/colorpicker-beta-min.js branches/trunk-reorg/projects/scrabble/website/yui/connection/ branches/trunk-reorg/projects/scrabble/website/yui/connection/connection-min.js branches/trunk-reorg/projects/scrabble/website/yui/container/ branches/trunk-reorg/projects/scrabble/website/yui/container/assets/ branches/trunk-reorg/projects/scrabble/website/yui/container/assets/alrt16_1.gif branches/trunk-reorg/projects/scrabble/website/yui/container/assets/blck16_1.gif branches/trunk-reorg/projects/scrabble/website/yui/container/assets/close12_1.gif branches/trunk-reorg/projects/scrabble/website/yui/container/assets/container-core.css branches/trunk-reorg/projects/scrabble/website/yui/container/assets/container.css branches/trunk-reorg/projects/scrabble/website/yui/container/assets/hlp16_1.gif branches/trunk-reorg/projects/scrabble/website/yui/container/assets/info16_1.gif branches/trunk-reorg/projects/scrabble/website/yui/container/assets/skins/ branches/trunk-reorg/projects/scrabble/website/yui/container/assets/skins/sam/ branches/trunk-reorg/projects/scrabble/website/yui/container/assets/skins/sam/container-skin.css branches/trunk-reorg/projects/scrabble/website/yui/container/assets/skins/sam/container.css branches/trunk-reorg/projects/scrabble/website/yui/container/assets/tip16_1.gif branches/trunk-reorg/projects/scrabble/website/yui/container/assets/warn16_1.gif branches/trunk-reorg/projects/scrabble/website/yui/container/container-min.js branches/trunk-reorg/projects/scrabble/website/yui/container/container_core-min.js branches/trunk-reorg/projects/scrabble/website/yui/datasource/ branches/trunk-reorg/projects/scrabble/website/yui/datasource/datasource-beta-min.js branches/trunk-reorg/projects/scrabble/website/yui/datatable/ branches/trunk-reorg/projects/scrabble/website/yui/datatable/assets/ branches/trunk-reorg/projects/scrabble/website/yui/datatable/assets/datatable-core.css branches/trunk-reorg/projects/scrabble/website/yui/datatable/assets/datatable.css branches/trunk-reorg/projects/scrabble/website/yui/datatable/assets/skins/ branches/trunk-reorg/projects/scrabble/website/yui/datatable/assets/skins/sam/ branches/trunk-reorg/projects/scrabble/website/yui/datatable/assets/skins/sam/datatable-skin.css branches/trunk-reorg/projects/scrabble/website/yui/datatable/assets/skins/sam/datatable.css branches/trunk-reorg/projects/scrabble/website/yui/datatable/assets/skins/sam/dt-arrow-dn.png branches/trunk-reorg/projects/scrabble/website/yui/datatable/assets/skins/sam/dt-arrow-up.png branches/trunk-reorg/projects/scrabble/website/yui/datatable/datatable-beta-min.js branches/trunk-reorg/projects/scrabble/website/yui/dom/ branches/trunk-reorg/projects/scrabble/website/yui/dom/dom-min.js branches/trunk-reorg/projects/scrabble/website/yui/dragdrop/ branches/trunk-reorg/projects/scrabble/website/yui/dragdrop/dragdrop-min.js branches/trunk-reorg/projects/scrabble/website/yui/editor/ branches/trunk-reorg/projects/scrabble/website/yui/editor/assets/ branches/trunk-reorg/projects/scrabble/website/yui/editor/assets/editor-core.css branches/trunk-reorg/projects/scrabble/website/yui/editor/assets/skins/ branches/trunk-reorg/projects/scrabble/website/yui/editor/assets/skins/sam/ branches/trunk-reorg/projects/scrabble/website/yui/editor/assets/skins/sam/blankimage.png branches/trunk-reorg/projects/scrabble/website/yui/editor/assets/skins/sam/editor-knob.gif branches/trunk-reorg/projects/scrabble/website/yui/editor/assets/skins/sam/editor-skin.css branches/trunk-reorg/projects/scrabble/website/yui/editor/assets/skins/sam/editor-sprite-active.gif branches/trunk-reorg/projects/scrabble/website/yui/editor/assets/skins/sam/editor-sprite.gif branches/trunk-reorg/projects/scrabble/website/yui/editor/assets/skins/sam/editor.css branches/trunk-reorg/projects/scrabble/website/yui/editor/editor-beta-min.js branches/trunk-reorg/projects/scrabble/website/yui/element/ branches/trunk-reorg/projects/scrabble/website/yui/element/element-beta-min.js branches/trunk-reorg/projects/scrabble/website/yui/event/ branches/trunk-reorg/projects/scrabble/website/yui/event/event-min.js branches/trunk-reorg/projects/scrabble/website/yui/fonts/ branches/trunk-reorg/projects/scrabble/website/yui/fonts/fonts-min.css branches/trunk-reorg/projects/scrabble/website/yui/grids/ branches/trunk-reorg/projects/scrabble/website/yui/grids/grids-min.css branches/trunk-reorg/projects/scrabble/website/yui/history/ branches/trunk-reorg/projects/scrabble/website/yui/history/assets/ branches/trunk-reorg/projects/scrabble/website/yui/history/assets/blank.html branches/trunk-reorg/projects/scrabble/website/yui/history/history-beta-min.js branches/trunk-reorg/projects/scrabble/website/yui/imageloader/ branches/trunk-reorg/projects/scrabble/website/yui/imageloader/imageloader-experimental-min.js branches/trunk-reorg/projects/scrabble/website/yui/logger/ branches/trunk-reorg/projects/scrabble/website/yui/logger/assets/ branches/trunk-reorg/projects/scrabble/website/yui/logger/assets/logger-core.css branches/trunk-reorg/projects/scrabble/website/yui/logger/assets/logger.css branches/trunk-reorg/projects/scrabble/website/yui/logger/assets/skins/ branches/trunk-reorg/projects/scrabble/website/yui/logger/assets/skins/sam/ branches/trunk-reorg/projects/scrabble/website/yui/logger/assets/skins/sam/logger-skin.css branches/trunk-reorg/projects/scrabble/website/yui/logger/assets/skins/sam/logger.css branches/trunk-reorg/projects/scrabble/website/yui/logger/logger-min.js branches/trunk-reorg/projects/scrabble/website/yui/menu/ branches/trunk-reorg/projects/scrabble/website/yui/menu/assets/ branches/trunk-reorg/projects/scrabble/website/yui/menu/assets/map.gif branches/trunk-reorg/projects/scrabble/website/yui/menu/assets/menu-core.css branches/trunk-reorg/projects/scrabble/website/yui/menu/assets/menu.css branches/trunk-reorg/projects/scrabble/website/yui/menu/assets/skins/ branches/trunk-reorg/projects/scrabble/website/yui/menu/assets/skins/sam/ branches/trunk-reorg/projects/scrabble/website/yui/menu/assets/skins/sam/menu-skin.css branches/trunk-reorg/projects/scrabble/website/yui/menu/assets/skins/sam/menu.css branches/trunk-reorg/projects/scrabble/website/yui/menu/menu-min.js branches/trunk-reorg/projects/scrabble/website/yui/reset-fonts-grids/ branches/trunk-reorg/projects/scrabble/website/yui/reset-fonts-grids/reset-fonts-grids.css branches/trunk-reorg/projects/scrabble/website/yui/reset/ branches/trunk-reorg/projects/scrabble/website/yui/reset/reset-min.css branches/trunk-reorg/projects/scrabble/website/yui/slider/ branches/trunk-reorg/projects/scrabble/website/yui/slider/slider-min.js branches/trunk-reorg/projects/scrabble/website/yui/tabview/ branches/trunk-reorg/projects/scrabble/website/yui/tabview/assets/ branches/trunk-reorg/projects/scrabble/website/yui/tabview/assets/border_tabs.css branches/trunk-reorg/projects/scrabble/website/yui/tabview/assets/loading.gif branches/trunk-reorg/projects/scrabble/website/yui/tabview/assets/skin-sam.css branches/trunk-reorg/projects/scrabble/website/yui/tabview/assets/skins/ branches/trunk-reorg/projects/scrabble/website/yui/tabview/assets/skins/sam/ branches/trunk-reorg/projects/scrabble/website/yui/tabview/assets/skins/sam/tabview-skin.css branches/trunk-reorg/projects/scrabble/website/yui/tabview/assets/skins/sam/tabview.css branches/trunk-reorg/projects/scrabble/website/yui/tabview/assets/tabview-core.css branches/trunk-reorg/projects/scrabble/website/yui/tabview/assets/tabview.css branches/trunk-reorg/projects/scrabble/website/yui/tabview/tabview-min.js branches/trunk-reorg/projects/scrabble/website/yui/treeview/ branches/trunk-reorg/projects/scrabble/website/yui/treeview/assets/ branches/trunk-reorg/projects/scrabble/website/yui/treeview/assets/skins/ branches/trunk-reorg/projects/scrabble/website/yui/treeview/assets/skins/sam/ branches/trunk-reorg/projects/scrabble/website/yui/treeview/assets/skins/sam/treeview-loading.gif branches/trunk-reorg/projects/scrabble/website/yui/treeview/assets/skins/sam/treeview-skin.css branches/trunk-reorg/projects/scrabble/website/yui/treeview/assets/skins/sam/treeview-sprite.gif branches/trunk-reorg/projects/scrabble/website/yui/treeview/assets/skins/sam/treeview.css branches/trunk-reorg/projects/scrabble/website/yui/treeview/assets/sprite-menu.gif branches/trunk-reorg/projects/scrabble/website/yui/treeview/assets/sprite-orig.gif branches/trunk-reorg/projects/scrabble/website/yui/treeview/assets/treeview-core.css branches/trunk-reorg/projects/scrabble/website/yui/treeview/assets/treeview-loading.gif branches/trunk-reorg/projects/scrabble/website/yui/treeview/assets/treeview-menu.css branches/trunk-reorg/projects/scrabble/website/yui/treeview/assets/treeview.css branches/trunk-reorg/projects/scrabble/website/yui/treeview/treeview-min.js branches/trunk-reorg/projects/scrabble/website/yui/yahoo/ branches/trunk-reorg/projects/scrabble/website/yui/yahoo/yahoo-min.js branches/trunk-reorg/projects/scrabble/website/yui/yuiloader/ branches/trunk-reorg/projects/scrabble/website/yui/yuiloader/yuiloader-beta-min.js branches/trunk-reorg/projects/scrabble/website/yui/yuitest/ branches/trunk-reorg/projects/scrabble/website/yui/yuitest/assets/ branches/trunk-reorg/projects/scrabble/website/yui/yuitest/assets/skins/ branches/trunk-reorg/projects/scrabble/website/yui/yuitest/assets/skins/sam/ branches/trunk-reorg/projects/scrabble/website/yui/yuitest/assets/skins/sam/yuitest-skin.css branches/trunk-reorg/projects/scrabble/website/yui/yuitest/assets/skins/sam/yuitest.css branches/trunk-reorg/projects/scrabble/website/yui/yuitest/assets/testlogger.css branches/trunk-reorg/projects/scrabble/website/yui/yuitest/assets/yuitest-core.css branches/trunk-reorg/projects/scrabble/website/yui/yuitest/yuitest-beta-min.js Modified: branches/trunk-reorg/projects/scrabble/src/game.lisp branches/trunk-reorg/projects/scrabble/src/package.lisp branches/trunk-reorg/projects/scrabble/src/rules.lisp branches/trunk-reorg/projects/scrabble/src/web.lisp branches/trunk-reorg/projects/scrabble/website/scrabble.css branches/trunk-reorg/projects/scrabble/website/scrabble.html branches/trunk-reorg/projects/scrabble/website/scrabble.js Log: Checkpoint - Much of the basic functionality is in place now. Modified: branches/trunk-reorg/projects/scrabble/src/game.lisp =================================================================== --- branches/trunk-reorg/projects/scrabble/src/game.lisp 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/src/game.lisp 2007-11-05 10:14:48 UTC (rev 2255) @@ -19,6 +19,7 @@ (vector-push-extend (make-tile char value) tiles)))) (or (getf *tile-sets* language) (error "language ~A not defined" language))) + #+(or) (dotimes (i (fill-pointer tiles)) (let ((tmp (aref tiles i)) (random-index (random (fill-pointer tiles)))) @@ -75,10 +76,13 @@ (:metaclass persistent-class)) (deftransaction make-game (language players) - ;; Because of a serious deficiency in the BKNR datastore, we need to create all the parts of a game in seperate transactions. - ;; Only when all components have been created in the right order, restoring from either the transaction log or a snapshot - ;; will work. A real fix would involve ordering object creations in transactions so that when restoring, all objects are - ;; created before they are referenced. + ;; Because of a serious deficiency in the BKNR datastore, we need to + ;; create all the parts of a game in seperate transactions. Only + ;; when all components have been created in the right order, + ;; restoring from either the transaction log or a snapshot will + ;; work. A real fix would involve ordering object creations in + ;; transactions so that when restoring, all objects are created + ;; before they are referenced. (let* ((board (make-object 'board)) (tile-bag (make-tile-bag language)) (trays (mapcar (lambda (player) Modified: branches/trunk-reorg/projects/scrabble/src/package.lisp =================================================================== --- branches/trunk-reorg/projects/scrabble/src/package.lisp 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/src/package.lisp 2007-11-05 10:14:48 UTC (rev 2255) @@ -27,6 +27,9 @@ "PLAYER-OF" "TRAY-OF" + "MAKE-TILE-PLACEMENTS" + "MAKE-MOVE" + "GAME" "LANGUAGE-OF" "PARTICIPANTS-OF" Modified: branches/trunk-reorg/projects/scrabble/src/rules.lisp =================================================================== --- branches/trunk-reorg/projects/scrabble/src/rules.lisp 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/src/rules.lisp 2007-11-05 10:14:48 UTC (rev 2255) @@ -27,6 +27,10 @@ (tile :reader tile-of :initarg :tile)) (:documentation "Represents placement of a letter tile on the board")) +(defmethod print-object ((tile-placement tile-placement) stream) + (print-unreadable-object (tile-placement stream :type t) + (format stream "~A ~A => ~A" (x-of tile-placement) (y-of tile-placement) (tile-of tile-placement)))) + (defun make-tile-placement (x y tile) (make-instance 'tile-placement :x x :y y :tile tile)) Modified: branches/trunk-reorg/projects/scrabble/src/web.lisp =================================================================== --- branches/trunk-reorg/projects/scrabble/src/web.lisp 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/src/web.lisp 2007-11-05 10:14:48 UTC (rev 2255) @@ -48,7 +48,7 @@ (define-easy-handler (login :uri "/login" :default-request-type :post) (login password) - (declare (ignore password)) ; for now... + (format t "warning: password not checked~*~%" password) (when (and login (find-user login)) (start-session) @@ -66,6 +66,37 @@ (:tr (:td "Password") (:td (:input :type "PASSWORD" :name "password"))) (:tr (:td) (:td (:input :type "SUBMIT"))))))))) +(defun parse-move (string) + "Given a string X1,Y1,LETTER1,X2,Y2,LETTER2..., return a list of +tile-placement objects describing the move" + (let (list-of-moves) + (labels + ((recurse (x-string y-string letter &rest more) + (push (list (parse-integer x-string) + (parse-integer y-string) + (aref letter 0)) + list-of-moves) + (when more + (apply #'recurse more)))) + (apply #'recurse (split "," string))) + (scrabble:make-tile-placements list-of-moves))) + +(defmethod find-game ((game-id integer)) + (let ((game (find-store-object game-id))) + (when (typep game 'scrabble:game) + game))) + +(defmethod find-game ((game-id string)) + (find-game (parse-integer game-id))) + +(define-easy-handler (make-move-handler :uri "/make-move" :default-request-type :post) + (move game) + (start-session) + ;; MOVE contains the move to make. Check that it is the session + ;; users' turn, that the move is legal, then actually make the move. + (format t "game: ~A move: ~A~%" game move) + (scrabble:make-move (board-of (find-game game)) (parse-move move))) + (define-easy-handler (games :uri "/games") () (start-session) (with-html-output-to-string (*standard-output* nil) Modified: branches/trunk-reorg/projects/scrabble/website/scrabble.css =================================================================== --- branches/trunk-reorg/projects/scrabble/website/scrabble.css 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/website/scrabble.css 2007-11-05 10:14:48 UTC (rev 2255) @@ -1,276 +1,2 @@ body { background-color: #004B36; color: #ffffff; font-family: sans-serif } #playfield { position: absolute } -#playfield div { position: absolute; width: 40px; height: 40px } -#playfield img { position: absolute; top: 3px; left: 3px } -#playfield #field-0-0 { background-image: url(images/triple-word.png); left: 0; top: 0 } -#playfield #field-0-1 { background-image: url(images/standard.png); left: 0; top: 44 } -#playfield #field-0-2 { background-image: url(images/standard.png); left: 0; top: 88 } -#playfield #field-0-3 { background-image: url(images/double-letter.png); left: 0; top: 132 } -#playfield #field-0-4 { background-image: url(images/standard.png); left: 0; top: 176 } -#playfield #field-0-5 { background-image: url(images/standard.png); left: 0; top: 220 } -#playfield #field-0-6 { background-image: url(images/standard.png); left: 0; top: 264 } -#playfield #field-0-7 { background-image: url(images/triple-word.png); left: 0; top: 308 } -#playfield #field-0-8 { background-image: url(images/standard.png); left: 0; top: 352 } -#playfield #field-0-9 { background-image: url(images/standard.png); left: 0; top: 396 } -#playfield #field-0-10 { background-image: url(images/standard.png); left: 0; top: 440 } -#playfield #field-0-11 { background-image: url(images/double-letter.png); left: 0; top: 484 } -#playfield #field-0-12 { background-image: url(images/standard.png); left: 0; top: 528 } -#playfield #field-0-13 { background-image: url(images/standard.png); left: 0; top: 572 } -#playfield #field-0-14 { background-image: url(images/triple-word.png); left: 0; top: 616 } -#playfield #field-1-0 { background-image: url(images/standard.png); left: 44; top: 0 } -#playfield #field-1-1 { background-image: url(images/double-word.png); left: 44; top: 44 } -#playfield #field-1-2 { background-image: url(images/standard.png); left: 44; top: 88 } -#playfield #field-1-3 { background-image: url(images/standard.png); left: 44; top: 132 } -#playfield #field-1-4 { background-image: url(images/standard.png); left: 44; top: 176 } -#playfield #field-1-5 { background-image: url(images/triple-letter.png); left: 44; top: 220 } -#playfield #field-1-6 { background-image: url(images/standard.png); left: 44; top: 264 } -#playfield #field-1-7 { background-image: url(images/standard.png); left: 44; top: 308 } -#playfield #field-1-8 { background-image: url(images/standard.png); left: 44; top: 352 } -#playfield #field-1-9 { background-image: url(images/triple-letter.png); left: 44; top: 396 } -#playfield #field-1-10 { background-image: url(images/standard.png); left: 44; top: 440 } -#playfield #field-1-11 { background-image: url(images/standard.png); left: 44; top: 484 } -#playfield #field-1-12 { background-image: url(images/standard.png); left: 44; top: 528 } -#playfield #field-1-13 { background-image: url(images/double-word.png); left: 44; top: 572 } -#playfield #field-1-14 { background-image: url(images/standard.png); left: 44; top: 616 } -#playfield #field-2-0 { background-image: url(images/standard.png); left: 88; top: 0 } -#playfield #field-2-1 { background-image: url(images/standard.png); left: 88; top: 44 } -#playfield #field-2-2 { background-image: url(images/double-word.png); left: 88; top: 88 } -#playfield #field-2-3 { background-image: url(images/standard.png); left: 88; top: 132 } -#playfield #field-2-4 { background-image: url(images/standard.png); left: 88; top: 176 } -#playfield #field-2-5 { background-image: url(images/standard.png); left: 88; top: 220 } -#playfield #field-2-6 { background-image: url(images/double-letter.png); left: 88; top: 264 } -#playfield #field-2-7 { background-image: url(images/standard.png); left: 88; top: 308 } -#playfield #field-2-8 { background-image: url(images/double-letter.png); left: 88; top: 352 } -#playfield #field-2-9 { background-image: url(images/standard.png); left: 88; top: 396 } -#playfield #field-2-10 { background-image: url(images/standard.png); left: 88; top: 440 } -#playfield #field-2-11 { background-image: url(images/standard.png); left: 88; top: 484 } -#playfield #field-2-12 { background-image: url(images/double-word.png); left: 88; top: 528 } -#playfield #field-2-13 { background-image: url(images/standard.png); left: 88; top: 572 } -#playfield #field-2-14 { background-image: url(images/standard.png); left: 88; top: 616 } -#playfield #field-3-0 { background-image: url(images/double-letter.png); left: 132; top: 0 } -#playfield #field-3-1 { background-image: url(images/standard.png); left: 132; top: 44 } -#playfield #field-3-2 { background-image: url(images/standard.png); left: 132; top: 88 } -#playfield #field-3-3 { background-image: url(images/double-word.png); left: 132; top: 132 } -#playfield #field-3-4 { background-image: url(images/standard.png); left: 132; top: 176 } -#playfield #field-3-5 { background-image: url(images/standard.png); left: 132; top: 220 } -#playfield #field-3-6 { background-image: url(images/standard.png); left: 132; top: 264 } -#playfield #field-3-7 { background-image: url(images/double-letter.png); left: 132; top: 308 } -#playfield #field-3-8 { background-image: url(images/standard.png); left: 132; top: 352 } -#playfield #field-3-9 { background-image: url(images/standard.png); left: 132; top: 396 } -#playfield #field-3-10 { background-image: url(images/standard.png); left: 132; top: 440 } -#playfield #field-3-11 { background-image: url(images/double-word.png); left: 132; top: 484 } -#playfield #field-3-12 { background-image: url(images/standard.png); left: 132; top: 528 } -#playfield #field-3-13 { background-image: url(images/standard.png); left: 132; top: 572 } -#playfield #field-3-14 { background-image: url(images/double-letter.png); left: 132; top: 616 } -#playfield #field-4-0 { background-image: url(images/standard.png); left: 176; top: 0 } -#playfield #field-4-1 { background-image: url(images/standard.png); left: 176; top: 44 } -#playfield #field-4-2 { background-image: url(images/standard.png); left: 176; top: 88 } -#playfield #field-4-3 { background-image: url(images/standard.png); left: 176; top: 132 } -#playfield #field-4-4 { background-image: url(images/double-word.png); left: 176; top: 176 } -#playfield #field-4-5 { background-image: url(images/standard.png); left: 176; top: 220 } -#playfield #field-4-6 { background-image: url(images/standard.png); left: 176; top: 264 } -#playfield #field-4-7 { background-image: url(images/standard.png); left: 176; top: 308 } -#playfield #field-4-8 { background-image: url(images/standard.png); left: 176; top: 352 } -#playfield #field-4-9 { background-image: url(images/standard.png); left: 176; top: 396 } -#playfield #field-4-10 { background-image: url(images/double-word.png); left: 176; top: 440 } -#playfield #field-4-11 { background-image: url(images/standard.png); left: 176; top: 484 } -#playfield #field-4-12 { background-image: url(images/standard.png); left: 176; top: 528 } -#playfield #field-4-13 { background-image: url(images/standard.png); left: 176; top: 572 } -#playfield #field-4-14 { background-image: url(images/standard.png); left: 176; top: 616 } -#playfield #field-5-0 { background-image: url(images/standard.png); left: 220; top: 0 } -#playfield #field-5-1 { background-image: url(images/triple-letter.png); left: 220; top: 44 } -#playfield #field-5-2 { background-image: url(images/standard.png); left: 220; top: 88 } -#playfield #field-5-3 { background-image: url(images/standard.png); left: 220; top: 132 } -#playfield #field-5-4 { background-image: url(images/standard.png); left: 220; top: 176 } -#playfield #field-5-5 { background-image: url(images/triple-letter.png); left: 220; top: 220 } -#playfield #field-5-6 { background-image: url(images/standard.png); left: 220; top: 264 } -#playfield #field-5-7 { background-image: url(images/standard.png); left: 220; top: 308 } -#playfield #field-5-8 { background-image: url(images/standard.png); left: 220; top: 352 } -#playfield #field-5-9 { background-image: url(images/triple-letter.png); left: 220; top: 396 } -#playfield #field-5-10 { background-image: url(images/standard.png); left: 220; top: 440 } -#playfield #field-5-11 { background-image: url(images/standard.png); left: 220; top: 484 } -#playfield #field-5-12 { background-image: url(images/standard.png); left: 220; top: 528 } -#playfield #field-5-13 { background-image: url(images/triple-letter.png); left: 220; top: 572 } -#playfield #field-5-14 { background-image: url(images/standard.png); left: 220; top: 616 } -#playfield #field-6-0 { background-image: url(images/standard.png); left: 264; top: 0 } -#playfield #field-6-1 { background-image: url(images/standard.png); left: 264; top: 44 } -#playfield #field-6-2 { background-image: url(images/double-letter.png); left: 264; top: 88 } -#playfield #field-6-3 { background-image: url(images/standard.png); left: 264; top: 132 } -#playfield #field-6-4 { background-image: url(images/standard.png); left: 264; top: 176 } -#playfield #field-6-5 { background-image: url(images/standard.png); left: 264; top: 220 } -#playfield #field-6-6 { background-image: url(images/double-letter.png); left: 264; top: 264 } -#playfield #field-6-7 { background-image: url(images/standard.png); left: 264; top: 308 } -#playfield #field-6-8 { background-image: url(images/double-letter.png); left: 264; top: 352 } -#playfield #field-6-9 { background-image: url(images/standard.png); left: 264; top: 396 } -#playfield #field-6-10 { background-image: url(images/standard.png); left: 264; top: 440 } -#playfield #field-6-11 { background-image: url(images/standard.png); left: 264; top: 484 } -#playfield #field-6-12 { background-image: url(images/double-letter.png); left: 264; top: 528 } -#playfield #field-6-13 { background-image: url(images/standard.png); left: 264; top: 572 } -#playfield #field-6-14 { background-image: url(images/standard.png); left: 264; top: 616 } -#playfield #field-7-0 { background-image: url(images/triple-word.png); left: 308; top: 0 } -#playfield #field-7-1 { background-image: url(images/standard.png); left: 308; top: 44 } -#playfield #field-7-2 { background-image: url(images/standard.png); left: 308; top: 88 } -#playfield #field-7-3 { background-image: url(images/double-letter.png); left: 308; top: 132 } -#playfield #field-7-4 { background-image: url(images/standard.png); left: 308; top: 176 } -#playfield #field-7-5 { background-image: url(images/standard.png); left: 308; top: 220 } -#playfield #field-7-6 { background-image: url(images/standard.png); left: 308; top: 264 } -#playfield #field-7-7 { background-image: url(images/double-word.png); left: 308; top: 308 } -#playfield #field-7-8 { background-image: url(images/standard.png); left: 308; top: 352 } -#playfield #field-7-9 { background-image: url(images/standard.png); left: 308; top: 396 } -#playfield #field-7-10 { background-image: url(images/standard.png); left: 308; top: 440 } -#playfield #field-7-11 { background-image: url(images/double-letter.png); left: 308; top: 484 } -#playfield #field-7-12 { background-image: url(images/standard.png); left: 308; top: 528 } -#playfield #field-7-13 { background-image: url(images/standard.png); left: 308; top: 572 } -#playfield #field-7-14 { background-image: url(images/triple-word.png); left: 308; top: 616 } -#playfield #field-8-0 { background-image: url(images/standard.png); left: 352; top: 0 } -#playfield #field-8-1 { background-image: url(images/standard.png); left: 352; top: 44 } -#playfield #field-8-2 { background-image: url(images/double-letter.png); left: 352; top: 88 } -#playfield #field-8-3 { background-image: url(images/standard.png); left: 352; top: 132 } -#playfield #field-8-4 { background-image: url(images/standard.png); left: 352; top: 176 } -#playfield #field-8-5 { background-image: url(images/standard.png); left: 352; top: 220 } -#playfield #field-8-6 { background-image: url(images/double-letter.png); left: 352; top: 264 } -#playfield #field-8-7 { background-image: url(images/standard.png); left: 352; top: 308 } -#playfield #field-8-8 { background-image: url(images/double-letter.png); left: 352; top: 352 } -#playfield #field-8-9 { background-image: url(images/standard.png); left: 352; top: 396 } -#playfield #field-8-10 { background-image: url(images/standard.png); left: 352; top: 440 } -#playfield #field-8-11 { background-image: url(images/standard.png); left: 352; top: 484 } -#playfield #field-8-12 { background-image: url(images/double-letter.png); left: 352; top: 528 } -#playfield #field-8-13 { background-image: url(images/standard.png); left: 352; top: 572 } -#playfield #field-8-14 { background-image: url(images/standard.png); left: 352; top: 616 } -#playfield #field-9-0 { background-image: url(images/standard.png); left: 396; top: 0 } -#playfield #field-9-1 { background-image: url(images/triple-letter.png); left: 396; top: 44 } -#playfield #field-9-2 { background-image: url(images/standard.png); left: 396; top: 88 } -#playfield #field-9-3 { background-image: url(images/standard.png); left: 396; top: 132 } -#playfield #field-9-4 { background-image: url(images/standard.png); left: 396; top: 176 } -#playfield #field-9-5 { background-image: url(images/triple-letter.png); left: 396; top: 220 } -#playfield #field-9-6 { background-image: url(images/standard.png); left: 396; top: 264 } -#playfield #field-9-7 { background-image: url(images/standard.png); left: 396; top: 308 } -#playfield #field-9-8 { background-image: url(images/standard.png); left: 396; top: 352 } -#playfield #field-9-9 { background-image: url(images/triple-letter.png); left: 396; top: 396 } -#playfield #field-9-10 { background-image: url(images/standard.png); left: 396; top: 440 } -#playfield #field-9-11 { background-image: url(images/standard.png); left: 396; top: 484 } -#playfield #field-9-12 { background-image: url(images/standard.png); left: 396; top: 528 } -#playfield #field-9-13 { background-image: url(images/triple-letter.png); left: 396; top: 572 } -#playfield #field-9-14 { background-image: url(images/standard.png); left: 396; top: 616 } -#playfield #field-10-0 { background-image: url(images/standard.png); left: 440; top: 0 } -#playfield #field-10-1 { background-image: url(images/standard.png); left: 440; top: 44 } -#playfield #field-10-2 { background-image: url(images/standard.png); left: 440; top: 88 } -#playfield #field-10-3 { background-image: url(images/standard.png); left: 440; top: 132 } -#playfield #field-10-4 { background-image: url(images/double-word.png); left: 440; top: 176 } -#playfield #field-10-5 { background-image: url(images/standard.png); left: 440; top: 220 } -#playfield #field-10-6 { background-image: url(images/standard.png); left: 440; top: 264 } -#playfield #field-10-7 { background-image: url(images/standard.png); left: 440; top: 308 } -#playfield #field-10-8 { background-image: url(images/standard.png); left: 440; top: 352 } -#playfield #field-10-9 { background-image: url(images/standard.png); left: 440; top: 396 } -#playfield #field-10-10 { background-image: url(images/double-word.png); left: 440; top: 440 } -#playfield #field-10-11 { background-image: url(images/standard.png); left: 440; top: 484 } -#playfield #field-10-12 { background-image: url(images/standard.png); left: 440; top: 528 } -#playfield #field-10-13 { background-image: url(images/standard.png); left: 440; top: 572 } -#playfield #field-10-14 { background-image: url(images/standard.png); left: 440; top: 616 } -#playfield #field-11-0 { background-image: url(images/double-letter.png); left: 484; top: 0 } -#playfield #field-11-1 { background-image: url(images/standard.png); left: 484; top: 44 } -#playfield #field-11-2 { background-image: url(images/standard.png); left: 484; top: 88 } -#playfield #field-11-3 { background-image: url(images/double-word.png); left: 484; top: 132 } -#playfield #field-11-4 { background-image: url(images/standard.png); left: 484; top: 176 } -#playfield #field-11-5 { background-image: url(images/standard.png); left: 484; top: 220 } -#playfield #field-11-6 { background-image: url(images/standard.png); left: 484; top: 264 } -#playfield #field-11-7 { background-image: url(images/double-letter.png); left: 484; top: 308 } -#playfield #field-11-8 { background-image: url(images/standard.png); left: 484; top: 352 } -#playfield #field-11-9 { background-image: url(images/standard.png); left: 484; top: 396 } -#playfield #field-11-10 { background-image: url(images/standard.png); left: 484; top: 440 } -#playfield #field-11-11 { background-image: url(images/double-word.png); left: 484; top: 484 } -#playfield #field-11-12 { background-image: url(images/standard.png); left: 484; top: 528 } -#playfield #field-11-13 { background-image: url(images/standard.png); left: 484; top: 572 } -#playfield #field-11-14 { background-image: url(images/double-letter.png); left: 484; top: 616 } -#playfield #field-12-0 { background-image: url(images/standard.png); left: 528; top: 0 } -#playfield #field-12-1 { background-image: url(images/standard.png); left: 528; top: 44 } -#playfield #field-12-2 { background-image: url(images/double-word.png); left: 528; top: 88 } -#playfield #field-12-3 { background-image: url(images/standard.png); left: 528; top: 132 } -#playfield #field-12-4 { background-image: url(images/standard.png); left: 528; top: 176 } -#playfield #field-12-5 { background-image: url(images/standard.png); left: 528; top: 220 } -#playfield #field-12-6 { background-image: url(images/double-letter.png); left: 528; top: 264 } -#playfield #field-12-7 { background-image: url(images/standard.png); left: 528; top: 308 } -#playfield #field-12-8 { background-image: url(images/double-letter.png); left: 528; top: 352 } -#playfield #field-12-9 { background-image: url(images/standard.png); left: 528; top: 396 } -#playfield #field-12-10 { background-image: url(images/standard.png); left: 528; top: 440 } -#playfield #field-12-11 { background-image: url(images/standard.png); left: 528; top: 484 } -#playfield #field-12-12 { background-image: url(images/double-word.png); left: 528; top: 528 } -#playfield #field-12-13 { background-image: url(images/standard.png); left: 528; top: 572 } -#playfield #field-12-14 { background-image: url(images/standard.png); left: 528; top: 616 } -#playfield #field-13-0 { background-image: url(images/standard.png); left: 572; top: 0 } -#playfield #field-13-1 { background-image: url(images/double-word.png); left: 572; top: 44 } -#playfield #field-13-2 { background-image: url(images/standard.png); left: 572; top: 88 } -#playfield #field-13-3 { background-image: url(images/standard.png); left: 572; top: 132 } -#playfield #field-13-4 { background-image: url(images/standard.png); left: 572; top: 176 } -#playfield #field-13-5 { background-image: url(images/triple-letter.png); left: 572; top: 220 } -#playfield #field-13-6 { background-image: url(images/standard.png); left: 572; top: 264 } -#playfield #field-13-7 { background-image: url(images/standard.png); left: 572; top: 308 } -#playfield #field-13-8 { background-image: url(images/standard.png); left: 572; top: 352 } -#playfield #field-13-9 { background-image: url(images/triple-letter.png); left: 572; top: 396 } -#playfield #field-13-10 { background-image: url(images/standard.png); left: 572; top: 440 } -#playfield #field-13-11 { background-image: url(images/standard.png); left: 572; top: 484 } -#playfield #field-13-12 { background-image: url(images/standard.png); left: 572; top: 528 } -#playfield #field-13-13 { background-image: url(images/double-word.png); left: 572; top: 572 } -#playfield #field-13-14 { background-image: url(images/standard.png); left: 572; top: 616 } -#playfield #field-14-0 { background-image: url(images/triple-word.png); left: 616; top: 0 } -#playfield #field-14-1 { background-image: url(images/standard.png); left: 616; top: 44 } -#playfield #field-14-2 { background-image: url(images/standard.png); left: 616; top: 88 } -#playfield #field-14-3 { background-image: url(images/double-letter.png); left: 616; top: 132 } -#playfield #field-14-4 { background-image: url(images/standard.png); left: 616; top: 176 } -#playfield #field-14-5 { background-image: url(images/standard.png); left: 616; top: 220 } -#playfield #field-14-6 { background-image: url(images/standard.png); left: 616; top: 264 } -#playfield #field-14-7 { background-image: url(images/triple-word.png); left: 616; top: 308 } -#playfield #field-14-8 { background-image: url(images/standard.png); left: 616; top: 352 } -#playfield #field-14-9 { background-image: url(images/standard.png); left: 616; top: 396 } -#playfield #field-14-10 { background-image: url(images/standard.png); left: 616; top: 440 } -#playfield #field-14-11 { background-image: url(images/double-letter.png); left: 616; top: 484 } -#playfield #field-14-12 { background-image: url(images/standard.png); left: 616; top: 528 } -#playfield #field-14-13 { background-image: url(images/standard.png); left: 616; top: 572 } -#playfield #field-14-14 { background-image: url(images/triple-word.png); left: 616; top: 616 } -#playfield #my-tray-0 { left: 194; top: 665 } -#playfield #my-tray-1 { left: 232; top: 665 } -#playfield #my-tray-2 { left: 270; top: 665 } -#playfield #my-tray-3 { left: 308; top: 665 } -#playfield #my-tray-4 { left: 346; top: 665 } -#playfield #my-tray-5 { left: 384; top: 665 } -#playfield #my-tray-6 { left: 422; top: 665 } -#playfield #their-name-0 { left: 670; top: 0 } -#playfield #their-score-0 { left: 887; top: 0; text-align: right } -#playfield #their-tray-0-0 { left: 665; top: 22 } -#playfield #their-tray-0-1 { left: 703; top: 22 } -#playfield #their-tray-0-2 { left: 741; top: 22 } -#playfield #their-tray-0-3 { left: 779; top: 22 } -#playfield #their-tray-0-4 { left: 817; top: 22 } -#playfield #their-tray-0-5 { left: 855; top: 22 } -#playfield #their-tray-0-6 { left: 893; top: 22 } - -#playfield #their-name-1 { left: 670; top: 66 } -#playfield #their-score-1 { left: 887; top: 66; text-align: right } -#playfield #their-tray-1-0 { left: 665; top: 88 } -#playfield #their-tray-1-1 { left: 703; top: 88 } -#playfield #their-tray-1-2 { left: 741; top: 88 } -#playfield #their-tray-1-3 { left: 779; top: 88 } -#playfield #their-tray-1-4 { left: 817; top: 88 } -#playfield #their-tray-1-5 { left: 855; top: 88 } -#playfield #their-tray-1-6 { left: 893; top: 88 } - -#playfield #their-name-2 { left: 670; top: 132 } -#playfield #their-score-2 { left: 887; top: 132; text-align: right } -#playfield #their-tray-2-0 { left: 665; top: 154 } -#playfield #their-tray-2-1 { left: 703; top: 154 } -#playfield #their-tray-2-2 { left: 741; top: 154 } -#playfield #their-tray-2-3 { left: 779; top: 154 } -#playfield #their-tray-2-4 { left: 817; top: 154 } -#playfield #their-tray-2-5 { left: 855; top: 154 } -#playfield #their-tray-2-6 { left: 893; top: 154 } - -#playfield #their-name-3 { left: 670; top: 198 } -#playfield #their-score-3 { left: 887; top: 198; text-align: right } -#playfield #their-tray-3-0 { left: 665; top: 220 } -#playfield #their-tray-3-1 { left: 703; top: 220 } -#playfield #their-tray-3-2 { left: 741; top: 220 } -#playfield #their-tray-3-3 { left: 779; top: 220 } -#playfield #their-tray-3-4 { left: 817; top: 220 } -#playfield #their-tray-3-5 { left: 855; top: 220 } -#playfield #their-tray-3-6 { left: 893; top: 220 } - Modified: branches/trunk-reorg/projects/scrabble/website/scrabble.html =================================================================== --- branches/trunk-reorg/projects/scrabble/website/scrabble.html 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/website/scrabble.html 2007-11-05 10:14:48 UTC (rev 2255) @@ -1,243 +1,16 @@ + + + + +
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Horst
192
Modified: branches/trunk-reorg/projects/scrabble/website/scrabble.js =================================================================== --- branches/trunk-reorg/projects/scrabble/website/scrabble.js 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/website/scrabble.js 2007-11-05 10:14:48 UTC (rev 2255) @@ -1,20 +1,315 @@ // -*- Java -*- (really Javascript) +var boardScoring = [["triple-word",null,null,"double-letter",null,null,null,"triple-word", + null,null,null,"double-letter",null,null,"triple-word"], + [null,"double-word",null,null,null,"triple-letter",null,null,null,"triple-letter", + null,null,null,"double-word",null], + [null,null,"double-word",null,null,null,"double-letter",null,"double-letter", + null,null,null,"double-word",null,null], + ["double-letter",null,null,"double-word",null,null,null,"double-letter", + null,null,null,"double-word",null,null,"double-letter"], + [null,null,null,null,"double-word",null,null,null,null,null,"double-word", + null,null,null,null], + [null,"triple-letter",null,null,null,"triple-letter",null,null,null,"triple-letter", + null,null,null,"triple-letter",null], + [null,null,"double-letter",null,null,null,"double-letter",null,"double-letter", + null,null,null,"double-letter",null,null], + ["triple-word",null,null,"double-letter",null,null,null,"double-word", + null,null,null,"double-letter",null,null,"triple-word"], + [null,null,"double-letter",null,null,null,"double-letter",null,"double-letter", + null,null,null,"double-letter",null,null], + [null,"triple-letter",null,null,null,"triple-letter",null,null,null,"triple-letter", + null,null,null,"triple-letter",null], + [null,null,null,null,"double-word",null,null,null,null,null,"double-word", + null,null,null,null], + ["double-letter",null,null,"double-word",null,null,null,"double-letter", + null,null,null,"double-word",null,null,"double-letter"], + [null,null,"double-word",null,null,null,"double-letter",null,"double-letter", + null,null,null,"double-word",null,null], + [null,"double-word",null,null,null,"triple-letter",null,null,null,"triple-letter", + null,null,null,"double-word",null], + ["triple-word",null,null,"double-letter",null,null,null,"triple-word", + null,null,null,"double-letter",null,null,"triple-word"]]; + +function getFieldScore(x, y) { + return boardScoring[x][y] || 'standard'; +} + +var gameID = 108; +var board; + +var border = 10; + +function makeBoard() { + var container = $('playfield'); + board = []; + for (x = 0; x < 15; x++) { + board[x] = []; + for (y = 0; y < 15; y++) { + var element = DIV(); + element.style.position = 'absolute'; + element.style.width = '40px'; + element.style.height = '40px'; + element.style.backgroundImage = 'url(images/' + getFieldScore(x, y) + '.png)'; + element.x = x; + element.y = y; + setElementPosition(element, { x: border + x * 44, y: border + y * 44 }); + YAHOO.util.Event.on(element, 'click', emptyTileClicked) + board[x][y] = element; + } + appendChildNodes(container, board[x]); + } + + myTrayContainer = DIV(); + myTrayContainer.style.position = 'absolute'; + myTrayContainer.style.width = 7 * 44 + 'px'; + myTrayContainer.style.height = '44px'; + setElementPosition(myTrayContainer, { x: border + 194, y: border + 665 }); + appendChildNodes(container, myTrayContainer); + + var shuffleButton = DIV(null, "shuffle"); + shuffleButton.style.color = 'white'; + shuffleButton.style.position = 'absolute'; + shuffleButton.onclick = shuffleMyTray; + setElementPosition(shuffleButton, { x: border + 480, y: border + 665 }); + appendChildNodes(container, shuffleButton); + +// var clearButton = DIV(null, "clear"); +// clearButton.style.color = 'white'; +// clearButton.style.position = 'absolute'; +// clearButton.onclick = clearBoard; +// setElementPosition(clearButton, { x: border + 480, y: border + 680 }); +// appendChildNodes(container, clearButton); +} + function setLetter(x, y, letter) { - $('field-' + x + '-' + y).innerHTML = ''; + var image = IMG({ src: 'images/' + letter + '.png'}); + image.style.position = 'absolute'; + image.style.top = '3px'; + image.style.left = '3px'; + replaceChildNodes(board[x][y], image); + board[x][y].letterNode = image; + board[x][y].letter = letter; + YAHOO.util.Event.purgeElement(board[x][y], false, 'click'); } -function setMyTray(n, letter) { - $('my-tray-' + n).innerHTML = letter ? '' : ''; +function letterAt(x, y) { + return board[x][y].letter; } -function setTheirTray(count, name, letterCount) { - $('their-name-' + count).innerHTML = name; - for (var i = 0; i < 7; i++) { - $('their-tray-' + count + '-' + i).style.visibility = (i < letterCount) ? 'visible' : 'hidden'; +function Cursor() +{ + var image = new IMG({ src: 'images/NIL.png' }); + image.style.position = 'absolute'; + image.style.top = '3px'; + image.style.left = '3px'; + + this.image = image; + this.x = -1; + this.y = -1; + this.direction = 0; + + this.set = function(x, y) { + this.x = x; + this.y = y; + replaceChildNodes(board[x][y], this.image); + }; + + this.clear = function() { + if (this.x != -1) { + replaceChildNodes(board[this.x][this.y]); + this.x = this.y = -1; + this.direction = 0; + } + }; + + this.advance = function() { + var horizontal = 1; + var vertical = 2; + var direction = this.direction; + if (direction == 0) { + // Direction not determined + if (((this.y < 14) && letterAt(this.x, this.y + 1)) + || ((this.y > 1) + && letterAt(this.x, this.y - 1) + && !letterAt(this.x, this.y - 2)) + || ((this.x > 1) + && letterAt(this.x - 1, this.y) + && letterAt(this.x - 2, this.y))) { + direction = vertical; + } else { + direction = horizontal; + } + } + var x = this.x; + var y = this.y; + this.clear(); + this.direction = direction; + if (this.direction == horizontal) { + x++; + for (; x < 15; x++) { + if (board[x][y].childNodes.length == 0) { + break; + } + } + } else { + y++; + for (; y < 15; y++) { + if (board[x][y].childNodes.length == 0) { + break; + } + } + } + if ((x != 15) && (y != 15)) { + this.set(x, y); + } + }; +} + +var cursor = new Cursor; + +function emptyTileClicked() { + cursor.clear(); + cursor.set(this.x, this.y); +} + +var move = []; + +function makeMove(x, y, letter) { + move.push([x, y, letter]); + $('move').onclick = submitMove; + $('move').innerHTML = move.toString(); +} + +function clearMove() { + move = []; + $('move').onclick = null; + $('move').innerHTML = '[no move]'; +} + +function submitMove() +{ + var queryString = MochiKit.Base.queryString({ move: move.toString(), game: gameID }); + var res = MochiKit.Async.doXHR("/make-move", + { method: 'POST', + sendContent: queryString, + headers: { "Content-Type": "application/x-www-form-urlencoded" } }); + res.addCallbacks(moveSuccess, moveFailure); +} + +function moveSuccess() +{ + clearMove(); +} + +function moveFailure(e) +{ + alert('failed: ' + e); +} + +function letterKeyPressed(type, args, obj) { + var letter = String.fromCharCode(args[0]); + var x = cursor.x; + var y = cursor.y; + cursor.advance(); + setLetter(x, y, letter); + makeMove(x, y, letter); +} + +var leftKey = 37; +var upKey = 38; +var rightKey = 39; +var downKey = 40; +var backspaceKey = 8; + +function functionKeyPressed(type, args, obj) { + var x = cursor.x; + var y = cursor.y; + + switch (args[0]) { + case rightKey: + while (x < 14) + if (!letterAt(++x, y)) + break; + break; + case leftKey: + while (x > 0) + if (!letterAt(--x, y)) + break; + break; + case upKey: + while (y > 0) + if (!letterAt(x, --y)) + break; + break; + case downKey: + while (y < 14) + if (!letterAt(x, ++y)) + break; + break; } + if ((x >= 0) && (x <= 14) && (y >= 0) && (y <= 14)) { + cursor.clear(); + cursor.set(x, y); + } + YAHOO.util.Event.preventDefault(args[1]); } +function clearBoard() { + for (x = 0; x < 15; x++) { + for (y = 0; y < 15; y++) { + var letterNode = board[x][y].letterNode; + if (letterNode) { + letterNode.anim = new YAHOO.util.Motion(letterNode, { points: { to: [ border + 7 * 44 + 3, + border + 7 * 44 + 3 ]}}, + 0.15); + letterNode.anim.onComplete.subscribe(function () { removeElement(this); }); + letterNode.anim.animate(); + } + } + } +} + +var tray; + +function trayClick(letter) { + this.clicked = !this.clicked; + this.anim = new YAHOO.util.Motion(this, { points: { by: [ 0, (this.clicked ? 15 : -15 ) ]}}, 0.15); + this.anim.animate(); +} + +function makeMyTray(letters) { + tray = []; + for (var i = 0; i < letters.length; i++) { + var element = IMG({src: 'images/' + letters[i] + '.png'}); + element.letter = letters[i]; + element.style.position = 'absolute'; + element.style.width = '34px'; + element.style.height = '34px'; + element.onclick = trayClick; + setElementPosition(element, { x: i * 40 }); + tray[i] = element; + } + replaceChildNodes(myTrayContainer, tray); +} + +function shuffleMyTray() { + var count = tray.length; + var newTray = []; + for (var i = 0; i < count; i++) { + do { + index = Math.floor(Math.random() * count); + } while (newTray[index]); + newTray[index] = tray[i]; + newTray[index].anim = new YAHOO.util.Motion(tray[i], { points: { to: [ border + 194 + i * 40, + border + 665 ] }}, + 0.5); + newTray[index].anim.animate(); + newTray[index].clicked = false; + } + tray = newTray; +} + function drawGameState (gameState) { for (var i = 0; i < gameState.board.length; i++) { var x = gameState.board[i][0]; @@ -24,15 +319,32 @@ } } -function trayClick(letter) { - this.clicked = !this.clicked; - setElementPosition(this, { y: (this.clicked ? 680 : 665) }); -} +var legalLetters = "ABCDEFGHIJKLMNOPQRSTUVWXYZ????????".split(""); function init() { - for (var i = 0; i < 7; i++) { - $('my-tray-' + i).onclick = trayClick; + makeBoard(); + var d = loadJSONDoc("/game/" + gameID); + d.addCallbacks(drawGameState, alert); + + var letterKeyCodes = []; + for (var i = 0; i < legalLetters.length; i++) { + letterKeyCodes[i] = legalLetters[i].charCodeAt(0); } + var letterKeyListener = new YAHOO.util.KeyListener(document, + { keys: letterKeyCodes }, + { fn: letterKeyPressed, scope: this, correctScope: true }); + letterKeyListener.enable(); + + var functionKeyListener = new YAHOO.util.KeyListener(document, + { keys: [ leftKey, upKey, rightKey, downKey, backspaceKey ] }, + { fn: functionKeyPressed, scope: this, correctScope: true }); + functionKeyListener.enable(); + + var moveDisplay = DIV({ id: 'move' }, "[no move yet]"); + moveDisplay.style.color = 'white'; + moveDisplay.style.position = 'absolute'; + setElementPosition(moveDisplay, { x: border + 550, y: border + 665 }); + appendChildNodes(document.body, moveDisplay); var d = loadJSONDoc("/game/108"); d.addCallbacks(drawGameState, alert); } Added: branches/trunk-reorg/projects/scrabble/website/yui/animation/animation-min.js =================================================================== --- branches/trunk-reorg/projects/scrabble/website/yui/animation/animation-min.js 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/website/yui/animation/animation-min.js 2007-11-05 10:14:48 UTC (rev 2255) @@ -0,0 +1,9 @@ +/* +Copyright (c) 2007, Yahoo! Inc. All rights reserved. +Code licensed under the BSD License: +http://developer.yahoo.net/yui/license.txt +version: 2.3.1 +*/ +YAHOO.util.Anim=function(B,A,C,D){if(!B){}this.init(B,A,C,D);};YAHOO.util.Anim.prototype={toString:function(){var A=this.getEl();var B=A.id||A.tagName||A;return("Anim "+B);},patterns:{noNegatives:/width|height|opacity|padding/i,offsetAttribute:/^((width|height)|(top|left))$/,defaultUnit:/width|height|top$|bottom$|left$|right$/i,offsetUnit:/\d+(em|%|en|ex|pt|in|cm|mm|pc)$/i},doMethod:function(A,C,B){return this.method(this.currentFrame,C,B-C,this.totalFrames);},setAttribute:function(A,C,B){if(this.patterns.noNegatives.test(A)){C=(C>0)?C:0;}YAHOO.util.Dom.setStyle(this.getEl(),A,C+B);},getAttribute:function(A){var C=this.getEl();var E=YAHOO.util.Dom.getStyle(C,A);if(E!=="auto"&&!this.patterns.offsetUnit.test(E)){return parseFloat(E);}var B=this.patterns.offsetAttribute.exec(A)||[];var F=!!(B[3]);var D=!!(B[2]);if(D||(YAHOO.util.Dom.getStyle(C,"position")=="absolute"&&F)){E=C["offset"+B[0].charAt(0).toUpperCase()+B[0].substr(1)];}else{E=0;}return E;},getDefaultUnit:function(A){if(this.patterns.defaultUnit.test(A)){return"px";}return"";},setRuntimeAttribute:function(B){var G;var C;var D=this.attributes;this.runtimeAttributes[B]={};var F=function(H){return(typeof H!=="undefined");};if(!F(D[B]["to"])&&!F(D[B]["by"])){return false;}G=(F(D[B]["from"]))?D[B]["from"]:this.getAttribute(B);if(F(D[B]["to"])){C=D[B]["to"];}else{if(F(D[B]["by"])){if(G.constructor==Array){C=[];for(var E=0,A=G.length;E0&&isFinite(K)){if(G.currentFrame+K>=J){K=J-(I+1);}G.currentFrame+=K;}};};YAHOO.util.Bezier=new function(){this.getPosition=function(E,D){var F=E.length;var C=[];for(var B=0;B0&&!(K[0] instanceof Array)){K=[K];}else{var J=[];for(L=0,N=K.length;L0){this.runtimeAttributes[O]=this.runtimeAttributes[O].concat(K);}this.runtimeAttributes[O][this.runtimeAttributes[O].length]=H;}else{E.setRuntimeAttribute.call(this,O);}};var A=function(F,H){var G=D.Dom.getXY(this.getEl());F=[F[0]-G[0]+H[0],F[1]-G[1]+H[1]];return F;};var C=function(F){return(typeof F!=="undefined");};})();(function(){YAHOO.util.Scroll=function(E,D,F,G){if(E){YAHOO.util.Scroll.superclass.constructor.call(this,E,D,F,G);}};YAHOO.extend(YAHOO.util.Scroll,YAHOO.util.ColorAnim);var B=YAHOO.util;var C=B.Scroll.superclass;var A=B.Scroll.prototype;A.toString=function(){var D=this.getEl();var E=D.id||D.tagName;return("Scroll "+E);};A.doMethod=function(D,G,E){var F=null;if(D=="scroll"){F=[this.method(this.currentFrame,G[0],E[0]-G[0],this.totalFrames),this.method(this.currentFrame,G[1],E[1]-G[1],this.totalFrames)]; +}else{F=C.doMethod.call(this,D,G,E);}return F;};A.getAttribute=function(D){var F=null;var E=this.getEl();if(D=="scroll"){F=[E.scrollLeft,E.scrollTop];}else{F=C.getAttribute.call(this,D);}return F;};A.setAttribute=function(D,G,F){var E=this.getEl();if(D=="scroll"){E.scrollLeft=G[0];E.scrollTop=G[1];}else{C.setAttribute.call(this,D,G,F);}};})();YAHOO.register("animation",YAHOO.util.Anim,{version:"2.3.1",build:"541"}); \ No newline at end of file Added: branches/trunk-reorg/projects/scrabble/website/yui/autocomplete/assets/autocomplete-core.css =================================================================== --- branches/trunk-reorg/projects/scrabble/website/yui/autocomplete/assets/autocomplete-core.css 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/website/yui/autocomplete/assets/autocomplete-core.css 2007-11-05 10:14:48 UTC (rev 2255) @@ -0,0 +1,7 @@ +/* +Copyright (c) 2007, Yahoo! Inc. All rights reserved. +Code licensed under the BSD License: +http://developer.yahoo.net/yui/license.txt +version: 2.3.1 +*/ +/* This file intentionally left blank */ Added: branches/trunk-reorg/projects/scrabble/website/yui/autocomplete/assets/skins/sam/autocomplete-skin.css =================================================================== --- branches/trunk-reorg/projects/scrabble/website/yui/autocomplete/assets/skins/sam/autocomplete-skin.css 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/website/yui/autocomplete/assets/skins/sam/autocomplete-skin.css 2007-11-05 10:14:48 UTC (rev 2255) @@ -0,0 +1,50 @@ +/* +Copyright (c) 2007, Yahoo! Inc. All rights reserved. +Code licensed under the BSD License: +http://developer.yahoo.net/yui/license.txt +version: 2.3.1 +*/ +/* styles for entire widget */ +.yui-skin-sam .yui-ac { + position:relative;font-family:arial;font-size:100%; +} + +/* styles for input field */ +.yui-skin-sam .yui-ac-input { + position:absolute;width:100%; +} + +/* styles for results container */ +.yui-skin-sam .yui-ac-container { + position:absolute;top:1.6em;width:100%; +} + +/* styles for header/body/footer wrapper within container */ +.yui-skin-sam .yui-ac-content { + position:absolute;width:100%;border:1px solid #808080;background:#fff;overflow:hidden;z-index:9050; +} + +/* styles for container shadow */ +.yui-skin-sam .yui-ac-shadow { + position:absolute;margin:.3em;width:100%;background:#000;-moz-opacity: 0.10;opacity:.10;filter:alpha(opacity=10);z-index:9049; +} + +/* styles for results list */ +.yui-skin-sam .yui-ac-content ul{ + margin:0;padding:0;width:100%; +} + +/* styles for result item */ +.yui-skin-sam .yui-ac-content li { + margin:0;padding:2px 5px;cursor:default;white-space:nowrap; +} + +/* styles for prehighlighted result item */ +.yui-skin-sam .yui-ac-content li.yui-ac-prehighlight { + background:#B3D4FF; +} + +/* styles for highlighted result item */ +.yui-skin-sam .yui-ac-content li.yui-ac-highlight { + background:#426FD9;color:#FFF; +} Added: branches/trunk-reorg/projects/scrabble/website/yui/autocomplete/assets/skins/sam/autocomplete.css =================================================================== --- branches/trunk-reorg/projects/scrabble/website/yui/autocomplete/assets/skins/sam/autocomplete.css 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/website/yui/autocomplete/assets/skins/sam/autocomplete.css 2007-11-05 10:14:48 UTC (rev 2255) @@ -0,0 +1,7 @@ +/* +Copyright (c) 2007, Yahoo! Inc. All rights reserved. +Code licensed under the BSD License: +http://developer.yahoo.net/yui/license.txt +version: 2.3.1 +*/ +.yui-skin-sam .yui-ac{position:relative;font-family:arial;font-size:100%;}.yui-skin-sam .yui-ac-input{position:absolute;width:100%;}.yui-skin-sam .yui-ac-container{position:absolute;top:1.6em;width:100%;}.yui-skin-sam .yui-ac-content{position:absolute;width:100%;border:1px solid #808080;background:#fff;overflow:hidden;z-index:9050;}.yui-skin-sam .yui-ac-shadow{position:absolute;margin:.3em;width:100%;background:#000;-moz-opacity:0.10;opacity:.10;filter:alpha(opacity=10);z-index:9049;}.yui-skin-sam .yui-ac-content ul{margin:0;padding:0;width:100%;}.yui-skin-sam .yui-ac-content li{margin:0;padding:2px 5px;cursor:default;white-space:nowrap;}.yui-skin-sam .yui-ac-content li.yui-ac-prehighlight{background:#B3D4FF;}.yui-skin-sam .yui-ac-content li.yui-ac-highlight{background:#426FD9;color:#FFF;} Added: branches/trunk-reorg/projects/scrabble/website/yui/autocomplete/autocomplete-min.js =================================================================== --- branches/trunk-reorg/projects/scrabble/website/yui/autocomplete/autocomplete-min.js 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/website/yui/autocomplete/autocomplete-min.js 2007-11-05 10:14:48 UTC (rev 2255) @@ -0,0 +1,12 @@ +/* +Copyright (c) 2007, Yahoo! Inc. All rights reserved. +Code licensed under the BSD License: +http://developer.yahoo.net/yui/license.txt +version: 2.3.1 +*/ +YAHOO.widget.AutoComplete=function(G,B,J,D){if(G&&B&&J){if(J instanceof YAHOO.widget.DataSource){this.dataSource=J;}else{return ;}if(YAHOO.util.Dom.inDocument(G)){if(YAHOO.lang.isString(G)){this._sName="instance"+YAHOO.widget.AutoComplete._nIndex+" "+G;this._oTextbox=document.getElementById(G);}else{this._sName=(G.id)?"instance"+YAHOO.widget.AutoComplete._nIndex+" "+G.id:"instance"+YAHOO.widget.AutoComplete._nIndex;this._oTextbox=G;}YAHOO.util.Dom.addClass(this._oTextbox,"yui-ac-input");}else{return ;}if(YAHOO.util.Dom.inDocument(B)){if(YAHOO.lang.isString(B)){this._oContainer=document.getElementById(B);}else{this._oContainer=B;}if(this._oContainer.style.display=="none"){}var E=this._oContainer.parentNode;var A=E.tagName.toLowerCase();if(A=="div"){YAHOO.util.Dom.addClass(E,"yui-ac");}else{}}else{return ;}if(D&&(D.constructor==Object)){for(var I in D){if(I){this[I]=D[I];}}}this._initContainer();this._initProps();this._initList();this._initContainerHelpers();var H=this;var F=this._oTextbox;var C=this._oContainer._oContent;YAHOO.util.Event.addListener(F,"keyup",H._onTextboxKeyUp,H);YAHOO.util.Event.addListener(F,"keydown",H._onTextboxKeyDown,H);YAHOO.util.Event.addListener(F,"focus",H._onTextboxFocus,H);YAHOO.util.Event.addListener(F,"blur",H._onTextboxBlur,H);YAHOO.util.Event.addListener(C,"mouseover",H._onContainerMouseover,H);YAHOO.util.Event.addListener(C,"mouseout",H._onContainerMouseout,H);YAHOO.util.Event.addListener(C,"scroll",H._onContainerScroll,H);YAHOO.util.Event.addListener(C,"resize",H._onContainerResize,H);if(F.form){YAHOO.util.Event.addListener(F.form,"submit",H._onFormSubmit,H);}YAHOO.util.Event.addListener(F,"keypress",H._onTextboxKeyPress,H);this.textboxFocusEvent=new YAHOO.util.CustomEvent("textboxFocus",this);this.textboxKeyEvent=new YAHOO.util.CustomEvent("textboxKey",this);this.dataRequestEvent=new YAHOO.util.CustomEvent("dataRequest",this);this.dataReturnEvent=new YAHOO.util.CustomEvent("dataReturn",this);this.dataErrorEvent=new YAHOO.util.CustomEvent("dataError",this);this.containerExpandEvent=new YAHOO.util.CustomEvent("containerExpand",this);this.typeAheadEvent=new YAHOO.util.CustomEvent("typeAhead",this);this.itemMouseOverEvent=new YAHOO.util.CustomEvent("itemMouseOver",this);this.itemMouseOutEvent=new YAHOO.util.CustomEvent("itemMouseOut",this);this.itemArrowToEvent=new YAHOO.util.CustomEvent("itemArrowTo",this);this.itemArrowFromEvent=new YAHOO.util.CustomEvent("itemArrowFrom",this);this.itemSelectEvent=new YAHOO.util.CustomEvent("itemSelect",this);this.unmatchedItemSelectEvent=new YAHOO.util.CustomEvent("unmatchedItemSelect",this);this.selectionEnforceEvent=new YAHOO.util.CustomEvent("selectionEnforce",this);this.containerCollapseEvent=new YAHOO.util.CustomEvent("containerCollapse",this);this.textboxBlurEvent=new YAHOO.util.CustomEvent("textboxBlur",this);F.setAttribute("autocomplete","off");YAHOO.widget.AutoComplete._nIndex++;}else{}};YAHOO.widget.AutoComplete.prototype.dataSource=null;YAHOO.widget.AutoComplete.prototype.minQueryLength=1;YAHOO.widget.AutoComplete.prototype.maxResultsDisplayed=10;YAHOO.widget.AutoComplete.prototype.queryDelay=0.2;YAHOO.widget.AutoComplete.prototype.highlightClassName="yui-ac-highlight";YAHOO.widget.AutoComplete.prototype.prehighlightClassName=null;YAHOO.widget.AutoComplete.prototype.delimChar=null;YAHOO.widget.AutoComplete.prototype.autoHighlight=true;YAHOO.widget.AutoComplete.prototype.typeAhead=false;YAHOO.widget.AutoComplete.prototype.animHoriz=false;YAHOO.widget.AutoComplete.prototype.animVert=true;YAHOO.widget.AutoComplete.prototype.animSpeed=0.3;YAHOO.widget.AutoComplete.prototype.forceSelection=false;YAHOO.widget.AutoComplete.prototype.allowBrowserAutocomplete=true;YAHOO.widget.AutoComplete.prototype.alwaysShowContainer=false;YAHOO.widget.AutoComplete.prototype.useIFrame=false;YAHOO.widget.AutoComplete.prototype.useShadow=false;YAHOO.widget.AutoComplete.prototype.toString=function(){return"AutoComplete "+this._sName;};YAHOO.widget.AutoComplete.prototype.isContainerOpen=function(){return this._bContainerOpen;};YAHOO.widget.AutoComplete.prototype.getListItems=function(){return this._aListItems;};YAHOO.widget.AutoComplete.prototype.getListItemData=function(A){if(A._oResultData){return A._oResultData;}else{return false;}};YAHOO.widget.AutoComplete.prototype.setHeader=function(A){if(A){if(this._oContainer._oContent._oHeader){this._oContainer._oContent._oHeader.innerHTML=A;this._oContainer._oContent._oHeader.style.display="block";}}else{this._oContainer._oContent._oHeader.innerHTML="";this._oContainer._oContent._oHeader.style.display="none";}};YAHOO.widget.AutoComplete.prototype.setFooter=function(A){if(A){if(this._oContainer._oContent._oFooter){this._oContainer._oContent._oFooter.innerHTML=A;this._oContainer._oContent._oFooter.style.display="block";}}else{this._oContainer._oContent._oFooter.innerHTML="";this._oContainer._oContent._oFooter.style.display="none";}};YAHOO.widget.AutoComplete.prototype.setBody=function(A){if(A){if(this._oContainer._oContent._oBody){this._oContainer._oContent._oBody.innerHTML=A;this._oContainer._oContent._oBody.style.display="block";this._oContainer._oContent.style.display="block";}}else{this._oContainer._oContent._oBody.innerHTML="";this._oContainer._oContent.style.display="none";}this._maxResultsDisplayed=0;};YAHOO.widget.AutoComplete.prototype.formatResult=function(B,C){var A=B[0];if(A){return A;}else{return"";}};YAHOO.widget.AutoComplete.prototype.doBeforeExpandContainer=function(A,B,D,C){return true;};YAHOO.widget.AutoComplete.prototype.sendQuery=function(A){this._sendQuery(A);};YAHOO.widget.AutoComplete.prototype.doBeforeSendQuery=function(A){return A;};YAHOO.widget.AutoComplete.prototype.destroy=function(){var B=this.toString();var A=this._oTextbox;var D=this._oContainer;this.textboxFocusEvent.unsubscribe();this.textboxKeyEvent.unsubscribe();this.dataRequestEvent.unsubscribe();this.dataReturnEvent.unsubscribe();this.dataErrorEvent.unsubscribe();this.containerExpandEvent.unsubscribe();this.typeAheadEvent.unsubscribe(); +this.itemMouseOverEvent.unsubscribe();this.itemMouseOutEvent.unsubscribe();this.itemArrowToEvent.unsubscribe();this.itemArrowFromEvent.unsubscribe();this.itemSelectEvent.unsubscribe();this.unmatchedItemSelectEvent.unsubscribe();this.selectionEnforceEvent.unsubscribe();this.containerCollapseEvent.unsubscribe();this.textboxBlurEvent.unsubscribe();YAHOO.util.Event.purgeElement(A,true);YAHOO.util.Event.purgeElement(D,true);D.innerHTML="";for(var C in this){if(YAHOO.lang.hasOwnProperty(this,C)){this[C]=null;}}};YAHOO.widget.AutoComplete.prototype.textboxFocusEvent=null;YAHOO.widget.AutoComplete.prototype.textboxKeyEvent=null;YAHOO.widget.AutoComplete.prototype.dataRequestEvent=null;YAHOO.widget.AutoComplete.prototype.dataReturnEvent=null;YAHOO.widget.AutoComplete.prototype.dataErrorEvent=null;YAHOO.widget.AutoComplete.prototype.containerExpandEvent=null;YAHOO.widget.AutoComplete.prototype.typeAheadEvent=null;YAHOO.widget.AutoComplete.prototype.itemMouseOverEvent=null;YAHOO.widget.AutoComplete.prototype.itemMouseOutEvent=null;YAHOO.widget.AutoComplete.prototype.itemArrowToEvent=null;YAHOO.widget.AutoComplete.prototype.itemArrowFromEvent=null;YAHOO.widget.AutoComplete.prototype.itemSelectEvent=null;YAHOO.widget.AutoComplete.prototype.unmatchedItemSelectEvent=null;YAHOO.widget.AutoComplete.prototype.selectionEnforceEvent=null;YAHOO.widget.AutoComplete.prototype.containerCollapseEvent=null;YAHOO.widget.AutoComplete.prototype.textboxBlurEvent=null;YAHOO.widget.AutoComplete._nIndex=0;YAHOO.widget.AutoComplete.prototype._sName=null;YAHOO.widget.AutoComplete.prototype._oTextbox=null;YAHOO.widget.AutoComplete.prototype._bFocused=true;YAHOO.widget.AutoComplete.prototype._oAnim=null;YAHOO.widget.AutoComplete.prototype._oContainer=null;YAHOO.widget.AutoComplete.prototype._bContainerOpen=false;YAHOO.widget.AutoComplete.prototype._bOverContainer=false;YAHOO.widget.AutoComplete.prototype._aListItems=null;YAHOO.widget.AutoComplete.prototype._nDisplayedItems=0;YAHOO.widget.AutoComplete.prototype._maxResultsDisplayed=0;YAHOO.widget.AutoComplete.prototype._sCurQuery=null;YAHOO.widget.AutoComplete.prototype._sSavedQuery=null;YAHOO.widget.AutoComplete.prototype._oCurItem=null;YAHOO.widget.AutoComplete.prototype._bItemSelected=false;YAHOO.widget.AutoComplete.prototype._nKeyCode=null;YAHOO.widget.AutoComplete.prototype._nDelayID=-1;YAHOO.widget.AutoComplete.prototype._iFrameSrc="javascript:false;";YAHOO.widget.AutoComplete.prototype._queryInterval=null;YAHOO.widget.AutoComplete.prototype._sLastTextboxValue=null;YAHOO.widget.AutoComplete.prototype._initProps=function(){var B=this.minQueryLength;if(!YAHOO.lang.isNumber(B)){this.minQueryLength=1;}var D=this.maxResultsDisplayed;if(!YAHOO.lang.isNumber(D)||(D<1)){this.maxResultsDisplayed=10;}var E=this.queryDelay;if(!YAHOO.lang.isNumber(E)||(E<0)){this.queryDelay=0.2;}var A=this.delimChar;if(YAHOO.lang.isString(A)&&(A.length>0)){this.delimChar=[A];}else{if(!YAHOO.lang.isArray(A)){this.delimChar=null;}}var C=this.animSpeed;if((this.animHoriz||this.animVert)&&YAHOO.util.Anim){if(!YAHOO.lang.isNumber(C)||(C<0)){this.animSpeed=0.3;}if(!this._oAnim){this._oAnim=new YAHOO.util.Anim(this._oContainer._oContent,{},this.animSpeed);}else{this._oAnim.duration=this.animSpeed;}}if(this.forceSelection&&A){}};YAHOO.widget.AutoComplete.prototype._initContainerHelpers=function(){if(this.useShadow&&!this._oContainer._oShadow){var B=document.createElement("div");B.className="yui-ac-shadow";this._oContainer._oShadow=this._oContainer.appendChild(B);}if(this.useIFrame&&!this._oContainer._oIFrame){var A=document.createElement("iframe");A.src=this._iFrameSrc;A.frameBorder=0;A.scrolling="no";A.style.position="absolute";A.style.width="100%";A.style.height="100%";A.tabIndex=-1;this._oContainer._oIFrame=this._oContainer.appendChild(A);}};YAHOO.widget.AutoComplete.prototype._initContainer=function(){YAHOO.util.Dom.addClass(this._oContainer,"yui-ac-container");if(!this._oContainer._oContent){var D=document.createElement("div");D.className="yui-ac-content";D.style.display="none";this._oContainer._oContent=this._oContainer.appendChild(D);var B=document.createElement("div");B.className="yui-ac-hd";B.style.display="none";this._oContainer._oContent._oHeader=this._oContainer._oContent.appendChild(B);var C=document.createElement("div");C.className="yui-ac-bd";this._oContainer._oContent._oBody=this._oContainer._oContent.appendChild(C);var A=document.createElement("div");A.className="yui-ac-ft";A.style.display="none";this._oContainer._oContent._oFooter=this._oContainer._oContent.appendChild(A);}else{}};YAHOO.widget.AutoComplete.prototype._initList=function(){this._aListItems=[];while(this._oContainer._oContent._oBody.hasChildNodes()){var B=this.getListItems();if(B){for(var A=B.length-1;A>=0;A--){B[A]=null;}}this._oContainer._oContent._oBody.innerHTML="";}var E=document.createElement("ul");E=this._oContainer._oContent._oBody.appendChild(E);for(var C=0;C=18&&A<=20)||(A==27)||(A>=33&&A<=35)||(A>=36&&A<=40)||(A>=44&&A<=45)){return true; +}return false;};YAHOO.widget.AutoComplete.prototype._sendQuery=function(G){if(this.minQueryLength==-1){this._toggleContainer(false);return ;}var C=(this.delimChar)?this.delimChar:null;if(C){var E=-1;for(var B=C.length-1;B>=0;B--){var F=G.lastIndexOf(C[B]);if(F>E){E=F;}}if(C[B]==" "){for(var A=C.length-1;A>=0;A--){if(G[E-1]==C[A]){E--;break;}}}if(E>-1){var D=E+1;while(G.charAt(D)==" "){D+=1;}this._sSavedQuery=G.substring(0,D);G=G.substr(D);}else{if(G.indexOf(this._sSavedQuery)<0){this._sSavedQuery=null;}}}if((G&&(G.length0)){if(this._nDelayID!=-1){clearTimeout(this._nDelayID);}this._toggleContainer(false);return ;}G=encodeURIComponent(G);this._nDelayID=-1;G=this.doBeforeSendQuery(G);this.dataRequestEvent.fire(this,G);this.dataSource.getResults(this._populateList,G,this);};YAHOO.widget.AutoComplete.prototype._populateList=function(K,L,I){if(L===null){I.dataErrorEvent.fire(I,K);}if(!I._bFocused||!L){return ;}var A=(navigator.userAgent.toLowerCase().indexOf("opera")!=-1);var O=I._oContainer._oContent.style;O.width=(!A)?null:"";O.height=(!A)?null:"";var H=decodeURIComponent(K);I._sCurQuery=H;I._bItemSelected=false;if(I._maxResultsDisplayed!=I.maxResultsDisplayed){I._initList();}var C=Math.min(L.length,I.maxResultsDisplayed);I._nDisplayedItems=C;if(C>0){I._initContainerHelpers();var D=I._aListItems;for(var G=C-1;G>=0;G--){var N=D[G];var B=L[G];N.innerHTML=I.formatResult(B,H);N.style.display="list-item";N._sResultKey=B[0];N._oResultData=B;}for(var F=D.length-1;F>=C;F--){var M=D[F];M.innerHTML=null;M.style.display="none";M._sResultKey=null;M._oResultData=null;}var J=I.doBeforeExpandContainer(I._oTextbox,I._oContainer,K,L);I._toggleContainer(J);if(I.autoHighlight){var E=D[0];I._toggleHighlight(E,"to");I.itemArrowToEvent.fire(I,E);I._typeAhead(E,K);}else{I._oCurItem=null;}}else{I._toggleContainer(false);}I.dataReturnEvent.fire(I,K,L);};YAHOO.widget.AutoComplete.prototype._clearSelection=function(){var C=this._oTextbox.value;var B=(this.delimChar)?this.delimChar[0]:null;var A=(B)?C.lastIndexOf(B,C.length-2):-1;if(A>-1){this._oTextbox.value=C.substring(0,A);}else{this._oTextbox.value="";}this._sSavedQuery=this._oTextbox.value;this.selectionEnforceEvent.fire(this);};YAHOO.widget.AutoComplete.prototype._textMatchesOption=function(){var D=null;for(var A=this._nDisplayedItems-1;A>=0;A--){var C=this._aListItems[A];var B=C._sResultKey.toLowerCase();if(B==this._sCurQuery.toLowerCase()){D=C;break;}}return(D);};YAHOO.widget.AutoComplete.prototype._typeAhead=function(E,G){if(!this.typeAhead||(this._nKeyCode==8)){return ;}var B=this._oTextbox;var F=this._oTextbox.value;if(!B.setSelectionRange&&!B.createTextRange){return ;}var C=F.length;this._updateValue(E);var D=B.value.length;this._selectText(B,C,D);var A=B.value.substr(C,D);this.typeAheadEvent.fire(this,G,A);};YAHOO.widget.AutoComplete.prototype._selectText=function(A,B,C){if(A.setSelectionRange){A.setSelectionRange(B,C);}else{if(A.createTextRange){var D=A.createTextRange();D.moveStart("character",B);D.moveEnd("character",C-A.value.length);D.select();}else{A.select();}}};YAHOO.widget.AutoComplete.prototype._toggleContainerHelpers=function(B){var D=false;var C=this._oContainer._oContent.offsetWidth+"px";var A=this._oContainer._oContent.offsetHeight+"px";if(this.useIFrame&&this._oContainer._oIFrame){D=true;if(B){this._oContainer._oIFrame.style.width=C;this._oContainer._oIFrame.style.height=A;}else{this._oContainer._oIFrame.style.width=0;this._oContainer._oIFrame.style.height=0;}}if(this.useShadow&&this._oContainer._oShadow){D=true;if(B){this._oContainer._oShadow.style.width=C;this._oContainer._oShadow.style.height=A;}else{this._oContainer._oShadow.style.width=0;this._oContainer._oShadow.style.height=0;}}};YAHOO.widget.AutoComplete.prototype._toggleContainer=function(J){var L=this._oContainer;if(this.alwaysShowContainer&&this._bContainerOpen){return ;}if(!J){this._oContainer._oContent.scrollTop=0;var C=this._aListItems;if(C&&(C.length>0)){for(var G=C.length-1;G>=0;G--){C[G].style.display="none";}}if(this._oCurItem){this._toggleHighlight(this._oCurItem,"from");}this._oCurItem=null;this._nDisplayedItems=0;this._sCurQuery=null;}if(!J&&!this._bContainerOpen){L._oContent.style.display="none";return ;}var B=this._oAnim;if(B&&B.getEl()&&(this.animHoriz||this.animVert)){if(!J){this._toggleContainerHelpers(J);}if(B.isAnimated()){B.stop();}var H=L._oContent.cloneNode(true);L.appendChild(H);H.style.top="-9000px";H.style.display="block";var F=H.offsetWidth;var D=H.offsetHeight;var A=(this.animHoriz)?0:F;var E=(this.animVert)?0:D;B.attributes=(J)?{width:{to:F},height:{to:D}}:{width:{to:A},height:{to:E}};if(J&&!this._bContainerOpen){L._oContent.style.width=A+"px";L._oContent.style.height=E+"px";}else{L._oContent.style.width=F+"px";L._oContent.style.height=D+"px";}L.removeChild(H);H=null;var I=this;var K=function(){B.onComplete.unsubscribeAll();if(J){I.containerExpandEvent.fire(I);}else{L._oContent.style.display="none";I.containerCollapseEvent.fire(I);}I._toggleContainerHelpers(J);};L._oContent.style.display="block";B.onComplete.subscribe(K);B.animate();this._bContainerOpen=J;}else{if(J){L._oContent.style.display="block";this.containerExpandEvent.fire(this);}else{L._oContent.style.display="none";this.containerCollapseEvent.fire(this);}this._toggleContainerHelpers(J);this._bContainerOpen=J;}};YAHOO.widget.AutoComplete.prototype._toggleHighlight=function(A,C){var B=this.highlightClassName;if(this._oCurItem){YAHOO.util.Dom.removeClass(this._oCurItem,B);}if((C=="to")&&B){YAHOO.util.Dom.addClass(A,B);this._oCurItem=A;}};YAHOO.widget.AutoComplete.prototype._togglePrehighlight=function(A,C){if(A==this._oCurItem){return ;}var B=this.prehighlightClassName;if((C=="mouseover")&&B){YAHOO.util.Dom.addClass(A,B);}else{YAHOO.util.Dom.removeClass(A,B);}};YAHOO.widget.AutoComplete.prototype._updateValue=function(F){var C=this._oTextbox;var E=(this.delimChar)?(this.delimChar[0]||this.delimChar):null;var B=this._sSavedQuery;var D=F._sResultKey;C.focus(); +C.value="";if(E){if(B){C.value=B;}C.value+=D+E;if(E!=" "){C.value+=" ";}}else{C.value=D;}if(C.type=="textarea"){C.scrollTop=C.scrollHeight;}var A=C.value.length;this._selectText(C,A,A);this._oCurItem=F;};YAHOO.widget.AutoComplete.prototype._selectItem=function(A){this._bItemSelected=true;this._updateValue(A);this._cancelIntervalDetection(this);this.itemSelectEvent.fire(this,A,A._oResultData);this._toggleContainer(false);};YAHOO.widget.AutoComplete.prototype._jumpSelection=function(){if(this._oCurItem){this._selectItem(this._oCurItem);}else{this._toggleContainer(false);}};YAHOO.widget.AutoComplete.prototype._moveSelection=function(G){if(this._bContainerOpen){var D=this._oCurItem;var F=-1;if(D){F=D._nItemIndex;}var C=(G==40)?(F+1):(F-1);if(C<-2||C>=this._nDisplayedItems){return ;}if(D){this._toggleHighlight(D,"from");this.itemArrowFromEvent.fire(this,D);}if(C==-1){if(this.delimChar&&this._sSavedQuery){if(!this._textMatchesOption()){this._oTextbox.value=this._sSavedQuery;}else{this._oTextbox.value=this._sSavedQuery+this._sCurQuery;}}else{this._oTextbox.value=this._sCurQuery;}this._oCurItem=null;return ;}if(C==-2){this._toggleContainer(false);return ;}var B=this._aListItems[C];var E=this._oContainer._oContent;var A=((YAHOO.util.Dom.getStyle(E,"overflow")=="auto")||(YAHOO.util.Dom.getStyle(E,"overflowY")=="auto"));if(A&&(C>-1)&&(C(E.scrollTop+E.offsetHeight)){E.scrollTop=(B.offsetTop+B.offsetHeight)-E.offsetHeight;}else{if((B.offsetTop+B.offsetHeight)(E.scrollTop+E.offsetHeight)){this._oContainer._oContent.scrollTop=(B.offsetTop+B.offsetHeight)-E.offsetHeight;}}}}this._toggleHighlight(B,"to");this.itemArrowToEvent.fire(this,B);if(this.typeAhead){this._updateValue(B);}}};YAHOO.widget.AutoComplete.prototype._onItemMouseover=function(A,B){if(B.prehighlightClassName){B._togglePrehighlight(this,"mouseover");}else{B._toggleHighlight(this,"to");}B.itemMouseOverEvent.fire(B,this);};YAHOO.widget.AutoComplete.prototype._onItemMouseout=function(A,B){if(B.prehighlightClassName){B._togglePrehighlight(this,"mouseout");}else{B._toggleHighlight(this,"from");}B.itemMouseOutEvent.fire(B,this);};YAHOO.widget.AutoComplete.prototype._onItemMouseclick=function(A,B){B._toggleHighlight(this,"to");B._selectItem(this);};YAHOO.widget.AutoComplete.prototype._onContainerMouseover=function(A,B){B._bOverContainer=true;};YAHOO.widget.AutoComplete.prototype._onContainerMouseout=function(A,B){B._bOverContainer=false;if(B._oCurItem){B._toggleHighlight(B._oCurItem,"to");}};YAHOO.widget.AutoComplete.prototype._onContainerScroll=function(A,B){B._oTextbox.focus();};YAHOO.widget.AutoComplete.prototype._onContainerResize=function(A,B){B._toggleContainerHelpers(B._bContainerOpen);};YAHOO.widget.AutoComplete.prototype._onTextboxKeyDown=function(A,B){var C=A.keyCode;switch(C){case 9:if(B._oCurItem){if(B.delimChar&&(B._nKeyCode!=C)){if(B._bContainerOpen){YAHOO.util.Event.stopEvent(A);}}B._selectItem(B._oCurItem);}else{B._toggleContainer(false);}break;case 13:if(B._oCurItem){if(B._nKeyCode!=C){if(B._bContainerOpen){YAHOO.util.Event.stopEvent(A);}}B._selectItem(B._oCurItem);}else{B._toggleContainer(false);}break;case 27:B._toggleContainer(false);return ;case 39:B._jumpSelection();break;case 38:YAHOO.util.Event.stopEvent(A);B._moveSelection(C);break;case 40:YAHOO.util.Event.stopEvent(A);B._moveSelection(C);break;default:break;}};YAHOO.widget.AutoComplete.prototype._onTextboxKeyPress=function(A,C){var D=A.keyCode;var B=(navigator.userAgent.toLowerCase().indexOf("mac")!=-1);if(B){switch(D){case 9:if(C._oCurItem){if(C.delimChar&&(C._nKeyCode!=D)){YAHOO.util.Event.stopEvent(A);}}break;case 13:if(C._oCurItem){if(C._nKeyCode!=D){if(C._bContainerOpen){YAHOO.util.Event.stopEvent(A);}}}break;case 38:case 40:YAHOO.util.Event.stopEvent(A);break;default:break;}}else{if(D==229){C._queryInterval=setInterval(function(){C._onIMEDetected(C);},500);}}};YAHOO.widget.AutoComplete.prototype._onTextboxKeyUp=function(B,D){D._initProps();var E=B.keyCode;D._nKeyCode=E;var C=this.value;if(D._isIgnoreKey(E)||(C.toLowerCase()==D._sCurQuery)){return ;}else{D._bItemSelected=false;YAHOO.util.Dom.removeClass(D._oCurItem,D.highlightClassName);D._oCurItem=null;D.textboxKeyEvent.fire(D,E);}if(D.queryDelay>0){var A=setTimeout(function(){D._sendQuery(C);},(D.queryDelay*1000));if(D._nDelayID!=-1){clearTimeout(D._nDelayID);}D._nDelayID=A;}else{D._sendQuery(C);}};YAHOO.widget.AutoComplete.prototype._onTextboxFocus=function(A,B){B._oTextbox.setAttribute("autocomplete","off");B._bFocused=true;if(!B._bItemSelected){B.textboxFocusEvent.fire(B);}};YAHOO.widget.AutoComplete.prototype._onTextboxBlur=function(A,B){if(!B._bOverContainer||(B._nKeyCode==9)){if(!B._bItemSelected){var C=B._textMatchesOption();if(!B._bContainerOpen||(B._bContainerOpen&&(C===null))){if(B.forceSelection){B._clearSelection();}else{B.unmatchedItemSelectEvent.fire(B);}}else{if(B.forceSelection){B._selectItem(C);}}}if(B._bContainerOpen){B._toggleContainer(false);}B._cancelIntervalDetection(B);B._bFocused=false;B.textboxBlurEvent.fire(B);}};YAHOO.widget.AutoComplete.prototype._onFormSubmit=function(A,B){if(B.allowBrowserAutocomplete){B._oTextbox.setAttribute("autocomplete","on");}else{B._oTextbox.setAttribute("autocomplete","off");}};YAHOO.widget.DataSource=function(){};YAHOO.widget.DataSource.ERROR_DATANULL="Response data was null";YAHOO.widget.DataSource.ERROR_DATAPARSE="Response data could not be parsed";YAHOO.widget.DataSource.prototype.maxCacheEntries=15;YAHOO.widget.DataSource.prototype.queryMatchContains=false;YAHOO.widget.DataSource.prototype.queryMatchSubset=false;YAHOO.widget.DataSource.prototype.queryMatchCase=false;YAHOO.widget.DataSource.prototype.toString=function(){return"DataSource "+this._sName;};YAHOO.widget.DataSource.prototype.getResults=function(A,D,B){var C=this._doQueryCache(A,D,B);if(C.length===0){this.queryEvent.fire(this,B,D); +this.doQuery(A,D,B);}};YAHOO.widget.DataSource.prototype.doQuery=function(A,C,B){};YAHOO.widget.DataSource.prototype.flushCache=function(){if(this._aCache){this._aCache=[];}if(this._aCacheHelper){this._aCacheHelper=[];}this.cacheFlushEvent.fire(this);};YAHOO.widget.DataSource.prototype.queryEvent=null;YAHOO.widget.DataSource.prototype.cacheQueryEvent=null;YAHOO.widget.DataSource.prototype.getResultsEvent=null;YAHOO.widget.DataSource.prototype.getCachedResultsEvent=null;YAHOO.widget.DataSource.prototype.dataErrorEvent=null;YAHOO.widget.DataSource.prototype.cacheFlushEvent=null;YAHOO.widget.DataSource._nIndex=0;YAHOO.widget.DataSource.prototype._sName=null;YAHOO.widget.DataSource.prototype._aCache=null;YAHOO.widget.DataSource.prototype._init=function(){var A=this.maxCacheEntries;if(!YAHOO.lang.isNumber(A)||(A<0)){A=0;}if(A>0&&!this._aCache){this._aCache=[];}this._sName="instance"+YAHOO.widget.DataSource._nIndex;YAHOO.widget.DataSource._nIndex++;this.queryEvent=new YAHOO.util.CustomEvent("query",this);this.cacheQueryEvent=new YAHOO.util.CustomEvent("cacheQuery",this);this.getResultsEvent=new YAHOO.util.CustomEvent("getResults",this);this.getCachedResultsEvent=new YAHOO.util.CustomEvent("getCachedResults",this);this.dataErrorEvent=new YAHOO.util.CustomEvent("dataError",this);this.cacheFlushEvent=new YAHOO.util.CustomEvent("cacheFlush",this);};YAHOO.widget.DataSource.prototype._addCacheElem=function(B){var A=this._aCache;if(!A||!B||!B.query||!B.results){return ;}if(A.length>=this.maxCacheEntries){A.shift();}A.push(B);};YAHOO.widget.DataSource.prototype._doQueryCache=function(A,I,N){var H=[];var G=false;var J=this._aCache;var F=(J)?J.length:0;var K=this.queryMatchContains;var D;if((this.maxCacheEntries>0)&&J&&(F>0)){this.cacheQueryEvent.fire(this,N,I);if(!this.queryMatchCase){D=I;I=I.toLowerCase();}for(var P=F-1;P>=0;P--){var E=J[P];var B=E.results;var C=(!this.queryMatchCase)?encodeURIComponent(E.query).toLowerCase():encodeURIComponent(E.query);if(C==I){G=true;H=B;if(P!=F-1){J.splice(P,1);this._addCacheElem(E);}break;}else{if(this.queryMatchSubset){for(var O=I.length-1;O>=0;O--){var R=I.substr(0,O);if(C==R){G=true;for(var M=B.length-1;M>=0;M--){var Q=B[M];var L=(this.queryMatchCase)?encodeURIComponent(Q[0]).indexOf(I):encodeURIComponent(Q[0]).toLowerCase().indexOf(I);if((!K&&(L===0))||(K&&(L>-1))){H.unshift(Q);}}E={};E.query=I;E.results=H;this._addCacheElem(E);break;}}if(G){break;}}}}if(G){this.getCachedResultsEvent.fire(this,N,D,H);A(D,H,N);}}return H;};YAHOO.widget.DS_XHR=function(C,A,D){if(D&&(D.constructor==Object)){for(var B in D){this[B]=D[B];}}if(!YAHOO.lang.isArray(A)||!YAHOO.lang.isString(C)){return ;}this.schema=A;this.scriptURI=C;this._init();};YAHOO.widget.DS_XHR.prototype=new YAHOO.widget.DataSource();YAHOO.widget.DS_XHR.TYPE_JSON=0;YAHOO.widget.DS_XHR.TYPE_XML=1;YAHOO.widget.DS_XHR.TYPE_FLAT=2;YAHOO.widget.DS_XHR.ERROR_DATAXHR="XHR response failed";YAHOO.widget.DS_XHR.prototype.connMgr=YAHOO.util.Connect;YAHOO.widget.DS_XHR.prototype.connTimeout=0;YAHOO.widget.DS_XHR.prototype.scriptURI=null;YAHOO.widget.DS_XHR.prototype.scriptQueryParam="query";YAHOO.widget.DS_XHR.prototype.scriptQueryAppend="";YAHOO.widget.DS_XHR.prototype.responseType=YAHOO.widget.DS_XHR.TYPE_JSON;YAHOO.widget.DS_XHR.prototype.responseStripAfter="\n0){D+="&"+this.scriptQueryAppend;}var C=null;var F=this;var I=function(K){if(!F._oConn||(K.tId!=F._oConn.tId)){F.dataErrorEvent.fire(F,B,G,YAHOO.widget.DataSource.ERROR_DATANULL);return ;}for(var N in K){}if(!J){K=K.responseText;}else{K=K.responseXML;}if(K===null){F.dataErrorEvent.fire(F,B,G,YAHOO.widget.DataSource.ERROR_DATANULL);return ;}var M=F.parseResponse(G,K,B);var L={};L.query=decodeURIComponent(G);L.results=M;if(M===null){F.dataErrorEvent.fire(F,B,G,YAHOO.widget.DataSource.ERROR_DATAPARSE);M=[];}else{F.getResultsEvent.fire(F,B,G,M);F._addCacheElem(L);}E(G,M,B);};var A=function(K){F.dataErrorEvent.fire(F,B,G,YAHOO.widget.DS_XHR.ERROR_DATAXHR);return ;};var H={success:I,failure:A};if(YAHOO.lang.isNumber(this.connTimeout)&&(this.connTimeout>0)){H.timeout=this.connTimeout;}if(this._oConn){this.connMgr.abort(this._oConn);}F._oConn=this.connMgr.asyncRequest("GET",D,H,null);};YAHOO.widget.DS_XHR.prototype.parseResponse=function(sQuery,oResponse,oParent){var aSchema=this.schema;var aResults=[];var bError=false;var nEnd=((this.responseStripAfter!=="")&&(oResponse.indexOf))?oResponse.indexOf(this.responseStripAfter):-1;if(nEnd!=-1){oResponse=oResponse.substring(0,nEnd);}switch(this.responseType){case YAHOO.widget.DS_XHR.TYPE_JSON:var jsonList,jsonObjParsed;var isNotMac=(navigator.userAgent.toLowerCase().indexOf("khtml")==-1);if(oResponse.parseJSON&&isNotMac){jsonObjParsed=oResponse.parseJSON();if(!jsonObjParsed){bError=true;}else{try{jsonList=eval("jsonObjParsed."+aSchema[0]);}catch(e){bError=true;break;}}}else{if(window.JSON&&isNotMac){jsonObjParsed=JSON.parse(oResponse);if(!jsonObjParsed){bError=true;break;}else{try{jsonList=eval("jsonObjParsed."+aSchema[0]);}catch(e){bError=true;break;}}}else{try{while(oResponse.substring(0,1)==" "){oResponse=oResponse.substring(1,oResponse.length);}if(oResponse.indexOf("{")<0){bError=true;break;}if(oResponse.indexOf("{}")===0){break;}var jsonObjRaw=eval("("+oResponse+")");if(!jsonObjRaw){bError=true;break;}jsonList=eval("(jsonObjRaw."+aSchema[0]+")");}catch(e){bError=true;break;}}}if(!jsonList){bError=true;break;}if(!YAHOO.lang.isArray(jsonList)){jsonList=[jsonList];}for(var i=jsonList.length-1;i>=0;i--){var aResultItem=[];var jsonResult=jsonList[i];for(var j=aSchema.length-1;j>=1;j--){var dataFieldValue=jsonResult[aSchema[j]];if(!dataFieldValue){dataFieldValue="";}aResultItem.unshift(dataFieldValue);}if(aResultItem.length==1){aResultItem.push(jsonResult);}aResults.unshift(aResultItem);}break;case YAHOO.widget.DS_XHR.TYPE_XML:var xmlList=oResponse.getElementsByTagName(aSchema[0]); +if(!xmlList){bError=true;break;}for(var k=xmlList.length-1;k>=0;k--){var result=xmlList.item(k);var aFieldSet=[];for(var m=aSchema.length-1;m>=1;m--){var sValue=null;var xmlAttr=result.attributes.getNamedItem(aSchema[m]);if(xmlAttr){sValue=xmlAttr.value;}else{var xmlNode=result.getElementsByTagName(aSchema[m]);if(xmlNode&&xmlNode.item(0)&&xmlNode.item(0).firstChild){sValue=xmlNode.item(0).firstChild.nodeValue;}else{sValue="";}}aFieldSet.unshift(sValue);}aResults.unshift(aFieldSet);}break;case YAHOO.widget.DS_XHR.TYPE_FLAT:if(oResponse.length>0){var newLength=oResponse.length-aSchema[0].length;if(oResponse.substr(newLength)==aSchema[0]){oResponse=oResponse.substr(0,newLength);}var aRecords=oResponse.split(aSchema[0]);for(var n=aRecords.length-1;n>=0;n--){aResults[n]=aRecords[n].split(aSchema[1]);}}break;default:break;}sQuery=null;oResponse=null;oParent=null;if(bError){return null;}else{return aResults;}};YAHOO.widget.DS_XHR.prototype._oConn=null;YAHOO.widget.DS_JSFunction=function(A,C){if(C&&(C.constructor==Object)){for(var B in C){this[B]=C[B];}}if(!YAHOO.lang.isFunction(A)){return ;}else{this.dataFunction=A;this._init();}};YAHOO.widget.DS_JSFunction.prototype=new YAHOO.widget.DataSource();YAHOO.widget.DS_JSFunction.prototype.dataFunction=null;YAHOO.widget.DS_JSFunction.prototype.doQuery=function(C,F,D){var B=this.dataFunction;var E=[];E=B(F);if(E===null){this.dataErrorEvent.fire(this,D,F,YAHOO.widget.DataSource.ERROR_DATANULL);return ;}var A={};A.query=decodeURIComponent(F);A.results=E;this._addCacheElem(A);this.getResultsEvent.fire(this,D,F,E);C(F,E,D);return ;};YAHOO.widget.DS_JSArray=function(A,C){if(C&&(C.constructor==Object)){for(var B in C){this[B]=C[B];}}if(!YAHOO.lang.isArray(A)){return ;}else{this.data=A;this._init();}};YAHOO.widget.DS_JSArray.prototype=new YAHOO.widget.DataSource();YAHOO.widget.DS_JSArray.prototype.data=null;YAHOO.widget.DS_JSArray.prototype.doQuery=function(E,I,A){var F;var C=this.data;var J=[];var D=false;var B=this.queryMatchContains;if(I){if(!this.queryMatchCase){I=I.toLowerCase();}for(F=C.length-1;F>=0;F--){var H=[];if(YAHOO.lang.isString(C[F])){H[0]=C[F];}else{if(YAHOO.lang.isArray(C[F])){H=C[F];}}if(YAHOO.lang.isString(H[0])){var G=(this.queryMatchCase)?encodeURIComponent(H[0]).indexOf(I):encodeURIComponent(H[0]).toLowerCase().indexOf(I);if((!B&&(G===0))||(B&&(G>-1))){J.unshift(H);}}}}else{for(F=C.length-1;F>=0;F--){if(YAHOO.lang.isString(C[F])){J.unshift([C[F]]);}else{if(YAHOO.lang.isArray(C[F])){J.unshift(C[F]);}}}}this.getResultsEvent.fire(this,A,I,J);E(I,J,A);};YAHOO.register("autocomplete",YAHOO.widget.AutoComplete,{version:"2.3.1",build:"541"}); \ No newline at end of file Added: branches/trunk-reorg/projects/scrabble/website/yui/base/base-min.css =================================================================== --- branches/trunk-reorg/projects/scrabble/website/yui/base/base-min.css 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/website/yui/base/base-min.css 2007-11-05 10:14:48 UTC (rev 2255) @@ -0,0 +1,7 @@ +/* +Copyright (c) 2007, Yahoo! Inc. All rights reserved. +Code licensed under the BSD License: +http://developer.yahoo.net/yui/license.txt +version: 2.3.1 +*/ +h1{font-size:138.5%;}h2{font-size:123.1%;}h3{font-size:108%;}h1,h2,h3{margin:1em 0;}h1,h2,h3,h4,h5,h6,strong{font-weight:bold;}abbr,acronym{border-bottom:1px dotted #000;cursor:help;}em{font-style:italic;}blockquote,ul,ol,dl{margin:1em;}ol,ul,dl{margin-left:2em;}ol li{list-style: decimal outside;}ul li{list-style: disc outside;}dl dd{margin-left:1em;}th,td {border:1px solid #000;padding:.5em;}th {font-weight:bold;text-align:center;}caption {margin-bottom:.5em;text-align:center;}p,fieldset,table {margin-bottom:1em;} \ No newline at end of file Added: branches/trunk-reorg/projects/scrabble/website/yui/button/assets/button-core.css =================================================================== --- branches/trunk-reorg/projects/scrabble/website/yui/button/assets/button-core.css 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/website/yui/button/assets/button-core.css 2007-11-05 10:14:48 UTC (rev 2255) @@ -0,0 +1,42 @@ +/* +Copyright (c) 2007, Yahoo! Inc. All rights reserved. +Code licensed under the BSD License: +http://developer.yahoo.net/yui/license.txt +version: 2.3.1 +*/ +.yui-skin-sam .yui-button { + + display: -moz-inline-box; /* Gecko */ + display: inline-block; /* IE, Opera and Safari */ + +} + +.yui-skin-sam .yui-button .first-child { + + display: block; + *display: inline-block; /* IE */ + +} + +.yui-skin-sam .yui-button button, +.yui-skin-sam .yui-button a { + + display: block; + *display: inline-block; /* IE */ + border: none; + +} + +.yui-skin-sam .yui-button button { + + background-color: transparent; + *overflow: visible; /* Remove superfluous padding for IE */ + cursor: pointer; + +} + +.yui-skin-sam .yui-button a { + + text-decoration: none; + +} \ No newline at end of file Added: branches/trunk-reorg/projects/scrabble/website/yui/button/assets/skins/sam/button-skin.css =================================================================== --- branches/trunk-reorg/projects/scrabble/website/yui/button/assets/skins/sam/button-skin.css 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/website/yui/button/assets/skins/sam/button-skin.css 2007-11-05 10:14:48 UTC (rev 2255) @@ -0,0 +1,222 @@ +/* +Copyright (c) 2007, Yahoo! Inc. All rights reserved. +Code licensed under the BSD License: +http://developer.yahoo.net/yui/license.txt +version: 2.3.1 +*/ +.yui-skin-sam .yui-button { + + border-width: 1px 0; + border-style: solid; + border-color: #808080; + background: url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0; + margin: auto .25em; + +} + +.yui-skin-sam .yui-button .first-child { + + border-width: 0 1px; + border-style: solid; + border-color: #808080; + margin: 0 -1px; + *position: relative; + *left: -1px; + +} + +.yui-skin-sam .yui-button button, +.yui-skin-sam .yui-button a { + + padding: 0 10px; + font-size: 93%; /* 12px */ + line-height: 2; /* ~24px */ + *line-height: 1.7; /* For IE */ + min-height: 2em; /* For Gecko */ + *min-height: auto; /* For IE */ + color: #000; + +} + +.yui-skin-sam .yui-split-button button, +.yui-skin-sam .yui-menu-button button { + + padding-right: 20px; + background-position: right center; + background-repeat: no-repeat; + +} + +.yui-skin-sam .yui-menu-button button { + + background-image: url(menu-button-arrow.png); + +} + +.yui-skin-sam .yui-split-button button { + + background-image: url(split-button-arrow.png); + +} + + +/* Focus state */ + + +.yui-skin-sam .yui-button-focus { + + border-color: #7D98B8; + background-position: 0 -1300px; + +} + +.yui-skin-sam .yui-button-focus .first-child { + + border-color: #7D98B8; + +} + +.yui-skin-sam .yui-button-focus button, +.yui-skin-sam .yui-button-focus a { + + color: #000; + +} + +.yui-skin-sam .yui-split-button-focus button { + + background-image: url(split-button-arrow-focus.png); + +} + + +/* Hover state */ + +.yui-skin-sam .yui-button-hover { + + border-color: #7D98B8; + background-position: 0 -1300px; + +} + +.yui-skin-sam .yui-button-hover .first-child { + + border-color: #7D98B8; + +} + +.yui-skin-sam .yui-button-hover button, +.yui-skin-sam .yui-button-hover a { + + color: #000; + +} + +.yui-skin-sam .yui-split-button-hover button { + + background-image: url(split-button-arrow-hover.png); + +} + + +/* Active state */ + +.yui-skin-sam .yui-button-active { + + border-color: #7D98B8; + background-position: 0 -1700px; + +} + +.yui-skin-sam .yui-button-active .first-child { + + border-color: #7D98B8; + +} + +.yui-skin-sam .yui-button-active button, +.yui-skin-sam .yui-button-active a { + + color: #000; + +} + +.yui-skin-sam .yui-split-button-activeoption { + + border-color: #808080; + background-position: 0 0; + +} + +.yui-skin-sam .yui-split-button-activeoption .first-child { + + border-color: #808080; + +} + +.yui-skin-sam .yui-split-button-activeoption button { + + background-image: url(split-button-arrow-active.png); + +} + + +/* Checked state */ + +.yui-skin-sam .yui-radio-button-checked, +.yui-skin-sam .yui-checkbox-button-checked { + + border-color: #304369; + background-position: 0 -1400px; + +} + +.yui-skin-sam .yui-radio-button-checked .first-child, +.yui-skin-sam .yui-checkbox-button-checked .first-child { + + border-color: #304369; + +} + +.yui-skin-sam .yui-radio-button-checked button, +.yui-skin-sam .yui-checkbox-button-checked button { + + color: #fff; + +} + + +/* Disabled state */ + +.yui-skin-sam .yui-button-disabled { + + border-color: #ccc; + background-position: 0 -1500px; + +} + +.yui-skin-sam .yui-button-disabled .first-child { + + border-color: #ccc; + +} + +.yui-skin-sam .yui-button-disabled button, +.yui-skin-sam .yui-button-disabled a { + + color: #A6A6A6; + cursor: default; + +} + +.yui-skin-sam .yui-menu-button-disabled button { + + background-image: url(menu-button-arrow-disabled.png); + +} + +.yui-skin-sam .yui-split-button-disabled button { + + background-image: url(split-button-arrow-disabled.png); + +} \ No newline at end of file Added: branches/trunk-reorg/projects/scrabble/website/yui/button/assets/skins/sam/button.css =================================================================== --- branches/trunk-reorg/projects/scrabble/website/yui/button/assets/skins/sam/button.css 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/website/yui/button/assets/skins/sam/button.css 2007-11-05 10:14:48 UTC (rev 2255) @@ -0,0 +1,7 @@ +/* +Copyright (c) 2007, Yahoo! Inc. All rights reserved. +Code licensed under the BSD License: +http://developer.yahoo.net/yui/license.txt +version: 2.3.1 +*/ +.yui-skin-sam .yui-button{display:-moz-inline-box;display:inline-block;}.yui-skin-sam .yui-button .first-child{display:block;*display:inline-block;}.yui-skin-sam .yui-button button,.yui-skin-sam .yui-button a{display:block;*display:inline-block;border:none;}.yui-skin-sam .yui-button button{background-color:transparent;*overflow:visible;cursor:pointer;}.yui-skin-sam .yui-button a{text-decoration:none;}.yui-skin-sam .yui-button{border-width:1px 0;border-style:solid;border-color:#808080;background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0;margin:auto .25em;}.yui-skin-sam .yui-button .first-child{border-width:0 1px;border-style:solid;border-color:#808080;margin:0 -1px;*position:relative;*left:-1px;}.yui-skin-sam .yui-button button,.yui-skin-sam .yui-button a{padding:0 10px;font-size:93%;line-height:2;*line-height:1.7;min-height:2em;*min-height:auto;color:#000;}.yui-skin-sam .yui-split-button button,.yui-skin-sam .yui-menu-button button{padding-right:20px;background-position:right center;background-repeat:no-repeat;}.yui-skin-sam .yui-menu-button button{background-image:url(menu-button-arrow.png);}.yui-skin-sam .yui-split-button button{background-image:url(split-button-arrow.png);}.yui-skin-sam .yui-button-focus{border-color:#7D98B8;background-position:0 -1300px;}.yui-skin-sam .yui-button-focus .first-child{border-color:#7D98B8;}.yui-skin-sam .yui-button-focus button,.yui-skin-sam .yui-button-focus a{color:#000;}.yui-skin-sam .yui-split-button-focus button{background-image:url(split-button-arrow-focus.png);}.yui-skin-sam .yui-button-hover{border-color:#7D98B8;background-position:0 -1300px;}.yui-skin-sam .yui-button-hover .first-child{border-color:#7D98B8;}.yui-skin-sam .yui-button-hover button,.yui-skin-sam .yui-button-hover a{color:#000;}.yui-skin-sam .yui-split-button-hover button{background-image:url(split-button-arrow-hover.png);}.yui-skin-sam .yui-button-active{border-color:#7D98B8;background-position:0 -1700px;}.yui-skin-sam .yui-button-active .first-child{border-color:#7D98B8;}.yui-skin-sam .yui-button-active button,.yui-skin-sam .yui-button-active a{color:#000;}.yui-skin-sam .yui-split-button-activeoption{border-color:#808080;background-position:0 0;}.yui-skin-sam .yui-split-button-activeoption .first-child{border-color:#808080;}.yui-skin-sam .yui-split-button-activeoption button{background-image:url(split-button-arrow-active.png);}.yui-skin-sam .yui-radio-button-checked,.yui-skin-sam .yui-checkbox-button-checked{border-color:#304369;background-position:0 -1400px;}.yui-skin-sam .yui-radio-button-checked .first-child,.yui-skin-sam .yui-checkbox-button-checked .first-child{border-color:#304369;}.yui-skin-sam .yui-radio-button-checked button,.yui-skin-sam .yui-checkbox-button-checked button{color:#fff;}.yui-skin-sam .yui-button-disabled{border-color:#ccc;background-position:0 -1500px;}.yui-skin-sam .yui-button-disabled .first-child{border-color:#ccc;}.yui-skin-sam .yui-button-disabled button,.yui-skin-sam .yui-button-disabled a{color:#A6A6A6;cursor:default;}.yui-skin-sam .yui-menu-button-disabled button{background-image:url(menu-button-arrow-disabled.png);}.yui-skin-sam .yui-split-button-disabled button{background-image:url(split-button-arrow-disabled.png);} Added: branches/trunk-reorg/projects/scrabble/website/yui/button/assets/skins/sam/menu-button-arrow-disabled.png =================================================================== (Binary files differ) Property changes on: branches/trunk-reorg/projects/scrabble/website/yui/button/assets/skins/sam/menu-button-arrow-disabled.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: branches/trunk-reorg/projects/scrabble/website/yui/button/assets/skins/sam/menu-button-arrow.png =================================================================== (Binary files differ) Property changes on: branches/trunk-reorg/projects/scrabble/website/yui/button/assets/skins/sam/menu-button-arrow.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: branches/trunk-reorg/projects/scrabble/website/yui/button/assets/skins/sam/split-button-arrow-active.png =================================================================== (Binary files differ) Property changes on: branches/trunk-reorg/projects/scrabble/website/yui/button/assets/skins/sam/split-button-arrow-active.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: branches/trunk-reorg/projects/scrabble/website/yui/button/assets/skins/sam/split-button-arrow-disabled.png =================================================================== (Binary files differ) Property changes on: branches/trunk-reorg/projects/scrabble/website/yui/button/assets/skins/sam/split-button-arrow-disabled.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: branches/trunk-reorg/projects/scrabble/website/yui/button/assets/skins/sam/split-button-arrow-focus.png =================================================================== (Binary files differ) Property changes on: branches/trunk-reorg/projects/scrabble/website/yui/button/assets/skins/sam/split-button-arrow-focus.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: branches/trunk-reorg/projects/scrabble/website/yui/button/assets/skins/sam/split-button-arrow-hover.png =================================================================== (Binary files differ) Property changes on: branches/trunk-reorg/projects/scrabble/website/yui/button/assets/skins/sam/split-button-arrow-hover.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: branches/trunk-reorg/projects/scrabble/website/yui/button/assets/skins/sam/split-button-arrow.png =================================================================== (Binary files differ) Property changes on: branches/trunk-reorg/projects/scrabble/website/yui/button/assets/skins/sam/split-button-arrow.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: branches/trunk-reorg/projects/scrabble/website/yui/button/button-beta-min.js =================================================================== --- branches/trunk-reorg/projects/scrabble/website/yui/button/button-beta-min.js 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/website/yui/button/button-beta-min.js 2007-11-05 10:14:48 UTC (rev 2255) @@ -0,0 +1,11 @@ +/* +Copyright (c) 2007, Yahoo! Inc. All rights reserved. +Code licensed under the BSD License: +http://developer.yahoo.net/yui/license.txt +version: 2.3.1 +*/ +(function(){var G=YAHOO.util.Dom,L=YAHOO.util.Event,I=YAHOO.lang,B=YAHOO.widget.Overlay,J=YAHOO.widget.Menu,D={},K=null,E=null,C=null;function F(N,M,Q,O){var R,P;if(I.isString(N)&&I.isString(M)){if(YAHOO.env.ua.ie){P="0){T.label=P;}}}function A(O){var N=O.attributes,M=N.srcelement,Q=M.nodeName.toUpperCase(),P=this;if(Q==this.NODE_NAME){O.element=M;O.id=M.id;G.getElementsBy(function(R){switch(R.nodeName.toUpperCase()){case"BUTTON":case"A":case"INPUT":H.call(P,R,N);break;}},"*",M);}else{switch(Q){case"BUTTON":case"A":case"INPUT":H.call(this,M,N);break;}}}YAHOO.widget.Button=function(Q,N){var P=YAHOO.widget.Button.superclass.constructor,O,M;if(arguments.length==1&&!I.isString(Q)&&!Q.nodeName){if(!Q.id){Q.id=G.generateId();}P.call(this,(this.createButtonElement(Q.type)),Q);}else{O={element:null,attributes:(N||{})};if(I.isString(Q)){M=G.get(Q);if(M){if(!O.attributes.id){O.attributes.id=Q;}O.attributes.srcelement=M;A.call(this,O);if(!O.element){O.element=this.createButtonElement(O.attributes.type);}P.call(this,O.element,O.attributes);}}else{if(Q.nodeName){if(!O.attributes.id){if(Q.id){O.attributes.id=Q.id;}else{O.attributes.id=G.generateId();}}O.attributes.srcelement=Q;A.call(this,O);if(!O.element){O.element=this.createButtonElement(O.attributes.type);}P.call(this,O.element,O.attributes);}}}};YAHOO.extend(YAHOO.widget.Button,YAHOO.util.Element,{_button:null,_menu:null,_hiddenFields:null,_onclickAttributeValue:null,_activationKeyPressed:false,_activationButtonPressed:false,_hasKeyEventHandlers:false,_hasMouseEventHandlers:false,NODE_NAME:"SPAN",CHECK_ACTIVATION_KEYS:[32],ACTIVATION_KEYS:[13,32],OPTION_AREA_WIDTH:20,CSS_CLASS_NAME:"yui-button",RADIO_DEFAULT_TITLE:"Unchecked. Click to check.",RADIO_CHECKED_TITLE:"Checked. Click to uncheck.",CHECKBOX_DEFAULT_TITLE:"Unchecked. Click to check.",CHECKBOX_CHECKED_TITLE:"Checked. Click to uncheck.",MENUBUTTON_DEFAULT_TITLE:"Menu collapsed. Click to expand.",MENUBUTTON_MENU_VISIBLE_TITLE:"Menu expanded. Click or press Esc to collapse.",SPLITBUTTON_DEFAULT_TITLE:("Menu collapsed. Click inside option region or press Ctrl + Shift + M to show the menu."),SPLITBUTTON_OPTION_VISIBLE_TITLE:"Menu expanded. Press Esc or Ctrl + Shift + M to hide the menu.",SUBMIT_TITLE:"Click to submit form.",_setType:function(M){if(M=="split"){this.on("option",this._onOption);}},_setLabel:function(M){this._button.innerHTML=M;var O,N;if(YAHOO.env.ua.gecko&&G.inDocument(this.get("element"))){N=this;O=this.CSS_CLASS_NAME;this.removeClass(O);window.setTimeout(function(){N.addClass(O);},0);}},_setTabIndex:function(M){this._button.tabIndex=M;},_setTitle:function(N){var M=N;if(this.get("type")!="link"){if(!M){switch(this.get("type")){case"radio":M=this.RADIO_DEFAULT_TITLE;break;case"checkbox":M=this.CHECKBOX_DEFAULT_TITLE;break;case"menu":M=this.MENUBUTTON_DEFAULT_TITLE;break;case"split":M=this.SPLITBUTTON_DEFAULT_TITLE;break;case"submit":M=this.SUBMIT_TITLE;break;}}this._button.title=M;}},_setDisabled:function(M){if(this.get("type")!="link"){if(M){if(this._menu){this._menu.hide();}if(this.hasFocus()){this.blur();}this._button.setAttribute("disabled","disabled");this.addStateCSSClasses("disabled");this.removeStateCSSClasses("hover");this.removeStateCSSClasses("active");this.removeStateCSSClasses("focus");}else{this._button.removeAttribute("disabled");this.removeStateCSSClasses("disabled");}}},_setHref:function(M){if(this.get("type")=="link"){this._button.href=M;}},_setTarget:function(M){if(this.get("type")=="link"){this._button.setAttribute("target",M);}},_setChecked:function(N){var O=this.get("type"),M;if(O=="checkbox"||O=="radio"){if(N){this.addStateCSSClasses("checked");M=(O=="radio")?this.RADIO_CHECKED_TITLE:this.CHECKBOX_CHECKED_TITLE;}else{this.removeStateCSSClasses("checked");M=(O=="radio")?this.RADIO_DEFAULT_TITLE:this.CHECKBOX_DEFAULT_TITLE;}this.set("title",M);}},_setMenu:function(W){var Q=this.get("lazyloadmenu"),T=this.get("element"),M=J.prototype.CSS_CLASS_NAME,Y=false,Z,P,S,O,N,V,R;if(!B){return false;}if(!J){return false;}function X(){Z.render(T.parentNode);this.removeListener("appendTo",X);}function U(){if(Z){G.addClass(Z.element,this.get("menuclassname"));G.addClass(Z.element,"yui-"+this.get("type")+"-button-menu");Z.showEvent.subscribe(this._onMenuShow,null,this);Z.hideEvent.subscribe(this._onMenuHide,null,this);Z.renderEvent.subscribe(this._onMenuRender,null,this);if(Z instanceof J){Z.keyDownEvent.subscribe(this._onMenuKeyDown,this,true);Z.subscribe("click",this._onMenuClick,this,true);Z.itemAddedEvent.subscribe(this._onMenuItemAdded,this,true);S=Z.srcElement;if(S&&S.nodeName.toUpperCase()=="SELECT"){S.style.display="none";S.parentNode.removeChild(S);}}else{if(Z instanceof B){if(!K){K=new YAHOO.widget.OverlayManager();}K.register(Z);}}this._menu=Z;if(!Y){if(Q&&!(Z instanceof J)){Z.beforeShowEvent.subscribe(this._onOverlayBeforeShow,null,this);}else{if(!Q){if(G.inDocument(T)){Z.render(T.parentNode);}else{this.on("appendTo",X);}}}}}}if(W&&(W instanceof J)){Z=W;O=Z.getItems(); +N=O.length;Y=true;if(N>0){R=N-1;do{V=O[R];if(V){V.cfg.subscribeToConfigEvent("selected",this._onMenuItemSelected,V,this);}}while(R--);}U.call(this);}else{if(W&&(W instanceof B)){Z=W;Y=true;Z.cfg.setProperty("visible",false);Z.cfg.setProperty("context",[T,"tl","bl"]);U.call(this);}else{if(I.isArray(W)){this.on("appendTo",function(){Z=new J(G.generateId(),{lazyload:Q,itemdata:W});U.call(this);});}else{if(I.isString(W)){P=G.get(W);if(P){if(G.hasClass(P,M)||P.nodeName.toUpperCase()=="SELECT"){Z=new J(W,{lazyload:Q});U.call(this);}else{Z=new B(W,{visible:false,context:[T,"tl","bl"]});U.call(this);}}}else{if(W&&W.nodeName){if(G.hasClass(W,M)||W.nodeName.toUpperCase()=="SELECT"){Z=new J(W,{lazyload:Q});U.call(this);}else{if(!W.id){G.generateId(W);}Z=new B(W,{visible:false,context:[T,"tl","bl"]});U.call(this);}}}}}}},_setOnClick:function(M){if(this._onclickAttributeValue&&(this._onclickAttributeValue!=M)){this.removeListener("click",this._onclickAttributeValue.fn);this._onclickAttributeValue=null;}if(!this._onclickAttributeValue&&I.isObject(M)&&I.isFunction(M.fn)){this.on("click",M.fn,M.obj,M.scope);this._onclickAttributeValue=M;}},_setSelectedMenuItem:function(N){var M=this._menu,O;if(M&&M instanceof J){O=M.getItem(N);if(O&&!O.cfg.getProperty("selected")){O.cfg.setProperty("selected",true);}}},_isActivationKey:function(M){var Q=this.get("type"),N=(Q=="checkbox"||Q=="radio")?this.CHECK_ACTIVATION_KEYS:this.ACTIVATION_KEYS,P=N.length,O;if(P>0){O=P-1;do{if(M==N[O]){return true;}}while(O--);}},_isSplitButtonOptionKey:function(M){return(M.ctrlKey&&M.shiftKey&&L.getCharCode(M)==77);},_addListenersToForm:function(){var S=this.getForm(),R=YAHOO.widget.Button.onFormKeyPress,Q,M,P,O,N;if(S){L.on(S,"reset",this._onFormReset,null,this);L.on(S,"submit",this.createHiddenFields,null,this);M=this.get("srcelement");if(this.get("type")=="submit"||(M&&M.type=="submit")){P=L.getListeners(S,"keypress");Q=false;if(P){O=P.length;if(O>0){N=O-1;do{if(P[N].fn==R){Q=true;break;}}while(N--);}}if(!Q){L.on(S,"keypress",R);}}}},_originalMaxHeight:-1,_showMenu:function(O){YAHOO.widget.MenuManager.hideVisible();if(K){K.hideAll();}var M=this._menu,N=G.getViewportHeight(),Q,R,P;if(M&&(M instanceof J)){M.cfg.applyConfig({context:[this.get("id"),"tl","bl"],constraintoviewport:false,clicktohide:false,visible:true});M.cfg.fireQueue();M.align("tl","bl");if(O.type=="mousedown"){L.stopPropagation(O);}if(this.get("focusmenu")){this._menu.focus();}Q=M.element.offsetHeight;if((M.cfg.getProperty("y")+Q)>N){M.align("bl","tl");P=M.cfg.getProperty("y");R=G.getDocumentScrollTop();if(R>=P){if(this._originalMaxHeight==-1){this._originalMaxHeight=M.cfg.getProperty("maxheight");}M.cfg.setProperty("maxheight",(Q-((R-P)+20)));M.align("bl","tl");}}}else{if(M&&(M instanceof B)){M.show();M.align("tl","bl");Q=M.element.offsetHeight;if((M.cfg.getProperty("y")+Q)>N){M.align("bl","tl");}}}},_hideMenu:function(){var M=this._menu;if(M){M.hide();}},_onMouseOver:function(M){if(!this._hasMouseEventHandlers){this.on("mouseout",this._onMouseOut);this.on("mousedown",this._onMouseDown);this.on("mouseup",this._onMouseUp);this._hasMouseEventHandlers=true;}this.addStateCSSClasses("hover");if(this._activationButtonPressed){this.addStateCSSClasses("active");}if(this._bOptionPressed){this.addStateCSSClasses("activeoption");}},_onMouseOut:function(M){this.removeStateCSSClasses("hover");if(this.get("type")!="menu"){this.removeStateCSSClasses("active");}if(this._activationButtonPressed||this._bOptionPressed){L.on(document,"mouseup",this._onDocumentMouseUp,null,this);}},_onDocumentMouseUp:function(M){this._activationButtonPressed=false;this._bOptionPressed=false;var N=this.get("type");if(N=="menu"||N=="split"){this.removeStateCSSClasses((N=="menu"?"active":"activeoption"));this._hideMenu();}L.removeListener(document,"mouseup",this._onDocumentMouseUp);},_onMouseDown:function(P){var R,N,Q,O;function M(){this._hideMenu();this.removeListener("mouseup",M);}if((P.which||P.button)==1){if(!this.hasFocus()){this.focus();}R=this.get("type");if(R=="split"){N=this.get("element");Q=L.getPageX(P)-G.getX(N);if((N.offsetWidth-this.OPTION_AREA_WIDTH)"+(M=="link"?"":"")+"";return N;},addStateCSSClasses:function(M){var N=this.get("type");if(I.isString(M)){if(M!="activeoption"){this.addClass(this.CSS_CLASS_NAME+("-"+M));}this.addClass("yui-"+N+("-button-"+M));}},removeStateCSSClasses:function(M){var N=this.get("type");if(I.isString(M)){this.removeClass(this.CSS_CLASS_NAME+("-"+M));this.removeClass("yui-"+N+("-button-"+M));}},createHiddenFields:function(){this.removeHiddenFields();var R=this.getForm(),U,N,P,S,T,O,Q,M;if(R&&!this.get("disabled")){N=this.get("type");P=(N=="checkbox"||N=="radio");if(P||(E==this)){U=F((P?N:"hidden"),this.get("name"),this.get("value"),this.get("checked"));if(U){if(P){U.style.display="none";}R.appendChild(U);}}S=this._menu;if(S&&(S instanceof J)){M=S.srcElement;T=S.getItem(this.get("selectedMenuItem"));if(T){if(M&&M.nodeName.toUpperCase()=="SELECT"){R.appendChild(M);M.selectedIndex=T.index;}else{Q=(T.value===null||T.value==="")?T.cfg.getProperty("text"):T.value;O=this.get("name");if(Q&&O){M=F("hidden",(O+"_options"),Q);R.appendChild(M);}}}}if(U&&M){this._hiddenFields=[U,M];}else{if(!U&&M){this._hiddenFields=M;}else{if(U&&!M){this._hiddenFields=U;}}}return this._hiddenFields;}},removeHiddenFields:function(){var P=this._hiddenFields,N,O;function M(Q){if(G.inDocument(Q)){Q.parentNode.removeChild(Q);}}if(P){if(I.isArray(P)){N=P.length;if(N>0){O=N-1;do{M(P[O]);}while(O--);}}else{M(P);}this._hiddenFields=null;}},submitForm:function(){var P=this.getForm(),O=this.get("srcelement"),N=false,M;if(P){if(this.get("type")=="submit"||(O&&O.type=="submit")){E=this;}if(YAHOO.env.ua.ie){N=P.fireEvent("onsubmit");}else{M=document.createEvent("HTMLEvents");M.initEvent("submit",true,true);N=P.dispatchEvent(M);}if((YAHOO.env.ua.ie||YAHOO.env.ua.webkit)&&N){P.submit();}}return N;},init:function(M,T){var O=T.type=="link"?"a":"button",Q=T.srcelement,S=M.getElementsByTagName(O)[0],R;if(!S){R=M.getElementsByTagName("input")[0];if(R){S=document.createElement("button");S.setAttribute("type","button");R.parentNode.replaceChild(S,R);}}this._button=S;YAHOO.widget.Button.superclass.init.call(this,M,T);D[this.get("id")]=this;this.addClass(this.CSS_CLASS_NAME);this.addClass("yui-"+this.get("type")+"-button");L.on(this._button,"focus",this._onFocus,null,this);this.on("mouseover",this._onMouseOver);this.on("click",this._onClick);this.on("appendTo",this._onAppendTo);var V=this.get("container"),N=this.get("element"),U=G.inDocument(N),P;if(V){if(Q&&Q!=N){P=Q.parentNode;if(P){P.removeChild(Q);}}if(I.isString(V)){L.onContentReady(V,function(){this.appendTo(V); +},null,this);}else{this.appendTo(V);}}else{if(!U&&Q&&Q!=N){P=Q.parentNode;if(P){this.fireEvent("beforeAppendTo",{type:"beforeAppendTo",target:P});P.replaceChild(N,Q);this.fireEvent("appendTo",{type:"appendTo",target:P});}}else{if(this.get("type")!="link"&&U&&Q&&Q==N){this._addListenersToForm();}}}},initAttributes:function(N){var M=N||{};YAHOO.widget.Button.superclass.initAttributes.call(this,M);this.setAttributeConfig("type",{value:(M.type||"push"),validator:I.isString,writeOnce:true,method:this._setType});this.setAttributeConfig("label",{value:M.label,validator:I.isString,method:this._setLabel});this.setAttributeConfig("value",{value:M.value});this.setAttributeConfig("name",{value:M.name,validator:I.isString});this.setAttributeConfig("tabindex",{value:M.tabindex,validator:I.isNumber,method:this._setTabIndex});this.configureAttribute("title",{value:M.title,validator:I.isString,method:this._setTitle});this.setAttributeConfig("disabled",{value:(M.disabled||false),validator:I.isBoolean,method:this._setDisabled});this.setAttributeConfig("href",{value:M.href,validator:I.isString,method:this._setHref});this.setAttributeConfig("target",{value:M.target,validator:I.isString,method:this._setTarget});this.setAttributeConfig("checked",{value:(M.checked||false),validator:I.isBoolean,method:this._setChecked});this.setAttributeConfig("container",{value:M.container,writeOnce:true});this.setAttributeConfig("srcelement",{value:M.srcelement,writeOnce:true});this.setAttributeConfig("menu",{value:null,method:this._setMenu,writeOnce:true});this.setAttributeConfig("lazyloadmenu",{value:(M.lazyloadmenu===false?false:true),validator:I.isBoolean,writeOnce:true});this.setAttributeConfig("menuclassname",{value:(M.menuclassname||"yui-button-menu"),validator:I.isString,method:this._setMenuClassName,writeOnce:true});this.setAttributeConfig("selectedMenuItem",{value:0,validator:I.isNumber,method:this._setSelectedMenuItem});this.setAttributeConfig("onclick",{value:M.onclick,method:this._setOnClick});this.setAttributeConfig("focusmenu",{value:(M.focusmenu===false?false:true),validator:I.isBoolean});},focus:function(){if(!this.get("disabled")){this._button.focus();}},blur:function(){if(!this.get("disabled")){this._button.blur();}},hasFocus:function(){return(C==this);},isActive:function(){return this.hasClass(this.CSS_CLASS_NAME+"-active");},getMenu:function(){return this._menu;},getForm:function(){return this._button.form;},getHiddenFields:function(){return this._hiddenFields;},destroy:function(){var O=this.get("element"),N=O.parentNode,M=this._menu,Q;if(M){if(K.find(M)){K.remove(M);}M.destroy();}L.purgeElement(O);L.purgeElement(this._button);L.removeListener(document,"mouseup",this._onDocumentMouseUp);L.removeListener(document,"keyup",this._onDocumentKeyUp);L.removeListener(document,"mousedown",this._onDocumentMouseDown);var P=this.getForm();if(P){L.removeListener(P,"reset",this._onFormReset);L.removeListener(P,"submit",this.createHiddenFields);}this.unsubscribeAll();if(N){N.removeChild(O);}delete D[this.get("id")];Q=G.getElementsByClassName(this.CSS_CLASS_NAME,this.NODE_NAME,P);if(I.isArray(Q)&&Q.length===0){L.removeListener(P,"keypress",YAHOO.widget.Button.onFormKeyPress);}},fireEvent:function(N,M){if(this.DOM_EVENTS[N]&&this.get("disabled")){return ;}YAHOO.widget.Button.superclass.fireEvent.call(this,N,M);},toString:function(){return("Button "+this.get("id"));}});YAHOO.widget.Button.onFormKeyPress=function(Q){var O=L.getTarget(Q),R=L.getCharCode(Q),P=O.nodeName&&O.nodeName.toUpperCase(),M=O.type,S=false,U,V,N,W;function T(Z){var Y,X;switch(Z.nodeName.toUpperCase()){case"INPUT":case"BUTTON":if(Z.type=="submit"&&!Z.disabled){if(!S&&!N){N=Z;}if(V&&!W){W=Z;}}break;default:Y=Z.id;if(Y){U=D[Y];if(U){S=true;if(!U.get("disabled")){X=U.get("srcelement");if(!V&&(U.get("type")=="submit"||(X&&X.type=="submit"))){V=U;}}}}break;}}if(R==13&&((P=="INPUT"&&(M=="text"||M=="password"||M=="checkbox"||M=="radio"||M=="file"))||P=="SELECT")){G.getElementsBy(T,"*",this);if(N){N.focus();}else{if(!N&&V){if(W){L.preventDefault(Q);}V.submitForm();}}}};YAHOO.widget.Button.addHiddenFieldsToForm=function(M){var R=G.getElementsByClassName(YAHOO.widget.Button.prototype.CSS_CLASS_NAME,"*",M),P=R.length,Q,N,O;if(P>0){for(O=0;O0){F=H-1;do{this._buttons[F].set("disabled",G);}while(F--);}},_onKeyDown:function(K){var G=B.getTarget(K),I=B.getCharCode(K),H=G.parentNode.parentNode.id,J=E[H],F=-1;if(I==37||I==38){F=(J.index===0)?(this._buttons.length-1):(J.index-1);}else{if(I==39||I==40){F=(J.index===(this._buttons.length-1))?0:(J.index+1);}}if(F>-1){this.check(F);this.getButton(F).focus();}},_onAppendTo:function(H){var I=this._buttons,G=I.length,F;for(F=0;F0){this.addButtons(J);}function F(K){return(K.type=="radio");}J=C.getElementsBy(F,"input",this.get("element"));if(J.length>0){this.addButtons(J);}this.on("keydown",this._onKeyDown);this.on("appendTo",this._onAppendTo);var G=this.get("container");if(G){if(D.isString(G)){B.onContentReady(G,function(){this.appendTo(G);},null,this);}else{this.appendTo(G);}}},initAttributes:function(G){var F=G||{};YAHOO.widget.ButtonGroup.superclass.initAttributes.call(this,F);this.setAttributeConfig("name",{value:F.name,validator:D.isString});this.setAttributeConfig("disabled",{value:(F.disabled||false),validator:D.isBoolean,method:this._setDisabled});this.setAttributeConfig("value",{value:F.value});this.setAttributeConfig("container",{value:F.container,writeOnce:true});this.setAttributeConfig("checkedButton",{value:null});},addButton:function(J){var L,K,G,F,H,I;if(J instanceof A&&J.get("type")=="radio"){L=J;}else{if(!D.isString(J)&&!J.nodeName){J.type="radio";L=new A(J);}else{L=new A(J,{type:"radio"});}}if(L){F=this._buttons.length;H=L.get("name");I=this.get("name");L.index=F;this._buttons[F]=L;E[L.get("id")]=L;if(H!=I){L.set("name",I);}if(this.get("disabled")){L.set("disabled",true);}if(L.get("checked")){this.set("checkedButton",L);}K=L.get("element");G=this.get("element");if(K.parentNode!=G){G.appendChild(K);}L.on("checkedChange",this._onButtonCheckedChange,L,this);return L;}},addButtons:function(G){var H,I,J,F;if(D.isArray(G)){H=G.length;J=[];if(H>0){for(F=0;F0){return J;}}}},removeButton:function(H){var I=this.getButton(H),G,F;if(I){this._buttons.splice(H,1);delete E[I.get("id")];I.removeListener("checkedChange",this._onButtonCheckedChange);I.destroy();G=this._buttons.length;if(G>0){F=this._buttons.length-1;do{this._buttons[F].index=F;}while(F--);}}},getButton:function(F){if(D.isNumber(F)){return this._buttons[F];}},getButtons:function(){return this._buttons;},getCount:function(){return this._buttons.length;},focus:function(H){var I,G,F;if(D.isNumber(H)){I=this._buttons[H];if(I){I.focus();}}else{G=this.getCount();for(F=0;F0){G=this._buttons.length-1;do{this._buttons[G].destroy();}while(G--);}B.purgeElement(H);F.removeChild(H);},toString:function(){return("ButtonGroup "+this.get("id"));}});})();YAHOO.register("button",YAHOO.widget.Button,{version:"2.3.1",build:"541"}); \ No newline at end of file Added: branches/trunk-reorg/projects/scrabble/website/yui/calendar/assets/calendar-core.css =================================================================== --- branches/trunk-reorg/projects/scrabble/website/yui/calendar/assets/calendar-core.css 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/website/yui/calendar/assets/calendar-core.css 2007-11-05 10:14:48 UTC (rev 2255) @@ -0,0 +1,88 @@ +/* +Copyright (c) 2007, Yahoo! Inc. All rights reserved. +Code licensed under the BSD License: +http://developer.yahoo.net/yui/license.txt +version: 2.3.1 +*/ +/** + * CORE + * + * This is the set of CSS rules required by Calendar to drive core functionality and structure. + * Changes to these rules may result in the Calendar not functioning or rendering correctly. + * + * They should not be modified for skinning. + **/ + +/* CALENDAR BOUNDING BOX */ +.yui-calcontainer { + position:relative; + float:left; + _overflow:hidden; /* IE6 only, to clip iframe shim */ +} + +/* IFRAME SHIM */ +.yui-calcontainer iframe { + position:absolute; + border:none; + margin:0;padding:0; + z-index:0; + width:100%; + height:100%; + left:0px; + top:0px; +} + +/* IFRAME SHIM IE6 only */ +.yui-calcontainer iframe.fixedsize { + width:50em; + height:50em; + top:-1px; + left:-1px; +} + +/* BOUNDING BOX FOR EACH CALENDAR GROUP PAGE */ +.yui-calcontainer.multi .groupcal { + z-index:1; + float:left; + position:relative; +} + +/* TITLE BAR */ +.yui-calcontainer .title { + position:relative; + z-index:1; +} + +/* CLOSE ICON CONTAINER */ +.yui-calcontainer .close-icon { + position:absolute; + z-index:1; +} + +/* CALENDAR TABLE */ +.yui-calendar { + position:relative; +} + +/* NAVBAR LEFT ARROW CONTAINER */ +.yui-calendar .calnavleft { + position:absolute; + z-index:1; +} + +/* NAVBAR RIGHT ARROW CONTAINER */ +.yui-calendar .calnavright { + position:absolute; + z-index:1; +} + +/* NAVBAR TEXT CONTAINER */ +.yui-calendar .calheader { + position:relative; + width:100%; + text-align:center; +} + +/* Specific changes for calendar running under fonts/reset */ +.yui-calendar .calbody a:hover {background:inherit;} +p#clear {clear:left; padding-top:10px;} \ No newline at end of file Added: branches/trunk-reorg/projects/scrabble/website/yui/calendar/assets/calendar.css =================================================================== --- branches/trunk-reorg/projects/scrabble/website/yui/calendar/assets/calendar.css 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/website/yui/calendar/assets/calendar.css 2007-11-05 10:14:48 UTC (rev 2255) @@ -0,0 +1,205 @@ +/* +Copyright (c) 2007, Yahoo! Inc. All rights reserved. +Code licensed under the BSD License: +http://developer.yahoo.net/yui/license.txt +version: 2.3.1 +*/ +.yui-calcontainer { + position:relative; + padding:5px; + background-color:#F7F9FB; + border:1px solid #7B9EBD; + float:left; + _overflow:hidden; /* IE6 only, to clip iframe shim */ +} + +.yui-calcontainer iframe { + position:absolute; + border:none; + margin:0;padding:0; + z-index:0; + width:100%; + height:100%; + left:0px; + top:0px; +} + +/* IE6 only */ +.yui-calcontainer iframe.fixedsize { + width:50em; + height:50em; + top:-1px; + left:-1px; +} + +.yui-calcontainer.multi { + padding:0; +} + +.yui-calcontainer.multi .groupcal { + padding:5px; + background-color:transparent; + z-index:1; + float:left; + position:relative; + border:none; +} + +.yui-calcontainer .title { + font:100% sans-serif; + color:#000; + font-weight:bold; + margin-bottom:5px; + height:25px; + position:absolute; + top:3px;left:5px; + z-index:1; +} + +.yui-calcontainer .close-icon { + position:absolute; + right:3px; + top:3px; + border:none; + z-index:1; +} + +.yui-calcontainer .calclose { + background: url("calx.gif") no-repeat; + width:17px; + height:13px; + cursor:pointer; +} + +/* Calendar element styles */ + +.yui-calendar { + font:100% sans-serif; + text-align:center; + border-spacing:0; + border-collapse:separate; + position:relative; +} + +.yui-calcontainer.withtitle { + padding-top:1.5em; +} + +.yui-calendar .calnavleft { + position:absolute; + cursor:pointer; + top:2px; + bottom:0; + width:9px; + height:12px; + left:2px; + z-index:1; + background: url("callt.gif") no-repeat; +} + +.yui-calendar .calnavright { + position:absolute; + cursor:pointer; + top:2px; + bottom:0; + width:9px; + height:12px; + right:2px; + z-index:1; + background: url("calrt.gif") no-repeat; +} + +.yui-calendar td.calcell { + padding:.1em .2em; + border:1px solid #E0E0E0; + text-align:center; +} + +.yui-calendar td.calcell a { + color:#003DB8; + text-decoration:none; +} + +.yui-calendar td.calcell.today { + border:1px solid #000; +} + +.yui-calendar td.calcell.oom { + cursor:default; + color:#999; + background-color:#EEE; + border:1px solid #E0E0E0; +} + +.yui-calendar td.calcell.selected { + color:#003DB8; + background-color:#FFF19F; + border:1px solid #FF9900; +} + +.yui-calendar td.calcell.calcellhover { + cursor:pointer; + color:#FFF; + background-color:#FF9900; + border:1px solid #FF9900; +} + +.yui-calendar td.calcell.calcellhover a { + color:#FFF; +} + +.yui-calendar td.calcell.restricted { + text-decoration:line-through; +} + +.yui-calendar td.calcell.previous { + color:#CCC; +} + +.yui-calendar td.calcell.highlight1 { background-color:#CCFF99; } +.yui-calendar td.calcell.highlight2 { background-color:#99CCFF; } +.yui-calendar td.calcell.highlight3 { background-color:#FFCCCC; } +.yui-calendar td.calcell.highlight4 { background-color:#CCFF99; } + +.yui-calendar .calhead { + border:1px solid #E0E0E0; + vertical-align:middle; + background-color:#FFF; +} + +.yui-calendar .calheader { + position:relative; + width:100%; + text-align:center; +} + +.yui-calendar .calheader img { + border:none; +} + +.yui-calendar .calweekdaycell { + color:#666; + font-weight:normal; + text-align:center; + width:1.5em; +} + +.yui-calendar .calfoot { + background-color:#EEE; +} + +.yui-calendar .calrowhead, .yui-calendar .calrowfoot { + color:#666; + font-size:9px; + font-style:italic; + font-weight:normal; + width:15px; +} + +.yui-calendar .calrowhead { + border-right-width:2px; +} + +/* Specific changes for calendar running under fonts/reset */ +.yui-calendar .calbody a:hover {background:inherit;} +p#clear {clear:left; padding-top:10px;} Added: branches/trunk-reorg/projects/scrabble/website/yui/calendar/assets/callt.gif =================================================================== (Binary files differ) Property changes on: branches/trunk-reorg/projects/scrabble/website/yui/calendar/assets/callt.gif ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: branches/trunk-reorg/projects/scrabble/website/yui/calendar/assets/calrt.gif =================================================================== (Binary files differ) Property changes on: branches/trunk-reorg/projects/scrabble/website/yui/calendar/assets/calrt.gif ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: branches/trunk-reorg/projects/scrabble/website/yui/calendar/assets/calx.gif =================================================================== (Binary files differ) Property changes on: branches/trunk-reorg/projects/scrabble/website/yui/calendar/assets/calx.gif ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: branches/trunk-reorg/projects/scrabble/website/yui/calendar/assets/skins/sam/calendar-skin.css =================================================================== --- branches/trunk-reorg/projects/scrabble/website/yui/calendar/assets/skins/sam/calendar-skin.css 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/website/yui/calendar/assets/skins/sam/calendar-skin.css 2007-11-05 10:14:48 UTC (rev 2255) @@ -0,0 +1,231 @@ +/* +Copyright (c) 2007, Yahoo! Inc. All rights reserved. +Code licensed under the BSD License: +http://developer.yahoo.net/yui/license.txt +version: 2.3.1 +*/ +/** + * SAM + * + * Skin colors used: + * + * - Control Border : 808080 + * - Control Chrome : f2f2f2 + * - Cell Borders : cccccc + * - Normal Cell BG : ffffff + * - Date Links : 0066cc + * - Selected Cells BG : b3d4ff + * - Cell Hover BG : 426fd9 + * - Disabled BG : cccccc + * - Disabled Text Color : a6a6a6 + **/ + +/* CALENDAR BOUNDING BOX */ +.yui-skin-sam .yui-calcontainer { + background-color:#f2f2f2; + border:1px solid #808080; + padding:10px; +} + +/* CALENDARGROUP BOUNDING BOX */ +.yui-skin-sam .yui-calcontainer.multi { + padding:0 5px 0 5px; +} + +/* BOUNDING BOX FOR EACH CALENDAR GROUP PAGE */ +.yui-skin-sam .yui-calcontainer.multi .groupcal { + background-color:transparent; + border:none; + padding:10px 5px 10px 5px; + margin:0; +} + +/* TITLE BAR */ +.yui-skin-sam .yui-calcontainer .title { + background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0; + border-bottom:1px solid #cccccc; + font:100% sans-serif; + color:#000; + font-weight:bold; + height:auto; + padding:.4em; + margin:0 -10px 10px -10px; + top:0; + left:0; + text-align:left; +} + +.yui-skin-sam .yui-calcontainer.multi .title { + margin:0 -5px 0 -5px; +} + +.yui-skin-sam .yui-calcontainer.withtitle { + padding-top:0; +} + +/* CLOSE BUTTON */ +.yui-skin-sam .yui-calcontainer .calclose { + background:url(../../../../assets/skins/sam/sprite.png) no-repeat 0 -300px; + width:25px; + height:15px; + top:.4em; + right:.4em; + cursor:pointer; +} + +/* CALENDAR TABLE */ +.yui-skin-sam .yui-calendar { + border-spacing:0; + border-collapse:collapse; + font:100% sans-serif; + text-align:center; +} + +/* NAVBAR BOUNDING BOX */ +.yui-skin-sam .yui-calendar .calhead { + background:transparent; + border:none; + vertical-align:middle; +} + +/* NAVBAR TEXT CONTAINER */ +.yui-skin-sam .yui-calendar .calheader { + background:transparent; + font-weight:bold; + padding:0 0 .6em 0; + text-align:center; +} + +.yui-skin-sam .yui-calendar .calheader img { + border:none; +} + +/* NAVBAR LEFT ARROW */ +.yui-skin-sam .yui-calendar .calnavleft { + background:url(../../../../assets/skins/sam/sprite.png) no-repeat 0 -450px; + width:25px; + height:15px; + top:0; + bottom:0; + left:-10px; + margin-left:.4em; + cursor:pointer; +} + +/* NAVBAR RIGHT ARROW */ +.yui-skin-sam .yui-calendar .calnavright { + background:url(../../../../assets/skins/sam/sprite.png) no-repeat 0 -500px; + width:25px; + height:15px; + top:0; + bottom:0; + right:-10px; + margin-right:.4em; + cursor:pointer; +} + +/* WEEKDAY HEADER ROW */ +.yui-skin-sam .yui-calendar .calweekdayrow { + height:2em; +} + +/* WEEKDAY (Su, Mo, Tu...) HEADER CELLS */ +.yui-skin-sam .yui-calendar .calweekdaycell { + color:#000; + font-weight:bold; + text-align:center; + width:2em; +} + +/* CALENDAR FOOTER. NOT IMPLEMENTED BY DEFAULT */ +.yui-skin-sam .yui-calendar .calfoot { + background-color:#f2f2f2; +} + +/* WEEK NUMBERS (ROW HEADERS/FOOTERS) */ +.yui-skin-sam .yui-calendar .calrowhead, .yui-skin-sam .yui-calendar .calrowfoot { + color:#a6a6a6; + font-size:85%; + font-style:normal; + font-weight:normal; +} + +.yui-skin-sam .yui-calendar .calrowhead { + text-align:right; + padding-right:2px; +} + +.yui-skin-sam .yui-calendar .calrowfoot { + text-align:left; + padding-left:2px; +} + +/* NORMAL CELLS */ +.yui-skin-sam .yui-calendar td.calcell { + border:1px solid #cccccc; + background:#fff; + padding:1px; + height:1.6em; + line-height:1.6em; /* set line height equal to cell height to center vertically */ + text-align:center; + white-space:nowrap; +} + +/* LINK INSIDE NORMAL CELLS */ +.yui-skin-sam .yui-calendar td.calcell a { + color:#0066cc; + display:block; + height:100%; + text-decoration:none; +} + +/* TODAY'S DATE */ +.yui-skin-sam .yui-calendar td.calcell.today { + background-color:#000; +} + +.yui-skin-sam .yui-calendar td.calcell.today a { + background-color:#fff; +} + +/* OOM DATES */ +.yui-skin-sam .yui-calendar td.calcell.oom { + background-color:#cccccc; + color:#a6a6a6; + cursor:default; +} + +/* SELECTED DATE */ +.yui-skin-sam .yui-calendar td.calcell.selected { + background-color:#fff; + color:#000; +} + +.yui-skin-sam .yui-calendar td.calcell.selected a { + background-color:#b3d4ff; + color:#000; +} + +/* HOVER DATE */ +.yui-skin-sam .yui-calendar td.calcell.calcellhover { + background-color:#426fd9; + color:#fff; + cursor:pointer; +} + +.yui-skin-sam .yui-calendar td.calcell.calcellhover a { + background-color:#426fd9; + color:#fff; +} + +/* DEFAULT OOB DATES */ +.yui-skin-sam .yui-calendar td.calcell.previous { + color:#e0e0e0; +} + +/* CUSTOM RENDERERS */ +.yui-skin-sam .yui-calendar td.calcell.restricted { text-decoration:line-through; } +.yui-skin-sam .yui-calendar td.calcell.highlight1 { background-color:#ccff99; } +.yui-skin-sam .yui-calendar td.calcell.highlight2 { background-color:#99ccff; } +.yui-skin-sam .yui-calendar td.calcell.highlight3 { background-color:#ffcccc; } +.yui-skin-sam .yui-calendar td.calcell.highlight4 { background-color:#ccff99; } \ No newline at end of file Added: branches/trunk-reorg/projects/scrabble/website/yui/calendar/assets/skins/sam/calendar.css =================================================================== --- branches/trunk-reorg/projects/scrabble/website/yui/calendar/assets/skins/sam/calendar.css 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/website/yui/calendar/assets/skins/sam/calendar.css 2007-11-05 10:14:48 UTC (rev 2255) @@ -0,0 +1,7 @@ +/* +Copyright (c) 2007, Yahoo! Inc. All rights reserved. +Code licensed under the BSD License: +http://developer.yahoo.net/yui/license.txt +version: 2.3.1 +*/ +.yui-calcontainer{position:relative;float:left;_overflow:hidden;}.yui-calcontainer iframe{position:absolute;border:none;margin:0;padding:0;z-index:0;width:100%;height:100%;left:0px;top:0px;}.yui-calcontainer iframe.fixedsize{width:50em;height:50em;top:-1px;left:-1px;}.yui-calcontainer.multi .groupcal{z-index:1;float:left;position:relative;}.yui-calcontainer .title{position:relative;z-index:1;}.yui-calcontainer .close-icon{position:absolute;z-index:1;}.yui-calendar{position:relative;}.yui-calendar .calnavleft{position:absolute;z-index:1;}.yui-calendar .calnavright{position:absolute;z-index:1;}.yui-calendar .calheader{position:relative;width:100%;text-align:center;}.yui-calendar .calbody a:hover{background:inherit;}p#clear{clear:left;padding-top:10px;}.yui-skin-sam .yui-calcontainer{background-color:#f2f2f2;border:1px solid #808080;padding:10px;}.yui-skin-sam .yui-calcontainer.multi{padding:0 5px 0 5px;}.yui-skin-sam .yui-calcontainer.multi .groupcal{background-color:transparent;border:none;padding:10px 5px 10px 5px;margin:0;}.yui-skin-sam .yui-calcontainer .title{background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0;border-bottom:1px solid #cccccc;font:100% sans-serif;color:#000;font-weight:bold;height:auto;padding:.4em;margin:0 -10px 10px -10px;top:0;left:0;text-align:left;}.yui-skin-sam .yui-calcontainer.multi .title{margin:0 -5px 0 -5px;}.yui-skin-sam .yui-calcontainer.withtitle{padding-top:0;}.yui-skin-sam .yui-calcontainer .calclose{background:url(../../../../assets/skins/sam/sprite.png) no-repeat 0 -300px;width:25px;height:15px;top:.4em;right:.4em;cursor:pointer;}.yui-skin-sam .yui-calendar{border-spacing:0;border-collapse:collapse;font:100% sans-serif;text-align:center;}.yui-skin-sam .yui-calendar .calhead{background:transparent;border:none;vertical-align:middle;}.yui-skin-sam .yui-calendar .calheader{background:transparent;font-weight:bold;padding:0 0 .6em 0;text-align:center;}.yui-skin-sam .yui-calendar .calheader img{border:none;}.yui-skin-sam .yui-calendar .calnavleft{background:url(../../../../assets/skins/sam/sprite.png) no-repeat 0 -450px;width:25px;height:15px;top:0;bottom:0;left:-10px;margin-left:.4em;cursor:pointer;}.yui-skin-sam .yui-calendar .calnavright{background:url(../../../../assets/skins/sam/sprite.png) no-repeat 0 -500px;width:25px;height:15px;top:0;bottom:0;right:-10px;margin-right:.4em;cursor:pointer;}.yui-skin-sam .yui-calendar .calweekdayrow{height:2em;}.yui-skin-sam .yui-calendar .calweekdaycell{color:#000;font-weight:bold;text-align:center;width:2em;}.yui-skin-sam .yui-calendar .calfoot{background-color:#f2f2f2;}.yui-skin-sam .yui-calendar .calrowhead,.yui-skin-sam .yui-calendar .calrowfoot{color:#a6a6a6;font-size:85%;font-style:normal;font-weight:normal;}.yui-skin-sam .yui-calendar .calrowhead{text-align:right;padding-right:2px;}.yui-skin-sam .yui-calendar .calrowfoot{text-align:left;padding-left:2px;}.yui-skin-sam .yui-calendar td.calcell{border:1px solid #cccccc;background:#fff;padding:1px;height:1.6em;line-height:1.6em;text-align:center;white-space:nowrap;}.yui-skin-sam .yui-calendar td.calcell a{color:#0066cc;display:block;height:100%;text-decoration:none;}.yui-skin-sam .yui-calendar td.calcell.today{background-color:#000;}.yui-skin-sam .yui-calendar td.calcell.today a{background-color:#fff;}.yui-skin-sam .yui-calendar td.calcell.oom{background-color:#cccccc;color:#a6a6a6;cursor:default;}.yui-skin-sam .yui-calendar td.calcell.selected{background-color:#fff;color:#000;}.yui-skin-sam .yui-calendar td.calcell.selected a{background-color:#b3d4ff;color:#000;}.yui-skin-sam .yui-calendar td.calcell.calcellhover{background-color:#426fd9;color:#fff;cursor:pointer;}.yui-skin-sam .yui-calendar td.calcell.calcellhover a{background-color:#426fd9;color:#fff;}.yui-skin-sam .yui-calendar td.calcell.previous{color:#e0e0e0;}.yui-skin-sam .yui-calendar td.calcell.restricted{text-decoration:line-through;}.yui-skin-sam .yui-calendar td.calcell.highlight1{background-color:#ccff99;}.yui-skin-sam .yui-calendar td.calcell.highlight2{background-color:#99ccff;}.yui-skin-sam .yui-calendar td.calcell.highlight3{background-color:#ffcccc;}.yui-skin-sam .yui-calendar td.calcell.highlight4{background-color:#ccff99;} Added: branches/trunk-reorg/projects/scrabble/website/yui/calendar/calendar-min.js =================================================================== --- branches/trunk-reorg/projects/scrabble/website/yui/calendar/calendar-min.js 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/website/yui/calendar/calendar-min.js 2007-11-05 10:14:48 UTC (rev 2255) @@ -0,0 +1,16 @@ +/* +Copyright (c) 2007, Yahoo! Inc. All rights reserved. +Code licensed under the BSD License: +http://developer.yahoo.net/yui/license.txt +version: 2.3.1 +*/ +(function(){YAHOO.util.Config=function(D){if(D){this.init(D);}if(!D){}};var B=YAHOO.lang,C=YAHOO.util.CustomEvent,A=YAHOO.util.Config;A.CONFIG_CHANGED_EVENT="configChanged";A.BOOLEAN_TYPE="boolean";A.prototype={owner:null,queueInProgress:false,config:null,initialConfig:null,eventQueue:null,configChangedEvent:null,init:function(D){this.owner=D;this.configChangedEvent=this.createEvent(A.CONFIG_CHANGED_EVENT);this.configChangedEvent.signature=C.LIST;this.queueInProgress=false;this.config={};this.initialConfig={};this.eventQueue=[];},checkBoolean:function(D){return(typeof D==A.BOOLEAN_TYPE);},checkNumber:function(D){return(!isNaN(D));},fireEvent:function(D,F){var E=this.config[D];if(E&&E.event){E.event.fire(F);}},addProperty:function(E,D){E=E.toLowerCase();this.config[E]=D;D.event=this.createEvent(E,{scope:this.owner});D.event.signature=C.LIST;D.key=E;if(D.handler){D.event.subscribe(D.handler,this.owner);}this.setProperty(E,D.value,true);if(!D.suppressEvent){this.queueProperty(E,D.value);}},getConfig:function(){var D={},F,E;for(F in this.config){E=this.config[F];if(E&&E.event){D[F]=E.value;}}return D;},getProperty:function(D){var E=this.config[D.toLowerCase()];if(E&&E.event){return E.value;}else{return undefined;}},resetProperty:function(D){D=D.toLowerCase();var E=this.config[D];if(E&&E.event){if(this.initialConfig[D]&&!B.isUndefined(this.initialConfig[D])){this.setProperty(D,this.initialConfig[D]);return true;}}else{return false;}},setProperty:function(E,G,D){var F;E=E.toLowerCase();if(this.queueInProgress&&!D){this.queueProperty(E,G);return true;}else{F=this.config[E];if(F&&F.event){if(F.validator&&!F.validator(G)){return false;}else{F.value=G;if(!D){this.fireEvent(E,G);this.configChangedEvent.fire([E,G]);}return true;}}else{return false;}}},queueProperty:function(S,P){S=S.toLowerCase();var R=this.config[S],K=false,J,G,H,I,O,Q,F,M,N,D,L,T,E;if(R&&R.event){if(!B.isUndefined(P)&&R.validator&&!R.validator(P)){return false;}else{if(!B.isUndefined(P)){R.value=P;}else{P=R.value;}K=false;J=this.eventQueue.length;for(L=0;L0){G=F-1;do{D=E.subscribers[G];if(D&&D.obj==I&&D.fn==H){return true;}}while(G--);}return false;};YAHOO.lang.augmentProto(A,YAHOO.util.EventProvider);}());YAHOO.widget.DateMath={DAY:"D",WEEK:"W",YEAR:"Y",MONTH:"M",ONE_DAY_MS:1000*60*60*24,add:function(A,D,C){var F=new Date(A.getTime());switch(D){case this.MONTH:var E=A.getMonth()+C;var B=0;if(E<0){while(E<0){E+=12;B-=1;}}else{if(E>11){while(E>11){E-=12;B+=1;}}}F.setMonth(E);F.setFullYear(A.getFullYear()+B);break;case this.DAY:F.setDate(A.getDate()+C);break;case this.YEAR:F.setFullYear(A.getFullYear()+C);break;case this.WEEK:F.setDate(A.getDate()+(C*7));break;}return F;},subtract:function(A,C,B){return this.add(A,C,(B*-1));},before:function(C,B){var A=B.getTime();if(C.getTime()A){return true;}else{return false;}},between:function(B,A,C){if(this.after(B,A)&&this.before(B,C)){return true;}else{return false;}},getJan1:function(A){return new Date(A,0,1);},getDayOffset:function(B,D){var C=this.getJan1(D);var A=Math.ceil((B.getTime()-C.getTime())/this.ONE_DAY_MS);return A;},getWeekNumber:function(C,F){C=this.clearTime(C);var E=new Date(C.getTime()+(4*this.ONE_DAY_MS)-((C.getDay())*this.ONE_DAY_MS));var B=new Date(E.getFullYear(),0,1);var A=((E.getTime()-B.getTime())/this.ONE_DAY_MS)-1;var D=Math.ceil((A)/7);return D;},isYearOverlapWeek:function(A){var C=false;var B=this.add(A,this.DAY,6);if(B.getFullYear()!=A.getFullYear()){C=true;}return C;},isMonthOverlapWeek:function(A){var C=false;var B=this.add(A,this.DAY,6);if(B.getMonth()!=A.getMonth()){C=true;}return C;},findMonthStart:function(A){var B=new Date(A.getFullYear(),A.getMonth(),1);return B;},findMonthEnd:function(B){var D=this.findMonthStart(B);var C=this.add(D,this.MONTH,1);var A=this.subtract(C,this.DAY,1);return A;},clearTime:function(A){A.setHours(12,0,0,0); +return A;}};YAHOO.widget.Calendar=function(C,A,B){this.init(C,A,B);};YAHOO.widget.Calendar.IMG_ROOT=null;YAHOO.widget.Calendar.DATE="D";YAHOO.widget.Calendar.MONTH_DAY="MD";YAHOO.widget.Calendar.WEEKDAY="WD";YAHOO.widget.Calendar.RANGE="R";YAHOO.widget.Calendar.MONTH="M";YAHOO.widget.Calendar.DISPLAY_DAYS=42;YAHOO.widget.Calendar.STOP_RENDER="S";YAHOO.widget.Calendar.SHORT="short";YAHOO.widget.Calendar.LONG="long";YAHOO.widget.Calendar.MEDIUM="medium";YAHOO.widget.Calendar.ONE_CHAR="1char";YAHOO.widget.Calendar._DEFAULT_CONFIG={PAGEDATE:{key:"pagedate",value:null},SELECTED:{key:"selected",value:null},TITLE:{key:"title",value:""},CLOSE:{key:"close",value:false},IFRAME:{key:"iframe",value:(YAHOO.env.ua.ie&&YAHOO.env.ua.ie<=6)?true:false},MINDATE:{key:"mindate",value:null},MAXDATE:{key:"maxdate",value:null},MULTI_SELECT:{key:"multi_select",value:false},START_WEEKDAY:{key:"start_weekday",value:0},SHOW_WEEKDAYS:{key:"show_weekdays",value:true},SHOW_WEEK_HEADER:{key:"show_week_header",value:false},SHOW_WEEK_FOOTER:{key:"show_week_footer",value:false},HIDE_BLANK_WEEKS:{key:"hide_blank_weeks",value:false},NAV_ARROW_LEFT:{key:"nav_arrow_left",value:null},NAV_ARROW_RIGHT:{key:"nav_arrow_right",value:null},MONTHS_SHORT:{key:"months_short",value:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]},MONTHS_LONG:{key:"months_long",value:["January","February","March","April","May","June","July","August","September","October","November","December"]},WEEKDAYS_1CHAR:{key:"weekdays_1char",value:["S","M","T","W","T","F","S"]},WEEKDAYS_SHORT:{key:"weekdays_short",value:["Su","Mo","Tu","We","Th","Fr","Sa"]},WEEKDAYS_MEDIUM:{key:"weekdays_medium",value:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]},WEEKDAYS_LONG:{key:"weekdays_long",value:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},LOCALE_MONTHS:{key:"locale_months",value:"long"},LOCALE_WEEKDAYS:{key:"locale_weekdays",value:"short"},DATE_DELIMITER:{key:"date_delimiter",value:","},DATE_FIELD_DELIMITER:{key:"date_field_delimiter",value:"/"},DATE_RANGE_DELIMITER:{key:"date_range_delimiter",value:"-"},MY_MONTH_POSITION:{key:"my_month_position",value:1},MY_YEAR_POSITION:{key:"my_year_position",value:2},MD_MONTH_POSITION:{key:"md_month_position",value:1},MD_DAY_POSITION:{key:"md_day_position",value:2},MDY_MONTH_POSITION:{key:"mdy_month_position",value:1},MDY_DAY_POSITION:{key:"mdy_day_position",value:2},MDY_YEAR_POSITION:{key:"mdy_year_position",value:3},MY_LABEL_MONTH_POSITION:{key:"my_label_month_position",value:1},MY_LABEL_YEAR_POSITION:{key:"my_label_year_position",value:2},MY_LABEL_MONTH_SUFFIX:{key:"my_label_month_suffix",value:" "},MY_LABEL_YEAR_SUFFIX:{key:"my_label_year_suffix",value:""}};YAHOO.widget.Calendar._EVENT_TYPES={BEFORE_SELECT:"beforeSelect",SELECT:"select",BEFORE_DESELECT:"beforeDeselect",DESELECT:"deselect",CHANGE_PAGE:"changePage",BEFORE_RENDER:"beforeRender",RENDER:"render",RESET:"reset",CLEAR:"clear"};YAHOO.widget.Calendar._STYLES={CSS_ROW_HEADER:"calrowhead",CSS_ROW_FOOTER:"calrowfoot",CSS_CELL:"calcell",CSS_CELL_SELECTOR:"selector",CSS_CELL_SELECTED:"selected",CSS_CELL_SELECTABLE:"selectable",CSS_CELL_RESTRICTED:"restricted",CSS_CELL_TODAY:"today",CSS_CELL_OOM:"oom",CSS_CELL_OOB:"previous",CSS_HEADER:"calheader",CSS_HEADER_TEXT:"calhead",CSS_BODY:"calbody",CSS_WEEKDAY_CELL:"calweekdaycell",CSS_WEEKDAY_ROW:"calweekdayrow",CSS_FOOTER:"calfoot",CSS_CALENDAR:"yui-calendar",CSS_SINGLE:"single",CSS_CONTAINER:"yui-calcontainer",CSS_NAV_LEFT:"calnavleft",CSS_NAV_RIGHT:"calnavright",CSS_CLOSE:"calclose",CSS_CELL_TOP:"calcelltop",CSS_CELL_LEFT:"calcellleft",CSS_CELL_RIGHT:"calcellright",CSS_CELL_BOTTOM:"calcellbottom",CSS_CELL_HOVER:"calcellhover",CSS_CELL_HIGHLIGHT1:"highlight1",CSS_CELL_HIGHLIGHT2:"highlight2",CSS_CELL_HIGHLIGHT3:"highlight3",CSS_CELL_HIGHLIGHT4:"highlight4"};YAHOO.widget.Calendar.prototype={Config:null,parent:null,index:-1,cells:null,cellDates:null,id:null,oDomContainer:null,today:null,renderStack:null,_renderStack:null,_selectedDates:null,domEventMap:null};YAHOO.widget.Calendar.prototype.init=function(C,A,B){this.initEvents();this.today=new Date();YAHOO.widget.DateMath.clearTime(this.today);this.id=C;this.oDomContainer=document.getElementById(A);this.cfg=new YAHOO.util.Config(this);this.Options={};this.Locale={};this.initStyles();YAHOO.util.Dom.addClass(this.oDomContainer,this.Style.CSS_CONTAINER);YAHOO.util.Dom.addClass(this.oDomContainer,this.Style.CSS_SINGLE);this.cellDates=[];this.cells=[];this.renderStack=[];this._renderStack=[];this.setupConfig();if(B){this.cfg.applyConfig(B,true);}this.cfg.fireQueue();};YAHOO.widget.Calendar.prototype.configIframe=function(C,B,D){var A=B[0];if(!this.parent){if(YAHOO.util.Dom.inDocument(this.oDomContainer)){if(A){var E=YAHOO.util.Dom.getStyle(this.oDomContainer,"position");if(E=="absolute"||E=="relative"){if(!YAHOO.util.Dom.inDocument(this.iframe)){this.iframe=document.createElement("iframe");this.iframe.src="javascript:false;";YAHOO.util.Dom.setStyle(this.iframe,"opacity","0");if(YAHOO.env.ua.ie&&YAHOO.env.ua.ie<=6){YAHOO.util.Dom.addClass(this.iframe,"fixedsize");}this.oDomContainer.insertBefore(this.iframe,this.oDomContainer.firstChild);}}}else{if(this.iframe){if(this.iframe.parentNode){this.iframe.parentNode.removeChild(this.iframe);}this.iframe=null;}}}}};YAHOO.widget.Calendar.prototype.configTitle=function(B,A,C){var E=A[0],F;if(E){this.createTitleBar(E);}else{var D=this.cfg.getProperty(YAHOO.widget.Calendar._DEFAULT_CONFIG.CLOSE.key);if(!D){this.removeTitleBar();}else{this.createTitleBar(" ");}}};YAHOO.widget.Calendar.prototype.configClose=function(B,A,C){var E=A[0],D=this.cfg.getProperty(YAHOO.widget.Calendar._DEFAULT_CONFIG.TITLE.key);if(E){if(!D){this.createTitleBar(" ");}this.createCloseButton();}else{this.removeCloseButton();if(!D){this.removeTitleBar();}}};YAHOO.widget.Calendar.prototype.initEvents=function(){var A=YAHOO.widget.Calendar._EVENT_TYPES;this.beforeSelectEvent=new YAHOO.util.CustomEvent(A.BEFORE_SELECT);this.selectEvent=new YAHOO.util.CustomEvent(A.SELECT); +this.beforeDeselectEvent=new YAHOO.util.CustomEvent(A.BEFORE_DESELECT);this.deselectEvent=new YAHOO.util.CustomEvent(A.DESELECT);this.changePageEvent=new YAHOO.util.CustomEvent(A.CHANGE_PAGE);this.beforeRenderEvent=new YAHOO.util.CustomEvent(A.BEFORE_RENDER);this.renderEvent=new YAHOO.util.CustomEvent(A.RENDER);this.resetEvent=new YAHOO.util.CustomEvent(A.RESET);this.clearEvent=new YAHOO.util.CustomEvent(A.CLEAR);this.beforeSelectEvent.subscribe(this.onBeforeSelect,this,true);this.selectEvent.subscribe(this.onSelect,this,true);this.beforeDeselectEvent.subscribe(this.onBeforeDeselect,this,true);this.deselectEvent.subscribe(this.onDeselect,this,true);this.changePageEvent.subscribe(this.onChangePage,this,true);this.renderEvent.subscribe(this.onRender,this,true);this.resetEvent.subscribe(this.onReset,this,true);this.clearEvent.subscribe(this.onClear,this,true);};YAHOO.widget.Calendar.prototype.doSelectCell=function(G,A){var L,F,I,C;var H=YAHOO.util.Event.getTarget(G);var B=H.tagName.toLowerCase();var E=false;while(B!="td"&&!YAHOO.util.Dom.hasClass(H,A.Style.CSS_CELL_SELECTABLE)){if(!E&&B=="a"&&YAHOO.util.Dom.hasClass(H,A.Style.CSS_CELL_SELECTOR)){E=true;}H=H.parentNode;B=H.tagName.toLowerCase();if(B=="html"){return ;}}if(E){YAHOO.util.Event.preventDefault(G);}L=H;if(YAHOO.util.Dom.hasClass(L,A.Style.CSS_CELL_SELECTABLE)){F=L.id.split("cell")[1];I=A.cellDates[F];C=new Date(I[0],I[1]-1,I[2]);var K;if(A.Options.MULTI_SELECT){K=L.getElementsByTagName("a")[0];if(K){K.blur();}var D=A.cellDates[F];var J=A._indexOfSelectedFieldArray(D);if(J>-1){A.deselectCell(F);}else{A.selectCell(F);}}else{K=L.getElementsByTagName("a")[0];if(K){K.blur();}A.selectCell(F);}}};YAHOO.widget.Calendar.prototype.doCellMouseOver=function(C,B){var A;if(C){A=YAHOO.util.Event.getTarget(C);}else{A=this;}while(A.tagName.toLowerCase()!="td"){A=A.parentNode;if(A.tagName.toLowerCase()=="html"){return ;}}if(YAHOO.util.Dom.hasClass(A,B.Style.CSS_CELL_SELECTABLE)){YAHOO.util.Dom.addClass(A,B.Style.CSS_CELL_HOVER);}};YAHOO.widget.Calendar.prototype.doCellMouseOut=function(C,B){var A;if(C){A=YAHOO.util.Event.getTarget(C);}else{A=this;}while(A.tagName.toLowerCase()!="td"){A=A.parentNode;if(A.tagName.toLowerCase()=="html"){return ;}}if(YAHOO.util.Dom.hasClass(A,B.Style.CSS_CELL_SELECTABLE)){YAHOO.util.Dom.removeClass(A,B.Style.CSS_CELL_HOVER);}};YAHOO.widget.Calendar.prototype.setupConfig=function(){var A=YAHOO.widget.Calendar._DEFAULT_CONFIG;this.cfg.addProperty(A.PAGEDATE.key,{value:new Date(),handler:this.configPageDate});this.cfg.addProperty(A.SELECTED.key,{value:[],handler:this.configSelected});this.cfg.addProperty(A.TITLE.key,{value:A.TITLE.value,handler:this.configTitle});this.cfg.addProperty(A.CLOSE.key,{value:A.CLOSE.value,handler:this.configClose});this.cfg.addProperty(A.IFRAME.key,{value:A.IFRAME.value,handler:this.configIframe,validator:this.cfg.checkBoolean});this.cfg.addProperty(A.MINDATE.key,{value:A.MINDATE.value,handler:this.configMinDate});this.cfg.addProperty(A.MAXDATE.key,{value:A.MAXDATE.value,handler:this.configMaxDate});this.cfg.addProperty(A.MULTI_SELECT.key,{value:A.MULTI_SELECT.value,handler:this.configOptions,validator:this.cfg.checkBoolean});this.cfg.addProperty(A.START_WEEKDAY.key,{value:A.START_WEEKDAY.value,handler:this.configOptions,validator:this.cfg.checkNumber});this.cfg.addProperty(A.SHOW_WEEKDAYS.key,{value:A.SHOW_WEEKDAYS.value,handler:this.configOptions,validator:this.cfg.checkBoolean});this.cfg.addProperty(A.SHOW_WEEK_HEADER.key,{value:A.SHOW_WEEK_HEADER.value,handler:this.configOptions,validator:this.cfg.checkBoolean});this.cfg.addProperty(A.SHOW_WEEK_FOOTER.key,{value:A.SHOW_WEEK_FOOTER.value,handler:this.configOptions,validator:this.cfg.checkBoolean});this.cfg.addProperty(A.HIDE_BLANK_WEEKS.key,{value:A.HIDE_BLANK_WEEKS.value,handler:this.configOptions,validator:this.cfg.checkBoolean});this.cfg.addProperty(A.NAV_ARROW_LEFT.key,{value:A.NAV_ARROW_LEFT.value,handler:this.configOptions});this.cfg.addProperty(A.NAV_ARROW_RIGHT.key,{value:A.NAV_ARROW_RIGHT.value,handler:this.configOptions});this.cfg.addProperty(A.MONTHS_SHORT.key,{value:A.MONTHS_SHORT.value,handler:this.configLocale});this.cfg.addProperty(A.MONTHS_LONG.key,{value:A.MONTHS_LONG.value,handler:this.configLocale});this.cfg.addProperty(A.WEEKDAYS_1CHAR.key,{value:A.WEEKDAYS_1CHAR.value,handler:this.configLocale});this.cfg.addProperty(A.WEEKDAYS_SHORT.key,{value:A.WEEKDAYS_SHORT.value,handler:this.configLocale});this.cfg.addProperty(A.WEEKDAYS_MEDIUM.key,{value:A.WEEKDAYS_MEDIUM.value,handler:this.configLocale});this.cfg.addProperty(A.WEEKDAYS_LONG.key,{value:A.WEEKDAYS_LONG.value,handler:this.configLocale});var B=function(){this.cfg.refireEvent(A.LOCALE_MONTHS.key);this.cfg.refireEvent(A.LOCALE_WEEKDAYS.key);};this.cfg.subscribeToConfigEvent(A.START_WEEKDAY.key,B,this,true);this.cfg.subscribeToConfigEvent(A.MONTHS_SHORT.key,B,this,true);this.cfg.subscribeToConfigEvent(A.MONTHS_LONG.key,B,this,true);this.cfg.subscribeToConfigEvent(A.WEEKDAYS_1CHAR.key,B,this,true);this.cfg.subscribeToConfigEvent(A.WEEKDAYS_SHORT.key,B,this,true);this.cfg.subscribeToConfigEvent(A.WEEKDAYS_MEDIUM.key,B,this,true);this.cfg.subscribeToConfigEvent(A.WEEKDAYS_LONG.key,B,this,true);this.cfg.addProperty(A.LOCALE_MONTHS.key,{value:A.LOCALE_MONTHS.value,handler:this.configLocaleValues});this.cfg.addProperty(A.LOCALE_WEEKDAYS.key,{value:A.LOCALE_WEEKDAYS.value,handler:this.configLocaleValues});this.cfg.addProperty(A.DATE_DELIMITER.key,{value:A.DATE_DELIMITER.value,handler:this.configLocale});this.cfg.addProperty(A.DATE_FIELD_DELIMITER.key,{value:A.DATE_FIELD_DELIMITER.value,handler:this.configLocale});this.cfg.addProperty(A.DATE_RANGE_DELIMITER.key,{value:A.DATE_RANGE_DELIMITER.value,handler:this.configLocale});this.cfg.addProperty(A.MY_MONTH_POSITION.key,{value:A.MY_MONTH_POSITION.value,handler:this.configLocale,validator:this.cfg.checkNumber});this.cfg.addProperty(A.MY_YEAR_POSITION.key,{value:A.MY_YEAR_POSITION.value,handler:this.configLocale,validator:this.cfg.checkNumber}); +this.cfg.addProperty(A.MD_MONTH_POSITION.key,{value:A.MD_MONTH_POSITION.value,handler:this.configLocale,validator:this.cfg.checkNumber});this.cfg.addProperty(A.MD_DAY_POSITION.key,{value:A.MD_DAY_POSITION.value,handler:this.configLocale,validator:this.cfg.checkNumber});this.cfg.addProperty(A.MDY_MONTH_POSITION.key,{value:A.MDY_MONTH_POSITION.value,handler:this.configLocale,validator:this.cfg.checkNumber});this.cfg.addProperty(A.MDY_DAY_POSITION.key,{value:A.MDY_DAY_POSITION.value,handler:this.configLocale,validator:this.cfg.checkNumber});this.cfg.addProperty(A.MDY_YEAR_POSITION.key,{value:A.MDY_YEAR_POSITION.value,handler:this.configLocale,validator:this.cfg.checkNumber});this.cfg.addProperty(A.MY_LABEL_MONTH_POSITION.key,{value:A.MY_LABEL_MONTH_POSITION.value,handler:this.configLocale,validator:this.cfg.checkNumber});this.cfg.addProperty(A.MY_LABEL_YEAR_POSITION.key,{value:A.MY_LABEL_YEAR_POSITION.value,handler:this.configLocale,validator:this.cfg.checkNumber});this.cfg.addProperty(A.MY_LABEL_MONTH_SUFFIX.key,{value:A.MY_LABEL_MONTH_SUFFIX.value,handler:this.configLocale});this.cfg.addProperty(A.MY_LABEL_YEAR_SUFFIX.key,{value:A.MY_LABEL_YEAR_SUFFIX.value,handler:this.configLocale});};YAHOO.widget.Calendar.prototype.configPageDate=function(B,A,C){this.cfg.setProperty(YAHOO.widget.Calendar._DEFAULT_CONFIG.PAGEDATE.key,this._parsePageDate(A[0]),true);};YAHOO.widget.Calendar.prototype.configMinDate=function(B,A,C){var D=A[0];if(YAHOO.lang.isString(D)){D=this._parseDate(D);this.cfg.setProperty(YAHOO.widget.Calendar._DEFAULT_CONFIG.MINDATE.key,new Date(D[0],(D[1]-1),D[2]));}};YAHOO.widget.Calendar.prototype.configMaxDate=function(B,A,C){var D=A[0];if(YAHOO.lang.isString(D)){D=this._parseDate(D);this.cfg.setProperty(YAHOO.widget.Calendar._DEFAULT_CONFIG.MAXDATE.key,new Date(D[0],(D[1]-1),D[2]));}};YAHOO.widget.Calendar.prototype.configSelected=function(C,A,E){var B=A[0];var D=YAHOO.widget.Calendar._DEFAULT_CONFIG.SELECTED.key;if(B){if(YAHOO.lang.isString(B)){this.cfg.setProperty(D,this._parseDates(B),true);}}if(!this._selectedDates){this._selectedDates=this.cfg.getProperty(D);}};YAHOO.widget.Calendar.prototype.configOptions=function(B,A,C){this.Options[B.toUpperCase()]=A[0];};YAHOO.widget.Calendar.prototype.configLocale=function(C,B,D){var A=YAHOO.widget.Calendar._DEFAULT_CONFIG;this.Locale[C.toUpperCase()]=B[0];this.cfg.refireEvent(A.LOCALE_MONTHS.key);this.cfg.refireEvent(A.LOCALE_WEEKDAYS.key);};YAHOO.widget.Calendar.prototype.configLocaleValues=function(D,C,E){var B=YAHOO.widget.Calendar._DEFAULT_CONFIG;D=D.toLowerCase();var G=C[0];switch(D){case B.LOCALE_MONTHS.key:switch(G){case YAHOO.widget.Calendar.SHORT:this.Locale.LOCALE_MONTHS=this.cfg.getProperty(B.MONTHS_SHORT.key).concat();break;case YAHOO.widget.Calendar.LONG:this.Locale.LOCALE_MONTHS=this.cfg.getProperty(B.MONTHS_LONG.key).concat();break;}break;case B.LOCALE_WEEKDAYS.key:switch(G){case YAHOO.widget.Calendar.ONE_CHAR:this.Locale.LOCALE_WEEKDAYS=this.cfg.getProperty(B.WEEKDAYS_1CHAR.key).concat();break;case YAHOO.widget.Calendar.SHORT:this.Locale.LOCALE_WEEKDAYS=this.cfg.getProperty(B.WEEKDAYS_SHORT.key).concat();break;case YAHOO.widget.Calendar.MEDIUM:this.Locale.LOCALE_WEEKDAYS=this.cfg.getProperty(B.WEEKDAYS_MEDIUM.key).concat();break;case YAHOO.widget.Calendar.LONG:this.Locale.LOCALE_WEEKDAYS=this.cfg.getProperty(B.WEEKDAYS_LONG.key).concat();break;}var F=this.cfg.getProperty(B.START_WEEKDAY.key);if(F>0){for(var A=0;A";}this.oDomContainer.appendChild(E);return E;};YAHOO.widget.Calendar.prototype.removeCloseButton=function(){var A=YAHOO.util.Dom.getElementsByClassName("link-close","a",this.oDomContainer)[0]||null;if(A){YAHOO.util.Event.purgeElement(A);this.oDomContainer.removeChild(A);}};YAHOO.widget.Calendar.prototype.renderHeader=function(E){var H=7;var F="us/tr/callt.gif";var G="us/tr/calrt.gif";var L=YAHOO.widget.Calendar._DEFAULT_CONFIG;if(this.cfg.getProperty(L.SHOW_WEEK_HEADER.key)){H+=1;}if(this.cfg.getProperty(L.SHOW_WEEK_FOOTER.key)){H+=1;}E[E.length]="";E[E.length]="";E[E.length]="";E[E.length]="
";var J,K=false;if(this.parent){if(this.index===0){J=true;}if(this.index==(this.parent.cfg.getProperty("pages")-1)){K=true;}}else{J=true;K=true;}var B=this.parent||this;if(J){var A=this.cfg.getProperty(L.NAV_ARROW_LEFT.key);if(A===null&&YAHOO.widget.Calendar.IMG_ROOT!==null){A=YAHOO.widget.Calendar.IMG_ROOT+F;}var C=(A===null)?"":" style=\"background-image:url("+A+")\"";E[E.length]=" ";}E[E.length]=this.buildMonthLabel();if(K){var D=this.cfg.getProperty(L.NAV_ARROW_RIGHT.key);if(D===null&&YAHOO.widget.Calendar.IMG_ROOT!==null){D=YAHOO.widget.Calendar.IMG_ROOT+G;}var I=(D===null)?"":" style=\"background-image:url("+D+")\"";E[E.length]=" ";}E[E.length]="
\n\n";if(this.cfg.getProperty(L.SHOW_WEEKDAYS.key)){E=this.buildWeekdays(E);}E[E.length]="";return E;};YAHOO.widget.Calendar.prototype.buildWeekdays=function(C){var A=YAHOO.widget.Calendar._DEFAULT_CONFIG;C[C.length]="";if(this.cfg.getProperty(A.SHOW_WEEK_HEADER.key)){C[C.length]=" ";}for(var B=0;B"+this.Locale.LOCALE_WEEKDAYS[B]+"";}if(this.cfg.getProperty(A.SHOW_WEEK_FOOTER.key)){C[C.length]=" ";}C[C.length]="";return C;};YAHOO.widget.Calendar.prototype.renderBody=function(c,a){var m=YAHOO.widget.Calendar._DEFAULT_CONFIG;var AC=this.cfg.getProperty(m.START_WEEKDAY.key);this.preMonthDays=c.getDay();if(AC>0){this.preMonthDays-=AC;}if(this.preMonthDays<0){this.preMonthDays+=7;}this.monthDays=YAHOO.widget.DateMath.findMonthEnd(c).getDate();this.postMonthDays=YAHOO.widget.Calendar.DISPLAY_DAYS-this.preMonthDays-this.monthDays;c=YAHOO.widget.DateMath.subtract(c,YAHOO.widget.DateMath.DAY,this.preMonthDays);var Q,H;var G="w";var W="_cell";var U="wd";var k="d";var I;var h;var O=this.today.getFullYear();var j=this.today.getMonth();var D=this.today.getDate();var q=this.cfg.getProperty(m.PAGEDATE.key);var C=this.cfg.getProperty(m.HIDE_BLANK_WEEKS.key);var Z=this.cfg.getProperty(m.SHOW_WEEK_FOOTER.key);var T=this.cfg.getProperty(m.SHOW_WEEK_HEADER.key);var M=this.cfg.getProperty(m.MINDATE.key);var S=this.cfg.getProperty(m.MAXDATE.key);if(M){M=YAHOO.widget.DateMath.clearTime(M);}if(S){S=YAHOO.widget.DateMath.clearTime(S);}a[a.length]="";var AA=0;var J=document.createElement("div");var b=document.createElement("td");J.appendChild(b);var z=new Date(q.getFullYear(),0,1);var o=this.parent||this;for(var u=0;u<6;u++){Q=YAHOO.widget.DateMath.getWeekNumber(c,q.getFullYear(),AC);H=G+Q;if(u!==0&&C===true&&c.getMonth()!=q.getMonth()){break;}else{a[a.length]="";if(T){a=this.renderRowHeader(Q,a);}for(var AB=0;AB<7;AB++){I=[];h=null;this.clearElement(b);b.className=this.Style.CSS_CELL;b.id=this.id+W+AA;if(c.getDate()==D&&c.getMonth()==j&&c.getFullYear()==O){I[I.length]=o.renderCellStyleToday;}var R=[c.getFullYear(),c.getMonth()+1,c.getDate()];this.cellDates[this.cellDates.length]=R;if(c.getMonth()!=q.getMonth()){I[I.length]=o.renderCellNotThisMonth;}else{YAHOO.util.Dom.addClass(b,U+c.getDay());YAHOO.util.Dom.addClass(b,k+c.getDate());for(var t=0;t=y.getTime()&&c.getTime()<=w.getTime()){h=l[2];if(c.getTime()==w.getTime()){this.renderStack.splice(t,1);}}break;case YAHOO.widget.Calendar.WEEKDAY:var K=l[1][0];if(c.getDay()+1==K){h=l[2];}break;case YAHOO.widget.Calendar.MONTH:B=l[1][0];if(c.getMonth()+1==B){h=l[2];}break;}if(h){I[I.length]=h;}}}if(this._indexOfSelectedFieldArray(R)>-1){I[I.length]=o.renderCellStyleSelected;}if((M&&(c.getTime()S.getTime()))){I[I.length]=o.renderOutOfBoundsDate;}else{I[I.length]=o.styleCellDefault;I[I.length]=o.renderCellDefault;}for(var n=0;n=0&&AA<=6){YAHOO.util.Dom.addClass(b,this.Style.CSS_CELL_TOP);}if((AA%7)===0){YAHOO.util.Dom.addClass(b,this.Style.CSS_CELL_LEFT);}if(((AA+1)%7)===0){YAHOO.util.Dom.addClass(b,this.Style.CSS_CELL_RIGHT);}var f=this.postMonthDays;if(C&&f>=7){var N=Math.floor(f/7);for(var v=0; +v=((this.preMonthDays+f+this.monthDays)-7)){YAHOO.util.Dom.addClass(b,this.Style.CSS_CELL_BOTTOM);}a[a.length]=J.innerHTML;AA++;}if(Z){a=this.renderRowFooter(Q,a);}a[a.length]="";}}a[a.length]="";return a;};YAHOO.widget.Calendar.prototype.renderFooter=function(A){return A;};YAHOO.widget.Calendar.prototype.render=function(){this.beforeRenderEvent.fire();var A=YAHOO.widget.Calendar._DEFAULT_CONFIG;var C=YAHOO.widget.DateMath.findMonthStart(this.cfg.getProperty(A.PAGEDATE.key));this.resetRenderers();this.cellDates.length=0;YAHOO.util.Event.purgeElement(this.oDomContainer,true);var B=[];B[B.length]="";B=this.renderHeader(B);B=this.renderBody(C,B);B=this.renderFooter(B);B[B.length]="
";this.oDomContainer.innerHTML=B.join("\n");this.applyListeners();this.cells=this.oDomContainer.getElementsByTagName("td");this.cfg.refireEvent(A.TITLE.key);this.cfg.refireEvent(A.CLOSE.key);this.cfg.refireEvent(A.IFRAME.key);this.renderEvent.fire();};YAHOO.widget.Calendar.prototype.applyListeners=function(){var K=this.oDomContainer;var B=this.parent||this;var G="a";var D="mousedown";var H=YAHOO.util.Dom.getElementsByClassName(this.Style.CSS_NAV_LEFT,G,K);var C=YAHOO.util.Dom.getElementsByClassName(this.Style.CSS_NAV_RIGHT,G,K);if(H&&H.length>0){this.linkLeft=H[0];YAHOO.util.Event.addListener(this.linkLeft,D,B.previousMonth,B,true);}if(C&&C.length>0){this.linkRight=C[0];YAHOO.util.Event.addListener(this.linkRight,D,B.nextMonth,B,true);}if(this.domEventMap){var E,A;for(var M in this.domEventMap){if(YAHOO.lang.hasOwnProperty(this.domEventMap,M)){var I=this.domEventMap[M];if(!(I instanceof Array)){I=[I];}for(var F=0;F"+B+"";return A;};YAHOO.widget.Calendar.prototype.renderRowFooter=function(B,A){A[A.length]=""+B+"";return A;};YAHOO.widget.Calendar.prototype.renderCellDefault=function(B,A){A.innerHTML=""+this.buildDayLabel(B)+"";};YAHOO.widget.Calendar.prototype.styleCellDefault=function(B,A){YAHOO.util.Dom.addClass(A,this.Style.CSS_CELL_SELECTABLE);};YAHOO.widget.Calendar.prototype.renderCellStyleHighlight1=function(B,A){YAHOO.util.Dom.addClass(A,this.Style.CSS_CELL_HIGHLIGHT1);};YAHOO.widget.Calendar.prototype.renderCellStyleHighlight2=function(B,A){YAHOO.util.Dom.addClass(A,this.Style.CSS_CELL_HIGHLIGHT2);};YAHOO.widget.Calendar.prototype.renderCellStyleHighlight3=function(B,A){YAHOO.util.Dom.addClass(A,this.Style.CSS_CELL_HIGHLIGHT3);};YAHOO.widget.Calendar.prototype.renderCellStyleHighlight4=function(B,A){YAHOO.util.Dom.addClass(A,this.Style.CSS_CELL_HIGHLIGHT4);};YAHOO.widget.Calendar.prototype.renderCellStyleToday=function(B,A){YAHOO.util.Dom.addClass(A,this.Style.CSS_CELL_TODAY);};YAHOO.widget.Calendar.prototype.renderCellStyleSelected=function(B,A){YAHOO.util.Dom.addClass(A,this.Style.CSS_CELL_SELECTED);};YAHOO.widget.Calendar.prototype.renderCellNotThisMonth=function(B,A){YAHOO.util.Dom.addClass(A,this.Style.CSS_CELL_OOM);A.innerHTML=B.getDate();return YAHOO.widget.Calendar.STOP_RENDER;};YAHOO.widget.Calendar.prototype.renderBodyCellRestricted=function(B,A){YAHOO.util.Dom.addClass(A,this.Style.CSS_CELL);YAHOO.util.Dom.addClass(A,this.Style.CSS_CELL_RESTRICTED);A.innerHTML=B.getDate();return YAHOO.widget.Calendar.STOP_RENDER;};YAHOO.widget.Calendar.prototype.addMonths=function(B){var A=YAHOO.widget.Calendar._DEFAULT_CONFIG.PAGEDATE.key;this.cfg.setProperty(A,YAHOO.widget.DateMath.add(this.cfg.getProperty(A),YAHOO.widget.DateMath.MONTH,B));this.resetRenderers();this.changePageEvent.fire();};YAHOO.widget.Calendar.prototype.subtractMonths=function(B){var A=YAHOO.widget.Calendar._DEFAULT_CONFIG.PAGEDATE.key;this.cfg.setProperty(A,YAHOO.widget.DateMath.subtract(this.cfg.getProperty(A),YAHOO.widget.DateMath.MONTH,B));this.resetRenderers();this.changePageEvent.fire();};YAHOO.widget.Calendar.prototype.addYears=function(B){var A=YAHOO.widget.Calendar._DEFAULT_CONFIG.PAGEDATE.key;this.cfg.setProperty(A,YAHOO.widget.DateMath.add(this.cfg.getProperty(A),YAHOO.widget.DateMath.YEAR,B));this.resetRenderers();this.changePageEvent.fire();};YAHOO.widget.Calendar.prototype.subtractYears=function(B){var A=YAHOO.widget.Calendar._DEFAULT_CONFIG.PAGEDATE.key;this.cfg.setProperty(A,YAHOO.widget.DateMath.subtract(this.cfg.getProperty(A),YAHOO.widget.DateMath.YEAR,B));this.resetRenderers();this.changePageEvent.fire();};YAHOO.widget.Calendar.prototype.nextMonth=function(){this.addMonths(1);};YAHOO.widget.Calendar.prototype.previousMonth=function(){this.subtractMonths(1);};YAHOO.widget.Calendar.prototype.nextYear=function(){this.addYears(1);};YAHOO.widget.Calendar.prototype.previousYear=function(){this.subtractYears(1);};YAHOO.widget.Calendar.prototype.reset=function(){var A=YAHOO.widget.Calendar._DEFAULT_CONFIG;this.cfg.resetProperty(A.SELECTED.key);this.cfg.resetProperty(A.PAGEDATE.key);this.resetEvent.fire(); +};YAHOO.widget.Calendar.prototype.clear=function(){var A=YAHOO.widget.Calendar._DEFAULT_CONFIG;this.cfg.setProperty(A.SELECTED.key,[]);this.cfg.setProperty(A.PAGEDATE.key,new Date(this.today.getTime()));this.clearEvent.fire();};YAHOO.widget.Calendar.prototype.select=function(C){var F=this._toFieldArray(C);var B=[];var E=[];var G=YAHOO.widget.Calendar._DEFAULT_CONFIG.SELECTED.key;for(var A=0;A0){if(this.parent){this.parent.cfg.setProperty(G,E);}else{this.cfg.setProperty(G,E);}this.selectEvent.fire(B);}return this.getSelectedDates();};YAHOO.widget.Calendar.prototype.selectCell=function(D){var B=this.cells[D];var H=this.cellDates[D];var G=this._toDate(H);var C=YAHOO.util.Dom.hasClass(B,this.Style.CSS_CELL_SELECTABLE);if(C){this.beforeSelectEvent.fire();var F=YAHOO.widget.Calendar._DEFAULT_CONFIG.SELECTED.key;var E=this.cfg.getProperty(F);var A=H.concat();if(this._indexOfSelectedFieldArray(A)==-1){E[E.length]=A;}if(this.parent){this.parent.cfg.setProperty(F,E);}else{this.cfg.setProperty(F,E);}this.renderCellStyleSelected(G,B);this.selectEvent.fire([A]);this.doCellMouseOut.call(B,null,this);}return this.getSelectedDates();};YAHOO.widget.Calendar.prototype.deselect=function(E){var A=this._toFieldArray(E);var D=[];var G=[];var H=YAHOO.widget.Calendar._DEFAULT_CONFIG.SELECTED.key;for(var B=0;B0){if(this.parent){this.parent.cfg.setProperty(H,G);}else{this.cfg.setProperty(H,G);}this.deselectEvent.fire(D);}return this.getSelectedDates();};YAHOO.widget.Calendar.prototype.deselectCell=function(E){var H=this.cells[E];var B=this.cellDates[E];var F=this._indexOfSelectedFieldArray(B);var G=YAHOO.util.Dom.hasClass(H,this.Style.CSS_CELL_SELECTABLE);if(G){this.beforeDeselectEvent.fire();var I=YAHOO.widget.Calendar._DEFAULT_CONFIG;var D=this.cfg.getProperty(I.SELECTED.key);var C=this._toDate(B);var A=B.concat();if(F>-1){if(this.cfg.getProperty(I.PAGEDATE.key).getMonth()==C.getMonth()&&this.cfg.getProperty(I.PAGEDATE.key).getFullYear()==C.getFullYear()){YAHOO.util.Dom.removeClass(H,this.Style.CSS_CELL_SELECTED);}D.splice(F,1);}if(this.parent){this.parent.cfg.setProperty(I.SELECTED.key,D);}else{this.cfg.setProperty(I.SELECTED.key,D);}this.deselectEvent.fire(A);}return this.getSelectedDates();};YAHOO.widget.Calendar.prototype.deselectAll=function(){this.beforeDeselectEvent.fire();var D=YAHOO.widget.Calendar._DEFAULT_CONFIG.SELECTED.key;var A=this.cfg.getProperty(D);var B=A.length;var C=A.concat();if(this.parent){this.parent.cfg.setProperty(D,[]);}else{this.cfg.setProperty(D,[]);}if(B>0){this.deselectEvent.fire(C);}return this.getSelectedDates();};YAHOO.widget.Calendar.prototype._toFieldArray=function(B){var A=[];if(B instanceof Date){A=[[B.getFullYear(),B.getMonth()+1,B.getDate()]];}else{if(YAHOO.lang.isString(B)){A=this._parseDates(B);}else{if(YAHOO.lang.isArray(B)){for(var C=0;CF.getTime()));};YAHOO.widget.Calendar.prototype._parsePageDate=function(B){var E;var A=YAHOO.widget.Calendar._DEFAULT_CONFIG;if(B){if(B instanceof Date){E=YAHOO.widget.DateMath.findMonthStart(B);}else{var F,D,C;C=B.split(this.cfg.getProperty(A.DATE_FIELD_DELIMITER.key));F=parseInt(C[this.cfg.getProperty(A.MY_MONTH_POSITION.key)-1],10)-1;D=parseInt(C[this.cfg.getProperty(A.MY_YEAR_POSITION.key)-1],10);E=new Date(D,F,1);}}else{E=new Date(this.today.getFullYear(),this.today.getMonth(),1);}return E;};YAHOO.widget.Calendar.prototype.onBeforeSelect=function(){if(this.cfg.getProperty(YAHOO.widget.Calendar._DEFAULT_CONFIG.MULTI_SELECT.key)===false){if(this.parent){this.parent.callChildFunction("clearAllBodyCellStyles",this.Style.CSS_CELL_SELECTED);this.parent.deselectAll();}else{this.clearAllBodyCellStyles(this.Style.CSS_CELL_SELECTED);this.deselectAll();}}};YAHOO.widget.Calendar.prototype.onSelect=function(A){};YAHOO.widget.Calendar.prototype.onBeforeDeselect=function(){};YAHOO.widget.Calendar.prototype.onDeselect=function(A){};YAHOO.widget.Calendar.prototype.onChangePage=function(){this.render();};YAHOO.widget.Calendar.prototype.onRender=function(){};YAHOO.widget.Calendar.prototype.onReset=function(){this.render();};YAHOO.widget.Calendar.prototype.onClear=function(){this.render();};YAHOO.widget.Calendar.prototype.validate=function(){return true;};YAHOO.widget.Calendar.prototype._parseDate=function(C){var D=C.split(this.Locale.DATE_FIELD_DELIMITER);var A;if(D.length==2){A=[D[this.Locale.MD_MONTH_POSITION-1],D[this.Locale.MD_DAY_POSITION-1]];A.type=YAHOO.widget.Calendar.MONTH_DAY;}else{A=[D[this.Locale.MDY_YEAR_POSITION-1],D[this.Locale.MDY_MONTH_POSITION-1],D[this.Locale.MDY_DAY_POSITION-1]]; +A.type=YAHOO.widget.Calendar.DATE;}for(var B=0;B0){this.init(C,A,B);}};YAHOO.widget.CalendarGroup.prototype.init=function(C,A,B){this.initEvents();this.initStyles();this.pages=[];this.id=C;this.containerId=A;this.oDomContainer=document.getElementById(A);YAHOO.util.Dom.addClass(this.oDomContainer,YAHOO.widget.CalendarGroup.CSS_CONTAINER);YAHOO.util.Dom.addClass(this.oDomContainer,YAHOO.widget.CalendarGroup.CSS_MULTI_UP);this.cfg=new YAHOO.util.Config(this);this.Options={};this.Locale={};this.setupConfig();if(B){this.cfg.applyConfig(B,true);}this.cfg.fireQueue();if(YAHOO.env.ua.opera){this.renderEvent.subscribe(this._fixWidth,this,true);}};YAHOO.widget.CalendarGroup.prototype.setupConfig=function(){var A=YAHOO.widget.CalendarGroup._DEFAULT_CONFIG;this.cfg.addProperty(A.PAGES.key,{value:A.PAGES.value,validator:this.cfg.checkNumber,handler:this.configPages});this.cfg.addProperty(A.PAGEDATE.key,{value:new Date(),handler:this.configPageDate});this.cfg.addProperty(A.SELECTED.key,{value:[],handler:this.configSelected});this.cfg.addProperty(A.TITLE.key,{value:A.TITLE.value,handler:this.configTitle});this.cfg.addProperty(A.CLOSE.key,{value:A.CLOSE.value,handler:this.configClose});this.cfg.addProperty(A.IFRAME.key,{value:A.IFRAME.value,handler:this.configIframe,validator:this.cfg.checkBoolean});this.cfg.addProperty(A.MINDATE.key,{value:A.MINDATE.value,handler:this.delegateConfig});this.cfg.addProperty(A.MAXDATE.key,{value:A.MAXDATE.value,handler:this.delegateConfig});this.cfg.addProperty(A.MULTI_SELECT.key,{value:A.MULTI_SELECT.value,handler:this.delegateConfig,validator:this.cfg.checkBoolean});this.cfg.addProperty(A.START_WEEKDAY.key,{value:A.START_WEEKDAY.value,handler:this.delegateConfig,validator:this.cfg.checkNumber});this.cfg.addProperty(A.SHOW_WEEKDAYS.key,{value:A.SHOW_WEEKDAYS.value,handler:this.delegateConfig,validator:this.cfg.checkBoolean});this.cfg.addProperty(A.SHOW_WEEK_HEADER.key,{value:A.SHOW_WEEK_HEADER.value,handler:this.delegateConfig,validator:this.cfg.checkBoolean});this.cfg.addProperty(A.SHOW_WEEK_FOOTER.key,{value:A.SHOW_WEEK_FOOTER.value,handler:this.delegateConfig,validator:this.cfg.checkBoolean});this.cfg.addProperty(A.HIDE_BLANK_WEEKS.key,{value:A.HIDE_BLANK_WEEKS.value,handler:this.delegateConfig,validator:this.cfg.checkBoolean});this.cfg.addProperty(A.NAV_ARROW_LEFT.key,{value:A.NAV_ARROW_LEFT.value,handler:this.delegateConfig});this.cfg.addProperty(A.NAV_ARROW_RIGHT.key,{value:A.NAV_ARROW_RIGHT.value,handler:this.delegateConfig});this.cfg.addProperty(A.MONTHS_SHORT.key,{value:A.MONTHS_SHORT.value,handler:this.delegateConfig});this.cfg.addProperty(A.MONTHS_LONG.key,{value:A.MONTHS_LONG.value,handler:this.delegateConfig}); +this.cfg.addProperty(A.WEEKDAYS_1CHAR.key,{value:A.WEEKDAYS_1CHAR.value,handler:this.delegateConfig});this.cfg.addProperty(A.WEEKDAYS_SHORT.key,{value:A.WEEKDAYS_SHORT.value,handler:this.delegateConfig});this.cfg.addProperty(A.WEEKDAYS_MEDIUM.key,{value:A.WEEKDAYS_MEDIUM.value,handler:this.delegateConfig});this.cfg.addProperty(A.WEEKDAYS_LONG.key,{value:A.WEEKDAYS_LONG.value,handler:this.delegateConfig});this.cfg.addProperty(A.LOCALE_MONTHS.key,{value:A.LOCALE_MONTHS.value,handler:this.delegateConfig});this.cfg.addProperty(A.LOCALE_WEEKDAYS.key,{value:A.LOCALE_WEEKDAYS.value,handler:this.delegateConfig});this.cfg.addProperty(A.DATE_DELIMITER.key,{value:A.DATE_DELIMITER.value,handler:this.delegateConfig});this.cfg.addProperty(A.DATE_FIELD_DELIMITER.key,{value:A.DATE_FIELD_DELIMITER.value,handler:this.delegateConfig});this.cfg.addProperty(A.DATE_RANGE_DELIMITER.key,{value:A.DATE_RANGE_DELIMITER.value,handler:this.delegateConfig});this.cfg.addProperty(A.MY_MONTH_POSITION.key,{value:A.MY_MONTH_POSITION.value,handler:this.delegateConfig,validator:this.cfg.checkNumber});this.cfg.addProperty(A.MY_YEAR_POSITION.key,{value:A.MY_YEAR_POSITION.value,handler:this.delegateConfig,validator:this.cfg.checkNumber});this.cfg.addProperty(A.MD_MONTH_POSITION.key,{value:A.MD_MONTH_POSITION.value,handler:this.delegateConfig,validator:this.cfg.checkNumber});this.cfg.addProperty(A.MD_DAY_POSITION.key,{value:A.MD_DAY_POSITION.value,handler:this.delegateConfig,validator:this.cfg.checkNumber});this.cfg.addProperty(A.MDY_MONTH_POSITION.key,{value:A.MDY_MONTH_POSITION.value,handler:this.delegateConfig,validator:this.cfg.checkNumber});this.cfg.addProperty(A.MDY_DAY_POSITION.key,{value:A.MDY_DAY_POSITION.value,handler:this.delegateConfig,validator:this.cfg.checkNumber});this.cfg.addProperty(A.MDY_YEAR_POSITION.key,{value:A.MDY_YEAR_POSITION.value,handler:this.delegateConfig,validator:this.cfg.checkNumber});this.cfg.addProperty(A.MY_LABEL_MONTH_POSITION.key,{value:A.MY_LABEL_MONTH_POSITION.value,handler:this.delegateConfig,validator:this.cfg.checkNumber});this.cfg.addProperty(A.MY_LABEL_YEAR_POSITION.key,{value:A.MY_LABEL_YEAR_POSITION.value,handler:this.delegateConfig,validator:this.cfg.checkNumber});this.cfg.addProperty(A.MY_LABEL_MONTH_SUFFIX.key,{value:A.MY_LABEL_MONTH_SUFFIX.value,handler:this.delegateConfig});this.cfg.addProperty(A.MY_LABEL_YEAR_SUFFIX.key,{value:A.MY_LABEL_YEAR_SUFFIX.value,handler:this.delegateConfig});};YAHOO.widget.CalendarGroup.prototype.initEvents=function(){var C=this;var E="Event";var B=function(G,J,F){for(var I=0;I0)?this.pages[0].cfg.getProperty(D):[];this.cfg.setProperty(D,B,true);};YAHOO.widget.CalendarGroup.prototype.delegateConfig=function(B,A,E){var F=A[0];var D;for(var C=0;C0){C+=1;}D.setYear(C);}};YAHOO.widget.CalendarGroup.prototype.render=function(){this.renderHeader();for(var B=0;B=0;--B){var A=this.pages[B];A.previousMonth();}};YAHOO.widget.CalendarGroup.prototype.nextYear=function(){for(var B=0;B11)){var B=YAHOO.widget.DateMath;var A=B.add(C,B.MONTH,D-C.getMonth());C.setTime(A.getTime());}else{C.setMonth(D);}};YAHOO.widget.CalendarGroup.prototype._fixWidth=function(){var B=this.oDomContainer.offsetWidth;var A=0;for(var D=0;D0){this.oDomContainer.style.width=A+"px";}};YAHOO.widget.CalendarGroup.CSS_CONTAINER="yui-calcontainer";YAHOO.widget.CalendarGroup.CSS_MULTI_UP="multi";YAHOO.widget.CalendarGroup.CSS_2UPTITLE="title";YAHOO.widget.CalendarGroup.CSS_2UPCLOSE="close-icon";YAHOO.lang.augmentProto(YAHOO.widget.CalendarGroup,YAHOO.widget.Calendar,"buildDayLabel","buildMonthLabel","renderOutOfBoundsDate","renderRowHeader","renderRowFooter","renderCellDefault","styleCellDefault","renderCellStyleHighlight1","renderCellStyleHighlight2","renderCellStyleHighlight3","renderCellStyleHighlight4","renderCellStyleToday","renderCellStyleSelected","renderCellNotThisMonth","renderBodyCellRestricted","initStyles","configTitle","configClose","configIframe","createTitleBar","createCloseButton","removeTitleBar","removeCloseButton","hide","browser");YAHOO.widget.CalendarGroup._DEFAULT_CONFIG=YAHOO.widget.Calendar._DEFAULT_CONFIG;YAHOO.widget.CalendarGroup._DEFAULT_CONFIG.PAGES={key:"pages",value:2};YAHOO.widget.CalendarGroup.prototype.toString=function(){return"CalendarGroup "+this.id;};YAHOO.widget.CalGrp=YAHOO.widget.CalendarGroup;YAHOO.widget.Calendar2up=function(C,A,B){this.init(C,A,B);};YAHOO.extend(YAHOO.widget.Calendar2up,YAHOO.widget.CalendarGroup);YAHOO.widget.Cal2up=YAHOO.widget.Calendar2up;YAHOO.register("calendar",YAHOO.widget.Calendar,{version:"2.3.1",build:"541"}); \ No newline at end of file Added: branches/trunk-reorg/projects/scrabble/website/yui/colorpicker/assets/colorpicker_core.css =================================================================== --- branches/trunk-reorg/projects/scrabble/website/yui/colorpicker/assets/colorpicker_core.css 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/website/yui/colorpicker/assets/colorpicker_core.css 2007-11-05 10:14:48 UTC (rev 2255) @@ -0,0 +1,6 @@ +/* +Copyright (c) 2007, Yahoo! Inc. All rights reserved. +Code licensed under the BSD License: +http://developer.yahoo.net/yui/license.txt +version: 2.3.1 +*/ Added: branches/trunk-reorg/projects/scrabble/website/yui/colorpicker/assets/hue_thumb.png =================================================================== (Binary files differ) Property changes on: branches/trunk-reorg/projects/scrabble/website/yui/colorpicker/assets/hue_thumb.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: branches/trunk-reorg/projects/scrabble/website/yui/colorpicker/assets/picker_mask.png =================================================================== (Binary files differ) Property changes on: branches/trunk-reorg/projects/scrabble/website/yui/colorpicker/assets/picker_mask.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: branches/trunk-reorg/projects/scrabble/website/yui/colorpicker/assets/picker_thumb.png =================================================================== (Binary files differ) Property changes on: branches/trunk-reorg/projects/scrabble/website/yui/colorpicker/assets/picker_thumb.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: branches/trunk-reorg/projects/scrabble/website/yui/colorpicker/assets/skins/sam/colorpicker-skin.css =================================================================== --- branches/trunk-reorg/projects/scrabble/website/yui/colorpicker/assets/skins/sam/colorpicker-skin.css 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/website/yui/colorpicker/assets/skins/sam/colorpicker-skin.css 2007-11-05 10:14:48 UTC (rev 2255) @@ -0,0 +1,105 @@ +/* +Copyright (c) 2007, Yahoo! Inc. All rights reserved. +Code licensed under the BSD License: +http://developer.yahoo.net/yui/license.txt +version: 2.3.1 +*/ + +.yui-picker-panel { + background: #e3e3e3; + border-color: #888; +} + +.yui-picker-panel .hd { + background-color:#ccc; + font-size:100%; + line-height:100%; + border:1px solid #e3e3e3; + font-weight:bold; + overflow:hidden; + padding: 6px; + color: #000; +} + +.yui-picker-panel .bd { + background: #e8e8e8; + margin: 1px; + height: 200px; +} + +.yui-picker-panel .ft { + background: #e8e8e8; + margin: 1px; + padding: 1px; + /* + text-align: center; + */ +} + +.yui-picker { + position: relative; +} + +.yui-picker-hue-thumb { cursor:default; width:18px; height:18px; +top: -8px; +left: -2px; + z-index: 9; position:absolute; } +.yui-picker-hue-bg {-moz-outline: none; outline:0px none; + position:absolute; left:200px; height:183px; width:14px; + background:url(hue_bg.png) no-repeat; + top:4px; +} + +.yui-picker-bg { + -moz-outline: none; + outline:0px none; + position:absolute; + top:4px; + left:4px; + height:182px; + width:182px; + background-color:#F00; + background-image: url(picker_mask.png); +} + +*html .yui-picker-bg { + background-image: none; + filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='../../build/colorpicker/assets/picker_mask.png', sizingMethod='scale'); +} + + +.yui-picker-mask { position:absolute; z-index: 1; top:0px; left:0px; } + +.yui-picker-thumb { cursor:default; width:11px; height:11px; z-index: 9; position:absolute; + top:-4px; left:-4px; } + +.yui-picker-swatch { position:absolute; left:240px; top:4px; height:60px; + width:55px; border:1px solid #888; } +.yui-picker-websafe-swatch { position:absolute; left:304px; top:4px; + height:24px; width:24px; border:1px solid #888; } + +.yui-picker-controls { position:absolute; top: 72px; left:226px; font:1em monospace;} +.yui-picker-controls .hd { background: transparent; border-width: 0px !important;} +.yui-picker-controls .bd { height: 100px; border-width: 0px !important;} +.yui-picker-controls ul {float:left;list-style:none;padding:0 2px 0 0;margin:0} +.yui-picker-controls li {padding:2px;margin:0} +.yui-picker-controls input { + font-size: 0.85em; + width: 2.4em; +} +.yui-picker-hex-controls { + clear: both; + padding: 2px; +} +.yui-picker-hex-controls input { + width: 4.6em; +} + +.yui-picker-controls a { + font: 1em arial,helvetica,clean,sans-serif; + display:block; + *display:inline-block; /* IE */ + padding: 0; + color: #000; + +} Added: branches/trunk-reorg/projects/scrabble/website/yui/colorpicker/assets/skins/sam/colorpicker.css =================================================================== --- branches/trunk-reorg/projects/scrabble/website/yui/colorpicker/assets/skins/sam/colorpicker.css 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/website/yui/colorpicker/assets/skins/sam/colorpicker.css 2007-11-05 10:14:48 UTC (rev 2255) @@ -0,0 +1,7 @@ +/* +Copyright (c) 2007, Yahoo! Inc. All rights reserved. +Code licensed under the BSD License: +http://developer.yahoo.net/yui/license.txt +version: 2.3.1 +*/ +.yui-picker-panel{background:#e3e3e3;border-color:#888;}.yui-picker-panel .hd{background-color:#ccc;font-size:100%;line-height:100%;border:1px solid #e3e3e3;font-weight:bold;overflow:hidden;padding:6px;color:#000;}.yui-picker-panel .bd{background:#e8e8e8;margin:1px;height:200px;}.yui-picker-panel .ft{background:#e8e8e8;margin:1px;padding:1px;}.yui-picker{position:relative;}.yui-picker-hue-thumb{cursor:default;width:18px;height:18px;top:-8px;left:-2px;z-index:9;position:absolute;}.yui-picker-hue-bg{-moz-outline:none;outline:0px none;position:absolute;left:200px;height:183px;width:14px;background:url(hue_bg.png) no-repeat;top:4px;}.yui-picker-bg{-moz-outline:none;outline:0px none;position:absolute;top:4px;left:4px;height:182px;width:182px;background-color:#F00;background-image:url(picker_mask.png);}*html .yui-picker-bg{background-image:none;filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='../../build/colorpicker/assets/picker_mask.png',sizingMethod='scale');}.yui-picker-mask{position:absolute;z-index:1;top:0px;left:0px;}.yui-picker-thumb{cursor:default;width:11px;height:11px;z-index:9;position:absolute;top:-4px;left:-4px;}.yui-picker-swatch{position:absolute;left:240px;top:4px;height:60px;width:55px;border:1px solid #888;}.yui-picker-websafe-swatch{position:absolute;left:304px;top:4px;height:24px;width:24px;border:1px solid #888;}.yui-picker-controls{position:absolute;top:72px;left:226px;font:1em monospace;}.yui-picker-controls .hd{background:transparent;border-width:0px !important;}.yui-picker-controls .bd{height:100px;border-width:0px !important;}.yui-picker-controls ul{float:left;list-style:none;padding:0 2px 0 0;margin:0}.yui-picker-controls li{padding:2px;margin:0}.yui-picker-controls input{font-size:0.85em;width:2.4em;}.yui-picker-hex-controls{clear:both;padding:2px;}.yui-picker-hex-controls input{width:4.6em;}.yui-picker-controls a{font:1em arial,helvetica,clean,sans-serif;display:block;*display:inline-block;padding:0;color:#000;} Added: branches/trunk-reorg/projects/scrabble/website/yui/colorpicker/assets/skins/sam/hue_bg.png =================================================================== (Binary files differ) Property changes on: branches/trunk-reorg/projects/scrabble/website/yui/colorpicker/assets/skins/sam/hue_bg.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: branches/trunk-reorg/projects/scrabble/website/yui/colorpicker/assets/skins/sam/picker_mask.png =================================================================== (Binary files differ) Property changes on: branches/trunk-reorg/projects/scrabble/website/yui/colorpicker/assets/skins/sam/picker_mask.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: branches/trunk-reorg/projects/scrabble/website/yui/colorpicker/colorpicker-beta-min.js =================================================================== --- branches/trunk-reorg/projects/scrabble/website/yui/colorpicker/colorpicker-beta-min.js 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/website/yui/colorpicker/colorpicker-beta-min.js 2007-11-05 10:14:48 UTC (rev 2255) @@ -0,0 +1,9 @@ +/* +Copyright (c) 2007, Yahoo! Inc. All rights reserved. +Code licensed under the BSD License: +http://developer.yahoo.net/yui/license.txt +version: 2.3.1 +*/ +YAHOO.util.Color=function(){var A="0123456789ABCDEF",B=YAHOO.lang;return{real2dec:function(C){return Math.min(255,Math.round(C*256));},hsv2rgb:function(G,N,L){if(B.isArray(G)){return this.hsv2rgb.call(this,G[0],G[1],G[2]);}var C,H,K,F,I,E,D,M;F=Math.floor((G/60)%6);I=(G/60)-F;E=L*(1-N);D=L*(1-I*N);M=L*(1-(1-I)*N);switch(F){case 0:C=L;H=M;K=E;break;case 1:C=D;H=L;K=E;break;case 2:C=E;H=L;K=M;break;case 3:C=E;H=D;K=L;break;case 4:C=M;H=E;K=L;break;case 5:C=L;H=E;K=D;break;}var J=this.real2dec;return[J(C),J(H),J(K)];},rgb2hsv:function(C,G,H){if(B.isArray(C)){return this.rgb2hsv.call(this,C[0],C[1],C[2]);}C=C/255;G=G/255;H=H/255;var D,I,K,F,L,J;D=Math.min(Math.min(C,G),H);I=Math.max(Math.max(C,G),H);K=I-D;switch(I){case D:F=0;break;case C:F=60*(G-H)/K;if(G255||C<0)?0:C;return A.charAt((C-C%16)/16)+A.charAt(C%16);},hex2dec:function(E){var D=function(F){return A.indexOf(F.toUpperCase());};var C=E.split("");return((D(C[0])*16)+D(C[1]));},hex2rgb:function(C){var D=this.hex2dec;return[D(C.substr(0,2)),D(C.substr(2,2)),D(C.substr(4,2))];},websafe:function(E,D,C){if(B.isArray(E)){return this.websafe.call(this,E[0],E[1],E[2]);}var F=function(G){if(B.isNumber(G)){G=Math.min(Math.max(0,G),255);var H,I;for(H=0;H<256;H=H+51){I=H+51;if(G>=H&&G<=I){return(G-H>25)?I:H;}}}return G;};return[F(E),F(D),F(C)];}};}();(function(){var E=0;var R=function(){var b=document.createElement("div");if(this.CSS.BASE){b.className=this.CSS.BASE;}return b;};YAHOO.widget.ColorPicker=function(h,b){E=E+1;b=b||{};if(arguments.length===1&&!YAHOO.lang.isString(h)&&!h.nodeName){b=h;h=b.element||null;}if(!h&&!b.element){h=R.call(this,b);}YAHOO.widget.ColorPicker.superclass.constructor.call(this,h,b);};YAHOO.extend(YAHOO.widget.ColorPicker,YAHOO.util.Element);var Q=YAHOO.widget.ColorPicker.prototype,P=YAHOO.widget.Slider,e=YAHOO.util.Color,C=YAHOO.util.Dom,f=YAHOO.util.Event,g=YAHOO.lang,J=g.substitute;var a="yui-picker";Q.ID={R:a+"-r",R_HEX:a+"-rhex",G:a+"-g",G_HEX:a+"-ghex",B:a+"-b",B_HEX:a+"-bhex",H:a+"-h",S:a+"-s",V:a+"-v",PICKER_BG:a+"-bg",PICKER_THUMB:a+"-thumb",HUE_BG:a+"-hue-bg",HUE_THUMB:a+"-hue-thumb",HEX:a+"-hex",SWATCH:a+"-swatch",WEBSAFE_SWATCH:a+"-websafe-swatch",CONTROLS:a+"-controls",RGB_CONTROLS:a+"-rgb-controls",HSV_CONTROLS:a+"-hsv-controls",HEX_CONTROLS:a+"-hex-controls",HEX_SUMMARY:a+"-hex-summary",CONTROLS_LABEL:a+"-controls-label"};Q.TXT={ILLEGAL_HEX:"Illegal hex value entered",SHOW_CONTROLS:"Show color details",HIDE_CONTROLS:"Hide color details",CURRENT_COLOR:"Currently selected color: {rgb}",CLOSEST_WEBSAFE:"Closest websafe color: {rgb}. Click to select.",R:"R",G:"G",B:"B",H:"H",S:"S",V:"V",HEX:"#",DEG:"?",PERCENT:"%"};Q.IMAGE={PICKER_THUMB:"../../build/colorpicker/assets/picker_thumb.png",HUE_THUMB:"../../build/colorpicker/assets/hue_thumb.png"};Q.DEFAULT={PICKER_SIZE:180};Q.OPT={HUE:"hue",SATURATION:"saturation",VALUE:"value",RED:"red",GREEN:"green",BLUE:"blue",HSV:"hsv",RGB:"rgb",WEBSAFE:"websafe",HEX:"hex",PICKER_SIZE:"pickersize",SHOW_CONTROLS:"showcontrols",SHOW_RGB_CONTROLS:"showrgbcontrols",SHOW_HSV_CONTROLS:"showhsvcontrols",SHOW_HEX_CONTROLS:"showhexcontrols",SHOW_HEX_SUMMARY:"showhexsummary",SHOW_WEBSAFE:"showwebsafe",CONTAINER:"container",IDS:"ids",ELEMENTS:"elements",TXT:"txt",IMAGES:"images",ANIMATE:"animate"};var S=function(){var b=this.get(this.OPT.PICKER_SIZE),i=this.get(this.OPT.HUE);i=b-Math.round(i/360*b);if(i===b){i=0;}this.hueSlider.setValue(i);};var d=function(){var h=this.get(this.OPT.PICKER_SIZE),i=this.get(this.OPT.SATURATION),b=this.get(this.OPT.VALUE);i=Math.round(i*h/100);b=Math.round(h-(b*h/100));this.pickerSlider.setRegionValue(i,b);};var T=function(){S.call(this);d.call(this);};Q.setValue=function(h,b){b=(b)||false;this.set(this.OPT.RGB,h,b);T.call(this);};Q.hueSlider=null;Q.pickerSlider=null;var X=function(){var b=this.get(this.OPT.PICKER_SIZE),i=(b-this.hueSlider.getValue())/b;i=Math.round(i*360);return(i===360)?0:i;};var O=function(){return this.pickerSlider.getXValue()/this.get(this.OPT.PICKER_SIZE);};var N=function(){var b=this.get(this.OPT.PICKER_SIZE);return(b-this.pickerSlider.getYValue())/b;};var M=function(){var i=this.get(this.OPT.RGB),k=this.get(this.OPT.WEBSAFE),j=this.getElement(this.ID.SWATCH),h=i.join(","),b=this.get(this.OPT.TXT);C.setStyle(j,"background-color","rgb("+h+")");j.title=g.substitute(b.CURRENT_COLOR,{"rgb":"#"+this.get(this.OPT.HEX)});j=this.getElement(this.ID.WEBSAFE_SWATCH);h=k.join(",");C.setStyle(j,"background-color","rgb("+h+")");j.title=g.substitute(b.CLOSEST_WEBSAFE,{"rgb":"#"+e.rgb2hex(k)});};var Z=function(){var k=X.call(this),j=O.call(this),b=N.call(this);var i=e.hsv2rgb(k,j,b);this.set(this.OPT.RGB,i);};var B=function(){this.getElement(this.ID.H).value=this.get(this.OPT.HUE);this.getElement(this.ID.S).value=this.get(this.OPT.SATURATION);this.getElement(this.ID.V).value=this.get(this.OPT.VALUE);this.getElement(this.ID.R).value=this.get(this.OPT.RED);this.getElement(this.ID.R_HEX).innerHTML=e.dec2hex(this.get(this.OPT.RED));this.getElement(this.ID.G).value=this.get(this.OPT.GREEN);this.getElement(this.ID.G_HEX).innerHTML=e.dec2hex(this.get(this.OPT.GREEN));this.getElement(this.ID.B).value=this.get(this.OPT.BLUE);this.getElement(this.ID.B_HEX).innerHTML=e.dec2hex(this.get(this.OPT.BLUE));this.getElement(this.ID.HEX).value=this.get(this.OPT.HEX);};var Y=function(k){var i=X.call(this);this.set(this.OPT.HUE,i,true);var b=e.hsv2rgb(i,1,1);var j="rgb("+b.join(",")+")";C.setStyle(this.getElement(this.ID.PICKER_BG),"background-color",j);if(this.hueSlider.valueChangeSource===this.hueSlider.SOURCE_UI_EVENT){Z.call(this);}B.call(this);M.call(this);};var H=function(i){var h=O.call(this),b=N.call(this);this.set(this.OPT.SATURATION,Math.round(h*100),true); +this.set(this.OPT.VALUE,Math.round(b*100),true);if(this.pickerSlider.valueChangeSource===this.pickerSlider.SOURCE_UI_EVENT){Z.call(this);}B.call(this);M.call(this);};var W=function(b){var h=f.getCharCode(b);if(h===38){return 3;}else{if(h===13){return 6;}else{if(h===40){return 4;}else{if(h>=48&&h<=57){return 1;}else{if(h>=97&&h<=102){return 2;}else{if(h>=65&&h<=70){return 2;}else{if("8, 9, 13, 27, 37, 39".indexOf(h)>-1){return 5;}else{return 0;}}}}}}}};var I=function(h,b,j){var i=b.value;if(j!==this.OPT.HEX){i=parseInt(i,10);}if(i!==this.get(j)){this.set(j,i);}};var G=function(i,b,k){var j=W(i);var h=(i.shiftKey)?10:1;switch(j){case 6:I.apply(this,arguments);break;case 3:this.set(k,Math.min(this.get(k)+h,255));B.call(this);break;case 4:this.set(k,Math.max(this.get(k)-h,0));B.call(this);break;default:}};var A=function(h,b,j){var i=W(h);if(i===6){I.apply(this,arguments);}};var L=function(h,b){var i=W(h);switch(i){case 6:case 5:case 1:break;case 2:if(b!==true){break;}default:f.stopEvent(h);return false;}};var K=function(b){return L(b,true);};Q.getElement=function(b){return this.get(this.OPT.ELEMENTS)[this.get(this.OPT.IDS)[b]];};var D=function(){var k,j,n,l,m,b=this.get(this.OPT.IDS),o=this.get(this.OPT.TXT),r=this.get(this.OPT.IMAGES),q=function(i,p){var t=document.createElement(i);if(p){g.augmentObject(t,p,true);}return t;},s=function(i,p){var t=g.merge({autocomplete:"off",value:"0",size:3,maxlength:3},p);t.name=t.id;return new q(i,t);};var h=this.get("element");k=new q("div",{id:b[this.ID.PICKER_BG],className:"yui-picker-bg",tabIndex:-1,hideFocus:true});j=new q("div",{id:b[this.ID.PICKER_THUMB],className:"yui-picker-thumb"});n=new q("img",{src:r.PICKER_THUMB});j.appendChild(n);k.appendChild(j);h.appendChild(k);k=new q("div",{id:b[this.ID.HUE_BG],className:"yui-picker-hue-bg",tabIndex:-1,hideFocus:true});j=new q("div",{id:b[this.ID.HUE_THUMB],className:"yui-picker-hue-thumb"});n=new q("img",{src:r.HUE_THUMB});j.appendChild(n);k.appendChild(j);h.appendChild(k);k=new q("div",{id:b[this.ID.CONTROLS],className:"yui-picker-controls"});h.appendChild(k);h=k;k=new q("div",{className:"hd"});j=new q("a",{id:b[this.ID.CONTROLS_LABEL],href:"#"});k.appendChild(j);h.appendChild(k);k=new q("div",{className:"bd"});h.appendChild(k);h=k;k=new q("ul",{id:b[this.ID.RGB_CONTROLS],className:"yui-picker-rgb-controls"});j=new q("li");j.appendChild(document.createTextNode(o.R+" "));l=new s("input",{id:b[this.ID.R],className:"yui-picker-r"});j.appendChild(l);k.appendChild(j);j=new q("li");j.appendChild(document.createTextNode(o.G+" "));l=new s("input",{id:b[this.ID.G],className:"yui-picker-g"});j.appendChild(l);k.appendChild(j);j=new q("li");j.appendChild(document.createTextNode(o.B+" "));l=new s("input",{id:b[this.ID.B],className:"yui-picker-b"});j.appendChild(l);k.appendChild(j);h.appendChild(k);k=new q("ul",{id:b[this.ID.HSV_CONTROLS],className:"yui-picker-hsv-controls"});j=new q("li");j.appendChild(document.createTextNode(o.H+" "));l=new s("input",{id:b[this.ID.H],className:"yui-picker-h"});j.appendChild(l);j.appendChild(document.createTextNode(" "+o.DEG));k.appendChild(j);j=new q("li");j.appendChild(document.createTextNode(o.S+" "));l=new s("input",{id:b[this.ID.S],className:"yui-picker-s"});j.appendChild(l);j.appendChild(document.createTextNode(" "+o.PERCENT));k.appendChild(j);j=new q("li");j.appendChild(document.createTextNode(o.V+" "));l=new s("input",{id:b[this.ID.V],className:"yui-picker-v"});j.appendChild(l);j.appendChild(document.createTextNode(" "+o.PERCENT));k.appendChild(j);h.appendChild(k);k=new q("ul",{id:b[this.ID.HEX_SUMMARY],className:"yui-picker-hex_summary"});j=new q("li",{id:b[this.ID.R_HEX]});k.appendChild(j);j=new q("li",{id:b[this.ID.G_HEX]});k.appendChild(j);j=new q("li",{id:b[this.ID.B_HEX]});k.appendChild(j);h.appendChild(k);k=new q("div",{id:b[this.ID.HEX_CONTROLS],className:"yui-picker-hex-controls"});k.appendChild(document.createTextNode(o.HEX+" "));j=new s("input",{id:b[this.ID.HEX],className:"yui-picker-hex",size:6,maxlength:6});k.appendChild(j);h.appendChild(k);h=this.get("element");k=new q("div",{id:b[this.ID.SWATCH],className:"yui-picker-swatch"});h.appendChild(k);k=new q("div",{id:b[this.ID.WEBSAFE_SWATCH],className:"yui-picker-websafe-swatch"});h.appendChild(k);};var c=function(h,b){f.on(this.getElement(h),"keydown",function(j,i){G.call(i,j,this,b);},this);f.on(this.getElement(h),"keypress",K,this);f.on(this.getElement(h),"blur",function(j,i){I.call(i,j,this,b);},this);};Q.initPicker=function(){var m=this.OPT,l=this.get(m.IDS),h=this.get(m.ELEMENTS),b,k,n;for(b in this.ID){if(g.hasOwnProperty(this.ID,b)){l[this.ID[b]]=l[b];}}k=C.get(l[this.ID.PICKER_BG]);if(!k){D.call(this);}else{}for(b in l){if(g.hasOwnProperty(l,b)){k=C.get(l[b]);n=C.generateId(k);l[b]=n;l[l[b]]=n;h[n]=k;}}h=[m.SHOW_CONTROLS,m.SHOW_RGB_CONTROLS,m.SHOW_HSV_CONTROLS,m.SHOW_HEX_CONTROLS,m.SHOW_HEX_SUMMARY,m.SHOW_WEBSAFE];for(b=0;b1){for(var h in j){if(g.hasOwnProperty(j,h)){j[h]=j[h]+E;}}}this.setAttributeConfig(this.OPT.IDS,{value:j,writeonce:true});this.setAttributeConfig(this.OPT.TXT,{value:b.txt||this.TXT,writeonce:true});this.setAttributeConfig(this.OPT.IMAGES,{value:b.images||this.IMAGE,writeonce:true});this.setAttributeConfig(this.OPT.ELEMENTS,{value:{},readonly:true});var k=function(m,i){var l=(g.isString(m)?this.getElement(m):m);C.setStyle(l,"display",(i)?"":"none");};this.setAttributeConfig(this.OPT.SHOW_CONTROLS,{value:(b.showcontrols)||true,method:function(i){var l=C.getElementsByClassName("bd","div",this.getElement(this.ID.CONTROLS))[0];k.call(this,l,i);this.getElement(this.ID.CONTROLS_LABEL).innerHTML=(i)?this.get(this.OPT.TXT).HIDE_CONTROLS:this.get(this.OPT.TXT).SHOW_CONTROLS;}});this.setAttributeConfig(this.OPT.SHOW_RGB_CONTROLS,{value:(b.showrgbcontrols)||true,method:function(i){k.call(this,this.ID.RGB_CONTROLS,i);}});this.setAttributeConfig(this.OPT.SHOW_HSV_CONTROLS,{value:(b.showhsvcontrols)||false,method:function(i){k.call(this,this.ID.HSV_CONTROLS,i);if(i&&this.get(this.OPT.SHOW_HEX_SUMMARY)){this.set(this.OPT.SHOW_HEX_SUMMARY,false);}}});this.setAttributeConfig(this.OPT.SHOW_HEX_CONTROLS,{value:(b.showhexcontrols)||false,method:function(i){k.call(this,this.ID.HEX_CONTROLS,i);}});this.setAttributeConfig(this.OPT.SHOW_WEBSAFE,{value:(b.showwebsafe)||true,method:function(i){k.call(this,this.ID.WEBSAFE_SWATCH,i);}});this.setAttributeConfig(this.OPT.SHOW_HEX_SUMMARY,{value:(b.showhexsummary)||true,method:function(i){k.call(this,this.ID.HEX_SUMMARY,i);if(i&&this.get(this.OPT.SHOW_HSV_CONTROLS)){this.set(this.OPT.SHOW_HSV_CONTROLS,false);}}});this.setAttributeConfig(this.OPT.ANIMATE,{value:(b.animate)||true,method:function(i){this.pickerSlider.animate=i;this.hueSlider.animate=i;}});this.on(this.OPT.HUE+"Change",U,this,true);this.on(this.OPT.SATURATION+"Change",U,this,true);this.on(this.OPT.VALUE+"Change",d,this,true);this.on(this.OPT.RED+"Change",F,this,true);this.on(this.OPT.GREEN+"Change",F,this,true);this.on(this.OPT.BLUE+"Change",F,this,true);this.on(this.OPT.HEX+"Change",V,this,true);this.initPicker();};})();YAHOO.register("colorpicker",YAHOO.widget.ColorPicker,{version:"2.3.1",build:"541"}); \ No newline at end of file Added: branches/trunk-reorg/projects/scrabble/website/yui/connection/connection-min.js =================================================================== --- branches/trunk-reorg/projects/scrabble/website/yui/connection/connection-min.js 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/website/yui/connection/connection-min.js 2007-11-05 10:14:48 UTC (rev 2255) @@ -0,0 +1,7 @@ +/* +Copyright (c) 2007, Yahoo! Inc. All rights reserved. +Code licensed under the BSD License: +http://developer.yahoo.net/yui/license.txt +version: 2.3.1 +*/ +YAHOO.util.Connect={_msxml_progid:["Microsoft.XMLHTTP","MSXML2.XMLHTTP.3.0","MSXML2.XMLHTTP"],_http_headers:{},_has_http_headers:false,_use_default_post_header:true,_default_post_header:"application/x-www-form-urlencoded; charset=UTF-8",_default_form_header:"application/x-www-form-urlencoded",_use_default_xhr_header:true,_default_xhr_header:"XMLHttpRequest",_has_default_headers:true,_default_headers:{},_isFormSubmit:false,_isFileUpload:false,_formNode:null,_sFormData:null,_poll:{},_timeOut:{},_polling_interval:50,_transaction_id:0,_submitElementValue:null,_hasSubmitListener:(function(){if(YAHOO.util.Event){YAHOO.util.Event.addListener(document,"click",function(q){try{var S=YAHOO.util.Event.getTarget(q);if(S.type.toLowerCase()=="submit"){YAHOO.util.Connect._submitElementValue=encodeURIComponent(S.name)+"="+encodeURIComponent(S.value);}}catch(q){}});return true;}return false;})(),startEvent:new YAHOO.util.CustomEvent("start"),completeEvent:new YAHOO.util.CustomEvent("complete"),successEvent:new YAHOO.util.CustomEvent("success"),failureEvent:new YAHOO.util.CustomEvent("failure"),uploadEvent:new YAHOO.util.CustomEvent("upload"),abortEvent:new YAHOO.util.CustomEvent("abort"),_customEvents:{onStart:["startEvent","start"],onComplete:["completeEvent","complete"],onSuccess:["successEvent","success"],onFailure:["failureEvent","failure"],onUpload:["uploadEvent","upload"],onAbort:["abortEvent","abort"]},setProgId:function(S){this._msxml_progid.unshift(S);},setDefaultPostHeader:function(S){if(typeof S=="string"){this._default_post_header=S;}else{if(typeof S=="boolean"){this._use_default_post_header=S;}}},setDefaultXhrHeader:function(S){if(typeof S=="string"){this._default_xhr_header=S;}else{this._use_default_xhr_header=S;}},setPollingInterval:function(S){if(typeof S=="number"&&isFinite(S)){this._polling_interval=S;}},createXhrObject:function(w){var m,S;try{S=new XMLHttpRequest();m={conn:S,tId:w};}catch(R){for(var q=0;q=200&&R<300||R===1223){q=this.createResponseObject(w,(V&&V.argument)?V.argument:undefined);if(V){if(V.success){if(!V.scope){V.success(q);}else{V.success.apply(V.scope,[q]);}}}this.successEvent.fire(q);if(w.successEvent){w.successEvent.fire(q);}}else{switch(R){case 12002:case 12029:case 12030:case 12031:case 12152:case 13030:q=this.createExceptionObject(w.tId,(V&&V.argument)?V.argument:undefined,(S?S:false));if(V){if(V.failure){if(!V.scope){V.failure(q);}else{V.failure.apply(V.scope,[q]);}}}break;default:q=this.createResponseObject(w,(V&&V.argument)?V.argument:undefined);if(V){if(V.failure){if(!V.scope){V.failure(q);}else{V.failure.apply(V.scope,[q]);}}}}this.failureEvent.fire(q);if(w.failureEvent){w.failureEvent.fire(q);}}this.releaseObject(w);q=null;},createResponseObject:function(S,d){var m={};var T={};try{var R=S.conn.getAllResponseHeaders();var V=R.split("\n");for(var w=0;w");if(typeof S=="boolean"){R.src="javascript:false";}else{if(typeof secureURI=="string"){R.src=S;}}}else{R=document.createElement("iframe");R.id=q;R.name=q;}R.style.position="absolute";R.style.top="-1000px";R.style.left="-1000px";document.body.appendChild(R);},appendPostData:function(S){var m=[];var q=S.split("&");for(var R=0;R0){for(var d=0;d elements bleeding through + the modality mask in IE 6. + + 2) ".drag select" is used to hide elements when a Panel instance is dragged. + + 3) ".hide-select select" is appended to an Overlay instance's root HTML + element when it is being annimated by YAHOO.widget.ContainerEffect. + This is necessary because elements that are child nodes of the + Overlay instance's root element is set to "none" when it is hidden. + +PLEASE NOTE: + + 1) The "hide-scrollbars" and "show-scrollbars" CSS classes classes are + applied only for Gecko on Mac OS X and are added/removed to/from the + Overlay's root HTML element (DIV) via the "hideMacGeckoScrollbars" and + "showMacGeckoScrollbars" methods of YAHOO.widget.Overlay. + + 2) There may be instances where the CSS for a web page or application + contains style rules whose specificity override the rules implemented by + the Container CSS files to fix this bug. In such cases, is necessary to + leverage the provided "hide-scrollbars" and "show-scrollbars" classes to + write custom style rules to guard against this bug. + +** For more information on this issue, see: + + + https://bugzilla.mozilla.org/show_bug.cgi?id=187435 + + SourceForge bug #1723530 + +*/ + +.hide-scrollbars, +.hide-scrollbars * { + + overflow: hidden; + +} + +.hide-scrollbars select { + + display: none; + +} + +.show-scrollbars { + + overflow: auto; + +} + +.yui-panel-container.show-scrollbars, +.yui-tt.show-scrollbars { + + overflow: visible; + +} + +.yui-panel-container.show-scrollbars .underlay, +.yui-tt.show-scrollbars .yui-tt-shadow { + + overflow: auto; + +} + + +/* + PLEASE NOTE: The
element used for a Tooltip's shadow is appended + to its root element via JavaScript once it has been rendered. The + code that creates the shadow lives in the Tooltip's public "onRender" + event handler that is a prototype method of YAHOO.widget.Tooltip. + Implementers wishing to remove a Tooltip's shadow or add any other markup + required for a given skin for Tooltip should override the "onRender" method. +*/ + +.yui-tt-shadow { + + position: absolute; + +} \ No newline at end of file Added: branches/trunk-reorg/projects/scrabble/website/yui/container/assets/container.css =================================================================== --- branches/trunk-reorg/projects/scrabble/website/yui/container/assets/container.css 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/website/yui/container/assets/container.css 2007-11-05 10:14:48 UTC (rev 2255) @@ -0,0 +1,304 @@ +/* +Copyright (c) 2007, Yahoo! Inc. All rights reserved. +Code licensed under the BSD License: +http://developer.yahoo.net/yui/license.txt +version: 2.3.1 +*/ +.yui-overlay, +.yui-panel-container { + visibility:hidden; + position:absolute; + z-index: 2; +} + +.yui-tt { + visibility:hidden; + position:absolute; + color:#333; + background-color:#FDFFB4; + font-family:arial,helvetica,verdana,sans-serif; + padding:2px; + border:1px solid #FCC90D; + font:100% sans-serif; + width:auto; +} + +/* + PLEASE NOTE: The
element used for a Tooltip's shadow is appended + to its root element via JavaScript once it has been rendered. The + code that creates the shadow lives in the Tooltip's public "onRender" + event handler that is a prototype method of YAHOO.widget.Tooltip. + Implementers wishing to remove a Tooltip's shadow or add any other markup + required for a given skin for Tooltip should override the "onRender" method. +*/ + +.yui-tt-shadow { + display: none; +} + +* html body.masked select { + visibility:hidden; +} + +* html div.yui-panel-container select { + visibility:inherit; +} + +* html div.drag select { + visibility:hidden; +} + +* html div.hide-select select { + visibility:hidden; +} + +.mask { + z-index: 1; + display:none; + position:absolute; + top:0; + left:0; + -moz-opacity: 0.5; + opacity:.50; + filter: alpha(opacity=50); + background-color:#CCC; +} + +/* + +There are two known issues with YAHOO.widget.Overlay (and its subclasses) that +manifest in Gecko-based browsers on Mac OS X: + + 1) Elements with scrollbars will poke through Overlay instances floating + above them. + + 2) An Overlay's scrollbars and the scrollbars of its child nodes remain + visible when the Overlay is hidden. + +To fix these bugs: + + 1) The "overflow" property of an Overlay instance's root element and child + nodes is toggled between "hidden" and "auto" (through the application + and removal of the "hide-scrollbars" and "show-scrollbars" CSS classes) + as its "visibility" configuration property is toggled between + "false" and "true." + + 2) The "display" property of ";},configIcon:function(F,E,J){var K=E[0],D=this.body,I=B.ICON_CSS_CLASSNAME,H,G;if(K&&K!="none"){H=C.getElementsByClassName(I,"*",D);if(H){G=H.parentNode;if(G){G.removeChild(H);H=null;}}if(K.indexOf(".")==-1){H=document.createElement("span");H.className=(I+" "+K);H.innerHTML=" ";}else{H=document.createElement("img");H.src=(this.imageRoot+K);H.className=I;}if(H){D.insertBefore(H,D.firstChild);}}},configText:function(E,D,F){var G=D[0];if(G){this.setBody(G);this.cfg.refireEvent("icon");}},toString:function(){return"SimpleDialog "+this.id;}});}());(function(){YAHOO.widget.ContainerEffect=function(F,I,H,E,G){if(!G){G=YAHOO.util.Anim;}this.overlay=F;this.attrIn=I;this.attrOut=H;this.targetElement=E||F.element;this.animClass=G;};var B=YAHOO.util.Dom,D=YAHOO.util.CustomEvent,C=YAHOO.util.Easing,A=YAHOO.widget.ContainerEffect;A.FADE=function(E,F){var G=new A(E,{attributes:{opacity:{from:0,to:1}},duration:F,method:C.easeIn},{attributes:{opacity:{to:0}},duration:F,method:C.easeOut},E.element);G.handleStartAnimateIn=function(I,H,J){B.addClass(J.overlay.element,"hide-select");if(!J.overlay.underlay){J.overlay.cfg.refireEvent("underlay");}if(J.overlay.underlay){J.initialUnderlayOpacity=B.getStyle(J.overlay.underlay,"opacity");J.overlay.underlay.style.filter=null;}B.setStyle(J.overlay.element,"visibility","visible");B.setStyle(J.overlay.element,"opacity",0);};G.handleCompleteAnimateIn=function(I,H,J){B.removeClass(J.overlay.element,"hide-select");if(J.overlay.element.style.filter){J.overlay.element.style.filter=null;}if(J.overlay.underlay){B.setStyle(J.overlay.underlay,"opacity",J.initialUnderlayOpacity);}J.overlay.cfg.refireEvent("iframe");J.animateInCompleteEvent.fire();};G.handleStartAnimateOut=function(I,H,J){B.addClass(J.overlay.element,"hide-select");if(J.overlay.underlay){J.overlay.underlay.style.filter=null;}};G.handleCompleteAnimateOut=function(I,H,J){B.removeClass(J.overlay.element,"hide-select");if(J.overlay.element.style.filter){J.overlay.element.style.filter=null;}B.setStyle(J.overlay.element,"visibility","hidden");B.setStyle(J.overlay.element,"opacity",1);J.overlay.cfg.refireEvent("iframe");J.animateOutCompleteEvent.fire();};G.init();return G;};A.SLIDE=function(G,I){var F=G.cfg.getProperty("x")||B.getX(G.element),K=G.cfg.getProperty("y")||B.getY(G.element),J=B.getClientWidth(),H=G.element.offsetWidth,E=new A(G,{attributes:{points:{to:[F,K]}},duration:I,method:C.easeIn},{attributes:{points:{to:[(J+25),K]}},duration:I,method:C.easeOut},G.element,YAHOO.util.Motion);E.handleStartAnimateIn=function(M,L,N){N.overlay.element.style.left=((-25)-H)+"px";N.overlay.element.style.top=K+"px";};E.handleTweenAnimateIn=function(O,N,P){var Q=B.getXY(P.overlay.element),M=Q[0],L=Q[1];if(B.getStyle(P.overlay.element,"visibility")=="hidden"&&M0){G=F-1;do{D=E.subscribers[G];if(D&&D.obj==I&&D.fn==H){return true;}}while(G--);}return false;};YAHOO.lang.augmentProto(A,YAHOO.util.EventProvider);}());(function(){YAHOO.widget.Module=function(Q,P){if(Q){this.init(Q,P);}else{}};var F=YAHOO.util.Dom,D=YAHOO.util.Config,M=YAHOO.util.Event,L=YAHOO.util.CustomEvent,G=YAHOO.widget.Module,H,O,N,E,A={"BEFORE_INIT":"beforeInit","INIT":"init","APPEND":"append","BEFORE_RENDER":"beforeRender","RENDER":"render","CHANGE_HEADER":"changeHeader","CHANGE_BODY":"changeBody","CHANGE_FOOTER":"changeFooter","CHANGE_CONTENT":"changeContent","DESTORY":"destroy","BEFORE_SHOW":"beforeShow","SHOW":"show","BEFORE_HIDE":"beforeHide","HIDE":"hide"},I={"VISIBLE":{key:"visible",value:true,validator:YAHOO.lang.isBoolean},"EFFECT":{key:"effect",suppressEvent:true,supercedes:["visible"]},"MONITOR_RESIZE":{key:"monitorresize",value:true},"APPEND_TO_DOCUMENT_BODY":{key:"appendtodocumentbody",value:false}};G.IMG_ROOT=null;G.IMG_ROOT_SSL=null;G.CSS_MODULE="yui-module";G.CSS_HEADER="hd";G.CSS_BODY="bd";G.CSS_FOOTER="ft";G.RESIZE_MONITOR_SECURE_URL="javascript:false;";G.textResizeEvent=new L("textResize");function K(){if(!H){H=document.createElement("div");H.innerHTML=("
");O=H.firstChild;N=O.nextSibling;E=N.nextSibling;}return H;}function J(){if(!O){K();}return(O.cloneNode(false));}function B(){if(!N){K();}return(N.cloneNode(false));}function C(){if(!E){K();}return(E.cloneNode(false));}G.prototype={constructor:G,element:null,header:null,body:null,footer:null,id:null,imageRoot:G.IMG_ROOT,initEvents:function(){var P=L.LIST;this.beforeInitEvent=this.createEvent(A.BEFORE_INIT);this.beforeInitEvent.signature=P;this.initEvent=this.createEvent(A.INIT);this.initEvent.signature=P;this.appendEvent=this.createEvent(A.APPEND); +this.appendEvent.signature=P;this.beforeRenderEvent=this.createEvent(A.BEFORE_RENDER);this.beforeRenderEvent.signature=P;this.renderEvent=this.createEvent(A.RENDER);this.renderEvent.signature=P;this.changeHeaderEvent=this.createEvent(A.CHANGE_HEADER);this.changeHeaderEvent.signature=P;this.changeBodyEvent=this.createEvent(A.CHANGE_BODY);this.changeBodyEvent.signature=P;this.changeFooterEvent=this.createEvent(A.CHANGE_FOOTER);this.changeFooterEvent.signature=P;this.changeContentEvent=this.createEvent(A.CHANGE_CONTENT);this.changeContentEvent.signature=P;this.destroyEvent=this.createEvent(A.DESTORY);this.destroyEvent.signature=P;this.beforeShowEvent=this.createEvent(A.BEFORE_SHOW);this.beforeShowEvent.signature=P;this.showEvent=this.createEvent(A.SHOW);this.showEvent.signature=P;this.beforeHideEvent=this.createEvent(A.BEFORE_HIDE);this.beforeHideEvent.signature=P;this.hideEvent=this.createEvent(A.HIDE);this.hideEvent.signature=P;},platform:function(){var P=navigator.userAgent.toLowerCase();if(P.indexOf("windows")!=-1||P.indexOf("win32")!=-1){return"windows";}else{if(P.indexOf("macintosh")!=-1){return"mac";}else{return false;}}}(),browser:function(){var P=navigator.userAgent.toLowerCase();if(P.indexOf("opera")!=-1){return"opera";}else{if(P.indexOf("msie 7")!=-1){return"ie7";}else{if(P.indexOf("msie")!=-1){return"ie";}else{if(P.indexOf("safari")!=-1){return"safari";}else{if(P.indexOf("gecko")!=-1){return"gecko";}else{return false;}}}}}}(),isSecure:function(){if(window.location.href.toLowerCase().indexOf("https")===0){return true;}else{return false;}}(),initDefaultConfig:function(){this.cfg.addProperty(I.VISIBLE.key,{handler:this.configVisible,value:I.VISIBLE.value,validator:I.VISIBLE.validator});this.cfg.addProperty(I.EFFECT.key,{suppressEvent:I.EFFECT.suppressEvent,supercedes:I.EFFECT.supercedes});this.cfg.addProperty(I.MONITOR_RESIZE.key,{handler:this.configMonitorResize,value:I.MONITOR_RESIZE.value});this.cfg.addProperty(I.APPEND_TO_DOCUMENT_BODY.key,{value:I.APPEND_TO_DOCUMENT_BODY.value});},init:function(V,U){var R,T,W;this.initEvents();this.beforeInitEvent.fire(G);this.cfg=new D(this);if(this.isSecure){this.imageRoot=G.IMG_ROOT_SSL;}if(typeof V=="string"){R=V;V=document.getElementById(V);if(!V){V=(K()).cloneNode(false);V.id=R;}}this.element=V;if(V.id){this.id=V.id;}W=this.element.firstChild;if(W){var Q=false,P=false,S=false;do{if(1==W.nodeType){if(!Q&&F.hasClass(W,G.CSS_HEADER)){this.header=W;Q=true;}else{if(!P&&F.hasClass(W,G.CSS_BODY)){this.body=W;P=true;}else{if(!S&&F.hasClass(W,G.CSS_FOOTER)){this.footer=W;S=true;}}}}}while((W=W.nextSibling));}this.initDefaultConfig();F.addClass(this.element,G.CSS_MODULE);if(U){this.cfg.applyConfig(U,true);}if(!D.alreadySubscribed(this.renderEvent,this.cfg.fireQueue,this.cfg)){this.renderEvent.subscribe(this.cfg.fireQueue,this.cfg,true);}this.initEvent.fire(G);},initResizeMonitor:function(){var P,Q,S;function T(){G.textResizeEvent.fire();}if(!YAHOO.env.ua.opera){Q=F.get("_yuiResizeMonitor");if(!Q){Q=document.createElement("iframe");if(this.isSecure&&G.RESIZE_MONITOR_SECURE_URL&&YAHOO.env.ua.ie){Q.src=G.RESIZE_MONITOR_SECURE_URL;}if(YAHOO.env.ua.gecko){S="";Q.src="data:text/html;charset=utf-8,"+encodeURIComponent(S);}Q.id="_yuiResizeMonitor";Q.style.position="absolute";Q.style.visibility="hidden";var R=document.body.firstChild;if(R){document.body.insertBefore(Q,R);}else{document.body.appendChild(Q);}Q.style.width="10em";Q.style.height="10em";Q.style.top=(-1*Q.offsetHeight)+"px";Q.style.left=(-1*Q.offsetWidth)+"px";Q.style.borderWidth="0";Q.style.visibility="visible";if(YAHOO.env.ua.webkit){P=Q.contentWindow.document;P.open();P.close();}}if(Q&&Q.contentWindow){G.textResizeEvent.subscribe(this.onDomResize,this,true);if(!G.textResizeInitialized){if(!M.on(Q.contentWindow,"resize",T)){M.on(Q,"resize",T);}G.textResizeInitialized=true;}this.resizeMonitor=Q;}}},onDomResize:function(S,R){var Q=-1*this.resizeMonitor.offsetWidth,P=-1*this.resizeMonitor.offsetHeight;this.resizeMonitor.style.top=P+"px";this.resizeMonitor.style.left=Q+"px";},setHeader:function(Q){var P=this.header||(this.header=J());if(typeof Q=="string"){P.innerHTML=Q;}else{P.innerHTML="";P.appendChild(Q);}this.changeHeaderEvent.fire(Q);this.changeContentEvent.fire();},appendToHeader:function(Q){var P=this.header||(this.header=J());P.appendChild(Q);this.changeHeaderEvent.fire(Q);this.changeContentEvent.fire();},setBody:function(Q){var P=this.body||(this.body=B());if(typeof Q=="string"){P.innerHTML=Q;}else{P.innerHTML="";P.appendChild(Q);}this.changeBodyEvent.fire(Q);this.changeContentEvent.fire();},appendToBody:function(Q){var P=this.body||(this.body=B());P.appendChild(Q);this.changeBodyEvent.fire(Q);this.changeContentEvent.fire();},setFooter:function(Q){var P=this.footer||(this.footer=C());if(typeof Q=="string"){P.innerHTML=Q;}else{P.innerHTML="";P.appendChild(Q);}this.changeFooterEvent.fire(Q);this.changeContentEvent.fire();},appendToFooter:function(Q){var P=this.footer||(this.footer=C());P.appendChild(Q);this.changeFooterEvent.fire(Q);this.changeContentEvent.fire();},render:function(R,P){var S=this,T;function Q(U){if(typeof U=="string"){U=document.getElementById(U);}if(U){S._addToParent(U,S.element);S.appendEvent.fire();}}this.beforeRenderEvent.fire();if(!P){P=this.element;}if(R){Q(R);}else{if(!F.inDocument(this.element)){return false;}}if(this.header&&!F.inDocument(this.header)){T=P.firstChild;if(T){P.insertBefore(this.header,T);}else{P.appendChild(this.header);}}if(this.body&&!F.inDocument(this.body)){if(this.footer&&F.isAncestor(this.moduleElement,this.footer)){P.insertBefore(this.body,this.footer);}else{P.appendChild(this.body);}}if(this.footer&&!F.inDocument(this.footer)){P.appendChild(this.footer);}this.renderEvent.fire();return true;},destroy:function(){var P,Q;if(this.element){M.purgeElement(this.element,true); +P=this.element.parentNode;}if(P){P.removeChild(this.element);}this.element=null;this.header=null;this.body=null;this.footer=null;G.textResizeEvent.unsubscribe(this.onDomResize,this);this.cfg.destroy();this.cfg=null;this.destroyEvent.fire();for(Q in this){if(Q instanceof L){Q.unsubscribeAll();}}},show:function(){this.cfg.setProperty("visible",true);},hide:function(){this.cfg.setProperty("visible",false);},configVisible:function(Q,P,R){var S=P[0];if(S){this.beforeShowEvent.fire();F.setStyle(this.element,"display","block");this.showEvent.fire();}else{this.beforeHideEvent.fire();F.setStyle(this.element,"display","none");this.hideEvent.fire();}},configMonitorResize:function(R,Q,S){var P=Q[0];if(P){this.initResizeMonitor();}else{G.textResizeEvent.unsubscribe(this.onDomResize,this,true);this.resizeMonitor=null;}},_addToParent:function(P,Q){if(!this.cfg.getProperty("appendtodocumentbody")&&P===document.body&&P.firstChild){P.insertBefore(Q,P.firstChild);}else{P.appendChild(Q);}},toString:function(){return"Module "+this.id;}};YAHOO.lang.augmentProto(G,YAHOO.util.EventProvider);}());(function(){YAHOO.widget.Overlay=function(L,K){YAHOO.widget.Overlay.superclass.constructor.call(this,L,K);};var F=YAHOO.lang,I=YAHOO.util.CustomEvent,E=YAHOO.widget.Module,J=YAHOO.util.Event,D=YAHOO.util.Dom,C=YAHOO.util.Config,B=YAHOO.widget.Overlay,G,A={"BEFORE_MOVE":"beforeMove","MOVE":"move"},H={"X":{key:"x",validator:F.isNumber,suppressEvent:true,supercedes:["iframe"]},"Y":{key:"y",validator:F.isNumber,suppressEvent:true,supercedes:["iframe"]},"XY":{key:"xy",suppressEvent:true,supercedes:["iframe"]},"CONTEXT":{key:"context",suppressEvent:true,supercedes:["iframe"]},"FIXED_CENTER":{key:"fixedcenter",value:false,validator:F.isBoolean,supercedes:["iframe","visible"]},"WIDTH":{key:"width",suppressEvent:true,supercedes:["context","fixedcenter","iframe"]},"HEIGHT":{key:"height",suppressEvent:true,supercedes:["context","fixedcenter","iframe"]},"ZINDEX":{key:"zindex",value:null},"CONSTRAIN_TO_VIEWPORT":{key:"constraintoviewport",value:false,validator:F.isBoolean,supercedes:["iframe","x","y","xy"]},"IFRAME":{key:"iframe",value:(YAHOO.env.ua.ie==6?true:false),validator:F.isBoolean,supercedes:["zindex"]}};B.IFRAME_SRC="javascript:false;";B.IFRAME_OFFSET=3;B.TOP_LEFT="tl";B.TOP_RIGHT="tr";B.BOTTOM_LEFT="bl";B.BOTTOM_RIGHT="br";B.CSS_OVERLAY="yui-overlay";B.windowScrollEvent=new I("windowScroll");B.windowResizeEvent=new I("windowResize");B.windowScrollHandler=function(K){if(YAHOO.env.ua.ie){if(!window.scrollEnd){window.scrollEnd=-1;}clearTimeout(window.scrollEnd);window.scrollEnd=setTimeout(function(){B.windowScrollEvent.fire();},1);}else{B.windowScrollEvent.fire();}};B.windowResizeHandler=function(K){if(YAHOO.env.ua.ie){if(!window.resizeEnd){window.resizeEnd=-1;}clearTimeout(window.resizeEnd);window.resizeEnd=setTimeout(function(){B.windowResizeEvent.fire();},100);}else{B.windowResizeEvent.fire();}};B._initialized=null;if(B._initialized===null){J.on(window,"scroll",B.windowScrollHandler);J.on(window,"resize",B.windowResizeHandler);B._initialized=true;}YAHOO.extend(B,E,{init:function(L,K){B.superclass.init.call(this,L);this.beforeInitEvent.fire(B);D.addClass(this.element,B.CSS_OVERLAY);if(K){this.cfg.applyConfig(K,true);}if(this.platform=="mac"&&YAHOO.env.ua.gecko){if(!C.alreadySubscribed(this.showEvent,this.showMacGeckoScrollbars,this)){this.showEvent.subscribe(this.showMacGeckoScrollbars,this,true);}if(!C.alreadySubscribed(this.hideEvent,this.hideMacGeckoScrollbars,this)){this.hideEvent.subscribe(this.hideMacGeckoScrollbars,this,true);}}this.initEvent.fire(B);},initEvents:function(){B.superclass.initEvents.call(this);var K=I.LIST;this.beforeMoveEvent=this.createEvent(A.BEFORE_MOVE);this.beforeMoveEvent.signature=K;this.moveEvent=this.createEvent(A.MOVE);this.moveEvent.signature=K;},initDefaultConfig:function(){B.superclass.initDefaultConfig.call(this);this.cfg.addProperty(H.X.key,{handler:this.configX,validator:H.X.validator,suppressEvent:H.X.suppressEvent,supercedes:H.X.supercedes});this.cfg.addProperty(H.Y.key,{handler:this.configY,validator:H.Y.validator,suppressEvent:H.Y.suppressEvent,supercedes:H.Y.supercedes});this.cfg.addProperty(H.XY.key,{handler:this.configXY,suppressEvent:H.XY.suppressEvent,supercedes:H.XY.supercedes});this.cfg.addProperty(H.CONTEXT.key,{handler:this.configContext,suppressEvent:H.CONTEXT.suppressEvent,supercedes:H.CONTEXT.supercedes});this.cfg.addProperty(H.FIXED_CENTER.key,{handler:this.configFixedCenter,value:H.FIXED_CENTER.value,validator:H.FIXED_CENTER.validator,supercedes:H.FIXED_CENTER.supercedes});this.cfg.addProperty(H.WIDTH.key,{handler:this.configWidth,suppressEvent:H.WIDTH.suppressEvent,supercedes:H.WIDTH.supercedes});this.cfg.addProperty(H.HEIGHT.key,{handler:this.configHeight,suppressEvent:H.HEIGHT.suppressEvent,supercedes:H.HEIGHT.supercedes});this.cfg.addProperty(H.ZINDEX.key,{handler:this.configzIndex,value:H.ZINDEX.value});this.cfg.addProperty(H.CONSTRAIN_TO_VIEWPORT.key,{handler:this.configConstrainToViewport,value:H.CONSTRAIN_TO_VIEWPORT.value,validator:H.CONSTRAIN_TO_VIEWPORT.validator,supercedes:H.CONSTRAIN_TO_VIEWPORT.supercedes});this.cfg.addProperty(H.IFRAME.key,{handler:this.configIframe,value:H.IFRAME.value,validator:H.IFRAME.validator,supercedes:H.IFRAME.supercedes});},moveTo:function(K,L){this.cfg.setProperty("xy",[K,L]);},hideMacGeckoScrollbars:function(){D.removeClass(this.element,"show-scrollbars");D.addClass(this.element,"hide-scrollbars");},showMacGeckoScrollbars:function(){D.removeClass(this.element,"hide-scrollbars");D.addClass(this.element,"show-scrollbars");},configVisible:function(N,K,T){var M=K[0],O=D.getStyle(this.element,"visibility"),U=this.cfg.getProperty("effect"),R=[],Q=(this.platform=="mac"&&YAHOO.env.ua.gecko),b=C.alreadySubscribed,S,L,a,Y,X,W,Z,V,P;if(O=="inherit"){a=this.element.parentNode;while(a.nodeType!=9&&a.nodeType!=11){O=D.getStyle(a,"visibility");if(O!="inherit"){break;}a=a.parentNode;}if(O=="inherit"){O="visible";}}if(U){if(U instanceof Array){V=U.length; +for(Y=0;YY){W=Y;}}if(VK){V=K;}}this.cfg.setProperty("x",W,true);this.cfg.setProperty("y",V,true);this.cfg.setProperty("xy",[W,V],true);},center:function(){var Q=D.getDocumentScrollLeft(),O=D.getDocumentScrollTop(),L=D.getClientWidth(),P=D.getClientHeight(),N=this.element.offsetWidth,M=this.element.offsetHeight,K=(L/2)-(N/2)+Q,R=(P/2)-(M/2)+O;this.cfg.setProperty("xy",[parseInt(K,10),parseInt(R,10)]);this.cfg.refireEvent("iframe");},syncPosition:function(){var K=D.getXY(this.element);this.cfg.setProperty("x",K[0],true);this.cfg.setProperty("y",K[1],true);this.cfg.setProperty("xy",K,true);},onDomResize:function(M,L){var K=this;B.superclass.onDomResize.call(this,M,L);setTimeout(function(){K.syncPosition();K.cfg.refireEvent("iframe");K.cfg.refireEvent("context");},0);},bringToTop:function(){var N=[],M=this.element;function P(T,S){var V=D.getStyle(T,"zIndex"),U=D.getStyle(S,"zIndex"),R=(!V||isNaN(V))?0:parseInt(V,10),Q=(!U||isNaN(U))?0:parseInt(U,10);if(R>Q){return -1;}else{if(R0){J=K-1;do{this.overlays[J].blur();}while(J--);}};this._onOverlayBlur=function(K,J){H=null;};var G=this.cfg.getProperty("overlays");if(!this.overlays){this.overlays=[];}if(G){this.register(G);this.overlays.sort(this.compareZIndexDesc);}},_onOverlayElementFocus:function(I){var G=C.getTarget(I),H=this.close;if(H&&(G==H||E.isAncestor(H,G))){this.blur();}else{this.focus();}},_onOverlayDestroy:function(H,G,I){this.remove(I);},register:function(G){var K=this,L,I,H,J;if(G instanceof D){G.cfg.addProperty("manager",{value:this});G.focusEvent=G.createEvent("focus");G.focusEvent.signature=F.LIST;G.blurEvent=G.createEvent("blur");G.blurEvent.signature=F.LIST;G.focus=function(){K.focus(this);};G.blur=function(){if(K.getActive()==this){E.removeClass(this.element,A.CSS_FOCUSED);this.blurEvent.fire();}};G.blurEvent.subscribe(K._onOverlayBlur);G.hideEvent.subscribe(G.blur);G.destroyEvent.subscribe(this._onOverlayDestroy,G,this);C.on(G.element,this.cfg.getProperty("focusevent"),this._onOverlayElementFocus,null,G);L=E.getStyle(G.element,"zIndex");if(!isNaN(L)){G.cfg.setProperty("zIndex",parseInt(L,10));}else{G.cfg.setProperty("zIndex",0);}this.overlays.push(G);this.bringToTop(G);return true;}else{if(G instanceof Array){I=0;J=G.length;for(H=0;H0){return true;}}else{return false;}}},bringToTop:function(K){var H=this.find(K),J,G,I;if(H){I=this.overlays;I.sort(this.compareZIndexDesc);G=I[0];if(G){J=E.getStyle(G.element,"zIndex");if(!isNaN(J)&&G!=H){H.cfg.setProperty("zIndex",(parseInt(J,10)+2));}I.sort(this.compareZIndexDesc);}}},find:function(G){var I=this.overlays,J=I.length,H;if(J>0){H=J-1;if(G instanceof D){do{if(I[H]==G){return I[H];}}while(H--);}else{if(typeof G=="string"){do{if(I[H].id==G){return I[H];}}while(H--);}}return null;}},compareZIndexDesc:function(J,I){var H=(J.cfg)?J.cfg.getProperty("zIndex"):null,G=(I.cfg)?I.cfg.getProperty("zIndex"):null;if(H===null&&G===null){return 0;}else{if(H===null){return 1;}else{if(G===null){return -1;}else{if(H>G){return -1;}else{if(H0){G=I-1;do{H[G].show();}while(G--);}},hideAll:function(){var H=this.overlays,I=H.length,G;if(I>0){G=I-1;do{H[G].hide();}while(G--);}},toString:function(){return"OverlayManager";}};}());(function(){YAHOO.widget.ContainerEffect=function(F,I,H,E,G){if(!G){G=YAHOO.util.Anim;}this.overlay=F;this.attrIn=I;this.attrOut=H; +this.targetElement=E||F.element;this.animClass=G;};var B=YAHOO.util.Dom,D=YAHOO.util.CustomEvent,C=YAHOO.util.Easing,A=YAHOO.widget.ContainerEffect;A.FADE=function(E,F){var G=new A(E,{attributes:{opacity:{from:0,to:1}},duration:F,method:C.easeIn},{attributes:{opacity:{to:0}},duration:F,method:C.easeOut},E.element);G.handleStartAnimateIn=function(I,H,J){B.addClass(J.overlay.element,"hide-select");if(!J.overlay.underlay){J.overlay.cfg.refireEvent("underlay");}if(J.overlay.underlay){J.initialUnderlayOpacity=B.getStyle(J.overlay.underlay,"opacity");J.overlay.underlay.style.filter=null;}B.setStyle(J.overlay.element,"visibility","visible");B.setStyle(J.overlay.element,"opacity",0);};G.handleCompleteAnimateIn=function(I,H,J){B.removeClass(J.overlay.element,"hide-select");if(J.overlay.element.style.filter){J.overlay.element.style.filter=null;}if(J.overlay.underlay){B.setStyle(J.overlay.underlay,"opacity",J.initialUnderlayOpacity);}J.overlay.cfg.refireEvent("iframe");J.animateInCompleteEvent.fire();};G.handleStartAnimateOut=function(I,H,J){B.addClass(J.overlay.element,"hide-select");if(J.overlay.underlay){J.overlay.underlay.style.filter=null;}};G.handleCompleteAnimateOut=function(I,H,J){B.removeClass(J.overlay.element,"hide-select");if(J.overlay.element.style.filter){J.overlay.element.style.filter=null;}B.setStyle(J.overlay.element,"visibility","hidden");B.setStyle(J.overlay.element,"opacity",1);J.overlay.cfg.refireEvent("iframe");J.animateOutCompleteEvent.fire();};G.init();return G;};A.SLIDE=function(G,I){var F=G.cfg.getProperty("x")||B.getX(G.element),K=G.cfg.getProperty("y")||B.getY(G.element),J=B.getClientWidth(),H=G.element.offsetWidth,E=new A(G,{attributes:{points:{to:[F,K]}},duration:I,method:C.easeIn},{attributes:{points:{to:[(J+25),K]}},duration:I,method:C.easeOut},G.element,YAHOO.util.Motion);E.handleStartAnimateIn=function(M,L,N){N.overlay.element.style.left=((-25)-H)+"px";N.overlay.element.style.top=K+"px";};E.handleTweenAnimateIn=function(O,N,P){var Q=B.getXY(P.overlay.element),M=Q[0],L=Q[1];if(B.getStyle(P.overlay.element,"visibility")=="hidden"&&M0&&!this._aCache){this._aCache=[];}this._sName="DataSource instance"+YAHOO.util.DataSource._nIndex;YAHOO.util.DataSource._nIndex++;this.createEvent("cacheRequestEvent");this.createEvent("cacheResponseEvent");this.createEvent("requestEvent");this.createEvent("responseEvent");this.createEvent("responseParseEvent");this.createEvent("responseCacheEvent");this.createEvent("dataErrorEvent");this.createEvent("cacheFlushEvent");};YAHOO.augment(YAHOO.util.DataSource,YAHOO.util.EventProvider);YAHOO.util.DataSource.TYPE_UNKNOWN=-1;YAHOO.util.DataSource.TYPE_JSARRAY=0;YAHOO.util.DataSource.TYPE_JSFUNCTION=1;YAHOO.util.DataSource.TYPE_XHR=2;YAHOO.util.DataSource.TYPE_JSON=3;YAHOO.util.DataSource.TYPE_XML=4;YAHOO.util.DataSource.TYPE_TEXT=5;YAHOO.util.DataSource.TYPE_HTMLTABLE=6;YAHOO.util.DataSource.ERROR_DATAINVALID="Invalid data";YAHOO.util.DataSource.ERROR_DATANULL="Null data";YAHOO.util.DataSource._nIndex=0;YAHOO.util.DataSource._nTransactionId=0;YAHOO.util.DataSource.prototype._sName=null;YAHOO.util.DataSource.prototype._aCache=null;YAHOO.util.DataSource.prototype._oQueue=null;YAHOO.util.DataSource.prototype.maxCacheEntries=0;YAHOO.util.DataSource.prototype.liveData=null;YAHOO.util.DataSource.prototype.dataType=YAHOO.util.DataSource.TYPE_UNKNOWN;YAHOO.util.DataSource.prototype.responseType=YAHOO.util.DataSource.TYPE_UNKNOWN;YAHOO.util.DataSource.prototype.responseSchema=null;YAHOO.util.DataSource.prototype.connMgr=null;YAHOO.util.DataSource.prototype.connXhrMode="allowAll";YAHOO.util.DataSource.prototype.connMethodPost=false;YAHOO.util.DataSource.prototype.connTimeout=0;YAHOO.util.DataSource.parseString=function(B){if(!YAHOO.lang.isValue(B)){return null;}var A=B+"";if(YAHOO.lang.isString(A)){return A;}else{return null;}};YAHOO.util.DataSource.parseNumber=function(B){var A=B*1;if(YAHOO.lang.isNumber(A)){return A;}else{return null;}};YAHOO.util.DataSource.convertNumber=function(A){return YAHOO.util.DataSource.parseNumber(A);};YAHOO.util.DataSource.parseDate=function(B){var A=null;if(!(B instanceof Date)){A=new Date(B);}else{return B;}if(A instanceof Date){return A;}else{return null;}};YAHOO.util.DataSource.convertDate=function(A){return YAHOO.util.DataSource.parseDate(A);};YAHOO.util.DataSource.prototype.toString=function(){return this._sName;};YAHOO.util.DataSource.prototype.getCachedResponse=function(H,B,G){var A=this._aCache;var D=(A)?A.length:0;var F=null;if((this.maxCacheEntries>0)&&A&&(D>0)){this.fireEvent("cacheRequestEvent",{request:H,callback:B,caller:G});for(var E=D-1;E>=0;E--){var C=A[E];if(this.isCacheHit(H,C.request)){F=C.response;A.splice(E,1);this.addToCache(H,F);this.fireEvent("cacheResponseEvent",{request:H,response:F,callback:B,caller:G});break;}}}return F;};YAHOO.util.DataSource.prototype.isCacheHit=function(A,B){return(A===B);};YAHOO.util.DataSource.prototype.addToCache=function(D,C){var A=this._aCache;if(!A){return ;}while(A.length>=this.maxCacheEntries){A.shift();}var B={request:D,response:C};A.push(B);this.fireEvent("responseCacheEvent",{request:D,response:C});};YAHOO.util.DataSource.prototype.flushCache=function(){if(this._aCache){this._aCache=[];this.fireEvent("cacheFlushEvent");}};YAHOO.util.DataSource.prototype.sendRequest=function(D,A,C){var B=this.getCachedResponse(D,A,C);if(B){A.call(C,D,B);return null;}return this.makeConnection(D,A,C);};YAHOO.util.DataSource.prototype.makeConnection=function(A,P,K){this.fireEvent("requestEvent",{request:A,callback:P,caller:K});var D=null;var L=YAHOO.util.DataSource._nTransactionId++;switch(this.dataType){case YAHOO.util.DataSource.TYPE_JSFUNCTION:D=this.liveData(A);this.handleResponse(A,D,P,K,L);break;case YAHOO.util.DataSource.TYPE_XHR:var N=this;var C=this.connMgr||YAHOO.util.Connect;var G=this._oQueue;var J=function(Q){if(Q&&(this.connXhrMode=="ignoreStaleResponses")&&(Q.tId!=G.conn.tId)){return null;}else{if(!Q){this.fireEvent("dataErrorEvent",{request:A,callback:P,caller:K,message:YAHOO.util.DataSource.ERROR_DATANULL});P.call(K,A,Q,true);return null;}else{this.handleResponse(A,Q,P,K,L);}}};var O=function(Q){this.fireEvent("dataErrorEvent",{request:A,callback:P,caller:K,message:YAHOO.util.DataSource.ERROR_DATAINVALID});if((this.liveData.lastIndexOf("?")!==this.liveData.length-1)&&(A.indexOf("?")!==0)){}P.call(K,A,Q,true);return null;};var I={success:J,failure:O,scope:this};if(YAHOO.lang.isNumber(this.connTimeout)){I.timeout=this.connTimeout;}if(this.connXhrMode=="cancelStaleRequests"){if(G.conn){if(C.abort){C.abort(G.conn);G.conn=null;}else{}}}if(C&&C.asyncRequest){var B=this.liveData;var H=this.connMethodPost;var M=(H)?"POST":"GET";var E=(H)?B:B+A;var F=(H)?A:null;if(this.connXhrMode!="queueRequests"){G.conn=C.asyncRequest(M,E,I,F);}else{if(G.conn){G.requests.push({request:A,callback:I});if(!G.interval){G.interval=setInterval(function(){if(C.isCallInProgress(G.conn)){return ;}else{if(G.requests.length>0){E=(H)?B:B+G.requests[0].request;F=(H)?G.requests[0].request:null;G.conn=C.asyncRequest(M,E,G.requests[0].callback,F);G.requests.shift();}else{clearInterval(G.interval);G.interval=null;}}},50);}}else{G.conn=C.asyncRequest(M,E,I,F);}}}else{P.call(K,A,null,true);}break;default:D=this.liveData;this.handleResponse(A,D,P,K,L); +break;}return L;};YAHOO.util.DataSource.prototype.handleResponse=function(E,C,B,D,H){this.fireEvent("responseEvent",{request:E,response:C,callback:B,caller:D,tId:H});var G=(this.dataType==YAHOO.util.DataSource.TYPE_XHR)?true:false;var F=null;var A=false;C=this.doBeforeParseData(E,C);switch(this.responseType){case YAHOO.util.DataSource.TYPE_JSARRAY:if(G&&C.responseText){C=C.responseText;}F=this.parseArrayData(E,C);break;case YAHOO.util.DataSource.TYPE_JSON:if(G&&C.responseText){C=C.responseText;}F=this.parseJSONData(E,C);break;case YAHOO.util.DataSource.TYPE_HTMLTABLE:if(G&&C.responseText){C=C.responseText;}F=this.parseHTMLTableData(E,C);break;case YAHOO.util.DataSource.TYPE_XML:if(G&&C.responseXML){C=C.responseXML;}F=this.parseXMLData(E,C);break;case YAHOO.util.DataSource.TYPE_TEXT:if(G&&C.responseText){C=C.responseText;}F=this.parseTextData(E,C);break;default:break;}if(F){F.tId=H;F=this.doBeforeCallback(E,C,F);this.fireEvent("responseParseEvent",{request:E,response:F,callback:B,caller:D});this.addToCache(E,F);}else{this.fireEvent("dataErrorEvent",{request:E,callback:B,caller:D,message:YAHOO.util.DataSource.ERROR_DATANULL});F={error:true};}B.call(D,E,F);};YAHOO.util.DataSource.prototype.doBeforeParseData=function(B,A){return A;};YAHOO.util.DataSource.prototype.doBeforeCallback=function(B,A,C){return C;};YAHOO.util.DataSource.prototype.parseArrayData=function(A,B){if(YAHOO.lang.isArray(B)&&YAHOO.lang.isArray(this.responseSchema.fields)){var J={results:[]};var G=this.responseSchema.fields;for(var E=B.length-1;E>-1;E--){var F={};for(var C=G.length-1;C>-1;C--){var H=G[C];var I=(YAHOO.lang.isValue(H.key))?H.key:H;var D=(YAHOO.lang.isValue(B[E][C]))?B[E][C]:B[E][I];if(!H.parser&&H.converter){H.parser=H.converter;}if(H.parser){D=H.parser.call(this,D);}if(D===undefined){D=null;}F[I]=D;}J.results.unshift(F);}return J;}else{return null;}};YAHOO.util.DataSource.prototype.parseTextData=function(A,B){var N={};if(YAHOO.lang.isString(B)&&YAHOO.lang.isArray(this.responseSchema.fields)&&YAHOO.lang.isString(this.responseSchema.recordDelim)&&YAHOO.lang.isString(this.responseSchema.fieldDelim)){N.results=[];var K=this.responseSchema.recordDelim;var G=this.responseSchema.fieldDelim;var J=this.responseSchema.fields;if(B.length>0){var C=B.length-K.length;if(B.substr(C)==K){B=B.substr(0,C);}var O=B.split(K);for(var F=O.length-1;F>-1;F--){var I={};for(var D=J.length-1;D>-1;D--){var H=O[F].split(G);var E=H[D];if(E.charAt(0)=="\""){E=E.substr(1);}if(E.charAt(E.length-1)=="\""){E=E.substr(0,E.length-1);}var L=J[D];var M=(YAHOO.lang.isValue(L.key))?L.key:L;if(!L.parser&&L.converter){L.parser=L.converter;}if(L.parser){E=L.parser.call(this,E);}if(E===undefined){E=null;}I[M]=E;}N.results.unshift(I);}}}else{N.error=true;}return N;};YAHOO.util.DataSource.prototype.parseXMLData=function(A,C){var I=false;var M={};var D=(this.responseSchema.resultNode)?C.getElementsByTagName(this.responseSchema.resultNode):null;if(!D||!YAHOO.lang.isArray(this.responseSchema.fields)){I=true;}else{M.results=[];for(var F=D.length-1;F>=0;F--){var N=D.item(F);var H={};for(var E=this.responseSchema.fields.length-1;E>=0;E--){var J=this.responseSchema.fields[E];var L=(YAHOO.lang.isValue(J.key))?J.key:J;var G=null;var B=N.attributes.getNamedItem(L);if(B){G=B.value;}else{var K=N.getElementsByTagName(L);if(K&&K.item(0)&&K.item(0).firstChild){G=K.item(0).firstChild.nodeValue;}else{G="";}}if(!J.parser&&J.converter){J.parser=J.converter;}if(J.parser){G=J.parser.call(this,G);}if(G===undefined){G=null;}H[L]=G;}M.results.unshift(H);}}if(I){M.error=true;}else{}return M;};YAHOO.util.DataSource.prototype.parseJSONData=function(oRequest,oRawResponse){var oParsedResponse={};if(oRawResponse&&YAHOO.lang.isArray(this.responseSchema.fields)){var fields=this.responseSchema.fields;var bError=false;oParsedResponse.results=[];var jsonObj,jsonList;if(YAHOO.lang.isString(oRawResponse)){var isNotMac=(navigator.userAgent.toLowerCase().indexOf("khtml")==-1);if(oRawResponse.parseJSON&&isNotMac){jsonObj=oRawResponse.parseJSON();if(!jsonObj){bError=true;}}else{if(window.JSON&&JSON.parse&&isNotMac){jsonObj=JSON.parse(oRawResponse);if(!jsonObj){bError=true;}}else{try{while(oRawResponse.length>0&&(oRawResponse.charAt(0)!="{")&&(oRawResponse.charAt(0)!="[")){oRawResponse=oRawResponse.substring(1,oRawResponse.length);}if(oRawResponse.length>0){var objEnd=Math.max(oRawResponse.lastIndexOf("]"),oRawResponse.lastIndexOf("}"));oRawResponse=oRawResponse.substring(0,objEnd+1);jsonObj=eval("("+oRawResponse+")");if(!jsonObj){bError=true;}}else{jsonObj=null;bError=true;}}catch(e){bError=true;}}}}else{if(oRawResponse.constructor==Object){jsonObj=oRawResponse;}else{bError=true;}}if(jsonObj&&jsonObj.constructor==Object){try{jsonList=eval("jsonObj."+this.responseSchema.resultsList);}catch(e){bError=true;}}if(bError||!jsonList){oParsedResponse.error=true;}if(jsonList&&!YAHOO.lang.isArray(jsonList)){jsonList=[jsonList];}else{if(!jsonList){jsonList=[];}}for(var i=jsonList.length-1;i>=0;i--){var oResult={};var jsonResult=jsonList[i];for(var j=fields.length-1;j>=0;j--){var field=fields[j];var key=(YAHOO.lang.isValue(field.key))?field.key:field;var data=eval("jsonResult."+key);if(!field.parser&&field.converter){field.parser=field.converter;}if(field.parser){data=field.parser.call(this,data);}if(data===undefined){data=null;}oResult[key]=data;}oParsedResponse.results.unshift(oResult);}}else{oParsedResponse.error=true;}return oParsedResponse;};YAHOO.util.DataSource.prototype.parseHTMLTableData=function(B,C){var K=false;var L=C;var J=this.responseSchema.fields;var O={};O.results=[];for(var H=0;H-1;F--){var A=D.rows[F];var I={};for(var E=J.length-1;E>-1;E--){var M=J[E];var N=(YAHOO.lang.isValue(M.key))?M.key:M;var G=A.cells[E].innerHTML;if(!M.parser&&M.converter){M.parser=M.converter;}if(M.parser){G=M.parser.call(this,G);}if(G===undefined){G=null;}I[N]=G;}O.results.unshift(I);}}if(K){O.error=true;}else{}return O;};YAHOO.register("datasource",YAHOO.util.DataSource,{version:"2.3.1",build:"541"}); Added: branches/trunk-reorg/projects/scrabble/website/yui/datatable/assets/datatable-core.css =================================================================== --- branches/trunk-reorg/projects/scrabble/website/yui/datatable/assets/datatable-core.css 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/website/yui/datatable/assets/datatable-core.css 2007-11-05 10:14:48 UTC (rev 2255) @@ -0,0 +1,48 @@ +/* +Copyright (c) 2007, Yahoo! Inc. All rights reserved. +Code licensed under the BSD License: +http://developer.yahoo.net/yui/license.txt +version: 2.3.1 +*/ +/*foundational css*/ +table.yui-dt-table { + table-layout:fixed; +} + +th .yui-dt-header { + position:relative; +} + +th .yui-dt-label { + position:relative; +} + +th .yui-dt-resizer { + position:absolute; + margin-right:-6px; + right:0; + bottom:0; + width:6px; + height:100%; + cursor:w-resize; + cursor:col-resize; +} + +/* foundational scrolling css */ +.yui-dt-scrollable { + *overflow-y:auto; /* for ie */ +} +.yui-dt-scrollable thead { + display:block; /* for safari and opera */ +} +.yui-dt-scrollable thead tr { + position:relative; /* for ie */ +} +.yui-dt-scrollbody { + display:block; /* for safari and opera */ + overflow:auto; /* for gecko */ +} + +.yui-dt-editor { + position:absolute;z-index:9000; +} Added: branches/trunk-reorg/projects/scrabble/website/yui/datatable/assets/datatable.css =================================================================== --- branches/trunk-reorg/projects/scrabble/website/yui/datatable/assets/datatable.css 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/website/yui/datatable/assets/datatable.css 2007-11-05 10:14:48 UTC (rev 2255) @@ -0,0 +1,49 @@ +/* +Copyright (c) 2007, Yahoo! Inc. All rights reserved. +Code licensed under the BSD License: +http://developer.yahoo.net/yui/license.txt +version: 2.3.1 +*/ +/*foundational css*/ +.yui-dt-table th, .yui-dt-table td { + overflow:hidden; +} + +th .yui-dt-header { + position:relative; +} + +th .yui-dt-label { + position:relative; + border-right:10px; +} + +th .yui-dt-resizer { + position:absolute; + margin-right:-6px; + right:0; + bottom:0; + width:6px; + height:100%; + cursor:w-resize; + cursor:col-resize; +} + +/* foundational scrolling css */ +.yui-dt-scrollable { + *overflow-y:auto; /* for ie */ +} +.yui-dt-scrollable thead { + display:block; /* for safari and opera */ +} +.yui-dt-scrollable thead tr { + position:relative; /* for ie */ +} +.yui-dt-scrollbody { + display:block; /* for safari and opera */ + overflow:auto; /* for gecko */ +} + +.yui-dt-editor { + position:absolute; +} Added: branches/trunk-reorg/projects/scrabble/website/yui/datatable/assets/skins/sam/datatable-skin.css =================================================================== --- branches/trunk-reorg/projects/scrabble/website/yui/datatable/assets/skins/sam/datatable-skin.css 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/website/yui/datatable/assets/skins/sam/datatable-skin.css 2007-11-05 10:14:48 UTC (rev 2255) @@ -0,0 +1,192 @@ +/* +Copyright (c) 2007, Yahoo! Inc. All rights reserved. +Code licensed under the BSD License: +http://developer.yahoo.net/yui/license.txt +version: 2.3.1 +*/ +/* basic skin styles */ +.yui-skin-sam .yui-dt-table {margin:0;padding:0;font-family:arial;font-size:inherit;border-collapse:collapse;border:1px solid #7F7F7F;} +.yui-skin-sam .yui-dt-table caption {padding-bottom:1em;text-align:left;} +.yui-skin-sam .yui-dt-table th { + background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0; /* header gradient */ +} +.yui-skin-sam .yui-dt-table th, +.yui-skin-sam .yui-dt-table th a { + font-weight:normal;text-decoration:none;color:#000; /* header text */ + vertical-align:bottom; +} +.yui-skin-sam .yui-dt-table th, +.yui-skin-sam .yui-dt-table td { + padding:4px 10px 4px 10px; /* cell padding */ + border-right:1px solid #CBCBCB; /* inner column border */ +} +.yui-skin-sam .yui-dt-table td { + text-align:left; +} +.yui-skin-sam .yui-dt-table th.yui-dt-last, +.yui-skin-sam .yui-dt-table td.yui-dt-last { + border-right:1px solid #7F7F7F; /* outer border */ +} +.yui-skin-sam .yui-dt-list td { + border-right:none; /* disable inner column border in list mode */ +} +.yui-skin-sam .yui-dt-table thead { + border:1px solid #989898; /* outer border */ +} +.yui-skin-sam .yui-dt-table tbody { + border-left:1px solid #7F7F7F;border-right:1px solid #7F7F7F;border-bottom:1px solid #7F7F7F; /* outer border */ +} + +/* messaging */ +.yui-skin-sam .yui-dt-loading { + background-color:#FFF; +} + +.yui-skin-sam .yui-dt-loading { + background-color:#FFF; +} + +/* sortable columns */ +.yui-skin-sam .yui-dt-sortable { + cursor:pointer; +} +.yui-skin-sam th.yui-dt-sortable { + padding-right:5px; /* room for arrow */ +} +.yui-skin-sam th.yui-dt-sortable .yui-dt-label { + margin-right:15px; /* room for arrow */ +} +.yui-skin-sam th.yui-dt-asc, +.yui-skin-sam th.yui-dt-desc { + background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -100px; /* sorted header gradient */ +} +.yui-skin-sam th.yui-dt-asc .yui-dt-header { + background:url(dt-arrow-up.png) no-repeat right; /* sorted header gradient */ + /*background-image: url('../img/arrow_up.gif'); background-repeat:no-repeat; background-position:right; sorted header icon */ +} +.yui-skin-sam th.yui-dt-desc .yui-dt-header { + background:url(dt-arrow-dn.png) no-repeat right; /* sorted header gradient */ + /*background-image: url('../img/arrow_dn.gif'); background-repeat:no-repeat; background-position:right; /*sorted header icon */ +} + +/* editing */ +.yui-dt-editable { + cursor:pointer; +} +.yui-dt-editor { + text-align:left; + background-color:#F2F2F2; + border:1px solid #808080; + padding:6px; +} +.yui-dt-editor label { + padding-left:4px;padding-right:6px; +} +.yui-dt-editor .yui-dt-button { + padding-top:6px;text-align:right; +} +.yui-dt-editor .yui-dt-button button { + background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0; + border:1px solid #999; + width:4em;height:1.8em; + margin-left:6px; +} +.yui-dt-editor .yui-dt-button button.yui-dt-default { + background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -1400px; + background-color: #5584E0; + border:1px solid #304369; + color:#FFF +} +.yui-dt-editor .yui-dt-button button:hover { + background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -1300px; + color:#000; +} +.yui-dt-editor .yui-dt-button button:active { + background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -1700px; + color:#000; +} + +/* striping */ +.yui-skin-sam tr.yui-dt-even { background-color:#FFF; } /* white */ +.yui-skin-sam tr.yui-dt-odd { background-color:#EDF5FF; } /* light blue */ +.yui-skin-sam tr.yui-dt-even td.yui-dt-asc, +.yui-skin-sam tr.yui-dt-even td.yui-dt-desc { background-color:#EDF5FF; } /* light blue sorted */ +.yui-skin-sam tr.yui-dt-odd td.yui-dt-asc, +.yui-skin-sam tr.yui-dt-odd td.yui-dt-desc { background-color:#DBEAFF; } /* dark blue sorted */ + +/* disable striping in list mode */ +.yui-skin-sam .yui-dt-list tr.yui-dt-even { background-color:#FFF; } /* white */ +.yui-skin-sam .yui-dt-list tr.yui-dt-odd { background-color:#FFF; } /* white */ +.yui-skin-sam .yui-dt-list tr.yui-dt-even td.yui-dt-asc, +.yui-skin-sam .yui-dt-list tr.yui-dt-even td.yui-dt-desc { background-color:#EDF5FF; } /* light blue sorted */ +.yui-skin-sam .yui-dt-list tr.yui-dt-odd td.yui-dt-asc, +.yui-skin-sam .yui-dt-list tr.yui-dt-odd td.yui-dt-desc { background-color:#EDF5FF; } /* light blue sorted */ + +/* highlighting */ +.yui-skin-sam tr.yui-dt-highlighted, +.yui-skin-sam tr.yui-dt-highlighted td.yui-dt-asc, +.yui-skin-sam tr.yui-dt-highlighted td.yui-dt-desc, +.yui-skin-sam tr.yui-dt-even td.yui-dt-highlighted, +.yui-skin-sam tr.yui-dt-odd td.yui-dt-highlighted { + cursor:pointer; + background-color:#B2D2FF; /* med blue hover */ +} + +/* enable highlighting in list mode */ +.yui-skin-sam .yui-dt-list tr.yui-dt-highlighted, +.yui-skin-sam .yui-dt-list tr.yui-dt-highlighted td.yui-dt-asc, +.yui-skin-sam .yui-dt-list tr.yui-dt-highlighted td.yui-dt-desc, +.yui-skin-sam .yui-dt-list tr.yui-dt-even td.yui-dt-highlighted, +.yui-skin-sam .yui-dt-list tr.yui-dt-odd td.yui-dt-highlighted { + cursor:pointer; + background-color:#B2D2FF; /* med blue hover */ +} + +/* selection */ +.yui-skin-sam tr.yui-dt-selected td, +.yui-skin-sam tr.yui-dt-selected td.yui-dt-asc, +.yui-skin-sam tr.yui-dt-selected td.yui-dt-desc { + background-color:#426FD9; /* bright blue selected row */ + color:#FFF; +} +.yui-skin-sam tr.yui-dt-even td.yui-dt-selected, +.yui-skin-sam tr.yui-dt-odd td.yui-dt-selected { + background-color:#446CD7; /* bright blue selected cell */ + color:#FFF; +} + +/* enable selection in list mode */ +.yui-skin-sam .yui-dt-list tr.yui-dt-selected td, +.yui-skin-sam .yui-dt-list tr.yui-dt-selected td.yui-dt-asc, +.yui-skin-sam .yui-dt-list tr.yui-dt-selected td.yui-dt-desc { + background-color:#426FD9; /* bright blue selected row */ + color:#FFF; +} +.yui-skin-sam .yui-dt-list tr.yui-dt-even td.yui-dt-selected, +.yui-skin-sam .yui-dt-list tr.yui-dt-odd td.yui-dt-selected { + background-color:#446CD7; /* bright blue selected cell */ + color:#FFF; +} + +/* pagination */ +.yui-skin-sam .yui-dt-paginator { + display:block;margin:6px 0;white-space:nowrap; +} +.yui-skin-sam .yui-dt-paginator .yui-dt-first, +.yui-skin-sam .yui-dt-paginator .yui-dt-last, +.yui-skin-sam .yui-dt-paginator .yui-dt-selected { + padding:2px 6px; +} +.yui-skin-sam .yui-dt-paginator a.yui-dt-first, +.yui-skin-sam .yui-dt-paginator a.yui-dt-last { + text-decoration:none; +} +.yui-skin-sam .yui-dt-paginator .yui-dt-previous, +.yui-skin-sam .yui-dt-paginator .yui-dt-next { + display:none; +} +.yui-skin-sam a.yui-dt-page { + border:1px solid #CBCBCB; + padding:2px 6px; + text-decoration:none; +} Added: branches/trunk-reorg/projects/scrabble/website/yui/datatable/assets/skins/sam/datatable.css =================================================================== --- branches/trunk-reorg/projects/scrabble/website/yui/datatable/assets/skins/sam/datatable.css 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/website/yui/datatable/assets/skins/sam/datatable.css 2007-11-05 10:14:48 UTC (rev 2255) @@ -0,0 +1,7 @@ +/* +Copyright (c) 2007, Yahoo! Inc. All rights reserved. +Code licensed under the BSD License: +http://developer.yahoo.net/yui/license.txt +version: 2.3.1 +*/ +table.yui-dt-table{table-layout:fixed;}th .yui-dt-header{position:relative;}th .yui-dt-label{position:relative;}th .yui-dt-resizer{position:absolute;margin-right:-6px;right:0;bottom:0;width:6px;height:100%;cursor:w-resize;cursor:col-resize;}.yui-dt-scrollable{*overflow-y:auto;}.yui-dt-scrollable thead{display:block;}.yui-dt-scrollable thead tr{position:relative;}.yui-dt-scrollbody{display:block;overflow:auto;}.yui-dt-editor{position:absolute;z-index:9000;}.yui-skin-sam .yui-dt-table{margin:0;padding:0;font-family:arial;font-size:inherit;border-collapse:collapse;border:1px solid #7F7F7F;}.yui-skin-sam .yui-dt-table caption{padding-bottom:1em;text-align:left;}.yui-skin-sam .yui-dt-table th{background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0;}.yui-skin-sam .yui-dt-table th,.yui-skin-sam .yui-dt-table th a{font-weight:normal;text-decoration:none;color:#000;vertical-align:bottom;}.yui-skin-sam .yui-dt-table th,.yui-skin-sam .yui-dt-table td{padding:4px 10px 4px 10px;border-right:1px solid #CBCBCB;}.yui-skin-sam .yui-dt-table td{text-align:left;}.yui-skin-sam .yui-dt-table th.yui-dt-last,.yui-skin-sam .yui-dt-table td.yui-dt-last{border-right:1px solid #7F7F7F;}.yui-skin-sam .yui-dt-list td{border-right:none;}.yui-skin-sam .yui-dt-table thead{border:1px solid #989898;}.yui-skin-sam .yui-dt-table tbody{border-left:1px solid #7F7F7F;border-right:1px solid #7F7F7F;border-bottom:1px solid #7F7F7F;}.yui-skin-sam .yui-dt-loading{background-color:#FFF;}.yui-skin-sam .yui-dt-loading{background-color:#FFF;}.yui-skin-sam .yui-dt-sortable{cursor:pointer;}.yui-skin-sam th.yui-dt-sortable{padding-right:5px;}.yui-skin-sam th.yui-dt-sortable .yui-dt-label{margin-right:15px;}.yui-skin-sam th.yui-dt-asc,.yui-skin-sam th.yui-dt-desc{background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -100px;}.yui-skin-sam th.yui-dt-asc .yui-dt-header{background:url(dt-arrow-up.png) no-repeat right;}.yui-skin-sam th.yui-dt-desc .yui-dt-header{background:url(dt-arrow-dn.png) no-repeat right;}.yui-dt-editable{cursor:pointer;}.yui-dt-editor{text-align:left;background-color:#F2F2F2;border:1px solid #808080;padding:6px;}.yui-dt-editor label{padding-left:4px;padding-right:6px;}.yui-dt-editor .yui-dt-button{padding-top:6px;text-align:right;}.yui-dt-editor .yui-dt-button button{background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0;border:1px solid #999;width:4em;height:1.8em;margin-left:6px;}.yui-dt-editor .yui-dt-button button.yui-dt-default{background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -1400px;background-color:#5584E0;border:1px solid #304369;color:#FFF}.yui-dt-editor .yui-dt-button button:hover{background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -1300px;color:#000;}.yui-dt-editor .yui-dt-button button:active{background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -1700px;color:#000;}.yui-skin-sam tr.yui-dt-even{background-color:#FFF;}.yui-skin-sam tr.yui-dt-odd{background-color:#EDF5FF;}.yui-skin-sam tr.yui-dt-even td.yui-dt-asc,.yui-skin-sam tr.yui-dt-even td.yui-dt-desc{background-color:#EDF5FF;}.yui-skin-sam tr.yui-dt-odd td.yui-dt-asc,.yui-skin-sam tr.yui-dt-odd td.yui-dt-desc{background-color:#DBEAFF;}.yui-skin-sam .yui-dt-list tr.yui-dt-even{background-color:#FFF;}.yui-skin-sam .yui-dt-list tr.yui-dt-odd{background-color:#FFF;}.yui-skin-sam .yui-dt-list tr.yui-dt-even td.yui-dt-asc,.yui-skin-sam .yui-dt-list tr.yui-dt-even td.yui-dt-desc{background-color:#EDF5FF;}.yui-skin-sam .yui-dt-list tr.yui-dt-odd td.yui-dt-asc,.yui-skin-sam .yui-dt-list tr.yui-dt-odd td.yui-dt-desc{background-color:#EDF5FF;}.yui-skin-sam tr.yui-dt-highlighted,.yui-skin-sam tr.yui-dt-highlighted td.yui-dt-asc,.yui-skin-sam tr.yui-dt-highlighted td.yui-dt-desc,.yui-skin-sam tr.yui-dt-even td.yui-dt-highlighted,.yui-skin-sam tr.yui-dt-odd td.yui-dt-highlighted{cursor:pointer;background-color:#B2D2FF;}.yui-skin-sam .yui-dt-list tr.yui-dt-highlighted,.yui-skin-sam .yui-dt-list tr.yui-dt-highlighted td.yui-dt-asc,.yui-skin-sam .yui-dt-list tr.yui-dt-highlighted td.yui-dt-desc,.yui-skin-sam .yui-dt-list tr.yui-dt-even td.yui-dt-highlighted,.yui-skin-sam .yui-dt-list tr.yui-dt-odd td.yui-dt-highlighted{cursor:pointer;background-color:#B2D2FF;}.yui-skin-sam tr.yui-dt-selected td,.yui-skin-sam tr.yui-dt-selected td.yui-dt-asc,.yui-skin-sam tr.yui-dt-selected td.yui-dt-desc{background-color:#426FD9;color:#FFF;}.yui-skin-sam tr.yui-dt-even td.yui-dt-selected,.yui-skin-sam tr.yui-dt-odd td.yui-dt-selected{background-color:#446CD7;color:#FFF;}.yui-skin-sam .yui-dt-list tr.yui-dt-selected td,.yui-skin-sam .yui-dt-list tr.yui-dt-selected td.yui-dt-asc,.yui-skin-sam .yui-dt-list tr.yui-dt-selected td.yui-dt-desc{background-color:#426FD9;color:#FFF;}.yui-skin-sam .yui-dt-list tr.yui-dt-even td.yui-dt-selected,.yui-skin-sam .yui-dt-list tr.yui-dt-odd td.yui-dt-selected{background-color:#446CD7;color:#FFF;}.yui-skin-sam .yui-dt-paginator{display:block;margin:6px 0;white-space:nowrap;}.yui-skin-sam .yui-dt-paginator .yui-dt-first,.yui-skin-sam .yui-dt-paginator .yui-dt-last,.yui-skin-sam .yui-dt-paginator .yui-dt-selected{padding:2px 6px;}.yui-skin-sam .yui-dt-paginator a.yui-dt-first,.yui-skin-sam .yui-dt-paginator a.yui-dt-last{text-decoration:none;}.yui-skin-sam .yui-dt-paginator .yui-dt-previous,.yui-skin-sam .yui-dt-paginator .yui-dt-next{display:none;}.yui-skin-sam a.yui-dt-page{border:1px solid #CBCBCB;padding:2px 6px;text-decoration:none;} Added: branches/trunk-reorg/projects/scrabble/website/yui/datatable/assets/skins/sam/dt-arrow-dn.png =================================================================== (Binary files differ) Property changes on: branches/trunk-reorg/projects/scrabble/website/yui/datatable/assets/skins/sam/dt-arrow-dn.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: branches/trunk-reorg/projects/scrabble/website/yui/datatable/assets/skins/sam/dt-arrow-up.png =================================================================== (Binary files differ) Property changes on: branches/trunk-reorg/projects/scrabble/website/yui/datatable/assets/skins/sam/dt-arrow-up.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: branches/trunk-reorg/projects/scrabble/website/yui/datatable/datatable-beta-min.js =================================================================== --- branches/trunk-reorg/projects/scrabble/website/yui/datatable/datatable-beta-min.js 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/website/yui/datatable/datatable-beta-min.js 2007-11-05 10:14:48 UTC (rev 2255) @@ -0,0 +1,21 @@ +/* +Copyright (c) 2007, Yahoo! Inc. All rights reserved. +Code licensed under the BSD License: +http://developer.yahoo.net/yui/license.txt +version: 2.3.1 +*/ +YAHOO.widget.DataTable=function(D,C,A,B){this._nIndex=YAHOO.widget.DataTable._nCount;this._sName="instance"+this._nIndex;this.id="yui-dt"+this._nIndex;this._initContainerEl(D);if(!this._elContainer){return ;}this._initConfigs(B);this._initColumnSet(C);if(!this._oColumnSet){return ;}this._initRecordSet();if(!this._oRecordSet){return ;}this._initDataSource(A);if(!this._oDataSource){return ;}if(this._oDataSource.dataType==YAHOO.util.DataSource.TYPE_HTMLTABLE){this._oDataSource.sendRequest(this.get("initialRequest"),this._onDataReturnEnhanceTable,this);}else{this._initTableEl();if(!this._elTable||!this._elThead||!this._elTbody){return ;}YAHOO.widget.DataTable.superclass.constructor.call(this,this._elContainer,this._oConfigs);if(this._oConfigs&&this._oConfigs.paginator){this.updatePaginator(this._oConfigs.paginator);}this._oDataSource.sendRequest(this.get("initialRequest"),this.onDataReturnInitializeTable,this);}this._initCellEditorEl();this._initColumnSort();this._initDomEvents();YAHOO.widget.DataTable._nCount++;};if(YAHOO.util.Element){YAHOO.lang.extend(YAHOO.widget.DataTable,YAHOO.util.Element);}else{}YAHOO.widget.DataTable.prototype.initAttributes=function(A){A=A||{};YAHOO.widget.DataTable.superclass.initAttributes.call(this,A);this.setAttributeConfig("summary",{value:null,validator:YAHOO.lang.isString,method:function(B){this._elTable.summary=B;}});this.setAttributeConfig("selectionMode",{value:"standard",validator:YAHOO.lang.isString});this.setAttributeConfig("initialRequest",{value:"",validator:YAHOO.lang.isString});this.setAttributeConfig("sortedBy",{value:null,validator:function(B){return(B&&(B.constructor==Object)&&B.key);},method:function(B){var C=this.get("sortedBy");if(C&&(C.constructor==Object)&&C.key){var E=this._oColumnSet.getColumn(C.key);var D=this.getThEl(E);YAHOO.util.Dom.removeClass(D,YAHOO.widget.DataTable.CLASS_ASC);YAHOO.util.Dom.removeClass(D,YAHOO.widget.DataTable.CLASS_DESC);}var F=(B.column)?B.column:this._oColumnSet.getColumn(B.key);if(F){var G=(B.dir&&(B.dir!="asc"))?YAHOO.widget.DataTable.CLASS_DESC:YAHOO.widget.DataTable.CLASS_ASC;YAHOO.util.Dom.addClass(this.id+"-col"+F.getId(),G);}}});this.setAttributeConfig("paginator",{value:{rowsPerPage:500,currentPage:1,startRecordIndex:0,totalRecords:0,totalPages:0,rowsThisPage:0,pageLinks:0,pageLinksStart:1,dropdownOptions:null,containers:[],dropdowns:[],links:[]},validator:function(B){if(B&&(B.constructor==Object)){if((B.rowsPerPage!==undefined)&&(B.currentPage!==undefined)&&(B.startRecordIndex!==undefined)&&(B.totalRecords!==undefined)&&(B.totalPages!==undefined)&&(B.rowsThisPage!==undefined)&&(B.pageLinks!==undefined)&&(B.pageLinksStart!==undefined)&&(B.dropdownOptions!==undefined)&&(B.containers!==undefined)&&(B.dropdowns!==undefined)&&(B.links!==undefined)){if(YAHOO.lang.isNumber(B.rowsPerPage)&&YAHOO.lang.isNumber(B.currentPage)&&YAHOO.lang.isNumber(B.startRecordIndex)&&YAHOO.lang.isNumber(B.totalRecords)&&YAHOO.lang.isNumber(B.totalPages)&&YAHOO.lang.isNumber(B.rowsThisPage)&&YAHOO.lang.isNumber(B.pageLinks)&&YAHOO.lang.isNumber(B.pageLinksStart)&&YAHOO.lang.isArray(B.dropdownOptions)&&YAHOO.lang.isArray(B.containers)&&YAHOO.lang.isArray(B.dropdowns)&&YAHOO.lang.isArray(B.links)){return true;}}}return false;}});this.setAttributeConfig("paginated",{value:false,validator:YAHOO.lang.isBoolean,method:function(B){var F=this.get("paginator");var E=F.containers;var D;if(B){if(E.length===0){var J=document.createElement("span");J.id=this.id+"-paginator0";YAHOO.util.Dom.addClass(J,YAHOO.widget.DataTable.CLASS_PAGINATOR);J=this._elContainer.insertBefore(J,this._elTable);E.push(J);var H=document.createElement("span");H.id=this.id+"-paginator1";YAHOO.util.Dom.addClass(H,YAHOO.widget.DataTable.CLASS_PAGINATOR);H=this._elContainer.insertBefore(H,this._elTable.nextSibling);E.push(H);this._configs.paginator.value.containers=[J,H];}else{for(D=0;D-1){var I=F.links;if(I.length===0){for(D=0;D0){for(D=0;D"+M+"";if(!this._sFirstLabelLinkId){this._sFirstLabelLinkId=H;}}else{D.innerHTML=M;}};YAHOO.widget.DataTable.prototype._initCellEditorEl=function(){var A=document.createElement("div");A.id=this.id+"-celleditor";A.style.display="none";YAHOO.util.Dom.addClass(A,YAHOO.widget.DataTable.CLASS_EDITOR);A=document.body.appendChild(A);var B={};B.container=A;B.value=null;B.isActive=false;this._oCellEditor=B;this.subscribe("editorKeydownEvent",function(C){var D=C.event;var E=YAHOO.util.Event.getTarget(D);if((D.keyCode==27)){this.cancelCellEditor();}});};YAHOO.widget.DataTable.prototype._initColumnSort=function(){this.subscribe("headerCellClickEvent",this.onEventSortColumn);};YAHOO.widget.DataTable.prototype._initDomEvents=function(){var B=this._elTable;var C=this._elThead;var A=this._elTbody;var D=this._elContainer;YAHOO.util.Event.addListener(document,"click",this._onDocumentClick,this);YAHOO.util.Event.addListener(document,"keydown",this._onDocumentKeydown,this);YAHOO.util.Event.addListener(B,"focus",this._onTableFocus,this);YAHOO.util.Event.addListener(B,"mouseover",this._onTableMouseover,this);YAHOO.util.Event.addListener(B,"mouseout",this._onTableMouseout,this);YAHOO.util.Event.addListener(B,"mousedown",this._onTableMousedown,this);YAHOO.util.Event.addListener(B,"keydown",this._onTableKeydown,this);YAHOO.util.Event.addListener(B,"keypress",this._onTableKeypress,this);YAHOO.util.Event.addListener(B,"dblclick",this._onTableDblclick,this);YAHOO.util.Event.addListener(C,"click",this._onTheadClick,this);YAHOO.util.Event.addListener(A,"click",this._onTbodyClick,this);YAHOO.util.Event.addListener(D,"scroll",this._onScroll,this);YAHOO.util.Event.addListener(A,"scroll",this._onScroll,this);};YAHOO.widget.DataTable.prototype._addTrEl=function(N,H){this.hideTableMessage();var B=(!YAHOO.lang.isNumber(H)||(H<0)||(H>=(this._elTbody.rows.length)))?true:false;var K=this._oColumnSet;var J=this._oRecordSet;var C=this.get("sortedBy");var L=null;var G,I;if(C){L=(C.column)?C.column.getKeyIndex():this._oColumnSet.getColumn(C.key).getKeyIndex();G=C.dir;I=(G==="desc")?YAHOO.widget.DataTable.CLASS_DESC:YAHOO.widget.DataTable.CLASS_ASC;}var A=(B)?this._elTbody.appendChild(document.createElement("tr")):this._elTbody.insertBefore(document.createElement("tr"),this._elTbody.rows[H]);A.id=this.id+"-bdrow"+this._nTrCount;this._nTrCount++;A.yuiRecordId=N.getId();for(var E=0;E-2)&&(B1)){A=F+C;}}}for(var D=F;D36)&&(O<41)){YAHOO.util.Event.stopEvent(W);var F=H._elTbody.rows;var P=H.get("selectionMode");var S,T,K,Q,R,I,Y,U,D,J,L,C,A,N,E,B,M,V;if((P=="standard")||(P=="single")){D=H.getLastSelectedRecord();if(!D){return ;}else{D=H.getRecord(D);J=H.getRecordIndex(D);N=H.getTrEl(D);L=H.getTrIndex(N);if(L===null){return ;}}K=H._oAnchorRecord;if(!K){K=H._oAnchorRecord=D;}Q=H.getRecordIndex(K);R=H.getTrIndex(K);if(R===null){if(QL){M=1;}else{if(Q=0){if(L>0){H.selectRow(F[L-1]);}}else{H.unselectRow(F[L]);}}else{if(O==39){}else{if(O==37){}}}}}else{if(O==40){H.unselectAllRows(); +if(L0){V=F[L-1];H.selectRow(V);}else{V=F[L];H.selectRow(V);}H._oAnchorRecord=H.getRecord(V);}else{if(O==39){}else{if(O==37){}}}}}}else{U=H.getLastSelectedCell();if(!U){return ;}else{D=H.getRecord(U.recordId);J=H.getRecordIndex(D);N=H.getTrEl(D);L=H.getTrIndex(N);if(L===null){return ;}else{C=H.getColumnById(U.columnId);A=C.getKeyIndex();}}T=H._oAnchorCell;if(!T){T=H._oAnchorCell=U;}K=H._oAnchorCell.record;Q=H._oRecordSet.getRecordIndex(K);R=H.getTrIndex(K);if(R===null){if(QJ){M=1;}else{if(QB){for(S=E;S>=B;S--){V=F[L+1].cells[S];H.selectCell(V);}}else{for(S=E;S<=B;S++){V=F[L+1].cells[S];H.selectCell(V);}}}}else{E=Math.min(Y,A);B=Math.max(Y,A);for(S=E;S<=B;S++){H.unselectCell(F[L].cells[S]);}}}else{if(O==38){if(Q>J){M=1;}else{if(Q=0){if(L>0){E=Y;B=A;if(E>B){for(S=E;S>=B;S--){V=F[L-1].cells[S];H.selectCell(V);}}else{for(S=E;S<=B;S++){V=F[L-1].cells[S];H.selectCell(V);}}}}else{E=Math.min(Y,A);B=Math.max(Y,A);for(S=E;S<=B;S++){H.unselectCell(F[L].cells[S]);}}}else{if(O==39){if(Y>A){M=1;}else{if(YB){for(S=E;S>=B;S--){V=F[S].cells[A+1];H.selectCell(V);}}else{for(S=E;S<=B;S++){V=F[S].cells[A+1];H.selectCell(V);}}}}else{E=Math.min(R,L);B=Math.max(R,L);for(S=E;S<=B;S++){H.unselectCell(F[S].cells[A]);}}}else{if(O==37){if(Y>A){M=1;}else{if(Y=0){if(A>0){E=R;B=L;if(E>B){for(S=E;S>=B;S--){V=F[S].cells[A-1];H.selectCell(V);}}else{for(S=E;S<=B;S++){V=F[S].cells[A-1];H.selectCell(V);}}}}else{E=Math.min(R,L);B=Math.max(R,L);for(S=E;S<=B;S++){H.unselectCell(F[S].cells[A]);}}}}}}}else{if(G&&(P=="cellrange")){if(Q>J){M=1;}else{if(Q=0){for(S=A-1;S>-1;S--){V=F[L].cells[S];H.selectCell(V);}if(L>0){for(S=F[L].cells.length-1;S>=A;S--){V=F[L-1].cells[S];H.selectCell(V);}}}else{for(S=A;S>-1;S--){H.unselectCell(F[L].cells[S]);}for(S=F[L].cells.length-1;S>A;S--){H.unselectCell(F[L-1].cells[S]);}}}else{if(O==39){if(M<0){if(A0){H.unselectCell(F[L].cells[A]);if(A0){}else{}}else{if(M>0){if(A>0){V=F[L].cells[A-1];H.selectCell(V);}else{if(L>0){V=F[L-1].cells[F[L-1].cells.length-1];H.selectCell(V);}}}else{if(Y>=A){if(A>0){V=F[L].cells[A-1];H.selectCell(V);}else{if(L>0){V=F[L-1].cells[F[L-1].cells.length-1];H.selectCell(V);}}}else{H.unselectCell(F[L].cells[A]);if(A>0){}else{}}}}}}}}}else{if((P=="cellblock")||(P=="cellrange")||(P=="singlecell")){if(O==40){H.unselectAllCells();if(L0){V=F[L-1].cells[A];H.selectCell(V);}else{V=F[L].cells[A];H.selectCell(V);}H._oAnchorCell={record:H.getRecord(V),column:H.getColumn(V)};}else{if(O==39){H.unselectAllCells();if(A0){V=F[L].cells[A-1];H.selectCell(V);}else{V=F[L].cells[A];H.selectCell(V);}H._oAnchorCell={record:H.getRecord(V),column:H.getColumn(V)};}}}}}}}}}else{return ;}};YAHOO.widget.DataTable.prototype._onTableKeypress=function(D,C){var B=(navigator.userAgent.toLowerCase().indexOf("mac")!=-1);if(B){var A=YAHOO.util.Event.getCharCode(D);if(A==40){YAHOO.util.Event.stopEvent(D);}else{if(A==38){YAHOO.util.Event.stopEvent(D);}}}};YAHOO.widget.DataTable.prototype._onTheadClick=function(C,B){var D=YAHOO.util.Event.getTarget(C);var A=D.tagName.toLowerCase();if(B._oCellEditor&&B._oCellEditor.isActive){B.fireEvent("editorBlurEvent",{editor:B._oCellEditor});}while(D&&(A!="thead")){switch(A){case"body":break;case"span":if(YAHOO.util.Dom.hasClass(D,YAHOO.widget.DataTable.CLASS_LABEL)){B.fireEvent("headerLabelClickEvent",{target:D,event:C});}break;case"th":B.fireEvent("headerCellClickEvent",{target:D,event:C});break;case"tr":B.fireEvent("headerRowClickEvent",{target:D,event:C});break;default:break;}D=D.parentNode;if(D){A=D.tagName.toLowerCase();}}B.fireEvent("tableClickEvent",{target:(D||B._elTable),event:C});};YAHOO.widget.DataTable.prototype._onTbodyClick=function(C,B){var D=YAHOO.util.Event.getTarget(C);var A=D.tagName.toLowerCase();if(B._oCellEditor&&B._oCellEditor.isActive){B.fireEvent("editorBlurEvent",{editor:B._oCellEditor});}while(D&&(A!="table")){switch(A){case"body":break;case"input":if(D.type.toLowerCase()=="checkbox"){B.fireEvent("checkboxClickEvent",{target:D,event:C});}else{if(D.type.toLowerCase()=="radio"){B.fireEvent("radioClickEvent",{target:D,event:C});}}B.fireEvent("tableClickEvent",{target:(D||B._elTable),event:C});return ;case"a":B.fireEvent("linkClickEvent",{target:D,event:C});B.fireEvent("tableClickEvent",{target:(D||B._elTable),event:C});return ;case"button":B.fireEvent("buttonClickEvent",{target:D,event:C});B.fireEvent("tableClickEvent",{target:(D||B._elTable),event:C});return ;case"td":B.fireEvent("cellClickEvent",{target:D,event:C}); +break;case"tr":B.fireEvent("rowClickEvent",{target:D,event:C});break;default:break;}D=D.parentNode;if(D){A=D.tagName.toLowerCase();}}B.fireEvent("tableClickEvent",{target:(D||B._elTable),event:C});};YAHOO.widget.DataTable.prototype._onPaginatorLinkClick=function(C,B){var D=YAHOO.util.Event.getTarget(C);var A=D.tagName.toLowerCase();if(B._oCellEditor&&B._oCellEditor.isActive){B.fireEvent("editorBlurEvent",{editor:B._oCellEditor});}while(D&&(A!="table")){switch(A){case"body":return ;case"a":YAHOO.util.Event.stopEvent(C);switch(D.className){case YAHOO.widget.DataTable.CLASS_PAGE:B.showPage(parseInt(D.innerHTML,10));return ;case YAHOO.widget.DataTable.CLASS_FIRST:B.showPage(1);return ;case YAHOO.widget.DataTable.CLASS_LAST:B.showPage(B.get("paginator").totalPages);return ;case YAHOO.widget.DataTable.CLASS_PREVIOUS:B.showPage(B.get("paginator").currentPage-1);return ;case YAHOO.widget.DataTable.CLASS_NEXT:B.showPage(B.get("paginator").currentPage+1);return ;}break;default:return ;}D=D.parentNode;if(D){A=D.tagName.toLowerCase();}else{return ;}}};YAHOO.widget.DataTable.prototype._onPaginatorDropdownChange=function(E,B){var F=YAHOO.util.Event.getTarget(E);var D=F[F.selectedIndex].value;var A=YAHOO.lang.isValue(parseInt(D,10))?parseInt(D,10):null;if(A!==null){var C=(B.get("paginator").currentPage-1)*A;B.updatePaginator({rowsPerPage:A,startRecordIndex:C});B.refreshView();}else{}};YAHOO.widget.DataTable.prototype._onDropdownChange=function(B,A){var C=YAHOO.util.Event.getTarget(B);A.fireEvent("dropdownChangeEvent",{event:B,target:C});};YAHOO.widget.DataTable.prototype.toString=function(){return"DataTable "+this._sName;};YAHOO.widget.DataTable.prototype.getDataSource=function(){return this._oDataSource;};YAHOO.widget.DataTable.prototype.getColumnSet=function(){return this._oColumnSet;};YAHOO.widget.DataTable.prototype.getRecordSet=function(){return this._oRecordSet;};YAHOO.widget.DataTable.prototype.getCellEditor=function(){return this._oCellEditor;};YAHOO.widget.DataTable.prototype.getTableEl=function(){return this._elTable;};YAHOO.widget.DataTable.prototype.getTheadEl=function(){return this._elThead;};YAHOO.widget.DataTable.prototype.getTbodyEl=function(){return this._elTbody;};YAHOO.widget.DataTable.prototype.getBody=function(){return this.getTbodyEl();};YAHOO.widget.DataTable.prototype.getMsgTbodyEl=function(){return this._elMsgTbody;};YAHOO.widget.DataTable.prototype.getMsgTdEl=function(){return this._elMsgTd;};YAHOO.widget.DataTable.prototype.getTrEl=function(E){var D=this._elTbody.rows;if(E instanceof YAHOO.widget.Record){var C=this.getTrIndex(E);if(C!==null){return D[C];}else{return null;}}else{if(YAHOO.lang.isNumber(E)&&(E>-1)&&(E0){return A[A.length-1]||null;}};YAHOO.widget.DataTable.prototype.getTdEl=function(A){var E;var C=YAHOO.util.Dom.get(A);if(C&&(C.ownerDocument==document)){if(C.tagName.toLowerCase()!="td"){E=YAHOO.util.Dom.getAncestorByTagName(C,"td");}else{E=C;}if(E&&(E.parentNode.parentNode==this._elTbody)){return E;}}else{if(A.record&&A.column&&A.column.getKeyIndex){var D=A.record;var B=this.getTrEl(D);if(B&&B.cells&&B.cells.length>0){return B.cells[A.column.getKeyIndex()]||null;}}}return null;};YAHOO.widget.DataTable.prototype.getThEl=function(D){var A;if(D instanceof YAHOO.widget.Column){var C=D;A=YAHOO.util.Dom.get(this.id+"-col"+C.getId());if(A){return A;}}else{var B=YAHOO.util.Dom.get(D);if(B&&(B.ownerDocument==document)){if(B.tagName.toLowerCase()!="th"){A=YAHOO.util.Dom.getAncestorByTagName(B,"th");}else{A=B;}if(A&&(A.parentNode.parentNode==this._elThead)){return A;}}}return null;};YAHOO.widget.DataTable.prototype.getTrIndex=function(D){var C;if(D instanceof YAHOO.widget.Record){C=this._oRecordSet.getRecordIndex(D);if(C===null){return null;}}else{if(YAHOO.lang.isNumber(D)){C=D;}}if(YAHOO.lang.isNumber(C)){if((C>-1)&&(C=B)&&(C<=E)){return C-B;}else{return null;}}else{return C;}}else{return null;}}else{var A=this.getTrEl(D);if(A&&(A.ownerDocument==document)&&(A.parentNode==this._elTbody)){return A.sectionRowIndex;}}return null;};YAHOO.widget.DataTable.prototype.initializeTable=function(B){this._oRecordSet.reset();var A=this._oRecordSet.addRecords(B);this._unselectAllTrEls();this._unselectAllTdEls();this._aSelections=null;this._oAnchorRecord=null;this._oAnchorCell=null;this.refreshView();this.fireEvent("initEvent");};YAHOO.widget.DataTable.prototype.refreshView=function(){var H,G,F,E,J;var K=this.updatePaginator();if(this.get("paginated")){var A=K.rowsPerPage;var D=(K.currentPage-1)*A;J=this._oRecordSet.getRecords(D,A);this.formatPaginators();}else{J=this._oRecordSet.getRecords();}var B=this._elTbody;var O=B.rows;if(YAHOO.lang.isArray(J)&&(J.length>0)){this.hideTableMessage();var N=this.getSelectedRows();var I=this.getSelectedCells();var C=(N.length>0)||(I.length>0);while(B.hasChildNodes()&&(O.length>J.length)){B.deleteRow(-1);}if(C){this._unselectAllTrEls();this._unselectAllTdEls();}for(H=0;H-1;C--){this.addRow(B[C],A);}}else{for(C=0;C-1;F--){if((YAHOO.lang.isNumber(I[F])&&(I[F]===H))||((I[F].constructor==Object)&&(I[F].recordId===H))){I.splice(F,1);}}var A=this.getRecordIndex(L);var J=L.getData();var D={};for(var E in J){D[E]=J[E];}var C=this.getTrIndex(L);this._oRecordSet.deleteRecord(A);if(YAHOO.lang.isNumber(C)){var G=(C==this.getLastTrEl().sectionRowIndex)?true:false;this._deleteTrEl(C);if(this._elTbody.rows.length===0){this.showTableMessage(YAHOO.widget.DataTable.MSG_EMPTY,YAHOO.widget.DataTable.CLASS_EMPTY);}else{if(C===0){this._setFirstRow();}if(G){this._setLastRow();}if(C!=this._elTbody.rows.length){this._setRowStripes(C);}}}this.fireEvent("rowDeleteEvent",{recordIndex:A,oldData:D,trElIndex:C});}else{}};YAHOO.widget.DataTable.prototype.deleteRows=function(G,C){var E=null;if(YAHOO.lang.isNumber(G)){E=G;}else{var A=YAHOO.util.Dom.get(G);A=this.getTrEl(A);if(A){E=this.getRecordIndex(A);}}if(E!==null){if(C&&YAHOO.lang.isNumber(C)){var F=(C>0)?E+C-1:E;var D=(C>0)?E:E+C+1; +for(var B=F;B>D-1;B--){this.deleteRow(B);}}else{this.deleteRow(E);}}else{}};YAHOO.widget.DataTable.prototype.formatCell=function(F,D,G){if(!(D instanceof YAHOO.widget.Record)){D=this.getRecord(F);}if(!(G instanceof YAHOO.widget.Column)){G=this._oColumnSet.getColumn(F.yuiColumnKey);}if(D&&G){var E=G.key;var H=D.getData(E);var B;if(YAHOO.lang.isString(G.formatter)){switch(G.formatter){case"button":B=YAHOO.widget.DataTable.formatButton;break;case"checkbox":B=YAHOO.widget.DataTable.formatCheckbox;break;case"currency":B=YAHOO.widget.DataTable.formatCurrency;break;case"date":B=YAHOO.widget.DataTable.formatDate;break;case"dropdown":B=YAHOO.widget.DataTable.formatDropdown;break;case"email":B=YAHOO.widget.DataTable.formatEmail;break;case"link":B=YAHOO.widget.DataTable.formatLink;break;case"number":B=YAHOO.widget.DataTable.formatNumber;break;case"radio":B=YAHOO.widget.DataTable.formatRadio;break;case"text":B=YAHOO.widget.DataTable.formatText;break;case"textarea":B=YAHOO.widget.DataTable.formatTextarea;break;case"textbox":B=YAHOO.widget.DataTable.formatTextbox;break;case"html":break;default:B=null;}}else{if(YAHOO.lang.isFunction(G.formatter)){B=G.formatter;}}if(B){B.call(this,F,D,G,H);}else{F.innerHTML=(YAHOO.lang.isValue(H))?H.toString():"";}var C=null;if(YAHOO.lang.isString(G.className)){C=[G.className];}else{if(YAHOO.lang.isArray(G.className)){C=G.className;}}if(C){for(var A=0;A"+D+"";};YAHOO.widget.DataTable.formatCheckbox=function(A,B,C,E){var D=E;D=(D)?" checked":"";A.innerHTML="";};YAHOO.widget.DataTable.formatCurrency=function(C,E,F,G){if(YAHOO.lang.isNumber(G)){var B=G;var A;B=Math.round(B*100)/100;A="$"+B;var D=A.indexOf(".");if(D<0){A+=".00";}else{while(D>A.length-3){A+="0";}}C.innerHTML=A;}else{C.innerHTML=YAHOO.lang.isValue(G)?G:"";}};YAHOO.widget.DataTable.formatDate=function(A,C,D,E){var B=E;if(B instanceof Date){A.innerHTML=(B.getMonth()+1)+"/"+B.getDate()+"/"+B.getFullYear();}else{A.innerHTML=YAHOO.lang.isValue(E)?E:"";}};YAHOO.widget.DataTable.formatDropdown=function(C,J,H,A){var I=(YAHOO.lang.isValue(A))?A:J.getData(H.key);var K=(YAHOO.lang.isArray(H.dropdownOptions))?H.dropdownOptions:null;var B;var G=C.getElementsByTagName("select");if(G.length===0){B=document.createElement("select");YAHOO.util.Dom.addClass(B,YAHOO.widget.DataTable.CLASS_DROPDOWN);B=C.appendChild(B);YAHOO.util.Event.addListener(B,"change",this._onDropdownChange,this);}B=G[0];if(B){B.innerHTML="";if(K){for(var E=0;E"+I+"";}}else{C.innerHTML=YAHOO.lang.isValue(A)?A:"";}};YAHOO.widget.DataTable.formatEmail=function(A,B,C,D){if(YAHOO.lang.isString(D)){A.innerHTML=""+D+"";}else{A.innerHTML=YAHOO.lang.isValue(D)?D:"";}};YAHOO.widget.DataTable.formatLink=function(A,B,C,D){if(YAHOO.lang.isString(D)){A.innerHTML=""+D+"";}else{A.innerHTML=YAHOO.lang.isValue(D)?D:"";}};YAHOO.widget.DataTable.formatNumber=function(A,B,C,D){if(YAHOO.lang.isNumber(D)){A.innerHTML=D;}else{A.innerHTML=YAHOO.lang.isValue(D)?D:"";}};YAHOO.widget.DataTable.formatRadio=function(A,B,C,E){var D=E;D=(D)?" checked":"";A.innerHTML="";};YAHOO.widget.DataTable.formatText=function(A,B,D,E){var C=(YAHOO.lang.isValue(B.getData(D.key)))?B.getData(D.key):"";A.innerHTML=C.toString().replace(/&/g,"&").replace(//g,">");};YAHOO.widget.DataTable.formatTextarea=function(B,C,E,F){var D=(YAHOO.lang.isValue(C.getData(E.key)))?C.getData(E.key):"";var A="";B.innerHTML=A;};YAHOO.widget.DataTable.formatTextbox=function(B,C,E,F){var D=(YAHOO.lang.isValue(C.getData(E.key)))?C.getData(E.key):"";var A="";B.innerHTML=A;};YAHOO.widget.DataTable.prototype.updatePaginator=function(B){var D=this.get("paginator");var A=D.currentPage;for(var C in B){if(YAHOO.lang.hasOwnProperty(D,C)){D[C]=B[C];}}D.totalRecords=this._oRecordSet.getLength();D.rowsThisPage=Math.min(D.rowsPerPage,D.totalRecords);D.totalPages=Math.ceil(D.totalRecords/D.rowsThisPage);if(isNaN(D.totalPages)){D.totalPages=0;}if(D.currentPage>D.totalPages){if(D.totalPages<1){D.currentPage=1;}else{D.currentPage=D.totalPages;}}if(D.currentPage!==A){D.startRecordIndex=(D.currentPage-1)*D.rowsPerPage;}this.set("paginator",D);return this.get("paginator");};YAHOO.widget.DataTable.prototype.showPage=function(A){if(!YAHOO.lang.isNumber(A)||(A<1)||(A>this.get("paginator").totalPages)){A=1;}this.updatePaginator({currentPage:A});this.refreshView();};YAHOO.widget.DataTable.prototype.formatPaginators=function(){var B=this.get("paginator");var A;var C=false;if(B.pageLinks>-1){for(A=0;A-1;D--){if((this.get("paginator").rowsPerPage+"")===B[D].value){B[D].selected=true;}}}F.style.display="";return ;}};YAHOO.widget.DataTable.prototype.formatPaginatorLinks=function(E,A,N,D,K){if(E&&(E.ownerDocument==document)&&YAHOO.lang.isNumber(A)&&YAHOO.lang.isNumber(N)&&YAHOO.lang.isNumber(K)){var G=(A==1)?true:false;var B=(A==K)?true:false;var I=(G)?" << ":" << ";var L=(G)?" < ":" < ";var O=(B)?" > ":" > ";var C=(B)?" >> ":" >> ";var H=I+L;var P=K;var J=1;var M=K;if(D>0){P=(N+D0)?A-Math.floor(P/2):1;M=(A+Math.floor(P/2)<=K)?A+Math.floor(P/2):K;if(J===1){M=P;}else{if(M===K){J=K-P+1;}}if(M-J===P){M--;}}for(var F=J;F<=M;F++){if(F!=A){H+=" "+F+" ";}else{H+=" "+F+"";}}H+=O+C;E.innerHTML=H;return ;}};YAHOO.widget.DataTable.prototype._sLastHighlightedTdElId=null;YAHOO.widget.DataTable.prototype._sLastHighlightedTrElId=null;YAHOO.widget.DataTable.prototype._aSelections=null;YAHOO.widget.DataTable.prototype._oAnchorRecord=null;YAHOO.widget.DataTable.prototype._oAnchorCell=null;YAHOO.widget.DataTable.prototype._unselectAllTrEls=function(){var A=YAHOO.util.Dom.getElementsByClassName(YAHOO.widget.DataTable.CLASS_SELECTED,"tr",this._elTbody);YAHOO.util.Dom.removeClass(A,YAHOO.widget.DataTable.CLASS_SELECTED);};YAHOO.widget.DataTable.prototype.getSelectedTrEls=function(){return YAHOO.util.Dom.getElementsByClassName(YAHOO.widget.DataTable.CLASS_SELECTED,"tr",this._elTbody);};YAHOO.widget.DataTable.prototype.selectRow=function(F){var E,A;if(F instanceof YAHOO.widget.Record){E=this._oRecordSet.getRecord(F);A=this.getTrEl(E);}else{if(YAHOO.lang.isNumber(F)){E=this.getRecord(F);A=this.getTrEl(E);}else{A=this.getTrEl(F);E=this.getRecord(A);}}if(E){var D=this._aSelections||[];var C=E.getId();if(D.indexOf&&(D.indexOf(C)>-1)){D.splice(D.indexOf(C),1);}else{for(var B=D.length-1;B>-1;B--){if(D[B]===C){D.splice(B,1);break;}}}D.push(C);this._aSelections=D;if(!this._oAnchorRecord){this._oAnchorRecord=E;}if(A){YAHOO.util.Dom.addClass(A,YAHOO.widget.DataTable.CLASS_SELECTED);}this.fireEvent("rowSelectEvent",{record:E,el:A});}};YAHOO.widget.DataTable.prototype.select=function(B){if(!YAHOO.lang.isArray(B)){B=[B];}for(var A=0;A-1)){E.splice(E.indexOf(C),1);}else{for(var B=E.length-1;B>-1;B--){if(E[B]===C){E.splice(B,1);break;}}}if(D){this._aSelections=E;YAHOO.util.Dom.removeClass(A,YAHOO.widget.DataTable.CLASS_SELECTED);this.fireEvent("rowUnselectEvent",{record:F,el:A});return ;}YAHOO.util.Dom.removeClass(A,YAHOO.widget.DataTable.CLASS_SELECTED);this.fireEvent("rowUnselectEvent",{record:F,el:A});}};YAHOO.widget.DataTable.prototype.unselectAllRows=function(){var B=this._aSelections||[];for(var A=B.length-1;A>-1;A--){if(YAHOO.lang.isString(B[A])){B.splice(A,1);}}this._aSelections=B;this._unselectAllTrEls();this.fireEvent("unselectAllRowsEvent");};YAHOO.widget.DataTable.prototype._unselectAllTdEls=function(){var A=YAHOO.util.Dom.getElementsByClassName(YAHOO.widget.DataTable.CLASS_SELECTED,"td",this._elTbody);YAHOO.util.Dom.removeClass(A,YAHOO.widget.DataTable.CLASS_SELECTED);};YAHOO.widget.DataTable.prototype.getSelectedTdEls=function(){return YAHOO.util.Dom.getElementsByClassName(YAHOO.widget.DataTable.CLASS_SELECTED,"td",this._elTbody);};YAHOO.widget.DataTable.prototype.selectCell=function(A){var G=this.getTdEl(A);if(G){var F=this.getRecord(G);var E=G.yuiColumnId;if(F&&E){var D=this._aSelections||[];var C=F.getId();for(var B=D.length-1;B>-1;B--){if((D[B].recordId===C)&&(D[B].columnId===E)){D.splice(B,1);break;}}D.push({recordId:C,columnId:E});this._aSelections=D;if(!this._oAnchorCell){this._oAnchorCell={record:F,column:this.getColumnById(E)};}YAHOO.util.Dom.addClass(G,YAHOO.widget.DataTable.CLASS_SELECTED);this.fireEvent("cellSelectEvent",{record:F,column:this.getColumnById(E),key:G.yuiColumnKey,el:G});return ;}}};YAHOO.widget.DataTable.prototype.unselectCell=function(A){var F=this.getTdEl(A);if(F){var E=this.getRecord(F);var D=F.yuiColumnId;if(E&&D){var C=this._aSelections||[];var G=E.getId();for(var B=C.length-1;B>-1;B--){if((C[B].recordId===G)&&(C[B].columnId===D)){C.splice(B,1);this._aSelections=C;YAHOO.util.Dom.removeClass(F,YAHOO.widget.DataTable.CLASS_SELECTED);this.fireEvent("cellUnselectEvent",{record:E,column:this.getColumnById(D),key:F.yuiColumnKey,el:F});return ;}}}}};YAHOO.widget.DataTable.prototype.unselectAllCells=function(){var B=this._aSelections||[];for(var A=B.length-1;A>-1;A--){if(B[A].constructor==Object){B.splice(A,1);}}this._aSelections=B;this._unselectAllTdEls();this.fireEvent("unselectAllCellsEvent");};YAHOO.widget.DataTable.prototype.isSelected=function(G){var F,B,A;var C=this.getTrEl(G)||this.getTdEl(G); +if(C){return YAHOO.util.Dom.hasClass(C,YAHOO.widget.DataTable.CLASS_SELECTED);}else{var E=this._aSelections;if(E&&E.length>1){if(G instanceof YAHOO.widget.Record){F=G;}else{if(YAHOO.lang.isNumber(G)){F=this.getRecord(G);}}if(F){B=F.getId();if(E.indexOf&&(E.indexOf(B)>-1)){return true;}else{for(A=E.length-1;A>-1;A--){if(E[A]===B){return true;}}}}else{if(G.record&&G.column){B=G.record.getId();var D=G.column.getId();for(A=E.length-1;A>-1;A--){if((E[A].recordId===B)&&(E[A].columnId===D)){return true;}}}}}}return false;};YAHOO.widget.DataTable.prototype.getSelectedRows=function(){var A=[];var C=this._aSelections||[];for(var B=0;B0){for(var A=B.length-1;A>-1;A--){if(YAHOO.lang.isString(B[A])){return B[A];}}}};YAHOO.widget.DataTable.prototype.getLastSelectedCell=function(){var B=this._aSelections;if(B.length>0){for(var A=B.length-1;A>-1;A--){if(B[A].recordId&&B[A].columnId){return B[A];}}}};YAHOO.widget.DataTable.prototype.highlightRow=function(C){var A=this.getTrEl(C);if(A){if(this._sLastHighlightedTrElId){YAHOO.util.Dom.removeClass(this._sLastHighlightedTrElId,YAHOO.widget.DataTable.CLASS_HIGHLIGHTED);}var B=this.getRecord(A);YAHOO.util.Dom.addClass(A,YAHOO.widget.DataTable.CLASS_HIGHLIGHTED);this._sLastHighlightedTrElId=A.id;this.fireEvent("rowHighlightEvent",{record:B,el:A});return ;}};YAHOO.widget.DataTable.prototype.unhighlightRow=function(C){var A=this.getTrEl(C);if(A){var B=this.getRecord(A);YAHOO.util.Dom.removeClass(A,YAHOO.widget.DataTable.CLASS_HIGHLIGHTED);this.fireEvent("rowUnhighlightEvent",{record:B,el:A});return ;}};YAHOO.widget.DataTable.prototype.highlightCell=function(A){var D=this.getTdEl(A);if(D){if(this._sLastHighlightedTdElId){YAHOO.util.Dom.removeClass(this._sLastHighlightedTdElId,YAHOO.widget.DataTable.CLASS_HIGHLIGHTED);}var C=this.getRecord(D);var B=D.yuiColumnId;YAHOO.util.Dom.addClass(D,YAHOO.widget.DataTable.CLASS_HIGHLIGHTED);this._sLastHighlightedTdElId=D.id;this.fireEvent("cellHighlightEvent",{record:C,column:this.getColumnById(B),key:D.yuiColumnKey,el:D});return ;}};YAHOO.widget.DataTable.prototype.unhighlightCell=function(A){var C=this.getTdEl(A);if(C){var B=this.getRecord(C);YAHOO.util.Dom.removeClass(C,YAHOO.widget.DataTable.CLASS_HIGHLIGHTED);this.fireEvent("cellUnhighlightEvent",{record:B,column:this.getColumnById(C.yuiColumnId),key:C.yuiColumnKey,el:C});return ;}};YAHOO.widget.DataTable.prototype.showCellEditor=function(E,C,G){E=YAHOO.util.Dom.get(E);if(E&&(E.ownerDocument===document)){if(!C||!(C instanceof YAHOO.widget.Record)){C=this.getRecord(E);}if(!G||!(G instanceof YAHOO.widget.Column)){G=this.getColumn(E);}if(C&&G){var D=this._oCellEditor;if(D.isActive){this.cancelCellEditor();}if(!G.editor){return ;}D.cell=E;D.record=C;D.column=G;D.validator=(G.editorOptions&&YAHOO.lang.isFunction(G.editorOptions.validator))?G.editorOptions.validator:null;D.value=C.getData(G.key);var F=D.container;var A=YAHOO.util.Dom.getX(E);var H=YAHOO.util.Dom.getY(E);if(isNaN(A)||isNaN(H)){A=E.offsetLeft+YAHOO.util.Dom.getX(this._elTable)-this._elTbody.scrollLeft;H=E.offsetTop+YAHOO.util.Dom.getY(this._elTable)-this._elTbody.scrollTop+this._elThead.offsetHeight;}F.style.left=A+"px";F.style.top=H+"px";F.style.display="";var B;if(YAHOO.lang.isString(G.editor)){switch(G.editor){case"checkbox":B=YAHOO.widget.DataTable.editCheckbox;break;case"date":B=YAHOO.widget.DataTable.editDate;break;case"dropdown":B=YAHOO.widget.DataTable.editDropdown;break;case"radio":B=YAHOO.widget.DataTable.editRadio;break;case"textarea":B=YAHOO.widget.DataTable.editTextarea;break;case"textbox":B=YAHOO.widget.DataTable.editTextbox;break;default:B=null;}}else{if(YAHOO.lang.isFunction(G.editor)){B=G.editor;}}if(B){B(this._oCellEditor,this);if(!G.editorOptions||!G.editorOptions.disableBtns){this.showCellEditorBtns(F);}this.doBeforeShowCellEditor(this._oCellEditor);D.isActive=true;this.fireEvent("editorShowEvent",{editor:D});return ;}}}};YAHOO.widget.DataTable.prototype.doBeforeShowCellEditor=function(A){};YAHOO.widget.DataTable.prototype.showCellEditorBtns=function(C){var D=C.appendChild(document.createElement("div"));YAHOO.util.Dom.addClass(D,YAHOO.widget.DataTable.CLASS_BUTTON);var B=D.appendChild(document.createElement("button"));YAHOO.util.Dom.addClass(B,YAHOO.widget.DataTable.CLASS_DEFAULT);B.innerHTML="OK";YAHOO.util.Event.addListener(B,"click",this.saveCellEditor,this,true);var A=D.appendChild(document.createElement("button"));A.innerHTML="Cancel";YAHOO.util.Event.addListener(A,"click",this.cancelCellEditor,this,true);};YAHOO.widget.DataTable.prototype.resetCellEditor=function(){var A=this._oCellEditor.container;A.style.display="none";YAHOO.util.Event.purgeElement(A,true);A.innerHTML="";this._oCellEditor.value=null;this._oCellEditor.isActive=false;};YAHOO.widget.DataTable.prototype.saveCellEditor=function(){if(this._oCellEditor.isActive){var A=this._oCellEditor.value;var B=this._oCellEditor.record.getData(this._oCellEditor.column.key);if(this._oCellEditor.validator){this._oCellEditor.value=this._oCellEditor.validator.call(this,A,B,this._oCellEditor);if(this._oCellEditor.value===null){this.resetCellEditor();this.fireEvent("editorRevertEvent",{editor:this._oCellEditor,oldData:B,newData:A});return ;}}this._oRecordSet.updateKey(this._oCellEditor.record,this._oCellEditor.column.key,this._oCellEditor.value);this.formatCell(this._oCellEditor.cell);this.resetCellEditor();this.fireEvent("editorSaveEvent",{editor:this._oCellEditor,oldData:B,newData:A});}else{}};YAHOO.widget.DataTable.prototype.cancelCellEditor=function(){if(this._oCellEditor.isActive){this.resetCellEditor();this.fireEvent("editorCancelEvent",{editor:this._oCellEditor});}else{}};YAHOO.widget.DataTable.editCheckbox=function(J,I){var K=J.cell; +var O=J.record;var G=J.column;var A=J.container;var D=O.getData(G.key);if(!YAHOO.lang.isArray(D)){D=[D];}if(G.editorOptions&&YAHOO.lang.isArray(G.editorOptions.checkboxOptions)){var N=G.editorOptions.checkboxOptions;var F,L,E,C,B;for(C=0;C";E=A.appendChild(document.createElement("label"));E.htmlFor=L;E.innerHTML=F;}var H=[];var M;for(C=0;C";D=A.appendChild(document.createElement("label"));D.htmlFor=K;D.innerHTML=B;}for(C=0;C=E;H--){if(!this.isSelected(H)){this.selectRow(H);}}}}else{if(L=E;H--){this.selectRow(H);}}}else{this._oAnchorRecord=O;this.selectRow(O);}}else{if((M!="single")&&G){this._oAnchorRecord=O;if(this.isSelected(O)){this.unselectRow(O);}else{this.selectRow(O);}}else{if(M=="single"){this.unselectAllRows();this.selectRow(O);}else{this._oAnchorRecord=O;this.unselectAllRows();this.selectRow(O); +}}}}var B;if(window.getSelection){B=window.getSelection();}else{if(document.getSelection){B=document.getSelection();}else{if(document.selection){B=document.selection;}}}if(B){if(B.empty){B.empty();}else{if(B.removeAllRanges){B.removeAllRanges();}else{if(B.collapse){B.collapse();}}}}}else{}};YAHOO.widget.DataTable.prototype.onEventSelectCell=function(W){var Q=this.get("selectionMode");if((Q=="standard")||(Q=="single")){return ;}var L=W.event;var X=W.target;var G=L.shiftKey;var C=L.ctrlKey||((navigator.userAgent.toLowerCase().indexOf("mac")!=-1)&&L.metaKey);var U,T,Z,D,A;var B=this.getTdEl(X);if(B){var R,S,I,Y;var K=this.getTrEl(B);var E=this._elTbody.rows;var N=this.getRecord(K);var a=this._oRecordSet.getRecordIndex(N);var M=this.getColumn(B);var P=M.getKeyIndex();var J=this.getTrIndex(K);var F={record:N,column:M};var H=(this._oAnchorCell)?this._oAnchorCell.record:null;if(H){R=this._oRecordSet.getRecordIndex(H);I=this._oAnchorCell.column;Y=I.getKeyIndex();S=this.getTrIndex(H);if(S===null){if(R=J;U--){for(T=A;T>=D;T--){this.selectCell(E[U].cells[T]);}}}}}}}else{if(R===a){if(YY){this.unselectCell(Z.cells[T]);}}else{if(Z.sectionRowIndex===J){if(TP){this.unselectCell(Z.cells[T]);}}else{if(Z.sectionRowIndex==S){if(T=Y){this.selectCell(Z.cells[T]);}}else{if(Z.sectionRowIndex==J){if(T<=P){this.selectCell(Z.cells[T]);}}else{this.selectCell(Z.cells[T]);}}}}}else{if(Q=="cellblock"){D=Math.min(Y,P);A=Math.max(Y,P);for(U=S;U<=J;U++){for(T=D;T<=A;T++){this.selectCell(E[U].cells[T]);}}}}}else{if(Q=="cellrange"){for(U=J;U<=S;U++){Z=E[U];for(T=0;T=P){this.selectCell(Z.cells[T]);}}else{if(Z.sectionRowIndex==S){if(T<=Y){this.selectCell(Z.cells[T]);}}else{this.selectCell(Z.cells[T]);}}}}}else{if(Q=="cellblock"){D=Math.min(Y,P);A=Math.max(Y,P);for(U=J;U<=S;U++){for(T=D;T<=A;T++){this.selectCell(E[U].cells[T]);}}}}}}}else{this._oAnchorCell=F;this.selectCell(F);}}else{if((Q!="singlecell")&&C){this._oAnchorCell=F;if(this.isSelected(F)){this.unselectCell(F);}else{this.selectCell(F);}}else{this._oAnchorCell=F;this.unselectAllCells();this.selectCell(F);}}}var O;if(window.getSelection){O=window.getSelection();}else{if(document.getSelection){O=document.getSelection();}else{if(document.selection){O=document.selection;}}}if(O){if(O.empty){O.empty();}else{if(O.removeAllRanges){O.removeAllRanges();}else{if(O.collapse){O.collapse();}}}}}else{}};YAHOO.widget.DataTable.prototype.onEventHighlightRow=function(B){var A=B.event;var C=B.target;this.highlightRow(C);};YAHOO.widget.DataTable.prototype.onEventUnhighlightRow=function(B){var A=B.event;var C=B.target;this.unhighlightRow(C);};YAHOO.widget.DataTable.prototype.onEventHighlightCell=function(B){var A=B.event;var C=B.target;this.highlightCell(C);};YAHOO.widget.DataTable.prototype.onEventUnhighlightCell=function(B){var A=B.event;var C=B.target;this.unhighlightCell(C);};YAHOO.widget.DataTable.prototype.onEventFormatCell=function(C){var A=C.event;var F=C.target;var B=F.tagName.toLowerCase();var D=this.getTdEl(F);if(D&&D.yuiColumnKey){var E=this.getColumn(D.yuiColumnKey);this.formatCell(D,this.getRecord(D),E);}else{}};YAHOO.widget.DataTable.prototype.onEventShowCellEditor=function(C){var A=C.event;var E=C.target;var B=E.tagName.toLowerCase();var D=this.getTdEl(E);if(D){this.showCellEditor(D);}else{}};YAHOO.widget.DataTable.prototype.onEventEditCell=function(A){this.onEventShowCellEditor(A);};YAHOO.widget.DataTable.prototype.onEventSaveCellEditor=function(A){this.saveCellEditor();};YAHOO.widget.DataTable.prototype._onDataReturnEnhanceTable=function(B,C){var A=this.doBeforeLoadData(B,C);if(A&&C&&!C.error&&YAHOO.lang.isArray(C.results)){this._oRecordSet.addRecords(C.results);this._initTableEl();if(!this._elTable||!this._elThead||!this._elTbody){return ;}YAHOO.widget.DataTable.superclass.constructor.call(this,this._elContainer,this._oConfigs);if(this._oConfigs.paginator){this.updatePaginator(this._oConfigs.paginator);}this.refreshView();}else{if(A&&C.error){this.showTableMessage(YAHOO.widget.DataTable.MSG_ERROR,YAHOO.widget.DataTable.CLASS_ERROR);}else{if(A){this.showTableMessage(YAHOO.widget.DataTable.MSG_EMPTY,YAHOO.widget.DataTable.CLASS_EMPTY); +}}}};YAHOO.widget.DataTable.prototype.onDataReturnInitializeTable=function(B,C){this.fireEvent("dataReturnEvent",{request:B,response:C});var A=this.doBeforeLoadData(B,C);if(A&&C&&!C.error&&YAHOO.lang.isArray(C.results)){this.initializeTable(C.results);}else{if(A&&C.error){this.showTableMessage(YAHOO.widget.DataTable.MSG_ERROR,YAHOO.widget.DataTable.CLASS_ERROR);}else{if(A){this.showTableMessage(YAHOO.widget.DataTable.MSG_EMPTY,YAHOO.widget.DataTable.CLASS_EMPTY);}}}};YAHOO.widget.DataTable.prototype.onDataReturnReplaceRows=function(A,B){this.onDataReturnInitializeTable(A,B);};YAHOO.widget.DataTable.prototype.onDataReturnAppendRows=function(B,C){this.fireEvent("dataReturnEvent",{request:B,response:C});var A=this.doBeforeLoadData(B,C);if(A&&C&&!C.error&&YAHOO.lang.isArray(C.results)){this.addRows(C.results);}else{if(A&&C.error){this.showTableMessage(YAHOO.widget.DataTable.MSG_ERROR,YAHOO.widget.DataTable.CLASS_ERROR);}}};YAHOO.widget.DataTable.prototype.onDataReturnInsertRows=function(B,C){this.fireEvent("dataReturnEvent",{request:B,response:C});var A=this.doBeforeLoadData(B,C);if(A&&C&&!C.error&&YAHOO.lang.isArray(C.results)){this.addRows(C.results,0);}else{if(A&&C.error){this.showTableMessage(YAHOO.widget.DataTable.MSG_ERROR,YAHOO.widget.DataTable.CLASS_ERROR);}}};YAHOO.widget.ColumnSet=function(F){this._sName="instance"+YAHOO.widget.ColumnSet._nCount;var K=[];var A=[];var I=[];var E=[];var C=-1;var H=this;var B=function(N,T){C++;if(!K[C]){K[C]=[];}for(var P=0;PN){N=T;}}}};for(var L=0;L-1;B--){if(A[B]._sId===C){return A[B];}}}return null;};YAHOO.widget.ColumnSet.prototype.getColumn=function(C){if(YAHOO.lang.isNumber(C)&&this.keys[C]){return this.keys[C];}else{if(YAHOO.lang.isString(C)){var A=this.flat;var D=[];for(var B=0;B1){return D;}}}}return null;};YAHOO.widget.Column=function(B){if(B&&(B.constructor==Object)){for(var A in B){if(A){this[A]=B[A];}}}};YAHOO.widget.Column._nCount=0;YAHOO.widget.Column.prototype._sName=null;YAHOO.widget.Column.prototype._sId=null;YAHOO.widget.Column.prototype._nKeyIndex=null;YAHOO.widget.Column.prototype._colspan=1;YAHOO.widget.Column.prototype._rowspan=1;YAHOO.widget.Column.prototype._parent=null;YAHOO.widget.Column.prototype._width=null;YAHOO.widget.Column.prototype._minWidth=null;YAHOO.widget.Column.prototype.key=null;YAHOO.widget.Column.prototype.label=null;YAHOO.widget.Column.prototype.abbr=null;YAHOO.widget.Column.prototype.children=null;YAHOO.widget.Column.prototype.width=null;YAHOO.widget.Column.prototype.className=null;YAHOO.widget.Column.prototype.formatter=null;YAHOO.widget.Column.prototype.editor=null;YAHOO.widget.Column.prototype.editorOptions=null;YAHOO.widget.Column.prototype.resizeable=false;YAHOO.widget.Column.prototype.sortable=false;YAHOO.widget.Column.prototype.sortOptions=null;YAHOO.widget.Column.prototype.toString=function(){return this._sName;};YAHOO.widget.Column.prototype.getId=function(){return this._sId;};YAHOO.widget.Column.prototype.getKey=function(){return this.key;};YAHOO.widget.Column.prototype.getKeyIndex=function(){return this._nKeyIndex;};YAHOO.widget.Column.prototype.getParent=function(){return this._parent;};YAHOO.widget.Column.prototype.getColspan=function(){return this._colspan;};YAHOO.widget.Column.prototype.getColSpan=function(){return this.getColspan();};YAHOO.widget.Column.prototype.getRowspan=function(){return this._rowspan;};YAHOO.widget.Column.prototype.getIndex=function(){return this.getKeyIndex();};YAHOO.widget.Column.prototype.format=function(){};YAHOO.widget.Column.formatCheckbox=function(B,A,C,D){YAHOO.widget.DataTable.formatCheckbox(B,A,C,D); +};YAHOO.widget.Column.formatCurrency=function(B,A,C,D){YAHOO.widget.DataTable.formatCurrency(B,A,C,D);};YAHOO.widget.Column.formatDate=function(B,A,C,D){YAHOO.widget.DataTable.formatDate(B,A,C,D);};YAHOO.widget.Column.formatEmail=function(B,A,C,D){YAHOO.widget.DataTable.formatEmail(B,A,C,D);};YAHOO.widget.Column.formatLink=function(B,A,C,D){YAHOO.widget.DataTable.formatLink(B,A,C,D);};YAHOO.widget.Column.formatNumber=function(B,A,C,D){YAHOO.widget.DataTable.formatNumber(B,A,C,D);};YAHOO.widget.Column.formatSelect=function(B,A,C,D){YAHOO.widget.DataTable.formatDropdown(B,A,C,D);};YAHOO.util.Sort={compare:function(B,A,C){if((B===null)||(typeof B=="undefined")){if((A===null)||(typeof A=="undefined")){return 0;}else{return 1;}}else{if((A===null)||(typeof A=="undefined")){return -1;}}if(B.constructor==String){B=B.toLowerCase();}if(A.constructor==String){A=A.toLowerCase();}if(BA){return(C)?-1:1;}else{return 0;}}}};YAHOO.util.ColumnResizer=function(F,E,D,B,A,C){if(F&&E&&D&&B){this.datatable=F;this.column=E;this.cell=D;this.init(B,A,C);this.setYConstraint(0,0);}else{}};if(YAHOO.util.DD){YAHOO.extend(YAHOO.util.ColumnResizer,YAHOO.util.DD);}YAHOO.util.ColumnResizer.prototype.onMouseDown=function(F){this.startWidth=this.cell.offsetWidth;this.startPos=YAHOO.util.Dom.getX(this.getDragEl());if(this.datatable.fixedWidth){var B=YAHOO.util.Dom.getElementsByClassName(YAHOO.widget.DataTable.CLASS_LABEL,"span",this.cell)[0];this.minWidth=B.offsetWidth+6;var A=this.cell.nextSibling;var D=YAHOO.util.Dom.getElementsByClassName(YAHOO.widget.DataTable.CLASS_LABEL,"span",A)[0];this.sibMinWidth=D.offsetWidth+6;var E=((this.startWidth-this.minWidth)<0)?0:(this.startWidth-this.minWidth);var C=((A.offsetWidth-this.sibMinWidth)<0)?0:(A.offsetWidth-this.sibMinWidth);this.setXConstraint(E,C);}};YAHOO.util.ColumnResizer.prototype.onMouseUp=function(B){var A=YAHOO.util.Dom.get(this.handleElId).style;A.left="auto";A.right=0;A.marginRight="-6px";A.width="6px";this.datatable.fireEvent("columnResizeEvent",{column:this.column,target:this.cell});};YAHOO.util.ColumnResizer.prototype.onDrag=function(F){try{var G=YAHOO.util.Dom.getX(this.getDragEl());var E=G-this.startPos;var D=this.startWidth+E;if(D-1)){this._records.splice(A,0,B);}else{A=this.getLength();this._records.push(B);}this._length++;return B;};YAHOO.widget.RecordSet.prototype._deleteRecord=function(B,A){if(!YAHOO.lang.isNumber(A)||(A<0)){A=1;}this._records.splice(B,A);this._length=this._length-A;};YAHOO.widget.RecordSet.prototype.toString=function(){return this._sName;};YAHOO.widget.RecordSet.prototype.getLength=function(){return this._length;};YAHOO.widget.RecordSet.prototype.getRecord=function(A){var B;if(A instanceof YAHOO.widget.Record){for(B=0;B-1)&&(A-1;A--){if(B.getId()===this._records[A].getId()){return A;}}}return null;};YAHOO.widget.RecordSet.prototype.addRecord=function(C,A){if(C&&(C.constructor==Object)){var B=this._addRecord(C,A);this.fireEvent("recordAddEvent",{record:B,data:C});return B;}else{return null;}};YAHOO.widget.RecordSet.prototype.addRecords=function(C,B){if(YAHOO.lang.isArray(C)){var F=[];for(var D=0;D-1)&&(B-1)&&(C=this.left&&A.right<=this.right&&A.top>=this.top&&A.bottom<=this.bottom);};YAHOO.util.Region.prototype.getArea=function(){return((this.bottom-this.top)*(this.right-this.left));};YAHOO.util.Region.prototype.intersect=function(E){var C=Math.max(this.top,E.top);var D=Math.min(this.right,E.right);var A=Math.min(this.bottom,E.bottom);var B=Math.max(this.left,E.left);if(A>=C&&D>=B){return new YAHOO.util.Region(C,D,A,B);}else{return null;}};YAHOO.util.Region.prototype.union=function(E){var C=Math.min(this.top,E.top);var D=Math.max(this.right,E.right);var A=Math.max(this.bottom,E.bottom);var B=Math.min(this.left,E.left);return new YAHOO.util.Region(C,D,A,B);};YAHOO.util.Region.prototype.toString=function(){return("Region {top: "+this.top+", right: "+this.right+", bottom: "+this.bottom+", left: "+this.left+"}");};YAHOO.util.Region.getRegion=function(D){var F=YAHOO.util.Dom.getXY(D);var C=F[1];var E=F[0]+D.offsetWidth;var A=F[1]+D.offsetHeight;var B=F[0];return new YAHOO.util.Region(C,E,A,B);};YAHOO.util.Point=function(A,B){if(YAHOO.lang.isArray(A)){B=A[1];A=A[0];}this.x=this.right=this.left=this[0]=A;this.y=this.top=this.bottom=this[1]=B;};YAHOO.util.Point.prototype=new YAHOO.util.Region();YAHOO.register("dom",YAHOO.util.Dom,{version:"2.3.1",build:"541"}); \ No newline at end of file Added: branches/trunk-reorg/projects/scrabble/website/yui/dragdrop/dragdrop-min.js =================================================================== --- branches/trunk-reorg/projects/scrabble/website/yui/dragdrop/dragdrop-min.js 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/website/yui/dragdrop/dragdrop-min.js 2007-11-05 10:14:48 UTC (rev 2255) @@ -0,0 +1,10 @@ +/* +Copyright (c) 2007, Yahoo! Inc. All rights reserved. +Code licensed under the BSD License: +http://developer.yahoo.net/yui/license.txt +version: 2.3.1 +*/ +if(!YAHOO.util.DragDropMgr){YAHOO.util.DragDropMgr=function(){var A=YAHOO.util.Event;return{ids:{},handleIds:{},dragCurrent:null,dragOvers:{},deltaX:0,deltaY:0,preventDefault:true,stopPropagation:true,initialized:false,locked:false,interactionInfo:null,init:function(){this.initialized=true;},POINT:0,INTERSECT:1,STRICT_INTERSECT:2,mode:0,_execOnAll:function(D,C){for(var E in this.ids){for(var B in this.ids[E]){var F=this.ids[E][B];if(!this.isTypeOfDD(F)){continue;}F[D].apply(F,C);}}},_onLoad:function(){this.init();A.on(document,"mouseup",this.handleMouseUp,this,true);A.on(document,"mousemove",this.handleMouseMove,this,true);A.on(window,"unload",this._onUnload,this,true);A.on(window,"resize",this._onResize,this,true);},_onResize:function(B){this._execOnAll("resetConstraints",[]);},lock:function(){this.locked=true;},unlock:function(){this.locked=false;},isLocked:function(){return this.locked;},locationCache:{},useCache:true,clickPixelThresh:3,clickTimeThresh:1000,dragThreshMet:false,clickTimeout:null,startX:0,startY:0,regDragDrop:function(C,B){if(!this.initialized){this.init();}if(!this.ids[B]){this.ids[B]={};}this.ids[B][C.id]=C;},removeDDFromGroup:function(D,B){if(!this.ids[B]){this.ids[B]={};}var C=this.ids[B];if(C&&C[D.id]){delete C[D.id];}},_remove:function(C){for(var B in C.groups){if(B&&this.ids[B][C.id]){delete this.ids[B][C.id];}}delete this.handleIds[C.id];},regHandle:function(C,B){if(!this.handleIds[C]){this.handleIds[C]={};}this.handleIds[C][B]=B;},isDragDrop:function(B){return(this.getDDById(B))?true:false;},getRelated:function(G,C){var F=[];for(var E in G.groups){for(var D in this.ids[E]){var B=this.ids[E][D];if(!this.isTypeOfDD(B)){continue;}if(!C||B.isTarget){F[F.length]=B;}}}return F;},isLegalTarget:function(F,E){var C=this.getRelated(F,true);for(var D=0,B=C.length;Dthis.clickPixelThresh||C>this.clickPixelThresh){this.startDrag(this.startX,this.startY);}}if(this.dragThreshMet){B.b4Drag(E);if(B){B.onDrag(E);}if(B){this.fireEvents(E,false);}}this.stopEvent(E);}},fireEvents:function(Q,H){var S=this.dragCurrent;if(!S||S.isLocked()){return ;}var J=YAHOO.util.Event.getPageX(Q),I=YAHOO.util.Event.getPageY(Q),K=new YAHOO.util.Point(J,I),F=S.getTargetCoord(K.x,K.y),C=S.getDragEl(),P=new YAHOO.util.Region(F.y,F.x+C.offsetWidth,F.y+C.offsetHeight,F.x),E=[],G=[],B=[],R=[],O=[];for(var M in this.dragOvers){var T=this.dragOvers[M];if(!this.isTypeOfDD(T)){continue;}if(!this.isOverTarget(K,T,this.mode,P)){G.push(T);}E[M]=true;delete this.dragOvers[M];}for(var L in S.groups){if("string"!=typeof L){continue;}for(M in this.ids[L]){var D=this.ids[L][M];if(!this.isTypeOfDD(D)){continue;}if(D.isTarget&&!D.isLocked()&&D!=S){if(this.isOverTarget(K,D,this.mode,P)){if(H){R.push(D);}else{if(!E[D.id]){O.push(D);}else{B.push(D);}this.dragOvers[D.id]=D;}}}}}this.interactionInfo={out:G,enter:O,over:B,drop:R,point:K,draggedRegion:P,sourceRegion:this.locationCache[S.id],validDrop:H};if(H&&!R.length){this.interactionInfo.validDrop=false;S.onInvalidDrop(Q);}if(this.mode){if(G.length){S.b4DragOut(Q,G);if(S){S.onDragOut(Q,G);}}if(O.length){if(S){S.onDragEnter(Q,O);}}if(B.length){if(S){S.b4DragOver(Q,B);}if(S){S.onDragOver(Q,B);}}if(R.length){if(S){S.b4DragDrop(Q,R);}if(S){S.onDragDrop(Q,R);}}}else{var N=0;for(M=0,N=G.length;M2000){}else{setTimeout(B._addListeners,10);if(document&&document.body){B._timeoutCount+=1;}}}},handleWasClicked:function(B,D){if(this.isHandle(D,B.id)){return true;}else{var C=B.parentNode;while(C){if(this.isHandle(D,C.id)){return true;}else{C=C.parentNode;}}}return false;}};}();YAHOO.util.DDM=YAHOO.util.DragDropMgr;YAHOO.util.DDM._addListeners();}(function(){var A=YAHOO.util.Event;var B=YAHOO.util.Dom;YAHOO.util.DragDrop=function(E,C,D){if(E){this.init(E,C,D);}};YAHOO.util.DragDrop.prototype={id:null,config:null,dragElId:null,handleElId:null,invalidHandleTypes:null,invalidHandleIds:null,invalidHandleClasses:null,startPageX:0,startPageY:0,groups:null,locked:false,lock:function(){this.locked=true;},unlock:function(){this.locked=false;},isTarget:true,padding:null,_domRef:null,__ygDragDrop:true,constrainX:false,constrainY:false,minX:0,maxX:0,minY:0,maxY:0,deltaX:0,deltaY:0,maintainOffset:false,xTicks:null,yTicks:null,primaryButtonOnly:true,available:false,hasOuterHandles:false,cursorIsOver:false,overlap:null,b4StartDrag:function(C,D){},startDrag:function(C,D){},b4Drag:function(C){},onDrag:function(C){},onDragEnter:function(C,D){},b4DragOver:function(C){},onDragOver:function(C,D){},b4DragOut:function(C){},onDragOut:function(C,D){},b4DragDrop:function(C){},onDragDrop:function(C,D){},onInvalidDrop:function(C){},b4EndDrag:function(C){},endDrag:function(C){},b4MouseDown:function(C){},onMouseDown:function(C){},onMouseUp:function(C){},onAvailable:function(){},getEl:function(){if(!this._domRef){this._domRef=B.get(this.id);}return this._domRef;},getDragEl:function(){return B.get(this.dragElId);},init:function(E,C,D){this.initTarget(E,C,D);A.on(this._domRef||this.id,"mousedown",this.handleMouseDown,this,true);},initTarget:function(E,C,D){this.config=D||{};this.DDM=YAHOO.util.DDM;this.groups={};if(typeof E!=="string"){this._domRef=E;E=B.generateId(E);}this.id=E;this.addToGroup((C)?C:"default");this.handleElId=E;A.onAvailable(E,this.handleOnAvailable,this,true);this.setDragElId(E);this.invalidHandleTypes={A:"A"};this.invalidHandleIds={};this.invalidHandleClasses=[];this.applyConfig();},applyConfig:function(){this.padding=this.config.padding||[0,0,0,0];this.isTarget=(this.config.isTarget!==false);this.maintainOffset=(this.config.maintainOffset);this.primaryButtonOnly=(this.config.primaryButtonOnly!==false);},handleOnAvailable:function(){this.available=true;this.resetConstraints();this.onAvailable();},setPadding:function(E,C,F,D){if(!C&&0!==C){this.padding=[E,E,E,E];}else{if(!F&&0!==F){this.padding=[E,C,E,C];}else{this.padding=[E,C,F,D];}}},setInitPosition:function(F,E){var G=this.getEl();if(!this.DDM.verifyEl(G)){return ;}var D=F||0;var C=E||0;var H=B.getXY(G);this.initPageX=H[0]-D;this.initPageY=H[1]-C;this.lastPageX=H[0];this.lastPageY=H[1];this.setStartPosition(H);},setStartPosition:function(D){var C=D||B.getXY(this.getEl());this.deltaSetXY=null;this.startPageX=C[0];this.startPageY=C[1];},addToGroup:function(C){this.groups[C]=true;this.DDM.regDragDrop(this,C);},removeFromGroup:function(C){if(this.groups[C]){delete this.groups[C];}this.DDM.removeDDFromGroup(this,C);},setDragElId:function(C){this.dragElId=C;},setHandleElId:function(C){if(typeof C!=="string"){C=B.generateId(C);}this.handleElId=C;this.DDM.regHandle(this.id,C);},setOuterHandleElId:function(C){if(typeof C!=="string"){C=B.generateId(C);}A.on(C,"mousedown",this.handleMouseDown,this,true);this.setHandleElId(C);this.hasOuterHandles=true;},unreg:function(){A.removeListener(this.id,"mousedown",this.handleMouseDown);this._domRef=null;this.DDM._remove(this);},isLocked:function(){return(this.DDM.isLocked()||this.locked);},handleMouseDown:function(F,E){var C=F.which||F.button; +if(this.primaryButtonOnly&&C>1){return ;}if(this.isLocked()){return ;}this.b4MouseDown(F);this.onMouseDown(F);this.DDM.refreshCache(this.groups);var D=new YAHOO.util.Point(A.getPageX(F),A.getPageY(F));if(!this.hasOuterHandles&&!this.DDM.isOverTarget(D,this)){}else{if(this.clickValidator(F)){this.setStartPosition();this.DDM.handleMouseDown(F,this);this.DDM.stopEvent(F);}else{}}},clickValidator:function(D){var C=A.getTarget(D);return(this.isValidHandleChild(C)&&(this.id==this.handleElId||this.DDM.handleWasClicked(C,this.id)));},getTargetCoord:function(E,D){var C=E-this.deltaX;var F=D-this.deltaY;if(this.constrainX){if(Cthis.maxX){C=this.maxX;}}if(this.constrainY){if(Fthis.maxY){F=this.maxY;}}C=this.getTick(C,this.xTicks);F=this.getTick(F,this.yTicks);return{x:C,y:F};},addInvalidHandleType:function(C){var D=C.toUpperCase();this.invalidHandleTypes[D]=D;},addInvalidHandleId:function(C){if(typeof C!=="string"){C=B.generateId(C);}this.invalidHandleIds[C]=C;},addInvalidHandleClass:function(C){this.invalidHandleClasses.push(C);},removeInvalidHandleType:function(C){var D=C.toUpperCase();delete this.invalidHandleTypes[D];},removeInvalidHandleId:function(C){if(typeof C!=="string"){C=B.generateId(C);}delete this.invalidHandleIds[C];},removeInvalidHandleClass:function(D){for(var E=0,C=this.invalidHandleClasses.length;E=this.minX;D=D-C){if(!E[D]){this.xTicks[this.xTicks.length]=D;E[D]=true;}}for(D=this.initPageX;D<=this.maxX;D=D+C){if(!E[D]){this.xTicks[this.xTicks.length]=D;E[D]=true;}}this.xTicks.sort(this.DDM.numericSort);},setYTicks:function(F,C){this.yTicks=[];this.yTickSize=C;var E={};for(var D=this.initPageY;D>=this.minY;D=D-C){if(!E[D]){this.yTicks[this.yTicks.length]=D;E[D]=true;}}for(D=this.initPageY;D<=this.maxY;D=D+C){if(!E[D]){this.yTicks[this.yTicks.length]=D;E[D]=true;}}this.yTicks.sort(this.DDM.numericSort);},setXConstraint:function(E,D,C){this.leftConstraint=parseInt(E,10);this.rightConstraint=parseInt(D,10);this.minX=this.initPageX-this.leftConstraint;this.maxX=this.initPageX+this.rightConstraint;if(C){this.setXTicks(this.initPageX,C);}this.constrainX=true;},clearConstraints:function(){this.constrainX=false;this.constrainY=false;this.clearTicks();},clearTicks:function(){this.xTicks=null;this.yTicks=null;this.xTickSize=0;this.yTickSize=0;},setYConstraint:function(C,E,D){this.topConstraint=parseInt(C,10);this.bottomConstraint=parseInt(E,10);this.minY=this.initPageY-this.topConstraint;this.maxY=this.initPageY+this.bottomConstraint;if(D){this.setYTicks(this.initPageY,D);}this.constrainY=true;},resetConstraints:function(){if(this.initPageX||this.initPageX===0){var D=(this.maintainOffset)?this.lastPageX-this.initPageX:0;var C=(this.maintainOffset)?this.lastPageY-this.initPageY:0;this.setInitPosition(D,C);}else{this.setInitPosition();}if(this.constrainX){this.setXConstraint(this.leftConstraint,this.rightConstraint,this.xTickSize);}if(this.constrainY){this.setYConstraint(this.topConstraint,this.bottomConstraint,this.yTickSize);}},getTick:function(I,F){if(!F){return I;}else{if(F[0]>=I){return F[0];}else{for(var D=0,C=F.length;D=I){var H=I-F[D];var G=F[E]-I;return(G>H)?F[D]:F[E];}}return F[F.length-1];}}},toString:function(){return("DragDrop "+this.id);}};})();YAHOO.util.DD=function(C,A,B){if(C){this.init(C,A,B);}};YAHOO.extend(YAHOO.util.DD,YAHOO.util.DragDrop,{scroll:true,autoOffset:function(C,B){var A=C-this.startPageX;var D=B-this.startPageY;this.setDelta(A,D);},setDelta:function(B,A){this.deltaX=B;this.deltaY=A;},setDragElPos:function(C,B){var A=this.getDragEl();this.alignElWithMouse(A,C,B);},alignElWithMouse:function(B,F,E){var D=this.getTargetCoord(F,E);if(!this.deltaSetXY){var G=[D.x,D.y];YAHOO.util.Dom.setXY(B,G);var C=parseInt(YAHOO.util.Dom.getStyle(B,"left"),10);var A=parseInt(YAHOO.util.Dom.getStyle(B,"top"),10);this.deltaSetXY=[C-D.x,A-D.y];}else{YAHOO.util.Dom.setStyle(B,"left",(D.x+this.deltaSetXY[0])+"px");YAHOO.util.Dom.setStyle(B,"top",(D.y+this.deltaSetXY[1])+"px");}this.cachePosition(D.x,D.y);this.autoScroll(D.x,D.y,B.offsetHeight,B.offsetWidth);},cachePosition:function(B,A){if(B){this.lastPageX=B;this.lastPageY=A;}else{var C=YAHOO.util.Dom.getXY(this.getEl());this.lastPageX=C[0];this.lastPageY=C[1];}},autoScroll:function(J,I,E,K){if(this.scroll){var L=this.DDM.getClientHeight();var B=this.DDM.getClientWidth();var N=this.DDM.getScrollTop();var D=this.DDM.getScrollLeft();var H=E+I;var M=K+J;var G=(L+N-I-this.deltaY);var F=(B+D-J-this.deltaX);var C=40;var A=(document.all)?80:30;if(H>L&&G0&&I-NB&&F0&&J-D
";}n.innerHTML=a;this.currentElement[0]=G;}else{this._createCurrentElement(r.toLowerCase());n=this._getDoc().createElement(r);var J=this.currentElement; +for(T=0;T0){this.currentElement[T].parentNode.removeChild(this.currentElement[T]);}}}this.currentElement[0].parentNode.replaceChild(n,this.currentElement[0]);c=false;}else{G=this._getSelectedElement();if(this._isElement(G,"li")&&this._isElement(G.parentNode,r)||(this.browser.ie&&this._isElement(this._getRange().parentElement,"li"))){if(this.browser.ie){a="";var K=G.parentNode.getElementsByTagName("li");for(var f=0;f";}var p=this._getDoc().createElement("span");p.innerHTML=a;G.parentNode.parentNode.replaceChild(p,G.parentNode);}else{this.nodeChange();this._getDoc().execCommand(d,"",G.parentNode);this.nodeChange();}c=false;}if(this.browser.opera){var W=this;window.setTimeout(function(){var e=W._getDoc().getElementsByTagName("li");for(var h=0;h"){e[h].parentNode.parentNode.removeChild(e[h].parentNode);}}},30);}if(this.browser.ie&&c){var O="";if(this._getRange().html){O="
  • "+this._getRange().html+"
  • ";}else{O="
  • "+this._getRange().text+"
  • ";}this._getRange().pasteHTML("<"+r+">"+O+"");c=false;}}break;case"fontname":q=this._getSelectedElement();this.currentFont=Y;if(q&&q.tagName&&!this._hasSelection()){YAHOO.util.Dom.setStyle(q,"font-family",Y);c=false;}break;case"fontsize":if((this.currentElement.length>0)&&(!this._hasSelection())){YAHOO.util.Dom.setStyle(this.currentElement,"fontSize",Y);}else{if(!this._isElement(this._getSelectedElement(),"body")){YAHOO.util.Dom.setStyle(this._getSelectedElement(),"fontSize",Y);}else{this._createCurrentElement("span",{"fontSize":Y});}}c=false;break;}if(c){try{this._getDoc().execCommand(d,false,Y);}catch(m){}}else{}this.on("afterExecCommand",function(){this.unsubscribeAll("afterExecCommand");this.nodeChange();});this.fireEvent("afterExecCommand",{type:"afterExecCommand",target:this});},_swapEl:function(G,F,I){var H=this._getDoc().createElement(F);H.innerHTML=G.innerHTML;if(typeof I=="function"){I.call(this,H);}G.parentNode.replaceChild(H,G);return H;},_createCurrentElement:function(H,U){H=((H)?H:"a");var Z=this._getSelection(),c=null,G=[],I=this._getDoc();if(this.currentFont){if(!U){U={};}U.fontFamily=this.currentFont;this.currentFont=null;}this.currentElement=[];var X=function(){var g=null;switch(H){case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":g=I.createElement(H);break;default:g=I.createElement("span");YAHOO.util.Dom.addClass(g,"yui-tag-"+H);YAHOO.util.Dom.addClass(g,"yui-tag");g.setAttribute("tag",H);for(var e in U){if(YAHOO.util.Lang.hasOwnProperty(U,e)){g.style[e]=U[e];}}break;}return g;};if(!this._hasSelection()){if(this._getDoc().queryCommandEnabled("insertimage")){this._getDoc().execCommand("insertimage",false,"yui-tmp-img");var W=this._getDoc().getElementsByTagName("img");for(var a=0;a/gi,"");H=H.replace(/
    /gi,"");}H=H.replace(/
    /gi,"");H=H.replace(//gi,"");H=H.replace(/
    /gi,"");H=H.replace(/
    <\/div>/gi,"");H=H.replace(/

    ( | )<\/p>/g,"");H=H.replace(/


     <\/p>/gi,"");H=H.replace(/

     <\/p>/gi,"");H=H.replace(/]*)\/>/gi,"");H=H.replace(/]*)>/gi,"");H=H.replace(/]*)>/gi,"");H=H.replace(/<\/ul>/gi,"");H=H.replace(/]*)>/gi,"");H=H.replace(/<\/blockquote>/gi,"");if((F=="semantic")||(F=="xhtml")){H=H.replace(/]*)>/gi,"");H=H.replace(/<\/i>/gi,"");H=H.replace(/]*)>/gi,"");H=H.replace(/<\/b>/gi,"");}H=H.replace(//gi,"");H=H.replace(//gi,"");if((F=="semantic")||(F=="xhtml")||(F=="css")){H=H.replace(new RegExp("]*)face=\"([^>]*)\">(.*?)","gi"),"$3");H=H.replace(//gi,"/span>");if(F=="css"){H=H.replace(/]*)>/gi,"");H=H.replace(/<\/em>/gi,"");H=H.replace(/]*)>/gi,"");H=H.replace(/<\/strong>/gi,"");H=H.replace(//gi,"/span>");H=H.replace(//gi,"/span>");}H=H.replace(/ /gi," ");}else{H=H.replace(//gi,"/u>");}H=H.replace(/]*)>/gi,"");H=H.replace(/\/ol>/gi,"/ol>");H=H.replace(/

  • /gi,"/li>");H=H.replace(/<\/?(body|head|html)[^>]*>/gi,"");H=H.replace(/$/,"");H=H.replace(/<\/p>/g,"

    ");H=H.replace(/<\/li>/gi,"
  • ");if(this.browser.webkit){H=H.replace(/Apple-style-span/gi,"");H=H.replace(/style="line-height: normal;"/gi,"");H=H.replace(/
  • <\/li>/gi,"");H=H.replace(/
  • <\/li>/gi,"");H=H.replace(/
    <\/div>/gi,"");H=H.replace(/
    <\/div>/gi,"");}H=H.replace(/yui-tag-span/gi,"");H=H.replace(/yui-tag/gi,"");H=H.replace(/yui-non/gi,"");H=H.replace(/yui-img/gi,"");H=H.replace(/ tag="span"/gi,"");H=H.replace(/ class=""/gi,"");H=H.replace(/ style=""/gi,"");H=H.replace(/ class=" "/gi,"");H=H.replace(/ class=" "/gi,"");H=H.replace(/ target=""/gi,"");H=H.replace(/ title=""/gi,"");for(var G=0;G<5;G++){H=H.replace(new RegExp("(.*?)","gi"),"$1");}if(this.browser.ie){H=H.replace(/ class= /gi,"");H=H.replace(/ class= >/gi,"");H=H.replace(/_height="([^>])"/gi,"");H=H.replace(/_width="([^>])"/gi,"");}if(F=="xhtml"){H=H.replace(//g,"
    ");H=H.replace(/]*)>/g,"");}else{H=H.replace(//g,"
    ");H=H.replace(/]*)>/g,"");}H=H.replace(/]*)>/g,"");H=H.replace(/<\/YUI_UL>/g,"");H=H.replace(/]*)>/g,"");H=H.replace(/<\/YUI_BQ>/g,"");H=H.replace(/^\s+/g,"").replace(/\s+$/g,"");if(this.get("removeLineBreaks")){H=H.replace(/\n/g,"").replace(/\r/g,"");H=H.replace(/ /gi," ");}return H;},clearEditorDoc:function(){this._getDoc().body.innerHTML=" ";},_renderPanel:function(){var F=null;if(!YAHOO.widget.EditorInfo.panel){F=new YAHOO.widget.Overlay(this.EDITOR_PANEL_ID,{width:"300px",iframe:true,visible:false,underlay:"none",draggable:false,close:false});YAHOO.widget.EditorInfo.panel=F;}else{F=YAHOO.widget.EditorInfo.panel;}this.set("panel",F);this.get("panel").setBody("---");this.get("panel").setHeader(" ");this.get("panel").setFooter(" ");if(this.DOMReady){this.get("panel").render(document.body);C.addClass(this.get("panel").element,"yui-editor-panel");}else{A.onDOMReady(function(){this.get("panel").render(document.body);C.addClass(this.get("panel").element,"yui-editor-panel");},this,true);}this.get("panel").showEvent.subscribe(function(){YAHOO.util.Dom.setStyle(this.element,"display","block");});return this.get("panel");},openWindow:function(K){this.toolbar.set("disabled",true);A.on(document,"keypress",this._closeWindow,this,true);if(YAHOO.widget.EditorInfo.window.win&&YAHOO.widget.EditorInfo.window.scope){YAHOO.widget.EditorInfo.window.scope.closeWindow.call(YAHOO.widget.EditorInfo.window.scope);}YAHOO.widget.EditorInfo.window.win=K;YAHOO.widget.EditorInfo.window.scope=this;var P=this,L=C.getXY(this.currentElement[0]),U=C.getXY(this.get("iframe").get("element")),N=this.get("panel"),T=[(L[0]+U[0]-20),(L[1]+U[1]+10)],O=(parseInt(K.attrs.width,10)/2),R="center",M=null;this.fireEvent("beforeOpenWindow",{type:"beforeOpenWindow",win:K,panel:N});M=document.createElement("div");M.className=this.CLASS_PREFIX+"-body-cont";for(var V in this.browser){if(this.browser[V]){C.addClass(M,V);break;}}var S=document.createElement("h3");S.className="yui-editor-skipheader";S.innerHTML=this.STR_CLOSE_WINDOW_NOTE;M.appendChild(S);form=document.createElement("form");form.setAttribute("method","GET");var W=K.name;A.on(form,"submit",function(Y){var X="window"+W+"Submit"; +P.fireEvent(X,{type:X,target:this});A.stopEvent(Y);},this,true);M.appendChild(form);if(D.isObject(K.body)){form.appendChild(K.body);}else{var F=document.createElement("div");F.innerHTML=K.body;form.appendChild(F);}var J=document.createElement("span");J.innerHTML="X";J.title=this.STR_CLOSE_WINDOW;J.className="close";A.on(J,"click",function(){this.closeWindow();},this,true);var H=document.createElement("span");H.innerHTML="^";H.className="knob";K._knob=H;var I=document.createElement("h3");I.innerHTML=K.header;N.cfg.setProperty("width",K.attrs.width);N.setHeader(" ");N.appendToHeader(I);I.appendChild(J);I.appendChild(H);N.setBody(" ");N.setFooter(" ");if(K.footer!==null){N.setFooter(K.footer);C.addClass(N.footer,"open");}else{C.removeClass(N.footer,"open");}N.appendToBody(M);var Q=function(){N.bringToTop();A.on(N.element,"click",function(X){A.stopPropagation(X);});this._setBusy(true);N.showEvent.unsubscribe(Q);};N.showEvent.subscribe(Q,this,true);var G=function(){this.currentWindow=null;var X="window"+W+"Close";this.fireEvent(X,{type:X,target:this});N.hideEvent.unsubscribe(G);};N.hideEvent.subscribe(G,this,true);this.currentWindow=K;this.moveWindow(true);N.show();this.fireEvent("afterOpenWindow",{type:"afterOpenWindow",win:K,panel:N});},moveWindow:function(G){if(!this.currentWindow){return false;}var I=this.currentWindow,J=C.getXY(this.currentElement[0]),Z=C.getXY(this.get("iframe").get("element")),O=this.get("panel"),X=[(J[0]+Z[0]),(J[1]+Z[1])],Q=(parseInt(I.attrs.width,10)/2),T="center",P=O.cfg.getProperty("xy"),H=I._knob,W=0,L=0,S=false;X[0]=((X[0]-Q)+20);X[0]=X[0]-C.getDocumentScrollLeft(this._getDoc());X[1]=X[1]-C.getDocumentScrollTop(this._getDoc());if(this._isElement(this.currentElement[0],"img")){if(this.currentElement[0].src.indexOf(this.get("blankimage"))!=-1){X[0]=(X[0]+(75/2));X[1]=(X[1]+75);}else{var N=parseInt(this.currentElement[0].width,10);var V=parseInt(this.currentElement[0].height,10);X[0]=(X[0]+(N/2));X[1]=(X[1]+V);}X[1]=X[1]+15;}else{var K=C.getStyle(this.currentElement[0],"fontSize");if(K&&K.indexOf&&K.indexOf("px")!=-1){X[1]=X[1]+parseInt(C.getStyle(this.currentElement[0],"fontSize"),10)+5;}else{X[1]=X[1]+20;}}if(X[0](Z[0]+parseInt(this.get("iframe").get("element").clientWidth,10))){X[0]=((Z[0]+parseInt(this.get("iframe").get("element").clientWidth,10))-(Q*2)-5);T="right";}try{W=(X[0]-P[0]);L=(X[1]-P[1]);}catch(a){}W=((W<0)?(W*-1):W);L=((L<0)?(L*-1):L);if(((W>10)||(L>10))||G){var R=0,U=0;if(this.currentElement[0].width){U=(parseInt(this.currentElement[0].width,10)/2);}var M=J[0]+Z[0]+U;R=M-X[0];if(R>(parseInt(I.attrs.width,10)-40)){R=parseInt(I.attrs.width,10)-40;}else{if(R<40){R=40;}}if(isNaN(R)){R=40;}if(G){if(H){H.style.left=R+"px";}if(this.get("animate")){C.setStyle(O.element,"opacity","0");S=new YAHOO.util.Anim(O.element,{opacity:{from:0,to:1}},0.1,YAHOO.util.Easing.easeOut);O.cfg.setProperty("xy",X);S.onComplete.subscribe(function(){if(this.browser.ie){O.element.style.filter="none";}},this,true);S.animate();}else{O.cfg.setProperty("xy",X);}}else{if(this.get("animate")){S=new YAHOO.util.Anim(O.element,{},0.5,YAHOO.util.Easing.easeOut);S.attributes={top:{to:X[1]},left:{to:X[0]}};S.onComplete.subscribe(function(){O.cfg.setProperty("xy",X);});var Y=new YAHOO.util.Anim(O.iframe,S.attributes,0.5,YAHOO.util.Easing.easeOut);var F=new YAHOO.util.Anim(H,{left:{to:R}},0.6,YAHOO.util.Easing.easeOut);S.animate();Y.animate();F.animate();}else{H.style.left=R+"px";O.cfg.setProperty("xy",X);}}}},_closeWindow:function(F){if((F.charCode==87)&&F.shiftKey&&F.ctrlKey){if(this.currentWindow){this.closeWindow();}}},closeWindow:function(){YAHOO.widget.EditorInfo.window={};this.fireEvent("closeWindow",{type:"closeWindow",win:this.currentWindow});this.currentWindow=null;this.get("panel").hide();this.get("panel").cfg.setProperty("xy",[-900,-900]);this.get("panel").syncIframe();this.unsubscribeAll("afterExecCommand");this.toolbar.set("disabled",false);this.toolbar.resetAllButtons();this._focusWindow();A.removeListener(document,"keypress",this._closeWindow);},destroy:function(){this.saveHTML();this.toolbar.destroy();this.setStyle("visibility","hidden");this.setStyle("position","absolute");this.setStyle("top","-9999px");this.setStyle("left","-9999px");var G=this.get("element");this.get("element_cont").get("parentNode").replaceChild(G,this.get("element_cont").get("element"));this.get("element_cont").get("element").innerHTML="";for(var F in this){if(D.hasOwnProperty(this,F)){this[F]=null;}}return true;},toString:function(){var F="Editor";if(this.get&&this.get("element_cont")){F="Editor (#"+this.get("element_cont").get("id")+")"+((this.get("disabled")?" Disabled":""));}return F;}});YAHOO.widget.EditorInfo={_instances:{},window:{},panel:null,getEditorById:function(F){if(!YAHOO.lang.isString(F)){F=F.id;}if(this._instances[F]){return this._instances[F];}return false;},toString:function(){var F=0;for(var G in this._instances){F++;}return"Editor Info ("+F+" registered intance"+((F>1)?"s":"")+")";}};YAHOO.widget.EditorWindow=function(G,F){this.name=G.replace(" ","_");this.attrs=F;};YAHOO.widget.EditorWindow.prototype={_cache:null,header:null,body:null,footer:null,setHeader:function(F){this.header=F;},setBody:function(F){this.body=F;},setFooter:function(F){this.footer=F;},toString:function(){return"Editor Window ("+this.name+")";}};})();YAHOO.register("editor",YAHOO.widget.Editor,{version:"2.3.1",build:"541"}); \ No newline at end of file Added: branches/trunk-reorg/projects/scrabble/website/yui/element/element-beta-min.js =================================================================== --- branches/trunk-reorg/projects/scrabble/website/yui/element/element-beta-min.js 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/website/yui/element/element-beta-min.js 2007-11-05 10:14:48 UTC (rev 2255) @@ -0,0 +1,8 @@ +/* +Copyright (c) 2007, Yahoo! Inc. All rights reserved. +Code licensed under the BSD License: +http://developer.yahoo.net/yui/license.txt +version: 2.3.1 +*/ +YAHOO.util.Attribute=function(B,A){if(A){this.owner=A;this.configure(B,true);}};YAHOO.util.Attribute.prototype={name:undefined,value:null,owner:null,readOnly:false,writeOnce:false,_initialConfig:null,_written:false,method:null,validator:null,getValue:function(){return this.value;},setValue:function(F,B){var E;var A=this.owner;var C=this.name;var D={type:C,prevValue:this.getValue(),newValue:F};if(this.readOnly||(this.writeOnce&&this._written)){return false;}if(this.validator&&!this.validator.call(A,F)){return false;}if(!B){E=A.fireBeforeChangeEvent(D);if(E===false){return false;}}if(this.method){this.method.call(A,F);}this.value=F;this._written=true;D.type=C;if(!B){this.owner.fireChangeEvent(D);}return true;},configure:function(B,C){B=B||{};this._written=false;this._initialConfig=this._initialConfig||{};for(var A in B){if(A&&YAHOO.lang.hasOwnProperty(B,A)){this[A]=B[A];if(C){this._initialConfig[A]=B[A];}}}},resetValue:function(){return this.setValue(this._initialConfig.value);},resetConfig:function(){this.configure(this._initialConfig);},refresh:function(A){this.setValue(this.value,A);}};(function(){var A=YAHOO.util.Lang;YAHOO.util.AttributeProvider=function(){};YAHOO.util.AttributeProvider.prototype={_configs:null,get:function(C){this._configs=this._configs||{};var B=this._configs[C];if(!B){return undefined;}return B.value;},set:function(D,E,B){this._configs=this._configs||{};var C=this._configs[D];if(!C){return false;}return C.setValue(E,B);},getAttributeKeys:function(){this._configs=this._configs;var D=[];var B;for(var C in this._configs){B=this._configs[C];if(A.hasOwnProperty(this._configs,C)&&!A.isUndefined(B)){D[D.length]=C;}}return D;},setAttributes:function(D,B){for(var C in D){if(A.hasOwnProperty(D,C)){this.set(C,D[C],B);}}},resetValue:function(C,B){this._configs=this._configs||{};if(this._configs[C]){this.set(C,this._configs[C]._initialConfig.value,B);return true;}return false;},refresh:function(E,C){this._configs=this._configs;E=((A.isString(E))?[E]:E)||this.getAttributeKeys();for(var D=0,B=E.length;D0){B=H[0];}try{G=L.fn.call(K,B,L.obj);}catch(F){this.lastError=F;}}else{try{G=L.fn.call(K,this.type,H,L.obj);}catch(F){this.lastError=F;}}if(false===G){if(!this.silent){}return false;}}}if(I){var J=[],C=this.subscribers;for(D=0,E=C.length;D=0){Q=I[R];}if(!M||!Q){return false;}if(this.useLegacyEvent(M,L)){var O=this.getLegacyIndex(M,L);var N=E[O];if(N){for(P=0,S=N.length;P0);}var P=[];var R=function(T,U){var S=T;if(U.override){if(U.override===true){S=U.obj;}else{S=U.override;}}U.fn.call(S,U.obj);};var M,L,O,N;for(M=0,L=F.length;M0){for(var R=0,S=T.length;R0){O=I.length;while(O){N=O-1;M=I[N];if(M){R.removeListener(M[R.EL],M[R.TYPE],M[R.FN],N);}O=O-1;}M=null;R.clearCache();}for(P=0,L=G.length;P");B=document.getElementById("_yui_eu_dr");}if(B){B.onreadystatechange=function(){if("complete"===this.readyState){this.parentNode.removeChild(this);YAHOO.util.Event._ready();}};}else{}B=null;}else{if(D.webkit){D._drwatch=setInterval(function(){var F=document.readyState;if("loaded"==F||"complete"==F){clearInterval(D._drwatch);D._drwatch=null;D._ready();}},D.POLL_INTERVAL);}else{D._simpleAdd(document,"DOMContentLoaded",D._ready);}}D._simpleAdd(window,"load",D._load);D._simpleAdd(window,"unload",D._unload);D._tryPreloadAttach();})();}YAHOO.util.EventProvider=function(){};YAHOO.util.EventProvider.prototype={__yui_events:null,__yui_subscribers:null,subscribe:function(A,C,F,E){this.__yui_events=this.__yui_events||{};var D=this.__yui_events[A];if(D){D.subscribe(C,F,E);}else{this.__yui_subscribers=this.__yui_subscribers||{};var B=this.__yui_subscribers;if(!B[A]){B[A]=[];}B[A].push({fn:C,obj:F,override:E});}},unsubscribe:function(C,E,G){this.__yui_events=this.__yui_events||{};var A=this.__yui_events;if(C){var F=A[C];if(F){return F.unsubscribe(E,G);}}else{var B=true;for(var D in A){if(YAHOO.lang.hasOwnProperty(A,D)){B=B&&A[D].unsubscribe(E,G);}}return B;}return false;},unsubscribeAll:function(A){return this.unsubscribe(A);},createEvent:function(G,D){this.__yui_events=this.__yui_events||{}; +var A=D||{};var I=this.__yui_events;if(I[G]){}else{var H=A.scope||this;var E=(A.silent);var B=new YAHOO.util.CustomEvent(G,H,E,YAHOO.util.CustomEvent.FLAT);I[G]=B;if(A.onSubscribeCallback){B.subscribeEvent.subscribe(A.onSubscribeCallback);}this.__yui_subscribers=this.__yui_subscribers||{};var F=this.__yui_subscribers[G];if(F){for(var C=0;Cbhm  \ No newline at end of file Added: branches/trunk-reorg/projects/scrabble/website/yui/history/history-beta-min.js =================================================================== --- branches/trunk-reorg/projects/scrabble/website/yui/history/history-beta-min.js 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/website/yui/history/history-beta-min.js 2007-11-05 10:14:48 UTC (rev 2255) @@ -0,0 +1,7 @@ +/* +Copyright (c) 2007, Yahoo! Inc. All rights reserved. +Code licensed under the BSD License: +http://developer.yahoo.net/yui/license.txt +version: 2.3.1 +*/ +YAHOO.util.History=(function(){var L=null;var G=null;var H=false;var E=false;var B=false;var D=[];var C=[];function M(N){return N.replace(/^\s*(\S*(\s+\S+)*)\s*$/,"$1");}function K(){var N;var O;N=top.location.href;O=N.indexOf("#");return O>=0?N.substr(O+1):null;}function A(){var O;var P;var Q=[];var N=[];for(O in D){if(YAHOO.lang.hasOwnProperty(D,O)){P=D[O];Q.push(O+"="+P.initialState);N.push(O+"="+P.currentState);}}G.value=Q.join("&")+"|"+N.join("&");if(YAHOO.env.ua.webkit){G.value+="|"+C.join(",");}}function J(N){var S;var T;var O;var Q;var R;var V;var U;var P;if(!N){for(O in D){if(YAHOO.lang.hasOwnProperty(D,O)){Q=D[O];Q.currentState=Q.initialState;Q.onStateChange(unescape(Q.currentState));}}return ;}R=[];V=N.split("&");for(S=0,T=V.length;S1){X=S[0].split("&");for(U=0,W=X.length;U=2){O=Y[0];P=Y[1];Q=D[O];if(Q){Q.currentState=P;}}}}if(S.length>2){C=S[2].split(",");}E=true;if(YAHOO.env.ua.ie){L=document.getElementById("yui_hist_iframe");I();}else{N=history.length;T=K();setInterval(function(){var b;var Z;var a;Z=K();a=history.length;if(Z!==T){T=Z;N=a;J(T);A();}else{if(a!==N){T=Z;N=a;b=C[N-1];J(b);A();}}},50);B=true;YAHOO.util.History.onLoadEvent.fire();}}return{onLoadEvent:new YAHOO.util.CustomEvent("onLoad"),register:function(Q,N,S,T,P){var R;var O;if(typeof Q!=="string"||M(Q)===""||typeof N!=="string"||typeof S!=="function"){throw new Error("Missing or invalid argument passed to YAHOO.util.History.register");}if(D[Q]){return ;}if(H){throw new Error("All modules must be registered before calling YAHOO.util.History.initialize");}Q=escape(Q);N=escape(N);R=null;if(P===true){R=T;}else{R=P;}O=function(U){return S.call(R,U,T);};D[Q]={name:Q,initialState:N,currentState:N,onStateChange:O};},initialize:function(N){if(H){return ;}if(!N){N="blank.html";}if(typeof N!=="string"||M(N)===""){throw new Error("Invalid argument passed to YAHOO.util.History.initialize");}document.write("");if(YAHOO.env.ua.ie){if(location.protocol==="https:"){document.write("");}else{document.write("");}}YAHOO.util.Event.addListener(window,"load",F);H=true;},navigate:function(Q,T){var O;var P;var S;var R;var N;if(typeof Q!=="string"||typeof T!=="string"){throw new Error("Missing or invalid argument passed to YAHOO.util.History.navigate");}N={};N[Q]=T;return YAHOO.util.History.multiNavigate(N);},multiNavigate:function(V){var S;var O;var Q;var P;var N;var R;var U;if(typeof V!=="object"){throw new Error("Missing or invalid argument passed to YAHOO.util.History.multiNavigate");}if(!B){throw new Error("The Browser History Manager is not initialized");}for(O in V){if(!D[O]){throw new Error("The following module has not been registered: "+O);}}S=[];for(O in D){if(YAHOO.lang.hasOwnProperty(D,O)){Q=D[O];if(YAHOO.lang.hasOwnProperty(V,O)){P=V[O];}else{P=Q.currentState;}O=escape(O);P=escape(P);S.push(O+"="+P);}}N=S.join("&");if(YAHOO.env.ua.ie){R="
    "+N+"
    ";try{U=L.contentWindow.document;U.open();U.write(R);U.close();}catch(T){return false;}}else{top.location.hash=N;if(YAHOO.env.ua.webkit){C[history.length]=N;A();}}return true;},getCurrentState:function(N){var O;if(typeof N!=="string"){throw new Error("Missing or invalid argument passed to YAHOO.util.History.getCurrentState");}if(!E){throw new Error("The Browser History Manager is not initialized");}O=D[N];if(!O){throw new Error("No such registered module: "+N);}return unescape(O.currentState);},getBookmarkedState:function(R){var Q;var N;var T;var O;var S;var P;if(typeof R!=="string"){throw new Error("Missing or invalid argument passed to YAHOO.util.History.getBookmarkedState");}T=top.location.hash.substr(1);O=T.split("&");for(Q=0,N=O.length;Q=0?P.substr(N+1):P;T=U.split("&");for(Q=0,O=T.length;Q=2){if(R[0]===S){return unescape(R[1]);}}}return null;}};})();YAHOO.register("history",YAHOO.util.History,{version:"2.3.1",build:"541"}); \ No newline at end of file Added: branches/trunk-reorg/projects/scrabble/website/yui/imageloader/imageloader-experimental-min.js =================================================================== --- branches/trunk-reorg/projects/scrabble/website/yui/imageloader/imageloader-experimental-min.js 2007-10-31 17:09:27 UTC (rev 2254) +++ branches/trunk-reorg/projects/scrabble/website/yui/imageloader/imageloader-experimental-min.js 2007-11-05 10:14:48 UTC (rev 2255) @@ -0,0 +1,7 @@ +/* +Copyright (c) 2007, Yahoo! Inc. All rights reserved. +Code licensed under the BSD License: +http://developer.yahoo.net/yui/license.txt +version: 2.3.1 +*/ +if(typeof (YAHOO.util.ImageLoader)=="undefined"){YAHOO.util.ImageLoader={};}YAHOO.util.ImageLoader.group=function(A,B,C){this.name="unnamed";this._imgObjs={};this.timeoutLen=C;this._timeout=null;this._triggers=[];this.foldConditional=false;this.className=null;this._classImageEls=null;YAHOO.util.Event.addListener(window,"load",this._onloadTasks,this,true);this.addTrigger(A,B);};YAHOO.util.ImageLoader.group.prototype.addTrigger=function(B,C){if(!B||!C){return ;}var A=function(){this.fetch();};this._triggers.push([B,C,A]);YAHOO.util.Event.addListener(B,C,A,this,true);};YAHOO.util.ImageLoader.group.prototype._onloadTasks=function(){if(this.timeoutLen&&typeof (this.timeoutLen)=="number"&&this.timeoutLen>0){this._timeout=setTimeout(this._getFetchTimeout(),this.timeoutLen*1000);}if(this.foldConditional){this._foldCheck();}};YAHOO.util.ImageLoader.group.prototype._getFetchTimeout=function(){var A=this;return function(){A.fetch();};};YAHOO.util.ImageLoader.group.prototype.registerBgImage=function(B,A){this._imgObjs[B]=new YAHOO.util.ImageLoader.bgImgObj(B,A);return this._imgObjs[B];};YAHOO.util.ImageLoader.group.prototype.registerSrcImage=function(D,B,C,A){this._imgObjs[D]=new YAHOO.util.ImageLoader.srcImgObj(D,B,C,A);return this._imgObjs[D];};YAHOO.util.ImageLoader.group.prototype.registerPngBgImage=function(B,A){this._imgObjs[B]=new YAHOO.util.ImageLoader.pngBgImgObj(B,A);return this._imgObjs[B];};YAHOO.util.ImageLoader.group.prototype.fetch=function(){clearTimeout(this._timeout);for(var A=0;A-1){return ;}}else{for(var A=0;A-1){return ;}}else{for(var B=0;B

    ",L," ",C,"ms (+",N,") ",J,": ","

    ",K,":

    ",H,"

    "]:["

    ",L," ",C,"ms (+",N,") ",J,": ",K,": ",H,"

    "];return G.join("");};YAHOO.widget.LogReader.prototype.html2Text=function(A){if(A){A+="";return A.replace(/&/g,"&").replace(//g,">"); +}return"";};YAHOO.widget.LogReader._index=0;YAHOO.widget.LogReader.prototype._sName=null;YAHOO.widget.LogReader.prototype._buffer=null;YAHOO.widget.LogReader.prototype._consoleMsgCount=0;YAHOO.widget.LogReader.prototype._lastTime=null;YAHOO.widget.LogReader.prototype._timeout=null;YAHOO.widget.LogReader.prototype._filterCheckboxes=null;YAHOO.widget.LogReader.prototype._categoryFilters=null;YAHOO.widget.LogReader.prototype._sourceFilters=null;YAHOO.widget.LogReader.prototype._elContainer=null;YAHOO.widget.LogReader.prototype._elHd=null;YAHOO.widget.LogReader.prototype._elCollapse=null;YAHOO.widget.LogReader.prototype._btnCollapse=null;YAHOO.widget.LogReader.prototype._title=null;YAHOO.widget.LogReader.prototype._elConsole=null;YAHOO.widget.LogReader.prototype._elFt=null;YAHOO.widget.LogReader.prototype._elBtns=null;YAHOO.widget.LogReader.prototype._elCategoryFilters=null;YAHOO.widget.LogReader.prototype._elSourceFilters=null;YAHOO.widget.LogReader.prototype._btnPause=null;YAHOO.widget.LogReader.prototype._btnClear=null;YAHOO.widget.LogReader.prototype._initContainerEl=function(B){B=YAHOO.util.Dom.get(B);if(B&&B.tagName&&(B.tagName.toLowerCase()=="div")){this._elContainer=B;YAHOO.util.Dom.addClass(this._elContainer,"yui-log");}else{this._elContainer=document.body.appendChild(document.createElement("div"));YAHOO.util.Dom.addClass(this._elContainer,"yui-log");YAHOO.util.Dom.addClass(this._elContainer,"yui-log-container");var A=this._elContainer.style;if(this.width){A.width=this.width;}if(this.right){A.right=this.right;}if(this.top){A.top=this.top;}if(this.left){A.left=this.left;A.right="auto";}if(this.bottom){A.bottom=this.bottom;A.top="auto";}if(this.fontSize){A.fontSize=this.fontSize;}if(navigator.userAgent.toLowerCase().indexOf("opera")!=-1){document.body.style+="";}}};YAHOO.widget.LogReader.prototype._initHeaderEl=function(){var A=this;if(this._elHd){YAHOO.util.Event.purgeElement(this._elHd,true);this._elHd.innerHTML="";}this._elHd=this._elContainer.appendChild(document.createElement("div"));this._elHd.id="yui-log-hd"+this._sName;this._elHd.className="yui-log-hd";this._elCollapse=this._elHd.appendChild(document.createElement("div"));this._elCollapse.className="yui-log-btns";this._btnCollapse=document.createElement("input");this._btnCollapse.type="button";this._btnCollapse.className="yui-log-button";this._btnCollapse.value="Collapse";this._btnCollapse=this._elCollapse.appendChild(this._btnCollapse);YAHOO.util.Event.addListener(A._btnCollapse,"click",A._onClickCollapseBtn,A);this._title=this._elHd.appendChild(document.createElement("h4"));this._title.innerHTML="Logger Console";};YAHOO.widget.LogReader.prototype._initConsoleEl=function(){if(this._elConsole){YAHOO.util.Event.purgeElement(this._elConsole,true);this._elConsole.innerHTML="";}this._elConsole=this._elContainer.appendChild(document.createElement("div"));this._elConsole.className="yui-log-bd";if(this.height){this._elConsole.style.height=this.height;}};YAHOO.widget.LogReader.prototype._initFooterEl=function(){var A=this;if(this.footerEnabled){if(this._elFt){YAHOO.util.Event.purgeElement(this._elFt,true);this._elFt.innerHTML="";}this._elFt=this._elContainer.appendChild(document.createElement("div"));this._elFt.className="yui-log-ft";this._elBtns=this._elFt.appendChild(document.createElement("div"));this._elBtns.className="yui-log-btns";this._btnPause=document.createElement("input");this._btnPause.type="button";this._btnPause.className="yui-log-button";this._btnPause.value="Pause";this._btnPause=this._elBtns.appendChild(this._btnPause);YAHOO.util.Event.addListener(A._btnPause,"click",A._onClickPauseBtn,A);this._btnClear=document.createElement("input");this._btnClear.type="button";this._btnClear.className="yui-log-button";this._btnClear.value="Clear";this._btnClear=this._elBtns.appendChild(this._btnClear);YAHOO.util.Event.addListener(A._btnClear,"click",A._onClickClearBtn,A);this._elCategoryFilters=this._elFt.appendChild(document.createElement("div"));this._elCategoryFilters.className="yui-log-categoryfilters";this._elSourceFilters=this._elFt.appendChild(document.createElement("div"));this._elSourceFilters.className="yui-log-sourcefilters";}};YAHOO.widget.LogReader.prototype._initDragDrop=function(){if(YAHOO.util.DD&&this.draggable&&this._elHd){var A=new YAHOO.util.DD(this._elContainer);A.setHandleElId(this._elHd.id);this._elHd.style.cursor="move";}};YAHOO.widget.LogReader.prototype._initCategories=function(){this._categoryFilters=[];var C=YAHOO.widget.Logger.categories;for(var A=0;Athis.thresholdMax)){O=0;}var L=(B>O)?(B-O):0;var C=this._sourceFilters.length;var M=this._categoryFilters.length;for(var I=L;I0){C=G.substring(0,D);A=G.substring(D,G.length);}else{C=G;}if(this._isNewSource(C)){this._createNewSource(C);}}var H=new Date();var J=new YAHOO.widget.LogMsg({msg:B,time:H,category:F,source:C,sourceDetail:A});var I=this._stack;var E=this.maxStackEntries;if(E&&!isNaN(E)&&(I.length>=E)){I.shift();}I.push(J);this.newLogEvent.fire(J);if(this._browserConsoleEnabled){this._printToBrowserConsole(J);}return true;}else{return false;}};YAHOO.widget.Logger.reset=function(){this._stack=[];this._startTime=new Date().getTime();this.loggerEnabled=true;this.log("Logger reset");this.logResetEvent.fire();};YAHOO.widget.Logger.getStack=function(){return this._stack;};YAHOO.widget.Logger.getStartTime=function(){return this._startTime;};YAHOO.widget.Logger.disableBrowserConsole=function(){YAHOO.log("Logger output to the function console.log() has been disabled.");this._browserConsoleEnabled=false;};YAHOO.widget.Logger.enableBrowserConsole=function(){this._browserConsoleEnabled=true;YAHOO.log("Logger output to the function console.log() has been enabled.");};YAHOO.widget.Logger.categoryCreateEvent=new YAHOO.util.CustomEvent("categoryCreate",this,true);YAHOO.widget.Logger.sourceCreateEvent=new YAHOO.util.CustomEvent("sourceCreate",this,true);YAHOO.widget.Logger.newLogEvent=new YAHOO.util.CustomEvent("newLog",this,true);YAHOO.widget.Logger.logResetEvent=new YAHOO.util.CustomEvent("logReset",this,true);YAHOO.widget.Logger._createNewCategory=function(A){this.categories.push(A);this.categoryCreateEvent.fire(A);};YAHOO.widget.Logger._isNewCategory=function(B){for(var A=0;A element used for a menu's shadow is appended + to its root element via JavaScript once it has been rendered. The + code that creates the shadow lives in the menu's public "onRender" + event handler that is a prototype method of YAHOO.widget.Menu. + Implementers wishing to remove a menu's shadow or add any other markup + required for a given skin for menu should override the "onRender" method. +*/ + +.yui-menu-shadow { + + position: absolute; + z-index: -1; + +} + + + +/* + +There are two known issues with YAHOO.widget.Overlay (the superclass class of +Menu) that manifest in Gecko-based browsers on Mac OS X: + + 1) Elements with scrollbars will poke through Overlay instances floating + above them. + + 2) An Overlay's scrollbars and the scrollbars of its child nodes remain + visible when the Overlay is hidden. + +To fix these bugs in Menu (a subclass of YAHOO.widget.Overlay): + + 1) The "overflow" property of a Menu instance's shadow element and child + nodes is toggled between "hidden" and "auto" (through the application + and removal of the "hide-scrollbars" and "show-scrollbars" CSS classes) + as its "visibility" configuration property is toggled between + "false" and "true." + + 2) The "display" property of