diff options
Diffstat (limited to 'examples/lessons')
1332 files changed, 7986 insertions, 22895 deletions
diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/audio/cheetah.wav b/examples/lessons/6_English_VocabularyAnimals/assets/audio/cheetah.wav Binary files differdeleted file mode 100755 index f819bdd..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/audio/cheetah.wav +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/audio/crocodile.wav b/examples/lessons/6_English_VocabularyAnimals/assets/audio/crocodile.wav Binary files differdeleted file mode 100755 index fcc37d4..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/audio/crocodile.wav +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/audio/dinosaura.wav b/examples/lessons/6_English_VocabularyAnimals/assets/audio/dinosaura.wav Binary files differdeleted file mode 100755 index 06e7834..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/audio/dinosaura.wav +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/audio/giraffe.wav b/examples/lessons/6_English_VocabularyAnimals/assets/audio/giraffe.wav Binary files differdeleted file mode 100755 index 895bfb2..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/audio/giraffe.wav +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/audio/kangaroo.wav b/examples/lessons/6_English_VocabularyAnimals/assets/audio/kangaroo.wav Binary files differdeleted file mode 100755 index 76221ea..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/audio/kangaroo.wav +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/audio/octopus.wav b/examples/lessons/6_English_VocabularyAnimals/assets/audio/octopus.wav Binary files differdeleted file mode 100755 index 3b2f590..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/audio/octopus.wav +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/audio/panda.wav b/examples/lessons/6_English_VocabularyAnimals/assets/audio/panda.wav Binary files differdeleted file mode 100755 index 4dc923d..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/audio/panda.wav +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/audio/rhinoceros.wav b/examples/lessons/6_English_VocabularyAnimals/assets/audio/rhinoceros.wav Binary files differdeleted file mode 100755 index a08bb5e..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/audio/rhinoceros.wav +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/audio/whale.wav b/examples/lessons/6_English_VocabularyAnimals/assets/audio/whale.wav Binary files differdeleted file mode 100755 index 3d1fae0..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/audio/whale.wav +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/audio/zebra.wav b/examples/lessons/6_English_VocabularyAnimals/assets/audio/zebra.wav Binary files differdeleted file mode 100755 index 023b627..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/audio/zebra.wav +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/bg_footer.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/bg_footer.png Binary files differdeleted file mode 100755 index 4bd44fa..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/bg_footer.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/bg_header.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/bg_header.png Binary files differdeleted file mode 100755 index f421817..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/bg_header.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/bg_title_block.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/bg_title_block.png Binary files differdeleted file mode 100755 index 7311891..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/bg_title_block.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/cheetah.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/cheetah.png Binary files differdeleted file mode 100755 index 026c35f..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/cheetah.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/cheetah0.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/cheetah0.png Binary files differdeleted file mode 100755 index 46128fc..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/cheetah0.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/cheetah1.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/cheetah1.png Binary files differdeleted file mode 100755 index 5d5089b..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/cheetah1.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/cheetah2.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/cheetah2.png Binary files differdeleted file mode 100755 index 2a6a6ce..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/cheetah2.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/cheetah3.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/cheetah3.png Binary files differdeleted file mode 100755 index ee709fc..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/cheetah3.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/cheetah4.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/cheetah4.png Binary files differdeleted file mode 100755 index 66a89ed..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/cheetah4.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/cheetah5.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/cheetah5.png Binary files differdeleted file mode 100755 index 2334d3c..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/cheetah5.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/cheetah6.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/cheetah6.png Binary files differdeleted file mode 100755 index d4ce4d6..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/cheetah6.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/cheetah7.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/cheetah7.png Binary files differdeleted file mode 100755 index e4712f4..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/cheetah7.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/cheetah8.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/cheetah8.png Binary files differdeleted file mode 100755 index 45e068b..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/cheetah8.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/confirm.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/confirm.png Binary files differdeleted file mode 100755 index cb0b4e2..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/confirm.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/crocodile.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/crocodile.png Binary files differdeleted file mode 100755 index 17ca28f..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/crocodile.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/crocodile0.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/crocodile0.png Binary files differdeleted file mode 100755 index 88731bc..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/crocodile0.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/crocodile1.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/crocodile1.png Binary files differdeleted file mode 100755 index 79d4742..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/crocodile1.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/crocodile2.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/crocodile2.png Binary files differdeleted file mode 100755 index 7a3f53b..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/crocodile2.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/crocodile3.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/crocodile3.png Binary files differdeleted file mode 100755 index 8bcf1b7..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/crocodile3.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/crocodile4.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/crocodile4.png Binary files differdeleted file mode 100755 index 3db2003..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/crocodile4.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/crocodile5.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/crocodile5.png Binary files differdeleted file mode 100755 index 498b6d9..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/crocodile5.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/crocodile6.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/crocodile6.png Binary files differdeleted file mode 100755 index 5b2ff52..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/crocodile6.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/crocodile7.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/crocodile7.png Binary files differdeleted file mode 100755 index 8808022..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/crocodile7.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/crocodile8.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/crocodile8.png Binary files differdeleted file mode 100755 index ef2bae6..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/crocodile8.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/dinosaur.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/dinosaur.png Binary files differdeleted file mode 100755 index 127e29d..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/dinosaur.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/dinosaur0.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/dinosaur0.png Binary files differdeleted file mode 100755 index e9b572b..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/dinosaur0.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/dinosaur1.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/dinosaur1.png Binary files differdeleted file mode 100755 index 8b4f731..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/dinosaur1.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/dinosaur2.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/dinosaur2.png Binary files differdeleted file mode 100755 index 226d23e..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/dinosaur2.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/dinosaur3.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/dinosaur3.png Binary files differdeleted file mode 100755 index 4a94545..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/dinosaur3.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/dinosaur4.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/dinosaur4.png Binary files differdeleted file mode 100755 index 4e13670..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/dinosaur4.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/dinosaur5.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/dinosaur5.png Binary files differdeleted file mode 100755 index d9e2539..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/dinosaur5.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/dinosaur6.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/dinosaur6.png Binary files differdeleted file mode 100755 index f0fd886..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/dinosaur6.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/dinosaur7.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/dinosaur7.png Binary files differdeleted file mode 100755 index d18652c..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/dinosaur7.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/dinosaur8.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/dinosaur8.png Binary files differdeleted file mode 100755 index 3a69842..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/dinosaur8.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/giraffe.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/giraffe.png Binary files differdeleted file mode 100755 index 2ff8d6d..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/giraffe.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/giraffe0.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/giraffe0.png Binary files differdeleted file mode 100755 index cdd0c2d..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/giraffe0.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/giraffe1.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/giraffe1.png Binary files differdeleted file mode 100755 index 7dc2405..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/giraffe1.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/giraffe2.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/giraffe2.png Binary files differdeleted file mode 100755 index e947271..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/giraffe2.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/giraffe3.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/giraffe3.png Binary files differdeleted file mode 100755 index f881320..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/giraffe3.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/giraffe4.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/giraffe4.png Binary files differdeleted file mode 100755 index 484214e..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/giraffe4.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/giraffe5.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/giraffe5.png Binary files differdeleted file mode 100755 index 49e26fc..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/giraffe5.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/giraffe6.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/giraffe6.png Binary files differdeleted file mode 100755 index ffc8cd1..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/giraffe6.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/giraffe7.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/giraffe7.png Binary files differdeleted file mode 100755 index d505a14..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/giraffe7.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/giraffe8.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/giraffe8.png Binary files differdeleted file mode 100755 index 1fb13eb..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/giraffe8.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/help.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/help.png Binary files differdeleted file mode 100755 index e7faca5..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/help.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/kangaroo.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/kangaroo.png Binary files differdeleted file mode 100755 index 22da95d..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/kangaroo.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/kangaroo0.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/kangaroo0.png Binary files differdeleted file mode 100755 index c315490..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/kangaroo0.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/kangaroo1.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/kangaroo1.png Binary files differdeleted file mode 100755 index a3439d8..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/kangaroo1.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/kangaroo2.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/kangaroo2.png Binary files differdeleted file mode 100755 index 439cb5d..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/kangaroo2.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/kangaroo3.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/kangaroo3.png Binary files differdeleted file mode 100755 index 3a69842..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/kangaroo3.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/kangaroo4.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/kangaroo4.png Binary files differdeleted file mode 100755 index 21cf9d3..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/kangaroo4.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/kangaroo5.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/kangaroo5.png Binary files differdeleted file mode 100755 index 274c132..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/kangaroo5.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/kangaroo6.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/kangaroo6.png Binary files differdeleted file mode 100755 index 6d498a4..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/kangaroo6.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/kangaroo7.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/kangaroo7.png Binary files differdeleted file mode 100755 index 58c9350..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/kangaroo7.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/kangaroo8.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/kangaroo8.png Binary files differdeleted file mode 100755 index 6061eaa..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/kangaroo8.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/octopus.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/octopus.png Binary files differdeleted file mode 100755 index 16576b9..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/octopus.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/octopus0.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/octopus0.png Binary files differdeleted file mode 100755 index 3479f45..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/octopus0.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/octopus1.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/octopus1.png Binary files differdeleted file mode 100755 index 076ed8d..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/octopus1.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/octopus2.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/octopus2.png Binary files differdeleted file mode 100755 index 076ed8d..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/octopus2.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/octopus3.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/octopus3.png Binary files differdeleted file mode 100755 index de27174..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/octopus3.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/octopus4.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/octopus4.png Binary files differdeleted file mode 100755 index cf5de59..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/octopus4.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/octopus5.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/octopus5.png Binary files differdeleted file mode 100755 index 356abaf..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/octopus5.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/octopus6.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/octopus6.png Binary files differdeleted file mode 100755 index 4917d16..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/octopus6.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/octopus7.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/octopus7.png Binary files differdeleted file mode 100755 index b8b22e3..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/octopus7.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/octopus8.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/octopus8.png Binary files differdeleted file mode 100755 index 986e600..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/octopus8.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/panda.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/panda.png Binary files differdeleted file mode 100755 index 2c4c9b9..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/panda.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/panda0.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/panda0.png Binary files differdeleted file mode 100755 index 0beb71f..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/panda0.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/panda1.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/panda1.png Binary files differdeleted file mode 100755 index fa250a6..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/panda1.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/panda2.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/panda2.png Binary files differdeleted file mode 100755 index de5efbb..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/panda2.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/panda3.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/panda3.png Binary files differdeleted file mode 100755 index bfc0878..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/panda3.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/panda4.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/panda4.png Binary files differdeleted file mode 100755 index 545d8ce..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/panda4.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/panda5.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/panda5.png Binary files differdeleted file mode 100755 index 5a744c7..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/panda5.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/panda6.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/panda6.png Binary files differdeleted file mode 100755 index 3a9a5d7..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/panda6.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/panda7.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/panda7.png Binary files differdeleted file mode 100755 index 77866e9..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/panda7.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/panda8.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/panda8.png Binary files differdeleted file mode 100755 index bf1f2be..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/panda8.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/rhinoceros.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/rhinoceros.png Binary files differdeleted file mode 100755 index 2ccd3b8..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/rhinoceros.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/rhinoceros0.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/rhinoceros0.png Binary files differdeleted file mode 100755 index 64aa29e..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/rhinoceros0.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/rhinoceros1.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/rhinoceros1.png Binary files differdeleted file mode 100755 index 1ec1192..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/rhinoceros1.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/rhinoceros2.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/rhinoceros2.png Binary files differdeleted file mode 100755 index e2e5d02..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/rhinoceros2.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/rhinoceros3.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/rhinoceros3.png Binary files differdeleted file mode 100755 index db94e99..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/rhinoceros3.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/rhinoceros4.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/rhinoceros4.png Binary files differdeleted file mode 100755 index fb65f0c..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/rhinoceros4.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/rhinoceros5.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/rhinoceros5.png Binary files differdeleted file mode 100755 index e3a6fe3..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/rhinoceros5.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/rhinoceros6.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/rhinoceros6.png Binary files differdeleted file mode 100755 index 4de7c10..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/rhinoceros6.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/rhinoceros7.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/rhinoceros7.png Binary files differdeleted file mode 100755 index 1b959f3..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/rhinoceros7.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/rhinoceros8.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/rhinoceros8.png Binary files differdeleted file mode 100755 index c5d3ec9..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/rhinoceros8.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/title_block_lt.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/title_block_lt.png Binary files differdeleted file mode 100755 index b1c0e90..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/title_block_lt.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/title_block_rt.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/title_block_rt.png Binary files differdeleted file mode 100755 index 275daaf..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/title_block_rt.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/volImage.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/volImage.png Binary files differdeleted file mode 100755 index 04ec789..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/volImage.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/whale.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/whale.png Binary files differdeleted file mode 100755 index 44f547b..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/whale.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/whale0.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/whale0.png Binary files differdeleted file mode 100755 index 4ce8c53..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/whale0.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/whale1.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/whale1.png Binary files differdeleted file mode 100755 index cf3ac85..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/whale1.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/whale2.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/whale2.png Binary files differdeleted file mode 100755 index c929bd2..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/whale2.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/whale3.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/whale3.png Binary files differdeleted file mode 100755 index cc88497..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/whale3.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/whale4.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/whale4.png Binary files differdeleted file mode 100755 index ce1c5a8..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/whale4.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/whale5.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/whale5.png Binary files differdeleted file mode 100755 index d81882e..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/whale5.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/whale6.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/whale6.png Binary files differdeleted file mode 100755 index 68b7e39..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/whale6.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/whale7.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/whale7.png Binary files differdeleted file mode 100755 index 72697a1..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/whale7.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/whale8.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/whale8.png Binary files differdeleted file mode 100755 index fe072af..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/whale8.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/zebra.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/zebra.png Binary files differdeleted file mode 100755 index 0a1ef68..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/zebra.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/zebra0.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/zebra0.png Binary files differdeleted file mode 100755 index 95a838d..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/zebra0.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/zebra1.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/zebra1.png Binary files differdeleted file mode 100755 index 369f561..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/zebra1.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/zebra2.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/zebra2.png Binary files differdeleted file mode 100755 index c813d08..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/zebra2.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/zebra3.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/zebra3.png Binary files differdeleted file mode 100755 index 6c719c9..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/zebra3.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/zebra4.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/zebra4.png Binary files differdeleted file mode 100755 index 7b4a4cc..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/zebra4.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/zebra5.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/zebra5.png Binary files differdeleted file mode 100755 index cda7488..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/zebra5.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/zebra6.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/zebra6.png Binary files differdeleted file mode 100755 index 7fb5451..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/zebra6.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/zebra7.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/zebra7.png Binary files differdeleted file mode 100755 index 7f90469..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/zebra7.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/zebra8.png b/examples/lessons/6_English_VocabularyAnimals/assets/image/zebra8.png Binary files differdeleted file mode 100755 index b4a117f..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/zebra8.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyAnimals/css/lesson.css b/examples/lessons/6_English_VocabularyAnimals/css/lesson.css deleted file mode 100755 index 0a38c18..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/css/lesson.css +++ /dev/null @@ -1,306 +0,0 @@ -@CHARSET "UTF-8";
-/****** Page Styles ****/
-
-body {
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 10pt;
- margin: 0px;
- background-color: #FFFFCC;
-}
-#header {
- background-image: url(../assets/image/bg_header.png);
- background-repeat: repeat-x;
- height: 89px;
- width: 100%;
- position: absolute;
- left: 0px;
- top: 0px;
-}
-#topbtn_left {
- float: left;
- height: 60px;
- width: 60px;
- padding-top: 13px;
- padding-left: 5px;
-}
-
-
- #linkBack{
- width: 60px; height: 59px;
- background:url(../assets/image/btn_back.png);
- }
- #linkBack:hover{
- background:url(../assets/image/btn_back_hover.png);
- }
-
-#lesson_title {
- float: left;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 16pt;
- font-weight: bold;
- color: #FFFFFF;
- margin-left: 10px;
- background-image: url(../assets/image/bg_title_block.png);
-}
-#topbtn_right {
- float: right;
- height: 60px;
- width: 60px;
- padding-top: 13px;
- padding-right: 5px;
-}
- #linkHelp{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_help.png);
- }
- #linkHelp:hover{
- background:url(../assets/image/btn_help_hover.png);
- }
- #linkOle{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_ole.png);
- }
- #linkOle:hover{
- background:url(../assets/image/btn_ole_hover.png);
- }
- #linkNext{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_next.png);
- }
- #linkNext:hover{
- background:url(../assets/image/btn_next_hover.png);
- }
-#footer {
- background-image: url(../assets/image/bg_footer.png);
- background-repeat: repeat-x;
- position: absolute;
- height: 69px;
- width: 100%;
- left: 0px;
- bottom: 0px;
-}
-#score_box {
- float: left;
- padding-left: 5px;
- padding-top: 10px;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- color: #FFFF00;
- font-size: 16pt;
- font-weight: bold;
-}
-#botbtn_right {
- float: right;
- height: 55px;
- /*width: 251px;*/
- padding-right: 5px;
- padding-top: 5px;
-}
-
- #linkStart{
- width: 251px; height: 55px;
- background:url(../assets/image/btn_start.png);
- }
- #linkStart:hover{
- background:url(../assets/image/btn_start_hover.png);
- }
- #linkStart:active{
- background:url(../assets/image/btn_start_mouse_down.png);
- }
- #linkPlayAgain{
- width: 251px; height: 55px;
- background:url(../assets/image/btn_play_again.png);
- }
- #linkPlayAgain:hover{
- background:url(../assets/image/btn_play_again_hover.png);
- }
- #linkPlayAgain:active{
- background:url(../assets/image/btn_play_again_mouse_down.png);
- }
-
-/**** End of the page style ****/
-
-/**** Game Styles ****/
-
-a{
- color:#FFFFCC;
-}
-a img{
- border: 0;
-}
-#currentTitle{
- width: 150px;
- height: 80xp;
- font:25px/30px "Courier New", Courier, monospace;
- font-weight: bold;
- color: red;
-}
-#content{
- margin: 0px auto;
- margin-top: 85px;
- width: 100%;
- height: 400px;
-
-}
- #section{
- width: 1000px;
- height: 390px;
- margin: 5px auto;
- }
-
- #topText{
- margin: 1px auto;
- height: 25px;
- font: 20px/25px Verdana, Geneva, Arial, Helvetica, sans-serif;
- color: #0000FF;
- text-align:center;
- }
- #imgAnimalsDisplay{
- margin: 5px auto;
- width: 300px;
- height: 300px;
- text-align:center;
- }
- #animalText{
- margin: 5px auto;
- width: 175px;
- height: 25px;
- font: 20px/25px Verdana, Geneva, Arial, Helvetica, sans-serif;
- color: #000000;
- text-align:center;
-
- }
-
- /*** 2nd section ****/
- #infoText{
- padding: 5px;
- width: 500px;
- height: 30px;
- font: 15px/20px Verdana, Geneva, Arial, Helvetica, sans-serif;
- color: #000000;
- text-align:center;
-
- }
- .imgVol{
- float:left;
- width: 48px;
- height: 48px;
- background-image: url(../assets/image/volImage.png);
- }
- #imgPuzzleArea{
- margin-left: 100px;
- margin-top: 15px;
- width: 306px;
- height: 306px;
- border:1px solid #A8F42D;
- }
- .imgPuzzle{
- float: left;
- width: 100px;
- height: 100px;
- border:1px solid #A8F42D;
- }
- .default{
- background-color: #C8FFC2;
- }
-
- #dragImgSection{
- position:absolute;
- top: 25%;
- right: 5%;
- width: 510px;
- height: 306px;
- border:1px solid #A8F42D;
- }
- .imgAnim{
- margin-top: 75px;
- }
-
- .drophover{
- background: #FF9900;
- }
-
-
- .backOpaque{
- background-color: #A4A4A4;
- opacity: 0.2;
- }
-
- #confirmSection{
- position: absolute;
- top: 20%;
- left: 42%;
- width: 580px;
- height: 350px;
-
- }
- #checkAnswer{
- float:left;
- margin-top: 50px;
- width: 100px;
- height: 92px;
- }
-
- #confirmBox{
- margin-top: 50px;
- margin-left:30px;
- width: 300px;
- height: 250px;
- border: 2px solid #E2D97F;
- background-color: #000;
- opacity: 0.8;
- -moz-border-radius : 20px;
- -webkit-border-radius : 20px;
- border-radius : 20px;
-
- }
-
- #confimBtn{
- margin: 1em auto;
- width: 120px;
- height: 35px;
- background: url(../assets/image/confirm.png);
- }
- #dragTxtSection{
- position: absolute;
- margin: 0.5em auto;
- top: 8%;
- right: 10%;
- width: 100px;
- height: 303px;
- border: 2px solid #FF9900;
- text-align:center;
- }
-
- #help{
- position:absolute;
- right: 20%;
- top: 1%;
- width: 224px;
- height: 525px;
- background:url(../assets/image/help.png);
- z-index:40;
- }
- #gameOver{
- position:absolute;
- top: 40%;
- left: 25%;
- width: 500px;
- text-align:center;
- font: 30px/35px Verdana, Geneva, Arial, Helvetica, sans-serif;
- font-weight:bold;
- color:red;
- }
- #gameOverInfo{
- margin-top: 35px;
- text-align:center;
- font: 20px/25px Helvetica, Geneva, Arial, Verdana, sans-serif;
- font-weight:bold;
- color:#06D946;
-
- }
- .specialText{
- font: 20px/25px Helvetica, Geneva, Arial, Verdana, sans-serif;
- font-weight:bold;
- color:#FF9900;
- border-bottom: 2px dotted #CCC;
- }
\ No newline at end of file diff --git a/examples/lessons/6_English_VocabularyAnimals/index.html b/examples/lessons/6_English_VocabularyAnimals/index.html deleted file mode 100755 index a3a5553..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/index.html +++ /dev/null @@ -1,47 +0,0 @@ -<!DOCTYPE html>
-<head>
- <title>Class 6 English Vocabulary Animals</title>
- <meta name="keywords" content="karma,javascript,html5,sugar,sugarlabs,gsoc,ole,nepal" />
- <link type="text/css" rel="stylesheet" href="css/lesson.css" />
- <link type="text/css" rel="stylesheet" href="css/demos.css" />
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <link type="image/ico" rel="icon" href="../../assets/default/image/favicon.ico" />
- <script type="text/javascript" src="js/jquery-1.4.js"></script>
- <script type="text/javascript" src="js/ui.core.js"></script>
- <script type="text/javascript" src="js/ui.draggable.js"></script>
- <script type="text/javascript" src="js/ui.droppable.js"></script>
- <script type="text/javascript" src="js/karma.js"></script>
- <script type="text/javascript" src="js/lesson.js"></script>
-</head>
-<body>
- <div id="header">
- <div id="topbtn_left"><a href="http://olenepal.org"><div id="linkOle"></div></a></div>
- <div id="topbtn_left"><a href="#"><div id="linkBack"></div></a></div>
- <div id="lesson_title">
- <img src="assets/image/title_block_lt.png" width="33" height="89" align="absmiddle" />
- Vocabulary: Wild Animals <span id="currentTitle"></span>
- <img src="assets/image/title_block_rt.png" width="33" height="89" align="absmiddle" />
- </div>
- <div id="topbtn_right"><a href="#"><div id="linkHelp"></div></a></div>
- <div id="topbtn_right"><a href="http://olenepal.org"><div id="linkOle"></div></a></div>
- <div id="topbtn_right"><a href="#"><div id="linkNext"></div></a></div>
- </div>
-
- <div id="content">
- <div id="section"></div>
- <div id="confirmSection"></div>
- <div id="gameOver"></div>
- <div id="help"></div>
- </div>
- <form name="delayForm">
- <input type="hidden" name="delayval" size="5">
- </form>
-
- <div id="footer">
- <div id="score_box"></div>
- <div id="botbtn_right"><a href="#"><div id="linkStart"></div></a></div>
- <div id="botbtn_right"><a href="#"><div id="linkPlayAgain"></div></a></div>
- <div id="botbtn_right"><a href="#"><div id="linkCheck"></div></a></div>
- </div>
-</body>
-</html>
diff --git a/examples/lessons/6_English_VocabularyAnimals/js/lesson.js b/examples/lessons/6_English_VocabularyAnimals/js/lesson.js deleted file mode 100755 index 489fe72..0000000 --- a/examples/lessons/6_English_VocabularyAnimals/js/lesson.js +++ /dev/null @@ -1,359 +0,0 @@ -$(document).ready(function(){ - var k = Karma({ - audio: [{'name':'correct','file':'correct.ogg'}, - {'name':'incorrect','file':'incorrect.ogg'}, - {'name':'cheetah','file':'cheetah.wav'}, - {'name':'crocodile','file':'crocodile.wav'}, - {'name':'dinosaur','file':'dinosaura.wav'}, - {'name':'giraffe','file':'giraffe.wav'}, - {'name':'kangaroo','file':'kangaroo.wav'}, - {'name':'octopus','file':'octopus.wav'}, - {'name':'panda','file':'panda.wav'}, - {'name':'rhinoceros','file':'rhinoceros.wav'}, - {'name':'whale','file':'whale.wav'}, - {'name':'zebra','file':'zebra.wav'} - ]}); - - k.ready(function(){ - var i,j,flag; - var TOTAL_QUES = 10; - var TOTAL_LEVEL = 3; - var currentDragObject; - var randImages = []; - var randPositions = []; - var randOtherImages = []; - var currentAnimal; - var totalCounter; - var currentQuestion; - var currentDragObject; - var arrangedAns = []; - var correctAnimalParts = []; - var randTexts = []; //for the confirmation sections - var checked; - var sectionNum; //store the current tab num - var flag_checked; - var currentQues; //store the current Animal name - var currentAnimal; //store the current Animal Image name - var correctQuest; //store 1 if the question and image is same - var num; - var flag_confirm; //whether confirmation dialog box is on the top or not - var currentDropObject; - var droppedWord; - var zIndex; //show current dragged Object at top - - var animals = new Array('cheetah','crocodile','dinosaur','giraffe','kangaroo', - 'octopus','panda','rhinoceros','whale','zebra' - ); - - var genRandTexts=function (){ - randTexts[0] = k.rand(0,TOTAL_QUES-1); - for(i=1; i<TOTAL_QUES; i++){ - do{ - flag = 0; - randTexts[i] = k.rand(0,TOTAL_QUES-1); - for(j=0; j<i; j++){ - if(randTexts[i] === randTexts[j]){ - flag++; - } - } - }while(flag != 0 ); //end of do while loop - } - }; - - var genRandImages=function (){ - randImages[0] = k.rand(0,TOTAL_QUES-1); - for(i=1; i<TOTAL_QUES; i++){ - do{ - flag = 0; - randImages[i] = k.rand(0,TOTAL_QUES-1); - for(j=0; j<i; j++){ - if(randImages[i] === randImages[j]){ - flag++; - } - } - }while(flag != 0 ); //end of do while loop - } - }; - - var genRandOtherImages = function(){ - randOtherImages[0] = currentAnimal; - for(i=1; i<7; i++){ - do{ - flag = 0; - randOtherImages[i] = k.rand(0,6); - for(j=0; j<i; j++){ - if(randOtherImages[i] === randOtherImages[j]){ - flag++; - } - } - }while(flag != 0 ); //end of do while loop - } - - }; - - - var genRandPositions = function(){ // 15 random positions 8 correct - randPositions[0] = k.rand(0,14); - for(i=1; i<15; i++){ - do{ - flag = 0; - randPositions[i] = k.rand(0,14); - for(j=0; j<i; j++){ - if(randPositions[i] === randPositions[j]){ - flag++; - } - } - }while(flag != 0 ); //end of do while loop - } - - }; - - var assignDragTexts = function(txtId){ - randText = randTexts[i]; - $('#dragTxtSection').append('<div id="text'+txtId+'" class="dragObjects">'+animals[randText]+'</div>'); - var dragObjCss = { - 'float': 'left','cursor': 'move','width':'100px','height':'25px', - 'margin':'0.1em','color':'#5B3CD5', - 'font':'20px/30px Helvetica, Geneva, Arial, Verdana, sans-serif' - }; - $('#text'+txtId).css(dragObjCss); - }; - - var confirmAnswer = function(){ - genRandTexts(); - $('#confirmSection').show().html(''); - $('#confirmSection').append('<div id="confirmBox"></div>'); - $('#confirmBox').append('<div id="checkAnswer"></div>'); - $('#confirmBox').append('<div id="word0" class="dropObjects"></div>'); - var dropObjCss = { - 'margin':'7em auto','margin-bottom':'3em','width':'100px','height':'30px', - 'border':'1px solid #FF0000' - }; - $('#word0').css(dropObjCss); - $('#confirmBox').append('<div id="confimBtn"></div>'); - $('#confirmSection').append('<div id="dragTxtSection"></div>'); - - for(i = 0; i<10; i++){ - assignDragTexts(i); - } - drag_drop(); - - } - - var check_puzzle_completion = function(){ - var correct = 0; - for(i = 0; i< 9 ;i++){ - if(arrangedAns[i] === correctAnimalParts[i]){ - correct++; - } - } - if(correct === 9){ - //alert("great job its time to show some confirmations"); - $('#section').addClass('backOpaque'); - flag_confirm = 0; - confirmAnswer(); - - } - }; - - var next_images = function(){ - currentAnimal = randImages[totalCounter]; - $('#imgAnimalsDisplay').html('<img src="assets/image/'+animals[currentAnimal]+'.png" />'); - $('#animalText').html('').append('<div class="imgVol"></div>'); - $('#animalText').append(animals[currentAnimal]); - $('.imgVol').click(function(){ - k.audio[animals[currentAnimal]].play(); - }); - }; - - var assignDragPuzzle = function(puzzleId,imgName){ - $('#dragImgSection').append('<div id="drag'+num+'" class="dragObjects"></div>'); - var dragObjCss = { - 'float': 'left','cursor': 'move','width':'100px','height':'100px', - 'border':'1px solid #A8F42D', - 'background':'url(assets/image/'+animals[imgName]+puzzleId+'.png)' - }; - $('#drag'+num).css(dragObjCss); - if(imgName === currentAnimal){ - correctAnimalParts[puzzleId] = $('#drag'+num).attr('id'); - } - num++; - }; - - var assignPuzzle = function(puzzleId){ - $('#imgPuzzleArea').append('<div id="drop'+puzzleId+'" class="dropObjects"></div>'); - var dropObjCss = { - 'float': 'left','width':'100px','height':'100px', - 'border':'1px solid #A8F42D','background': '#C8FFC2' - }; - $('#drop'+puzzleId).css(dropObjCss); - }; - - var display_game_over = function() { - $('#confirmSection').hide(); - $('#gameOver').show().html('Game Over !!! Congratulations'); - $('#gameOver').append('<div id="gameOverInfo">You have successfully completed all the vocabulary section</div>'); - }; - - var delay_gameOver = function(){ - document.delayForm.delayval.value = 1; - display_game_over(); - }; - - var next_puzzle = function() { - $('#confirmSection').hide(); - zIndex = 0; - $('#section').removeClass('backOpaque'); - $('#section').html('').append('<div id="infoText"></div>'); - $('#infoText').append('Listen to the name of the animal.'+ - 'And drag and drop the pisces to complete the picture of the animal you just heard the name of.'); - currentAnimal = randImages[totalCounter]; - $('#infoText').append('<div class="imgVol"></div>'); - $('.imgVol').click(function(){ - k.audio[animals[currentAnimal]].play(); - }); - $('#section').append('<div id = "imgPuzzleArea"></div>'); - for(i = 0; i< 9; i++){ - assignPuzzle(i); - - } - $('#section').append('<div id = "dragImgSection"></div>'); - genRandPositions(); - genRandOtherImages(); - var number = 1; - num = 0; - for(i = 0; i< 15; i++){ - var randPos = randPositions[i]; //any random pos between 1-15 - if(randPos<9){ - assignDragPuzzle(randPos,currentAnimal); - } - else{ - randPos = 15-randPos; - assignDragPuzzle(randPos,randOtherImages[number]); - number++; - } - } - flag_confirm = 1; - drag_drop(); - }; - - function game_start(){ - $('#section').removeClass('backOpaque'); - $('#linkNext').hide(); - $('#linkBack').hide(); - sectionNum = 1; - genRandImages(); - totalCounter = 0; - next_puzzle(); - - } - - function game(){ - $('#help').hide(); - sectionNum = 0; - totalCounter = 0; - flag_confirm = 1; - $('#confirmSection').hide(); - $('#section').removeClass('backOpaque'); - $('#linkNext').show(); - $('#linkBack').hide(); - $('#gameOver').hide(); - $('#section').html('').append('<div id="topText">Click on the speaker and listen to the name of the wild animals</div>'); - $('#section').append('<div id="imgAnimalsDisplay"></div>'); - $('#section').append('<div id="animalText"></div>'); - genRandImages(); - next_images(); - } - - game(); - - function drag_drop(){ - $('.dragObjects').draggable({ containment: '#content'}); - $('.dragObjects').bind('dragstart', function(event, ui) { - currentDragObject = event.target.id; - $('#'+currentDragObject).css({'z-index':zIndex}); - currentDragAnimal = parseInt(currentDragObject.substring(4)); - zIndex++; - }); - - $(".dropObjects").droppable({ tolerence: 'intersect' ,hoverClass: 'drophover'}); - $('.dropObjects').bind('drop', function(event, ui) { - currentDropObject = event.target.id; - droppedWord = parseInt(currentDropObject.substring(4)); - - if(flag_confirm != 0){ - arrangedAns[droppedWord] = $('#'+currentDragObject).attr('id'); - check_puzzle_completion(); - } - - }); - $('#confimBtn').click(function(){ - var dragAnimalText = $('#'+currentDragObject).text(); - if(dragAnimalText === animals[currentAnimal]){ - k.audio.correct.play(); - $('#checkAnswer').html('<img src="assets/image/correct.png" />'); - totalCounter++; - if(totalCounter === TOTAL_QUES){ - t=setTimeout(function(){delay_gameOver();},1000); - } - else{ - $('#linkNext').show(); - } - } - else{ - k.audio.incorrect.play(); - $('#checkAnswer').html('<img src="assets/image/incorrect.png" />'); - } - - }); - - } - $('#linkHelp').click(function(){ - $('#help').slideDown(2000); - }) - .mouseout(function(){ - $('#help').slideUp(2000); - }); - $('#linkNext').click(function(){ - if(sectionNum === 0){ //first level for knowing the animals - if(totalCounter === TOTAL_QUES-2){ - $('#linkBack').show(); - $('#linkNext').hide(); - } - else{ - $('#linkNext').show(); - $('#linkBack').show(); - } - totalCounter++; - next_images(); - } - else{ - $('#linkNext').hide(); - next_puzzle(); - } - }); - $('#linkBack').click(function(){ - if(totalCounter === 1){ - $('#linkBack').hide(); - $('#linkNext').show(); - } - else{ - $('#linkNext').show(); - $('#linkBack').show(); - } - totalCounter--; - next_images(); - }); - $('#linkCheck').click(function(){ - check_answers(); - }); - $('#linkStart').click(function(){ - game_start(); - }); - - $('#linkPlayAgain').click(function(){ - game(); - }); - - }); //end of k.ready -}); //end of document.ready
\ No newline at end of file diff --git a/examples/lessons/6_English_VocabularyBirds/assets/audio/bulbul.wav b/examples/lessons/6_English_VocabularyBirds/assets/audio/bulbul.wav Binary files differdeleted file mode 100755 index 53e5693..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/audio/bulbul.wav +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/audio/crane.wav b/examples/lessons/6_English_VocabularyBirds/assets/audio/crane.wav Binary files differdeleted file mode 100755 index 596a8f3..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/audio/crane.wav +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/audio/egret.wav b/examples/lessons/6_English_VocabularyBirds/assets/audio/egret.wav Binary files differdeleted file mode 100755 index c2bdbbb..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/audio/egret.wav +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/audio/kingfisher.wav b/examples/lessons/6_English_VocabularyBirds/assets/audio/kingfisher.wav Binary files differdeleted file mode 100755 index ebb2064..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/audio/kingfisher.wav +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/audio/ostrich.wav b/examples/lessons/6_English_VocabularyBirds/assets/audio/ostrich.wav Binary files differdeleted file mode 100755 index 6a45c76..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/audio/ostrich.wav +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/audio/penguin.wav b/examples/lessons/6_English_VocabularyBirds/assets/audio/penguin.wav Binary files differdeleted file mode 100755 index 726187a..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/audio/penguin.wav +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/audio/swan.wav b/examples/lessons/6_English_VocabularyBirds/assets/audio/swan.wav Binary files differdeleted file mode 100755 index 22086f1..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/audio/swan.wav +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/audio/swift.wav b/examples/lessons/6_English_VocabularyBirds/assets/audio/swift.wav Binary files differdeleted file mode 100755 index 26bf222..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/audio/swift.wav +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/audio/vulture.wav b/examples/lessons/6_English_VocabularyBirds/assets/audio/vulture.wav Binary files differdeleted file mode 100755 index 4c75a14..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/audio/vulture.wav +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/audio/woodpecker.wav b/examples/lessons/6_English_VocabularyBirds/assets/audio/woodpecker.wav Binary files differdeleted file mode 100755 index 6bbc63d..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/audio/woodpecker.wav +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/bg_footer.png b/examples/lessons/6_English_VocabularyBirds/assets/image/bg_footer.png Binary files differdeleted file mode 100755 index 4bd44fa..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/bg_footer.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/bg_header.png b/examples/lessons/6_English_VocabularyBirds/assets/image/bg_header.png Binary files differdeleted file mode 100755 index f421817..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/bg_header.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/bg_title_block.png b/examples/lessons/6_English_VocabularyBirds/assets/image/bg_title_block.png Binary files differdeleted file mode 100755 index 7311891..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/bg_title_block.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/bulbul.png b/examples/lessons/6_English_VocabularyBirds/assets/image/bulbul.png Binary files differdeleted file mode 100755 index 2108b97..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/bulbul.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/bulbul0.png b/examples/lessons/6_English_VocabularyBirds/assets/image/bulbul0.png Binary files differdeleted file mode 100755 index c0365f7..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/bulbul0.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/bulbul1.png b/examples/lessons/6_English_VocabularyBirds/assets/image/bulbul1.png Binary files differdeleted file mode 100755 index c8448a6..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/bulbul1.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/bulbul2.png b/examples/lessons/6_English_VocabularyBirds/assets/image/bulbul2.png Binary files differdeleted file mode 100755 index a1f8823..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/bulbul2.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/bulbul3.png b/examples/lessons/6_English_VocabularyBirds/assets/image/bulbul3.png Binary files differdeleted file mode 100755 index bacedaf..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/bulbul3.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/bulbul4.png b/examples/lessons/6_English_VocabularyBirds/assets/image/bulbul4.png Binary files differdeleted file mode 100755 index 06b5d2f..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/bulbul4.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/bulbul5.png b/examples/lessons/6_English_VocabularyBirds/assets/image/bulbul5.png Binary files differdeleted file mode 100755 index cb1fd35..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/bulbul5.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/bulbul6.png b/examples/lessons/6_English_VocabularyBirds/assets/image/bulbul6.png Binary files differdeleted file mode 100755 index ecf1350..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/bulbul6.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/bulbul7.png b/examples/lessons/6_English_VocabularyBirds/assets/image/bulbul7.png Binary files differdeleted file mode 100755 index f714c18..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/bulbul7.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/bulbul8.png b/examples/lessons/6_English_VocabularyBirds/assets/image/bulbul8.png Binary files differdeleted file mode 100755 index 142ec5d..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/bulbul8.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/check.png b/examples/lessons/6_English_VocabularyBirds/assets/image/check.png Binary files differdeleted file mode 100755 index 84fc229..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/check.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/confirm.png b/examples/lessons/6_English_VocabularyBirds/assets/image/confirm.png Binary files differdeleted file mode 100755 index cb0b4e2..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/confirm.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/correct.png b/examples/lessons/6_English_VocabularyBirds/assets/image/correct.png Binary files differdeleted file mode 100755 index ca9b9db..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/correct.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/crane.png b/examples/lessons/6_English_VocabularyBirds/assets/image/crane.png Binary files differdeleted file mode 100755 index ec850e9..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/crane.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/crane0.png b/examples/lessons/6_English_VocabularyBirds/assets/image/crane0.png Binary files differdeleted file mode 100755 index 5793f79..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/crane0.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/crane1.png b/examples/lessons/6_English_VocabularyBirds/assets/image/crane1.png Binary files differdeleted file mode 100755 index c4e1988..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/crane1.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/crane2.png b/examples/lessons/6_English_VocabularyBirds/assets/image/crane2.png Binary files differdeleted file mode 100755 index fb7ea3e..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/crane2.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/crane3.png b/examples/lessons/6_English_VocabularyBirds/assets/image/crane3.png Binary files differdeleted file mode 100755 index 994d00d..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/crane3.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/crane4.png b/examples/lessons/6_English_VocabularyBirds/assets/image/crane4.png Binary files differdeleted file mode 100755 index 6260713..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/crane4.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/crane5.png b/examples/lessons/6_English_VocabularyBirds/assets/image/crane5.png Binary files differdeleted file mode 100755 index 903967d..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/crane5.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/crane6.png b/examples/lessons/6_English_VocabularyBirds/assets/image/crane6.png Binary files differdeleted file mode 100755 index 188b66c..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/crane6.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/crane7.png b/examples/lessons/6_English_VocabularyBirds/assets/image/crane7.png Binary files differdeleted file mode 100755 index a21549e..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/crane7.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/crane8.png b/examples/lessons/6_English_VocabularyBirds/assets/image/crane8.png Binary files differdeleted file mode 100755 index 752a8cb..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/crane8.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/egret.png b/examples/lessons/6_English_VocabularyBirds/assets/image/egret.png Binary files differdeleted file mode 100755 index 6614858..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/egret.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/egret0.png b/examples/lessons/6_English_VocabularyBirds/assets/image/egret0.png Binary files differdeleted file mode 100755 index 15b8ff2..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/egret0.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/egret1.png b/examples/lessons/6_English_VocabularyBirds/assets/image/egret1.png Binary files differdeleted file mode 100755 index 43afe8e..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/egret1.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/egret2.png b/examples/lessons/6_English_VocabularyBirds/assets/image/egret2.png Binary files differdeleted file mode 100755 index 3d94056..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/egret2.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/egret3.png b/examples/lessons/6_English_VocabularyBirds/assets/image/egret3.png Binary files differdeleted file mode 100755 index 62ad133..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/egret3.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/egret4.png b/examples/lessons/6_English_VocabularyBirds/assets/image/egret4.png Binary files differdeleted file mode 100755 index 6fafa76..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/egret4.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/egret5.png b/examples/lessons/6_English_VocabularyBirds/assets/image/egret5.png Binary files differdeleted file mode 100755 index 397d6d9..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/egret5.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/egret6.png b/examples/lessons/6_English_VocabularyBirds/assets/image/egret6.png Binary files differdeleted file mode 100755 index dc14be9..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/egret6.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/egret7.png b/examples/lessons/6_English_VocabularyBirds/assets/image/egret7.png Binary files differdeleted file mode 100755 index dd9a4a8..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/egret7.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/egret8.png b/examples/lessons/6_English_VocabularyBirds/assets/image/egret8.png Binary files differdeleted file mode 100755 index 2555f34..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/egret8.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/help.png b/examples/lessons/6_English_VocabularyBirds/assets/image/help.png Binary files differdeleted file mode 100755 index fd24e98..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/help.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/incorrect.png b/examples/lessons/6_English_VocabularyBirds/assets/image/incorrect.png Binary files differdeleted file mode 100755 index 49ee2a2..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/incorrect.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/kingfisher.png b/examples/lessons/6_English_VocabularyBirds/assets/image/kingfisher.png Binary files differdeleted file mode 100755 index 611cd5f..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/kingfisher.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/kingfisher0.png b/examples/lessons/6_English_VocabularyBirds/assets/image/kingfisher0.png Binary files differdeleted file mode 100755 index f602210..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/kingfisher0.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/kingfisher1.png b/examples/lessons/6_English_VocabularyBirds/assets/image/kingfisher1.png Binary files differdeleted file mode 100755 index 4b6794d..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/kingfisher1.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/kingfisher2.png b/examples/lessons/6_English_VocabularyBirds/assets/image/kingfisher2.png Binary files differdeleted file mode 100755 index d4796e9..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/kingfisher2.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/kingfisher3.png b/examples/lessons/6_English_VocabularyBirds/assets/image/kingfisher3.png Binary files differdeleted file mode 100755 index 87a416d..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/kingfisher3.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/kingfisher4.png b/examples/lessons/6_English_VocabularyBirds/assets/image/kingfisher4.png Binary files differdeleted file mode 100755 index 6aba359..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/kingfisher4.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/kingfisher5.png b/examples/lessons/6_English_VocabularyBirds/assets/image/kingfisher5.png Binary files differdeleted file mode 100755 index 4000d25..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/kingfisher5.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/kingfisher6.png b/examples/lessons/6_English_VocabularyBirds/assets/image/kingfisher6.png Binary files differdeleted file mode 100755 index 8e676f3..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/kingfisher6.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/kingfisher7.png b/examples/lessons/6_English_VocabularyBirds/assets/image/kingfisher7.png Binary files differdeleted file mode 100755 index dbebe29..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/kingfisher7.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/kingfisher8.png b/examples/lessons/6_English_VocabularyBirds/assets/image/kingfisher8.png Binary files differdeleted file mode 100755 index 89c2ba4..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/kingfisher8.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/ostrich.png b/examples/lessons/6_English_VocabularyBirds/assets/image/ostrich.png Binary files differdeleted file mode 100755 index 25d6198..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/ostrich.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/ostrich0.png b/examples/lessons/6_English_VocabularyBirds/assets/image/ostrich0.png Binary files differdeleted file mode 100755 index e2b8296..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/ostrich0.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/ostrich1.png b/examples/lessons/6_English_VocabularyBirds/assets/image/ostrich1.png Binary files differdeleted file mode 100755 index 044401f..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/ostrich1.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/ostrich2.png b/examples/lessons/6_English_VocabularyBirds/assets/image/ostrich2.png Binary files differdeleted file mode 100755 index edcc9a0..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/ostrich2.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/ostrich3.png b/examples/lessons/6_English_VocabularyBirds/assets/image/ostrich3.png Binary files differdeleted file mode 100755 index d6155b0..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/ostrich3.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/ostrich4.png b/examples/lessons/6_English_VocabularyBirds/assets/image/ostrich4.png Binary files differdeleted file mode 100755 index e7e46df..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/ostrich4.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/ostrich5.png b/examples/lessons/6_English_VocabularyBirds/assets/image/ostrich5.png Binary files differdeleted file mode 100755 index ce17d44..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/ostrich5.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/ostrich6.png b/examples/lessons/6_English_VocabularyBirds/assets/image/ostrich6.png Binary files differdeleted file mode 100755 index e67e84f..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/ostrich6.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/ostrich7.png b/examples/lessons/6_English_VocabularyBirds/assets/image/ostrich7.png Binary files differdeleted file mode 100755 index fc4bf95..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/ostrich7.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/ostrich8.png b/examples/lessons/6_English_VocabularyBirds/assets/image/ostrich8.png Binary files differdeleted file mode 100755 index 27a79a0..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/ostrich8.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/penguin.png b/examples/lessons/6_English_VocabularyBirds/assets/image/penguin.png Binary files differdeleted file mode 100755 index 2a79508..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/penguin.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/penguin0.png b/examples/lessons/6_English_VocabularyBirds/assets/image/penguin0.png Binary files differdeleted file mode 100755 index 562214b..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/penguin0.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/penguin1.png b/examples/lessons/6_English_VocabularyBirds/assets/image/penguin1.png Binary files differdeleted file mode 100755 index 1933512..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/penguin1.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/penguin2.png b/examples/lessons/6_English_VocabularyBirds/assets/image/penguin2.png Binary files differdeleted file mode 100755 index c326eac..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/penguin2.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/penguin3.png b/examples/lessons/6_English_VocabularyBirds/assets/image/penguin3.png Binary files differdeleted file mode 100755 index 5ed16ae..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/penguin3.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/penguin4.png b/examples/lessons/6_English_VocabularyBirds/assets/image/penguin4.png Binary files differdeleted file mode 100755 index f849e3c..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/penguin4.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/penguin5.png b/examples/lessons/6_English_VocabularyBirds/assets/image/penguin5.png Binary files differdeleted file mode 100755 index 6dc42d8..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/penguin5.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/penguin6.png b/examples/lessons/6_English_VocabularyBirds/assets/image/penguin6.png Binary files differdeleted file mode 100755 index 2f144cf..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/penguin6.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/penguin7.png b/examples/lessons/6_English_VocabularyBirds/assets/image/penguin7.png Binary files differdeleted file mode 100755 index a32938b..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/penguin7.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/penguin8.png b/examples/lessons/6_English_VocabularyBirds/assets/image/penguin8.png Binary files differdeleted file mode 100755 index 1154617..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/penguin8.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/swan.png b/examples/lessons/6_English_VocabularyBirds/assets/image/swan.png Binary files differdeleted file mode 100755 index 8145406..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/swan.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/swan0.png b/examples/lessons/6_English_VocabularyBirds/assets/image/swan0.png Binary files differdeleted file mode 100755 index be34cf7..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/swan0.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/swan1.png b/examples/lessons/6_English_VocabularyBirds/assets/image/swan1.png Binary files differdeleted file mode 100755 index b66d013..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/swan1.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/swan2.png b/examples/lessons/6_English_VocabularyBirds/assets/image/swan2.png Binary files differdeleted file mode 100755 index b09db30..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/swan2.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/swan3.png b/examples/lessons/6_English_VocabularyBirds/assets/image/swan3.png Binary files differdeleted file mode 100755 index 8e4769d..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/swan3.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/swan4.png b/examples/lessons/6_English_VocabularyBirds/assets/image/swan4.png Binary files differdeleted file mode 100755 index 132868c..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/swan4.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/swan5.png b/examples/lessons/6_English_VocabularyBirds/assets/image/swan5.png Binary files differdeleted file mode 100755 index 6a04d66..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/swan5.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/swan6.png b/examples/lessons/6_English_VocabularyBirds/assets/image/swan6.png Binary files differdeleted file mode 100755 index b08e5e8..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/swan6.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/swan7.png b/examples/lessons/6_English_VocabularyBirds/assets/image/swan7.png Binary files differdeleted file mode 100755 index ba0e316..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/swan7.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/swan8.png b/examples/lessons/6_English_VocabularyBirds/assets/image/swan8.png Binary files differdeleted file mode 100755 index 5b0f2a4..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/swan8.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/swift.png b/examples/lessons/6_English_VocabularyBirds/assets/image/swift.png Binary files differdeleted file mode 100755 index 8574f2e..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/swift.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/swift0.png b/examples/lessons/6_English_VocabularyBirds/assets/image/swift0.png Binary files differdeleted file mode 100755 index 4b0b70d..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/swift0.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/swift1.png b/examples/lessons/6_English_VocabularyBirds/assets/image/swift1.png Binary files differdeleted file mode 100755 index ec0abb6..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/swift1.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/swift2.png b/examples/lessons/6_English_VocabularyBirds/assets/image/swift2.png Binary files differdeleted file mode 100755 index cc999d4..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/swift2.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/swift3.png b/examples/lessons/6_English_VocabularyBirds/assets/image/swift3.png Binary files differdeleted file mode 100755 index 608db95..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/swift3.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/swift4.png b/examples/lessons/6_English_VocabularyBirds/assets/image/swift4.png Binary files differdeleted file mode 100755 index 8d99ce0..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/swift4.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/swift5.png b/examples/lessons/6_English_VocabularyBirds/assets/image/swift5.png Binary files differdeleted file mode 100755 index 5883f5e..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/swift5.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/swift6.png b/examples/lessons/6_English_VocabularyBirds/assets/image/swift6.png Binary files differdeleted file mode 100755 index ba594c8..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/swift6.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/swift7.png b/examples/lessons/6_English_VocabularyBirds/assets/image/swift7.png Binary files differdeleted file mode 100755 index 7446eef..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/swift7.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/swift8.png b/examples/lessons/6_English_VocabularyBirds/assets/image/swift8.png Binary files differdeleted file mode 100755 index f7ef3ee..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/swift8.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/title_block_lt.png b/examples/lessons/6_English_VocabularyBirds/assets/image/title_block_lt.png Binary files differdeleted file mode 100755 index b1c0e90..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/title_block_lt.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/title_block_rt.png b/examples/lessons/6_English_VocabularyBirds/assets/image/title_block_rt.png Binary files differdeleted file mode 100755 index 275daaf..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/title_block_rt.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/volImage.png b/examples/lessons/6_English_VocabularyBirds/assets/image/volImage.png Binary files differdeleted file mode 100755 index 04ec789..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/volImage.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/vulture.png b/examples/lessons/6_English_VocabularyBirds/assets/image/vulture.png Binary files differdeleted file mode 100755 index e737642..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/vulture.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/vulture0.png b/examples/lessons/6_English_VocabularyBirds/assets/image/vulture0.png Binary files differdeleted file mode 100755 index 9283190..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/vulture0.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/vulture1.png b/examples/lessons/6_English_VocabularyBirds/assets/image/vulture1.png Binary files differdeleted file mode 100755 index e2c0367..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/vulture1.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/vulture2.png b/examples/lessons/6_English_VocabularyBirds/assets/image/vulture2.png Binary files differdeleted file mode 100755 index e34b454..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/vulture2.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/vulture3.png b/examples/lessons/6_English_VocabularyBirds/assets/image/vulture3.png Binary files differdeleted file mode 100755 index 2f7e7c7..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/vulture3.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/vulture4.png b/examples/lessons/6_English_VocabularyBirds/assets/image/vulture4.png Binary files differdeleted file mode 100755 index 9556db0..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/vulture4.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/vulture5.png b/examples/lessons/6_English_VocabularyBirds/assets/image/vulture5.png Binary files differdeleted file mode 100755 index fde5f3d..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/vulture5.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/vulture6.png b/examples/lessons/6_English_VocabularyBirds/assets/image/vulture6.png Binary files differdeleted file mode 100755 index 9c5f6d0..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/vulture6.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/vulture7.png b/examples/lessons/6_English_VocabularyBirds/assets/image/vulture7.png Binary files differdeleted file mode 100755 index e481051..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/vulture7.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/vulture8.png b/examples/lessons/6_English_VocabularyBirds/assets/image/vulture8.png Binary files differdeleted file mode 100755 index a8d5319..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/vulture8.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/woodpecker.png b/examples/lessons/6_English_VocabularyBirds/assets/image/woodpecker.png Binary files differdeleted file mode 100755 index 2a20d93..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/woodpecker.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/woodpecker0.png b/examples/lessons/6_English_VocabularyBirds/assets/image/woodpecker0.png Binary files differdeleted file mode 100755 index ca8609c..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/woodpecker0.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/woodpecker1.png b/examples/lessons/6_English_VocabularyBirds/assets/image/woodpecker1.png Binary files differdeleted file mode 100755 index 13e15bd..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/woodpecker1.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/woodpecker2.png b/examples/lessons/6_English_VocabularyBirds/assets/image/woodpecker2.png Binary files differdeleted file mode 100755 index d9ae9a9..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/woodpecker2.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/woodpecker3.png b/examples/lessons/6_English_VocabularyBirds/assets/image/woodpecker3.png Binary files differdeleted file mode 100755 index 9e90eb7..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/woodpecker3.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/woodpecker4.png b/examples/lessons/6_English_VocabularyBirds/assets/image/woodpecker4.png Binary files differdeleted file mode 100755 index 2ca9358..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/woodpecker4.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/woodpecker5.png b/examples/lessons/6_English_VocabularyBirds/assets/image/woodpecker5.png Binary files differdeleted file mode 100755 index 1f83199..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/woodpecker5.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/woodpecker6.png b/examples/lessons/6_English_VocabularyBirds/assets/image/woodpecker6.png Binary files differdeleted file mode 100755 index fdf1710..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/woodpecker6.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/woodpecker7.png b/examples/lessons/6_English_VocabularyBirds/assets/image/woodpecker7.png Binary files differdeleted file mode 100755 index efffcb5..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/woodpecker7.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/woodpecker8.png b/examples/lessons/6_English_VocabularyBirds/assets/image/woodpecker8.png Binary files differdeleted file mode 100755 index 087af3d..0000000 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/woodpecker8.png +++ /dev/null diff --git a/examples/lessons/6_English_VocabularyBirds/css/lesson.css b/examples/lessons/6_English_VocabularyBirds/css/lesson.css deleted file mode 100755 index 0a38c18..0000000 --- a/examples/lessons/6_English_VocabularyBirds/css/lesson.css +++ /dev/null @@ -1,306 +0,0 @@ -@CHARSET "UTF-8";
-/****** Page Styles ****/
-
-body {
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 10pt;
- margin: 0px;
- background-color: #FFFFCC;
-}
-#header {
- background-image: url(../assets/image/bg_header.png);
- background-repeat: repeat-x;
- height: 89px;
- width: 100%;
- position: absolute;
- left: 0px;
- top: 0px;
-}
-#topbtn_left {
- float: left;
- height: 60px;
- width: 60px;
- padding-top: 13px;
- padding-left: 5px;
-}
-
-
- #linkBack{
- width: 60px; height: 59px;
- background:url(../assets/image/btn_back.png);
- }
- #linkBack:hover{
- background:url(../assets/image/btn_back_hover.png);
- }
-
-#lesson_title {
- float: left;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 16pt;
- font-weight: bold;
- color: #FFFFFF;
- margin-left: 10px;
- background-image: url(../assets/image/bg_title_block.png);
-}
-#topbtn_right {
- float: right;
- height: 60px;
- width: 60px;
- padding-top: 13px;
- padding-right: 5px;
-}
- #linkHelp{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_help.png);
- }
- #linkHelp:hover{
- background:url(../assets/image/btn_help_hover.png);
- }
- #linkOle{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_ole.png);
- }
- #linkOle:hover{
- background:url(../assets/image/btn_ole_hover.png);
- }
- #linkNext{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_next.png);
- }
- #linkNext:hover{
- background:url(../assets/image/btn_next_hover.png);
- }
-#footer {
- background-image: url(../assets/image/bg_footer.png);
- background-repeat: repeat-x;
- position: absolute;
- height: 69px;
- width: 100%;
- left: 0px;
- bottom: 0px;
-}
-#score_box {
- float: left;
- padding-left: 5px;
- padding-top: 10px;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- color: #FFFF00;
- font-size: 16pt;
- font-weight: bold;
-}
-#botbtn_right {
- float: right;
- height: 55px;
- /*width: 251px;*/
- padding-right: 5px;
- padding-top: 5px;
-}
-
- #linkStart{
- width: 251px; height: 55px;
- background:url(../assets/image/btn_start.png);
- }
- #linkStart:hover{
- background:url(../assets/image/btn_start_hover.png);
- }
- #linkStart:active{
- background:url(../assets/image/btn_start_mouse_down.png);
- }
- #linkPlayAgain{
- width: 251px; height: 55px;
- background:url(../assets/image/btn_play_again.png);
- }
- #linkPlayAgain:hover{
- background:url(../assets/image/btn_play_again_hover.png);
- }
- #linkPlayAgain:active{
- background:url(../assets/image/btn_play_again_mouse_down.png);
- }
-
-/**** End of the page style ****/
-
-/**** Game Styles ****/
-
-a{
- color:#FFFFCC;
-}
-a img{
- border: 0;
-}
-#currentTitle{
- width: 150px;
- height: 80xp;
- font:25px/30px "Courier New", Courier, monospace;
- font-weight: bold;
- color: red;
-}
-#content{
- margin: 0px auto;
- margin-top: 85px;
- width: 100%;
- height: 400px;
-
-}
- #section{
- width: 1000px;
- height: 390px;
- margin: 5px auto;
- }
-
- #topText{
- margin: 1px auto;
- height: 25px;
- font: 20px/25px Verdana, Geneva, Arial, Helvetica, sans-serif;
- color: #0000FF;
- text-align:center;
- }
- #imgAnimalsDisplay{
- margin: 5px auto;
- width: 300px;
- height: 300px;
- text-align:center;
- }
- #animalText{
- margin: 5px auto;
- width: 175px;
- height: 25px;
- font: 20px/25px Verdana, Geneva, Arial, Helvetica, sans-serif;
- color: #000000;
- text-align:center;
-
- }
-
- /*** 2nd section ****/
- #infoText{
- padding: 5px;
- width: 500px;
- height: 30px;
- font: 15px/20px Verdana, Geneva, Arial, Helvetica, sans-serif;
- color: #000000;
- text-align:center;
-
- }
- .imgVol{
- float:left;
- width: 48px;
- height: 48px;
- background-image: url(../assets/image/volImage.png);
- }
- #imgPuzzleArea{
- margin-left: 100px;
- margin-top: 15px;
- width: 306px;
- height: 306px;
- border:1px solid #A8F42D;
- }
- .imgPuzzle{
- float: left;
- width: 100px;
- height: 100px;
- border:1px solid #A8F42D;
- }
- .default{
- background-color: #C8FFC2;
- }
-
- #dragImgSection{
- position:absolute;
- top: 25%;
- right: 5%;
- width: 510px;
- height: 306px;
- border:1px solid #A8F42D;
- }
- .imgAnim{
- margin-top: 75px;
- }
-
- .drophover{
- background: #FF9900;
- }
-
-
- .backOpaque{
- background-color: #A4A4A4;
- opacity: 0.2;
- }
-
- #confirmSection{
- position: absolute;
- top: 20%;
- left: 42%;
- width: 580px;
- height: 350px;
-
- }
- #checkAnswer{
- float:left;
- margin-top: 50px;
- width: 100px;
- height: 92px;
- }
-
- #confirmBox{
- margin-top: 50px;
- margin-left:30px;
- width: 300px;
- height: 250px;
- border: 2px solid #E2D97F;
- background-color: #000;
- opacity: 0.8;
- -moz-border-radius : 20px;
- -webkit-border-radius : 20px;
- border-radius : 20px;
-
- }
-
- #confimBtn{
- margin: 1em auto;
- width: 120px;
- height: 35px;
- background: url(../assets/image/confirm.png);
- }
- #dragTxtSection{
- position: absolute;
- margin: 0.5em auto;
- top: 8%;
- right: 10%;
- width: 100px;
- height: 303px;
- border: 2px solid #FF9900;
- text-align:center;
- }
-
- #help{
- position:absolute;
- right: 20%;
- top: 1%;
- width: 224px;
- height: 525px;
- background:url(../assets/image/help.png);
- z-index:40;
- }
- #gameOver{
- position:absolute;
- top: 40%;
- left: 25%;
- width: 500px;
- text-align:center;
- font: 30px/35px Verdana, Geneva, Arial, Helvetica, sans-serif;
- font-weight:bold;
- color:red;
- }
- #gameOverInfo{
- margin-top: 35px;
- text-align:center;
- font: 20px/25px Helvetica, Geneva, Arial, Verdana, sans-serif;
- font-weight:bold;
- color:#06D946;
-
- }
- .specialText{
- font: 20px/25px Helvetica, Geneva, Arial, Verdana, sans-serif;
- font-weight:bold;
- color:#FF9900;
- border-bottom: 2px dotted #CCC;
- }
\ No newline at end of file diff --git a/examples/lessons/6_English_VocabularyBirds/index.html b/examples/lessons/6_English_VocabularyBirds/index.html deleted file mode 100755 index b2aa9c1..0000000 --- a/examples/lessons/6_English_VocabularyBirds/index.html +++ /dev/null @@ -1,46 +0,0 @@ -<!DOCTYPE html>
-<head>
- <title>Class 6 English Vocabulary Birds</title>
- <meta name="keywords" content="karma,javascript,html5,sugar,sugarlabs,gsoc,ole,nepal" />
- <link type="text/css" rel="stylesheet" href="css/lesson.css" />
- <link type="text/css" rel="stylesheet" href="css/demos.css" />
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <link type="image/ico" rel="icon" href="../../assets/default/image/favicon.ico" />
- <script type="text/javascript" src="js/jquery-1.4.js"></script>
- <script type="text/javascript" src="js/ui.core.js"></script>
- <script type="text/javascript" src="js/ui.draggable.js"></script>
- <script type="text/javascript" src="js/ui.droppable.js"></script>
- <script type="text/javascript" src="js/karma.js"></script>
- <script type="text/javascript" src="js/lesson.js"></script>
-</head>
-<body>
- <div id="header">
- <div id="topbtn_left"><a href="http://olenepal.org"><div id="linkOle"></div></a></div>
- <div id="topbtn_left"><a href="#"><div id="linkBack"></div></a></div>
- <div id="lesson_title">
- <img src="assets/image/title_block_lt.png" width="33" height="89" align="absmiddle" />
- Vocabulary: Wild Birds <span id="currentTitle"></span>
- <img src="assets/image/title_block_rt.png" width="33" height="89" align="absmiddle" />
- </div>
- <div id="topbtn_right"><a href="#"><div id="linkHelp"></div></a></div>
- <div id="topbtn_right"><a href="http://olenepal.org"><div id="linkOle"></div></a></div>
- <div id="topbtn_right"><a href="#"><div id="linkNext"></div></a></div>
- </div>
-
- <div id="content">
- <div id="section"></div>
- <div id="confirmSection"></div>
- <div id="gameOver"></div>
- <div id="help"></div>
- </div>
- <form name="delayForm">
- <input type="hidden" name="delayval" size="5">
- </form>
-
- <div id="footer">
- <div id="botbtn_right"><a href="#"><div id="linkStart"></div></a></div>
- <div id="botbtn_right"><a href="#"><div id="linkPlayAgain"></div></a></div>
- <div id="botbtn_right"><a href="#"><div id="linkCheck"></div></a></div>
- </div>
-</body>
-</html>
diff --git a/examples/lessons/6_English_VocabularyBirds/js/lesson.js b/examples/lessons/6_English_VocabularyBirds/js/lesson.js deleted file mode 100755 index 462b7a4..0000000 --- a/examples/lessons/6_English_VocabularyBirds/js/lesson.js +++ /dev/null @@ -1,359 +0,0 @@ -$(document).ready(function(){ - var k = Karma({ - audio: [{'name':'correct','file':'correct.ogg'}, - {'name':'incorrect','file':'incorrect.ogg'}, - {'name':'bulbul','file':'bulbul.wav'}, - {'name':'crane','file':'crane.wav'}, - {'name':'egret','file':'egret.wav'}, - {'name':'kingfisher','file':'kingfisher.wav'}, - {'name':'penguin','file':'penguin.wav'}, - {'name':'swan','file':'swan.wav'}, - {'name':'swift','file':'swift.wav'}, - {'name':'vulture','file':'vulture.wav'}, - {'name':'woodpecker','file':'woodpecker.wav'}, - {'name':'ostrich','file':'ostrich.wav'} - ]}); - - k.ready(function(){ - var i,j,flag; - var TOTAL_QUES = 10; - var TOTAL_LEVEL = 3; - var currentDragObject; - var randImages = []; - var randPositions = []; - var randOtherImages = []; - var currentAnimal; - var totalCounter; - var currentQuestion; - var currentDragObject; - var arrangedAns = []; - var correctAnimalParts = []; - var randTexts = []; //for the confirmation sections - var checked; - var sectionNum; //store the current tab num - var flag_checked; - var currentQues; //store the current Animal name - var currentAnimal; //store the current Animal Image name - var correctQuest; //store 1 if the question and image is same - var num; - var flag_confirm; //whether confirmation dialog box is on the top or not - var currentDropObject; - var droppedWord; - var zIndex; //show current dragged Object at top - - var birds = new Array('bulbul','crane','egret','kingfisher','ostrich', - 'penguin','swan','swift','vulture','woodpecker' - ); - - var genRandTexts=function (){ - randTexts[0] = k.rand(0,TOTAL_QUES-1); - for(i=1; i<TOTAL_QUES; i++){ - do{ - flag = 0; - randTexts[i] = k.rand(0,TOTAL_QUES-1); - for(j=0; j<i; j++){ - if(randTexts[i] === randTexts[j]){ - flag++; - } - } - }while(flag != 0 ); //end of do while loop - } - }; - - var genRandImages=function (){ - randImages[0] = k.rand(0,TOTAL_QUES-1); - for(i=1; i<TOTAL_QUES; i++){ - do{ - flag = 0; - randImages[i] = k.rand(0,TOTAL_QUES-1); - for(j=0; j<i; j++){ - if(randImages[i] === randImages[j]){ - flag++; - } - } - }while(flag != 0 ); //end of do while loop - } - }; - - var genRandOtherImages = function(){ - randOtherImages[0] = currentAnimal; - for(i=1; i<7; i++){ - do{ - flag = 0; - randOtherImages[i] = k.rand(0,6); - for(j=0; j<i; j++){ - if(randOtherImages[i] === randOtherImages[j]){ - flag++; - } - } - }while(flag != 0 ); //end of do while loop - } - - }; - - - var genRandPositions = function(){ // 15 random positions 8 correct - randPositions[0] = k.rand(0,14); - for(i=1; i<15; i++){ - do{ - flag = 0; - randPositions[i] = k.rand(0,14); - for(j=0; j<i; j++){ - if(randPositions[i] === randPositions[j]){ - flag++; - } - } - }while(flag != 0 ); //end of do while loop - } - - }; - - var assignDragTexts = function(txtId){ - randText = randTexts[i]; - $('#dragTxtSection').append('<div id="text'+txtId+'" class="dragObjects">'+birds[randText]+'</div>'); - var dragObjCss = { - 'float': 'left','cursor': 'move','width':'100px','height':'25px', - 'margin':'0.1em','color':'#5B3CD5', - 'font':'20px/30px Helvetica, Geneva, Arial, Verdana, sans-serif' - }; - $('#text'+txtId).css(dragObjCss); - }; - - var confirmAnswer = function(){ - genRandTexts(); - $('#confirmSection').show().html(''); - $('#confirmSection').append('<div id="confirmBox"></div>'); - $('#confirmBox').append('<div id="checkAnswer"></div>'); - $('#confirmBox').append('<div id="word0" class="dropObjects"></div>'); - var dropObjCss = { - 'margin':'7em auto','margin-bottom':'3em','width':'100px','height':'30px', - 'border':'1px solid #FF0000' - }; - $('#word0').css(dropObjCss); - $('#confirmBox').append('<div id="confimBtn"></div>'); - $('#confirmSection').append('<div id="dragTxtSection"></div>'); - - for(i = 0; i<10; i++){ - assignDragTexts(i); - } - drag_drop(); - - } - - var check_puzzle_completion = function(){ - var correct = 0; - for(i = 0; i< 9 ;i++){ - if(arrangedAns[i] === correctAnimalParts[i]){ - correct++; - } - } - if(correct === 9){ - //alert("great job its time to show some confirmations"); - $('#section').addClass('backOpaque'); - flag_confirm = 0; - confirmAnswer(); - - } - }; - - var next_images = function(){ - currentAnimal = randImages[totalCounter]; - $('#imgAnimalsDisplay').html('<img src="assets/image/'+birds[currentAnimal]+'.png" />'); - $('#animalText').html('').append('<div class="imgVol"></div>'); - $('#animalText').append(birds[currentAnimal]); - $('.imgVol').click(function(){ - k.audio[birds[currentAnimal]].play(); - }); - }; - - var assignDragPuzzle = function(puzzleId,imgName){ - $('#dragImgSection').append('<div id="drag'+num+'" class="dragObjects"></div>'); - var dragObjCss = { - 'float': 'left','cursor': 'move','width':'100px','height':'100px', - 'border':'1px solid #A8F42D', - 'background':'url(assets/image/'+birds[imgName]+puzzleId+'.png)' - }; - $('#drag'+num).css(dragObjCss); - if(imgName === currentAnimal){ - correctAnimalParts[puzzleId] = $('#drag'+num).attr('id'); - } - num++; - }; - - var assignPuzzle = function(puzzleId){ - $('#imgPuzzleArea').append('<div id="drop'+puzzleId+'" class="dropObjects"></div>'); - var dropObjCss = { - 'float': 'left','width':'100px','height':'100px', - 'border':'1px solid #A8F42D','background': '#C8FFC2' - }; - $('#drop'+puzzleId).css(dropObjCss); - }; - - var display_game_over = function() { - $('#confirmSection').hide(); - $('#gameOver').show().html('Game Over !!! Congratulations'); - $('#gameOver').append('<div id="gameOverInfo">You have successfully completed all the vocabulary section</div>'); - }; - - var delay_gameOver = function(){ - document.delayForm.delayval.value = 1; - display_game_over(); - }; - - var next_puzzle = function() { - $('#confirmSection').hide(); - zIndex = 0; - $('#section').removeClass('backOpaque'); - $('#section').html('').append('<div id="infoText"></div>'); - $('#infoText').append('Listen to the name of the animal.'+ - 'And drag and drop the pisces to complete the picture of the animal you just heard the name of.'); - currentAnimal = randImages[totalCounter]; - $('#infoText').append('<div class="imgVol"></div>'); - $('.imgVol').click(function(){ - k.audio[birds[currentAnimal]].play(); - }); - $('#section').append('<div id = "imgPuzzleArea"></div>'); - for(i = 0; i< 9; i++){ - assignPuzzle(i); - - } - $('#section').append('<div id = "dragImgSection"></div>'); - genRandPositions(); - genRandOtherImages(); - var number = 1; - num = 0; - for(i = 0; i< 15; i++){ - var randPos = randPositions[i]; //any random pos between 1-15 - if(randPos<9){ - assignDragPuzzle(randPos,currentAnimal); - } - else{ - randPos = 15-randPos; - assignDragPuzzle(randPos,randOtherImages[number]); - number++; - } - } - flag_confirm = 1; - drag_drop(); - }; - - function game_start(){ - $('#section').removeClass('backOpaque'); - $('#linkNext').hide(); - $('#linkBack').hide(); - sectionNum = 1; - genRandImages(); - totalCounter = 0; - next_puzzle(); - - } - - function game(){ - $('#help').hide(); - sectionNum = 0; - totalCounter = 0; - flag_confirm = 1; - $('#confirmSection').hide(); - $('#section').removeClass('backOpaque'); - $('#linkNext').show(); - $('#linkBack').hide(); - $('#gameOver').hide(); - $('#section').html('').append('<div id="topText">Click on the speaker and listen to the name of the wild birds</div>'); - $('#section').append('<div id="imgAnimalsDisplay"></div>'); - $('#section').append('<div id="animalText"></div>'); - genRandImages(); - next_images(); - } - - game(); - - function drag_drop(){ - $('.dragObjects').draggable({ containment: '#content'}); - $('.dragObjects').bind('dragstart', function(event, ui) { - currentDragObject = event.target.id; - $('#'+currentDragObject).css({'z-index':zIndex}); - currentDragAnimal = parseInt(currentDragObject.substring(4)); - zIndex++; - }); - - $(".dropObjects").droppable({ tolerence: 'intersect' ,hoverClass: 'drophover'}); - $('.dropObjects').bind('drop', function(event, ui) { - currentDropObject = event.target.id; - droppedWord = parseInt(currentDropObject.substring(4)); - - if(flag_confirm != 0){ - arrangedAns[droppedWord] = $('#'+currentDragObject).attr('id'); - check_puzzle_completion(); - } - - }); - $('#confimBtn').click(function(){ - var dragAnimalText = $('#'+currentDragObject).text(); - if(dragAnimalText === birds[currentAnimal]){ - k.audio.correct.play(); - $('#checkAnswer').html('<img src="assets/image/correct.png" />'); - totalCounter++; - if(totalCounter === TOTAL_QUES){ - t=setTimeout(function(){delay_gameOver();},1000); - } - else{ - $('#linkNext').show(); - } - } - else{ - k.audio.incorrect.play(); - $('#checkAnswer').html('<img src="assets/image/incorrect.png" />'); - } - - }); - - } - $('#linkHelp').click(function(){ - $('#help').slideDown(2000); - }) - .mouseout(function(){ - $('#help').slideUp(2000); - }); - $('#linkNext').click(function(){ - if(sectionNum === 0){ //first level for knowing the birds - if(totalCounter === TOTAL_QUES-2){ - $('#linkBack').show(); - $('#linkNext').hide(); - } - else{ - $('#linkNext').show(); - $('#linkBack').show(); - } - totalCounter++; - next_images(); - } - else{ - $('#linkNext').hide(); - next_puzzle(); - } - }); - $('#linkBack').click(function(){ - if(totalCounter === 1){ - $('#linkBack').hide(); - $('#linkNext').show(); - } - else{ - $('#linkNext').show(); - $('#linkBack').show(); - } - totalCounter--; - next_images(); - }); - $('#linkCheck').click(function(){ - check_answers(); - }); - $('#linkStart').click(function(){ - game_start(); - }); - - $('#linkPlayAgain').click(function(){ - game(); - }); - - }); //end of k.ready -}); //end of document.ready
\ No newline at end of file diff --git a/examples/lessons/6_English_VocabularyBirds/js/ui.draggable.js b/examples/lessons/6_English_VocabularyBirds/js/ui.draggable.js deleted file mode 100755 index 0402f0e..0000000 --- a/examples/lessons/6_English_VocabularyBirds/js/ui.draggable.js +++ /dev/null @@ -1,766 +0,0 @@ -/* - * jQuery UI Draggable 1.7.2 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Draggables - * - * Depends: - * ui.core.js - */ -(function($) { - -$.widget("ui.draggable", $.extend({}, $.ui.mouse, { - - _init: function() { - - if (this.options.helper == 'original' && !(/^(?:r|a|f)/).test(this.element.css("position"))) - this.element[0].style.position = 'relative'; - - (this.options.addClasses && this.element.addClass("ui-draggable")); - (this.options.disabled && this.element.addClass("ui-draggable-disabled")); - - this._mouseInit(); - - }, - - destroy: function() { - if(!this.element.data('draggable')) return; - this.element - .removeData("draggable") - .unbind(".draggable") - .removeClass("ui-draggable" - + " ui-draggable-dragging" - + " ui-draggable-disabled"); - this._mouseDestroy(); - }, - - _mouseCapture: function(event) { - - var o = this.options; - - if (this.helper || o.disabled || $(event.target).is('.ui-resizable-handle')) - return false; - - //Quit if we're not on a valid handle - this.handle = this._getHandle(event); - if (!this.handle) - return false; - - return true; - - }, - - _mouseStart: function(event) { - - var o = this.options; - - //Create and append the visible helper - this.helper = this._createHelper(event); - - //Cache the helper size - this._cacheHelperProportions(); - - //If ddmanager is used for droppables, set the global draggable - if($.ui.ddmanager) - $.ui.ddmanager.current = this; - - /* - * - Position generation - - * This block generates everything position related - it's the core of draggables. - */ - - //Cache the margins of the original element - this._cacheMargins(); - - //Store the helper's css position - this.cssPosition = this.helper.css("position"); - this.scrollParent = this.helper.scrollParent(); - - //The element's absolute position on the page minus margins - this.offset = this.element.offset(); - this.offset = { - top: this.offset.top - this.margins.top, - left: this.offset.left - this.margins.left - }; - - $.extend(this.offset, { - click: { //Where the click happened, relative to the element - left: event.pageX - this.offset.left, - top: event.pageY - this.offset.top - }, - parent: this._getParentOffset(), - relative: this._getRelativeOffset() //This is a relative to absolute position minus the actual position calculation - only used for relative positioned helper - }); - - //Generate the original position - this.originalPosition = this._generatePosition(event); - this.originalPageX = event.pageX; - this.originalPageY = event.pageY; - - //Adjust the mouse offset relative to the helper if 'cursorAt' is supplied - if(o.cursorAt) - this._adjustOffsetFromHelper(o.cursorAt); - - //Set a containment if given in the options - if(o.containment) - this._setContainment(); - - //Call plugins and callbacks - this._trigger("start", event); - - //Recache the helper size - this._cacheHelperProportions(); - - //Prepare the droppable offsets - if ($.ui.ddmanager && !o.dropBehaviour) - $.ui.ddmanager.prepareOffsets(this, event); - - this.helper.addClass("ui-draggable-dragging"); - this._mouseDrag(event, true); //Execute the drag once - this causes the helper not to be visible before getting its correct position - return true; - }, - - _mouseDrag: function(event, noPropagation) { - - //Compute the helpers position - this.position = this._generatePosition(event); - this.positionAbs = this._convertPositionTo("absolute"); - - //Call plugins and callbacks and use the resulting position if something is returned - if (!noPropagation) { - var ui = this._uiHash(); - this._trigger('drag', event, ui); - this.position = ui.position; - } - - if(!this.options.axis || this.options.axis != "y") this.helper[0].style.left = this.position.left+'px'; - if(!this.options.axis || this.options.axis != "x") this.helper[0].style.top = this.position.top+'px'; - if($.ui.ddmanager) $.ui.ddmanager.drag(this, event); - - return false; - }, - - _mouseStop: function(event) { - - //If we are using droppables, inform the manager about the drop - var dropped = false; - if ($.ui.ddmanager && !this.options.dropBehaviour) - dropped = $.ui.ddmanager.drop(this, event); - - //if a drop comes from outside (a sortable) - if(this.dropped) { - dropped = this.dropped; - this.dropped = false; - } - - if((this.options.revert == "invalid" && !dropped) || (this.options.revert == "valid" && dropped) || this.options.revert === true || ($.isFunction(this.options.revert) && this.options.revert.call(this.element, dropped))) { - var self = this; - $(this.helper).animate(this.originalPosition, parseInt(this.options.revertDuration, 10), function() { - self._trigger("stop", event); - self._clear(); - }); - } else { - this._trigger("stop", event); - this._clear(); - } - - return false; - }, - - _getHandle: function(event) { - - var handle = !this.options.handle || !$(this.options.handle, this.element).length ? true : false; - $(this.options.handle, this.element) - .find("*") - .andSelf() - .each(function() { - if(this == event.target) handle = true; - }); - - return handle; - - }, - - _createHelper: function(event) { - - var o = this.options; - var helper = $.isFunction(o.helper) ? $(o.helper.apply(this.element[0], [event])) : (o.helper == 'clone' ? this.element.clone() : this.element); - - if(!helper.parents('body').length) - helper.appendTo((o.appendTo == 'parent' ? this.element[0].parentNode : o.appendTo)); - - if(helper[0] != this.element[0] && !(/(fixed|absolute)/).test(helper.css("position"))) - helper.css("position", "absolute"); - - return helper; - - }, - - _adjustOffsetFromHelper: function(obj) { - if(obj.left != undefined) this.offset.click.left = obj.left + this.margins.left; - if(obj.right != undefined) this.offset.click.left = this.helperProportions.width - obj.right + this.margins.left; - if(obj.top != undefined) this.offset.click.top = obj.top + this.margins.top; - if(obj.bottom != undefined) this.offset.click.top = this.helperProportions.height - obj.bottom + this.margins.top; - }, - - _getParentOffset: function() { - - //Get the offsetParent and cache its position - this.offsetParent = this.helper.offsetParent(); - var po = this.offsetParent.offset(); - - // This is a special case where we need to modify a offset calculated on start, since the following happened: - // 1. The position of the helper is absolute, so it's position is calculated based on the next positioned parent - // 2. The actual offset parent is a child of the scroll parent, and the scroll parent isn't the document, which means that - // the scroll is included in the initial calculation of the offset of the parent, and never recalculated upon drag - if(this.cssPosition == 'absolute' && this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) { - po.left += this.scrollParent.scrollLeft(); - po.top += this.scrollParent.scrollTop(); - } - - if((this.offsetParent[0] == document.body) //This needs to be actually done for all browsers, since pageX/pageY includes this information - || (this.offsetParent[0].tagName && this.offsetParent[0].tagName.toLowerCase() == 'html' && $.browser.msie)) //Ugly IE fix - po = { top: 0, left: 0 }; - - return { - top: po.top + (parseInt(this.offsetParent.css("borderTopWidth"),10) || 0), - left: po.left + (parseInt(this.offsetParent.css("borderLeftWidth"),10) || 0) - }; - - }, - - _getRelativeOffset: function() { - - if(this.cssPosition == "relative") { - var p = this.element.position(); - return { - top: p.top - (parseInt(this.helper.css("top"),10) || 0) + this.scrollParent.scrollTop(), - left: p.left - (parseInt(this.helper.css("left"),10) || 0) + this.scrollParent.scrollLeft() - }; - } else { - return { top: 0, left: 0 }; - } - - }, - - _cacheMargins: function() { - this.margins = { - left: (parseInt(this.element.css("marginLeft"),10) || 0), - top: (parseInt(this.element.css("marginTop"),10) || 0) - }; - }, - - _cacheHelperProportions: function() { - this.helperProportions = { - width: this.helper.outerWidth(), - height: this.helper.outerHeight() - }; - }, - - _setContainment: function() { - - var o = this.options; - if(o.containment == 'parent') o.containment = this.helper[0].parentNode; - if(o.containment == 'document' || o.containment == 'window') this.containment = [ - 0 - this.offset.relative.left - this.offset.parent.left, - 0 - this.offset.relative.top - this.offset.parent.top, - $(o.containment == 'document' ? document : window).width() - this.helperProportions.width - this.margins.left, - ($(o.containment == 'document' ? document : window).height() || document.body.parentNode.scrollHeight) - this.helperProportions.height - this.margins.top - ]; - - if(!(/^(document|window|parent)$/).test(o.containment) && o.containment.constructor != Array) { - var ce = $(o.containment)[0]; if(!ce) return; - var co = $(o.containment).offset(); - var over = ($(ce).css("overflow") != 'hidden'); - - this.containment = [ - co.left + (parseInt($(ce).css("borderLeftWidth"),10) || 0) + (parseInt($(ce).css("paddingLeft"),10) || 0) - this.margins.left, - co.top + (parseInt($(ce).css("borderTopWidth"),10) || 0) + (parseInt($(ce).css("paddingTop"),10) || 0) - this.margins.top, - co.left+(over ? Math.max(ce.scrollWidth,ce.offsetWidth) : ce.offsetWidth) - (parseInt($(ce).css("borderLeftWidth"),10) || 0) - (parseInt($(ce).css("paddingRight"),10) || 0) - this.helperProportions.width - this.margins.left, - co.top+(over ? Math.max(ce.scrollHeight,ce.offsetHeight) : ce.offsetHeight) - (parseInt($(ce).css("borderTopWidth"),10) || 0) - (parseInt($(ce).css("paddingBottom"),10) || 0) - this.helperProportions.height - this.margins.top - ]; - } else if(o.containment.constructor == Array) { - this.containment = o.containment; - } - - }, - - _convertPositionTo: function(d, pos) { - - if(!pos) pos = this.position; - var mod = d == "absolute" ? 1 : -1; - var o = this.options, scroll = this.cssPosition == 'absolute' && !(this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent, scrollIsRootNode = (/(html|body)/i).test(scroll[0].tagName); - - return { - top: ( - pos.top // The absolute mouse position - + this.offset.relative.top * mod // Only for relative positioned nodes: Relative offset from element to offset parent - + this.offset.parent.top * mod // The offsetParent's offset without borders (offset + border) - - ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollTop() : ( scrollIsRootNode ? 0 : scroll.scrollTop() ) ) * mod) - ), - left: ( - pos.left // The absolute mouse position - + this.offset.relative.left * mod // Only for relative positioned nodes: Relative offset from element to offset parent - + this.offset.parent.left * mod // The offsetParent's offset without borders (offset + border) - - ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollLeft() : scrollIsRootNode ? 0 : scroll.scrollLeft() ) * mod) - ) - }; - - }, - - _generatePosition: function(event) { - - var o = this.options, scroll = this.cssPosition == 'absolute' && !(this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent, scrollIsRootNode = (/(html|body)/i).test(scroll[0].tagName); - - // This is another very weird special case that only happens for relative elements: - // 1. If the css position is relative - // 2. and the scroll parent is the document or similar to the offset parent - // we have to refresh the relative offset during the scroll so there are no jumps - if(this.cssPosition == 'relative' && !(this.scrollParent[0] != document && this.scrollParent[0] != this.offsetParent[0])) { - this.offset.relative = this._getRelativeOffset(); - } - - var pageX = event.pageX; - var pageY = event.pageY; - - /* - * - Position constraining - - * Constrain the position to a mix of grid, containment. - */ - - if(this.originalPosition) { //If we are not dragging yet, we won't check for options - - if(this.containment) { - if(event.pageX - this.offset.click.left < this.containment[0]) pageX = this.containment[0] + this.offset.click.left; - if(event.pageY - this.offset.click.top < this.containment[1]) pageY = this.containment[1] + this.offset.click.top; - if(event.pageX - this.offset.click.left > this.containment[2]) pageX = this.containment[2] + this.offset.click.left; - if(event.pageY - this.offset.click.top > this.containment[3]) pageY = this.containment[3] + this.offset.click.top; - } - - if(o.grid) { - var top = this.originalPageY + Math.round((pageY - this.originalPageY) / o.grid[1]) * o.grid[1]; - pageY = this.containment ? (!(top - this.offset.click.top < this.containment[1] || top - this.offset.click.top > this.containment[3]) ? top : (!(top - this.offset.click.top < this.containment[1]) ? top - o.grid[1] : top + o.grid[1])) : top; - - var left = this.originalPageX + Math.round((pageX - this.originalPageX) / o.grid[0]) * o.grid[0]; - pageX = this.containment ? (!(left - this.offset.click.left < this.containment[0] || left - this.offset.click.left > this.containment[2]) ? left : (!(left - this.offset.click.left < this.containment[0]) ? left - o.grid[0] : left + o.grid[0])) : left; - } - - } - - return { - top: ( - pageY // The absolute mouse position - - this.offset.click.top // Click offset (relative to the element) - - this.offset.relative.top // Only for relative positioned nodes: Relative offset from element to offset parent - - this.offset.parent.top // The offsetParent's offset without borders (offset + border) - + ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollTop() : ( scrollIsRootNode ? 0 : scroll.scrollTop() ) )) - ), - left: ( - pageX // The absolute mouse position - - this.offset.click.left // Click offset (relative to the element) - - this.offset.relative.left // Only for relative positioned nodes: Relative offset from element to offset parent - - this.offset.parent.left // The offsetParent's offset without borders (offset + border) - + ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollLeft() : scrollIsRootNode ? 0 : scroll.scrollLeft() )) - ) - }; - - }, - - _clear: function() { - this.helper.removeClass("ui-draggable-dragging"); - if(this.helper[0] != this.element[0] && !this.cancelHelperRemoval) this.helper.remove(); - //if($.ui.ddmanager) $.ui.ddmanager.current = null; - this.helper = null; - this.cancelHelperRemoval = false; - }, - - // From now on bulk stuff - mainly helpers - - _trigger: function(type, event, ui) { - ui = ui || this._uiHash(); - $.ui.plugin.call(this, type, [event, ui]); - if(type == "drag") this.positionAbs = this._convertPositionTo("absolute"); //The absolute position has to be recalculated after plugins - return $.widget.prototype._trigger.call(this, type, event, ui); - }, - - plugins: {}, - - _uiHash: function(event) { - return { - helper: this.helper, - position: this.position, - absolutePosition: this.positionAbs, //deprecated - offset: this.positionAbs - }; - } - -})); - -$.extend($.ui.draggable, { - version: "1.7.2", - eventPrefix: "drag", - defaults: { - addClasses: true, - appendTo: "parent", - axis: false, - cancel: ":input,option", - connectToSortable: false, - containment: false, - cursor: "auto", - cursorAt: false, - delay: 0, - distance: 1, - grid: false, - handle: false, - helper: "original", - iframeFix: false, - opacity: false, - refreshPositions: false, - revert: false, - revertDuration: 500, - scope: "default", - scroll: true, - scrollSensitivity: 20, - scrollSpeed: 20, - snap: false, - snapMode: "both", - snapTolerance: 20, - stack: false, - zIndex: false - } -}); - -$.ui.plugin.add("draggable", "connectToSortable", { - start: function(event, ui) { - - var inst = $(this).data("draggable"), o = inst.options, - uiSortable = $.extend({}, ui, { item: inst.element }); - inst.sortables = []; - $(o.connectToSortable).each(function() { - var sortable = $.data(this, 'sortable'); - if (sortable && !sortable.options.disabled) { - inst.sortables.push({ - instance: sortable, - shouldRevert: sortable.options.revert - }); - sortable._refreshItems(); //Do a one-time refresh at start to refresh the containerCache - sortable._trigger("activate", event, uiSortable); - } - }); - - }, - stop: function(event, ui) { - - //If we are still over the sortable, we fake the stop event of the sortable, but also remove helper - var inst = $(this).data("draggable"), - uiSortable = $.extend({}, ui, { item: inst.element }); - - $.each(inst.sortables, function() { - if(this.instance.isOver) { - - this.instance.isOver = 0; - - inst.cancelHelperRemoval = true; //Don't remove the helper in the draggable instance - this.instance.cancelHelperRemoval = false; //Remove it in the sortable instance (so sortable plugins like revert still work) - - //The sortable revert is supported, and we have to set a temporary dropped variable on the draggable to support revert: 'valid/invalid' - if(this.shouldRevert) this.instance.options.revert = true; - - //Trigger the stop of the sortable - this.instance._mouseStop(event); - - this.instance.options.helper = this.instance.options._helper; - - //If the helper has been the original item, restore properties in the sortable - if(inst.options.helper == 'original') - this.instance.currentItem.css({ top: 'auto', left: 'auto' }); - - } else { - this.instance.cancelHelperRemoval = false; //Remove the helper in the sortable instance - this.instance._trigger("deactivate", event, uiSortable); - } - - }); - - }, - drag: function(event, ui) { - - var inst = $(this).data("draggable"), self = this; - - var checkPos = function(o) { - var dyClick = this.offset.click.top, dxClick = this.offset.click.left; - var helperTop = this.positionAbs.top, helperLeft = this.positionAbs.left; - var itemHeight = o.height, itemWidth = o.width; - var itemTop = o.top, itemLeft = o.left; - - return $.ui.isOver(helperTop + dyClick, helperLeft + dxClick, itemTop, itemLeft, itemHeight, itemWidth); - }; - - $.each(inst.sortables, function(i) { - - //Copy over some variables to allow calling the sortable's native _intersectsWith - this.instance.positionAbs = inst.positionAbs; - this.instance.helperProportions = inst.helperProportions; - this.instance.offset.click = inst.offset.click; - - if(this.instance._intersectsWith(this.instance.containerCache)) { - - //If it intersects, we use a little isOver variable and set it once, so our move-in stuff gets fired only once - if(!this.instance.isOver) { - - this.instance.isOver = 1; - //Now we fake the start of dragging for the sortable instance, - //by cloning the list group item, appending it to the sortable and using it as inst.currentItem - //We can then fire the start event of the sortable with our passed browser event, and our own helper (so it doesn't create a new one) - this.instance.currentItem = $(self).clone().appendTo(this.instance.element).data("sortable-item", true); - this.instance.options._helper = this.instance.options.helper; //Store helper option to later restore it - this.instance.options.helper = function() { return ui.helper[0]; }; - - event.target = this.instance.currentItem[0]; - this.instance._mouseCapture(event, true); - this.instance._mouseStart(event, true, true); - - //Because the browser event is way off the new appended portlet, we modify a couple of variables to reflect the changes - this.instance.offset.click.top = inst.offset.click.top; - this.instance.offset.click.left = inst.offset.click.left; - this.instance.offset.parent.left -= inst.offset.parent.left - this.instance.offset.parent.left; - this.instance.offset.parent.top -= inst.offset.parent.top - this.instance.offset.parent.top; - - inst._trigger("toSortable", event); - inst.dropped = this.instance.element; //draggable revert needs that - //hack so receive/update callbacks work (mostly) - inst.currentItem = inst.element; - this.instance.fromOutside = inst; - - } - - //Provided we did all the previous steps, we can fire the drag event of the sortable on every draggable drag, when it intersects with the sortable - if(this.instance.currentItem) this.instance._mouseDrag(event); - - } else { - - //If it doesn't intersect with the sortable, and it intersected before, - //we fake the drag stop of the sortable, but make sure it doesn't remove the helper by using cancelHelperRemoval - if(this.instance.isOver) { - - this.instance.isOver = 0; - this.instance.cancelHelperRemoval = true; - - //Prevent reverting on this forced stop - this.instance.options.revert = false; - - // The out event needs to be triggered independently - this.instance._trigger('out', event, this.instance._uiHash(this.instance)); - - this.instance._mouseStop(event, true); - this.instance.options.helper = this.instance.options._helper; - - //Now we remove our currentItem, the list group clone again, and the placeholder, and animate the helper back to it's original size - this.instance.currentItem.remove(); - if(this.instance.placeholder) this.instance.placeholder.remove(); - - inst._trigger("fromSortable", event); - inst.dropped = false; //draggable revert needs that - } - - }; - - }); - - } -}); - -$.ui.plugin.add("draggable", "cursor", { - start: function(event, ui) { - var t = $('body'), o = $(this).data('draggable').options; - if (t.css("cursor")) o._cursor = t.css("cursor"); - t.css("cursor", o.cursor); - }, - stop: function(event, ui) { - var o = $(this).data('draggable').options; - if (o._cursor) $('body').css("cursor", o._cursor); - } -}); - -$.ui.plugin.add("draggable", "iframeFix", { - start: function(event, ui) { - var o = $(this).data('draggable').options; - $(o.iframeFix === true ? "iframe" : o.iframeFix).each(function() { - $('<div class="ui-draggable-iframeFix" style="background: #fff;"></div>') - .css({ - width: this.offsetWidth+"px", height: this.offsetHeight+"px", - position: "absolute", opacity: "0.001", zIndex: 1000 - }) - .css($(this).offset()) - .appendTo("body"); - }); - }, - stop: function(event, ui) { - $("div.ui-draggable-iframeFix").each(function() { this.parentNode.removeChild(this); }); //Remove frame helpers - } -}); - -$.ui.plugin.add("draggable", "opacity", { - start: function(event, ui) { - var t = $(ui.helper), o = $(this).data('draggable').options; - if(t.css("opacity")) o._opacity = t.css("opacity"); - t.css('opacity', o.opacity); - }, - stop: function(event, ui) { - var o = $(this).data('draggable').options; - if(o._opacity) $(ui.helper).css('opacity', o._opacity); - } -}); - -$.ui.plugin.add("draggable", "scroll", { - start: function(event, ui) { - var i = $(this).data("draggable"); - if(i.scrollParent[0] != document && i.scrollParent[0].tagName != 'HTML') i.overflowOffset = i.scrollParent.offset(); - }, - drag: function(event, ui) { - - var i = $(this).data("draggable"), o = i.options, scrolled = false; - - if(i.scrollParent[0] != document && i.scrollParent[0].tagName != 'HTML') { - - if(!o.axis || o.axis != 'x') { - if((i.overflowOffset.top + i.scrollParent[0].offsetHeight) - event.pageY < o.scrollSensitivity) - i.scrollParent[0].scrollTop = scrolled = i.scrollParent[0].scrollTop + o.scrollSpeed; - else if(event.pageY - i.overflowOffset.top < o.scrollSensitivity) - i.scrollParent[0].scrollTop = scrolled = i.scrollParent[0].scrollTop - o.scrollSpeed; - } - - if(!o.axis || o.axis != 'y') { - if((i.overflowOffset.left + i.scrollParent[0].offsetWidth) - event.pageX < o.scrollSensitivity) - i.scrollParent[0].scrollLeft = scrolled = i.scrollParent[0].scrollLeft + o.scrollSpeed; - else if(event.pageX - i.overflowOffset.left < o.scrollSensitivity) - i.scrollParent[0].scrollLeft = scrolled = i.scrollParent[0].scrollLeft - o.scrollSpeed; - } - - } else { - - if(!o.axis || o.axis != 'x') { - if(event.pageY - $(document).scrollTop() < o.scrollSensitivity) - scrolled = $(document).scrollTop($(document).scrollTop() - o.scrollSpeed); - else if($(window).height() - (event.pageY - $(document).scrollTop()) < o.scrollSensitivity) - scrolled = $(document).scrollTop($(document).scrollTop() + o.scrollSpeed); - } - - if(!o.axis || o.axis != 'y') { - if(event.pageX - $(document).scrollLeft() < o.scrollSensitivity) - scrolled = $(document).scrollLeft($(document).scrollLeft() - o.scrollSpeed); - else if($(window).width() - (event.pageX - $(document).scrollLeft()) < o.scrollSensitivity) - scrolled = $(document).scrollLeft($(document).scrollLeft() + o.scrollSpeed); - } - - } - - if(scrolled !== false && $.ui.ddmanager && !o.dropBehaviour) - $.ui.ddmanager.prepareOffsets(i, event); - - } -}); - -$.ui.plugin.add("draggable", "snap", { - start: function(event, ui) { - - var i = $(this).data("draggable"), o = i.options; - i.snapElements = []; - - $(o.snap.constructor != String ? ( o.snap.items || ':data(draggable)' ) : o.snap).each(function() { - var $t = $(this); var $o = $t.offset(); - if(this != i.element[0]) i.snapElements.push({ - item: this, - width: $t.outerWidth(), height: $t.outerHeight(), - top: $o.top, left: $o.left - }); - }); - - }, - drag: function(event, ui) { - - var inst = $(this).data("draggable"), o = inst.options; - var d = o.snapTolerance; - - var x1 = ui.offset.left, x2 = x1 + inst.helperProportions.width, - y1 = ui.offset.top, y2 = y1 + inst.helperProportions.height; - - for (var i = inst.snapElements.length - 1; i >= 0; i--){ - - var l = inst.snapElements[i].left, r = l + inst.snapElements[i].width, - t = inst.snapElements[i].top, b = t + inst.snapElements[i].height; - - //Yes, I know, this is insane ;) - if(!((l-d < x1 && x1 < r+d && t-d < y1 && y1 < b+d) || (l-d < x1 && x1 < r+d && t-d < y2 && y2 < b+d) || (l-d < x2 && x2 < r+d && t-d < y1 && y1 < b+d) || (l-d < x2 && x2 < r+d && t-d < y2 && y2 < b+d))) { - if(inst.snapElements[i].snapping) (inst.options.snap.release && inst.options.snap.release.call(inst.element, event, $.extend(inst._uiHash(), { snapItem: inst.snapElements[i].item }))); - inst.snapElements[i].snapping = false; - continue; - } - - if(o.snapMode != 'inner') { - var ts = Math.abs(t - y2) <= d; - var bs = Math.abs(b - y1) <= d; - var ls = Math.abs(l - x2) <= d; - var rs = Math.abs(r - x1) <= d; - if(ts) ui.position.top = inst._convertPositionTo("relative", { top: t - inst.helperProportions.height, left: 0 }).top - inst.margins.top; - if(bs) ui.position.top = inst._convertPositionTo("relative", { top: b, left: 0 }).top - inst.margins.top; - if(ls) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: l - inst.helperProportions.width }).left - inst.margins.left; - if(rs) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: r }).left - inst.margins.left; - } - - var first = (ts || bs || ls || rs); - - if(o.snapMode != 'outer') { - var ts = Math.abs(t - y1) <= d; - var bs = Math.abs(b - y2) <= d; - var ls = Math.abs(l - x1) <= d; - var rs = Math.abs(r - x2) <= d; - if(ts) ui.position.top = inst._convertPositionTo("relative", { top: t, left: 0 }).top - inst.margins.top; - if(bs) ui.position.top = inst._convertPositionTo("relative", { top: b - inst.helperProportions.height, left: 0 }).top - inst.margins.top; - if(ls) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: l }).left - inst.margins.left; - if(rs) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: r - inst.helperProportions.width }).left - inst.margins.left; - } - - if(!inst.snapElements[i].snapping && (ts || bs || ls || rs || first)) - (inst.options.snap.snap && inst.options.snap.snap.call(inst.element, event, $.extend(inst._uiHash(), { snapItem: inst.snapElements[i].item }))); - inst.snapElements[i].snapping = (ts || bs || ls || rs || first); - - }; - - } -}); - -$.ui.plugin.add("draggable", "stack", { - start: function(event, ui) { - - var o = $(this).data("draggable").options; - - var group = $.makeArray($(o.stack.group)).sort(function(a,b) { - return (parseInt($(a).css("zIndex"),10) || o.stack.min) - (parseInt($(b).css("zIndex"),10) || o.stack.min); - }); - - $(group).each(function(i) { - this.style.zIndex = o.stack.min + i; - }); - - this[0].style.zIndex = o.stack.min + group.length; - - } -}); - -$.ui.plugin.add("draggable", "zIndex", { - start: function(event, ui) { - var t = $(ui.helper), o = $(this).data("draggable").options; - if(t.css("zIndex")) o._zIndex = t.css("zIndex"); - t.css('zIndex', o.zIndex); - }, - stop: function(event, ui) { - var o = $(this).data("draggable").options; - if(o._zIndex) $(ui.helper).css('zIndex', o._zIndex); - } -}); - -})(jQuery); diff --git a/examples/lessons/6_English_VocabularyBirds/js/ui.droppable.js b/examples/lessons/6_English_VocabularyBirds/js/ui.droppable.js deleted file mode 100755 index 8e7be33..0000000 --- a/examples/lessons/6_English_VocabularyBirds/js/ui.droppable.js +++ /dev/null @@ -1,282 +0,0 @@ -/* - * jQuery UI Droppable 1.7.2 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Droppables - * - * Depends: - * ui.core.js - * ui.draggable.js - */ -(function($) { - -$.widget("ui.droppable", { - - _init: function() { - - var o = this.options, accept = o.accept; - this.isover = 0; this.isout = 1; - - this.options.accept = this.options.accept && $.isFunction(this.options.accept) ? this.options.accept : function(d) { - return d.is(accept); - }; - - //Store the droppable's proportions - this.proportions = { width: this.element[0].offsetWidth, height: this.element[0].offsetHeight }; - - // Add the reference and positions to the manager - $.ui.ddmanager.droppables[this.options.scope] = $.ui.ddmanager.droppables[this.options.scope] || []; - $.ui.ddmanager.droppables[this.options.scope].push(this); - - (this.options.addClasses && this.element.addClass("ui-droppable")); - - }, - - destroy: function() { - var drop = $.ui.ddmanager.droppables[this.options.scope]; - for ( var i = 0; i < drop.length; i++ ) - if ( drop[i] == this ) - drop.splice(i, 1); - - this.element - .removeClass("ui-droppable ui-droppable-disabled") - .removeData("droppable") - .unbind(".droppable"); - }, - - _setData: function(key, value) { - - if(key == 'accept') { - this.options.accept = value && $.isFunction(value) ? value : function(d) { - return d.is(value); - }; - } else { - $.widget.prototype._setData.apply(this, arguments); - } - - }, - - _activate: function(event) { - var draggable = $.ui.ddmanager.current; - if(this.options.activeClass) this.element.addClass(this.options.activeClass); - (draggable && this._trigger('activate', event, this.ui(draggable))); - }, - - _deactivate: function(event) { - var draggable = $.ui.ddmanager.current; - if(this.options.activeClass) this.element.removeClass(this.options.activeClass); - (draggable && this._trigger('deactivate', event, this.ui(draggable))); - }, - - _over: function(event) { - - var draggable = $.ui.ddmanager.current; - if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return; // Bail if draggable and droppable are same element - - if (this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - if(this.options.hoverClass) this.element.addClass(this.options.hoverClass); - this._trigger('over', event, this.ui(draggable)); - } - - }, - - _out: function(event) { - - var draggable = $.ui.ddmanager.current; - if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return; // Bail if draggable and droppable are same element - - if (this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - if(this.options.hoverClass) this.element.removeClass(this.options.hoverClass); - this._trigger('out', event, this.ui(draggable)); - } - - }, - - _drop: function(event,custom) { - - var draggable = custom || $.ui.ddmanager.current; - if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return false; // Bail if draggable and droppable are same element - - var childrenIntersection = false; - this.element.find(":data(droppable)").not(".ui-draggable-dragging").each(function() { - var inst = $.data(this, 'droppable'); - if(inst.options.greedy && $.ui.intersect(draggable, $.extend(inst, { offset: inst.element.offset() }), inst.options.tolerance)) { - childrenIntersection = true; return false; - } - }); - if(childrenIntersection) return false; - - if(this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - if(this.options.activeClass) this.element.removeClass(this.options.activeClass); - if(this.options.hoverClass) this.element.removeClass(this.options.hoverClass); - this._trigger('drop', event, this.ui(draggable)); - return this.element; - } - - return false; - - }, - - ui: function(c) { - return { - draggable: (c.currentItem || c.element), - helper: c.helper, - position: c.position, - absolutePosition: c.positionAbs, //deprecated - offset: c.positionAbs - }; - } - -}); - -$.extend($.ui.droppable, { - version: "1.7.2", - eventPrefix: 'drop', - defaults: { - accept: '*', - activeClass: false, - addClasses: true, - greedy: false, - hoverClass: false, - scope: 'default', - tolerance: 'intersect' - } -}); - -$.ui.intersect = function(draggable, droppable, toleranceMode) { - - if (!droppable.offset) return false; - - var x1 = (draggable.positionAbs || draggable.position.absolute).left, x2 = x1 + draggable.helperProportions.width, - y1 = (draggable.positionAbs || draggable.position.absolute).top, y2 = y1 + draggable.helperProportions.height; - var l = droppable.offset.left, r = l + droppable.proportions.width, - t = droppable.offset.top, b = t + droppable.proportions.height; - - switch (toleranceMode) { - case 'fit': - return (l < x1 && x2 < r - && t < y1 && y2 < b); - break; - case 'intersect': - return (l < x1 + (draggable.helperProportions.width / 2) // Right Half - && x2 - (draggable.helperProportions.width / 2) < r // Left Half - && t < y1 + (draggable.helperProportions.height / 2) // Bottom Half - && y2 - (draggable.helperProportions.height / 2) < b ); // Top Half - break; - case 'pointer': - var draggableLeft = ((draggable.positionAbs || draggable.position.absolute).left + (draggable.clickOffset || draggable.offset.click).left), - draggableTop = ((draggable.positionAbs || draggable.position.absolute).top + (draggable.clickOffset || draggable.offset.click).top), - isOver = $.ui.isOver(draggableTop, draggableLeft, t, l, droppable.proportions.height, droppable.proportions.width); - return isOver; - break; - case 'touch': - return ( - (y1 >= t && y1 <= b) || // Top edge touching - (y2 >= t && y2 <= b) || // Bottom edge touching - (y1 < t && y2 > b) // Surrounded vertically - ) && ( - (x1 >= l && x1 <= r) || // Left edge touching - (x2 >= l && x2 <= r) || // Right edge touching - (x1 < l && x2 > r) // Surrounded horizontally - ); - break; - default: - return false; - break; - } - -}; - -/* - This manager tracks offsets of draggables and droppables -*/ -$.ui.ddmanager = { - current: null, - droppables: { 'default': [] }, - prepareOffsets: function(t, event) { - - var m = $.ui.ddmanager.droppables[t.options.scope]; - var type = event ? event.type : null; // workaround for #2317 - var list = (t.currentItem || t.element).find(":data(droppable)").andSelf(); - - droppablesLoop: for (var i = 0; i < m.length; i++) { - - if(m[i].options.disabled || (t && !m[i].options.accept.call(m[i].element[0],(t.currentItem || t.element)))) continue; //No disabled and non-accepted - for (var j=0; j < list.length; j++) { if(list[j] == m[i].element[0]) { m[i].proportions.height = 0; continue droppablesLoop; } }; //Filter out elements in the current dragged item - m[i].visible = m[i].element.css("display") != "none"; if(!m[i].visible) continue; //If the element is not visible, continue - - m[i].offset = m[i].element.offset(); - m[i].proportions = { width: m[i].element[0].offsetWidth, height: m[i].element[0].offsetHeight }; - - if(type == "mousedown") m[i]._activate.call(m[i], event); //Activate the droppable if used directly from draggables - - } - - }, - drop: function(draggable, event) { - - var dropped = false; - $.each($.ui.ddmanager.droppables[draggable.options.scope], function() { - - if(!this.options) return; - if (!this.options.disabled && this.visible && $.ui.intersect(draggable, this, this.options.tolerance)) - dropped = this._drop.call(this, event); - - if (!this.options.disabled && this.visible && this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - this.isout = 1; this.isover = 0; - this._deactivate.call(this, event); - } - - }); - return dropped; - - }, - drag: function(draggable, event) { - - //If you have a highly dynamic page, you might try this option. It renders positions every time you move the mouse. - if(draggable.options.refreshPositions) $.ui.ddmanager.prepareOffsets(draggable, event); - - //Run through all droppables and check their positions based on specific tolerance options - - $.each($.ui.ddmanager.droppables[draggable.options.scope], function() { - - if(this.options.disabled || this.greedyChild || !this.visible) return; - var intersects = $.ui.intersect(draggable, this, this.options.tolerance); - - var c = !intersects && this.isover == 1 ? 'isout' : (intersects && this.isover == 0 ? 'isover' : null); - if(!c) return; - - var parentInstance; - if (this.options.greedy) { - var parent = this.element.parents(':data(droppable):eq(0)'); - if (parent.length) { - parentInstance = $.data(parent[0], 'droppable'); - parentInstance.greedyChild = (c == 'isover' ? 1 : 0); - } - } - - // we just moved into a greedy child - if (parentInstance && c == 'isover') { - parentInstance['isover'] = 0; - parentInstance['isout'] = 1; - parentInstance._out.call(parentInstance, event); - } - - this[c] = 1; this[c == 'isout' ? 'isover' : 'isout'] = 0; - this[c == "isover" ? "_over" : "_out"].call(this, event); - - // we just moved out of a greedy child - if (parentInstance && c == 'isout') { - parentInstance['isout'] = 0; - parentInstance['isover'] = 1; - parentInstance._over.call(parentInstance, event); - } - }); - - } -}; - -})(jQuery); diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/background.png b/examples/lessons/6_English_alphabeticalOrder/assets/image/background.png Binary files differdeleted file mode 100755 index 71b92e0..0000000 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/background.png +++ /dev/null diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/bg_footer.png b/examples/lessons/6_English_alphabeticalOrder/assets/image/bg_footer.png Binary files differdeleted file mode 100755 index 4bd44fa..0000000 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/bg_footer.png +++ /dev/null diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/bg_header.png b/examples/lessons/6_English_alphabeticalOrder/assets/image/bg_header.png Binary files differdeleted file mode 100755 index f421817..0000000 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/bg_header.png +++ /dev/null diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/bg_title_block.png b/examples/lessons/6_English_alphabeticalOrder/assets/image/bg_title_block.png Binary files differdeleted file mode 100755 index 7311891..0000000 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/bg_title_block.png +++ /dev/null diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/check.png b/examples/lessons/6_English_alphabeticalOrder/assets/image/check.png Binary files differdeleted file mode 100755 index 84fc229..0000000 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/check.png +++ /dev/null diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/correct.png b/examples/lessons/6_English_alphabeticalOrder/assets/image/correct.png Binary files differdeleted file mode 100755 index ca9b9db..0000000 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/correct.png +++ /dev/null diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/ele0.png b/examples/lessons/6_English_alphabeticalOrder/assets/image/ele0.png Binary files differdeleted file mode 100755 index 4eccd23..0000000 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/ele0.png +++ /dev/null diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/ele1.png b/examples/lessons/6_English_alphabeticalOrder/assets/image/ele1.png Binary files differdeleted file mode 100755 index 2b1cdfb..0000000 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/ele1.png +++ /dev/null diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/ele2.png b/examples/lessons/6_English_alphabeticalOrder/assets/image/ele2.png Binary files differdeleted file mode 100755 index 2e4e052..0000000 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/ele2.png +++ /dev/null diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/ele3.png b/examples/lessons/6_English_alphabeticalOrder/assets/image/ele3.png Binary files differdeleted file mode 100755 index 72150f7..0000000 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/ele3.png +++ /dev/null diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/ele4.png b/examples/lessons/6_English_alphabeticalOrder/assets/image/ele4.png Binary files differdeleted file mode 100755 index 6c01d20..0000000 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/ele4.png +++ /dev/null diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/ele5.png b/examples/lessons/6_English_alphabeticalOrder/assets/image/ele5.png Binary files differdeleted file mode 100755 index 2de0e24..0000000 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/ele5.png +++ /dev/null diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/house0.png b/examples/lessons/6_English_alphabeticalOrder/assets/image/house0.png Binary files differdeleted file mode 100755 index f177650..0000000 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/house0.png +++ /dev/null diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/house1.png b/examples/lessons/6_English_alphabeticalOrder/assets/image/house1.png Binary files differdeleted file mode 100755 index c98bfab..0000000 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/house1.png +++ /dev/null diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/house2.png b/examples/lessons/6_English_alphabeticalOrder/assets/image/house2.png Binary files differdeleted file mode 100755 index 1a2a5a2..0000000 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/house2.png +++ /dev/null diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/house3.png b/examples/lessons/6_English_alphabeticalOrder/assets/image/house3.png Binary files differdeleted file mode 100755 index 31daef2..0000000 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/house3.png +++ /dev/null diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/house4.png b/examples/lessons/6_English_alphabeticalOrder/assets/image/house4.png Binary files differdeleted file mode 100755 index 109bbe3..0000000 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/house4.png +++ /dev/null diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/house5.png b/examples/lessons/6_English_alphabeticalOrder/assets/image/house5.png Binary files differdeleted file mode 100755 index f0fa406..0000000 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/house5.png +++ /dev/null diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/incorrect.png b/examples/lessons/6_English_alphabeticalOrder/assets/image/incorrect.png Binary files differdeleted file mode 100755 index 49ee2a2..0000000 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/incorrect.png +++ /dev/null diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/ship0.png b/examples/lessons/6_English_alphabeticalOrder/assets/image/ship0.png Binary files differdeleted file mode 100755 index 7605feb..0000000 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/ship0.png +++ /dev/null diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/ship1.png b/examples/lessons/6_English_alphabeticalOrder/assets/image/ship1.png Binary files differdeleted file mode 100755 index f60f4fa..0000000 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/ship1.png +++ /dev/null diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/ship2.png b/examples/lessons/6_English_alphabeticalOrder/assets/image/ship2.png Binary files differdeleted file mode 100755 index fd7e7d7..0000000 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/ship2.png +++ /dev/null diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/ship3.png b/examples/lessons/6_English_alphabeticalOrder/assets/image/ship3.png Binary files differdeleted file mode 100755 index df518ba..0000000 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/ship3.png +++ /dev/null diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/ship4.png b/examples/lessons/6_English_alphabeticalOrder/assets/image/ship4.png Binary files differdeleted file mode 100755 index e8c3eb4..0000000 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/ship4.png +++ /dev/null diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/ship5.png b/examples/lessons/6_English_alphabeticalOrder/assets/image/ship5.png Binary files differdeleted file mode 100755 index bfe03e7..0000000 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/ship5.png +++ /dev/null diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/title_block_lt.png b/examples/lessons/6_English_alphabeticalOrder/assets/image/title_block_lt.png Binary files differdeleted file mode 100755 index b1c0e90..0000000 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/title_block_lt.png +++ /dev/null diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/title_block_rt.png b/examples/lessons/6_English_alphabeticalOrder/assets/image/title_block_rt.png Binary files differdeleted file mode 100755 index 275daaf..0000000 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/title_block_rt.png +++ /dev/null diff --git a/examples/lessons/6_English_alphabeticalOrder/css/lesson.css b/examples/lessons/6_English_alphabeticalOrder/css/lesson.css deleted file mode 100755 index 79d39cd..0000000 --- a/examples/lessons/6_English_alphabeticalOrder/css/lesson.css +++ /dev/null @@ -1,229 +0,0 @@ -@CHARSET "UTF-8";
-/****** Page Styles ****/
-
-body {
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 10pt;
- margin: 0px;
- background-color: #FFFFCC;
-}
-#header {
- background-image: url(../assets/image/bg_header.png);
- background-repeat: repeat-x;
- height: 89px;
- width: 100%;
- position: absolute;
- left: 0px;
- top: 0px;
-}
-#topbtn_left {
- float: left;
- height: 60px;
- width: 60px;
- padding-top: 13px;
- padding-left: 5px;
-}
-
-
- #linkBack{
- width: 60px; height: 59px;
- background:url(../assets/image/btn_back.png);
- }
- #linkBack:hover{
- background:url(../assets/image/btn_back_hover.png);
- }
-
-#lesson_title {
- float: left;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 16pt;
- font-weight: bold;
- color: #FFFFFF;
- margin-left: 10px;
- background-image: url(../assets/image/bg_title_block.png);
-}
-#topbtn_right {
- float: right;
- height: 60px;
- width: 60px;
- padding-top: 13px;
- padding-right: 5px;
-}
- #linkHelp{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_help.png);
- }
- #linkHelp:hover{
- background:url(../assets/image/btn_help_hover.png);
- }
- #linkOle{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_ole.png);
- }
- #linkOle:hover{
- background:url(../assets/image/btn_ole_hover.png);
- }
- #linkNext{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_next.png);
- }
- #linkNext:hover{
- background:url(../assets/image/btn_next_hover.png);
- }
-#footer {
- background-image: url(../assets/image/bg_footer.png);
- background-repeat: repeat-x;
- position: absolute;
- height: 69px;
- width: 100%;
- left: 0px;
- bottom: 0px;
-}
-#score_box {
- float: left;
- padding-left: 5px;
- padding-top: 10px;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- color: #FFFF00;
- font-size: 16pt;
- font-weight: bold;
-}
-#botbtn_right {
- float: right;
- height: 55px;
- /*width: 251px;*/
- padding-right: 5px;
- padding-top: 5px;
-}
- #linkCheck{
- width: 187px; height: 55px;
- background-image: url(../assets/image/check.png);
- }
-
- #linkStart{
- width: 251px; height: 55px;
- background:url(../assets/image/btn_start.png);
- }
- #linkStart:hover{
- background:url(../assets/image/btn_start_hover.png);
- }
- #linkStart:active{
- background:url(../assets/image/btn_start_mouse_down.png);
- }
- #linkPlayAgain{
- width: 251px; height: 55px;
- background:url(../assets/image/btn_play_again.png);
- }
- #linkPlayAgain:hover{
- background:url(../assets/image/btn_play_again_hover.png);
- }
- #linkPlayAgain:active{
- background:url(../assets/image/btn_play_again_mouse_down.png);
- }
-
-/**** End of the page style ****/
-
-/**** Game Styles ****/
-
-a{
- color:#FFFFCC;
-}
-#currentTitle{
- width: 150px;
- height: 80xp;
- font:25px/30px "Courier New", Courier, monospace;
- font-weight: bold;
- color: red;
-}
-#content{
- margin: 0px auto;
- margin-top: 85px;
- width: 100%;
- height: 400px;
-
-}
- #section{
- width: 900px;
- height: 400px;
- background: url(../assets/image/background.png);
- margin: 0px auto;
- }
-
- #alphaCloud1{
- margin: 2px auto;
- width: 400px;
- margin-left: 210px;
- height: 20px;
- padding: 5px;
- text-align:center;
- }
- #alphaCloud2{
- margin: 2px auto;
- width: 400px;
- height: 20px;
- margin-left: 300px;
- padding: 5px;
- text-align:center;
- }
- #topText{
- position:absolute;
- top:28%;
- left: 15%;
- width: 720px;
- height: 50px;
- color: #2B0085;
- font: 25px/30px "Courier New", Courier, monospace,Arial;
-
- }
- #alphaArrange{
- margin-top: 26px;
- margin-left: 0px;
- width: 245px;
- height: 250px;
- padding: 5px;
- text-align:center;
- }
- .drophover{
- background-color: #FF9900;
- }
- #checkAnswer{
- display:none;
- position:absolute;
- left: 30%;
- bottom: 15%;
- width: 100px;
- height: 92px;
- }
-
- #displayImgArea{
- position:absolute;
- top: 35%;
- right: 10%;
- width:450px;
- height: 270px;
-
-
- }
- .imgDisplay{
- float:left;
- margin: 0em;
- }
-#gameOver{
- display:none;
- position:absolute;
- width: 300px;
- text-align:center;
- top: 40%;
- left: 40%;
- font: 30px/35px Verdana, Geneva, Arial, Helvetica, sans-serif;
- font-weight:bold;
- color:red;
-}
-#gameOverInfo{
- margin-top: 35px;
- text-align:center;
- font: 20px/25px Helvetica, Geneva, Arial, Verdana, sans-serif;
- font-weight:bold;
- color:#06D946;
-
-}
\ No newline at end of file diff --git a/examples/lessons/6_English_alphabeticalOrder/index.html b/examples/lessons/6_English_alphabeticalOrder/index.html deleted file mode 100755 index 721bead..0000000 --- a/examples/lessons/6_English_alphabeticalOrder/index.html +++ /dev/null @@ -1,48 +0,0 @@ -<!DOCTYPE html>
-<head>
- <title>Class 6 English Alphabetical Order</title>
- <meta name="keywords" content="karma,javascript,html5,sugar,sugarlabs,gsoc,ole,nepal" />
- <link type="text/css" rel="stylesheet" href="css/lesson.css" />
- <link type="text/css" rel="stylesheet" href="css/ui.scoreboard.css" />
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <link type="image/ico" rel="icon" href="../../assets/default/image/favicon.ico" />
- <script type="text/javascript" src="js/jquery-1.3.2.min.js"></script>
- <script type="text/javascript" src="js/ui.core.js"></script>
- <script type="text/javascript" src="js/ui.draggable.js"></script>
- <script type="text/javascript" src="js/ui.droppable.js"></script>
- <script type="text/javascript" src="js/karma.js"></script>
- <script type="text/javascript" src="js/ui.scoreboard.js"></script>
- <script type="text/javascript" src="js/lesson.js"></script>
-</head>
-<body>
- <div id="header">
- <div id="topbtn_left"><a href="http://olenepal.org"><div id="linkOle"></div></a></div>
- <div id="lesson_title">
- <img src="assets/image/title_block_lt.png" width="33" height="89" align="absmiddle" />
- English Alphabetical Order <span id="currentTitle"></span>
- <img src="assets/image/title_block_rt.png" width="33" height="89" align="absmiddle" />
- </div>
- <div id="topbtn_right"><a href="#"><div id="linkHelp"></div></a></div>
- <div id="topbtn_right"><a href="http://olenepal.org"><div id="linkOle"></div></a></div>
- <div id="topbtn_right"><a href="#"><div id="linkNext"></div></a></div>
- </div>
-
- <div id="content">
- <div id="section"></div>
- <div id="checkAnswer"></div>
- <div id="displayImgArea"></div>
- <div id="gameOver"></div>
- <div id="help"></div>
- </div>
- <form name="delayForm">
- <input type="hidden" name="delayval" size="5">
- </form>
-
- <div id="footer">
- <div id="score_box"></div>
- <div id="botbtn_right"><a href="#"><div id="linkStart"></div></a></div>
- <div id="botbtn_right"><a href="#"><div id="linkPlayAgain"></div></a></div>
- <div id="botbtn_right"><a href="#"><div id="linkCheck"></div></a></div>
- </div>
-</body>
-</html>
diff --git a/examples/lessons/6_English_alphabeticalOrder/js/jquery-1.3.2.min.js b/examples/lessons/6_English_alphabeticalOrder/js/jquery-1.3.2.min.js deleted file mode 100755 index b1ae21d..0000000 --- a/examples/lessons/6_English_alphabeticalOrder/js/jquery-1.3.2.min.js +++ /dev/null @@ -1,19 +0,0 @@ -/* - * jQuery JavaScript Library v1.3.2 - * http://jquery.com/ - * - * Copyright (c) 2009 John Resig - * Dual licensed under the MIT and GPL licenses. - * http://docs.jquery.com/License - * - * Date: 2009-02-19 17:34:21 -0500 (Thu, 19 Feb 2009) - * Revision: 6246 - */ -(function(){var l=this,g,y=l.jQuery,p=l.$,o=l.jQuery=l.$=function(E,F){return new o.fn.init(E,F)},D=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,f=/^.[^:#\[\.,]*$/;o.fn=o.prototype={init:function(E,H){E=E||document;if(E.nodeType){this[0]=E;this.length=1;this.context=E;return this}if(typeof E==="string"){var G=D.exec(E);if(G&&(G[1]||!H)){if(G[1]){E=o.clean([G[1]],H)}else{var I=document.getElementById(G[3]);if(I&&I.id!=G[3]){return o().find(E)}var F=o(I||[]);F.context=document;F.selector=E;return F}}else{return o(H).find(E)}}else{if(o.isFunction(E)){return o(document).ready(E)}}if(E.selector&&E.context){this.selector=E.selector;this.context=E.context}return this.setArray(o.isArray(E)?E:o.makeArray(E))},selector:"",jquery:"1.3.2",size:function(){return this.length},get:function(E){return E===g?Array.prototype.slice.call(this):this[E]},pushStack:function(F,H,E){var G=o(F);G.prevObject=this;G.context=this.context;if(H==="find"){G.selector=this.selector+(this.selector?" ":"")+E}else{if(H){G.selector=this.selector+"."+H+"("+E+")"}}return G},setArray:function(E){this.length=0;Array.prototype.push.apply(this,E);return this},each:function(F,E){return o.each(this,F,E)},index:function(E){return o.inArray(E&&E.jquery?E[0]:E,this)},attr:function(F,H,G){var E=F;if(typeof F==="string"){if(H===g){return this[0]&&o[G||"attr"](this[0],F)}else{E={};E[F]=H}}return this.each(function(I){for(F in E){o.attr(G?this.style:this,F,o.prop(this,E[F],G,I,F))}})},css:function(E,F){if((E=="width"||E=="height")&&parseFloat(F)<0){F=g}return this.attr(E,F,"curCSS")},text:function(F){if(typeof F!=="object"&&F!=null){return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(F))}var E="";o.each(F||this,function(){o.each(this.childNodes,function(){if(this.nodeType!=8){E+=this.nodeType!=1?this.nodeValue:o.fn.text([this])}})});return E},wrapAll:function(E){if(this[0]){var F=o(E,this[0].ownerDocument).clone();if(this[0].parentNode){F.insertBefore(this[0])}F.map(function(){var G=this;while(G.firstChild){G=G.firstChild}return G}).append(this)}return this},wrapInner:function(E){return this.each(function(){o(this).contents().wrapAll(E)})},wrap:function(E){return this.each(function(){o(this).wrapAll(E)})},append:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.appendChild(E)}})},prepend:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.insertBefore(E,this.firstChild)}})},before:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this)})},after:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this.nextSibling)})},end:function(){return this.prevObject||o([])},push:[].push,sort:[].sort,splice:[].splice,find:function(E){if(this.length===1){var F=this.pushStack([],"find",E);F.length=0;o.find(E,this[0],F);return F}else{return this.pushStack(o.unique(o.map(this,function(G){return o.find(E,G)})),"find",E)}},clone:function(G){var E=this.map(function(){if(!o.support.noCloneEvent&&!o.isXMLDoc(this)){var I=this.outerHTML;if(!I){var J=this.ownerDocument.createElement("div");J.appendChild(this.cloneNode(true));I=J.innerHTML}return o.clean([I.replace(/ jQuery\d+="(?:\d+|null)"/g,"").replace(/^\s*/,"")])[0]}else{return this.cloneNode(true)}});if(G===true){var H=this.find("*").andSelf(),F=0;E.find("*").andSelf().each(function(){if(this.nodeName!==H[F].nodeName){return}var I=o.data(H[F],"events");for(var K in I){for(var J in I[K]){o.event.add(this,K,I[K][J],I[K][J].data)}}F++})}return E},filter:function(E){return this.pushStack(o.isFunction(E)&&o.grep(this,function(G,F){return E.call(G,F)})||o.multiFilter(E,o.grep(this,function(F){return F.nodeType===1})),"filter",E)},closest:function(E){var G=o.expr.match.POS.test(E)?o(E):null,F=0;return this.map(function(){var H=this;while(H&&H.ownerDocument){if(G?G.index(H)>-1:o(H).is(E)){o.data(H,"closest",F);return H}H=H.parentNode;F++}})},not:function(E){if(typeof E==="string"){if(f.test(E)){return this.pushStack(o.multiFilter(E,this,true),"not",E)}else{E=o.multiFilter(E,this)}}var F=E.length&&E[E.length-1]!==g&&!E.nodeType;return this.filter(function(){return F?o.inArray(this,E)<0:this!=E})},add:function(E){return this.pushStack(o.unique(o.merge(this.get(),typeof E==="string"?o(E):o.makeArray(E))))},is:function(E){return !!E&&o.multiFilter(E,this).length>0},hasClass:function(E){return !!E&&this.is("."+E)},val:function(K){if(K===g){var E=this[0];if(E){if(o.nodeName(E,"option")){return(E.attributes.value||{}).specified?E.value:E.text}if(o.nodeName(E,"select")){var I=E.selectedIndex,L=[],M=E.options,H=E.type=="select-one";if(I<0){return null}for(var F=H?I:0,J=H?I+1:M.length;F<J;F++){var G=M[F];if(G.selected){K=o(G).val();if(H){return K}L.push(K)}}return L}return(E.value||"").replace(/\r/g,"")}return g}if(typeof K==="number"){K+=""}return this.each(function(){if(this.nodeType!=1){return}if(o.isArray(K)&&/radio|checkbox/.test(this.type)){this.checked=(o.inArray(this.value,K)>=0||o.inArray(this.name,K)>=0)}else{if(o.nodeName(this,"select")){var N=o.makeArray(K);o("option",this).each(function(){this.selected=(o.inArray(this.value,N)>=0||o.inArray(this.text,N)>=0)});if(!N.length){this.selectedIndex=-1}}else{this.value=K}}})},html:function(E){return E===g?(this[0]?this[0].innerHTML.replace(/ jQuery\d+="(?:\d+|null)"/g,""):null):this.empty().append(E)},replaceWith:function(E){return this.after(E).remove()},eq:function(E){return this.slice(E,+E+1)},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","))},map:function(E){return this.pushStack(o.map(this,function(G,F){return E.call(G,F,G)}))},andSelf:function(){return this.add(this.prevObject)},domManip:function(J,M,L){if(this[0]){var I=(this[0].ownerDocument||this[0]).createDocumentFragment(),F=o.clean(J,(this[0].ownerDocument||this[0]),I),H=I.firstChild;if(H){for(var G=0,E=this.length;G<E;G++){L.call(K(this[G],H),this.length>1||G>0?I.cloneNode(true):I)}}if(F){o.each(F,z)}}return this;function K(N,O){return M&&o.nodeName(N,"table")&&o.nodeName(O,"tr")?(N.getElementsByTagName("tbody")[0]||N.appendChild(N.ownerDocument.createElement("tbody"))):N}}};o.fn.init.prototype=o.fn;function z(E,F){if(F.src){o.ajax({url:F.src,async:false,dataType:"script"})}else{o.globalEval(F.text||F.textContent||F.innerHTML||"")}if(F.parentNode){F.parentNode.removeChild(F)}}function e(){return +new Date}o.extend=o.fn.extend=function(){var J=arguments[0]||{},H=1,I=arguments.length,E=false,G;if(typeof J==="boolean"){E=J;J=arguments[1]||{};H=2}if(typeof J!=="object"&&!o.isFunction(J)){J={}}if(I==H){J=this;--H}for(;H<I;H++){if((G=arguments[H])!=null){for(var F in G){var K=J[F],L=G[F];if(J===L){continue}if(E&&L&&typeof L==="object"&&!L.nodeType){J[F]=o.extend(E,K||(L.length!=null?[]:{}),L)}else{if(L!==g){J[F]=L}}}}}return J};var b=/z-?index|font-?weight|opacity|zoom|line-?height/i,q=document.defaultView||{},s=Object.prototype.toString;o.extend({noConflict:function(E){l.$=p;if(E){l.jQuery=y}return o},isFunction:function(E){return s.call(E)==="[object Function]"},isArray:function(E){return s.call(E)==="[object Array]"},isXMLDoc:function(E){return E.nodeType===9&&E.documentElement.nodeName!=="HTML"||!!E.ownerDocument&&o.isXMLDoc(E.ownerDocument)},globalEval:function(G){if(G&&/\S/.test(G)){var F=document.getElementsByTagName("head")[0]||document.documentElement,E=document.createElement("script");E.type="text/javascript";if(o.support.scriptEval){E.appendChild(document.createTextNode(G))}else{E.text=G}F.insertBefore(E,F.firstChild);F.removeChild(E)}},nodeName:function(F,E){return F.nodeName&&F.nodeName.toUpperCase()==E.toUpperCase()},each:function(G,K,F){var E,H=0,I=G.length;if(F){if(I===g){for(E in G){if(K.apply(G[E],F)===false){break}}}else{for(;H<I;){if(K.apply(G[H++],F)===false){break}}}}else{if(I===g){for(E in G){if(K.call(G[E],E,G[E])===false){break}}}else{for(var J=G[0];H<I&&K.call(J,H,J)!==false;J=G[++H]){}}}return G},prop:function(H,I,G,F,E){if(o.isFunction(I)){I=I.call(H,F)}return typeof I==="number"&&G=="curCSS"&&!b.test(E)?I+"px":I},className:{add:function(E,F){o.each((F||"").split(/\s+/),function(G,H){if(E.nodeType==1&&!o.className.has(E.className,H)){E.className+=(E.className?" ":"")+H}})},remove:function(E,F){if(E.nodeType==1){E.className=F!==g?o.grep(E.className.split(/\s+/),function(G){return !o.className.has(F,G)}).join(" "):""}},has:function(F,E){return F&&o.inArray(E,(F.className||F).toString().split(/\s+/))>-1}},swap:function(H,G,I){var E={};for(var F in G){E[F]=H.style[F];H.style[F]=G[F]}I.call(H);for(var F in G){H.style[F]=E[F]}},css:function(H,F,J,E){if(F=="width"||F=="height"){var L,G={position:"absolute",visibility:"hidden",display:"block"},K=F=="width"?["Left","Right"]:["Top","Bottom"];function I(){L=F=="width"?H.offsetWidth:H.offsetHeight;if(E==="border"){return}o.each(K,function(){if(!E){L-=parseFloat(o.curCSS(H,"padding"+this,true))||0}if(E==="margin"){L+=parseFloat(o.curCSS(H,"margin"+this,true))||0}else{L-=parseFloat(o.curCSS(H,"border"+this+"Width",true))||0}})}if(H.offsetWidth!==0){I()}else{o.swap(H,G,I)}return Math.max(0,Math.round(L))}return o.curCSS(H,F,J)},curCSS:function(I,F,G){var L,E=I.style;if(F=="opacity"&&!o.support.opacity){L=o.attr(E,"opacity");return L==""?"1":L}if(F.match(/float/i)){F=w}if(!G&&E&&E[F]){L=E[F]}else{if(q.getComputedStyle){if(F.match(/float/i)){F="float"}F=F.replace(/([A-Z])/g,"-$1").toLowerCase();var M=q.getComputedStyle(I,null);if(M){L=M.getPropertyValue(F)}if(F=="opacity"&&L==""){L="1"}}else{if(I.currentStyle){var J=F.replace(/\-(\w)/g,function(N,O){return O.toUpperCase()});L=I.currentStyle[F]||I.currentStyle[J];if(!/^\d+(px)?$/i.test(L)&&/^\d/.test(L)){var H=E.left,K=I.runtimeStyle.left;I.runtimeStyle.left=I.currentStyle.left;E.left=L||0;L=E.pixelLeft+"px";E.left=H;I.runtimeStyle.left=K}}}}return L},clean:function(F,K,I){K=K||document;if(typeof K.createElement==="undefined"){K=K.ownerDocument||K[0]&&K[0].ownerDocument||document}if(!I&&F.length===1&&typeof F[0]==="string"){var H=/^<(\w+)\s*\/?>$/.exec(F[0]);if(H){return[K.createElement(H[1])]}}var G=[],E=[],L=K.createElement("div");o.each(F,function(P,S){if(typeof S==="number"){S+=""}if(!S){return}if(typeof S==="string"){S=S.replace(/(<(\w+)[^>]*?)\/>/g,function(U,V,T){return T.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?U:V+"></"+T+">"});var O=S.replace(/^\s+/,"").substring(0,10).toLowerCase();var Q=!O.indexOf("<opt")&&[1,"<select multiple='multiple'>","</select>"]||!O.indexOf("<leg")&&[1,"<fieldset>","</fieldset>"]||O.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"<table>","</table>"]||!O.indexOf("<tr")&&[2,"<table><tbody>","</tbody></table>"]||(!O.indexOf("<td")||!O.indexOf("<th"))&&[3,"<table><tbody><tr>","</tr></tbody></table>"]||!O.indexOf("<col")&&[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"]||!o.support.htmlSerialize&&[1,"div<div>","</div>"]||[0,"",""];L.innerHTML=Q[1]+S+Q[2];while(Q[0]--){L=L.lastChild}if(!o.support.tbody){var R=/<tbody/i.test(S),N=!O.indexOf("<table")&&!R?L.firstChild&&L.firstChild.childNodes:Q[1]=="<table>"&&!R?L.childNodes:[];for(var M=N.length-1;M>=0;--M){if(o.nodeName(N[M],"tbody")&&!N[M].childNodes.length){N[M].parentNode.removeChild(N[M])}}}if(!o.support.leadingWhitespace&&/^\s/.test(S)){L.insertBefore(K.createTextNode(S.match(/^\s*/)[0]),L.firstChild)}S=o.makeArray(L.childNodes)}if(S.nodeType){G.push(S)}else{G=o.merge(G,S)}});if(I){for(var J=0;G[J];J++){if(o.nodeName(G[J],"script")&&(!G[J].type||G[J].type.toLowerCase()==="text/javascript")){E.push(G[J].parentNode?G[J].parentNode.removeChild(G[J]):G[J])}else{if(G[J].nodeType===1){G.splice.apply(G,[J+1,0].concat(o.makeArray(G[J].getElementsByTagName("script"))))}I.appendChild(G[J])}}return E}return G},attr:function(J,G,K){if(!J||J.nodeType==3||J.nodeType==8){return g}var H=!o.isXMLDoc(J),L=K!==g;G=H&&o.props[G]||G;if(J.tagName){var F=/href|src|style/.test(G);if(G=="selected"&&J.parentNode){J.parentNode.selectedIndex}if(G in J&&H&&!F){if(L){if(G=="type"&&o.nodeName(J,"input")&&J.parentNode){throw"type property can't be changed"}J[G]=K}if(o.nodeName(J,"form")&&J.getAttributeNode(G)){return J.getAttributeNode(G).nodeValue}if(G=="tabIndex"){var I=J.getAttributeNode("tabIndex");return I&&I.specified?I.value:J.nodeName.match(/(button|input|object|select|textarea)/i)?0:J.nodeName.match(/^(a|area)$/i)&&J.href?0:g}return J[G]}if(!o.support.style&&H&&G=="style"){return o.attr(J.style,"cssText",K)}if(L){J.setAttribute(G,""+K)}var E=!o.support.hrefNormalized&&H&&F?J.getAttribute(G,2):J.getAttribute(G);return E===null?g:E}if(!o.support.opacity&&G=="opacity"){if(L){J.zoom=1;J.filter=(J.filter||"").replace(/alpha\([^)]*\)/,"")+(parseInt(K)+""=="NaN"?"":"alpha(opacity="+K*100+")")}return J.filter&&J.filter.indexOf("opacity=")>=0?(parseFloat(J.filter.match(/opacity=([^)]*)/)[1])/100)+"":""}G=G.replace(/-([a-z])/ig,function(M,N){return N.toUpperCase()});if(L){J[G]=K}return J[G]},trim:function(E){return(E||"").replace(/^\s+|\s+$/g,"")},makeArray:function(G){var E=[];if(G!=null){var F=G.length;if(F==null||typeof G==="string"||o.isFunction(G)||G.setInterval){E[0]=G}else{while(F){E[--F]=G[F]}}}return E},inArray:function(G,H){for(var E=0,F=H.length;E<F;E++){if(H[E]===G){return E}}return -1},merge:function(H,E){var F=0,G,I=H.length;if(!o.support.getAll){while((G=E[F++])!=null){if(G.nodeType!=8){H[I++]=G}}}else{while((G=E[F++])!=null){H[I++]=G}}return H},unique:function(K){var F=[],E={};try{for(var G=0,H=K.length;G<H;G++){var J=o.data(K[G]);if(!E[J]){E[J]=true;F.push(K[G])}}}catch(I){F=K}return F},grep:function(F,J,E){var G=[];for(var H=0,I=F.length;H<I;H++){if(!E!=!J(F[H],H)){G.push(F[H])}}return G},map:function(E,J){var F=[];for(var G=0,H=E.length;G<H;G++){var I=J(E[G],G);if(I!=null){F[F.length]=I}}return F.concat.apply([],F)}});var C=navigator.userAgent.toLowerCase();o.browser={version:(C.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)||[0,"0"])[1],safari:/webkit/.test(C),opera:/opera/.test(C),msie:/msie/.test(C)&&!/opera/.test(C),mozilla:/mozilla/.test(C)&&!/(compatible|webkit)/.test(C)};o.each({parent:function(E){return E.parentNode},parents:function(E){return o.dir(E,"parentNode")},next:function(E){return o.nth(E,2,"nextSibling")},prev:function(E){return o.nth(E,2,"previousSibling")},nextAll:function(E){return o.dir(E,"nextSibling")},prevAll:function(E){return o.dir(E,"previousSibling")},siblings:function(E){return o.sibling(E.parentNode.firstChild,E)},children:function(E){return o.sibling(E.firstChild)},contents:function(E){return o.nodeName(E,"iframe")?E.contentDocument||E.contentWindow.document:o.makeArray(E.childNodes)}},function(E,F){o.fn[E]=function(G){var H=o.map(this,F);if(G&&typeof G=="string"){H=o.multiFilter(G,H)}return this.pushStack(o.unique(H),E,G)}});o.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(E,F){o.fn[E]=function(G){var J=[],L=o(G);for(var K=0,H=L.length;K<H;K++){var I=(K>0?this.clone(true):this).get();o.fn[F].apply(o(L[K]),I);J=J.concat(I)}return this.pushStack(J,E,G)}});o.each({removeAttr:function(E){o.attr(this,E,"");if(this.nodeType==1){this.removeAttribute(E)}},addClass:function(E){o.className.add(this,E)},removeClass:function(E){o.className.remove(this,E)},toggleClass:function(F,E){if(typeof E!=="boolean"){E=!o.className.has(this,F)}o.className[E?"add":"remove"](this,F)},remove:function(E){if(!E||o.filter(E,[this]).length){o("*",this).add([this]).each(function(){o.event.remove(this);o.removeData(this)});if(this.parentNode){this.parentNode.removeChild(this)}}},empty:function(){o(this).children().remove();while(this.firstChild){this.removeChild(this.firstChild)}}},function(E,F){o.fn[E]=function(){return this.each(F,arguments)}});function j(E,F){return E[0]&&parseInt(o.curCSS(E[0],F,true),10)||0}var h="jQuery"+e(),v=0,A={};o.extend({cache:{},data:function(F,E,G){F=F==l?A:F;var H=F[h];if(!H){H=F[h]=++v}if(E&&!o.cache[H]){o.cache[H]={}}if(G!==g){o.cache[H][E]=G}return E?o.cache[H][E]:H},removeData:function(F,E){F=F==l?A:F;var H=F[h];if(E){if(o.cache[H]){delete o.cache[H][E];E="";for(E in o.cache[H]){break}if(!E){o.removeData(F)}}}else{try{delete F[h]}catch(G){if(F.removeAttribute){F.removeAttribute(h)}}delete o.cache[H]}},queue:function(F,E,H){if(F){E=(E||"fx")+"queue";var G=o.data(F,E);if(!G||o.isArray(H)){G=o.data(F,E,o.makeArray(H))}else{if(H){G.push(H)}}}return G},dequeue:function(H,G){var E=o.queue(H,G),F=E.shift();if(!G||G==="fx"){F=E[0]}if(F!==g){F.call(H)}}});o.fn.extend({data:function(E,G){var H=E.split(".");H[1]=H[1]?"."+H[1]:"";if(G===g){var F=this.triggerHandler("getData"+H[1]+"!",[H[0]]);if(F===g&&this.length){F=o.data(this[0],E)}return F===g&&H[1]?this.data(H[0]):F}else{return this.trigger("setData"+H[1]+"!",[H[0],G]).each(function(){o.data(this,E,G)})}},removeData:function(E){return this.each(function(){o.removeData(this,E)})},queue:function(E,F){if(typeof E!=="string"){F=E;E="fx"}if(F===g){return o.queue(this[0],E)}return this.each(function(){var G=o.queue(this,E,F);if(E=="fx"&&G.length==1){G[0].call(this)}})},dequeue:function(E){return this.each(function(){o.dequeue(this,E)})}}); -/* - * Sizzle CSS Selector Engine - v0.9.3 - * Copyright 2009, The Dojo Foundation - * Released under the MIT, BSD, and GPL Licenses. - * More information: http://sizzlejs.com/ - */ -(function(){var R=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?/g,L=0,H=Object.prototype.toString;var F=function(Y,U,ab,ac){ab=ab||[];U=U||document;if(U.nodeType!==1&&U.nodeType!==9){return[]}if(!Y||typeof Y!=="string"){return ab}var Z=[],W,af,ai,T,ad,V,X=true;R.lastIndex=0;while((W=R.exec(Y))!==null){Z.push(W[1]);if(W[2]){V=RegExp.rightContext;break}}if(Z.length>1&&M.exec(Y)){if(Z.length===2&&I.relative[Z[0]]){af=J(Z[0]+Z[1],U)}else{af=I.relative[Z[0]]?[U]:F(Z.shift(),U);while(Z.length){Y=Z.shift();if(I.relative[Y]){Y+=Z.shift()}af=J(Y,af)}}}else{var ae=ac?{expr:Z.pop(),set:E(ac)}:F.find(Z.pop(),Z.length===1&&U.parentNode?U.parentNode:U,Q(U));af=F.filter(ae.expr,ae.set);if(Z.length>0){ai=E(af)}else{X=false}while(Z.length){var ah=Z.pop(),ag=ah;if(!I.relative[ah]){ah=""}else{ag=Z.pop()}if(ag==null){ag=U}I.relative[ah](ai,ag,Q(U))}}if(!ai){ai=af}if(!ai){throw"Syntax error, unrecognized expression: "+(ah||Y)}if(H.call(ai)==="[object Array]"){if(!X){ab.push.apply(ab,ai)}else{if(U.nodeType===1){for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&(ai[aa]===true||ai[aa].nodeType===1&&K(U,ai[aa]))){ab.push(af[aa])}}}else{for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&ai[aa].nodeType===1){ab.push(af[aa])}}}}}else{E(ai,ab)}if(V){F(V,U,ab,ac);if(G){hasDuplicate=false;ab.sort(G);if(hasDuplicate){for(var aa=1;aa<ab.length;aa++){if(ab[aa]===ab[aa-1]){ab.splice(aa--,1)}}}}}return ab};F.matches=function(T,U){return F(T,null,null,U)};F.find=function(aa,T,ab){var Z,X;if(!aa){return[]}for(var W=0,V=I.order.length;W<V;W++){var Y=I.order[W],X;if((X=I.match[Y].exec(aa))){var U=RegExp.leftContext;if(U.substr(U.length-1)!=="\\"){X[1]=(X[1]||"").replace(/\\/g,"");Z=I.find[Y](X,T,ab);if(Z!=null){aa=aa.replace(I.match[Y],"");break}}}}if(!Z){Z=T.getElementsByTagName("*")}return{set:Z,expr:aa}};F.filter=function(ad,ac,ag,W){var V=ad,ai=[],aa=ac,Y,T,Z=ac&&ac[0]&&Q(ac[0]);while(ad&&ac.length){for(var ab in I.filter){if((Y=I.match[ab].exec(ad))!=null){var U=I.filter[ab],ah,af;T=false;if(aa==ai){ai=[]}if(I.preFilter[ab]){Y=I.preFilter[ab](Y,aa,ag,ai,W,Z);if(!Y){T=ah=true}else{if(Y===true){continue}}}if(Y){for(var X=0;(af=aa[X])!=null;X++){if(af){ah=U(af,Y,X,aa);var ae=W^!!ah;if(ag&&ah!=null){if(ae){T=true}else{aa[X]=false}}else{if(ae){ai.push(af);T=true}}}}}if(ah!==g){if(!ag){aa=ai}ad=ad.replace(I.match[ab],"");if(!T){return[]}break}}}if(ad==V){if(T==null){throw"Syntax error, unrecognized expression: "+ad}else{break}}V=ad}return aa};var I=F.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF_-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF_-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*_-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+-]*)\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF_-]|\\.)+)(?:\((['"]*)((?:\([^\)]+\)|[^\2\(\)]*)+)\2\))?/},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(T){return T.getAttribute("href")}},relative:{"+":function(aa,T,Z){var X=typeof T==="string",ab=X&&!/\W/.test(T),Y=X&&!ab;if(ab&&!Z){T=T.toUpperCase()}for(var W=0,V=aa.length,U;W<V;W++){if((U=aa[W])){while((U=U.previousSibling)&&U.nodeType!==1){}aa[W]=Y||U&&U.nodeName===T?U||false:U===T}}if(Y){F.filter(T,aa,true)}},">":function(Z,U,aa){var X=typeof U==="string";if(X&&!/\W/.test(U)){U=aa?U:U.toUpperCase();for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){var W=Y.parentNode;Z[V]=W.nodeName===U?W:false}}}else{for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){Z[V]=X?Y.parentNode:Y.parentNode===U}}if(X){F.filter(U,Z,true)}}},"":function(W,U,Y){var V=L++,T=S;if(!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("parentNode",U,V,W,X,Y)},"~":function(W,U,Y){var V=L++,T=S;if(typeof U==="string"&&!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("previousSibling",U,V,W,X,Y)}},find:{ID:function(U,V,W){if(typeof V.getElementById!=="undefined"&&!W){var T=V.getElementById(U[1]);return T?[T]:[]}},NAME:function(V,Y,Z){if(typeof Y.getElementsByName!=="undefined"){var U=[],X=Y.getElementsByName(V[1]);for(var W=0,T=X.length;W<T;W++){if(X[W].getAttribute("name")===V[1]){U.push(X[W])}}return U.length===0?null:U}},TAG:function(T,U){return U.getElementsByTagName(T[1])}},preFilter:{CLASS:function(W,U,V,T,Z,aa){W=" "+W[1].replace(/\\/g,"")+" ";if(aa){return W}for(var X=0,Y;(Y=U[X])!=null;X++){if(Y){if(Z^(Y.className&&(" "+Y.className+" ").indexOf(W)>=0)){if(!V){T.push(Y)}}else{if(V){U[X]=false}}}}return false},ID:function(T){return T[1].replace(/\\/g,"")},TAG:function(U,T){for(var V=0;T[V]===false;V++){}return T[V]&&Q(T[V])?U[1]:U[1].toUpperCase()},CHILD:function(T){if(T[1]=="nth"){var U=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(T[2]=="even"&&"2n"||T[2]=="odd"&&"2n+1"||!/\D/.test(T[2])&&"0n+"+T[2]||T[2]);T[2]=(U[1]+(U[2]||1))-0;T[3]=U[3]-0}T[0]=L++;return T},ATTR:function(X,U,V,T,Y,Z){var W=X[1].replace(/\\/g,"");if(!Z&&I.attrMap[W]){X[1]=I.attrMap[W]}if(X[2]==="~="){X[4]=" "+X[4]+" "}return X},PSEUDO:function(X,U,V,T,Y){if(X[1]==="not"){if(X[3].match(R).length>1||/^\w/.test(X[3])){X[3]=F(X[3],null,null,U)}else{var W=F.filter(X[3],U,V,true^Y);if(!V){T.push.apply(T,W)}return false}}else{if(I.match.POS.test(X[0])||I.match.CHILD.test(X[0])){return true}}return X},POS:function(T){T.unshift(true);return T}},filters:{enabled:function(T){return T.disabled===false&&T.type!=="hidden"},disabled:function(T){return T.disabled===true},checked:function(T){return T.checked===true},selected:function(T){T.parentNode.selectedIndex;return T.selected===true},parent:function(T){return !!T.firstChild},empty:function(T){return !T.firstChild},has:function(V,U,T){return !!F(T[3],V).length},header:function(T){return/h\d/i.test(T.nodeName)},text:function(T){return"text"===T.type},radio:function(T){return"radio"===T.type},checkbox:function(T){return"checkbox"===T.type},file:function(T){return"file"===T.type},password:function(T){return"password"===T.type},submit:function(T){return"submit"===T.type},image:function(T){return"image"===T.type},reset:function(T){return"reset"===T.type},button:function(T){return"button"===T.type||T.nodeName.toUpperCase()==="BUTTON"},input:function(T){return/input|select|textarea|button/i.test(T.nodeName)}},setFilters:{first:function(U,T){return T===0},last:function(V,U,T,W){return U===W.length-1},even:function(U,T){return T%2===0},odd:function(U,T){return T%2===1},lt:function(V,U,T){return U<T[3]-0},gt:function(V,U,T){return U>T[3]-0},nth:function(V,U,T){return T[3]-0==U},eq:function(V,U,T){return T[3]-0==U}},filter:{PSEUDO:function(Z,V,W,aa){var U=V[1],X=I.filters[U];if(X){return X(Z,W,V,aa)}else{if(U==="contains"){return(Z.textContent||Z.innerText||"").indexOf(V[3])>=0}else{if(U==="not"){var Y=V[3];for(var W=0,T=Y.length;W<T;W++){if(Y[W]===Z){return false}}return true}}}},CHILD:function(T,W){var Z=W[1],U=T;switch(Z){case"only":case"first":while(U=U.previousSibling){if(U.nodeType===1){return false}}if(Z=="first"){return true}U=T;case"last":while(U=U.nextSibling){if(U.nodeType===1){return false}}return true;case"nth":var V=W[2],ac=W[3];if(V==1&&ac==0){return true}var Y=W[0],ab=T.parentNode;if(ab&&(ab.sizcache!==Y||!T.nodeIndex)){var X=0;for(U=ab.firstChild;U;U=U.nextSibling){if(U.nodeType===1){U.nodeIndex=++X}}ab.sizcache=Y}var aa=T.nodeIndex-ac;if(V==0){return aa==0}else{return(aa%V==0&&aa/V>=0)}}},ID:function(U,T){return U.nodeType===1&&U.getAttribute("id")===T},TAG:function(U,T){return(T==="*"&&U.nodeType===1)||U.nodeName===T},CLASS:function(U,T){return(" "+(U.className||U.getAttribute("class"))+" ").indexOf(T)>-1},ATTR:function(Y,W){var V=W[1],T=I.attrHandle[V]?I.attrHandle[V](Y):Y[V]!=null?Y[V]:Y.getAttribute(V),Z=T+"",X=W[2],U=W[4];return T==null?X==="!=":X==="="?Z===U:X==="*="?Z.indexOf(U)>=0:X==="~="?(" "+Z+" ").indexOf(U)>=0:!U?Z&&T!==false:X==="!="?Z!=U:X==="^="?Z.indexOf(U)===0:X==="$="?Z.substr(Z.length-U.length)===U:X==="|="?Z===U||Z.substr(0,U.length+1)===U+"-":false},POS:function(X,U,V,Y){var T=U[2],W=I.setFilters[T];if(W){return W(X,V,U,Y)}}}};var M=I.match.POS;for(var O in I.match){I.match[O]=RegExp(I.match[O].source+/(?![^\[]*\])(?![^\(]*\))/.source)}var E=function(U,T){U=Array.prototype.slice.call(U);if(T){T.push.apply(T,U);return T}return U};try{Array.prototype.slice.call(document.documentElement.childNodes)}catch(N){E=function(X,W){var U=W||[];if(H.call(X)==="[object Array]"){Array.prototype.push.apply(U,X)}else{if(typeof X.length==="number"){for(var V=0,T=X.length;V<T;V++){U.push(X[V])}}else{for(var V=0;X[V];V++){U.push(X[V])}}}return U}}var G;if(document.documentElement.compareDocumentPosition){G=function(U,T){var V=U.compareDocumentPosition(T)&4?-1:U===T?0:1;if(V===0){hasDuplicate=true}return V}}else{if("sourceIndex" in document.documentElement){G=function(U,T){var V=U.sourceIndex-T.sourceIndex;if(V===0){hasDuplicate=true}return V}}else{if(document.createRange){G=function(W,U){var V=W.ownerDocument.createRange(),T=U.ownerDocument.createRange();V.selectNode(W);V.collapse(true);T.selectNode(U);T.collapse(true);var X=V.compareBoundaryPoints(Range.START_TO_END,T);if(X===0){hasDuplicate=true}return X}}}}(function(){var U=document.createElement("form"),V="script"+(new Date).getTime();U.innerHTML="<input name='"+V+"'/>";var T=document.documentElement;T.insertBefore(U,T.firstChild);if(!!document.getElementById(V)){I.find.ID=function(X,Y,Z){if(typeof Y.getElementById!=="undefined"&&!Z){var W=Y.getElementById(X[1]);return W?W.id===X[1]||typeof W.getAttributeNode!=="undefined"&&W.getAttributeNode("id").nodeValue===X[1]?[W]:g:[]}};I.filter.ID=function(Y,W){var X=typeof Y.getAttributeNode!=="undefined"&&Y.getAttributeNode("id");return Y.nodeType===1&&X&&X.nodeValue===W}}T.removeChild(U)})();(function(){var T=document.createElement("div");T.appendChild(document.createComment(""));if(T.getElementsByTagName("*").length>0){I.find.TAG=function(U,Y){var X=Y.getElementsByTagName(U[1]);if(U[1]==="*"){var W=[];for(var V=0;X[V];V++){if(X[V].nodeType===1){W.push(X[V])}}X=W}return X}}T.innerHTML="<a href='#'></a>";if(T.firstChild&&typeof T.firstChild.getAttribute!=="undefined"&&T.firstChild.getAttribute("href")!=="#"){I.attrHandle.href=function(U){return U.getAttribute("href",2)}}})();if(document.querySelectorAll){(function(){var T=F,U=document.createElement("div");U.innerHTML="<p class='TEST'></p>";if(U.querySelectorAll&&U.querySelectorAll(".TEST").length===0){return}F=function(Y,X,V,W){X=X||document;if(!W&&X.nodeType===9&&!Q(X)){try{return E(X.querySelectorAll(Y),V)}catch(Z){}}return T(Y,X,V,W)};F.find=T.find;F.filter=T.filter;F.selectors=T.selectors;F.matches=T.matches})()}if(document.getElementsByClassName&&document.documentElement.getElementsByClassName){(function(){var T=document.createElement("div");T.innerHTML="<div class='test e'></div><div class='test'></div>";if(T.getElementsByClassName("e").length===0){return}T.lastChild.className="e";if(T.getElementsByClassName("e").length===1){return}I.order.splice(1,0,"CLASS");I.find.CLASS=function(U,V,W){if(typeof V.getElementsByClassName!=="undefined"&&!W){return V.getElementsByClassName(U[1])}}})()}function P(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1&&!ac){T.sizcache=Y;T.sizset=W}if(T.nodeName===Z){X=T;break}T=T[U]}ad[W]=X}}}function S(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1){if(!ac){T.sizcache=Y;T.sizset=W}if(typeof Z!=="string"){if(T===Z){X=true;break}}else{if(F.filter(Z,[T]).length>0){X=T;break}}}T=T[U]}ad[W]=X}}}var K=document.compareDocumentPosition?function(U,T){return U.compareDocumentPosition(T)&16}:function(U,T){return U!==T&&(U.contains?U.contains(T):true)};var Q=function(T){return T.nodeType===9&&T.documentElement.nodeName!=="HTML"||!!T.ownerDocument&&Q(T.ownerDocument)};var J=function(T,aa){var W=[],X="",Y,V=aa.nodeType?[aa]:aa;while((Y=I.match.PSEUDO.exec(T))){X+=Y[0];T=T.replace(I.match.PSEUDO,"")}T=I.relative[T]?T+"*":T;for(var Z=0,U=V.length;Z<U;Z++){F(T,V[Z],W)}return F.filter(X,W)};o.find=F;o.filter=F.filter;o.expr=F.selectors;o.expr[":"]=o.expr.filters;F.selectors.filters.hidden=function(T){return T.offsetWidth===0||T.offsetHeight===0};F.selectors.filters.visible=function(T){return T.offsetWidth>0||T.offsetHeight>0};F.selectors.filters.animated=function(T){return o.grep(o.timers,function(U){return T===U.elem}).length};o.multiFilter=function(V,T,U){if(U){V=":not("+V+")"}return F.matches(V,T)};o.dir=function(V,U){var T=[],W=V[U];while(W&&W!=document){if(W.nodeType==1){T.push(W)}W=W[U]}return T};o.nth=function(X,T,V,W){T=T||1;var U=0;for(;X;X=X[V]){if(X.nodeType==1&&++U==T){break}}return X};o.sibling=function(V,U){var T=[];for(;V;V=V.nextSibling){if(V.nodeType==1&&V!=U){T.push(V)}}return T};return;l.Sizzle=F})();o.event={add:function(I,F,H,K){if(I.nodeType==3||I.nodeType==8){return}if(I.setInterval&&I!=l){I=l}if(!H.guid){H.guid=this.guid++}if(K!==g){var G=H;H=this.proxy(G);H.data=K}var E=o.data(I,"events")||o.data(I,"events",{}),J=o.data(I,"handle")||o.data(I,"handle",function(){return typeof o!=="undefined"&&!o.event.triggered?o.event.handle.apply(arguments.callee.elem,arguments):g});J.elem=I;o.each(F.split(/\s+/),function(M,N){var O=N.split(".");N=O.shift();H.type=O.slice().sort().join(".");var L=E[N];if(o.event.specialAll[N]){o.event.specialAll[N].setup.call(I,K,O)}if(!L){L=E[N]={};if(!o.event.special[N]||o.event.special[N].setup.call(I,K,O)===false){if(I.addEventListener){I.addEventListener(N,J,false)}else{if(I.attachEvent){I.attachEvent("on"+N,J)}}}}L[H.guid]=H;o.event.global[N]=true});I=null},guid:1,global:{},remove:function(K,H,J){if(K.nodeType==3||K.nodeType==8){return}var G=o.data(K,"events"),F,E;if(G){if(H===g||(typeof H==="string"&&H.charAt(0)==".")){for(var I in G){this.remove(K,I+(H||""))}}else{if(H.type){J=H.handler;H=H.type}o.each(H.split(/\s+/),function(M,O){var Q=O.split(".");O=Q.shift();var N=RegExp("(^|\\.)"+Q.slice().sort().join(".*\\.")+"(\\.|$)");if(G[O]){if(J){delete G[O][J.guid]}else{for(var P in G[O]){if(N.test(G[O][P].type)){delete G[O][P]}}}if(o.event.specialAll[O]){o.event.specialAll[O].teardown.call(K,Q)}for(F in G[O]){break}if(!F){if(!o.event.special[O]||o.event.special[O].teardown.call(K,Q)===false){if(K.removeEventListener){K.removeEventListener(O,o.data(K,"handle"),false)}else{if(K.detachEvent){K.detachEvent("on"+O,o.data(K,"handle"))}}}F=null;delete G[O]}}})}for(F in G){break}if(!F){var L=o.data(K,"handle");if(L){L.elem=null}o.removeData(K,"events");o.removeData(K,"handle")}}},trigger:function(I,K,H,E){var G=I.type||I;if(!E){I=typeof I==="object"?I[h]?I:o.extend(o.Event(G),I):o.Event(G);if(G.indexOf("!")>=0){I.type=G=G.slice(0,-1);I.exclusive=true}if(!H){I.stopPropagation();if(this.global[G]){o.each(o.cache,function(){if(this.events&&this.events[G]){o.event.trigger(I,K,this.handle.elem)}})}}if(!H||H.nodeType==3||H.nodeType==8){return g}I.result=g;I.target=H;K=o.makeArray(K);K.unshift(I)}I.currentTarget=H;var J=o.data(H,"handle");if(J){J.apply(H,K)}if((!H[G]||(o.nodeName(H,"a")&&G=="click"))&&H["on"+G]&&H["on"+G].apply(H,K)===false){I.result=false}if(!E&&H[G]&&!I.isDefaultPrevented()&&!(o.nodeName(H,"a")&&G=="click")){this.triggered=true;try{H[G]()}catch(L){}}this.triggered=false;if(!I.isPropagationStopped()){var F=H.parentNode||H.ownerDocument;if(F){o.event.trigger(I,K,F,true)}}},handle:function(K){var J,E;K=arguments[0]=o.event.fix(K||l.event);K.currentTarget=this;var L=K.type.split(".");K.type=L.shift();J=!L.length&&!K.exclusive;var I=RegExp("(^|\\.)"+L.slice().sort().join(".*\\.")+"(\\.|$)");E=(o.data(this,"events")||{})[K.type];for(var G in E){var H=E[G];if(J||I.test(H.type)){K.handler=H;K.data=H.data;var F=H.apply(this,arguments);if(F!==g){K.result=F;if(F===false){K.preventDefault();K.stopPropagation()}}if(K.isImmediatePropagationStopped()){break}}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(H){if(H[h]){return H}var F=H;H=o.Event(F);for(var G=this.props.length,J;G;){J=this.props[--G];H[J]=F[J]}if(!H.target){H.target=H.srcElement||document}if(H.target.nodeType==3){H.target=H.target.parentNode}if(!H.relatedTarget&&H.fromElement){H.relatedTarget=H.fromElement==H.target?H.toElement:H.fromElement}if(H.pageX==null&&H.clientX!=null){var I=document.documentElement,E=document.body;H.pageX=H.clientX+(I&&I.scrollLeft||E&&E.scrollLeft||0)-(I.clientLeft||0);H.pageY=H.clientY+(I&&I.scrollTop||E&&E.scrollTop||0)-(I.clientTop||0)}if(!H.which&&((H.charCode||H.charCode===0)?H.charCode:H.keyCode)){H.which=H.charCode||H.keyCode}if(!H.metaKey&&H.ctrlKey){H.metaKey=H.ctrlKey}if(!H.which&&H.button){H.which=(H.button&1?1:(H.button&2?3:(H.button&4?2:0)))}return H},proxy:function(F,E){E=E||function(){return F.apply(this,arguments)};E.guid=F.guid=F.guid||E.guid||this.guid++;return E},special:{ready:{setup:B,teardown:function(){}}},specialAll:{live:{setup:function(E,F){o.event.add(this,F[0],c)},teardown:function(G){if(G.length){var E=0,F=RegExp("(^|\\.)"+G[0]+"(\\.|$)");o.each((o.data(this,"events").live||{}),function(){if(F.test(this.type)){E++}});if(E<1){o.event.remove(this,G[0],c)}}}}}};o.Event=function(E){if(!this.preventDefault){return new o.Event(E)}if(E&&E.type){this.originalEvent=E;this.type=E.type}else{this.type=E}this.timeStamp=e();this[h]=true};function k(){return false}function u(){return true}o.Event.prototype={preventDefault:function(){this.isDefaultPrevented=u;var E=this.originalEvent;if(!E){return}if(E.preventDefault){E.preventDefault()}E.returnValue=false},stopPropagation:function(){this.isPropagationStopped=u;var E=this.originalEvent;if(!E){return}if(E.stopPropagation){E.stopPropagation()}E.cancelBubble=true},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=u;this.stopPropagation()},isDefaultPrevented:k,isPropagationStopped:k,isImmediatePropagationStopped:k};var a=function(F){var E=F.relatedTarget;while(E&&E!=this){try{E=E.parentNode}catch(G){E=this}}if(E!=this){F.type=F.data;o.event.handle.apply(this,arguments)}};o.each({mouseover:"mouseenter",mouseout:"mouseleave"},function(F,E){o.event.special[E]={setup:function(){o.event.add(this,F,a,E)},teardown:function(){o.event.remove(this,F,a)}}});o.fn.extend({bind:function(F,G,E){return F=="unload"?this.one(F,G,E):this.each(function(){o.event.add(this,F,E||G,E&&G)})},one:function(G,H,F){var E=o.event.proxy(F||H,function(I){o(this).unbind(I,E);return(F||H).apply(this,arguments)});return this.each(function(){o.event.add(this,G,E,F&&H)})},unbind:function(F,E){return this.each(function(){o.event.remove(this,F,E)})},trigger:function(E,F){return this.each(function(){o.event.trigger(E,F,this)})},triggerHandler:function(E,G){if(this[0]){var F=o.Event(E);F.preventDefault();F.stopPropagation();o.event.trigger(F,G,this[0]);return F.result}},toggle:function(G){var E=arguments,F=1;while(F<E.length){o.event.proxy(G,E[F++])}return this.click(o.event.proxy(G,function(H){this.lastToggle=(this.lastToggle||0)%F;H.preventDefault();return E[this.lastToggle++].apply(this,arguments)||false}))},hover:function(E,F){return this.mouseenter(E).mouseleave(F)},ready:function(E){B();if(o.isReady){E.call(document,o)}else{o.readyList.push(E)}return this},live:function(G,F){var E=o.event.proxy(F);E.guid+=this.selector+G;o(document).bind(i(G,this.selector),this.selector,E);return this},die:function(F,E){o(document).unbind(i(F,this.selector),E?{guid:E.guid+this.selector+F}:null);return this}});function c(H){var E=RegExp("(^|\\.)"+H.type+"(\\.|$)"),G=true,F=[];o.each(o.data(this,"events").live||[],function(I,J){if(E.test(J.type)){var K=o(H.target).closest(J.data)[0];if(K){F.push({elem:K,fn:J})}}});F.sort(function(J,I){return o.data(J.elem,"closest")-o.data(I.elem,"closest")});o.each(F,function(){if(this.fn.call(this.elem,H,this.fn.data)===false){return(G=false)}});return G}function i(F,E){return["live",F,E.replace(/\./g,"`").replace(/ /g,"|")].join(".")}o.extend({isReady:false,readyList:[],ready:function(){if(!o.isReady){o.isReady=true;if(o.readyList){o.each(o.readyList,function(){this.call(document,o)});o.readyList=null}o(document).triggerHandler("ready")}}});var x=false;function B(){if(x){return}x=true;if(document.addEventListener){document.addEventListener("DOMContentLoaded",function(){document.removeEventListener("DOMContentLoaded",arguments.callee,false);o.ready()},false)}else{if(document.attachEvent){document.attachEvent("onreadystatechange",function(){if(document.readyState==="complete"){document.detachEvent("onreadystatechange",arguments.callee);o.ready()}});if(document.documentElement.doScroll&&l==l.top){(function(){if(o.isReady){return}try{document.documentElement.doScroll("left")}catch(E){setTimeout(arguments.callee,0);return}o.ready()})()}}}o.event.add(l,"load",o.ready)}o.each(("blur,focus,load,resize,scroll,unload,click,dblclick,mousedown,mouseup,mousemove,mouseover,mouseout,mouseenter,mouseleave,change,select,submit,keydown,keypress,keyup,error").split(","),function(F,E){o.fn[E]=function(G){return G?this.bind(E,G):this.trigger(E)}});o(l).bind("unload",function(){for(var E in o.cache){if(E!=1&&o.cache[E].handle){o.event.remove(o.cache[E].handle.elem)}}});(function(){o.support={};var F=document.documentElement,G=document.createElement("script"),K=document.createElement("div"),J="script"+(new Date).getTime();K.style.display="none";K.innerHTML=' <link/><table></table><a href="/a" style="color:red;float:left;opacity:.5;">a</a><select><option>text</option></select><object><param/></object>';var H=K.getElementsByTagName("*"),E=K.getElementsByTagName("a")[0];if(!H||!H.length||!E){return}o.support={leadingWhitespace:K.firstChild.nodeType==3,tbody:!K.getElementsByTagName("tbody").length,objectAll:!!K.getElementsByTagName("object")[0].getElementsByTagName("*").length,htmlSerialize:!!K.getElementsByTagName("link").length,style:/red/.test(E.getAttribute("style")),hrefNormalized:E.getAttribute("href")==="/a",opacity:E.style.opacity==="0.5",cssFloat:!!E.style.cssFloat,scriptEval:false,noCloneEvent:true,boxModel:null};G.type="text/javascript";try{G.appendChild(document.createTextNode("window."+J+"=1;"))}catch(I){}F.insertBefore(G,F.firstChild);if(l[J]){o.support.scriptEval=true;delete l[J]}F.removeChild(G);if(K.attachEvent&&K.fireEvent){K.attachEvent("onclick",function(){o.support.noCloneEvent=false;K.detachEvent("onclick",arguments.callee)});K.cloneNode(true).fireEvent("onclick")}o(function(){var L=document.createElement("div");L.style.width=L.style.paddingLeft="1px";document.body.appendChild(L);o.boxModel=o.support.boxModel=L.offsetWidth===2;document.body.removeChild(L).style.display="none"})})();var w=o.support.cssFloat?"cssFloat":"styleFloat";o.props={"for":"htmlFor","class":"className","float":w,cssFloat:w,styleFloat:w,readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",tabindex:"tabIndex"};o.fn.extend({_load:o.fn.load,load:function(G,J,K){if(typeof G!=="string"){return this._load(G)}var I=G.indexOf(" ");if(I>=0){var E=G.slice(I,G.length);G=G.slice(0,I)}var H="GET";if(J){if(o.isFunction(J)){K=J;J=null}else{if(typeof J==="object"){J=o.param(J);H="POST"}}}var F=this;o.ajax({url:G,type:H,dataType:"html",data:J,complete:function(M,L){if(L=="success"||L=="notmodified"){F.html(E?o("<div/>").append(M.responseText.replace(/<script(.|\s)*?\/script>/g,"")).find(E):M.responseText)}if(K){F.each(K,[M.responseText,L,M])}}});return this},serialize:function(){return o.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?o.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password|search/i.test(this.type))}).map(function(E,F){var G=o(this).val();return G==null?null:o.isArray(G)?o.map(G,function(I,H){return{name:F.name,value:I}}):{name:F.name,value:G}}).get()}});o.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(E,F){o.fn[F]=function(G){return this.bind(F,G)}});var r=e();o.extend({get:function(E,G,H,F){if(o.isFunction(G)){H=G;G=null}return o.ajax({type:"GET",url:E,data:G,success:H,dataType:F})},getScript:function(E,F){return o.get(E,null,F,"script")},getJSON:function(E,F,G){return o.get(E,F,G,"json")},post:function(E,G,H,F){if(o.isFunction(G)){H=G;G={}}return o.ajax({type:"POST",url:E,data:G,success:H,dataType:F})},ajaxSetup:function(E){o.extend(o.ajaxSettings,E)},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return l.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest()},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(M){M=o.extend(true,M,o.extend(true,{},o.ajaxSettings,M));var W,F=/=\?(&|$)/g,R,V,G=M.type.toUpperCase();if(M.data&&M.processData&&typeof M.data!=="string"){M.data=o.param(M.data)}if(M.dataType=="jsonp"){if(G=="GET"){if(!M.url.match(F)){M.url+=(M.url.match(/\?/)?"&":"?")+(M.jsonp||"callback")+"=?"}}else{if(!M.data||!M.data.match(F)){M.data=(M.data?M.data+"&":"")+(M.jsonp||"callback")+"=?"}}M.dataType="json"}if(M.dataType=="json"&&(M.data&&M.data.match(F)||M.url.match(F))){W="jsonp"+r++;if(M.data){M.data=(M.data+"").replace(F,"="+W+"$1")}M.url=M.url.replace(F,"="+W+"$1");M.dataType="script";l[W]=function(X){V=X;I();L();l[W]=g;try{delete l[W]}catch(Y){}if(H){H.removeChild(T)}}}if(M.dataType=="script"&&M.cache==null){M.cache=false}if(M.cache===false&&G=="GET"){var E=e();var U=M.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+E+"$2");M.url=U+((U==M.url)?(M.url.match(/\?/)?"&":"?")+"_="+E:"")}if(M.data&&G=="GET"){M.url+=(M.url.match(/\?/)?"&":"?")+M.data;M.data=null}if(M.global&&!o.active++){o.event.trigger("ajaxStart")}var Q=/^(\w+:)?\/\/([^\/?#]+)/.exec(M.url);if(M.dataType=="script"&&G=="GET"&&Q&&(Q[1]&&Q[1]!=location.protocol||Q[2]!=location.host)){var H=document.getElementsByTagName("head")[0];var T=document.createElement("script");T.src=M.url;if(M.scriptCharset){T.charset=M.scriptCharset}if(!W){var O=false;T.onload=T.onreadystatechange=function(){if(!O&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){O=true;I();L();T.onload=T.onreadystatechange=null;H.removeChild(T)}}}H.appendChild(T);return g}var K=false;var J=M.xhr();if(M.username){J.open(G,M.url,M.async,M.username,M.password)}else{J.open(G,M.url,M.async)}try{if(M.data){J.setRequestHeader("Content-Type",M.contentType)}if(M.ifModified){J.setRequestHeader("If-Modified-Since",o.lastModified[M.url]||"Thu, 01 Jan 1970 00:00:00 GMT")}J.setRequestHeader("X-Requested-With","XMLHttpRequest");J.setRequestHeader("Accept",M.dataType&&M.accepts[M.dataType]?M.accepts[M.dataType]+", */*":M.accepts._default)}catch(S){}if(M.beforeSend&&M.beforeSend(J,M)===false){if(M.global&&!--o.active){o.event.trigger("ajaxStop")}J.abort();return false}if(M.global){o.event.trigger("ajaxSend",[J,M])}var N=function(X){if(J.readyState==0){if(P){clearInterval(P);P=null;if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}}else{if(!K&&J&&(J.readyState==4||X=="timeout")){K=true;if(P){clearInterval(P);P=null}R=X=="timeout"?"timeout":!o.httpSuccess(J)?"error":M.ifModified&&o.httpNotModified(J,M.url)?"notmodified":"success";if(R=="success"){try{V=o.httpData(J,M.dataType,M)}catch(Z){R="parsererror"}}if(R=="success"){var Y;try{Y=J.getResponseHeader("Last-Modified")}catch(Z){}if(M.ifModified&&Y){o.lastModified[M.url]=Y}if(!W){I()}}else{o.handleError(M,J,R)}L();if(X){J.abort()}if(M.async){J=null}}}};if(M.async){var P=setInterval(N,13);if(M.timeout>0){setTimeout(function(){if(J&&!K){N("timeout")}},M.timeout)}}try{J.send(M.data)}catch(S){o.handleError(M,J,null,S)}if(!M.async){N()}function I(){if(M.success){M.success(V,R)}if(M.global){o.event.trigger("ajaxSuccess",[J,M])}}function L(){if(M.complete){M.complete(J,R)}if(M.global){o.event.trigger("ajaxComplete",[J,M])}if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}return J},handleError:function(F,H,E,G){if(F.error){F.error(H,E,G)}if(F.global){o.event.trigger("ajaxError",[H,F,G])}},active:0,httpSuccess:function(F){try{return !F.status&&location.protocol=="file:"||(F.status>=200&&F.status<300)||F.status==304||F.status==1223}catch(E){}return false},httpNotModified:function(G,E){try{var H=G.getResponseHeader("Last-Modified");return G.status==304||H==o.lastModified[E]}catch(F){}return false},httpData:function(J,H,G){var F=J.getResponseHeader("content-type"),E=H=="xml"||!H&&F&&F.indexOf("xml")>=0,I=E?J.responseXML:J.responseText;if(E&&I.documentElement.tagName=="parsererror"){throw"parsererror"}if(G&&G.dataFilter){I=G.dataFilter(I,H)}if(typeof I==="string"){if(H=="script"){o.globalEval(I)}if(H=="json"){I=l["eval"]("("+I+")")}}return I},param:function(E){var G=[];function H(I,J){G[G.length]=encodeURIComponent(I)+"="+encodeURIComponent(J)}if(o.isArray(E)||E.jquery){o.each(E,function(){H(this.name,this.value)})}else{for(var F in E){if(o.isArray(E[F])){o.each(E[F],function(){H(F,this)})}else{H(F,o.isFunction(E[F])?E[F]():E[F])}}}return G.join("&").replace(/%20/g,"+")}});var m={},n,d=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];function t(F,E){var G={};o.each(d.concat.apply([],d.slice(0,E)),function(){G[this]=F});return G}o.fn.extend({show:function(J,L){if(J){return this.animate(t("show",3),J,L)}else{for(var H=0,F=this.length;H<F;H++){var E=o.data(this[H],"olddisplay");this[H].style.display=E||"";if(o.css(this[H],"display")==="none"){var G=this[H].tagName,K;if(m[G]){K=m[G]}else{var I=o("<"+G+" />").appendTo("body");K=I.css("display");if(K==="none"){K="block"}I.remove();m[G]=K}o.data(this[H],"olddisplay",K)}}for(var H=0,F=this.length;H<F;H++){this[H].style.display=o.data(this[H],"olddisplay")||""}return this}},hide:function(H,I){if(H){return this.animate(t("hide",3),H,I)}else{for(var G=0,F=this.length;G<F;G++){var E=o.data(this[G],"olddisplay");if(!E&&E!=="none"){o.data(this[G],"olddisplay",o.css(this[G],"display"))}}for(var G=0,F=this.length;G<F;G++){this[G].style.display="none"}return this}},_toggle:o.fn.toggle,toggle:function(G,F){var E=typeof G==="boolean";return o.isFunction(G)&&o.isFunction(F)?this._toggle.apply(this,arguments):G==null||E?this.each(function(){var H=E?G:o(this).is(":hidden");o(this)[H?"show":"hide"]()}):this.animate(t("toggle",3),G,F)},fadeTo:function(E,G,F){return this.animate({opacity:G},E,F)},animate:function(I,F,H,G){var E=o.speed(F,H,G);return this[E.queue===false?"each":"queue"](function(){var K=o.extend({},E),M,L=this.nodeType==1&&o(this).is(":hidden"),J=this;for(M in I){if(I[M]=="hide"&&L||I[M]=="show"&&!L){return K.complete.call(this)}if((M=="height"||M=="width")&&this.style){K.display=o.css(this,"display");K.overflow=this.style.overflow}}if(K.overflow!=null){this.style.overflow="hidden"}K.curAnim=o.extend({},I);o.each(I,function(O,S){var R=new o.fx(J,K,O);if(/toggle|show|hide/.test(S)){R[S=="toggle"?L?"show":"hide":S](I)}else{var Q=S.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),T=R.cur(true)||0;if(Q){var N=parseFloat(Q[2]),P=Q[3]||"px";if(P!="px"){J.style[O]=(N||1)+P;T=((N||1)/R.cur(true))*T;J.style[O]=T+P}if(Q[1]){N=((Q[1]=="-="?-1:1)*N)+T}R.custom(T,N,P)}else{R.custom(T,S,"")}}});return true})},stop:function(F,E){var G=o.timers;if(F){this.queue([])}this.each(function(){for(var H=G.length-1;H>=0;H--){if(G[H].elem==this){if(E){G[H](true)}G.splice(H,1)}}});if(!E){this.dequeue()}return this}});o.each({slideDown:t("show",1),slideUp:t("hide",1),slideToggle:t("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(E,F){o.fn[E]=function(G,H){return this.animate(F,G,H)}});o.extend({speed:function(G,H,F){var E=typeof G==="object"?G:{complete:F||!F&&H||o.isFunction(G)&&G,duration:G,easing:F&&H||H&&!o.isFunction(H)&&H};E.duration=o.fx.off?0:typeof E.duration==="number"?E.duration:o.fx.speeds[E.duration]||o.fx.speeds._default;E.old=E.complete;E.complete=function(){if(E.queue!==false){o(this).dequeue()}if(o.isFunction(E.old)){E.old.call(this)}};return E},easing:{linear:function(G,H,E,F){return E+F*G},swing:function(G,H,E,F){return((-Math.cos(G*Math.PI)/2)+0.5)*F+E}},timers:[],fx:function(F,E,G){this.options=E;this.elem=F;this.prop=G;if(!E.orig){E.orig={}}}});o.fx.prototype={update:function(){if(this.options.step){this.options.step.call(this.elem,this.now,this)}(o.fx.step[this.prop]||o.fx.step._default)(this);if((this.prop=="height"||this.prop=="width")&&this.elem.style){this.elem.style.display="block"}},cur:function(F){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)){return this.elem[this.prop]}var E=parseFloat(o.css(this.elem,this.prop,F));return E&&E>-10000?E:parseFloat(o.curCSS(this.elem,this.prop))||0},custom:function(I,H,G){this.startTime=e();this.start=I;this.end=H;this.unit=G||this.unit||"px";this.now=this.start;this.pos=this.state=0;var E=this;function F(J){return E.step(J)}F.elem=this.elem;if(F()&&o.timers.push(F)&&!n){n=setInterval(function(){var K=o.timers;for(var J=0;J<K.length;J++){if(!K[J]()){K.splice(J--,1)}}if(!K.length){clearInterval(n);n=g}},13)}},show:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.show=true;this.custom(this.prop=="width"||this.prop=="height"?1:0,this.cur());o(this.elem).show()},hide:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.hide=true;this.custom(this.cur(),0)},step:function(H){var G=e();if(H||G>=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var E=true;for(var F in this.options.curAnim){if(this.options.curAnim[F]!==true){E=false}}if(E){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(o.css(this.elem,"display")=="none"){this.elem.style.display="block"}}if(this.options.hide){o(this.elem).hide()}if(this.options.hide||this.options.show){for(var I in this.options.curAnim){o.attr(this.elem.style,I,this.options.orig[I])}}this.options.complete.call(this.elem)}return false}else{var J=G-this.startTime;this.state=J/this.options.duration;this.pos=o.easing[this.options.easing||(o.easing.swing?"swing":"linear")](this.state,J,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update()}return true}};o.extend(o.fx,{speeds:{slow:600,fast:200,_default:400},step:{opacity:function(E){o.attr(E.elem.style,"opacity",E.now)},_default:function(E){if(E.elem.style&&E.elem.style[E.prop]!=null){E.elem.style[E.prop]=E.now+E.unit}else{E.elem[E.prop]=E.now}}}});if(document.documentElement.getBoundingClientRect){o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}var G=this[0].getBoundingClientRect(),J=this[0].ownerDocument,F=J.body,E=J.documentElement,L=E.clientTop||F.clientTop||0,K=E.clientLeft||F.clientLeft||0,I=G.top+(self.pageYOffset||o.boxModel&&E.scrollTop||F.scrollTop)-L,H=G.left+(self.pageXOffset||o.boxModel&&E.scrollLeft||F.scrollLeft)-K;return{top:I,left:H}}}else{o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}o.offset.initialized||o.offset.initialize();var J=this[0],G=J.offsetParent,F=J,O=J.ownerDocument,M,H=O.documentElement,K=O.body,L=O.defaultView,E=L.getComputedStyle(J,null),N=J.offsetTop,I=J.offsetLeft;while((J=J.parentNode)&&J!==K&&J!==H){M=L.getComputedStyle(J,null);N-=J.scrollTop,I-=J.scrollLeft;if(J===G){N+=J.offsetTop,I+=J.offsetLeft;if(o.offset.doesNotAddBorder&&!(o.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(J.tagName))){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}F=G,G=J.offsetParent}if(o.offset.subtractsBorderForOverflowNotVisible&&M.overflow!=="visible"){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}E=M}if(E.position==="relative"||E.position==="static"){N+=K.offsetTop,I+=K.offsetLeft}if(E.position==="fixed"){N+=Math.max(H.scrollTop,K.scrollTop),I+=Math.max(H.scrollLeft,K.scrollLeft)}return{top:N,left:I}}}o.offset={initialize:function(){if(this.initialized){return}var L=document.body,F=document.createElement("div"),H,G,N,I,M,E,J=L.style.marginTop,K='<div style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;"><div></div></div><table style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;" cellpadding="0" cellspacing="0"><tr><td></td></tr></table>';M={position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"};for(E in M){F.style[E]=M[E]}F.innerHTML=K;L.insertBefore(F,L.firstChild);H=F.firstChild,G=H.firstChild,I=H.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(G.offsetTop!==5);this.doesAddBorderForTableAndCells=(I.offsetTop===5);H.style.overflow="hidden",H.style.position="relative";this.subtractsBorderForOverflowNotVisible=(G.offsetTop===-5);L.style.marginTop="1px";this.doesNotIncludeMarginInBodyOffset=(L.offsetTop===0);L.style.marginTop=J;L.removeChild(F);this.initialized=true},bodyOffset:function(E){o.offset.initialized||o.offset.initialize();var G=E.offsetTop,F=E.offsetLeft;if(o.offset.doesNotIncludeMarginInBodyOffset){G+=parseInt(o.curCSS(E,"marginTop",true),10)||0,F+=parseInt(o.curCSS(E,"marginLeft",true),10)||0}return{top:G,left:F}}};o.fn.extend({position:function(){var I=0,H=0,F;if(this[0]){var G=this.offsetParent(),J=this.offset(),E=/^body|html$/i.test(G[0].tagName)?{top:0,left:0}:G.offset();J.top-=j(this,"marginTop");J.left-=j(this,"marginLeft");E.top+=j(G,"borderTopWidth");E.left+=j(G,"borderLeftWidth");F={top:J.top-E.top,left:J.left-E.left}}return F},offsetParent:function(){var E=this[0].offsetParent||document.body;while(E&&(!/^body|html$/i.test(E.tagName)&&o.css(E,"position")=="static")){E=E.offsetParent}return o(E)}});o.each(["Left","Top"],function(F,E){var G="scroll"+E;o.fn[G]=function(H){if(!this[0]){return null}return H!==g?this.each(function(){this==l||this==document?l.scrollTo(!F?H:o(l).scrollLeft(),F?H:o(l).scrollTop()):this[G]=H}):this[0]==l||this[0]==document?self[F?"pageYOffset":"pageXOffset"]||o.boxModel&&document.documentElement[G]||document.body[G]:this[0][G]}});o.each(["Height","Width"],function(I,G){var E=I?"Left":"Top",H=I?"Right":"Bottom",F=G.toLowerCase();o.fn["inner"+G]=function(){return this[0]?o.css(this[0],F,false,"padding"):null};o.fn["outer"+G]=function(K){return this[0]?o.css(this[0],F,false,K?"margin":"border"):null};var J=G.toLowerCase();o.fn[J]=function(K){return this[0]==l?document.compatMode=="CSS1Compat"&&document.documentElement["client"+G]||document.body["client"+G]:this[0]==document?Math.max(document.documentElement["client"+G],document.body["scroll"+G],document.documentElement["scroll"+G],document.body["offset"+G],document.documentElement["offset"+G]):K===g?(this.length?o.css(this[0],J):null):this.css(J,typeof K==="string"?K:K+"px")}})})();
\ No newline at end of file diff --git a/examples/lessons/6_English_alphabeticalOrder/js/lesson.js b/examples/lessons/6_English_alphabeticalOrder/js/lesson.js deleted file mode 100755 index c128d56..0000000 --- a/examples/lessons/6_English_alphabeticalOrder/js/lesson.js +++ /dev/null @@ -1,213 +0,0 @@ -$(document).ready(function(){ - var k = Karma({ - audio: [{'name':'correct','file':'correct.ogg'}, - {'name':'incorrect','file':'incorrect.ogg'} - ]}); - - k.ready(function(){ - var i,j,flag; - var TOTAL_QUES = 6; - var TOTAL_LEVEL = 3; - var currentDragObject; - var randPositions = []; - var arrangedAns = []; - var sectionNum; //store the three levels values 0,1,2 - var currentAlphaNum; //store the current questions num - var checked; //store the current checked value - var num; - var currentAnsArray = []; //store the current array set of alphabets - var flag_checked; //status flag for one time correct alpahbetical order - var imgCounter; - // six alphabets given to be ordered 6 steps needed to complete the picture 3 levels too complex - var alphabets = new Array('aeroplane','apple','ant','arrow','audio','axe', - 'eagle','ear','east','egg','elephant','engine', - 'fan','fall','fat','first','fog','fun', - 'egg','goat','ladder','leaf','net','tiger', - 'crocodile','deer','elephant','lion','rhinosorous','tiger', - 'bus','flag','glass','nose','pencil','table', - 'bag','ball','banana','bat','bed','bone', - 'cat','camera','class','color','country','cream', - 'cat','cow','dog','donkey','hen','rabbit', - 'dam','dark','den','dog','drink','duck', - 'glass','nail','picture','radio','star','watch', - 'bus','flag','glass','nose','pencil','table', - 'magic','man','many','master','miracle','mouse', - 'pan','pencil','pig','pot','practice','pumpkin', - 'salte','school','short','smile','snake','stick', - 'axe','mountain','plate','umbrella','volley-ball','x-ray', - 'television','temple','toggle','trap','trust','turn', - 'bottle','fish','house','pan','tree','window' - ); - var imageDisplay = new Array('ele0','ele1','ele2','ele3','ele4','ele5','house0','house1','house2','house3','house4','house5', - 'ship0','ship1','ship2','ship3','ship4','ship5'); - var scoreboard = $('#score_box').scoreboard({'layout':'horizontal', - 'winningScore': alphabets.length}); - - var genRandPosition=function (){ - randPositions[0] = k.rand(0,TOTAL_QUES-1); - for(i=1; i<TOTAL_QUES; i++){ - do{ - flag = 0; - randPositions[i] = k.rand(0,TOTAL_QUES-1); - for(j=0; j<i; j++){ - if(randPositions[i] === randPositions[j]){ - flag++; - } - } - }while(flag != 0 ); //end of do while loop - } - }; - var assignAlphabets = function (alphaId){ - var alphaCloudId = 1; //for positioning only - if(alphaId>2){ - alphaCloudId = 2; - } - var alphaCurId = alphaId + (currentAlphaNum*TOTAL_QUES); - $('#alphaCloud'+alphaCloudId).append('<div id="drag'+alphaId+'" class="dragObjects">'+alphabets[alphaCurId]+'</div>'); - var dragObjCss = { - 'position':'relative','float': 'left','cursor': 'move', - 'width':'100px','height':'30px','padding-left': '20px', - 'font':'20px/25px bold Arial,Verdana,Geneva,Helvetica' - }; - $('.dragObjects').css(dragObjCss); - - $('#alphaArrange').append('<div id="drop'+num+'" class="dropObjects"></div>'); - var dropObjCss = { - 'width':'222px','height': '33px','margin': '0.65em 0.5em' - }; - $('.dropObjects').css(dropObjCss); - num++; - }; - - function drag_drop(){ - $('.dragObjects').draggable({ containment: '#content'}); - $('.dragObjects').bind('dragstart', function(event, ui) { - currentDragObject = event.target.id; - var currentMonth = parseInt(currentDragObject.substring(4)); - - }); - - $(".dropObjects").droppable({ tolerence: 'intersect' ,hoverClass: 'drophover' }); - $('.dropObjects').bind('drop', function(event, ui) { - var currentDropObject = event.target.id; - var droppedWord = parseInt(currentDropObject.substring(4)); - arrangedAns[droppedWord] = $('#'+currentDragObject).text(); - }); - } - var display_control = function(){ - if(checked === 1){ - $('#disImg'+imgCounter).show(); - imgCounter++; - next_alphabets(); - } - - }; - var delay_correctShow = function(){ - document.delayForm.delayval.value = 1; - $('#checkAnswer').hide(); - if(currentAlphaNum%6 === 0 && currentAlphaNum != 0){ //next level - $('#section').html(''); - $('#linkNext').show(); - } - else{ - display_control(); - } - }; - - var check_alphabets_order = function(){ - var correct = 0; - for(i=0; i<TOTAL_QUES; i++){ - //var alpha = i+(currentAlphaNum*TOTAL_QUES); - if(arrangedAns[i] === currentAnsArray[i] && arrangedAns.length != 0){ - correct++; - } - } - $('#checkAnswer').show(); - if(correct === TOTAL_QUES){ - if(flag_checked === 0){ - scoreboard.scoreboard('inc'); - } - currentAlphaNum++; - checked = 1; - k.audio.correct.play(); - $('#checkAnswer').html('<img src="assets/image/correct.png">'); - scoreboard.scoreboard('incTotal'); - } - else{ - k.audio.incorrect.play(); - $('#checkAnswer').html('<img src="assets/image/incorrect.png">'); - checked = 0; - flag_checked = 1; - } - - t=setTimeout(function(){delay_correctShow();},1000); - - - - - }; - var display_game_over = function(){ - - $('#section').hide(); - $('#gameOver').show(); - $('#gameOver').html(''); - $('#gameOver').append('GAME OVER<br/>Congratulations!!!'); - }; - var next_alphabets = function(){ - if(currentAlphaNum === alphabets.length){ //show all - display_game_over(); - } - else{ - $('#section').html('').append('<div id="alphaCloud1"></div>'); - $('#section').append('<div id="alphaCloud2"></div>'); - $('#section').append('<div id="topText">Rearrange the above words in alphabetical order.</div>'); - $('#section').append('<div id="alphaArrange"></div>'); - genRandPosition(); - num = 0; - flag_checked = 0; - for(i = 0; i< TOTAL_QUES ; i++){ - assignAlphabets(randPositions[i]); - } - for(i = 0;i<TOTAL_QUES;i++){ - var curAlphabet = (currentAlphaNum*TOTAL_QUES)+i; - currentAnsArray[i] = alphabets[curAlphabet]; - } - currentAnsArray.sort(); - drag_drop(); - - } - }; - function game_start(){ - $('#gameOver').hide(); - $('#displayImgArea').show(); - $('#displayImgArea').html(''); - imgCounter = 0; - for(i = 0;i<TOTAL_QUES;i++){ - imgId = i + (sectionNum*TOTAL_QUES); - $('#displayImgArea').append('<img id="disImg'+i+'" class="imgDisplay" src="assets/image/'+imageDisplay[imgId]+'.png" width="30%" height="50%">'); - $('#disImg'+i).hide(); - } - next_alphabets(); - } - $('#linkNext').hide(); - $('#linkCheck').click(function(){ - check_alphabets_order(); - }); - $('#linkNext').click(function(){ - $('#linkNext').hide(); - sectionNum += 1; - game_start(); - }); - $('#linkStart').click(function(){ - sectionNum = 0; - currentAlphaNum = 0; - game_start(); - }); - - $('#linkPlayAgain').click(function(){ - scoreboard.scoreboard('reset'); - currentAlphaNum = sectionNum*currentAlphaNum; - game_start(); - }); - }); //end of k.ready -}); //end of document.ready
\ No newline at end of file diff --git a/examples/lessons/6_English_alphabeticalOrder/js/ui.draggable.js b/examples/lessons/6_English_alphabeticalOrder/js/ui.draggable.js deleted file mode 100755 index 0402f0e..0000000 --- a/examples/lessons/6_English_alphabeticalOrder/js/ui.draggable.js +++ /dev/null @@ -1,766 +0,0 @@ -/* - * jQuery UI Draggable 1.7.2 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Draggables - * - * Depends: - * ui.core.js - */ -(function($) { - -$.widget("ui.draggable", $.extend({}, $.ui.mouse, { - - _init: function() { - - if (this.options.helper == 'original' && !(/^(?:r|a|f)/).test(this.element.css("position"))) - this.element[0].style.position = 'relative'; - - (this.options.addClasses && this.element.addClass("ui-draggable")); - (this.options.disabled && this.element.addClass("ui-draggable-disabled")); - - this._mouseInit(); - - }, - - destroy: function() { - if(!this.element.data('draggable')) return; - this.element - .removeData("draggable") - .unbind(".draggable") - .removeClass("ui-draggable" - + " ui-draggable-dragging" - + " ui-draggable-disabled"); - this._mouseDestroy(); - }, - - _mouseCapture: function(event) { - - var o = this.options; - - if (this.helper || o.disabled || $(event.target).is('.ui-resizable-handle')) - return false; - - //Quit if we're not on a valid handle - this.handle = this._getHandle(event); - if (!this.handle) - return false; - - return true; - - }, - - _mouseStart: function(event) { - - var o = this.options; - - //Create and append the visible helper - this.helper = this._createHelper(event); - - //Cache the helper size - this._cacheHelperProportions(); - - //If ddmanager is used for droppables, set the global draggable - if($.ui.ddmanager) - $.ui.ddmanager.current = this; - - /* - * - Position generation - - * This block generates everything position related - it's the core of draggables. - */ - - //Cache the margins of the original element - this._cacheMargins(); - - //Store the helper's css position - this.cssPosition = this.helper.css("position"); - this.scrollParent = this.helper.scrollParent(); - - //The element's absolute position on the page minus margins - this.offset = this.element.offset(); - this.offset = { - top: this.offset.top - this.margins.top, - left: this.offset.left - this.margins.left - }; - - $.extend(this.offset, { - click: { //Where the click happened, relative to the element - left: event.pageX - this.offset.left, - top: event.pageY - this.offset.top - }, - parent: this._getParentOffset(), - relative: this._getRelativeOffset() //This is a relative to absolute position minus the actual position calculation - only used for relative positioned helper - }); - - //Generate the original position - this.originalPosition = this._generatePosition(event); - this.originalPageX = event.pageX; - this.originalPageY = event.pageY; - - //Adjust the mouse offset relative to the helper if 'cursorAt' is supplied - if(o.cursorAt) - this._adjustOffsetFromHelper(o.cursorAt); - - //Set a containment if given in the options - if(o.containment) - this._setContainment(); - - //Call plugins and callbacks - this._trigger("start", event); - - //Recache the helper size - this._cacheHelperProportions(); - - //Prepare the droppable offsets - if ($.ui.ddmanager && !o.dropBehaviour) - $.ui.ddmanager.prepareOffsets(this, event); - - this.helper.addClass("ui-draggable-dragging"); - this._mouseDrag(event, true); //Execute the drag once - this causes the helper not to be visible before getting its correct position - return true; - }, - - _mouseDrag: function(event, noPropagation) { - - //Compute the helpers position - this.position = this._generatePosition(event); - this.positionAbs = this._convertPositionTo("absolute"); - - //Call plugins and callbacks and use the resulting position if something is returned - if (!noPropagation) { - var ui = this._uiHash(); - this._trigger('drag', event, ui); - this.position = ui.position; - } - - if(!this.options.axis || this.options.axis != "y") this.helper[0].style.left = this.position.left+'px'; - if(!this.options.axis || this.options.axis != "x") this.helper[0].style.top = this.position.top+'px'; - if($.ui.ddmanager) $.ui.ddmanager.drag(this, event); - - return false; - }, - - _mouseStop: function(event) { - - //If we are using droppables, inform the manager about the drop - var dropped = false; - if ($.ui.ddmanager && !this.options.dropBehaviour) - dropped = $.ui.ddmanager.drop(this, event); - - //if a drop comes from outside (a sortable) - if(this.dropped) { - dropped = this.dropped; - this.dropped = false; - } - - if((this.options.revert == "invalid" && !dropped) || (this.options.revert == "valid" && dropped) || this.options.revert === true || ($.isFunction(this.options.revert) && this.options.revert.call(this.element, dropped))) { - var self = this; - $(this.helper).animate(this.originalPosition, parseInt(this.options.revertDuration, 10), function() { - self._trigger("stop", event); - self._clear(); - }); - } else { - this._trigger("stop", event); - this._clear(); - } - - return false; - }, - - _getHandle: function(event) { - - var handle = !this.options.handle || !$(this.options.handle, this.element).length ? true : false; - $(this.options.handle, this.element) - .find("*") - .andSelf() - .each(function() { - if(this == event.target) handle = true; - }); - - return handle; - - }, - - _createHelper: function(event) { - - var o = this.options; - var helper = $.isFunction(o.helper) ? $(o.helper.apply(this.element[0], [event])) : (o.helper == 'clone' ? this.element.clone() : this.element); - - if(!helper.parents('body').length) - helper.appendTo((o.appendTo == 'parent' ? this.element[0].parentNode : o.appendTo)); - - if(helper[0] != this.element[0] && !(/(fixed|absolute)/).test(helper.css("position"))) - helper.css("position", "absolute"); - - return helper; - - }, - - _adjustOffsetFromHelper: function(obj) { - if(obj.left != undefined) this.offset.click.left = obj.left + this.margins.left; - if(obj.right != undefined) this.offset.click.left = this.helperProportions.width - obj.right + this.margins.left; - if(obj.top != undefined) this.offset.click.top = obj.top + this.margins.top; - if(obj.bottom != undefined) this.offset.click.top = this.helperProportions.height - obj.bottom + this.margins.top; - }, - - _getParentOffset: function() { - - //Get the offsetParent and cache its position - this.offsetParent = this.helper.offsetParent(); - var po = this.offsetParent.offset(); - - // This is a special case where we need to modify a offset calculated on start, since the following happened: - // 1. The position of the helper is absolute, so it's position is calculated based on the next positioned parent - // 2. The actual offset parent is a child of the scroll parent, and the scroll parent isn't the document, which means that - // the scroll is included in the initial calculation of the offset of the parent, and never recalculated upon drag - if(this.cssPosition == 'absolute' && this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) { - po.left += this.scrollParent.scrollLeft(); - po.top += this.scrollParent.scrollTop(); - } - - if((this.offsetParent[0] == document.body) //This needs to be actually done for all browsers, since pageX/pageY includes this information - || (this.offsetParent[0].tagName && this.offsetParent[0].tagName.toLowerCase() == 'html' && $.browser.msie)) //Ugly IE fix - po = { top: 0, left: 0 }; - - return { - top: po.top + (parseInt(this.offsetParent.css("borderTopWidth"),10) || 0), - left: po.left + (parseInt(this.offsetParent.css("borderLeftWidth"),10) || 0) - }; - - }, - - _getRelativeOffset: function() { - - if(this.cssPosition == "relative") { - var p = this.element.position(); - return { - top: p.top - (parseInt(this.helper.css("top"),10) || 0) + this.scrollParent.scrollTop(), - left: p.left - (parseInt(this.helper.css("left"),10) || 0) + this.scrollParent.scrollLeft() - }; - } else { - return { top: 0, left: 0 }; - } - - }, - - _cacheMargins: function() { - this.margins = { - left: (parseInt(this.element.css("marginLeft"),10) || 0), - top: (parseInt(this.element.css("marginTop"),10) || 0) - }; - }, - - _cacheHelperProportions: function() { - this.helperProportions = { - width: this.helper.outerWidth(), - height: this.helper.outerHeight() - }; - }, - - _setContainment: function() { - - var o = this.options; - if(o.containment == 'parent') o.containment = this.helper[0].parentNode; - if(o.containment == 'document' || o.containment == 'window') this.containment = [ - 0 - this.offset.relative.left - this.offset.parent.left, - 0 - this.offset.relative.top - this.offset.parent.top, - $(o.containment == 'document' ? document : window).width() - this.helperProportions.width - this.margins.left, - ($(o.containment == 'document' ? document : window).height() || document.body.parentNode.scrollHeight) - this.helperProportions.height - this.margins.top - ]; - - if(!(/^(document|window|parent)$/).test(o.containment) && o.containment.constructor != Array) { - var ce = $(o.containment)[0]; if(!ce) return; - var co = $(o.containment).offset(); - var over = ($(ce).css("overflow") != 'hidden'); - - this.containment = [ - co.left + (parseInt($(ce).css("borderLeftWidth"),10) || 0) + (parseInt($(ce).css("paddingLeft"),10) || 0) - this.margins.left, - co.top + (parseInt($(ce).css("borderTopWidth"),10) || 0) + (parseInt($(ce).css("paddingTop"),10) || 0) - this.margins.top, - co.left+(over ? Math.max(ce.scrollWidth,ce.offsetWidth) : ce.offsetWidth) - (parseInt($(ce).css("borderLeftWidth"),10) || 0) - (parseInt($(ce).css("paddingRight"),10) || 0) - this.helperProportions.width - this.margins.left, - co.top+(over ? Math.max(ce.scrollHeight,ce.offsetHeight) : ce.offsetHeight) - (parseInt($(ce).css("borderTopWidth"),10) || 0) - (parseInt($(ce).css("paddingBottom"),10) || 0) - this.helperProportions.height - this.margins.top - ]; - } else if(o.containment.constructor == Array) { - this.containment = o.containment; - } - - }, - - _convertPositionTo: function(d, pos) { - - if(!pos) pos = this.position; - var mod = d == "absolute" ? 1 : -1; - var o = this.options, scroll = this.cssPosition == 'absolute' && !(this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent, scrollIsRootNode = (/(html|body)/i).test(scroll[0].tagName); - - return { - top: ( - pos.top // The absolute mouse position - + this.offset.relative.top * mod // Only for relative positioned nodes: Relative offset from element to offset parent - + this.offset.parent.top * mod // The offsetParent's offset without borders (offset + border) - - ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollTop() : ( scrollIsRootNode ? 0 : scroll.scrollTop() ) ) * mod) - ), - left: ( - pos.left // The absolute mouse position - + this.offset.relative.left * mod // Only for relative positioned nodes: Relative offset from element to offset parent - + this.offset.parent.left * mod // The offsetParent's offset without borders (offset + border) - - ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollLeft() : scrollIsRootNode ? 0 : scroll.scrollLeft() ) * mod) - ) - }; - - }, - - _generatePosition: function(event) { - - var o = this.options, scroll = this.cssPosition == 'absolute' && !(this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent, scrollIsRootNode = (/(html|body)/i).test(scroll[0].tagName); - - // This is another very weird special case that only happens for relative elements: - // 1. If the css position is relative - // 2. and the scroll parent is the document or similar to the offset parent - // we have to refresh the relative offset during the scroll so there are no jumps - if(this.cssPosition == 'relative' && !(this.scrollParent[0] != document && this.scrollParent[0] != this.offsetParent[0])) { - this.offset.relative = this._getRelativeOffset(); - } - - var pageX = event.pageX; - var pageY = event.pageY; - - /* - * - Position constraining - - * Constrain the position to a mix of grid, containment. - */ - - if(this.originalPosition) { //If we are not dragging yet, we won't check for options - - if(this.containment) { - if(event.pageX - this.offset.click.left < this.containment[0]) pageX = this.containment[0] + this.offset.click.left; - if(event.pageY - this.offset.click.top < this.containment[1]) pageY = this.containment[1] + this.offset.click.top; - if(event.pageX - this.offset.click.left > this.containment[2]) pageX = this.containment[2] + this.offset.click.left; - if(event.pageY - this.offset.click.top > this.containment[3]) pageY = this.containment[3] + this.offset.click.top; - } - - if(o.grid) { - var top = this.originalPageY + Math.round((pageY - this.originalPageY) / o.grid[1]) * o.grid[1]; - pageY = this.containment ? (!(top - this.offset.click.top < this.containment[1] || top - this.offset.click.top > this.containment[3]) ? top : (!(top - this.offset.click.top < this.containment[1]) ? top - o.grid[1] : top + o.grid[1])) : top; - - var left = this.originalPageX + Math.round((pageX - this.originalPageX) / o.grid[0]) * o.grid[0]; - pageX = this.containment ? (!(left - this.offset.click.left < this.containment[0] || left - this.offset.click.left > this.containment[2]) ? left : (!(left - this.offset.click.left < this.containment[0]) ? left - o.grid[0] : left + o.grid[0])) : left; - } - - } - - return { - top: ( - pageY // The absolute mouse position - - this.offset.click.top // Click offset (relative to the element) - - this.offset.relative.top // Only for relative positioned nodes: Relative offset from element to offset parent - - this.offset.parent.top // The offsetParent's offset without borders (offset + border) - + ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollTop() : ( scrollIsRootNode ? 0 : scroll.scrollTop() ) )) - ), - left: ( - pageX // The absolute mouse position - - this.offset.click.left // Click offset (relative to the element) - - this.offset.relative.left // Only for relative positioned nodes: Relative offset from element to offset parent - - this.offset.parent.left // The offsetParent's offset without borders (offset + border) - + ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollLeft() : scrollIsRootNode ? 0 : scroll.scrollLeft() )) - ) - }; - - }, - - _clear: function() { - this.helper.removeClass("ui-draggable-dragging"); - if(this.helper[0] != this.element[0] && !this.cancelHelperRemoval) this.helper.remove(); - //if($.ui.ddmanager) $.ui.ddmanager.current = null; - this.helper = null; - this.cancelHelperRemoval = false; - }, - - // From now on bulk stuff - mainly helpers - - _trigger: function(type, event, ui) { - ui = ui || this._uiHash(); - $.ui.plugin.call(this, type, [event, ui]); - if(type == "drag") this.positionAbs = this._convertPositionTo("absolute"); //The absolute position has to be recalculated after plugins - return $.widget.prototype._trigger.call(this, type, event, ui); - }, - - plugins: {}, - - _uiHash: function(event) { - return { - helper: this.helper, - position: this.position, - absolutePosition: this.positionAbs, //deprecated - offset: this.positionAbs - }; - } - -})); - -$.extend($.ui.draggable, { - version: "1.7.2", - eventPrefix: "drag", - defaults: { - addClasses: true, - appendTo: "parent", - axis: false, - cancel: ":input,option", - connectToSortable: false, - containment: false, - cursor: "auto", - cursorAt: false, - delay: 0, - distance: 1, - grid: false, - handle: false, - helper: "original", - iframeFix: false, - opacity: false, - refreshPositions: false, - revert: false, - revertDuration: 500, - scope: "default", - scroll: true, - scrollSensitivity: 20, - scrollSpeed: 20, - snap: false, - snapMode: "both", - snapTolerance: 20, - stack: false, - zIndex: false - } -}); - -$.ui.plugin.add("draggable", "connectToSortable", { - start: function(event, ui) { - - var inst = $(this).data("draggable"), o = inst.options, - uiSortable = $.extend({}, ui, { item: inst.element }); - inst.sortables = []; - $(o.connectToSortable).each(function() { - var sortable = $.data(this, 'sortable'); - if (sortable && !sortable.options.disabled) { - inst.sortables.push({ - instance: sortable, - shouldRevert: sortable.options.revert - }); - sortable._refreshItems(); //Do a one-time refresh at start to refresh the containerCache - sortable._trigger("activate", event, uiSortable); - } - }); - - }, - stop: function(event, ui) { - - //If we are still over the sortable, we fake the stop event of the sortable, but also remove helper - var inst = $(this).data("draggable"), - uiSortable = $.extend({}, ui, { item: inst.element }); - - $.each(inst.sortables, function() { - if(this.instance.isOver) { - - this.instance.isOver = 0; - - inst.cancelHelperRemoval = true; //Don't remove the helper in the draggable instance - this.instance.cancelHelperRemoval = false; //Remove it in the sortable instance (so sortable plugins like revert still work) - - //The sortable revert is supported, and we have to set a temporary dropped variable on the draggable to support revert: 'valid/invalid' - if(this.shouldRevert) this.instance.options.revert = true; - - //Trigger the stop of the sortable - this.instance._mouseStop(event); - - this.instance.options.helper = this.instance.options._helper; - - //If the helper has been the original item, restore properties in the sortable - if(inst.options.helper == 'original') - this.instance.currentItem.css({ top: 'auto', left: 'auto' }); - - } else { - this.instance.cancelHelperRemoval = false; //Remove the helper in the sortable instance - this.instance._trigger("deactivate", event, uiSortable); - } - - }); - - }, - drag: function(event, ui) { - - var inst = $(this).data("draggable"), self = this; - - var checkPos = function(o) { - var dyClick = this.offset.click.top, dxClick = this.offset.click.left; - var helperTop = this.positionAbs.top, helperLeft = this.positionAbs.left; - var itemHeight = o.height, itemWidth = o.width; - var itemTop = o.top, itemLeft = o.left; - - return $.ui.isOver(helperTop + dyClick, helperLeft + dxClick, itemTop, itemLeft, itemHeight, itemWidth); - }; - - $.each(inst.sortables, function(i) { - - //Copy over some variables to allow calling the sortable's native _intersectsWith - this.instance.positionAbs = inst.positionAbs; - this.instance.helperProportions = inst.helperProportions; - this.instance.offset.click = inst.offset.click; - - if(this.instance._intersectsWith(this.instance.containerCache)) { - - //If it intersects, we use a little isOver variable and set it once, so our move-in stuff gets fired only once - if(!this.instance.isOver) { - - this.instance.isOver = 1; - //Now we fake the start of dragging for the sortable instance, - //by cloning the list group item, appending it to the sortable and using it as inst.currentItem - //We can then fire the start event of the sortable with our passed browser event, and our own helper (so it doesn't create a new one) - this.instance.currentItem = $(self).clone().appendTo(this.instance.element).data("sortable-item", true); - this.instance.options._helper = this.instance.options.helper; //Store helper option to later restore it - this.instance.options.helper = function() { return ui.helper[0]; }; - - event.target = this.instance.currentItem[0]; - this.instance._mouseCapture(event, true); - this.instance._mouseStart(event, true, true); - - //Because the browser event is way off the new appended portlet, we modify a couple of variables to reflect the changes - this.instance.offset.click.top = inst.offset.click.top; - this.instance.offset.click.left = inst.offset.click.left; - this.instance.offset.parent.left -= inst.offset.parent.left - this.instance.offset.parent.left; - this.instance.offset.parent.top -= inst.offset.parent.top - this.instance.offset.parent.top; - - inst._trigger("toSortable", event); - inst.dropped = this.instance.element; //draggable revert needs that - //hack so receive/update callbacks work (mostly) - inst.currentItem = inst.element; - this.instance.fromOutside = inst; - - } - - //Provided we did all the previous steps, we can fire the drag event of the sortable on every draggable drag, when it intersects with the sortable - if(this.instance.currentItem) this.instance._mouseDrag(event); - - } else { - - //If it doesn't intersect with the sortable, and it intersected before, - //we fake the drag stop of the sortable, but make sure it doesn't remove the helper by using cancelHelperRemoval - if(this.instance.isOver) { - - this.instance.isOver = 0; - this.instance.cancelHelperRemoval = true; - - //Prevent reverting on this forced stop - this.instance.options.revert = false; - - // The out event needs to be triggered independently - this.instance._trigger('out', event, this.instance._uiHash(this.instance)); - - this.instance._mouseStop(event, true); - this.instance.options.helper = this.instance.options._helper; - - //Now we remove our currentItem, the list group clone again, and the placeholder, and animate the helper back to it's original size - this.instance.currentItem.remove(); - if(this.instance.placeholder) this.instance.placeholder.remove(); - - inst._trigger("fromSortable", event); - inst.dropped = false; //draggable revert needs that - } - - }; - - }); - - } -}); - -$.ui.plugin.add("draggable", "cursor", { - start: function(event, ui) { - var t = $('body'), o = $(this).data('draggable').options; - if (t.css("cursor")) o._cursor = t.css("cursor"); - t.css("cursor", o.cursor); - }, - stop: function(event, ui) { - var o = $(this).data('draggable').options; - if (o._cursor) $('body').css("cursor", o._cursor); - } -}); - -$.ui.plugin.add("draggable", "iframeFix", { - start: function(event, ui) { - var o = $(this).data('draggable').options; - $(o.iframeFix === true ? "iframe" : o.iframeFix).each(function() { - $('<div class="ui-draggable-iframeFix" style="background: #fff;"></div>') - .css({ - width: this.offsetWidth+"px", height: this.offsetHeight+"px", - position: "absolute", opacity: "0.001", zIndex: 1000 - }) - .css($(this).offset()) - .appendTo("body"); - }); - }, - stop: function(event, ui) { - $("div.ui-draggable-iframeFix").each(function() { this.parentNode.removeChild(this); }); //Remove frame helpers - } -}); - -$.ui.plugin.add("draggable", "opacity", { - start: function(event, ui) { - var t = $(ui.helper), o = $(this).data('draggable').options; - if(t.css("opacity")) o._opacity = t.css("opacity"); - t.css('opacity', o.opacity); - }, - stop: function(event, ui) { - var o = $(this).data('draggable').options; - if(o._opacity) $(ui.helper).css('opacity', o._opacity); - } -}); - -$.ui.plugin.add("draggable", "scroll", { - start: function(event, ui) { - var i = $(this).data("draggable"); - if(i.scrollParent[0] != document && i.scrollParent[0].tagName != 'HTML') i.overflowOffset = i.scrollParent.offset(); - }, - drag: function(event, ui) { - - var i = $(this).data("draggable"), o = i.options, scrolled = false; - - if(i.scrollParent[0] != document && i.scrollParent[0].tagName != 'HTML') { - - if(!o.axis || o.axis != 'x') { - if((i.overflowOffset.top + i.scrollParent[0].offsetHeight) - event.pageY < o.scrollSensitivity) - i.scrollParent[0].scrollTop = scrolled = i.scrollParent[0].scrollTop + o.scrollSpeed; - else if(event.pageY - i.overflowOffset.top < o.scrollSensitivity) - i.scrollParent[0].scrollTop = scrolled = i.scrollParent[0].scrollTop - o.scrollSpeed; - } - - if(!o.axis || o.axis != 'y') { - if((i.overflowOffset.left + i.scrollParent[0].offsetWidth) - event.pageX < o.scrollSensitivity) - i.scrollParent[0].scrollLeft = scrolled = i.scrollParent[0].scrollLeft + o.scrollSpeed; - else if(event.pageX - i.overflowOffset.left < o.scrollSensitivity) - i.scrollParent[0].scrollLeft = scrolled = i.scrollParent[0].scrollLeft - o.scrollSpeed; - } - - } else { - - if(!o.axis || o.axis != 'x') { - if(event.pageY - $(document).scrollTop() < o.scrollSensitivity) - scrolled = $(document).scrollTop($(document).scrollTop() - o.scrollSpeed); - else if($(window).height() - (event.pageY - $(document).scrollTop()) < o.scrollSensitivity) - scrolled = $(document).scrollTop($(document).scrollTop() + o.scrollSpeed); - } - - if(!o.axis || o.axis != 'y') { - if(event.pageX - $(document).scrollLeft() < o.scrollSensitivity) - scrolled = $(document).scrollLeft($(document).scrollLeft() - o.scrollSpeed); - else if($(window).width() - (event.pageX - $(document).scrollLeft()) < o.scrollSensitivity) - scrolled = $(document).scrollLeft($(document).scrollLeft() + o.scrollSpeed); - } - - } - - if(scrolled !== false && $.ui.ddmanager && !o.dropBehaviour) - $.ui.ddmanager.prepareOffsets(i, event); - - } -}); - -$.ui.plugin.add("draggable", "snap", { - start: function(event, ui) { - - var i = $(this).data("draggable"), o = i.options; - i.snapElements = []; - - $(o.snap.constructor != String ? ( o.snap.items || ':data(draggable)' ) : o.snap).each(function() { - var $t = $(this); var $o = $t.offset(); - if(this != i.element[0]) i.snapElements.push({ - item: this, - width: $t.outerWidth(), height: $t.outerHeight(), - top: $o.top, left: $o.left - }); - }); - - }, - drag: function(event, ui) { - - var inst = $(this).data("draggable"), o = inst.options; - var d = o.snapTolerance; - - var x1 = ui.offset.left, x2 = x1 + inst.helperProportions.width, - y1 = ui.offset.top, y2 = y1 + inst.helperProportions.height; - - for (var i = inst.snapElements.length - 1; i >= 0; i--){ - - var l = inst.snapElements[i].left, r = l + inst.snapElements[i].width, - t = inst.snapElements[i].top, b = t + inst.snapElements[i].height; - - //Yes, I know, this is insane ;) - if(!((l-d < x1 && x1 < r+d && t-d < y1 && y1 < b+d) || (l-d < x1 && x1 < r+d && t-d < y2 && y2 < b+d) || (l-d < x2 && x2 < r+d && t-d < y1 && y1 < b+d) || (l-d < x2 && x2 < r+d && t-d < y2 && y2 < b+d))) { - if(inst.snapElements[i].snapping) (inst.options.snap.release && inst.options.snap.release.call(inst.element, event, $.extend(inst._uiHash(), { snapItem: inst.snapElements[i].item }))); - inst.snapElements[i].snapping = false; - continue; - } - - if(o.snapMode != 'inner') { - var ts = Math.abs(t - y2) <= d; - var bs = Math.abs(b - y1) <= d; - var ls = Math.abs(l - x2) <= d; - var rs = Math.abs(r - x1) <= d; - if(ts) ui.position.top = inst._convertPositionTo("relative", { top: t - inst.helperProportions.height, left: 0 }).top - inst.margins.top; - if(bs) ui.position.top = inst._convertPositionTo("relative", { top: b, left: 0 }).top - inst.margins.top; - if(ls) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: l - inst.helperProportions.width }).left - inst.margins.left; - if(rs) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: r }).left - inst.margins.left; - } - - var first = (ts || bs || ls || rs); - - if(o.snapMode != 'outer') { - var ts = Math.abs(t - y1) <= d; - var bs = Math.abs(b - y2) <= d; - var ls = Math.abs(l - x1) <= d; - var rs = Math.abs(r - x2) <= d; - if(ts) ui.position.top = inst._convertPositionTo("relative", { top: t, left: 0 }).top - inst.margins.top; - if(bs) ui.position.top = inst._convertPositionTo("relative", { top: b - inst.helperProportions.height, left: 0 }).top - inst.margins.top; - if(ls) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: l }).left - inst.margins.left; - if(rs) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: r - inst.helperProportions.width }).left - inst.margins.left; - } - - if(!inst.snapElements[i].snapping && (ts || bs || ls || rs || first)) - (inst.options.snap.snap && inst.options.snap.snap.call(inst.element, event, $.extend(inst._uiHash(), { snapItem: inst.snapElements[i].item }))); - inst.snapElements[i].snapping = (ts || bs || ls || rs || first); - - }; - - } -}); - -$.ui.plugin.add("draggable", "stack", { - start: function(event, ui) { - - var o = $(this).data("draggable").options; - - var group = $.makeArray($(o.stack.group)).sort(function(a,b) { - return (parseInt($(a).css("zIndex"),10) || o.stack.min) - (parseInt($(b).css("zIndex"),10) || o.stack.min); - }); - - $(group).each(function(i) { - this.style.zIndex = o.stack.min + i; - }); - - this[0].style.zIndex = o.stack.min + group.length; - - } -}); - -$.ui.plugin.add("draggable", "zIndex", { - start: function(event, ui) { - var t = $(ui.helper), o = $(this).data("draggable").options; - if(t.css("zIndex")) o._zIndex = t.css("zIndex"); - t.css('zIndex', o.zIndex); - }, - stop: function(event, ui) { - var o = $(this).data("draggable").options; - if(o._zIndex) $(ui.helper).css('zIndex', o._zIndex); - } -}); - -})(jQuery); diff --git a/examples/lessons/6_English_alphabeticalOrder/js/ui.droppable.js b/examples/lessons/6_English_alphabeticalOrder/js/ui.droppable.js deleted file mode 100755 index 8e7be33..0000000 --- a/examples/lessons/6_English_alphabeticalOrder/js/ui.droppable.js +++ /dev/null @@ -1,282 +0,0 @@ -/* - * jQuery UI Droppable 1.7.2 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Droppables - * - * Depends: - * ui.core.js - * ui.draggable.js - */ -(function($) { - -$.widget("ui.droppable", { - - _init: function() { - - var o = this.options, accept = o.accept; - this.isover = 0; this.isout = 1; - - this.options.accept = this.options.accept && $.isFunction(this.options.accept) ? this.options.accept : function(d) { - return d.is(accept); - }; - - //Store the droppable's proportions - this.proportions = { width: this.element[0].offsetWidth, height: this.element[0].offsetHeight }; - - // Add the reference and positions to the manager - $.ui.ddmanager.droppables[this.options.scope] = $.ui.ddmanager.droppables[this.options.scope] || []; - $.ui.ddmanager.droppables[this.options.scope].push(this); - - (this.options.addClasses && this.element.addClass("ui-droppable")); - - }, - - destroy: function() { - var drop = $.ui.ddmanager.droppables[this.options.scope]; - for ( var i = 0; i < drop.length; i++ ) - if ( drop[i] == this ) - drop.splice(i, 1); - - this.element - .removeClass("ui-droppable ui-droppable-disabled") - .removeData("droppable") - .unbind(".droppable"); - }, - - _setData: function(key, value) { - - if(key == 'accept') { - this.options.accept = value && $.isFunction(value) ? value : function(d) { - return d.is(value); - }; - } else { - $.widget.prototype._setData.apply(this, arguments); - } - - }, - - _activate: function(event) { - var draggable = $.ui.ddmanager.current; - if(this.options.activeClass) this.element.addClass(this.options.activeClass); - (draggable && this._trigger('activate', event, this.ui(draggable))); - }, - - _deactivate: function(event) { - var draggable = $.ui.ddmanager.current; - if(this.options.activeClass) this.element.removeClass(this.options.activeClass); - (draggable && this._trigger('deactivate', event, this.ui(draggable))); - }, - - _over: function(event) { - - var draggable = $.ui.ddmanager.current; - if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return; // Bail if draggable and droppable are same element - - if (this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - if(this.options.hoverClass) this.element.addClass(this.options.hoverClass); - this._trigger('over', event, this.ui(draggable)); - } - - }, - - _out: function(event) { - - var draggable = $.ui.ddmanager.current; - if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return; // Bail if draggable and droppable are same element - - if (this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - if(this.options.hoverClass) this.element.removeClass(this.options.hoverClass); - this._trigger('out', event, this.ui(draggable)); - } - - }, - - _drop: function(event,custom) { - - var draggable = custom || $.ui.ddmanager.current; - if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return false; // Bail if draggable and droppable are same element - - var childrenIntersection = false; - this.element.find(":data(droppable)").not(".ui-draggable-dragging").each(function() { - var inst = $.data(this, 'droppable'); - if(inst.options.greedy && $.ui.intersect(draggable, $.extend(inst, { offset: inst.element.offset() }), inst.options.tolerance)) { - childrenIntersection = true; return false; - } - }); - if(childrenIntersection) return false; - - if(this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - if(this.options.activeClass) this.element.removeClass(this.options.activeClass); - if(this.options.hoverClass) this.element.removeClass(this.options.hoverClass); - this._trigger('drop', event, this.ui(draggable)); - return this.element; - } - - return false; - - }, - - ui: function(c) { - return { - draggable: (c.currentItem || c.element), - helper: c.helper, - position: c.position, - absolutePosition: c.positionAbs, //deprecated - offset: c.positionAbs - }; - } - -}); - -$.extend($.ui.droppable, { - version: "1.7.2", - eventPrefix: 'drop', - defaults: { - accept: '*', - activeClass: false, - addClasses: true, - greedy: false, - hoverClass: false, - scope: 'default', - tolerance: 'intersect' - } -}); - -$.ui.intersect = function(draggable, droppable, toleranceMode) { - - if (!droppable.offset) return false; - - var x1 = (draggable.positionAbs || draggable.position.absolute).left, x2 = x1 + draggable.helperProportions.width, - y1 = (draggable.positionAbs || draggable.position.absolute).top, y2 = y1 + draggable.helperProportions.height; - var l = droppable.offset.left, r = l + droppable.proportions.width, - t = droppable.offset.top, b = t + droppable.proportions.height; - - switch (toleranceMode) { - case 'fit': - return (l < x1 && x2 < r - && t < y1 && y2 < b); - break; - case 'intersect': - return (l < x1 + (draggable.helperProportions.width / 2) // Right Half - && x2 - (draggable.helperProportions.width / 2) < r // Left Half - && t < y1 + (draggable.helperProportions.height / 2) // Bottom Half - && y2 - (draggable.helperProportions.height / 2) < b ); // Top Half - break; - case 'pointer': - var draggableLeft = ((draggable.positionAbs || draggable.position.absolute).left + (draggable.clickOffset || draggable.offset.click).left), - draggableTop = ((draggable.positionAbs || draggable.position.absolute).top + (draggable.clickOffset || draggable.offset.click).top), - isOver = $.ui.isOver(draggableTop, draggableLeft, t, l, droppable.proportions.height, droppable.proportions.width); - return isOver; - break; - case 'touch': - return ( - (y1 >= t && y1 <= b) || // Top edge touching - (y2 >= t && y2 <= b) || // Bottom edge touching - (y1 < t && y2 > b) // Surrounded vertically - ) && ( - (x1 >= l && x1 <= r) || // Left edge touching - (x2 >= l && x2 <= r) || // Right edge touching - (x1 < l && x2 > r) // Surrounded horizontally - ); - break; - default: - return false; - break; - } - -}; - -/* - This manager tracks offsets of draggables and droppables -*/ -$.ui.ddmanager = { - current: null, - droppables: { 'default': [] }, - prepareOffsets: function(t, event) { - - var m = $.ui.ddmanager.droppables[t.options.scope]; - var type = event ? event.type : null; // workaround for #2317 - var list = (t.currentItem || t.element).find(":data(droppable)").andSelf(); - - droppablesLoop: for (var i = 0; i < m.length; i++) { - - if(m[i].options.disabled || (t && !m[i].options.accept.call(m[i].element[0],(t.currentItem || t.element)))) continue; //No disabled and non-accepted - for (var j=0; j < list.length; j++) { if(list[j] == m[i].element[0]) { m[i].proportions.height = 0; continue droppablesLoop; } }; //Filter out elements in the current dragged item - m[i].visible = m[i].element.css("display") != "none"; if(!m[i].visible) continue; //If the element is not visible, continue - - m[i].offset = m[i].element.offset(); - m[i].proportions = { width: m[i].element[0].offsetWidth, height: m[i].element[0].offsetHeight }; - - if(type == "mousedown") m[i]._activate.call(m[i], event); //Activate the droppable if used directly from draggables - - } - - }, - drop: function(draggable, event) { - - var dropped = false; - $.each($.ui.ddmanager.droppables[draggable.options.scope], function() { - - if(!this.options) return; - if (!this.options.disabled && this.visible && $.ui.intersect(draggable, this, this.options.tolerance)) - dropped = this._drop.call(this, event); - - if (!this.options.disabled && this.visible && this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - this.isout = 1; this.isover = 0; - this._deactivate.call(this, event); - } - - }); - return dropped; - - }, - drag: function(draggable, event) { - - //If you have a highly dynamic page, you might try this option. It renders positions every time you move the mouse. - if(draggable.options.refreshPositions) $.ui.ddmanager.prepareOffsets(draggable, event); - - //Run through all droppables and check their positions based on specific tolerance options - - $.each($.ui.ddmanager.droppables[draggable.options.scope], function() { - - if(this.options.disabled || this.greedyChild || !this.visible) return; - var intersects = $.ui.intersect(draggable, this, this.options.tolerance); - - var c = !intersects && this.isover == 1 ? 'isout' : (intersects && this.isover == 0 ? 'isover' : null); - if(!c) return; - - var parentInstance; - if (this.options.greedy) { - var parent = this.element.parents(':data(droppable):eq(0)'); - if (parent.length) { - parentInstance = $.data(parent[0], 'droppable'); - parentInstance.greedyChild = (c == 'isover' ? 1 : 0); - } - } - - // we just moved into a greedy child - if (parentInstance && c == 'isover') { - parentInstance['isover'] = 0; - parentInstance['isout'] = 1; - parentInstance._out.call(parentInstance, event); - } - - this[c] = 1; this[c == 'isout' ? 'isover' : 'isout'] = 0; - this[c == "isover" ? "_over" : "_out"].call(this, event); - - // we just moved out of a greedy child - if (parentInstance && c == 'isout') { - parentInstance['isout'] = 0; - parentInstance['isover'] = 1; - parentInstance._over.call(parentInstance, event); - } - }); - - } -}; - -})(jQuery); diff --git a/examples/lessons/6_English_months/assets/audio/April.wav b/examples/lessons/6_English_months/assets/audio/April.wav Binary files differdeleted file mode 100755 index a6ced1b..0000000 --- a/examples/lessons/6_English_months/assets/audio/April.wav +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/audio/August.wav b/examples/lessons/6_English_months/assets/audio/August.wav Binary files differdeleted file mode 100755 index 8ba28d0..0000000 --- a/examples/lessons/6_English_months/assets/audio/August.wav +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/audio/December.wav b/examples/lessons/6_English_months/assets/audio/December.wav Binary files differdeleted file mode 100755 index 42ee4bb..0000000 --- a/examples/lessons/6_English_months/assets/audio/December.wav +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/audio/February.wav b/examples/lessons/6_English_months/assets/audio/February.wav Binary files differdeleted file mode 100755 index 08da715..0000000 --- a/examples/lessons/6_English_months/assets/audio/February.wav +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/audio/January.wav b/examples/lessons/6_English_months/assets/audio/January.wav Binary files differdeleted file mode 100755 index 7a2d370..0000000 --- a/examples/lessons/6_English_months/assets/audio/January.wav +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/audio/July.wav b/examples/lessons/6_English_months/assets/audio/July.wav Binary files differdeleted file mode 100755 index eb73098..0000000 --- a/examples/lessons/6_English_months/assets/audio/July.wav +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/audio/June.wav b/examples/lessons/6_English_months/assets/audio/June.wav Binary files differdeleted file mode 100755 index ec2ce83..0000000 --- a/examples/lessons/6_English_months/assets/audio/June.wav +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/audio/March.wav b/examples/lessons/6_English_months/assets/audio/March.wav Binary files differdeleted file mode 100755 index 93d4885..0000000 --- a/examples/lessons/6_English_months/assets/audio/March.wav +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/audio/May.wav b/examples/lessons/6_English_months/assets/audio/May.wav Binary files differdeleted file mode 100755 index 09d3f47..0000000 --- a/examples/lessons/6_English_months/assets/audio/May.wav +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/audio/November.wav b/examples/lessons/6_English_months/assets/audio/November.wav Binary files differdeleted file mode 100755 index 24b265b..0000000 --- a/examples/lessons/6_English_months/assets/audio/November.wav +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/audio/October.wav b/examples/lessons/6_English_months/assets/audio/October.wav Binary files differdeleted file mode 100755 index 431b9c7..0000000 --- a/examples/lessons/6_English_months/assets/audio/October.wav +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/audio/September.wav b/examples/lessons/6_English_months/assets/audio/September.wav Binary files differdeleted file mode 100755 index b079f7c..0000000 --- a/examples/lessons/6_English_months/assets/audio/September.wav +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/image/April.png b/examples/lessons/6_English_months/assets/image/April.png Binary files differdeleted file mode 100755 index eb87cbe..0000000 --- a/examples/lessons/6_English_months/assets/image/April.png +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/image/August.png b/examples/lessons/6_English_months/assets/image/August.png Binary files differdeleted file mode 100755 index 96d59f1..0000000 --- a/examples/lessons/6_English_months/assets/image/August.png +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/image/December.png b/examples/lessons/6_English_months/assets/image/December.png Binary files differdeleted file mode 100755 index c060b1c..0000000 --- a/examples/lessons/6_English_months/assets/image/December.png +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/image/February.png b/examples/lessons/6_English_months/assets/image/February.png Binary files differdeleted file mode 100755 index d108a2a..0000000 --- a/examples/lessons/6_English_months/assets/image/February.png +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/image/January.png b/examples/lessons/6_English_months/assets/image/January.png Binary files differdeleted file mode 100755 index 67d3919..0000000 --- a/examples/lessons/6_English_months/assets/image/January.png +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/image/July.png b/examples/lessons/6_English_months/assets/image/July.png Binary files differdeleted file mode 100755 index 67e675c..0000000 --- a/examples/lessons/6_English_months/assets/image/July.png +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/image/June.png b/examples/lessons/6_English_months/assets/image/June.png Binary files differdeleted file mode 100755 index 1163da9..0000000 --- a/examples/lessons/6_English_months/assets/image/June.png +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/image/March.png b/examples/lessons/6_English_months/assets/image/March.png Binary files differdeleted file mode 100755 index ec189e8..0000000 --- a/examples/lessons/6_English_months/assets/image/March.png +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/image/May.png b/examples/lessons/6_English_months/assets/image/May.png Binary files differdeleted file mode 100755 index 4d47b1b..0000000 --- a/examples/lessons/6_English_months/assets/image/May.png +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/image/November.png b/examples/lessons/6_English_months/assets/image/November.png Binary files differdeleted file mode 100755 index b259ae2..0000000 --- a/examples/lessons/6_English_months/assets/image/November.png +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/image/October.png b/examples/lessons/6_English_months/assets/image/October.png Binary files differdeleted file mode 100755 index e7ad250..0000000 --- a/examples/lessons/6_English_months/assets/image/October.png +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/image/September.png b/examples/lessons/6_English_months/assets/image/September.png Binary files differdeleted file mode 100755 index 3b074ee..0000000 --- a/examples/lessons/6_English_months/assets/image/September.png +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/image/bg_footer.png b/examples/lessons/6_English_months/assets/image/bg_footer.png Binary files differdeleted file mode 100755 index 4bd44fa..0000000 --- a/examples/lessons/6_English_months/assets/image/bg_footer.png +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/image/bg_header.png b/examples/lessons/6_English_months/assets/image/bg_header.png Binary files differdeleted file mode 100755 index f421817..0000000 --- a/examples/lessons/6_English_months/assets/image/bg_header.png +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/image/bg_title_block.png b/examples/lessons/6_English_months/assets/image/bg_title_block.png Binary files differdeleted file mode 100755 index 7311891..0000000 --- a/examples/lessons/6_English_months/assets/image/bg_title_block.png +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/image/check.png b/examples/lessons/6_English_months/assets/image/check.png Binary files differdeleted file mode 100755 index 84fc229..0000000 --- a/examples/lessons/6_English_months/assets/image/check.png +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/image/correct.png b/examples/lessons/6_English_months/assets/image/correct.png Binary files differdeleted file mode 100755 index 603700d..0000000 --- a/examples/lessons/6_English_months/assets/image/correct.png +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/image/incorrect.png b/examples/lessons/6_English_months/assets/image/incorrect.png Binary files differdeleted file mode 100755 index cccf59b..0000000 --- a/examples/lessons/6_English_months/assets/image/incorrect.png +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/image/small_April.png b/examples/lessons/6_English_months/assets/image/small_April.png Binary files differdeleted file mode 100755 index caa4366..0000000 --- a/examples/lessons/6_English_months/assets/image/small_April.png +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/image/small_August.png b/examples/lessons/6_English_months/assets/image/small_August.png Binary files differdeleted file mode 100755 index dca9649..0000000 --- a/examples/lessons/6_English_months/assets/image/small_August.png +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/image/small_December.png b/examples/lessons/6_English_months/assets/image/small_December.png Binary files differdeleted file mode 100755 index ec60fab..0000000 --- a/examples/lessons/6_English_months/assets/image/small_December.png +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/image/small_February.png b/examples/lessons/6_English_months/assets/image/small_February.png Binary files differdeleted file mode 100755 index 733b1fd..0000000 --- a/examples/lessons/6_English_months/assets/image/small_February.png +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/image/small_January.png b/examples/lessons/6_English_months/assets/image/small_January.png Binary files differdeleted file mode 100755 index 3dbfee6..0000000 --- a/examples/lessons/6_English_months/assets/image/small_January.png +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/image/small_July.png b/examples/lessons/6_English_months/assets/image/small_July.png Binary files differdeleted file mode 100755 index e30027a..0000000 --- a/examples/lessons/6_English_months/assets/image/small_July.png +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/image/small_June.png b/examples/lessons/6_English_months/assets/image/small_June.png Binary files differdeleted file mode 100755 index eb4fcdf..0000000 --- a/examples/lessons/6_English_months/assets/image/small_June.png +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/image/small_March.png b/examples/lessons/6_English_months/assets/image/small_March.png Binary files differdeleted file mode 100755 index f35bbd2..0000000 --- a/examples/lessons/6_English_months/assets/image/small_March.png +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/image/small_May.png b/examples/lessons/6_English_months/assets/image/small_May.png Binary files differdeleted file mode 100755 index 6f111b5..0000000 --- a/examples/lessons/6_English_months/assets/image/small_May.png +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/image/small_November.png b/examples/lessons/6_English_months/assets/image/small_November.png Binary files differdeleted file mode 100755 index 8b9e34e..0000000 --- a/examples/lessons/6_English_months/assets/image/small_November.png +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/image/small_October.png b/examples/lessons/6_English_months/assets/image/small_October.png Binary files differdeleted file mode 100755 index 740e302..0000000 --- a/examples/lessons/6_English_months/assets/image/small_October.png +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/image/small_September.png b/examples/lessons/6_English_months/assets/image/small_September.png Binary files differdeleted file mode 100755 index 0425852..0000000 --- a/examples/lessons/6_English_months/assets/image/small_September.png +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/image/title_block_lt.png b/examples/lessons/6_English_months/assets/image/title_block_lt.png Binary files differdeleted file mode 100755 index b1c0e90..0000000 --- a/examples/lessons/6_English_months/assets/image/title_block_lt.png +++ /dev/null diff --git a/examples/lessons/6_English_months/assets/image/title_block_rt.png b/examples/lessons/6_English_months/assets/image/title_block_rt.png Binary files differdeleted file mode 100755 index 275daaf..0000000 --- a/examples/lessons/6_English_months/assets/image/title_block_rt.png +++ /dev/null diff --git a/examples/lessons/6_English_months/css/lesson.css b/examples/lessons/6_English_months/css/lesson.css deleted file mode 100755 index 1660e95..0000000 --- a/examples/lessons/6_English_months/css/lesson.css +++ /dev/null @@ -1,246 +0,0 @@ -@CHARSET "UTF-8";
-/****** Page Styles ****/
-
-body {
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 10pt;
- margin: 0px;
- background-color: #FFFFCC;
-}
-#header {
- background-image: url(../assets/image/bg_header.png);
- background-repeat: repeat-x;
- height: 89px;
- width: 100%;
- position: absolute;
- left: 0px;
- top: 0px;
-}
-#topbtn_left {
- float: left;
- height: 60px;
- width: 60px;
- padding-top: 13px;
- padding-left: 5px;
-}
-
-
- #linkBack{
- width: 60px; height: 59px;
- background:url(../assets/image/btn_back.png);
- }
- #linkBack:hover{
- background:url(../assets/image/btn_back_hover.png);
- }
-
-#lesson_title {
- float: left;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 16pt;
- font-weight: bold;
- color: #FFFFFF;
- margin-left: 10px;
- background-image: url(../assets/image/bg_title_block.png);
-}
-#topbtn_right {
- float: right;
- height: 60px;
- width: 60px;
- padding-top: 13px;
- padding-right: 5px;
-}
- #linkHelp{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_help.png);
- }
- #linkHelp:hover{
- background:url(../assets/image/btn_help_hover.png);
- }
- #linkOle{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_ole.png);
- }
- #linkOle:hover{
- background:url(../assets/image/btn_ole_hover.png);
- }
- #linkNext{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_next.png);
- }
- #linkNext:hover{
- background:url(../assets/image/btn_next_hover.png);
- }
-#footer {
- background-image: url(../assets/image/bg_footer.png);
- background-repeat: repeat-x;
- position: absolute;
- height: 69px;
- width: 100%;
- left: 0px;
- bottom: 0px;
-}
-#score_box {
- float: left;
- padding-left: 5px;
- padding-top: 10px;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- color: #FFFF00;
- font-size: 16pt;
- font-weight: bold;
-}
-#botbtn_right {
- float: right;
- height: 55px;
- /*width: 251px;*/
- padding-right: 5px;
- padding-top: 5px;
-}
- #linkCheck{
- width: 187px; height: 55px;
- background-image: url(../assets/image/check.png);
- }
-
- #linkStart{
- width: 251px; height: 55px;
- background:url(../assets/image/btn_start.png);
- }
- #linkStart:hover{
- background:url(../assets/image/btn_start_hover.png);
- }
- #linkStart:active{
- background:url(../assets/image/btn_start_mouse_down.png);
- }
- #linkPlayAgain{
- width: 251px; height: 55px;
- background:url(../assets/image/btn_play_again.png);
- }
- #linkPlayAgain:hover{
- background:url(../assets/image/btn_play_again_hover.png);
- }
- #linkPlayfile:///usr/share/ubuntu-artwork/home/index.htmlAgain:active{
- background:url(../assets/image/btn_play_again_mouse_down.png);
- }
-
-/**** End of the page style ****/
-
-/**** Game Styles ****/
-
-a{
- color:#FFFFCC;
-}
-#currentTitle{
- width: 150px;
- height: 80xp;
- font:25px/30px "Courier New", Courier, monospace;
- font-weight: bold;
- color: red;
-}
-#content{
- margin: 0px auto;
- margin-top: 85px;
- height: 400px;
-
-}
- #section{
- margin: 5px auto;
- width: 100%;
- height: 400px;
- text-align:center;
- }
- #topText{
- margin: 20px auto;
- width: 500px;
- height: 25px;
- color: blue;
- font: 20px/25px Arial, Verdana, Geneva, Arial, Helvetica, sans-serif;
- }
- .drophover{
- background-color: #FF9900;
- }
- .imgArea{
- float:left;
- margin-right: 15px;
- margin-bottom: 20px;
- padding: 2px;
- width: 150px;
- height: 135px;
- text-align:center;
- }
- .monthsName{
- cursor: pointer;
- text-align:center;
- font: 20px/25px Arial, Helvetica, sans-serif;
-
- }
- .imgBox{
- margin-top:0.1em;
- text-align:center;
- }
-
- .dropMonthArea{
- float:left;
- margin-right: 25px;
- margin-bottom: 20px;
- padding: 2px;
- width: 225px;
- height: 50px;
- text-align:center;
- }
-
-
- #dragMonthArea{
- position:absolute;
- left: 10%;
- bottom: 16%;
- width: 80%;
- height: 90px;
- border: 1px solid #D0F692;
- }
-
- input.blankBox{
- font: 15px Verdana, Geneva, Arial, Helvetica, sans-serif;
- height:20px;
- width: 20px;
- color:red;
- text-align:center;
- }
- .imgSmall{
- float:left;
- }
- .orderTxt{
- float: left;
- margin-right: 10px;
- width: 50px;
- height: 30px;
- font: 16px/20px Arial, Verdana, Geneva, Helvetica, sans-serif;
- }
-
- .imgDisplay{
- float:left;
- margin: 0em;
- }
-
- .check{
- float:right;
- width: 20px;
- height: 20px;
- }
-#gameOver{
- display:none;
- position:absolute;
- width: 300px;
- text-align:center;
- top: 40%;
- left: 40%;
- font: 30px/35px Verdana, Geneva, Arial, Helvetica, sans-serif;
- font-weight:bold;
- color:red;
-}
-#gameOverInfo{
- margin-top: 35px;
- text-align:center;
- font: 20px/25px Helvetica, Geneva, Arial, Verdana, sans-serif;
- font-weight:bold;
- color:#06D946;
-
-}
\ No newline at end of file diff --git a/examples/lessons/6_English_months/index.html b/examples/lessons/6_English_months/index.html deleted file mode 100755 index b22d119..0000000 --- a/examples/lessons/6_English_months/index.html +++ /dev/null @@ -1,45 +0,0 @@ -<!DOCTYPE html>
-<head>
- <title>Class 6 English Months</title>
- <meta name="keywords" content="karma,javascript,html5,sugar,sugarlabs,gsoc,ole,nepal" />
- <link type="text/css" rel="stylesheet" href="css/lesson.css" />
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <link type="image/ico" rel="icon" href="../../assets/default/image/favicon.ico" />
- <script type="text/javascript" src="js/jquery-1.3.2.min.js"></script>
- <script type="text/javascript" src="js/ui.core.js"></script>
- <script type="text/javascript" src="js/ui.draggable.js"></script>
- <script type="text/javascript" src="js/ui.droppable.js"></script>
- <script type="text/javascript" src="js/jquery.watermarkinput.js"></script>
- <script type="text/javascript" src="js/karma.js"></script>
- <script type="text/javascript" src="js/lesson.js"></script>
-</head>
-<body>
- <div id="header">
- <div id="topbtn_left"><a href="http://olenepal.org"><div id="linkOle"></div></a></div>
- <div id="topbtn_left"><a href="#"><div id="linkBack"></div></a></div>
- <div id="lesson_title">
- <img src="assets/image/title_block_lt.png" width="33" height="89" align="absmiddle" />
- Months of the Year<span id="currentTitle"></span>
- <img src="assets/image/title_block_rt.png" width="33" height="89" align="absmiddle" />
- </div>
- <div id="topbtn_right"><a href="#"><div id="linkHelp"></div></a></div>
- <div id="topbtn_right"><a href="http://olenepal.org"><div id="linkOle"></div></a></div>
- <div id="topbtn_right"><a href="#"><div id="linkNext"></div></a></div>
- </div>
-
- <div id="content">
- <div id="section"></div>
- <div id="gameOver"></div>
- <div id="help"></div>
- </div>
- <form name="delayForm">
- <input type="hidden" name="delayval" size="5">
- </form>
-
- <div id="footer">
- <div id="botbtn_right"><a href="#"><div id="linkStart"></div></a></div>
- <div id="botbtn_right"><a href="#"><div id="linkPlayAgain"></div></a></div>
- <div id="botbtn_right"><a href="#"><div id="linkCheck"></div></a></div>
- </div>
-</body>
-</html>
diff --git a/examples/lessons/6_English_months/js/jquery-1.3.2.min.js b/examples/lessons/6_English_months/js/jquery-1.3.2.min.js deleted file mode 100755 index b1ae21d..0000000 --- a/examples/lessons/6_English_months/js/jquery-1.3.2.min.js +++ /dev/null @@ -1,19 +0,0 @@ -/* - * jQuery JavaScript Library v1.3.2 - * http://jquery.com/ - * - * Copyright (c) 2009 John Resig - * Dual licensed under the MIT and GPL licenses. - * http://docs.jquery.com/License - * - * Date: 2009-02-19 17:34:21 -0500 (Thu, 19 Feb 2009) - * Revision: 6246 - */ -(function(){var l=this,g,y=l.jQuery,p=l.$,o=l.jQuery=l.$=function(E,F){return new o.fn.init(E,F)},D=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,f=/^.[^:#\[\.,]*$/;o.fn=o.prototype={init:function(E,H){E=E||document;if(E.nodeType){this[0]=E;this.length=1;this.context=E;return this}if(typeof E==="string"){var G=D.exec(E);if(G&&(G[1]||!H)){if(G[1]){E=o.clean([G[1]],H)}else{var I=document.getElementById(G[3]);if(I&&I.id!=G[3]){return o().find(E)}var F=o(I||[]);F.context=document;F.selector=E;return F}}else{return o(H).find(E)}}else{if(o.isFunction(E)){return o(document).ready(E)}}if(E.selector&&E.context){this.selector=E.selector;this.context=E.context}return this.setArray(o.isArray(E)?E:o.makeArray(E))},selector:"",jquery:"1.3.2",size:function(){return this.length},get:function(E){return E===g?Array.prototype.slice.call(this):this[E]},pushStack:function(F,H,E){var G=o(F);G.prevObject=this;G.context=this.context;if(H==="find"){G.selector=this.selector+(this.selector?" ":"")+E}else{if(H){G.selector=this.selector+"."+H+"("+E+")"}}return G},setArray:function(E){this.length=0;Array.prototype.push.apply(this,E);return this},each:function(F,E){return o.each(this,F,E)},index:function(E){return o.inArray(E&&E.jquery?E[0]:E,this)},attr:function(F,H,G){var E=F;if(typeof F==="string"){if(H===g){return this[0]&&o[G||"attr"](this[0],F)}else{E={};E[F]=H}}return this.each(function(I){for(F in E){o.attr(G?this.style:this,F,o.prop(this,E[F],G,I,F))}})},css:function(E,F){if((E=="width"||E=="height")&&parseFloat(F)<0){F=g}return this.attr(E,F,"curCSS")},text:function(F){if(typeof F!=="object"&&F!=null){return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(F))}var E="";o.each(F||this,function(){o.each(this.childNodes,function(){if(this.nodeType!=8){E+=this.nodeType!=1?this.nodeValue:o.fn.text([this])}})});return E},wrapAll:function(E){if(this[0]){var F=o(E,this[0].ownerDocument).clone();if(this[0].parentNode){F.insertBefore(this[0])}F.map(function(){var G=this;while(G.firstChild){G=G.firstChild}return G}).append(this)}return this},wrapInner:function(E){return this.each(function(){o(this).contents().wrapAll(E)})},wrap:function(E){return this.each(function(){o(this).wrapAll(E)})},append:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.appendChild(E)}})},prepend:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.insertBefore(E,this.firstChild)}})},before:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this)})},after:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this.nextSibling)})},end:function(){return this.prevObject||o([])},push:[].push,sort:[].sort,splice:[].splice,find:function(E){if(this.length===1){var F=this.pushStack([],"find",E);F.length=0;o.find(E,this[0],F);return F}else{return this.pushStack(o.unique(o.map(this,function(G){return o.find(E,G)})),"find",E)}},clone:function(G){var E=this.map(function(){if(!o.support.noCloneEvent&&!o.isXMLDoc(this)){var I=this.outerHTML;if(!I){var J=this.ownerDocument.createElement("div");J.appendChild(this.cloneNode(true));I=J.innerHTML}return o.clean([I.replace(/ jQuery\d+="(?:\d+|null)"/g,"").replace(/^\s*/,"")])[0]}else{return this.cloneNode(true)}});if(G===true){var H=this.find("*").andSelf(),F=0;E.find("*").andSelf().each(function(){if(this.nodeName!==H[F].nodeName){return}var I=o.data(H[F],"events");for(var K in I){for(var J in I[K]){o.event.add(this,K,I[K][J],I[K][J].data)}}F++})}return E},filter:function(E){return this.pushStack(o.isFunction(E)&&o.grep(this,function(G,F){return E.call(G,F)})||o.multiFilter(E,o.grep(this,function(F){return F.nodeType===1})),"filter",E)},closest:function(E){var G=o.expr.match.POS.test(E)?o(E):null,F=0;return this.map(function(){var H=this;while(H&&H.ownerDocument){if(G?G.index(H)>-1:o(H).is(E)){o.data(H,"closest",F);return H}H=H.parentNode;F++}})},not:function(E){if(typeof E==="string"){if(f.test(E)){return this.pushStack(o.multiFilter(E,this,true),"not",E)}else{E=o.multiFilter(E,this)}}var F=E.length&&E[E.length-1]!==g&&!E.nodeType;return this.filter(function(){return F?o.inArray(this,E)<0:this!=E})},add:function(E){return this.pushStack(o.unique(o.merge(this.get(),typeof E==="string"?o(E):o.makeArray(E))))},is:function(E){return !!E&&o.multiFilter(E,this).length>0},hasClass:function(E){return !!E&&this.is("."+E)},val:function(K){if(K===g){var E=this[0];if(E){if(o.nodeName(E,"option")){return(E.attributes.value||{}).specified?E.value:E.text}if(o.nodeName(E,"select")){var I=E.selectedIndex,L=[],M=E.options,H=E.type=="select-one";if(I<0){return null}for(var F=H?I:0,J=H?I+1:M.length;F<J;F++){var G=M[F];if(G.selected){K=o(G).val();if(H){return K}L.push(K)}}return L}return(E.value||"").replace(/\r/g,"")}return g}if(typeof K==="number"){K+=""}return this.each(function(){if(this.nodeType!=1){return}if(o.isArray(K)&&/radio|checkbox/.test(this.type)){this.checked=(o.inArray(this.value,K)>=0||o.inArray(this.name,K)>=0)}else{if(o.nodeName(this,"select")){var N=o.makeArray(K);o("option",this).each(function(){this.selected=(o.inArray(this.value,N)>=0||o.inArray(this.text,N)>=0)});if(!N.length){this.selectedIndex=-1}}else{this.value=K}}})},html:function(E){return E===g?(this[0]?this[0].innerHTML.replace(/ jQuery\d+="(?:\d+|null)"/g,""):null):this.empty().append(E)},replaceWith:function(E){return this.after(E).remove()},eq:function(E){return this.slice(E,+E+1)},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","))},map:function(E){return this.pushStack(o.map(this,function(G,F){return E.call(G,F,G)}))},andSelf:function(){return this.add(this.prevObject)},domManip:function(J,M,L){if(this[0]){var I=(this[0].ownerDocument||this[0]).createDocumentFragment(),F=o.clean(J,(this[0].ownerDocument||this[0]),I),H=I.firstChild;if(H){for(var G=0,E=this.length;G<E;G++){L.call(K(this[G],H),this.length>1||G>0?I.cloneNode(true):I)}}if(F){o.each(F,z)}}return this;function K(N,O){return M&&o.nodeName(N,"table")&&o.nodeName(O,"tr")?(N.getElementsByTagName("tbody")[0]||N.appendChild(N.ownerDocument.createElement("tbody"))):N}}};o.fn.init.prototype=o.fn;function z(E,F){if(F.src){o.ajax({url:F.src,async:false,dataType:"script"})}else{o.globalEval(F.text||F.textContent||F.innerHTML||"")}if(F.parentNode){F.parentNode.removeChild(F)}}function e(){return +new Date}o.extend=o.fn.extend=function(){var J=arguments[0]||{},H=1,I=arguments.length,E=false,G;if(typeof J==="boolean"){E=J;J=arguments[1]||{};H=2}if(typeof J!=="object"&&!o.isFunction(J)){J={}}if(I==H){J=this;--H}for(;H<I;H++){if((G=arguments[H])!=null){for(var F in G){var K=J[F],L=G[F];if(J===L){continue}if(E&&L&&typeof L==="object"&&!L.nodeType){J[F]=o.extend(E,K||(L.length!=null?[]:{}),L)}else{if(L!==g){J[F]=L}}}}}return J};var b=/z-?index|font-?weight|opacity|zoom|line-?height/i,q=document.defaultView||{},s=Object.prototype.toString;o.extend({noConflict:function(E){l.$=p;if(E){l.jQuery=y}return o},isFunction:function(E){return s.call(E)==="[object Function]"},isArray:function(E){return s.call(E)==="[object Array]"},isXMLDoc:function(E){return E.nodeType===9&&E.documentElement.nodeName!=="HTML"||!!E.ownerDocument&&o.isXMLDoc(E.ownerDocument)},globalEval:function(G){if(G&&/\S/.test(G)){var F=document.getElementsByTagName("head")[0]||document.documentElement,E=document.createElement("script");E.type="text/javascript";if(o.support.scriptEval){E.appendChild(document.createTextNode(G))}else{E.text=G}F.insertBefore(E,F.firstChild);F.removeChild(E)}},nodeName:function(F,E){return F.nodeName&&F.nodeName.toUpperCase()==E.toUpperCase()},each:function(G,K,F){var E,H=0,I=G.length;if(F){if(I===g){for(E in G){if(K.apply(G[E],F)===false){break}}}else{for(;H<I;){if(K.apply(G[H++],F)===false){break}}}}else{if(I===g){for(E in G){if(K.call(G[E],E,G[E])===false){break}}}else{for(var J=G[0];H<I&&K.call(J,H,J)!==false;J=G[++H]){}}}return G},prop:function(H,I,G,F,E){if(o.isFunction(I)){I=I.call(H,F)}return typeof I==="number"&&G=="curCSS"&&!b.test(E)?I+"px":I},className:{add:function(E,F){o.each((F||"").split(/\s+/),function(G,H){if(E.nodeType==1&&!o.className.has(E.className,H)){E.className+=(E.className?" ":"")+H}})},remove:function(E,F){if(E.nodeType==1){E.className=F!==g?o.grep(E.className.split(/\s+/),function(G){return !o.className.has(F,G)}).join(" "):""}},has:function(F,E){return F&&o.inArray(E,(F.className||F).toString().split(/\s+/))>-1}},swap:function(H,G,I){var E={};for(var F in G){E[F]=H.style[F];H.style[F]=G[F]}I.call(H);for(var F in G){H.style[F]=E[F]}},css:function(H,F,J,E){if(F=="width"||F=="height"){var L,G={position:"absolute",visibility:"hidden",display:"block"},K=F=="width"?["Left","Right"]:["Top","Bottom"];function I(){L=F=="width"?H.offsetWidth:H.offsetHeight;if(E==="border"){return}o.each(K,function(){if(!E){L-=parseFloat(o.curCSS(H,"padding"+this,true))||0}if(E==="margin"){L+=parseFloat(o.curCSS(H,"margin"+this,true))||0}else{L-=parseFloat(o.curCSS(H,"border"+this+"Width",true))||0}})}if(H.offsetWidth!==0){I()}else{o.swap(H,G,I)}return Math.max(0,Math.round(L))}return o.curCSS(H,F,J)},curCSS:function(I,F,G){var L,E=I.style;if(F=="opacity"&&!o.support.opacity){L=o.attr(E,"opacity");return L==""?"1":L}if(F.match(/float/i)){F=w}if(!G&&E&&E[F]){L=E[F]}else{if(q.getComputedStyle){if(F.match(/float/i)){F="float"}F=F.replace(/([A-Z])/g,"-$1").toLowerCase();var M=q.getComputedStyle(I,null);if(M){L=M.getPropertyValue(F)}if(F=="opacity"&&L==""){L="1"}}else{if(I.currentStyle){var J=F.replace(/\-(\w)/g,function(N,O){return O.toUpperCase()});L=I.currentStyle[F]||I.currentStyle[J];if(!/^\d+(px)?$/i.test(L)&&/^\d/.test(L)){var H=E.left,K=I.runtimeStyle.left;I.runtimeStyle.left=I.currentStyle.left;E.left=L||0;L=E.pixelLeft+"px";E.left=H;I.runtimeStyle.left=K}}}}return L},clean:function(F,K,I){K=K||document;if(typeof K.createElement==="undefined"){K=K.ownerDocument||K[0]&&K[0].ownerDocument||document}if(!I&&F.length===1&&typeof F[0]==="string"){var H=/^<(\w+)\s*\/?>$/.exec(F[0]);if(H){return[K.createElement(H[1])]}}var G=[],E=[],L=K.createElement("div");o.each(F,function(P,S){if(typeof S==="number"){S+=""}if(!S){return}if(typeof S==="string"){S=S.replace(/(<(\w+)[^>]*?)\/>/g,function(U,V,T){return T.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?U:V+"></"+T+">"});var O=S.replace(/^\s+/,"").substring(0,10).toLowerCase();var Q=!O.indexOf("<opt")&&[1,"<select multiple='multiple'>","</select>"]||!O.indexOf("<leg")&&[1,"<fieldset>","</fieldset>"]||O.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"<table>","</table>"]||!O.indexOf("<tr")&&[2,"<table><tbody>","</tbody></table>"]||(!O.indexOf("<td")||!O.indexOf("<th"))&&[3,"<table><tbody><tr>","</tr></tbody></table>"]||!O.indexOf("<col")&&[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"]||!o.support.htmlSerialize&&[1,"div<div>","</div>"]||[0,"",""];L.innerHTML=Q[1]+S+Q[2];while(Q[0]--){L=L.lastChild}if(!o.support.tbody){var R=/<tbody/i.test(S),N=!O.indexOf("<table")&&!R?L.firstChild&&L.firstChild.childNodes:Q[1]=="<table>"&&!R?L.childNodes:[];for(var M=N.length-1;M>=0;--M){if(o.nodeName(N[M],"tbody")&&!N[M].childNodes.length){N[M].parentNode.removeChild(N[M])}}}if(!o.support.leadingWhitespace&&/^\s/.test(S)){L.insertBefore(K.createTextNode(S.match(/^\s*/)[0]),L.firstChild)}S=o.makeArray(L.childNodes)}if(S.nodeType){G.push(S)}else{G=o.merge(G,S)}});if(I){for(var J=0;G[J];J++){if(o.nodeName(G[J],"script")&&(!G[J].type||G[J].type.toLowerCase()==="text/javascript")){E.push(G[J].parentNode?G[J].parentNode.removeChild(G[J]):G[J])}else{if(G[J].nodeType===1){G.splice.apply(G,[J+1,0].concat(o.makeArray(G[J].getElementsByTagName("script"))))}I.appendChild(G[J])}}return E}return G},attr:function(J,G,K){if(!J||J.nodeType==3||J.nodeType==8){return g}var H=!o.isXMLDoc(J),L=K!==g;G=H&&o.props[G]||G;if(J.tagName){var F=/href|src|style/.test(G);if(G=="selected"&&J.parentNode){J.parentNode.selectedIndex}if(G in J&&H&&!F){if(L){if(G=="type"&&o.nodeName(J,"input")&&J.parentNode){throw"type property can't be changed"}J[G]=K}if(o.nodeName(J,"form")&&J.getAttributeNode(G)){return J.getAttributeNode(G).nodeValue}if(G=="tabIndex"){var I=J.getAttributeNode("tabIndex");return I&&I.specified?I.value:J.nodeName.match(/(button|input|object|select|textarea)/i)?0:J.nodeName.match(/^(a|area)$/i)&&J.href?0:g}return J[G]}if(!o.support.style&&H&&G=="style"){return o.attr(J.style,"cssText",K)}if(L){J.setAttribute(G,""+K)}var E=!o.support.hrefNormalized&&H&&F?J.getAttribute(G,2):J.getAttribute(G);return E===null?g:E}if(!o.support.opacity&&G=="opacity"){if(L){J.zoom=1;J.filter=(J.filter||"").replace(/alpha\([^)]*\)/,"")+(parseInt(K)+""=="NaN"?"":"alpha(opacity="+K*100+")")}return J.filter&&J.filter.indexOf("opacity=")>=0?(parseFloat(J.filter.match(/opacity=([^)]*)/)[1])/100)+"":""}G=G.replace(/-([a-z])/ig,function(M,N){return N.toUpperCase()});if(L){J[G]=K}return J[G]},trim:function(E){return(E||"").replace(/^\s+|\s+$/g,"")},makeArray:function(G){var E=[];if(G!=null){var F=G.length;if(F==null||typeof G==="string"||o.isFunction(G)||G.setInterval){E[0]=G}else{while(F){E[--F]=G[F]}}}return E},inArray:function(G,H){for(var E=0,F=H.length;E<F;E++){if(H[E]===G){return E}}return -1},merge:function(H,E){var F=0,G,I=H.length;if(!o.support.getAll){while((G=E[F++])!=null){if(G.nodeType!=8){H[I++]=G}}}else{while((G=E[F++])!=null){H[I++]=G}}return H},unique:function(K){var F=[],E={};try{for(var G=0,H=K.length;G<H;G++){var J=o.data(K[G]);if(!E[J]){E[J]=true;F.push(K[G])}}}catch(I){F=K}return F},grep:function(F,J,E){var G=[];for(var H=0,I=F.length;H<I;H++){if(!E!=!J(F[H],H)){G.push(F[H])}}return G},map:function(E,J){var F=[];for(var G=0,H=E.length;G<H;G++){var I=J(E[G],G);if(I!=null){F[F.length]=I}}return F.concat.apply([],F)}});var C=navigator.userAgent.toLowerCase();o.browser={version:(C.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)||[0,"0"])[1],safari:/webkit/.test(C),opera:/opera/.test(C),msie:/msie/.test(C)&&!/opera/.test(C),mozilla:/mozilla/.test(C)&&!/(compatible|webkit)/.test(C)};o.each({parent:function(E){return E.parentNode},parents:function(E){return o.dir(E,"parentNode")},next:function(E){return o.nth(E,2,"nextSibling")},prev:function(E){return o.nth(E,2,"previousSibling")},nextAll:function(E){return o.dir(E,"nextSibling")},prevAll:function(E){return o.dir(E,"previousSibling")},siblings:function(E){return o.sibling(E.parentNode.firstChild,E)},children:function(E){return o.sibling(E.firstChild)},contents:function(E){return o.nodeName(E,"iframe")?E.contentDocument||E.contentWindow.document:o.makeArray(E.childNodes)}},function(E,F){o.fn[E]=function(G){var H=o.map(this,F);if(G&&typeof G=="string"){H=o.multiFilter(G,H)}return this.pushStack(o.unique(H),E,G)}});o.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(E,F){o.fn[E]=function(G){var J=[],L=o(G);for(var K=0,H=L.length;K<H;K++){var I=(K>0?this.clone(true):this).get();o.fn[F].apply(o(L[K]),I);J=J.concat(I)}return this.pushStack(J,E,G)}});o.each({removeAttr:function(E){o.attr(this,E,"");if(this.nodeType==1){this.removeAttribute(E)}},addClass:function(E){o.className.add(this,E)},removeClass:function(E){o.className.remove(this,E)},toggleClass:function(F,E){if(typeof E!=="boolean"){E=!o.className.has(this,F)}o.className[E?"add":"remove"](this,F)},remove:function(E){if(!E||o.filter(E,[this]).length){o("*",this).add([this]).each(function(){o.event.remove(this);o.removeData(this)});if(this.parentNode){this.parentNode.removeChild(this)}}},empty:function(){o(this).children().remove();while(this.firstChild){this.removeChild(this.firstChild)}}},function(E,F){o.fn[E]=function(){return this.each(F,arguments)}});function j(E,F){return E[0]&&parseInt(o.curCSS(E[0],F,true),10)||0}var h="jQuery"+e(),v=0,A={};o.extend({cache:{},data:function(F,E,G){F=F==l?A:F;var H=F[h];if(!H){H=F[h]=++v}if(E&&!o.cache[H]){o.cache[H]={}}if(G!==g){o.cache[H][E]=G}return E?o.cache[H][E]:H},removeData:function(F,E){F=F==l?A:F;var H=F[h];if(E){if(o.cache[H]){delete o.cache[H][E];E="";for(E in o.cache[H]){break}if(!E){o.removeData(F)}}}else{try{delete F[h]}catch(G){if(F.removeAttribute){F.removeAttribute(h)}}delete o.cache[H]}},queue:function(F,E,H){if(F){E=(E||"fx")+"queue";var G=o.data(F,E);if(!G||o.isArray(H)){G=o.data(F,E,o.makeArray(H))}else{if(H){G.push(H)}}}return G},dequeue:function(H,G){var E=o.queue(H,G),F=E.shift();if(!G||G==="fx"){F=E[0]}if(F!==g){F.call(H)}}});o.fn.extend({data:function(E,G){var H=E.split(".");H[1]=H[1]?"."+H[1]:"";if(G===g){var F=this.triggerHandler("getData"+H[1]+"!",[H[0]]);if(F===g&&this.length){F=o.data(this[0],E)}return F===g&&H[1]?this.data(H[0]):F}else{return this.trigger("setData"+H[1]+"!",[H[0],G]).each(function(){o.data(this,E,G)})}},removeData:function(E){return this.each(function(){o.removeData(this,E)})},queue:function(E,F){if(typeof E!=="string"){F=E;E="fx"}if(F===g){return o.queue(this[0],E)}return this.each(function(){var G=o.queue(this,E,F);if(E=="fx"&&G.length==1){G[0].call(this)}})},dequeue:function(E){return this.each(function(){o.dequeue(this,E)})}}); -/* - * Sizzle CSS Selector Engine - v0.9.3 - * Copyright 2009, The Dojo Foundation - * Released under the MIT, BSD, and GPL Licenses. - * More information: http://sizzlejs.com/ - */ -(function(){var R=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?/g,L=0,H=Object.prototype.toString;var F=function(Y,U,ab,ac){ab=ab||[];U=U||document;if(U.nodeType!==1&&U.nodeType!==9){return[]}if(!Y||typeof Y!=="string"){return ab}var Z=[],W,af,ai,T,ad,V,X=true;R.lastIndex=0;while((W=R.exec(Y))!==null){Z.push(W[1]);if(W[2]){V=RegExp.rightContext;break}}if(Z.length>1&&M.exec(Y)){if(Z.length===2&&I.relative[Z[0]]){af=J(Z[0]+Z[1],U)}else{af=I.relative[Z[0]]?[U]:F(Z.shift(),U);while(Z.length){Y=Z.shift();if(I.relative[Y]){Y+=Z.shift()}af=J(Y,af)}}}else{var ae=ac?{expr:Z.pop(),set:E(ac)}:F.find(Z.pop(),Z.length===1&&U.parentNode?U.parentNode:U,Q(U));af=F.filter(ae.expr,ae.set);if(Z.length>0){ai=E(af)}else{X=false}while(Z.length){var ah=Z.pop(),ag=ah;if(!I.relative[ah]){ah=""}else{ag=Z.pop()}if(ag==null){ag=U}I.relative[ah](ai,ag,Q(U))}}if(!ai){ai=af}if(!ai){throw"Syntax error, unrecognized expression: "+(ah||Y)}if(H.call(ai)==="[object Array]"){if(!X){ab.push.apply(ab,ai)}else{if(U.nodeType===1){for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&(ai[aa]===true||ai[aa].nodeType===1&&K(U,ai[aa]))){ab.push(af[aa])}}}else{for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&ai[aa].nodeType===1){ab.push(af[aa])}}}}}else{E(ai,ab)}if(V){F(V,U,ab,ac);if(G){hasDuplicate=false;ab.sort(G);if(hasDuplicate){for(var aa=1;aa<ab.length;aa++){if(ab[aa]===ab[aa-1]){ab.splice(aa--,1)}}}}}return ab};F.matches=function(T,U){return F(T,null,null,U)};F.find=function(aa,T,ab){var Z,X;if(!aa){return[]}for(var W=0,V=I.order.length;W<V;W++){var Y=I.order[W],X;if((X=I.match[Y].exec(aa))){var U=RegExp.leftContext;if(U.substr(U.length-1)!=="\\"){X[1]=(X[1]||"").replace(/\\/g,"");Z=I.find[Y](X,T,ab);if(Z!=null){aa=aa.replace(I.match[Y],"");break}}}}if(!Z){Z=T.getElementsByTagName("*")}return{set:Z,expr:aa}};F.filter=function(ad,ac,ag,W){var V=ad,ai=[],aa=ac,Y,T,Z=ac&&ac[0]&&Q(ac[0]);while(ad&&ac.length){for(var ab in I.filter){if((Y=I.match[ab].exec(ad))!=null){var U=I.filter[ab],ah,af;T=false;if(aa==ai){ai=[]}if(I.preFilter[ab]){Y=I.preFilter[ab](Y,aa,ag,ai,W,Z);if(!Y){T=ah=true}else{if(Y===true){continue}}}if(Y){for(var X=0;(af=aa[X])!=null;X++){if(af){ah=U(af,Y,X,aa);var ae=W^!!ah;if(ag&&ah!=null){if(ae){T=true}else{aa[X]=false}}else{if(ae){ai.push(af);T=true}}}}}if(ah!==g){if(!ag){aa=ai}ad=ad.replace(I.match[ab],"");if(!T){return[]}break}}}if(ad==V){if(T==null){throw"Syntax error, unrecognized expression: "+ad}else{break}}V=ad}return aa};var I=F.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF_-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF_-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*_-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+-]*)\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF_-]|\\.)+)(?:\((['"]*)((?:\([^\)]+\)|[^\2\(\)]*)+)\2\))?/},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(T){return T.getAttribute("href")}},relative:{"+":function(aa,T,Z){var X=typeof T==="string",ab=X&&!/\W/.test(T),Y=X&&!ab;if(ab&&!Z){T=T.toUpperCase()}for(var W=0,V=aa.length,U;W<V;W++){if((U=aa[W])){while((U=U.previousSibling)&&U.nodeType!==1){}aa[W]=Y||U&&U.nodeName===T?U||false:U===T}}if(Y){F.filter(T,aa,true)}},">":function(Z,U,aa){var X=typeof U==="string";if(X&&!/\W/.test(U)){U=aa?U:U.toUpperCase();for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){var W=Y.parentNode;Z[V]=W.nodeName===U?W:false}}}else{for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){Z[V]=X?Y.parentNode:Y.parentNode===U}}if(X){F.filter(U,Z,true)}}},"":function(W,U,Y){var V=L++,T=S;if(!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("parentNode",U,V,W,X,Y)},"~":function(W,U,Y){var V=L++,T=S;if(typeof U==="string"&&!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("previousSibling",U,V,W,X,Y)}},find:{ID:function(U,V,W){if(typeof V.getElementById!=="undefined"&&!W){var T=V.getElementById(U[1]);return T?[T]:[]}},NAME:function(V,Y,Z){if(typeof Y.getElementsByName!=="undefined"){var U=[],X=Y.getElementsByName(V[1]);for(var W=0,T=X.length;W<T;W++){if(X[W].getAttribute("name")===V[1]){U.push(X[W])}}return U.length===0?null:U}},TAG:function(T,U){return U.getElementsByTagName(T[1])}},preFilter:{CLASS:function(W,U,V,T,Z,aa){W=" "+W[1].replace(/\\/g,"")+" ";if(aa){return W}for(var X=0,Y;(Y=U[X])!=null;X++){if(Y){if(Z^(Y.className&&(" "+Y.className+" ").indexOf(W)>=0)){if(!V){T.push(Y)}}else{if(V){U[X]=false}}}}return false},ID:function(T){return T[1].replace(/\\/g,"")},TAG:function(U,T){for(var V=0;T[V]===false;V++){}return T[V]&&Q(T[V])?U[1]:U[1].toUpperCase()},CHILD:function(T){if(T[1]=="nth"){var U=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(T[2]=="even"&&"2n"||T[2]=="odd"&&"2n+1"||!/\D/.test(T[2])&&"0n+"+T[2]||T[2]);T[2]=(U[1]+(U[2]||1))-0;T[3]=U[3]-0}T[0]=L++;return T},ATTR:function(X,U,V,T,Y,Z){var W=X[1].replace(/\\/g,"");if(!Z&&I.attrMap[W]){X[1]=I.attrMap[W]}if(X[2]==="~="){X[4]=" "+X[4]+" "}return X},PSEUDO:function(X,U,V,T,Y){if(X[1]==="not"){if(X[3].match(R).length>1||/^\w/.test(X[3])){X[3]=F(X[3],null,null,U)}else{var W=F.filter(X[3],U,V,true^Y);if(!V){T.push.apply(T,W)}return false}}else{if(I.match.POS.test(X[0])||I.match.CHILD.test(X[0])){return true}}return X},POS:function(T){T.unshift(true);return T}},filters:{enabled:function(T){return T.disabled===false&&T.type!=="hidden"},disabled:function(T){return T.disabled===true},checked:function(T){return T.checked===true},selected:function(T){T.parentNode.selectedIndex;return T.selected===true},parent:function(T){return !!T.firstChild},empty:function(T){return !T.firstChild},has:function(V,U,T){return !!F(T[3],V).length},header:function(T){return/h\d/i.test(T.nodeName)},text:function(T){return"text"===T.type},radio:function(T){return"radio"===T.type},checkbox:function(T){return"checkbox"===T.type},file:function(T){return"file"===T.type},password:function(T){return"password"===T.type},submit:function(T){return"submit"===T.type},image:function(T){return"image"===T.type},reset:function(T){return"reset"===T.type},button:function(T){return"button"===T.type||T.nodeName.toUpperCase()==="BUTTON"},input:function(T){return/input|select|textarea|button/i.test(T.nodeName)}},setFilters:{first:function(U,T){return T===0},last:function(V,U,T,W){return U===W.length-1},even:function(U,T){return T%2===0},odd:function(U,T){return T%2===1},lt:function(V,U,T){return U<T[3]-0},gt:function(V,U,T){return U>T[3]-0},nth:function(V,U,T){return T[3]-0==U},eq:function(V,U,T){return T[3]-0==U}},filter:{PSEUDO:function(Z,V,W,aa){var U=V[1],X=I.filters[U];if(X){return X(Z,W,V,aa)}else{if(U==="contains"){return(Z.textContent||Z.innerText||"").indexOf(V[3])>=0}else{if(U==="not"){var Y=V[3];for(var W=0,T=Y.length;W<T;W++){if(Y[W]===Z){return false}}return true}}}},CHILD:function(T,W){var Z=W[1],U=T;switch(Z){case"only":case"first":while(U=U.previousSibling){if(U.nodeType===1){return false}}if(Z=="first"){return true}U=T;case"last":while(U=U.nextSibling){if(U.nodeType===1){return false}}return true;case"nth":var V=W[2],ac=W[3];if(V==1&&ac==0){return true}var Y=W[0],ab=T.parentNode;if(ab&&(ab.sizcache!==Y||!T.nodeIndex)){var X=0;for(U=ab.firstChild;U;U=U.nextSibling){if(U.nodeType===1){U.nodeIndex=++X}}ab.sizcache=Y}var aa=T.nodeIndex-ac;if(V==0){return aa==0}else{return(aa%V==0&&aa/V>=0)}}},ID:function(U,T){return U.nodeType===1&&U.getAttribute("id")===T},TAG:function(U,T){return(T==="*"&&U.nodeType===1)||U.nodeName===T},CLASS:function(U,T){return(" "+(U.className||U.getAttribute("class"))+" ").indexOf(T)>-1},ATTR:function(Y,W){var V=W[1],T=I.attrHandle[V]?I.attrHandle[V](Y):Y[V]!=null?Y[V]:Y.getAttribute(V),Z=T+"",X=W[2],U=W[4];return T==null?X==="!=":X==="="?Z===U:X==="*="?Z.indexOf(U)>=0:X==="~="?(" "+Z+" ").indexOf(U)>=0:!U?Z&&T!==false:X==="!="?Z!=U:X==="^="?Z.indexOf(U)===0:X==="$="?Z.substr(Z.length-U.length)===U:X==="|="?Z===U||Z.substr(0,U.length+1)===U+"-":false},POS:function(X,U,V,Y){var T=U[2],W=I.setFilters[T];if(W){return W(X,V,U,Y)}}}};var M=I.match.POS;for(var O in I.match){I.match[O]=RegExp(I.match[O].source+/(?![^\[]*\])(?![^\(]*\))/.source)}var E=function(U,T){U=Array.prototype.slice.call(U);if(T){T.push.apply(T,U);return T}return U};try{Array.prototype.slice.call(document.documentElement.childNodes)}catch(N){E=function(X,W){var U=W||[];if(H.call(X)==="[object Array]"){Array.prototype.push.apply(U,X)}else{if(typeof X.length==="number"){for(var V=0,T=X.length;V<T;V++){U.push(X[V])}}else{for(var V=0;X[V];V++){U.push(X[V])}}}return U}}var G;if(document.documentElement.compareDocumentPosition){G=function(U,T){var V=U.compareDocumentPosition(T)&4?-1:U===T?0:1;if(V===0){hasDuplicate=true}return V}}else{if("sourceIndex" in document.documentElement){G=function(U,T){var V=U.sourceIndex-T.sourceIndex;if(V===0){hasDuplicate=true}return V}}else{if(document.createRange){G=function(W,U){var V=W.ownerDocument.createRange(),T=U.ownerDocument.createRange();V.selectNode(W);V.collapse(true);T.selectNode(U);T.collapse(true);var X=V.compareBoundaryPoints(Range.START_TO_END,T);if(X===0){hasDuplicate=true}return X}}}}(function(){var U=document.createElement("form"),V="script"+(new Date).getTime();U.innerHTML="<input name='"+V+"'/>";var T=document.documentElement;T.insertBefore(U,T.firstChild);if(!!document.getElementById(V)){I.find.ID=function(X,Y,Z){if(typeof Y.getElementById!=="undefined"&&!Z){var W=Y.getElementById(X[1]);return W?W.id===X[1]||typeof W.getAttributeNode!=="undefined"&&W.getAttributeNode("id").nodeValue===X[1]?[W]:g:[]}};I.filter.ID=function(Y,W){var X=typeof Y.getAttributeNode!=="undefined"&&Y.getAttributeNode("id");return Y.nodeType===1&&X&&X.nodeValue===W}}T.removeChild(U)})();(function(){var T=document.createElement("div");T.appendChild(document.createComment(""));if(T.getElementsByTagName("*").length>0){I.find.TAG=function(U,Y){var X=Y.getElementsByTagName(U[1]);if(U[1]==="*"){var W=[];for(var V=0;X[V];V++){if(X[V].nodeType===1){W.push(X[V])}}X=W}return X}}T.innerHTML="<a href='#'></a>";if(T.firstChild&&typeof T.firstChild.getAttribute!=="undefined"&&T.firstChild.getAttribute("href")!=="#"){I.attrHandle.href=function(U){return U.getAttribute("href",2)}}})();if(document.querySelectorAll){(function(){var T=F,U=document.createElement("div");U.innerHTML="<p class='TEST'></p>";if(U.querySelectorAll&&U.querySelectorAll(".TEST").length===0){return}F=function(Y,X,V,W){X=X||document;if(!W&&X.nodeType===9&&!Q(X)){try{return E(X.querySelectorAll(Y),V)}catch(Z){}}return T(Y,X,V,W)};F.find=T.find;F.filter=T.filter;F.selectors=T.selectors;F.matches=T.matches})()}if(document.getElementsByClassName&&document.documentElement.getElementsByClassName){(function(){var T=document.createElement("div");T.innerHTML="<div class='test e'></div><div class='test'></div>";if(T.getElementsByClassName("e").length===0){return}T.lastChild.className="e";if(T.getElementsByClassName("e").length===1){return}I.order.splice(1,0,"CLASS");I.find.CLASS=function(U,V,W){if(typeof V.getElementsByClassName!=="undefined"&&!W){return V.getElementsByClassName(U[1])}}})()}function P(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1&&!ac){T.sizcache=Y;T.sizset=W}if(T.nodeName===Z){X=T;break}T=T[U]}ad[W]=X}}}function S(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1){if(!ac){T.sizcache=Y;T.sizset=W}if(typeof Z!=="string"){if(T===Z){X=true;break}}else{if(F.filter(Z,[T]).length>0){X=T;break}}}T=T[U]}ad[W]=X}}}var K=document.compareDocumentPosition?function(U,T){return U.compareDocumentPosition(T)&16}:function(U,T){return U!==T&&(U.contains?U.contains(T):true)};var Q=function(T){return T.nodeType===9&&T.documentElement.nodeName!=="HTML"||!!T.ownerDocument&&Q(T.ownerDocument)};var J=function(T,aa){var W=[],X="",Y,V=aa.nodeType?[aa]:aa;while((Y=I.match.PSEUDO.exec(T))){X+=Y[0];T=T.replace(I.match.PSEUDO,"")}T=I.relative[T]?T+"*":T;for(var Z=0,U=V.length;Z<U;Z++){F(T,V[Z],W)}return F.filter(X,W)};o.find=F;o.filter=F.filter;o.expr=F.selectors;o.expr[":"]=o.expr.filters;F.selectors.filters.hidden=function(T){return T.offsetWidth===0||T.offsetHeight===0};F.selectors.filters.visible=function(T){return T.offsetWidth>0||T.offsetHeight>0};F.selectors.filters.animated=function(T){return o.grep(o.timers,function(U){return T===U.elem}).length};o.multiFilter=function(V,T,U){if(U){V=":not("+V+")"}return F.matches(V,T)};o.dir=function(V,U){var T=[],W=V[U];while(W&&W!=document){if(W.nodeType==1){T.push(W)}W=W[U]}return T};o.nth=function(X,T,V,W){T=T||1;var U=0;for(;X;X=X[V]){if(X.nodeType==1&&++U==T){break}}return X};o.sibling=function(V,U){var T=[];for(;V;V=V.nextSibling){if(V.nodeType==1&&V!=U){T.push(V)}}return T};return;l.Sizzle=F})();o.event={add:function(I,F,H,K){if(I.nodeType==3||I.nodeType==8){return}if(I.setInterval&&I!=l){I=l}if(!H.guid){H.guid=this.guid++}if(K!==g){var G=H;H=this.proxy(G);H.data=K}var E=o.data(I,"events")||o.data(I,"events",{}),J=o.data(I,"handle")||o.data(I,"handle",function(){return typeof o!=="undefined"&&!o.event.triggered?o.event.handle.apply(arguments.callee.elem,arguments):g});J.elem=I;o.each(F.split(/\s+/),function(M,N){var O=N.split(".");N=O.shift();H.type=O.slice().sort().join(".");var L=E[N];if(o.event.specialAll[N]){o.event.specialAll[N].setup.call(I,K,O)}if(!L){L=E[N]={};if(!o.event.special[N]||o.event.special[N].setup.call(I,K,O)===false){if(I.addEventListener){I.addEventListener(N,J,false)}else{if(I.attachEvent){I.attachEvent("on"+N,J)}}}}L[H.guid]=H;o.event.global[N]=true});I=null},guid:1,global:{},remove:function(K,H,J){if(K.nodeType==3||K.nodeType==8){return}var G=o.data(K,"events"),F,E;if(G){if(H===g||(typeof H==="string"&&H.charAt(0)==".")){for(var I in G){this.remove(K,I+(H||""))}}else{if(H.type){J=H.handler;H=H.type}o.each(H.split(/\s+/),function(M,O){var Q=O.split(".");O=Q.shift();var N=RegExp("(^|\\.)"+Q.slice().sort().join(".*\\.")+"(\\.|$)");if(G[O]){if(J){delete G[O][J.guid]}else{for(var P in G[O]){if(N.test(G[O][P].type)){delete G[O][P]}}}if(o.event.specialAll[O]){o.event.specialAll[O].teardown.call(K,Q)}for(F in G[O]){break}if(!F){if(!o.event.special[O]||o.event.special[O].teardown.call(K,Q)===false){if(K.removeEventListener){K.removeEventListener(O,o.data(K,"handle"),false)}else{if(K.detachEvent){K.detachEvent("on"+O,o.data(K,"handle"))}}}F=null;delete G[O]}}})}for(F in G){break}if(!F){var L=o.data(K,"handle");if(L){L.elem=null}o.removeData(K,"events");o.removeData(K,"handle")}}},trigger:function(I,K,H,E){var G=I.type||I;if(!E){I=typeof I==="object"?I[h]?I:o.extend(o.Event(G),I):o.Event(G);if(G.indexOf("!")>=0){I.type=G=G.slice(0,-1);I.exclusive=true}if(!H){I.stopPropagation();if(this.global[G]){o.each(o.cache,function(){if(this.events&&this.events[G]){o.event.trigger(I,K,this.handle.elem)}})}}if(!H||H.nodeType==3||H.nodeType==8){return g}I.result=g;I.target=H;K=o.makeArray(K);K.unshift(I)}I.currentTarget=H;var J=o.data(H,"handle");if(J){J.apply(H,K)}if((!H[G]||(o.nodeName(H,"a")&&G=="click"))&&H["on"+G]&&H["on"+G].apply(H,K)===false){I.result=false}if(!E&&H[G]&&!I.isDefaultPrevented()&&!(o.nodeName(H,"a")&&G=="click")){this.triggered=true;try{H[G]()}catch(L){}}this.triggered=false;if(!I.isPropagationStopped()){var F=H.parentNode||H.ownerDocument;if(F){o.event.trigger(I,K,F,true)}}},handle:function(K){var J,E;K=arguments[0]=o.event.fix(K||l.event);K.currentTarget=this;var L=K.type.split(".");K.type=L.shift();J=!L.length&&!K.exclusive;var I=RegExp("(^|\\.)"+L.slice().sort().join(".*\\.")+"(\\.|$)");E=(o.data(this,"events")||{})[K.type];for(var G in E){var H=E[G];if(J||I.test(H.type)){K.handler=H;K.data=H.data;var F=H.apply(this,arguments);if(F!==g){K.result=F;if(F===false){K.preventDefault();K.stopPropagation()}}if(K.isImmediatePropagationStopped()){break}}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(H){if(H[h]){return H}var F=H;H=o.Event(F);for(var G=this.props.length,J;G;){J=this.props[--G];H[J]=F[J]}if(!H.target){H.target=H.srcElement||document}if(H.target.nodeType==3){H.target=H.target.parentNode}if(!H.relatedTarget&&H.fromElement){H.relatedTarget=H.fromElement==H.target?H.toElement:H.fromElement}if(H.pageX==null&&H.clientX!=null){var I=document.documentElement,E=document.body;H.pageX=H.clientX+(I&&I.scrollLeft||E&&E.scrollLeft||0)-(I.clientLeft||0);H.pageY=H.clientY+(I&&I.scrollTop||E&&E.scrollTop||0)-(I.clientTop||0)}if(!H.which&&((H.charCode||H.charCode===0)?H.charCode:H.keyCode)){H.which=H.charCode||H.keyCode}if(!H.metaKey&&H.ctrlKey){H.metaKey=H.ctrlKey}if(!H.which&&H.button){H.which=(H.button&1?1:(H.button&2?3:(H.button&4?2:0)))}return H},proxy:function(F,E){E=E||function(){return F.apply(this,arguments)};E.guid=F.guid=F.guid||E.guid||this.guid++;return E},special:{ready:{setup:B,teardown:function(){}}},specialAll:{live:{setup:function(E,F){o.event.add(this,F[0],c)},teardown:function(G){if(G.length){var E=0,F=RegExp("(^|\\.)"+G[0]+"(\\.|$)");o.each((o.data(this,"events").live||{}),function(){if(F.test(this.type)){E++}});if(E<1){o.event.remove(this,G[0],c)}}}}}};o.Event=function(E){if(!this.preventDefault){return new o.Event(E)}if(E&&E.type){this.originalEvent=E;this.type=E.type}else{this.type=E}this.timeStamp=e();this[h]=true};function k(){return false}function u(){return true}o.Event.prototype={preventDefault:function(){this.isDefaultPrevented=u;var E=this.originalEvent;if(!E){return}if(E.preventDefault){E.preventDefault()}E.returnValue=false},stopPropagation:function(){this.isPropagationStopped=u;var E=this.originalEvent;if(!E){return}if(E.stopPropagation){E.stopPropagation()}E.cancelBubble=true},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=u;this.stopPropagation()},isDefaultPrevented:k,isPropagationStopped:k,isImmediatePropagationStopped:k};var a=function(F){var E=F.relatedTarget;while(E&&E!=this){try{E=E.parentNode}catch(G){E=this}}if(E!=this){F.type=F.data;o.event.handle.apply(this,arguments)}};o.each({mouseover:"mouseenter",mouseout:"mouseleave"},function(F,E){o.event.special[E]={setup:function(){o.event.add(this,F,a,E)},teardown:function(){o.event.remove(this,F,a)}}});o.fn.extend({bind:function(F,G,E){return F=="unload"?this.one(F,G,E):this.each(function(){o.event.add(this,F,E||G,E&&G)})},one:function(G,H,F){var E=o.event.proxy(F||H,function(I){o(this).unbind(I,E);return(F||H).apply(this,arguments)});return this.each(function(){o.event.add(this,G,E,F&&H)})},unbind:function(F,E){return this.each(function(){o.event.remove(this,F,E)})},trigger:function(E,F){return this.each(function(){o.event.trigger(E,F,this)})},triggerHandler:function(E,G){if(this[0]){var F=o.Event(E);F.preventDefault();F.stopPropagation();o.event.trigger(F,G,this[0]);return F.result}},toggle:function(G){var E=arguments,F=1;while(F<E.length){o.event.proxy(G,E[F++])}return this.click(o.event.proxy(G,function(H){this.lastToggle=(this.lastToggle||0)%F;H.preventDefault();return E[this.lastToggle++].apply(this,arguments)||false}))},hover:function(E,F){return this.mouseenter(E).mouseleave(F)},ready:function(E){B();if(o.isReady){E.call(document,o)}else{o.readyList.push(E)}return this},live:function(G,F){var E=o.event.proxy(F);E.guid+=this.selector+G;o(document).bind(i(G,this.selector),this.selector,E);return this},die:function(F,E){o(document).unbind(i(F,this.selector),E?{guid:E.guid+this.selector+F}:null);return this}});function c(H){var E=RegExp("(^|\\.)"+H.type+"(\\.|$)"),G=true,F=[];o.each(o.data(this,"events").live||[],function(I,J){if(E.test(J.type)){var K=o(H.target).closest(J.data)[0];if(K){F.push({elem:K,fn:J})}}});F.sort(function(J,I){return o.data(J.elem,"closest")-o.data(I.elem,"closest")});o.each(F,function(){if(this.fn.call(this.elem,H,this.fn.data)===false){return(G=false)}});return G}function i(F,E){return["live",F,E.replace(/\./g,"`").replace(/ /g,"|")].join(".")}o.extend({isReady:false,readyList:[],ready:function(){if(!o.isReady){o.isReady=true;if(o.readyList){o.each(o.readyList,function(){this.call(document,o)});o.readyList=null}o(document).triggerHandler("ready")}}});var x=false;function B(){if(x){return}x=true;if(document.addEventListener){document.addEventListener("DOMContentLoaded",function(){document.removeEventListener("DOMContentLoaded",arguments.callee,false);o.ready()},false)}else{if(document.attachEvent){document.attachEvent("onreadystatechange",function(){if(document.readyState==="complete"){document.detachEvent("onreadystatechange",arguments.callee);o.ready()}});if(document.documentElement.doScroll&&l==l.top){(function(){if(o.isReady){return}try{document.documentElement.doScroll("left")}catch(E){setTimeout(arguments.callee,0);return}o.ready()})()}}}o.event.add(l,"load",o.ready)}o.each(("blur,focus,load,resize,scroll,unload,click,dblclick,mousedown,mouseup,mousemove,mouseover,mouseout,mouseenter,mouseleave,change,select,submit,keydown,keypress,keyup,error").split(","),function(F,E){o.fn[E]=function(G){return G?this.bind(E,G):this.trigger(E)}});o(l).bind("unload",function(){for(var E in o.cache){if(E!=1&&o.cache[E].handle){o.event.remove(o.cache[E].handle.elem)}}});(function(){o.support={};var F=document.documentElement,G=document.createElement("script"),K=document.createElement("div"),J="script"+(new Date).getTime();K.style.display="none";K.innerHTML=' <link/><table></table><a href="/a" style="color:red;float:left;opacity:.5;">a</a><select><option>text</option></select><object><param/></object>';var H=K.getElementsByTagName("*"),E=K.getElementsByTagName("a")[0];if(!H||!H.length||!E){return}o.support={leadingWhitespace:K.firstChild.nodeType==3,tbody:!K.getElementsByTagName("tbody").length,objectAll:!!K.getElementsByTagName("object")[0].getElementsByTagName("*").length,htmlSerialize:!!K.getElementsByTagName("link").length,style:/red/.test(E.getAttribute("style")),hrefNormalized:E.getAttribute("href")==="/a",opacity:E.style.opacity==="0.5",cssFloat:!!E.style.cssFloat,scriptEval:false,noCloneEvent:true,boxModel:null};G.type="text/javascript";try{G.appendChild(document.createTextNode("window."+J+"=1;"))}catch(I){}F.insertBefore(G,F.firstChild);if(l[J]){o.support.scriptEval=true;delete l[J]}F.removeChild(G);if(K.attachEvent&&K.fireEvent){K.attachEvent("onclick",function(){o.support.noCloneEvent=false;K.detachEvent("onclick",arguments.callee)});K.cloneNode(true).fireEvent("onclick")}o(function(){var L=document.createElement("div");L.style.width=L.style.paddingLeft="1px";document.body.appendChild(L);o.boxModel=o.support.boxModel=L.offsetWidth===2;document.body.removeChild(L).style.display="none"})})();var w=o.support.cssFloat?"cssFloat":"styleFloat";o.props={"for":"htmlFor","class":"className","float":w,cssFloat:w,styleFloat:w,readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",tabindex:"tabIndex"};o.fn.extend({_load:o.fn.load,load:function(G,J,K){if(typeof G!=="string"){return this._load(G)}var I=G.indexOf(" ");if(I>=0){var E=G.slice(I,G.length);G=G.slice(0,I)}var H="GET";if(J){if(o.isFunction(J)){K=J;J=null}else{if(typeof J==="object"){J=o.param(J);H="POST"}}}var F=this;o.ajax({url:G,type:H,dataType:"html",data:J,complete:function(M,L){if(L=="success"||L=="notmodified"){F.html(E?o("<div/>").append(M.responseText.replace(/<script(.|\s)*?\/script>/g,"")).find(E):M.responseText)}if(K){F.each(K,[M.responseText,L,M])}}});return this},serialize:function(){return o.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?o.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password|search/i.test(this.type))}).map(function(E,F){var G=o(this).val();return G==null?null:o.isArray(G)?o.map(G,function(I,H){return{name:F.name,value:I}}):{name:F.name,value:G}}).get()}});o.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(E,F){o.fn[F]=function(G){return this.bind(F,G)}});var r=e();o.extend({get:function(E,G,H,F){if(o.isFunction(G)){H=G;G=null}return o.ajax({type:"GET",url:E,data:G,success:H,dataType:F})},getScript:function(E,F){return o.get(E,null,F,"script")},getJSON:function(E,F,G){return o.get(E,F,G,"json")},post:function(E,G,H,F){if(o.isFunction(G)){H=G;G={}}return o.ajax({type:"POST",url:E,data:G,success:H,dataType:F})},ajaxSetup:function(E){o.extend(o.ajaxSettings,E)},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return l.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest()},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(M){M=o.extend(true,M,o.extend(true,{},o.ajaxSettings,M));var W,F=/=\?(&|$)/g,R,V,G=M.type.toUpperCase();if(M.data&&M.processData&&typeof M.data!=="string"){M.data=o.param(M.data)}if(M.dataType=="jsonp"){if(G=="GET"){if(!M.url.match(F)){M.url+=(M.url.match(/\?/)?"&":"?")+(M.jsonp||"callback")+"=?"}}else{if(!M.data||!M.data.match(F)){M.data=(M.data?M.data+"&":"")+(M.jsonp||"callback")+"=?"}}M.dataType="json"}if(M.dataType=="json"&&(M.data&&M.data.match(F)||M.url.match(F))){W="jsonp"+r++;if(M.data){M.data=(M.data+"").replace(F,"="+W+"$1")}M.url=M.url.replace(F,"="+W+"$1");M.dataType="script";l[W]=function(X){V=X;I();L();l[W]=g;try{delete l[W]}catch(Y){}if(H){H.removeChild(T)}}}if(M.dataType=="script"&&M.cache==null){M.cache=false}if(M.cache===false&&G=="GET"){var E=e();var U=M.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+E+"$2");M.url=U+((U==M.url)?(M.url.match(/\?/)?"&":"?")+"_="+E:"")}if(M.data&&G=="GET"){M.url+=(M.url.match(/\?/)?"&":"?")+M.data;M.data=null}if(M.global&&!o.active++){o.event.trigger("ajaxStart")}var Q=/^(\w+:)?\/\/([^\/?#]+)/.exec(M.url);if(M.dataType=="script"&&G=="GET"&&Q&&(Q[1]&&Q[1]!=location.protocol||Q[2]!=location.host)){var H=document.getElementsByTagName("head")[0];var T=document.createElement("script");T.src=M.url;if(M.scriptCharset){T.charset=M.scriptCharset}if(!W){var O=false;T.onload=T.onreadystatechange=function(){if(!O&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){O=true;I();L();T.onload=T.onreadystatechange=null;H.removeChild(T)}}}H.appendChild(T);return g}var K=false;var J=M.xhr();if(M.username){J.open(G,M.url,M.async,M.username,M.password)}else{J.open(G,M.url,M.async)}try{if(M.data){J.setRequestHeader("Content-Type",M.contentType)}if(M.ifModified){J.setRequestHeader("If-Modified-Since",o.lastModified[M.url]||"Thu, 01 Jan 1970 00:00:00 GMT")}J.setRequestHeader("X-Requested-With","XMLHttpRequest");J.setRequestHeader("Accept",M.dataType&&M.accepts[M.dataType]?M.accepts[M.dataType]+", */*":M.accepts._default)}catch(S){}if(M.beforeSend&&M.beforeSend(J,M)===false){if(M.global&&!--o.active){o.event.trigger("ajaxStop")}J.abort();return false}if(M.global){o.event.trigger("ajaxSend",[J,M])}var N=function(X){if(J.readyState==0){if(P){clearInterval(P);P=null;if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}}else{if(!K&&J&&(J.readyState==4||X=="timeout")){K=true;if(P){clearInterval(P);P=null}R=X=="timeout"?"timeout":!o.httpSuccess(J)?"error":M.ifModified&&o.httpNotModified(J,M.url)?"notmodified":"success";if(R=="success"){try{V=o.httpData(J,M.dataType,M)}catch(Z){R="parsererror"}}if(R=="success"){var Y;try{Y=J.getResponseHeader("Last-Modified")}catch(Z){}if(M.ifModified&&Y){o.lastModified[M.url]=Y}if(!W){I()}}else{o.handleError(M,J,R)}L();if(X){J.abort()}if(M.async){J=null}}}};if(M.async){var P=setInterval(N,13);if(M.timeout>0){setTimeout(function(){if(J&&!K){N("timeout")}},M.timeout)}}try{J.send(M.data)}catch(S){o.handleError(M,J,null,S)}if(!M.async){N()}function I(){if(M.success){M.success(V,R)}if(M.global){o.event.trigger("ajaxSuccess",[J,M])}}function L(){if(M.complete){M.complete(J,R)}if(M.global){o.event.trigger("ajaxComplete",[J,M])}if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}return J},handleError:function(F,H,E,G){if(F.error){F.error(H,E,G)}if(F.global){o.event.trigger("ajaxError",[H,F,G])}},active:0,httpSuccess:function(F){try{return !F.status&&location.protocol=="file:"||(F.status>=200&&F.status<300)||F.status==304||F.status==1223}catch(E){}return false},httpNotModified:function(G,E){try{var H=G.getResponseHeader("Last-Modified");return G.status==304||H==o.lastModified[E]}catch(F){}return false},httpData:function(J,H,G){var F=J.getResponseHeader("content-type"),E=H=="xml"||!H&&F&&F.indexOf("xml")>=0,I=E?J.responseXML:J.responseText;if(E&&I.documentElement.tagName=="parsererror"){throw"parsererror"}if(G&&G.dataFilter){I=G.dataFilter(I,H)}if(typeof I==="string"){if(H=="script"){o.globalEval(I)}if(H=="json"){I=l["eval"]("("+I+")")}}return I},param:function(E){var G=[];function H(I,J){G[G.length]=encodeURIComponent(I)+"="+encodeURIComponent(J)}if(o.isArray(E)||E.jquery){o.each(E,function(){H(this.name,this.value)})}else{for(var F in E){if(o.isArray(E[F])){o.each(E[F],function(){H(F,this)})}else{H(F,o.isFunction(E[F])?E[F]():E[F])}}}return G.join("&").replace(/%20/g,"+")}});var m={},n,d=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];function t(F,E){var G={};o.each(d.concat.apply([],d.slice(0,E)),function(){G[this]=F});return G}o.fn.extend({show:function(J,L){if(J){return this.animate(t("show",3),J,L)}else{for(var H=0,F=this.length;H<F;H++){var E=o.data(this[H],"olddisplay");this[H].style.display=E||"";if(o.css(this[H],"display")==="none"){var G=this[H].tagName,K;if(m[G]){K=m[G]}else{var I=o("<"+G+" />").appendTo("body");K=I.css("display");if(K==="none"){K="block"}I.remove();m[G]=K}o.data(this[H],"olddisplay",K)}}for(var H=0,F=this.length;H<F;H++){this[H].style.display=o.data(this[H],"olddisplay")||""}return this}},hide:function(H,I){if(H){return this.animate(t("hide",3),H,I)}else{for(var G=0,F=this.length;G<F;G++){var E=o.data(this[G],"olddisplay");if(!E&&E!=="none"){o.data(this[G],"olddisplay",o.css(this[G],"display"))}}for(var G=0,F=this.length;G<F;G++){this[G].style.display="none"}return this}},_toggle:o.fn.toggle,toggle:function(G,F){var E=typeof G==="boolean";return o.isFunction(G)&&o.isFunction(F)?this._toggle.apply(this,arguments):G==null||E?this.each(function(){var H=E?G:o(this).is(":hidden");o(this)[H?"show":"hide"]()}):this.animate(t("toggle",3),G,F)},fadeTo:function(E,G,F){return this.animate({opacity:G},E,F)},animate:function(I,F,H,G){var E=o.speed(F,H,G);return this[E.queue===false?"each":"queue"](function(){var K=o.extend({},E),M,L=this.nodeType==1&&o(this).is(":hidden"),J=this;for(M in I){if(I[M]=="hide"&&L||I[M]=="show"&&!L){return K.complete.call(this)}if((M=="height"||M=="width")&&this.style){K.display=o.css(this,"display");K.overflow=this.style.overflow}}if(K.overflow!=null){this.style.overflow="hidden"}K.curAnim=o.extend({},I);o.each(I,function(O,S){var R=new o.fx(J,K,O);if(/toggle|show|hide/.test(S)){R[S=="toggle"?L?"show":"hide":S](I)}else{var Q=S.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),T=R.cur(true)||0;if(Q){var N=parseFloat(Q[2]),P=Q[3]||"px";if(P!="px"){J.style[O]=(N||1)+P;T=((N||1)/R.cur(true))*T;J.style[O]=T+P}if(Q[1]){N=((Q[1]=="-="?-1:1)*N)+T}R.custom(T,N,P)}else{R.custom(T,S,"")}}});return true})},stop:function(F,E){var G=o.timers;if(F){this.queue([])}this.each(function(){for(var H=G.length-1;H>=0;H--){if(G[H].elem==this){if(E){G[H](true)}G.splice(H,1)}}});if(!E){this.dequeue()}return this}});o.each({slideDown:t("show",1),slideUp:t("hide",1),slideToggle:t("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(E,F){o.fn[E]=function(G,H){return this.animate(F,G,H)}});o.extend({speed:function(G,H,F){var E=typeof G==="object"?G:{complete:F||!F&&H||o.isFunction(G)&&G,duration:G,easing:F&&H||H&&!o.isFunction(H)&&H};E.duration=o.fx.off?0:typeof E.duration==="number"?E.duration:o.fx.speeds[E.duration]||o.fx.speeds._default;E.old=E.complete;E.complete=function(){if(E.queue!==false){o(this).dequeue()}if(o.isFunction(E.old)){E.old.call(this)}};return E},easing:{linear:function(G,H,E,F){return E+F*G},swing:function(G,H,E,F){return((-Math.cos(G*Math.PI)/2)+0.5)*F+E}},timers:[],fx:function(F,E,G){this.options=E;this.elem=F;this.prop=G;if(!E.orig){E.orig={}}}});o.fx.prototype={update:function(){if(this.options.step){this.options.step.call(this.elem,this.now,this)}(o.fx.step[this.prop]||o.fx.step._default)(this);if((this.prop=="height"||this.prop=="width")&&this.elem.style){this.elem.style.display="block"}},cur:function(F){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)){return this.elem[this.prop]}var E=parseFloat(o.css(this.elem,this.prop,F));return E&&E>-10000?E:parseFloat(o.curCSS(this.elem,this.prop))||0},custom:function(I,H,G){this.startTime=e();this.start=I;this.end=H;this.unit=G||this.unit||"px";this.now=this.start;this.pos=this.state=0;var E=this;function F(J){return E.step(J)}F.elem=this.elem;if(F()&&o.timers.push(F)&&!n){n=setInterval(function(){var K=o.timers;for(var J=0;J<K.length;J++){if(!K[J]()){K.splice(J--,1)}}if(!K.length){clearInterval(n);n=g}},13)}},show:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.show=true;this.custom(this.prop=="width"||this.prop=="height"?1:0,this.cur());o(this.elem).show()},hide:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.hide=true;this.custom(this.cur(),0)},step:function(H){var G=e();if(H||G>=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var E=true;for(var F in this.options.curAnim){if(this.options.curAnim[F]!==true){E=false}}if(E){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(o.css(this.elem,"display")=="none"){this.elem.style.display="block"}}if(this.options.hide){o(this.elem).hide()}if(this.options.hide||this.options.show){for(var I in this.options.curAnim){o.attr(this.elem.style,I,this.options.orig[I])}}this.options.complete.call(this.elem)}return false}else{var J=G-this.startTime;this.state=J/this.options.duration;this.pos=o.easing[this.options.easing||(o.easing.swing?"swing":"linear")](this.state,J,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update()}return true}};o.extend(o.fx,{speeds:{slow:600,fast:200,_default:400},step:{opacity:function(E){o.attr(E.elem.style,"opacity",E.now)},_default:function(E){if(E.elem.style&&E.elem.style[E.prop]!=null){E.elem.style[E.prop]=E.now+E.unit}else{E.elem[E.prop]=E.now}}}});if(document.documentElement.getBoundingClientRect){o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}var G=this[0].getBoundingClientRect(),J=this[0].ownerDocument,F=J.body,E=J.documentElement,L=E.clientTop||F.clientTop||0,K=E.clientLeft||F.clientLeft||0,I=G.top+(self.pageYOffset||o.boxModel&&E.scrollTop||F.scrollTop)-L,H=G.left+(self.pageXOffset||o.boxModel&&E.scrollLeft||F.scrollLeft)-K;return{top:I,left:H}}}else{o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}o.offset.initialized||o.offset.initialize();var J=this[0],G=J.offsetParent,F=J,O=J.ownerDocument,M,H=O.documentElement,K=O.body,L=O.defaultView,E=L.getComputedStyle(J,null),N=J.offsetTop,I=J.offsetLeft;while((J=J.parentNode)&&J!==K&&J!==H){M=L.getComputedStyle(J,null);N-=J.scrollTop,I-=J.scrollLeft;if(J===G){N+=J.offsetTop,I+=J.offsetLeft;if(o.offset.doesNotAddBorder&&!(o.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(J.tagName))){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}F=G,G=J.offsetParent}if(o.offset.subtractsBorderForOverflowNotVisible&&M.overflow!=="visible"){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}E=M}if(E.position==="relative"||E.position==="static"){N+=K.offsetTop,I+=K.offsetLeft}if(E.position==="fixed"){N+=Math.max(H.scrollTop,K.scrollTop),I+=Math.max(H.scrollLeft,K.scrollLeft)}return{top:N,left:I}}}o.offset={initialize:function(){if(this.initialized){return}var L=document.body,F=document.createElement("div"),H,G,N,I,M,E,J=L.style.marginTop,K='<div style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;"><div></div></div><table style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;" cellpadding="0" cellspacing="0"><tr><td></td></tr></table>';M={position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"};for(E in M){F.style[E]=M[E]}F.innerHTML=K;L.insertBefore(F,L.firstChild);H=F.firstChild,G=H.firstChild,I=H.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(G.offsetTop!==5);this.doesAddBorderForTableAndCells=(I.offsetTop===5);H.style.overflow="hidden",H.style.position="relative";this.subtractsBorderForOverflowNotVisible=(G.offsetTop===-5);L.style.marginTop="1px";this.doesNotIncludeMarginInBodyOffset=(L.offsetTop===0);L.style.marginTop=J;L.removeChild(F);this.initialized=true},bodyOffset:function(E){o.offset.initialized||o.offset.initialize();var G=E.offsetTop,F=E.offsetLeft;if(o.offset.doesNotIncludeMarginInBodyOffset){G+=parseInt(o.curCSS(E,"marginTop",true),10)||0,F+=parseInt(o.curCSS(E,"marginLeft",true),10)||0}return{top:G,left:F}}};o.fn.extend({position:function(){var I=0,H=0,F;if(this[0]){var G=this.offsetParent(),J=this.offset(),E=/^body|html$/i.test(G[0].tagName)?{top:0,left:0}:G.offset();J.top-=j(this,"marginTop");J.left-=j(this,"marginLeft");E.top+=j(G,"borderTopWidth");E.left+=j(G,"borderLeftWidth");F={top:J.top-E.top,left:J.left-E.left}}return F},offsetParent:function(){var E=this[0].offsetParent||document.body;while(E&&(!/^body|html$/i.test(E.tagName)&&o.css(E,"position")=="static")){E=E.offsetParent}return o(E)}});o.each(["Left","Top"],function(F,E){var G="scroll"+E;o.fn[G]=function(H){if(!this[0]){return null}return H!==g?this.each(function(){this==l||this==document?l.scrollTo(!F?H:o(l).scrollLeft(),F?H:o(l).scrollTop()):this[G]=H}):this[0]==l||this[0]==document?self[F?"pageYOffset":"pageXOffset"]||o.boxModel&&document.documentElement[G]||document.body[G]:this[0][G]}});o.each(["Height","Width"],function(I,G){var E=I?"Left":"Top",H=I?"Right":"Bottom",F=G.toLowerCase();o.fn["inner"+G]=function(){return this[0]?o.css(this[0],F,false,"padding"):null};o.fn["outer"+G]=function(K){return this[0]?o.css(this[0],F,false,K?"margin":"border"):null};var J=G.toLowerCase();o.fn[J]=function(K){return this[0]==l?document.compatMode=="CSS1Compat"&&document.documentElement["client"+G]||document.body["client"+G]:this[0]==document?Math.max(document.documentElement["client"+G],document.body["scroll"+G],document.documentElement["scroll"+G],document.body["offset"+G],document.documentElement["offset"+G]):K===g?(this.length?o.css(this[0],J):null):this.css(J,typeof K==="string"?K:K+"px")}})})();
\ No newline at end of file diff --git a/examples/lessons/6_English_months/js/lesson.js b/examples/lessons/6_English_months/js/lesson.js deleted file mode 100755 index 5919474..0000000 --- a/examples/lessons/6_English_months/js/lesson.js +++ /dev/null @@ -1,227 +0,0 @@ -$(document).ready(function(){ - var k = Karma({ - audio: [{'name':'correct','file':'correct.ogg'}, - {'name':'incorrect','file':'incorrect.ogg'}, - {'name':'January','file':'January.wav'}, - {'name':'February','file':'February.wav'}, - {'name':'March','file':'March.wav'}, - {'name':'April','file':'April.wav'}, - {'name':'May','file':'May.wav'}, - {'name':'June','file':'June.wav'}, - {'name':'July','file':'July.wav'}, - {'name':'August','file':'August.wav'}, - {'name':'September','file':'September.wav'}, - {'name':'October','file':'October.wav'}, - {'name':'November','file':'November.wav'}, - {'name':'December','file':'December.wav'} - ]}); - - k.ready(function(){ - var i,j,flag; - var TOTAL_QUES = 12; - var currentDragObject; - var randPositions = []; - var arrangedAns = []; - var sectionNum; //store the three levels values 0,1,2 - var currentAlphaNum; //store the current questions num - var checked; //store the current checked value - var num; - var flag_checked; //status flag for one time correct alpahbetical order - var currentMonth; - var currentDragObject; - var arrangedAns = []; - var randBoxes = []; //store the random boxes value to check - // six alphabets given to be ordered 6 steps needed to complete the picture 3 levels too complex - var months = new Array('January','February','March','April','May','June','July','August', - 'September','October','November','December'); - var monthOrder = new Array('1st','2nd','3rd','4th','5th','6th','7th','8th','9th','10th','11th','12th'); - - var genRandPosition=function (){ - randPositions[0] = k.rand(0,TOTAL_QUES-1); - for(i=1; i<TOTAL_QUES; i++){ - do{ - flag = 0; - randPositions[i] = k.rand(0,TOTAL_QUES-1); - for(j=0; j<i; j++){ - if(randPositions[i] === randPositions[j]){ - flag++; - } - } - }while(flag != 0 ); //end of do while loop - } - }; - - var assignMonthsDisplay = function (monthId){ - $('#section').append('<div id="imageArea'+monthId+'" class="imgArea"></div>'); - $('#imageArea'+monthId).append('<div id="month'+monthId+'" class="monthsName">'+months[monthId]+'</div>'); - $('#imageArea'+monthId).append('<img draggable="false" class = "imgBox" src="assets/image/'+months[monthId]+'.png" width:"75%" height="75%"/>'); - $('#imageArea'+monthId).click(function(){ - k.audio[months[monthId]].play(); - }); - }; - - var assignMonths = function (monthId){ - $('#section').append('<div id="monthArea'+monthId+'" class="dropMonthArea"></div>'); - $('#monthArea'+monthId).append('<img class="imgSmall" src="assets/image/small_'+months[monthId]+'.png" />'); - $('#monthArea'+monthId).append('<div class="orderTxt">'+monthOrder[monthId]+'</div>'); - $('#monthArea'+monthId).append('<div id="drop'+monthId+'" class="dropObjects"></div>'); - $('#monthArea'+monthId).append('<span id="checkMonth'+monthId+'" class="check"></div>'); - var dropObjCss = { - 'width':'100px','height': '33px','margin': '10px 0px 10px 100px','border-bottom':'2px solid black' - }; - $('.dropObjects').css(dropObjCss); - - }; - - var assignDragMonths = function(monthId){ - var currentMonth = months[monthId]; - $('#dragMonthArea').append('<div id="drag'+monthId+'" class="dragObjects"></div>'); - var dragObjCss = { - 'float': 'left','cursor': 'move','width':'120px','height':'30px', - 'margin':'0.3em', - 'font':'20px/25px bold Arial,Verdana,Geneva,Helvetica' - }; - $('.dragObjects').css(dragObjCss); - var z; - var monthLength = currentMonth.length; - var randNum = k.rand(0,monthLength-1); - randBoxes[monthId] = randNum; - for(z = 0; z < monthLength; z++){ - if(z === (randNum)){ - $('#drag'+monthId).append('<input type="text" id="box'+monthId+'" class="blankBox" maxlength="1"/>') - $('#box'+monthId).Watermark("?"); - //insert text box - } - else{ - $('#drag'+monthId).append(currentMonth[z]); - } - - } - }; - - function drag_drop(){ - $('.dragObjects').draggable({ containment: '#content'}); - $('.dragObjects').bind('dragstart', function(event, ui) { - currentDragObject = event.target.id; - currentMonth = parseInt(currentDragObject.substring(4)); - - }); - - $(".dropObjects").droppable({ tolerence: 'intersect' ,hoverClass: 'drophover'}); - $('.dropObjects').bind('drop', function(event, ui) { - var currentDropObject = event.target.id; - var droppedWord = parseInt(currentDropObject.substring(4)); - arrangedAns[droppedWord] = $('#'+currentDragObject).text(); - - /*if(arrangedAns[droppedWord] === months[droppedWord]){ - $('#'+currentDragObject).draggable('disable'); - }*/ - }); - } - - - var check_months = function(){ - var correct = 0; - var d = 0; - var arrangedMonths = []; - for(i=0; i<TOTAL_QUES; i++){ - if(arrangedAns[i].length != 0){ - var boxText = $('#box'+i).val(); - var textStore = ""; - var actText = arrangedAns[i]; - var len = arrangedAns[i].length; - var flag=0; - for(var x = 0; x < len+1; x++){ - if(x === randBoxes[i]){ - textStore += boxText; - flag = 1; - } - else{ - if(flag === 1){ - textStore += actText[x-1]; - } - else{ - textStore += actText[x]; - } - - } - } - arrangedMonths[i] = textStore; - } - - //check correct or incorrect - if(arrangedMonths[i] === months[i]){ - $('#checkMonth'+i).html('<img src="assets/image/correct.png">'); - correct++; - } - else{ - $('#checkMonth'+i).html('<img src="assets/image/incorrect.png">'); - } - - } - if(correct === 12){ - display_game_over(); - } - - }; - - - var display_game_over = function(){ - $('#section').hide(); - $('#gameOver').show(); - $('#gameOver').html(''); - $('#gameOver').append('GAME OVER<br/>Congratulations!!!'); - }; - - - - function game_start(){ - $('#linkCheck').show(); - $('#gameOver').hide(); - $('#linkNext').hide(); - $('#section').html(''); - for(var i = 0;i<TOTAL_QUES;i++){ - arrangedAns[i] = 0; - } - $('#section').append('<div id="topText">Fill in the blanks and place month in right order.</div>'); - for(i=0; i<TOTAL_QUES; i++){ - assignMonths(i); - } - $('#section').append('<div id="dragMonthArea"></div>'); - genRandPosition(); - for(i=0; i<TOTAL_QUES; i++){ - assignDragMonths(randPositions[i]); - } - drag_drop(); - - } - function game(){ - $('#linkCheck').hide(); - $('#gameOver').hide(); - $('#linkNext').show(); - $('#linkBack').hide(); - $('#section').html(''); - $('#section').append('<div id="topText">Learn the spelling of each month.</div>'); - for( i = 0; i<TOTAL_QUES; i++){ - assignMonthsDisplay(i); - } - } - game(); - $('#linkCheck').click(function(){ - check_months(); - }); - $('#linkNext').click(function(){ - game_start(); - }); - $('#linkBack').click(function(){ - game(); - }); - $('#linkStart').click(function(){ - game_start(); - }); - - $('#linkPlayAgain').click(function(){ - game(); - }); - }); //end of k.ready -}); //end of document.ready
\ No newline at end of file diff --git a/examples/lessons/6_English_months/js/ui.draggable.js b/examples/lessons/6_English_months/js/ui.draggable.js deleted file mode 100755 index 0402f0e..0000000 --- a/examples/lessons/6_English_months/js/ui.draggable.js +++ /dev/null @@ -1,766 +0,0 @@ -/* - * jQuery UI Draggable 1.7.2 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Draggables - * - * Depends: - * ui.core.js - */ -(function($) { - -$.widget("ui.draggable", $.extend({}, $.ui.mouse, { - - _init: function() { - - if (this.options.helper == 'original' && !(/^(?:r|a|f)/).test(this.element.css("position"))) - this.element[0].style.position = 'relative'; - - (this.options.addClasses && this.element.addClass("ui-draggable")); - (this.options.disabled && this.element.addClass("ui-draggable-disabled")); - - this._mouseInit(); - - }, - - destroy: function() { - if(!this.element.data('draggable')) return; - this.element - .removeData("draggable") - .unbind(".draggable") - .removeClass("ui-draggable" - + " ui-draggable-dragging" - + " ui-draggable-disabled"); - this._mouseDestroy(); - }, - - _mouseCapture: function(event) { - - var o = this.options; - - if (this.helper || o.disabled || $(event.target).is('.ui-resizable-handle')) - return false; - - //Quit if we're not on a valid handle - this.handle = this._getHandle(event); - if (!this.handle) - return false; - - return true; - - }, - - _mouseStart: function(event) { - - var o = this.options; - - //Create and append the visible helper - this.helper = this._createHelper(event); - - //Cache the helper size - this._cacheHelperProportions(); - - //If ddmanager is used for droppables, set the global draggable - if($.ui.ddmanager) - $.ui.ddmanager.current = this; - - /* - * - Position generation - - * This block generates everything position related - it's the core of draggables. - */ - - //Cache the margins of the original element - this._cacheMargins(); - - //Store the helper's css position - this.cssPosition = this.helper.css("position"); - this.scrollParent = this.helper.scrollParent(); - - //The element's absolute position on the page minus margins - this.offset = this.element.offset(); - this.offset = { - top: this.offset.top - this.margins.top, - left: this.offset.left - this.margins.left - }; - - $.extend(this.offset, { - click: { //Where the click happened, relative to the element - left: event.pageX - this.offset.left, - top: event.pageY - this.offset.top - }, - parent: this._getParentOffset(), - relative: this._getRelativeOffset() //This is a relative to absolute position minus the actual position calculation - only used for relative positioned helper - }); - - //Generate the original position - this.originalPosition = this._generatePosition(event); - this.originalPageX = event.pageX; - this.originalPageY = event.pageY; - - //Adjust the mouse offset relative to the helper if 'cursorAt' is supplied - if(o.cursorAt) - this._adjustOffsetFromHelper(o.cursorAt); - - //Set a containment if given in the options - if(o.containment) - this._setContainment(); - - //Call plugins and callbacks - this._trigger("start", event); - - //Recache the helper size - this._cacheHelperProportions(); - - //Prepare the droppable offsets - if ($.ui.ddmanager && !o.dropBehaviour) - $.ui.ddmanager.prepareOffsets(this, event); - - this.helper.addClass("ui-draggable-dragging"); - this._mouseDrag(event, true); //Execute the drag once - this causes the helper not to be visible before getting its correct position - return true; - }, - - _mouseDrag: function(event, noPropagation) { - - //Compute the helpers position - this.position = this._generatePosition(event); - this.positionAbs = this._convertPositionTo("absolute"); - - //Call plugins and callbacks and use the resulting position if something is returned - if (!noPropagation) { - var ui = this._uiHash(); - this._trigger('drag', event, ui); - this.position = ui.position; - } - - if(!this.options.axis || this.options.axis != "y") this.helper[0].style.left = this.position.left+'px'; - if(!this.options.axis || this.options.axis != "x") this.helper[0].style.top = this.position.top+'px'; - if($.ui.ddmanager) $.ui.ddmanager.drag(this, event); - - return false; - }, - - _mouseStop: function(event) { - - //If we are using droppables, inform the manager about the drop - var dropped = false; - if ($.ui.ddmanager && !this.options.dropBehaviour) - dropped = $.ui.ddmanager.drop(this, event); - - //if a drop comes from outside (a sortable) - if(this.dropped) { - dropped = this.dropped; - this.dropped = false; - } - - if((this.options.revert == "invalid" && !dropped) || (this.options.revert == "valid" && dropped) || this.options.revert === true || ($.isFunction(this.options.revert) && this.options.revert.call(this.element, dropped))) { - var self = this; - $(this.helper).animate(this.originalPosition, parseInt(this.options.revertDuration, 10), function() { - self._trigger("stop", event); - self._clear(); - }); - } else { - this._trigger("stop", event); - this._clear(); - } - - return false; - }, - - _getHandle: function(event) { - - var handle = !this.options.handle || !$(this.options.handle, this.element).length ? true : false; - $(this.options.handle, this.element) - .find("*") - .andSelf() - .each(function() { - if(this == event.target) handle = true; - }); - - return handle; - - }, - - _createHelper: function(event) { - - var o = this.options; - var helper = $.isFunction(o.helper) ? $(o.helper.apply(this.element[0], [event])) : (o.helper == 'clone' ? this.element.clone() : this.element); - - if(!helper.parents('body').length) - helper.appendTo((o.appendTo == 'parent' ? this.element[0].parentNode : o.appendTo)); - - if(helper[0] != this.element[0] && !(/(fixed|absolute)/).test(helper.css("position"))) - helper.css("position", "absolute"); - - return helper; - - }, - - _adjustOffsetFromHelper: function(obj) { - if(obj.left != undefined) this.offset.click.left = obj.left + this.margins.left; - if(obj.right != undefined) this.offset.click.left = this.helperProportions.width - obj.right + this.margins.left; - if(obj.top != undefined) this.offset.click.top = obj.top + this.margins.top; - if(obj.bottom != undefined) this.offset.click.top = this.helperProportions.height - obj.bottom + this.margins.top; - }, - - _getParentOffset: function() { - - //Get the offsetParent and cache its position - this.offsetParent = this.helper.offsetParent(); - var po = this.offsetParent.offset(); - - // This is a special case where we need to modify a offset calculated on start, since the following happened: - // 1. The position of the helper is absolute, so it's position is calculated based on the next positioned parent - // 2. The actual offset parent is a child of the scroll parent, and the scroll parent isn't the document, which means that - // the scroll is included in the initial calculation of the offset of the parent, and never recalculated upon drag - if(this.cssPosition == 'absolute' && this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) { - po.left += this.scrollParent.scrollLeft(); - po.top += this.scrollParent.scrollTop(); - } - - if((this.offsetParent[0] == document.body) //This needs to be actually done for all browsers, since pageX/pageY includes this information - || (this.offsetParent[0].tagName && this.offsetParent[0].tagName.toLowerCase() == 'html' && $.browser.msie)) //Ugly IE fix - po = { top: 0, left: 0 }; - - return { - top: po.top + (parseInt(this.offsetParent.css("borderTopWidth"),10) || 0), - left: po.left + (parseInt(this.offsetParent.css("borderLeftWidth"),10) || 0) - }; - - }, - - _getRelativeOffset: function() { - - if(this.cssPosition == "relative") { - var p = this.element.position(); - return { - top: p.top - (parseInt(this.helper.css("top"),10) || 0) + this.scrollParent.scrollTop(), - left: p.left - (parseInt(this.helper.css("left"),10) || 0) + this.scrollParent.scrollLeft() - }; - } else { - return { top: 0, left: 0 }; - } - - }, - - _cacheMargins: function() { - this.margins = { - left: (parseInt(this.element.css("marginLeft"),10) || 0), - top: (parseInt(this.element.css("marginTop"),10) || 0) - }; - }, - - _cacheHelperProportions: function() { - this.helperProportions = { - width: this.helper.outerWidth(), - height: this.helper.outerHeight() - }; - }, - - _setContainment: function() { - - var o = this.options; - if(o.containment == 'parent') o.containment = this.helper[0].parentNode; - if(o.containment == 'document' || o.containment == 'window') this.containment = [ - 0 - this.offset.relative.left - this.offset.parent.left, - 0 - this.offset.relative.top - this.offset.parent.top, - $(o.containment == 'document' ? document : window).width() - this.helperProportions.width - this.margins.left, - ($(o.containment == 'document' ? document : window).height() || document.body.parentNode.scrollHeight) - this.helperProportions.height - this.margins.top - ]; - - if(!(/^(document|window|parent)$/).test(o.containment) && o.containment.constructor != Array) { - var ce = $(o.containment)[0]; if(!ce) return; - var co = $(o.containment).offset(); - var over = ($(ce).css("overflow") != 'hidden'); - - this.containment = [ - co.left + (parseInt($(ce).css("borderLeftWidth"),10) || 0) + (parseInt($(ce).css("paddingLeft"),10) || 0) - this.margins.left, - co.top + (parseInt($(ce).css("borderTopWidth"),10) || 0) + (parseInt($(ce).css("paddingTop"),10) || 0) - this.margins.top, - co.left+(over ? Math.max(ce.scrollWidth,ce.offsetWidth) : ce.offsetWidth) - (parseInt($(ce).css("borderLeftWidth"),10) || 0) - (parseInt($(ce).css("paddingRight"),10) || 0) - this.helperProportions.width - this.margins.left, - co.top+(over ? Math.max(ce.scrollHeight,ce.offsetHeight) : ce.offsetHeight) - (parseInt($(ce).css("borderTopWidth"),10) || 0) - (parseInt($(ce).css("paddingBottom"),10) || 0) - this.helperProportions.height - this.margins.top - ]; - } else if(o.containment.constructor == Array) { - this.containment = o.containment; - } - - }, - - _convertPositionTo: function(d, pos) { - - if(!pos) pos = this.position; - var mod = d == "absolute" ? 1 : -1; - var o = this.options, scroll = this.cssPosition == 'absolute' && !(this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent, scrollIsRootNode = (/(html|body)/i).test(scroll[0].tagName); - - return { - top: ( - pos.top // The absolute mouse position - + this.offset.relative.top * mod // Only for relative positioned nodes: Relative offset from element to offset parent - + this.offset.parent.top * mod // The offsetParent's offset without borders (offset + border) - - ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollTop() : ( scrollIsRootNode ? 0 : scroll.scrollTop() ) ) * mod) - ), - left: ( - pos.left // The absolute mouse position - + this.offset.relative.left * mod // Only for relative positioned nodes: Relative offset from element to offset parent - + this.offset.parent.left * mod // The offsetParent's offset without borders (offset + border) - - ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollLeft() : scrollIsRootNode ? 0 : scroll.scrollLeft() ) * mod) - ) - }; - - }, - - _generatePosition: function(event) { - - var o = this.options, scroll = this.cssPosition == 'absolute' && !(this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent, scrollIsRootNode = (/(html|body)/i).test(scroll[0].tagName); - - // This is another very weird special case that only happens for relative elements: - // 1. If the css position is relative - // 2. and the scroll parent is the document or similar to the offset parent - // we have to refresh the relative offset during the scroll so there are no jumps - if(this.cssPosition == 'relative' && !(this.scrollParent[0] != document && this.scrollParent[0] != this.offsetParent[0])) { - this.offset.relative = this._getRelativeOffset(); - } - - var pageX = event.pageX; - var pageY = event.pageY; - - /* - * - Position constraining - - * Constrain the position to a mix of grid, containment. - */ - - if(this.originalPosition) { //If we are not dragging yet, we won't check for options - - if(this.containment) { - if(event.pageX - this.offset.click.left < this.containment[0]) pageX = this.containment[0] + this.offset.click.left; - if(event.pageY - this.offset.click.top < this.containment[1]) pageY = this.containment[1] + this.offset.click.top; - if(event.pageX - this.offset.click.left > this.containment[2]) pageX = this.containment[2] + this.offset.click.left; - if(event.pageY - this.offset.click.top > this.containment[3]) pageY = this.containment[3] + this.offset.click.top; - } - - if(o.grid) { - var top = this.originalPageY + Math.round((pageY - this.originalPageY) / o.grid[1]) * o.grid[1]; - pageY = this.containment ? (!(top - this.offset.click.top < this.containment[1] || top - this.offset.click.top > this.containment[3]) ? top : (!(top - this.offset.click.top < this.containment[1]) ? top - o.grid[1] : top + o.grid[1])) : top; - - var left = this.originalPageX + Math.round((pageX - this.originalPageX) / o.grid[0]) * o.grid[0]; - pageX = this.containment ? (!(left - this.offset.click.left < this.containment[0] || left - this.offset.click.left > this.containment[2]) ? left : (!(left - this.offset.click.left < this.containment[0]) ? left - o.grid[0] : left + o.grid[0])) : left; - } - - } - - return { - top: ( - pageY // The absolute mouse position - - this.offset.click.top // Click offset (relative to the element) - - this.offset.relative.top // Only for relative positioned nodes: Relative offset from element to offset parent - - this.offset.parent.top // The offsetParent's offset without borders (offset + border) - + ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollTop() : ( scrollIsRootNode ? 0 : scroll.scrollTop() ) )) - ), - left: ( - pageX // The absolute mouse position - - this.offset.click.left // Click offset (relative to the element) - - this.offset.relative.left // Only for relative positioned nodes: Relative offset from element to offset parent - - this.offset.parent.left // The offsetParent's offset without borders (offset + border) - + ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollLeft() : scrollIsRootNode ? 0 : scroll.scrollLeft() )) - ) - }; - - }, - - _clear: function() { - this.helper.removeClass("ui-draggable-dragging"); - if(this.helper[0] != this.element[0] && !this.cancelHelperRemoval) this.helper.remove(); - //if($.ui.ddmanager) $.ui.ddmanager.current = null; - this.helper = null; - this.cancelHelperRemoval = false; - }, - - // From now on bulk stuff - mainly helpers - - _trigger: function(type, event, ui) { - ui = ui || this._uiHash(); - $.ui.plugin.call(this, type, [event, ui]); - if(type == "drag") this.positionAbs = this._convertPositionTo("absolute"); //The absolute position has to be recalculated after plugins - return $.widget.prototype._trigger.call(this, type, event, ui); - }, - - plugins: {}, - - _uiHash: function(event) { - return { - helper: this.helper, - position: this.position, - absolutePosition: this.positionAbs, //deprecated - offset: this.positionAbs - }; - } - -})); - -$.extend($.ui.draggable, { - version: "1.7.2", - eventPrefix: "drag", - defaults: { - addClasses: true, - appendTo: "parent", - axis: false, - cancel: ":input,option", - connectToSortable: false, - containment: false, - cursor: "auto", - cursorAt: false, - delay: 0, - distance: 1, - grid: false, - handle: false, - helper: "original", - iframeFix: false, - opacity: false, - refreshPositions: false, - revert: false, - revertDuration: 500, - scope: "default", - scroll: true, - scrollSensitivity: 20, - scrollSpeed: 20, - snap: false, - snapMode: "both", - snapTolerance: 20, - stack: false, - zIndex: false - } -}); - -$.ui.plugin.add("draggable", "connectToSortable", { - start: function(event, ui) { - - var inst = $(this).data("draggable"), o = inst.options, - uiSortable = $.extend({}, ui, { item: inst.element }); - inst.sortables = []; - $(o.connectToSortable).each(function() { - var sortable = $.data(this, 'sortable'); - if (sortable && !sortable.options.disabled) { - inst.sortables.push({ - instance: sortable, - shouldRevert: sortable.options.revert - }); - sortable._refreshItems(); //Do a one-time refresh at start to refresh the containerCache - sortable._trigger("activate", event, uiSortable); - } - }); - - }, - stop: function(event, ui) { - - //If we are still over the sortable, we fake the stop event of the sortable, but also remove helper - var inst = $(this).data("draggable"), - uiSortable = $.extend({}, ui, { item: inst.element }); - - $.each(inst.sortables, function() { - if(this.instance.isOver) { - - this.instance.isOver = 0; - - inst.cancelHelperRemoval = true; //Don't remove the helper in the draggable instance - this.instance.cancelHelperRemoval = false; //Remove it in the sortable instance (so sortable plugins like revert still work) - - //The sortable revert is supported, and we have to set a temporary dropped variable on the draggable to support revert: 'valid/invalid' - if(this.shouldRevert) this.instance.options.revert = true; - - //Trigger the stop of the sortable - this.instance._mouseStop(event); - - this.instance.options.helper = this.instance.options._helper; - - //If the helper has been the original item, restore properties in the sortable - if(inst.options.helper == 'original') - this.instance.currentItem.css({ top: 'auto', left: 'auto' }); - - } else { - this.instance.cancelHelperRemoval = false; //Remove the helper in the sortable instance - this.instance._trigger("deactivate", event, uiSortable); - } - - }); - - }, - drag: function(event, ui) { - - var inst = $(this).data("draggable"), self = this; - - var checkPos = function(o) { - var dyClick = this.offset.click.top, dxClick = this.offset.click.left; - var helperTop = this.positionAbs.top, helperLeft = this.positionAbs.left; - var itemHeight = o.height, itemWidth = o.width; - var itemTop = o.top, itemLeft = o.left; - - return $.ui.isOver(helperTop + dyClick, helperLeft + dxClick, itemTop, itemLeft, itemHeight, itemWidth); - }; - - $.each(inst.sortables, function(i) { - - //Copy over some variables to allow calling the sortable's native _intersectsWith - this.instance.positionAbs = inst.positionAbs; - this.instance.helperProportions = inst.helperProportions; - this.instance.offset.click = inst.offset.click; - - if(this.instance._intersectsWith(this.instance.containerCache)) { - - //If it intersects, we use a little isOver variable and set it once, so our move-in stuff gets fired only once - if(!this.instance.isOver) { - - this.instance.isOver = 1; - //Now we fake the start of dragging for the sortable instance, - //by cloning the list group item, appending it to the sortable and using it as inst.currentItem - //We can then fire the start event of the sortable with our passed browser event, and our own helper (so it doesn't create a new one) - this.instance.currentItem = $(self).clone().appendTo(this.instance.element).data("sortable-item", true); - this.instance.options._helper = this.instance.options.helper; //Store helper option to later restore it - this.instance.options.helper = function() { return ui.helper[0]; }; - - event.target = this.instance.currentItem[0]; - this.instance._mouseCapture(event, true); - this.instance._mouseStart(event, true, true); - - //Because the browser event is way off the new appended portlet, we modify a couple of variables to reflect the changes - this.instance.offset.click.top = inst.offset.click.top; - this.instance.offset.click.left = inst.offset.click.left; - this.instance.offset.parent.left -= inst.offset.parent.left - this.instance.offset.parent.left; - this.instance.offset.parent.top -= inst.offset.parent.top - this.instance.offset.parent.top; - - inst._trigger("toSortable", event); - inst.dropped = this.instance.element; //draggable revert needs that - //hack so receive/update callbacks work (mostly) - inst.currentItem = inst.element; - this.instance.fromOutside = inst; - - } - - //Provided we did all the previous steps, we can fire the drag event of the sortable on every draggable drag, when it intersects with the sortable - if(this.instance.currentItem) this.instance._mouseDrag(event); - - } else { - - //If it doesn't intersect with the sortable, and it intersected before, - //we fake the drag stop of the sortable, but make sure it doesn't remove the helper by using cancelHelperRemoval - if(this.instance.isOver) { - - this.instance.isOver = 0; - this.instance.cancelHelperRemoval = true; - - //Prevent reverting on this forced stop - this.instance.options.revert = false; - - // The out event needs to be triggered independently - this.instance._trigger('out', event, this.instance._uiHash(this.instance)); - - this.instance._mouseStop(event, true); - this.instance.options.helper = this.instance.options._helper; - - //Now we remove our currentItem, the list group clone again, and the placeholder, and animate the helper back to it's original size - this.instance.currentItem.remove(); - if(this.instance.placeholder) this.instance.placeholder.remove(); - - inst._trigger("fromSortable", event); - inst.dropped = false; //draggable revert needs that - } - - }; - - }); - - } -}); - -$.ui.plugin.add("draggable", "cursor", { - start: function(event, ui) { - var t = $('body'), o = $(this).data('draggable').options; - if (t.css("cursor")) o._cursor = t.css("cursor"); - t.css("cursor", o.cursor); - }, - stop: function(event, ui) { - var o = $(this).data('draggable').options; - if (o._cursor) $('body').css("cursor", o._cursor); - } -}); - -$.ui.plugin.add("draggable", "iframeFix", { - start: function(event, ui) { - var o = $(this).data('draggable').options; - $(o.iframeFix === true ? "iframe" : o.iframeFix).each(function() { - $('<div class="ui-draggable-iframeFix" style="background: #fff;"></div>') - .css({ - width: this.offsetWidth+"px", height: this.offsetHeight+"px", - position: "absolute", opacity: "0.001", zIndex: 1000 - }) - .css($(this).offset()) - .appendTo("body"); - }); - }, - stop: function(event, ui) { - $("div.ui-draggable-iframeFix").each(function() { this.parentNode.removeChild(this); }); //Remove frame helpers - } -}); - -$.ui.plugin.add("draggable", "opacity", { - start: function(event, ui) { - var t = $(ui.helper), o = $(this).data('draggable').options; - if(t.css("opacity")) o._opacity = t.css("opacity"); - t.css('opacity', o.opacity); - }, - stop: function(event, ui) { - var o = $(this).data('draggable').options; - if(o._opacity) $(ui.helper).css('opacity', o._opacity); - } -}); - -$.ui.plugin.add("draggable", "scroll", { - start: function(event, ui) { - var i = $(this).data("draggable"); - if(i.scrollParent[0] != document && i.scrollParent[0].tagName != 'HTML') i.overflowOffset = i.scrollParent.offset(); - }, - drag: function(event, ui) { - - var i = $(this).data("draggable"), o = i.options, scrolled = false; - - if(i.scrollParent[0] != document && i.scrollParent[0].tagName != 'HTML') { - - if(!o.axis || o.axis != 'x') { - if((i.overflowOffset.top + i.scrollParent[0].offsetHeight) - event.pageY < o.scrollSensitivity) - i.scrollParent[0].scrollTop = scrolled = i.scrollParent[0].scrollTop + o.scrollSpeed; - else if(event.pageY - i.overflowOffset.top < o.scrollSensitivity) - i.scrollParent[0].scrollTop = scrolled = i.scrollParent[0].scrollTop - o.scrollSpeed; - } - - if(!o.axis || o.axis != 'y') { - if((i.overflowOffset.left + i.scrollParent[0].offsetWidth) - event.pageX < o.scrollSensitivity) - i.scrollParent[0].scrollLeft = scrolled = i.scrollParent[0].scrollLeft + o.scrollSpeed; - else if(event.pageX - i.overflowOffset.left < o.scrollSensitivity) - i.scrollParent[0].scrollLeft = scrolled = i.scrollParent[0].scrollLeft - o.scrollSpeed; - } - - } else { - - if(!o.axis || o.axis != 'x') { - if(event.pageY - $(document).scrollTop() < o.scrollSensitivity) - scrolled = $(document).scrollTop($(document).scrollTop() - o.scrollSpeed); - else if($(window).height() - (event.pageY - $(document).scrollTop()) < o.scrollSensitivity) - scrolled = $(document).scrollTop($(document).scrollTop() + o.scrollSpeed); - } - - if(!o.axis || o.axis != 'y') { - if(event.pageX - $(document).scrollLeft() < o.scrollSensitivity) - scrolled = $(document).scrollLeft($(document).scrollLeft() - o.scrollSpeed); - else if($(window).width() - (event.pageX - $(document).scrollLeft()) < o.scrollSensitivity) - scrolled = $(document).scrollLeft($(document).scrollLeft() + o.scrollSpeed); - } - - } - - if(scrolled !== false && $.ui.ddmanager && !o.dropBehaviour) - $.ui.ddmanager.prepareOffsets(i, event); - - } -}); - -$.ui.plugin.add("draggable", "snap", { - start: function(event, ui) { - - var i = $(this).data("draggable"), o = i.options; - i.snapElements = []; - - $(o.snap.constructor != String ? ( o.snap.items || ':data(draggable)' ) : o.snap).each(function() { - var $t = $(this); var $o = $t.offset(); - if(this != i.element[0]) i.snapElements.push({ - item: this, - width: $t.outerWidth(), height: $t.outerHeight(), - top: $o.top, left: $o.left - }); - }); - - }, - drag: function(event, ui) { - - var inst = $(this).data("draggable"), o = inst.options; - var d = o.snapTolerance; - - var x1 = ui.offset.left, x2 = x1 + inst.helperProportions.width, - y1 = ui.offset.top, y2 = y1 + inst.helperProportions.height; - - for (var i = inst.snapElements.length - 1; i >= 0; i--){ - - var l = inst.snapElements[i].left, r = l + inst.snapElements[i].width, - t = inst.snapElements[i].top, b = t + inst.snapElements[i].height; - - //Yes, I know, this is insane ;) - if(!((l-d < x1 && x1 < r+d && t-d < y1 && y1 < b+d) || (l-d < x1 && x1 < r+d && t-d < y2 && y2 < b+d) || (l-d < x2 && x2 < r+d && t-d < y1 && y1 < b+d) || (l-d < x2 && x2 < r+d && t-d < y2 && y2 < b+d))) { - if(inst.snapElements[i].snapping) (inst.options.snap.release && inst.options.snap.release.call(inst.element, event, $.extend(inst._uiHash(), { snapItem: inst.snapElements[i].item }))); - inst.snapElements[i].snapping = false; - continue; - } - - if(o.snapMode != 'inner') { - var ts = Math.abs(t - y2) <= d; - var bs = Math.abs(b - y1) <= d; - var ls = Math.abs(l - x2) <= d; - var rs = Math.abs(r - x1) <= d; - if(ts) ui.position.top = inst._convertPositionTo("relative", { top: t - inst.helperProportions.height, left: 0 }).top - inst.margins.top; - if(bs) ui.position.top = inst._convertPositionTo("relative", { top: b, left: 0 }).top - inst.margins.top; - if(ls) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: l - inst.helperProportions.width }).left - inst.margins.left; - if(rs) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: r }).left - inst.margins.left; - } - - var first = (ts || bs || ls || rs); - - if(o.snapMode != 'outer') { - var ts = Math.abs(t - y1) <= d; - var bs = Math.abs(b - y2) <= d; - var ls = Math.abs(l - x1) <= d; - var rs = Math.abs(r - x2) <= d; - if(ts) ui.position.top = inst._convertPositionTo("relative", { top: t, left: 0 }).top - inst.margins.top; - if(bs) ui.position.top = inst._convertPositionTo("relative", { top: b - inst.helperProportions.height, left: 0 }).top - inst.margins.top; - if(ls) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: l }).left - inst.margins.left; - if(rs) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: r - inst.helperProportions.width }).left - inst.margins.left; - } - - if(!inst.snapElements[i].snapping && (ts || bs || ls || rs || first)) - (inst.options.snap.snap && inst.options.snap.snap.call(inst.element, event, $.extend(inst._uiHash(), { snapItem: inst.snapElements[i].item }))); - inst.snapElements[i].snapping = (ts || bs || ls || rs || first); - - }; - - } -}); - -$.ui.plugin.add("draggable", "stack", { - start: function(event, ui) { - - var o = $(this).data("draggable").options; - - var group = $.makeArray($(o.stack.group)).sort(function(a,b) { - return (parseInt($(a).css("zIndex"),10) || o.stack.min) - (parseInt($(b).css("zIndex"),10) || o.stack.min); - }); - - $(group).each(function(i) { - this.style.zIndex = o.stack.min + i; - }); - - this[0].style.zIndex = o.stack.min + group.length; - - } -}); - -$.ui.plugin.add("draggable", "zIndex", { - start: function(event, ui) { - var t = $(ui.helper), o = $(this).data("draggable").options; - if(t.css("zIndex")) o._zIndex = t.css("zIndex"); - t.css('zIndex', o.zIndex); - }, - stop: function(event, ui) { - var o = $(this).data("draggable").options; - if(o._zIndex) $(ui.helper).css('zIndex', o._zIndex); - } -}); - -})(jQuery); diff --git a/examples/lessons/6_English_months/js/ui.droppable.js b/examples/lessons/6_English_months/js/ui.droppable.js deleted file mode 100755 index 8e7be33..0000000 --- a/examples/lessons/6_English_months/js/ui.droppable.js +++ /dev/null @@ -1,282 +0,0 @@ -/* - * jQuery UI Droppable 1.7.2 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Droppables - * - * Depends: - * ui.core.js - * ui.draggable.js - */ -(function($) { - -$.widget("ui.droppable", { - - _init: function() { - - var o = this.options, accept = o.accept; - this.isover = 0; this.isout = 1; - - this.options.accept = this.options.accept && $.isFunction(this.options.accept) ? this.options.accept : function(d) { - return d.is(accept); - }; - - //Store the droppable's proportions - this.proportions = { width: this.element[0].offsetWidth, height: this.element[0].offsetHeight }; - - // Add the reference and positions to the manager - $.ui.ddmanager.droppables[this.options.scope] = $.ui.ddmanager.droppables[this.options.scope] || []; - $.ui.ddmanager.droppables[this.options.scope].push(this); - - (this.options.addClasses && this.element.addClass("ui-droppable")); - - }, - - destroy: function() { - var drop = $.ui.ddmanager.droppables[this.options.scope]; - for ( var i = 0; i < drop.length; i++ ) - if ( drop[i] == this ) - drop.splice(i, 1); - - this.element - .removeClass("ui-droppable ui-droppable-disabled") - .removeData("droppable") - .unbind(".droppable"); - }, - - _setData: function(key, value) { - - if(key == 'accept') { - this.options.accept = value && $.isFunction(value) ? value : function(d) { - return d.is(value); - }; - } else { - $.widget.prototype._setData.apply(this, arguments); - } - - }, - - _activate: function(event) { - var draggable = $.ui.ddmanager.current; - if(this.options.activeClass) this.element.addClass(this.options.activeClass); - (draggable && this._trigger('activate', event, this.ui(draggable))); - }, - - _deactivate: function(event) { - var draggable = $.ui.ddmanager.current; - if(this.options.activeClass) this.element.removeClass(this.options.activeClass); - (draggable && this._trigger('deactivate', event, this.ui(draggable))); - }, - - _over: function(event) { - - var draggable = $.ui.ddmanager.current; - if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return; // Bail if draggable and droppable are same element - - if (this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - if(this.options.hoverClass) this.element.addClass(this.options.hoverClass); - this._trigger('over', event, this.ui(draggable)); - } - - }, - - _out: function(event) { - - var draggable = $.ui.ddmanager.current; - if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return; // Bail if draggable and droppable are same element - - if (this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - if(this.options.hoverClass) this.element.removeClass(this.options.hoverClass); - this._trigger('out', event, this.ui(draggable)); - } - - }, - - _drop: function(event,custom) { - - var draggable = custom || $.ui.ddmanager.current; - if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return false; // Bail if draggable and droppable are same element - - var childrenIntersection = false; - this.element.find(":data(droppable)").not(".ui-draggable-dragging").each(function() { - var inst = $.data(this, 'droppable'); - if(inst.options.greedy && $.ui.intersect(draggable, $.extend(inst, { offset: inst.element.offset() }), inst.options.tolerance)) { - childrenIntersection = true; return false; - } - }); - if(childrenIntersection) return false; - - if(this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - if(this.options.activeClass) this.element.removeClass(this.options.activeClass); - if(this.options.hoverClass) this.element.removeClass(this.options.hoverClass); - this._trigger('drop', event, this.ui(draggable)); - return this.element; - } - - return false; - - }, - - ui: function(c) { - return { - draggable: (c.currentItem || c.element), - helper: c.helper, - position: c.position, - absolutePosition: c.positionAbs, //deprecated - offset: c.positionAbs - }; - } - -}); - -$.extend($.ui.droppable, { - version: "1.7.2", - eventPrefix: 'drop', - defaults: { - accept: '*', - activeClass: false, - addClasses: true, - greedy: false, - hoverClass: false, - scope: 'default', - tolerance: 'intersect' - } -}); - -$.ui.intersect = function(draggable, droppable, toleranceMode) { - - if (!droppable.offset) return false; - - var x1 = (draggable.positionAbs || draggable.position.absolute).left, x2 = x1 + draggable.helperProportions.width, - y1 = (draggable.positionAbs || draggable.position.absolute).top, y2 = y1 + draggable.helperProportions.height; - var l = droppable.offset.left, r = l + droppable.proportions.width, - t = droppable.offset.top, b = t + droppable.proportions.height; - - switch (toleranceMode) { - case 'fit': - return (l < x1 && x2 < r - && t < y1 && y2 < b); - break; - case 'intersect': - return (l < x1 + (draggable.helperProportions.width / 2) // Right Half - && x2 - (draggable.helperProportions.width / 2) < r // Left Half - && t < y1 + (draggable.helperProportions.height / 2) // Bottom Half - && y2 - (draggable.helperProportions.height / 2) < b ); // Top Half - break; - case 'pointer': - var draggableLeft = ((draggable.positionAbs || draggable.position.absolute).left + (draggable.clickOffset || draggable.offset.click).left), - draggableTop = ((draggable.positionAbs || draggable.position.absolute).top + (draggable.clickOffset || draggable.offset.click).top), - isOver = $.ui.isOver(draggableTop, draggableLeft, t, l, droppable.proportions.height, droppable.proportions.width); - return isOver; - break; - case 'touch': - return ( - (y1 >= t && y1 <= b) || // Top edge touching - (y2 >= t && y2 <= b) || // Bottom edge touching - (y1 < t && y2 > b) // Surrounded vertically - ) && ( - (x1 >= l && x1 <= r) || // Left edge touching - (x2 >= l && x2 <= r) || // Right edge touching - (x1 < l && x2 > r) // Surrounded horizontally - ); - break; - default: - return false; - break; - } - -}; - -/* - This manager tracks offsets of draggables and droppables -*/ -$.ui.ddmanager = { - current: null, - droppables: { 'default': [] }, - prepareOffsets: function(t, event) { - - var m = $.ui.ddmanager.droppables[t.options.scope]; - var type = event ? event.type : null; // workaround for #2317 - var list = (t.currentItem || t.element).find(":data(droppable)").andSelf(); - - droppablesLoop: for (var i = 0; i < m.length; i++) { - - if(m[i].options.disabled || (t && !m[i].options.accept.call(m[i].element[0],(t.currentItem || t.element)))) continue; //No disabled and non-accepted - for (var j=0; j < list.length; j++) { if(list[j] == m[i].element[0]) { m[i].proportions.height = 0; continue droppablesLoop; } }; //Filter out elements in the current dragged item - m[i].visible = m[i].element.css("display") != "none"; if(!m[i].visible) continue; //If the element is not visible, continue - - m[i].offset = m[i].element.offset(); - m[i].proportions = { width: m[i].element[0].offsetWidth, height: m[i].element[0].offsetHeight }; - - if(type == "mousedown") m[i]._activate.call(m[i], event); //Activate the droppable if used directly from draggables - - } - - }, - drop: function(draggable, event) { - - var dropped = false; - $.each($.ui.ddmanager.droppables[draggable.options.scope], function() { - - if(!this.options) return; - if (!this.options.disabled && this.visible && $.ui.intersect(draggable, this, this.options.tolerance)) - dropped = this._drop.call(this, event); - - if (!this.options.disabled && this.visible && this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - this.isout = 1; this.isover = 0; - this._deactivate.call(this, event); - } - - }); - return dropped; - - }, - drag: function(draggable, event) { - - //If you have a highly dynamic page, you might try this option. It renders positions every time you move the mouse. - if(draggable.options.refreshPositions) $.ui.ddmanager.prepareOffsets(draggable, event); - - //Run through all droppables and check their positions based on specific tolerance options - - $.each($.ui.ddmanager.droppables[draggable.options.scope], function() { - - if(this.options.disabled || this.greedyChild || !this.visible) return; - var intersects = $.ui.intersect(draggable, this, this.options.tolerance); - - var c = !intersects && this.isover == 1 ? 'isout' : (intersects && this.isover == 0 ? 'isover' : null); - if(!c) return; - - var parentInstance; - if (this.options.greedy) { - var parent = this.element.parents(':data(droppable):eq(0)'); - if (parent.length) { - parentInstance = $.data(parent[0], 'droppable'); - parentInstance.greedyChild = (c == 'isover' ? 1 : 0); - } - } - - // we just moved into a greedy child - if (parentInstance && c == 'isover') { - parentInstance['isover'] = 0; - parentInstance['isout'] = 1; - parentInstance._out.call(parentInstance, event); - } - - this[c] = 1; this[c == 'isout' ? 'isover' : 'isout'] = 0; - this[c == "isover" ? "_over" : "_out"].call(this, event); - - // we just moved out of a greedy child - if (parentInstance && c == 'isout') { - parentInstance['isout'] = 0; - parentInstance['isover'] = 1; - parentInstance._over.call(parentInstance, event); - } - }); - - } -}; - -})(jQuery); diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/back.wav b/examples/lessons/6_English_namesOfColor/assets/audio/back.wav Binary files differnew file mode 100755 index 0000000..0b529ee --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/back.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/bean.wav b/examples/lessons/6_English_namesOfColor/assets/audio/bean.wav Binary files differnew file mode 100755 index 0000000..46d56d7 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/bean.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/bed.wav b/examples/lessons/6_English_namesOfColor/assets/audio/bed.wav Binary files differnew file mode 100755 index 0000000..7abbc4e --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/bed.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/black.wav b/examples/lessons/6_English_namesOfColor/assets/audio/black.wav Binary files differnew file mode 100755 index 0000000..7f8f1f2 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/black.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/blue.wav b/examples/lessons/6_English_namesOfColor/assets/audio/blue.wav Binary files differnew file mode 100755 index 0000000..b3ba201 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/blue.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/blue_bed.wav b/examples/lessons/6_English_namesOfColor/assets/audio/blue_bed.wav Binary files differnew file mode 100755 index 0000000..74e62c8 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/blue_bed.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/blue_fish.wav b/examples/lessons/6_English_namesOfColor/assets/audio/blue_fish.wav Binary files differnew file mode 100755 index 0000000..c57a20e --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/blue_fish.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/blue_mouse.wav b/examples/lessons/6_English_namesOfColor/assets/audio/blue_mouse.wav Binary files differnew file mode 100755 index 0000000..57320d7 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/blue_mouse.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/brown.wav b/examples/lessons/6_English_namesOfColor/assets/audio/brown.wav Binary files differnew file mode 100755 index 0000000..c1d4561 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/brown.wav diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/audio/correct.ogg b/examples/lessons/6_English_namesOfColor/assets/audio/correct.ogg Binary files differindex a0d9e3a..a0d9e3a 100755 --- a/examples/lessons/6_English_VocabularyAnimals/assets/audio/correct.ogg +++ b/examples/lessons/6_English_namesOfColor/assets/audio/correct.ogg diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/dead.wav b/examples/lessons/6_English_namesOfColor/assets/audio/dead.wav Binary files differnew file mode 100755 index 0000000..5c5976e --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/dead.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/drink.wav b/examples/lessons/6_English_namesOfColor/assets/audio/drink.wav Binary files differnew file mode 100755 index 0000000..ccf2302 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/drink.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/fellow.wav b/examples/lessons/6_English_namesOfColor/assets/audio/fellow.wav Binary files differnew file mode 100755 index 0000000..77df2f8 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/fellow.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/flew.wav b/examples/lessons/6_English_namesOfColor/assets/audio/flew.wav Binary files differnew file mode 100755 index 0000000..48451e8 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/flew.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/green.wav b/examples/lessons/6_English_namesOfColor/assets/audio/green.wav Binary files differnew file mode 100755 index 0000000..8d720a3 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/green.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/grey.wav b/examples/lessons/6_English_namesOfColor/assets/audio/grey.wav Binary files differnew file mode 100755 index 0000000..2b9aa25 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/grey.wav diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/audio/incorrect.ogg b/examples/lessons/6_English_namesOfColor/assets/audio/incorrect.ogg Binary files differindex 4805e55..4805e55 100755 --- a/examples/lessons/6_English_VocabularyAnimals/assets/audio/incorrect.ogg +++ b/examples/lessons/6_English_namesOfColor/assets/audio/incorrect.ogg diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/ink.wav b/examples/lessons/6_English_namesOfColor/assets/audio/ink.wav Binary files differnew file mode 100755 index 0000000..6112ca0 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/ink.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/november.wav b/examples/lessons/6_English_namesOfColor/assets/audio/november.wav Binary files differnew file mode 100755 index 0000000..baa4257 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/november.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/one_bed.wav b/examples/lessons/6_English_namesOfColor/assets/audio/one_bed.wav Binary files differnew file mode 100755 index 0000000..e9d2b52 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/one_bed.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/one_fish.wav b/examples/lessons/6_English_namesOfColor/assets/audio/one_fish.wav Binary files differnew file mode 100755 index 0000000..a1745f3 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/one_fish.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/one_head.wav b/examples/lessons/6_English_namesOfColor/assets/audio/one_head.wav Binary files differnew file mode 100755 index 0000000..80649ad --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/one_head.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/one_house.wav b/examples/lessons/6_English_namesOfColor/assets/audio/one_house.wav Binary files differnew file mode 100755 index 0000000..e13df5a --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/one_house.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/one_mouse.wav b/examples/lessons/6_English_namesOfColor/assets/audio/one_mouse.wav Binary files differnew file mode 100755 index 0000000..587f261 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/one_mouse.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/orange.wav b/examples/lessons/6_English_namesOfColor/assets/audio/orange.wav Binary files differnew file mode 100755 index 0000000..b818b4a --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/orange.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/pink.wav b/examples/lessons/6_English_namesOfColor/assets/audio/pink.wav Binary files differnew file mode 100755 index 0000000..20495e0 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/pink.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/purple.wav b/examples/lessons/6_English_namesOfColor/assets/audio/purple.wav Binary files differnew file mode 100755 index 0000000..2e9e484 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/purple.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/red.wav b/examples/lessons/6_English_namesOfColor/assets/audio/red.wav Binary files differnew file mode 100755 index 0000000..11fb992 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/red.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/red_fish.wav b/examples/lessons/6_English_namesOfColor/assets/audio/red_fish.wav Binary files differnew file mode 100755 index 0000000..68f7c66 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/red_fish.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/red_head.wav b/examples/lessons/6_English_namesOfColor/assets/audio/red_head.wav Binary files differnew file mode 100755 index 0000000..f5684c2 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/red_head.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/red_house.wav b/examples/lessons/6_English_namesOfColor/assets/audio/red_house.wav Binary files differnew file mode 100755 index 0000000..7514adf --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/red_house.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/sink.wav b/examples/lessons/6_English_namesOfColor/assets/audio/sink.wav Binary files differnew file mode 100755 index 0000000..5c6beeb --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/sink.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/spots.wav b/examples/lessons/6_English_namesOfColor/assets/audio/spots.wav Binary files differnew file mode 100755 index 0000000..cef0716 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/spots.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/stink.wav b/examples/lessons/6_English_namesOfColor/assets/audio/stink.wav Binary files differnew file mode 100755 index 0000000..7939aae --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/stink.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/think.wav b/examples/lessons/6_English_namesOfColor/assets/audio/think.wav Binary files differnew file mode 100755 index 0000000..0759f1b --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/think.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/turtle.wav b/examples/lessons/6_English_namesOfColor/assets/audio/turtle.wav Binary files differnew file mode 100755 index 0000000..c0aa9a5 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/turtle.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/two_fish.wav b/examples/lessons/6_English_namesOfColor/assets/audio/two_fish.wav Binary files differnew file mode 100755 index 0000000..30bd81f --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/two_fish.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/uncle.wav b/examples/lessons/6_English_namesOfColor/assets/audio/uncle.wav Binary files differnew file mode 100755 index 0000000..14a0084 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/uncle.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/white.wav b/examples/lessons/6_English_namesOfColor/assets/audio/white.wav Binary files differnew file mode 100755 index 0000000..786a21b --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/white.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/yellow.wav b/examples/lessons/6_English_namesOfColor/assets/audio/yellow.wav Binary files differnew file mode 100755 index 0000000..a4a5e39 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/yellow.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/audio/zoo.wav b/examples/lessons/6_English_namesOfColor/assets/audio/zoo.wav Binary files differnew file mode 100755 index 0000000..91471d6 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/audio/zoo.wav diff --git a/examples/lessons/6_English_namesOfColor/assets/image/Blue bed.png b/examples/lessons/6_English_namesOfColor/assets/image/Blue bed.png Binary files differnew file mode 100755 index 0000000..a34d227 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/Blue bed.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/Blue bed_Clicked.png b/examples/lessons/6_English_namesOfColor/assets/image/Blue bed_Clicked.png Binary files differnew file mode 100755 index 0000000..21cf810 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/Blue bed_Clicked.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/Blue fish.png b/examples/lessons/6_English_namesOfColor/assets/image/Blue fish.png Binary files differnew file mode 100755 index 0000000..14bfa34 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/Blue fish.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/Blue fish_Clicked.png b/examples/lessons/6_English_namesOfColor/assets/image/Blue fish_Clicked.png Binary files differnew file mode 100755 index 0000000..ca7f3e7 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/Blue fish_Clicked.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/Blue mouse.png b/examples/lessons/6_English_namesOfColor/assets/image/Blue mouse.png Binary files differnew file mode 100755 index 0000000..1328f62 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/Blue mouse.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/Blue mouse_Clicked.png b/examples/lessons/6_English_namesOfColor/assets/image/Blue mouse_Clicked.png Binary files differnew file mode 100755 index 0000000..b030e03 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/Blue mouse_Clicked.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/One bed.png b/examples/lessons/6_English_namesOfColor/assets/image/One bed.png Binary files differnew file mode 100755 index 0000000..a34d227 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/One bed.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/One head.png b/examples/lessons/6_English_namesOfColor/assets/image/One head.png Binary files differnew file mode 100755 index 0000000..9bb9b2d --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/One head.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/Red fish.png b/examples/lessons/6_English_namesOfColor/assets/image/Red fish.png Binary files differnew file mode 100755 index 0000000..14bfa34 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/Red fish.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/Red fish_Clicked.png b/examples/lessons/6_English_namesOfColor/assets/image/Red fish_Clicked.png Binary files differnew file mode 100755 index 0000000..3392f4a --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/Red fish_Clicked.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/Red head.png b/examples/lessons/6_English_namesOfColor/assets/image/Red head.png Binary files differnew file mode 100755 index 0000000..9bb9b2d --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/Red head.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/Red head_Clicked.png b/examples/lessons/6_English_namesOfColor/assets/image/Red head_Clicked.png Binary files differnew file mode 100755 index 0000000..07cce8e --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/Red head_Clicked.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/Red house.png b/examples/lessons/6_English_namesOfColor/assets/image/Red house.png Binary files differnew file mode 100755 index 0000000..12a6682 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/Red house.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/Red house_Clicked.png b/examples/lessons/6_English_namesOfColor/assets/image/Red house_Clicked.png Binary files differnew file mode 100755 index 0000000..117d8f6 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/Red house_Clicked.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/background.png b/examples/lessons/6_English_namesOfColor/assets/image/background.png Binary files differnew file mode 100755 index 0000000..853162f --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/background.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/bean.png b/examples/lessons/6_English_namesOfColor/assets/image/bean.png Binary files differnew file mode 100755 index 0000000..092a064 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/bean.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/bed.png b/examples/lessons/6_English_namesOfColor/assets/image/bed.png Binary files differnew file mode 100755 index 0000000..a34d227 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/bed.png diff --git a/examples/lessons/6_English_syllables/assets/image/bg_footer.png b/examples/lessons/6_English_namesOfColor/assets/image/bg_footer.png Binary files differindex 8982264..8982264 100755 --- a/examples/lessons/6_English_syllables/assets/image/bg_footer.png +++ b/examples/lessons/6_English_namesOfColor/assets/image/bg_footer.png diff --git a/examples/lessons/6_English_syllables/assets/image/bg_header.png b/examples/lessons/6_English_namesOfColor/assets/image/bg_header.png Binary files differindex 98213f7..98213f7 100755 --- a/examples/lessons/6_English_syllables/assets/image/bg_header.png +++ b/examples/lessons/6_English_namesOfColor/assets/image/bg_header.png diff --git a/examples/lessons/6_English_syllables/assets/image/bg_title_block.png b/examples/lessons/6_English_namesOfColor/assets/image/bg_title_block.png Binary files differindex 2c9dacf..2c9dacf 100755 --- a/examples/lessons/6_English_syllables/assets/image/bg_title_block.png +++ b/examples/lessons/6_English_namesOfColor/assets/image/bg_title_block.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/bird.png b/examples/lessons/6_English_namesOfColor/assets/image/bird.png Binary files differnew file mode 100755 index 0000000..518df57 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/bird.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/bird_Clicked.png b/examples/lessons/6_English_namesOfColor/assets/image/bird_Clicked.png Binary files differnew file mode 100755 index 0000000..5edd997 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/bird_Clicked.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/black_glass.png b/examples/lessons/6_English_namesOfColor/assets/image/black_glass.png Binary files differnew file mode 100755 index 0000000..e27249d --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/black_glass.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/brown_uncle.png b/examples/lessons/6_English_namesOfColor/assets/image/brown_uncle.png Binary files differnew file mode 100755 index 0000000..907b16a --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/brown_uncle.png diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/btn_back.png b/examples/lessons/6_English_namesOfColor/assets/image/btn_back.png Binary files differindex d9fbf14..d9fbf14 100755 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/btn_back.png +++ b/examples/lessons/6_English_namesOfColor/assets/image/btn_back.png diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/btn_back_hover.png b/examples/lessons/6_English_namesOfColor/assets/image/btn_back_hover.png Binary files differindex 0911fcc..0911fcc 100755 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/btn_back_hover.png +++ b/examples/lessons/6_English_namesOfColor/assets/image/btn_back_hover.png diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/btn_help.png b/examples/lessons/6_English_namesOfColor/assets/image/btn_help.png Binary files differindex 6753e9c..6753e9c 100755 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/btn_help.png +++ b/examples/lessons/6_English_namesOfColor/assets/image/btn_help.png diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/btn_help_hover.png b/examples/lessons/6_English_namesOfColor/assets/image/btn_help_hover.png Binary files differindex d3ccd92..d3ccd92 100755 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/btn_help_hover.png +++ b/examples/lessons/6_English_namesOfColor/assets/image/btn_help_hover.png diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/btn_next.png b/examples/lessons/6_English_namesOfColor/assets/image/btn_next.png Binary files differindex 9d70993..9d70993 100755 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/btn_next.png +++ b/examples/lessons/6_English_namesOfColor/assets/image/btn_next.png diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/btn_next_hover.png b/examples/lessons/6_English_namesOfColor/assets/image/btn_next_hover.png Binary files differindex 2cd4d37..2cd4d37 100755 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/btn_next_hover.png +++ b/examples/lessons/6_English_namesOfColor/assets/image/btn_next_hover.png diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/btn_ole.png b/examples/lessons/6_English_namesOfColor/assets/image/btn_ole.png Binary files differindex 0e775e9..0e775e9 100755 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/btn_ole.png +++ b/examples/lessons/6_English_namesOfColor/assets/image/btn_ole.png diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/btn_ole_hover.png b/examples/lessons/6_English_namesOfColor/assets/image/btn_ole_hover.png Binary files differindex c43c5f7..c43c5f7 100755 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/btn_ole_hover.png +++ b/examples/lessons/6_English_namesOfColor/assets/image/btn_ole_hover.png diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/btn_play_again.png b/examples/lessons/6_English_namesOfColor/assets/image/btn_play_again.png Binary files differindex 3594d18..3594d18 100755 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/btn_play_again.png +++ b/examples/lessons/6_English_namesOfColor/assets/image/btn_play_again.png diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/btn_play_again_hover.png b/examples/lessons/6_English_namesOfColor/assets/image/btn_play_again_hover.png Binary files differindex ebb8f8c..ebb8f8c 100755 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/btn_play_again_hover.png +++ b/examples/lessons/6_English_namesOfColor/assets/image/btn_play_again_hover.png diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/btn_play_again_mouse_down.png b/examples/lessons/6_English_namesOfColor/assets/image/btn_play_again_mouse_down.png Binary files differindex 07d6e45..07d6e45 100755 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/btn_play_again_mouse_down.png +++ b/examples/lessons/6_English_namesOfColor/assets/image/btn_play_again_mouse_down.png diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/btn_start.png b/examples/lessons/6_English_namesOfColor/assets/image/btn_start.png Binary files differindex 32e5f20..32e5f20 100755 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/btn_start.png +++ b/examples/lessons/6_English_namesOfColor/assets/image/btn_start.png diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/btn_start_hover.png b/examples/lessons/6_English_namesOfColor/assets/image/btn_start_hover.png Binary files differindex 811ce78..811ce78 100755 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/btn_start_hover.png +++ b/examples/lessons/6_English_namesOfColor/assets/image/btn_start_hover.png diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/btn_start_mouse_down.png b/examples/lessons/6_English_namesOfColor/assets/image/btn_start_mouse_down.png Binary files differindex 5acd43b..5acd43b 100755 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/btn_start_mouse_down.png +++ b/examples/lessons/6_English_namesOfColor/assets/image/btn_start_mouse_down.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/cage.png b/examples/lessons/6_English_namesOfColor/assets/image/cage.png Binary files differnew file mode 100755 index 0000000..f0b14b6 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/cage.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/cat.png b/examples/lessons/6_English_namesOfColor/assets/image/cat.png Binary files differnew file mode 100755 index 0000000..d2dad1d --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/cat.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/cat_black.png b/examples/lessons/6_English_namesOfColor/assets/image/cat_black.png Binary files differnew file mode 100755 index 0000000..45f2dc0 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/cat_black.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/cat_strip.png b/examples/lessons/6_English_namesOfColor/assets/image/cat_strip.png Binary files differnew file mode 100755 index 0000000..a03f8c5 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/cat_strip.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/dead.png b/examples/lessons/6_English_namesOfColor/assets/image/dead.png Binary files differnew file mode 100755 index 0000000..b82b3c9 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/dead.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/dead_Clicked.png b/examples/lessons/6_English_namesOfColor/assets/image/dead_Clicked.png Binary files differnew file mode 100755 index 0000000..6d8fb71 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/dead_Clicked.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/giraffe.png b/examples/lessons/6_English_namesOfColor/assets/image/giraffe.png Binary files differnew file mode 100755 index 0000000..d42c2fe --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/giraffe.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/giraffe_Clicked.png b/examples/lessons/6_English_namesOfColor/assets/image/giraffe_Clicked.png Binary files differnew file mode 100755 index 0000000..4cadbb9 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/giraffe_Clicked.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/gray_glass.png b/examples/lessons/6_English_namesOfColor/assets/image/gray_glass.png Binary files differnew file mode 100755 index 0000000..6d98bf3 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/gray_glass.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/help.png b/examples/lessons/6_English_namesOfColor/assets/image/help.png Binary files differnew file mode 100755 index 0000000..1b65bc5 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/help.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/namesofcolor.png b/examples/lessons/6_English_namesOfColor/assets/image/namesofcolor.png Binary files differnew file mode 100755 index 0000000..65f3fb6 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/namesofcolor.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/orange.png b/examples/lessons/6_English_namesOfColor/assets/image/orange.png Binary files differnew file mode 100755 index 0000000..0f3229c --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/orange.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/orange_Clicked.png b/examples/lessons/6_English_namesOfColor/assets/image/orange_Clicked.png Binary files differnew file mode 100755 index 0000000..c30427c --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/orange_Clicked.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/pink_glass.png b/examples/lessons/6_English_namesOfColor/assets/image/pink_glass.png Binary files differnew file mode 100755 index 0000000..c451c93 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/pink_glass.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/red_bed_Clicked.png b/examples/lessons/6_English_namesOfColor/assets/image/red_bed_Clicked.png Binary files differnew file mode 100755 index 0000000..8d48828 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/red_bed_Clicked.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/sink.png b/examples/lessons/6_English_namesOfColor/assets/image/sink.png Binary files differnew file mode 100755 index 0000000..4bc26ec --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/sink.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/stink.png b/examples/lessons/6_English_namesOfColor/assets/image/stink.png Binary files differnew file mode 100755 index 0000000..31e1fc6 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/stink.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/think.png b/examples/lessons/6_English_namesOfColor/assets/image/think.png Binary files differnew file mode 100755 index 0000000..8cdfd4e --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/think.png diff --git a/examples/lessons/6_English_syllables/assets/image/title_block_lt.png b/examples/lessons/6_English_namesOfColor/assets/image/title_block_lt.png Binary files differindex 4696182..4696182 100755 --- a/examples/lessons/6_English_syllables/assets/image/title_block_lt.png +++ b/examples/lessons/6_English_namesOfColor/assets/image/title_block_lt.png diff --git a/examples/lessons/6_English_syllables/assets/image/title_block_rt.png b/examples/lessons/6_English_namesOfColor/assets/image/title_block_rt.png Binary files differindex 37cc44a..37cc44a 100755 --- a/examples/lessons/6_English_syllables/assets/image/title_block_rt.png +++ b/examples/lessons/6_English_namesOfColor/assets/image/title_block_rt.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/tree.png b/examples/lessons/6_English_namesOfColor/assets/image/tree.png Binary files differnew file mode 100755 index 0000000..0d1ba4b --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/tree.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/turtle.png b/examples/lessons/6_English_namesOfColor/assets/image/turtle.png Binary files differnew file mode 100755 index 0000000..624914b --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/turtle.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/turtle_Clicked.png b/examples/lessons/6_English_namesOfColor/assets/image/turtle_Clicked.png Binary files differnew file mode 100755 index 0000000..9ffb0c2 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/turtle_Clicked.png diff --git a/examples/lessons/6_English_namesOfColor/assets/image/zoo.png b/examples/lessons/6_English_namesOfColor/assets/image/zoo.png Binary files differnew file mode 100755 index 0000000..bc42578 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/assets/image/zoo.png diff --git a/examples/lessons/6_English_namesOfColor/css/lesson.css b/examples/lessons/6_English_namesOfColor/css/lesson.css new file mode 100755 index 0000000..2eb386d --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/css/lesson.css @@ -0,0 +1,340 @@ +@CHARSET "UTF-8";
+/****** Page Styles ****/
+
+/* Designed for 1200*900 px screen resolution */
+
+body {
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ font-size: 10pt;
+ margin: 0px;
+ background-color: #FFFFCC;
+}
+#header {
+ background-image: url(../assets/image/bg_header.png);
+ background-repeat: repeat-x;
+ height: 75px;
+ width: 100%;
+ position: absolute;
+ left: 0px;
+ top: 0px;
+}
+#topbtn_left {
+ float: left;
+ height: 60px;
+ width: 60px;
+ padding-top: 6px;
+ padding-left: 15px;
+}
+
+
+ .linkBack{
+ width: 60px; height: 59px;
+ background:url(../assets/image/btn_back.png);
+ }
+ .linkBack:hover{
+ background:url(../assets/image/btn_back_hover.png);
+ }
+
+#lesson_title {
+ float: left;
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ font-size: 16pt;
+ font-weight: bold;
+ color: #FFFFFF;
+ margin-left: 10px;
+ background-image: url(../assets/image/bg_title_block.png);
+}
+#topbtn_right {
+ float: right;
+ height: 60px;
+ width: 60px;
+ padding-top: 6px;
+ padding-right: 15px;
+}
+ #linkHelp{
+ width: 60px; height: 60px;
+ background:url(../assets/image/btn_help.png);
+ }
+ #linkHelp:hover{
+ background:url(../assets/image/btn_help_hover.png);
+ }
+ #linkOle{
+ width: 60px; height: 60px;
+ background:url(../assets/image/btn_ole.png);
+ }
+ #linkOle:hover{
+ background:url(../assets/image/btn_ole_hover.png);
+ }
+ .linkNext{var bindImgCss = {
+ 'float':'left',
+ 'width': '450px',
+ 'height':'40px',
+ 'margin-top':'0.25em',
+ 'text-align':'center',
+ 'padding-bottom':'0.3em'
+ };
+ width: 60px; height: 60px;
+ background:url(../assets/image/btn_next.png);
+ }
+ .linkNext:hover{
+ background:url(../assets/image/btn_next_hover.png);
+ }
+#footer {
+ position:relative;
+ background-image: url(../assets/image/bg_footer.png);
+ background-repeat: repeat-x;
+ height: 75px;
+ width: 100%;
+ left: 0px;
+ bottom: 0px;
+}
+#score_box {
+ float: left;
+ padding-left: 5px;
+ padding-top: 0.7em;
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ color: #FFFF00;
+ font-size: 16pt;
+ font-weight: bold;
+}
+#botbtn_right {
+ float: right;
+ height: 55px;
+ padding-right: 5px;
+ padding-top: 10px;
+}
+ #linkCheck{
+ margin: 1em 3em 0 0;
+ width: 101px; height: 30px;
+ background-image: url(../assets/image/check.png);
+ }
+
+ #linkStart{
+ width: 251px; height: 55px;
+ background:url(../assets/image/btn_start.png);
+ }
+ #linkStart:hover{
+ background:url(../assets/image/btn_start_hover.png);
+ }
+ #linkStart:active{
+ background:url(../assets/image/btn_start_mouse_down.png);
+ }
+ #linkPlayAgain{
+ width: 251px; height: 55px;
+ background:url(../assets/image/btn_play_again.png);
+ }
+ #linkPlayAgain:hover{
+ background:url(../assets/image/btn_play_again_hover.png);
+ }
+ #linkPlayAgain:active{
+ background:url(../assets/image/btn_play_again_mouse_down.png);
+ }
+#linkNextLesson{
+ position:absolute;
+ bottom: 75px;
+ right: 10px;
+}
+#linkPrevLesson{
+ position:absolute;
+ bottom: 75px;
+ left: 10px;
+}
+
+/**** End of the page style ****/
+
+/**** Game Styles ****/
+
+a{
+ color:#FFFFCC;
+}
+#currentTitle{
+ width: 150px;
+ height: 80xp;
+ font:25px/30px "Courier New", Courier, monospace;
+ font-weight: bold;
+ color: red;
+}
+#content{
+ margin: 0 auto;
+ margin-top: 75px;
+ width: 1198px;
+ height: 560px;
+ background-image: url(../assets/image/background.png);
+
+}
+ #namesOfColors{
+ position:absolute;
+ top: 15%;
+ right: 20%;
+ }
+
+ .clicktoChange{
+ float:left;
+ padding: 0.5em;
+ height: 30px;
+ font: 20px/25px sans-serif,Arial, Helvetica;
+ cursor:pointer;
+ text-align:center;
+ }
+ .default{
+ background-color: #A6E4FE;
+ }
+ .clicked{lesson5css
+ background-color: #FF9900;
+ }
+ .hoverClick{
+ background-color: #FFFFFF;
+ }
+ .Green,.green{
+ background-color: #3BBA00;
+ }
+ .Brown,.brown{
+ background-color: #B55316;
+ }
+ .Purple,.purple{
+ background-color: purple;
+ }
+ .Yellow,.yellow{
+ background-color: #F4FC88;
+ }
+ .red,.Red{
+ background-color: #FF0000;
+ }
+ .blue,.Blue{
+ background-color: lesson5css#0000FF;
+ }
+ .orange,.Orange{
+ background-color: #FF9900;
+ }
+ .white,.White{
+ background-color: #FFFFFF;
+ }
+ .black,.Black{
+ background-color: #000000;
+ color: #FFFFFF;
+ }
+ .pink,.Pink{
+ background-color: #FF00FF;
+ }
+ .gray,.Gray{
+ background-color: #CCC;
+ }
+
+
+ .large{
+ width: 180px;
+ }
+ .medium{
+ width: 100px;
+ }
+ .small{
+ width: 90px;
+ height: 25px;
+ padding: 0.1em;
+ }
+ .border{
+ border: 2px solid black;
+ }
+
+ .clickTextInfo{
+ float:left;
+ font: 25px/30px Verdana, Geneva, Arial, Helvetica, sans-serif;
+ color:#000;
+ margin: 0.15em 0.5em 0 5em;
+
+ }
+ .smallclickTextInfo{
+ float:left;
+ font: 25px/30px Verdana, Geneva, Arial, Helvetica, sans-serif;
+ color:#000;
+ margin: 0.15em 0.5em 0 1em;
+
+ }
+ .lesson3css{
+ float:left;
+ width: 450px;
+ height:40px;
+ margin-top:0.25em;
+ text-align:center;
+ padding-bottom:0.3em;
+ }
+ .lesson5css{
+ float:left;
+ width: 700px;
+ height:40px;
+ margin-top:0.5em;
+ text-align:center;
+ padding-bottom:1.5em;
+ }
+
+
+ .lesson5tree{
+ margin: 0.15em 0.5em 0 5em;
+
+ }
+
+ .lesson6css{
+ float:left;
+ width: 700px;
+ height:40px;
+ margin-top:0.5em;
+ text-align:center;
+ padding-bottom:.5em;
+ }
+ .lesson7css{
+ float:left;
+ width: 800px;
+ margin-top:0.5em;
+ text-align:left;
+ padding-bottom:.2em;
+ white-space:pre;
+ }
+ .marginSmall{
+ margin-left:-4em;
+ }
+ .marginMedium{
+ margin-left:10em;
+ }
+ .marginLarge{
+ margin-left:30em;
+ }
+ #bindImgGlasses{
+ margin-left: 10em;
+ }
+ #help{
+ display:none;
+ position:absolute;
+ right: 60px;
+ top: 75px;;
+ width: 256px;
+ height: 600px;
+ background:url(../assets/image/help.png);
+ z-index:40;
+ }
+
+ #gameOver{
+ opacity: 1;
+ display:none;
+ position:absolute;
+ top:45%;
+ left: 30%;
+ color: blue;
+ text-align:center;
+ font : bold 45px/65px Arial Black, Times New Roman;
+ }
+ #gameOverInfo{
+ margin-top: 35px;
+ text-align:center;
+ font: 20px/25px Helvetica, Geneva, Arial, Verdana, sans-serif;
+ font-weight:bold;
+ color:#FF0000;
+
+ }
+ .specialText{
+ margin-top: 1em;
+ font: 20px/25px Helvetica, Geneva, Arial, Verdana, sans-serif;
+ font-weight:bold;
+ color:#FF9900;
+ border-bottom: 2px dotted #CCC;
+
+ }
diff --git a/examples/lessons/6_English_namesOfColor/index.html b/examples/lessons/6_English_namesOfColor/index.html new file mode 100755 index 0000000..0781d1b --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/index.html @@ -0,0 +1,41 @@ +<!DOCTYPE html>
+<html>
+<head>
+ <title>Class 6 English Names of Color</title>
+ <meta name="keywords" content="karma,javascript,html5,sugar,sugarlabs,gsoc,ole,nepal" />
+ <link type="text/css" rel="stylesheet" href="css/ui.scoreboard.css" />
+ <link type="text/css" rel="stylesheet" href="css/lesson.css" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <link type="image/ico" rel="icon" href="../../assets/default/image/favicon.ico" />
+ <script type="text/javascript" src="js/jquery-1.4.js"></script>
+ <script type="text/javascript" src="js/karma.js"></script>
+ <script type="text/javascript" src="js/lesson.js"></script>
+</head>
+<body>
+ <div id="header">
+ <div id="topbtn_left"><a href="#"><div id="linkBackLesson" class="linkBack"></div></a></div>
+ <div id="lesson_title">
+ <img src="assets/image/title_block_lt.png" width="33" height="75" align="absmiddle" />
+ Names of Colors <span id="currentTitle"></span>
+ <img src="assets/image/title_block_rt.png" width="33" height="75" align="absmiddle" />
+ </div>
+ <div id="topbtn_right"><a href="#"><div id="linkHelp"></div></a></div>
+ <div id="topbtn_right"><a href="http://olenepal.org"><div id="linkOle"></div></a></div>
+ </div>
+
+ <div id="content"></div>
+ <img id="namesOfColors" src="assets/image/namesofcolor.png" />
+ <div id="help"></div>
+ <div id="gameOver"></div>
+ <form name="delayForm">
+ <input type="hidden" name="delayval" size="5">
+ </form>
+
+ <div id="footer">
+ <a href="#"><div id="linkNextLesson" class ="linkNext"></div></a>
+ <a href="#"><div id="linkPrevLesson" class ="linkBack"></div></a>
+ <div id="botbtn_right"><a href="#"><div id="linkPlayAgain"></div></a></div>
+ <div id="botbtn_right"><a href="#"><div id="linkStart"></div></a></div>
+ </div>
+</body>
+</html>
diff --git a/examples/lessons/6_English_namesOfColor/js/Copy of lesson.js b/examples/lessons/6_English_namesOfColor/js/Copy of lesson.js new file mode 100755 index 0000000..487befc --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/js/Copy of lesson.js @@ -0,0 +1,294 @@ +$(document).ready(function(){ + var k = Karma({ + audio: [{'name':'correct','file':'correct.ogg'}, + {'name':'incorrect','file':'incorrect.ogg'}, + {'name':'One fish','file':'one_fish.wav'}, + {'name':'One house','file':'one_house.wav'}, + {'name':'Two fish','file':'two_fish.wav'}, + {'name':'Red fish','file':'red_fish.wav'}, + {'name':'Blue fish','file':'blue_fish.wav'}, + {'name':'One mouse','file':'one_mouse.wav'}, + {'name':'Red house','file':'red_house.wav'}, + {'name':'Blue mouse','file':'blue_mouse.wav'}, + {'name':'One head','file':'one_head.wav'}, + {'name':'One bed','file':'one_bed.wav'}, + {'name':'Red head','file':'red_head.wav'}, + {'name':'Blue bed','file':'blue_bed.wav'}, + {'name':'Green','file':'green.wav'}, + {'name':'Brown','file':'brown.wav'}, + {'name':'Purple','file':'purple.wav'}, + {'name':'turtle','file':'turtle.wav'}, + {'name':'bean','file':'bean.wav'}, + {'name':'uncle','file':'uncle.wav'}, + {'name':'red','file':'red.wav'} + ]}); + + k.ready(function(){ + var i,j; + var currentLesson; + var TOTAL_QUES = 6; + var currentLessonStart; + var num; + var numLessonClicks = new Array(8,4); + var sounds = new Array('One fish','Two fish','Red fish','Blue fish','One house','One mouse','Red house','Blue mouse', + 'One head','One bed','Red head','Blue bed','Green','Brown','Purple','turtle','Purple','Brown','uncle', + 'bean','green','bed','red' + ); + var lesson3texts = new Array('See the little','The turtle is','His name is Punckle','He has a','The turtle ate a', + 'He became','The turtle went to','He became' + ); + + var assignImages = function(lessonId){ + var lessonIdNew; + lessonId = currentLessonStart+lessonId; + if(currentLesson === 0){ + lessonIdNew = lessonId-2; + } + else{ + lessonIdNew = lessonId; + } + if(currentLesson === 0 ){ + $('#bindImg'+lessonIdNew).append('<div id="img'+lessonId+'"></div>'); + $('#img'+lessonId).html('<img src="assets/image/'+sounds[lessonId]+'.png">'); + } + }; + + var assignLesson = function(lessonId){ + lessonId = currentLessonStart+lessonId; + var bindImgCss = { + 'float':'left', + 'width': '210px', + 'text-align':'center', + 'padding-bottom':'1em' + + }; + $('#lesson').append('<div id="bindImg'+lessonId+'" class="imgBind"></div>'); + $('#bindImg'+lessonId).css(bindImgCss); + if(currentLesson === 1){ + $('#bindImg'+lessonId).append('<div id="img'+lessonId+'"></div>'); + $('#img'+lessonId).html('<img src="assets/image/'+sounds[lessonId]+'.png">'); + } + $('#bindImg'+lessonId).append('<div id = "click'+lessonId+'" class="clicktoChange large"></div>'); + $('#click'+lessonId).append(sounds[lessonId]).addClass('default'); + + $('#click'+lessonId).bind({ + mouseover: function(){ + $(this).addClass('hoverClick'); + }, + mouseout: function(){ + $(this).removeClass('hoverClick'); + }, + click: function(){ + $(this).addClass('clicked'); + var curSound = sounds[lessonId]; + if(currentLesson === 1){ + if(lessonId === 10 || lessonId === 11){ + $('#img'+lessonId).html('<img src="assets/image/'+sounds[lessonId]+'_Clicked.png" />'); + } + } + else{ + $('#img'+lessonId).html('<img src="assets/image/'+sounds[lessonId]+'_Clicked.png" />'); + } + k.audio[curSound].play(); + } + }); + }; + + + var assignColorBoxes = function(lessonId){ + $('#bindImg'+currentLessonStart).append('<div id = "click'+lessonId+'" class="clicktoChange medium border"></div>'); + $('#click'+lessonId).append(sounds[lessonId]).addClass(sounds[lessonId]); + + $('#click'+lessonId).bind({ + mouseover: function(){ + $(this).removeClass(sounds[lessonId]); + $(this).addClass('hoverClick'); + }, + mouseout: function(){ + $(this).removeClass('hoverClick'); + $(this).addClass(sounds[lessonId]); + }, + click: function(){ + $(this).addClass(sounds[lessonId]); + var curSound = sounds[lessonId]; + k.audio[curSound].play(); + } + }); + }; + + var assignTexts = function(lessonId){ + var bindImgCss = { + 'float':'left', + 'width': '450px', + 'height':'40px', + 'text-align':'center', + 'padding-bottom':'0.3em' + }; + $('#lesson').append('<div id="bindImg'+lessonId+'" class="imgBind"></div>'); + $('#bindImg'+lessonId).append('<span class = "clickTextInfo"> '+lesson3texts[num]+' </span>'); + + if(num != 2){ + + + + $('#bindImg'+lessonId).append('<div id = "click'+lessonId+'" class="clicktoChange small border"></div>'); + + if(lessonId === 16){ + $('#click'+lessonId).append(sounds[lessonId]).addClass('Purple'); + } + if(lessonId === 18){ + $('#bindImg'+lessonId).append('<div id = "clickBrown" class="clicktoChange small border"></div>'); + $('#clickBrown').append('brown').addClass('Brown'); + } + else if(lessonId === 20){ + $('#click'+lessonId).append(sounds[lessonId]).addClass('Green'); + } + + else if(lessonId === 22){ + $('#click'+lessonId).append(sounds[lessonId]).addClass('red'); + } + else{ + $('#click'+lessonId).append(sounds[lessonId]).addClass('Yellow'); + } + + + $('#bindImg'+lessonId).css(bindImgCss); + $('#click'+lessonId).bind({ + click: function(){ + $(this).addClass('clicked'); + var curSound = sounds[lessonId]; + alert(curSound); + k.audio[curSound].play(); + } + }); + $('#clickBrown').bind({ + click: function(){ + $(this).addClass('clicked'); + var curSound = sounds[lessonId]; + alert(curSound); + k.audio[curSound].play(); + } + }); + } + num++; + + }; + + var startLesson3 = function(){ + var lessonCss = { + 'margin': '1em 0 0 10em', + 'float':'left', + 'width': '600px', + 'height': '520px', + 'text-align':'center' + }; + $('#lesson').css(lessonCss); + currentLessonStart = 12; + var lessonId = currentLessonStart; + $('#lesson').append('<div id="bindImg'+currentLessonStart+'" class="imgBind"></div>'); + var bindImgCss = { + 'float':'left', + 'width': '500px', + 'height':'100px', + 'text-align':'center', + 'padding-bottom':'1em' + }; + $('#bindImg'+currentLessonStart).css(bindImgCss); + for(i = currentLessonStart; i< 15; i++){ + assignColorBoxes(i); + } + + lessonId = 15; + num = 0; + for(i = lessonId;i<23;i++){ + assignTexts(i); + } + + + }; + + var nextLesson = function(){ + $('#content').html('').append('<div id="lesson"></div>'); + + if(currentLesson === 2){ + startLesson3(); + } + + if(currentLesson < 2){ // for being same interface for lesson 0 and 1 + var lessonCss = { + 'margin': '1em 0 0 18em', + 'float':'left', + 'width': '600px', + 'height': '520px', + 'text-align':'center' + }; + clickId = 0; + $('#lesson').css(lessonCss); + + currentLessonStart = 0; + for(j = 0; j< currentLesson;j++){ + currentLessonStart += numLessonClicks[j]; + if(currentLesson === 0){ + currentLessonStart = 0; + } + + } + for(i = 0;i<numLessonClicks[currentLesson];i++){ + assignLesson(i); + } + for(i = 0;i<numLessonClicks[currentLesson];i++){ + if(currentLesson === 0){ + if(i === 2|| i === 3 || i === 6||i === 7){ + assignImages(i); + } + } + else{ + assignImages(i); + } + } + } + + }; + + function gameStart(){ + currentLesson = 2; + nextLesson(); + } + + function game(){ + $('#linkPrevLesson').hide(); + gameStart(); + } + + game(); + + $('#linkNextLesson').click(function(){ + $('#linkNextLesson').hide(); + $('#linkPrevLesson').show(); + currentLesson = 1; + displayLessons(); + }); + $('#linkPrevLesson').click(function(){ + $('#linkNextLesson').show(); + $('#linkPrevLesson').hide(); + currentLesson = 0; + }); + $('#linkStart').click(function(){ + gameStart(); + }); + + $('#linkPlayAgain').click(function(){ + game(); + }); + $('#linkHelp').mouseover(function(){ + $('#help').slideDown(2000); + }) + .mouseout(function(){ + $('#help').slideUp(2000); + + }); + + }); //end of k.ready +}); //end of document.read + + diff --git a/examples/lessons/6_English_VocabularyAnimals/js/jquery-1.4.js b/examples/lessons/6_English_namesOfColor/js/jquery-1.4.js index a448490..a448490 100755 --- a/examples/lessons/6_English_VocabularyAnimals/js/jquery-1.4.js +++ b/examples/lessons/6_English_namesOfColor/js/jquery-1.4.js diff --git a/examples/lessons/6_English_VocabularyAnimals/js/karma.js b/examples/lessons/6_English_namesOfColor/js/karma.js index 03f027b..03f027b 100755 --- a/examples/lessons/6_English_VocabularyAnimals/js/karma.js +++ b/examples/lessons/6_English_namesOfColor/js/karma.js diff --git a/examples/lessons/6_English_namesOfColor/js/lesson.js b/examples/lessons/6_English_namesOfColor/js/lesson.js new file mode 100755 index 0000000..8908da4 --- /dev/null +++ b/examples/lessons/6_English_namesOfColor/js/lesson.js @@ -0,0 +1,743 @@ +$(document).ready(function(){ + var k = Karma({ + audio: [{'name':'correct','file':'correct.ogg'}, + {'name':'incorrect','file':'incorrect.ogg'}, + {'name':'One fish','file':'one_fish.wav'}, + {'name':'One house','file':'one_house.wav'}, + {'name':'Two fish','file':'two_fish.wav'}, + {'name':'Red fish','file':'red_fish.wav'}, + {'name':'Blue fish','file':'blue_fish.wav'}, + {'name':'One mouse','file':'one_mouse.wav'}, + {'name':'Red house','file':'red_house.wav'}, + {'name':'Blue mouse','file':'blue_mouse.wav'}, + {'name':'One head','file':'one_head.wav'}, + {'name':'One bed','file':'one_bed.wav'}, + {'name':'Red head','file':'red_head.wav'}, + {'name':'Blue bed','file':'blue_bed.wav'}, + {'name':'Green','file':'green.wav'}, + {'name':'Brown','file':'brown.wav'}, + {'name':'Purple','file':'purple.wav'}, + {'name':'turtle','file':'turtle.wav'}, + {'name':'bean','file':'bean.wav'}, + {'name':'uncle','file':'uncle.wav'}, + {'name':'bed','file':'bed.wav'}, + {'name':'Red','file':'red.wav'}, + {'name':'Blue','file':'blue.wav'}, + {'name':'Yellow','file':'yellow.wav'}, + {'name':'dead','file':'dead.wav'}, + {'name':'fellow','file':'fellow.wav'}, + {'name':'flew','file':'flew.wav'}, + {'name':'zoo','file':'zoo.wav'}, + {'name':'Orange','file':'orange.wav'}, + {'name':'White','file':'white.wav'}, + {'name':'back','file':'back.wav'}, + {'name':'November','file':'november.wav'}, + {'name':'spots','file':'spots.wav'}, + {'name':'Black','file':'black.wav'}, + {'name':'Gray','file':'grey.wav'}, + {'name':'Pink','file':'pink.wav'}, + {'name':'drink','file':'drink.wav'}, + {'name':'ink','file':'ink.wav'}, + {'name':'think','file':'think.wav'}, + {'name':'sink','file':'sink.wav'}, + {'name':'stink','file':'stink.wav'} + + ]}); + + k.ready(function(){ + var i,j; + var currentLesson; + var TOTAL_QUES = 6; + var currentLessonStart; + var num; + var numLessonClicks = new Array(8,4); + var sounds = new Array('One fish','Two fish','Red fish','Blue fish','One house','One mouse','Red house','Blue mouse', + 'One head','One bed','Red head','Blue bed', + 'Green','Brown','Purple','turtle','Purple','Brown','uncle','bean','Green','bed', //23 + 'Red','Yellow','Blue','zoo','dead','Red','Yellow','fellow','flew','Blue', //32 + 'Orange','White','Black','back','Orange','Green','Green','Orange','November', //42 + 'White','Black','spots','White','Black', + 'Black','Gray','Pink','drink','Black','ink','Black','Black','sink','Gray','stink','Pink','think' + + ); + var lesson3texts = new Array('See the little','The turtle is','His name is Punckle','He has a','The turtle ate a', + 'He became','The turtle went to','He became' + ); + var lesson4texts = new Array('We go the little','One animal is','Its color is','This animal is','She is tall', + 'We go to see the birds','A bird just','Its color is' + ); + var lesson5texts = new Array('From the zoo we came','Let us go to see the orange tree','An orange is','Have you seen an orange that is', + 'An orange on a','It becomes' + ); + + var assignImages = function(lessonId){ + var lessonIdNew; + lessonId = currentLessonStart+lessonId; + if(currentLesson === 0){ + lessonIdNew = lessonId-2; + } + else{ + lessonIdNew = lessonId; + } + if(currentLesson === 0 ){ + $('#bindImg'+lessonIdNew).append('<div id="img'+lessonId+'"></div>'); + $('#img'+lessonId).html('<img src="assets/image/'+sounds[lessonId]+'.png">'); + } + }; + + var assignLesson = function(lessonId){ + lessonId = currentLessonStart+lessonId; + var bindImgCss = { + 'float':'left', + 'width': '210px', + 'text-align':'center', + 'padding-bottom':'1em' + }; + $('#lesson').append('<div id="bindImg'+lessonId+'" class="imgBind"></div>'); + $('#bindImg'+lessonId).css(bindImgCss); + if(currentLesson === 1){ + $('#bindImg'+lessonId).append('<div id="img'+lessonId+'"></div>'); + $('#img'+lessonId).html('<img src="assets/image/'+sounds[lessonId]+'.png">'); + } + $('#bindImg'+lessonId).append('<div id = "click'+lessonId+'" class="clicktoChange large"></div>'); + $('#click'+lessonId).append(sounds[lessonId]).addClass('default'); + + $('#click'+lessonId).bind({ + mouseover: function(){ + $(this).addClass('hoverClick'); + }, + mouseout: function(){ + $(this).removeClass('hoverClick'); + }, + click: function(){ + $(this).addClass('clicked'); + var curSound = sounds[lessonId]; + if(currentLesson === 1){ + if(lessonId === 10 || lessonId === 11){ + $('#img'+lessonId).html('<img src="assets/image/'+sounds[lessonId]+'_Clicked.png" />'); + } + } + else{ + $('#img'+lessonId).html('<img src="assets/image/'+sounds[lessonId]+'_Clicked.png" />'); + } + k.audio[curSound].play(); + } + }); + }; + + + var assignColorBoxes = function(lessonId){ //for lesson 3 and 4 + $('#bindImg'+currentLessonStart).append('<div id = "click'+lessonId+'" class="clicktoChange medium border"></div>'); + $('#click'+lessonId).append(sounds[lessonId]).addClass(sounds[lessonId]); + + $('#click'+lessonId).bind({ + mouseover: function(){ + $(this).removeClass(sounds[lessonId]); + $(this).addClass('hoverClick'); + }, + mouseout: function(){ + $(this).removeClass('hoverClick'); + $(this).addClass(sounds[lessonId]); + }, + click: function(){ + $(this).addClass(sounds[lessonId]); + var curSound = sounds[lessonId]; + k.audio[curSound].play(); + } + }); + }; + + var bindSounds = function(lessonId){ + $('#click'+lessonId).bind({ + mouseover: function(){ + $(this).removeClass(sounds[lessonId]); + $(this).addClass('hoverClick'); + }, + mouseout: function(){ + $(this).removeClass('hoverClick'); + $(this).addClass(sounds[lessonId]); + }, + click: function(){ + //$(this).addClass(sounds[lessonId]); + var curSound = sounds[lessonId]; + //alert(curSound); + k.audio[curSound].play(); + if(lessonId === 16){ + $('#img0').html('<img src="assets/image/turtle_Clicked.png" />'); + } + if(lessonId === 22){ + $('#img3').html('<img src="assets/image/red_bed_Clicked.png" />'); + } + if(lessonId === 27){ + $('#img5').html('<img src="assets/image/dead_Clicked.png" />'); + } + if(lessonId === 28){ + $('#img6').html('<img src="assets/image/giraffe_Clicked.png" />'); + } + if(lessonId === 31){ + $('#img7').html('<img src="assets/image/bird_Clicked.png" />'); + } + if(lessonId === 37 || lessonId === 38 ){ + $('#img9').html('<img src="assets/image/orange_Clicked.png" />'); + } + if(lessonId === 39 || lessonId === 36){ + $('#img9').html('<img src="assets/image/orange.png" />'); + } + if(lessonId === 41 || lessonId === 44){ + $('#img11').html('<img src="assets/image/cat.png" />'); + } + if(lessonId === 42 || lessonId === 45){ + $('#img11').html('<img src="assets/image/cat_black.png" />'); + } + if(lessonId === 43){ + $('#img11').html('<img src="assets/image/cat_strip.png" />'); + } + } + }); + + } + + + + + + var assignImagesAbsolute = function(imgId,topPos,leftPos,imgName){ + $('#lesson').append('<div id="img'+imgId+'"></div>') + $('#img'+imgId).html('<img src="assets/image/'+imgName+'.png" />'); + var imgCss = { + 'position':'absolute', + 'top':topPos+'px', + 'left':leftPos+'px' + }; + $('#img'+imgId).css(imgCss); + bindSounds(imgId); + }; + + var startLesson7 = function(){ + var lessonCss = { + 'position':'relative', + 'margin': '1em 0 0 1em', + 'float':'left', + 'width': '800px', + 'height': '520px', + + }; + $('#lesson').html('').css(lessonCss); + currentLessonStart = 46; + var lessonId = currentLessonStart; + $('#lesson').append('<div id="bindImg'+currentLessonStart+'" class="imgBind"></div>'); + var bindImgCss = { + 'position':'relative', + 'float':'left', + 'width': '500px', + 'height':'40px', + 'text-align':'center', + 'padding-bottom':'1em', + 'margin-left':'5em' + }; + $('#bindImg'+currentLessonStart).css(bindImgCss); + for(i = currentLessonStart; i< 49; i++){ + assignColorBoxes(i); + } + + lessonId = 49; + num = 0; + $('#lesson').append('<div id="bindImg'+lessonId+'" class="lesson7css marginSmall"></div>'); + $('#bindImg'+lessonId).append('<span class = "clickTextInfo"> Which would you like to </span>'); + $('#bindImg'+lessonId).append('<div id = "click'+lessonId+'" class="clicktoChange small border yellow"></div>'); + $('#click'+lessonId).append('drink ?'); + bindSounds(lessonId); + lessonId++; + + $('#lesson').append('<div id="bindImgGlasses" class="lesson7css marginSmall"></div>'); + $('#bindImgGlasses').append('<img src="assets/image/black_glass.png" />'); + $('#bindImgGlasses').append('<img src="assets/image/gray_glass.png" />'); + $('#bindImgGlasses').append('<img src="assets/image/pink_glass.png" />'); + + $('#lesson').append('<div id="bindImgGlassTexts" class="lesson7css marginSmall"></div>'); + $('#bindImgGlassTexts').append('<span class = "clickTextInfo"> This this or this? </span>'); + + $('#lesson').append('<div id="bindImg'+lessonId+'" class="lesson7css marginSmall"></div>'); + $('#bindImg'+lessonId).append('<span class = "clickTextInfo"> That one is </span>'); + $('#bindImg'+lessonId).append('<div id = "click'+lessonId+'" class="clicktoChange small border black"></div>'); + $('#click'+lessonId).append('black'); + bindSounds(lessonId); + lessonIdNew = lessonId+1; + $('#bindImg'+lessonId).append('<span class = "smallclickTextInfo"></span>'); + $('#bindImg'+lessonId).append('<div id = "click'+lessonIdNew+'" class="clicktoChange small border yellow"></div>'); + $('#click'+lessonIdNew).append('ink'); + bindSounds(lessonIdNew); + lessonId+=2; + $('#lesson').append('<div id="bindImg'+lessonId+'" class="lesson7css marginSmall"></div>'); + $('#bindImg'+lessonId).append("<span class = 'clickTextInfo'> Don't drink</span>"); + $('#bindImg'+lessonId).append('<div id = "click'+lessonId+'" class="clicktoChange small border black"></div>'); + bindSounds(lessonId); + $('#bindImg'+lessonId).append('<span class = "smallclickTextInfo">ink</span>'); + lessonId+=2; + + $('#lesson').append('<div id="bindImg'+lessonId+'" class="lesson7css marginSmall"></div>'); + $('#bindImg'+lessonId).append("<span class = 'clickTextInfo'> It will make you</span>"); + $('#bindImg'+lessonId).append('<div id = "click'+lessonId+'" class="clicktoChange small border yellow"></div>'); + $('#click'+lessonId).append('sink'); + bindSounds(lessonId); + lessonId++; + + $('#lesson').append('<div id="bindImg'+lessonId+'" class="lesson7css marginMedium"></div>'); + $('#bindImg'+lessonId).append("<span class = 'clickTextInfo'> That is </span>"); + $('#bindImg'+lessonId).append('<div id = "click'+lessonId+'" class="clicktoChange small border gray"></div>'); + $('#click'+lessonId).append('gray'); + bindSounds(lessonId); + $('#bindImg'+lessonId).append('<span class = "smallclickTextInfo">ink</span>'); + lessonId++; + $('#lesson').append('<div id="bindImg'+lessonId+'" class="lesson7css marginMedium"></div>'); + $('#bindImg'+lessonId).append("<span class = 'clickTextInfo'> It will make you</span>"); + $('#bindImg'+lessonId).append('<div id = "click'+lessonId+'" class="clicktoChange small border yellow"></div>'); + $('#click'+lessonId).append('stink'); + bindSounds(lessonId); + lessonId++; + + + $('#lesson').append('<div id="bindImg'+lessonId+'" class="lesson7css marginLarge"></div>'); + $('#bindImg'+lessonId).append("<span class = 'clickTextInfo'> That is </span>"); + $('#bindImg'+lessonId).append('<div id = "click'+lessonId+'" class="clicktoChange small border pink"></div>'); + $('#click'+lessonId).append('pink'); + bindSounds(lessonId); + $('#bindImg'+lessonId).append('<span class = "smallclickTextInfo">ink</span>'); + lessonId++; + $('#lesson').append('<div id="bindImg'+lessonId+'" class="lesson7css marginLarge"></div>'); + $('#bindImg'+lessonId).append("<span class = 'clickTextInfo'> It will make you</span>"); + $('#bindImg'+lessonId).append('<div id = "click'+lessonId+'" class="clicktoChange small border yellow"></div>'); + $('#click'+lessonId).append('think'); + bindSounds(lessonId); + + assignImagesAbsolute(5,135,450,'sink'); + assignImagesAbsolute(6,280,550,'stink'); + assignImagesAbsolute(7,375,800,'think'); + + }; + + + var startLesson6 = function(){ + var lessonCss = { + 'position':'relative', + 'margin': '6em 0 0 10em', + 'float':'left', + 'width': '600px', + 'height': '400px', + 'text-align':'center' + }; + $('#lesson').html('').css(lessonCss); + currentLessonStart = 41; + var lessonId = currentLessonStart; + + $('#lesson').append('<div id="bindImg211" class="lesson6css"></div>'); + $('#bindImg211').append('<span class = "clickTextInfo"> Look at cat</span>'); + + $('#lesson').append('<div id="img11"></img>'); + $('#img11').append('<img src="assets/image/cat.png />'); + + $('#lesson').append('<div id="bindImg'+lessonId+'" class="lesson6css"></div>'); + $('#bindImg'+lessonId).append('<span class = "clickTextInfo"> It is </span>'); + $('#bindImg'+lessonId).append('<div id = "click'+lessonId+'" class="clicktoChange small border white"></div>'); + $('#click'+lessonId).append('white'); + bindSounds(lessonId); + $('#bindImg'+lessonId).append('<span class = "smallclickTextInfo"> and fat.</span>'); + lessonId++; + + $('#lesson').append('<div id="bindImg'+lessonId+'" class="lesson5css"></div>'); + $('#bindImg'+lessonId).append('<span class = "clickTextInfo"> Make the white cat </span>'); + $('#bindImg'+lessonId).append('<div id = "click'+lessonId+'" class="clicktoChange small border black"></div>'); + $('#click'+lessonId).append('black'); + bindSounds(lessonId); + lessonId++; + + $('#lesson').append('<div id="bindImg'+lessonId+'" class="lesson5css"></div>'); + $('#bindImg'+lessonId).append('<span class = "clickTextInfo"> Give that black cat spots </span>'); + $('#bindImg'+lessonId).append('<div id = "click'+lessonId+'" class="clicktoChange small border yellow"></div>'); + $('#click'+lessonId).append('white'); + bindSounds(lessonId); + lessonId++; + + $('#lesson').append('<div id="bindImg'+lessonId+'" class="lesson5css"></div>'); + $('#bindImg'+lessonId).append('<span class = "clickTextInfo"> Now is the cat </span>'); + $('#bindImg'+lessonId).append('<div id = "click'+lessonId+'" class="clicktoChange small border white"></div>'); + $('#bindImg'+lessonId).append('<span class = "smallclickTextInfo">,</span>'); + bindSounds(lessonId); + lessonIdNew = lessonId+1; + $('#bindImg'+lessonId).append('<div id = "click'+lessonIdNew+'" class="clicktoChange small border black"></div>'); + bindSounds(lessonIdNew); + $('#bindImg'+lessonId).append('<span class = "smallclickTextInfo"> or fat.</span>'); + + } + + var startLesson5 = function(){ + var lessonCss = { + 'position':'relative', + 'margin': '1em 0 0 10em', + 'float':'left', + 'width': '700px', + 'height': '520px', + 'text-align':'center' + }; + $('#lesson').html('').css(lessonCss); + currentLessonStart = 32; + var lessonId = currentLessonStart; + $('#lesson').append('<div id="bindImg'+currentLessonStart+'" class="imgBind"></div>'); + var bindImgCss = { + 'position':'relative', + 'float':'left', + 'width': '700px', + 'height':'100px', + 'text-align':'center', + 'padding-bottom':'1em' + }; + $('#bindImg'+currentLessonStart).css(bindImgCss); + for(i = currentLessonStart; i< 35; i++){ + assignColorBoxes(i); + } + + lessonId = 35; + num = 0; + $('#lesson').append('<div id="bindImg'+lessonId+'" class="lesson5css"></div>'); + $('#bindImg'+lessonId).append('<span class = "clickTextInfo"> '+lesson5texts[num]+' </span>'); + $('#bindImg'+lessonId).append('<div id = "click'+lessonId+'" class="clicktoChange small border yellow"></div>'); + $('#click'+lessonId).append(sounds[lessonId]); + bindSounds(lessonId); + num++; + $('#lesson').append('<div id="bindImg120" class="lesson5css"></div>'); + $('#bindImg120').append('<span class = "clickTextInfo"> '+lesson5texts[num]+'</span>'); + lessonId++; + num++; + $('#lesson').append('<div id="bindImg'+lessonId+'" class="lesson5css"></div>'); + $('#bindImg'+lessonId).append('<span class = "clickTextInfo"> '+lesson5texts[num]+' </span>'); + $('#bindImg'+lessonId).append('<div id = "click'+lessonId+'" class="clicktoChange small border orange"></div>'); + $('#click'+lessonId).append('orange'); + bindSounds(lessonId); + lessonId++; + num++; + $('#lesson').append('<div id="bindImg'+lessonId+'" class="lesson5css"></div>'); + $('#bindImg'+lessonId).append('<span class = "clickTextInfo"> '+lesson5texts[num]+' </span>'); + $('#bindImg'+lessonId).append('<div id = "click'+lessonId+'" class="clicktoChange small border yellow"></div>'); + $('#click'+lessonId).append('green ?'); + bindSounds(lessonId); + lessonId++; + num++; + $('#lesson').append('<div id="bindImg'+lessonId+'" class="lesson5css"></div>'); + $('#bindImg'+lessonId).append('<span class = "clickTextInfo"> '+lesson5texts[num]+' </span>'); + $('#bindImg'+lessonId).append('<span class = "lesson5tree"></span>'); + $('#bindImg'+lessonId).append('<span class = "clickTextInfo">is</span>'); + $('#bindImg'+lessonId).append('<div id = "click'+lessonId+'" class="clicktoChange small border green"></div>'); + $('#click'+lessonId).append('green'); + bindSounds(lessonId); + lessonId++; + num++; + $('#lesson').append('<div id="bindImg'+lessonId+'" class="lesson5css"></div>'); + $('#bindImg'+lessonId).append('<span class = "clickTextInfo"> '+lesson5texts[num]+' </span>'); + $('#bindImg'+lessonId).append('<div id = "click'+lessonId+'" class="clicktoChange small border orange"></div>'); + bindSounds(lessonId); + lessonIdNew = lessonId+1; + $('#bindImg'+lessonId).append('<span class = "smallclickTextInfo"> in </span>'); + $('#bindImg'+lessonId).append('<div id = "click'+lessonIdNew+'" class="clicktoChange small border yellow"></div>'); + $('#click'+lessonIdNew).append('November'); + bindSounds(lessonIdNew); + + assignImagesAbsolute(9,190,600,'orange'); + assignImagesAbsolute(10,350,320,'tree'); + + }; + + + var startLesson4 = function(){ + var lessonCss = { + 'position':'relative', + 'margin': '1em 0 0 10em', + 'float':'left', + 'width': '700px', + 'height': '520px', + 'text-align':'center' + }; + $('#lesson').html('').css(lessonCss); + currentLessonStart = 22; + var lessonId = currentLessonStart; + $('#lesson').append('<div id="bindImg'+currentLessonStart+'" class="imgBind"></div>'); + var bindImgCss = { + 'position':'relative', + 'float':'left', + 'width': '500px', + 'height':'100px', + 'text-align':'center', + 'padding-bottom':'1em' + }; + $('#bindImg'+currentLessonStart).css(bindImgCss); + for(i = currentLessonStart; i< 25; i++){ + assignColorBoxes(i); + } + + lessonId = 25; + num = 0; + $('#lesson').append('<div id="bindImg'+lessonId+'" class="lesson3css"></div>'); + $('#bindImg'+lessonId).append('<span class = "clickTextInfo"> '+lesson4texts[num]+' </span>'); + $('#bindImg'+lessonId).append('<div id = "click'+lessonId+'" class="clicktoChange small border yellow"></div>'); + $('#click'+lessonId).append(sounds[lessonId]); + bindSounds(lessonId); + lessonId++; + num++; + $('#lesson').append('<div id="bindImg'+lessonId+'" class="lesson3css"></div>'); + $('#bindImg'+lessonId).append('<span class = "clickTextInfo"> '+lesson4texts[num]+' </span>'); + $('#bindImg'+lessonId).append('<div id = "click'+lessonId+'" class="clicktoChange small border yellow"></div>'); + $('#click'+lessonId).append(sounds[lessonId]); + bindSounds(lessonId); + lessonId++; + num++; + $('#lesson').append('<div id="bindImg'+lessonId+'" class="lesson3css"></div>'); + $('#bindImg'+lessonId).append('<span class = "clickTextInfo"> '+lesson4texts[num]+' </span>'); + $('#bindImg'+lessonId).append('<div id = "click'+lessonId+'" class="clicktoChange small border red "></div>'); + bindSounds(lessonId); + lessonId++; + num++; + $('#lesson').append('<div id="bindImg'+lessonId+'" class="lesson3css"></div>'); + $('#bindImg'+lessonId).append('<span class = "clickTextInfo"> '+lesson4texts[num]+' </span>'); + $('#bindImg'+lessonId).append('<div id = "click'+lessonId+'" class="clicktoChange small border yellow"></div>'); + $('#click'+lessonId).append(sounds[lessonId]); + bindSounds(lessonId); + lessonId++; + num++; + $('#lesson').append('<div id="bindImg'+lessonId+'" class="lesson3css"></div>'); + $('#bindImg'+lessonId).append('<span class = "clickTextInfo"> '+lesson4texts[num]+' </span>'); + $('#bindImg'+lessonId).append('<div id = "click'+lessonId+'" class="clicktoChange small border yellow"></div>'); + $('#click'+lessonId).append(sounds[lessonId]); + bindSounds(lessonId); + + + num++; + $('#lesson').append('<div id="bindImg120" class="lesson3css"></div>'); + $('#bindImg120').append('<span class = "clickTextInfo"> '+lesson4texts[num]+' </span>'); + lessonId++; + num++; + + $('#lesson').append('<div id="bindImg'+lessonId+'" class="lesson3css"></div>'); + $('#bindImg'+lessonId).append('<span class = "clickTextInfo"> '+lesson4texts[num]+' </span>'); + $('#bindImg'+lessonId).append('<div id = "click'+lessonId+'" class="clicktoChange small border yellow"></div>'); + $('#click'+lessonId).append(sounds[lessonId]); + bindSounds(lessonId); + lessonId++; + num++; + $('#lesson').append('<div id="bindImg'+lessonId+'" class="lesson3css"></div>'); + $('#bindImg'+lessonId).append('<span class = "clickTextInfo"> '+lesson4texts[num]+' </span>'); + $('#bindImg'+lessonId).append('<div id = "click'+lessonId+'" class="clicktoChange small border blue"></div>'); + $('#click'+lessonId); + bindSounds(lessonId); + + + assignImagesAbsolute(4,20,450,'zoo'); + assignImagesAbsolute(5,135,425,'dead'); + assignImagesAbsolute(6,180,0,'giraffe'); + assignImagesAbsolute(7,250,500,'bird'); + assignImagesAbsolute(8,280,550,'cage'); + + }; + + + + var startLesson3 = function(){ + var lessonCss = { + 'position':'relative', + 'margin': '1em 0 0 10em', + 'float':'left', + 'width': '600px', + 'height': '520px', + 'text-align':'center' + }; + $('#lesson').css(lessonCss); + currentLessonStart = 12; + var lessonId = currentLessonStart; + $('#lesson').append('<div id="bindImg'+currentLessonStart+'" class="imgBind"></div>'); + var bindImgCss = { + 'position':'relative', + 'float':'left', + 'width': '500px', + 'height':'100px', + 'text-align':'center', + 'padding-bottom':'1em' + }; + $('#bindImg'+currentLessonStart).css(bindImgCss); + for(i = currentLessonStart; i< 15; i++){ + assignColorBoxes(i); + } + + + lessonId = 15; + num = 0; + $('#lesson').append('<div id="bindImg'+lessonId+'" class="lesson3css"></div>'); + $('#bindImg'+lessonId).append('<span class = "clickTextInfo"> '+lesson3texts[num]+' </span>'); + $('#bindImg'+lessonId).append('<div id = "click'+lessonId+'" class="clicktoChange small border yellow"></div>'); + $('#click'+lessonId).append(sounds[lessonId]); + bindSounds(lessonId); + lessonId++; + num++; + $('#lesson').append('<div id="bindImg'+lessonId+'" class="lesson3css"></div>'); + $('#bindImg'+lessonId).append('<span class = "clickTextInfo"> '+lesson3texts[num]+' </span>'); + $('#bindImg'+lessonId).append('<div id = "click'+lessonId+'" class="clicktoChange small border purple"></div>'); + $('#click'+lessonId).append(sounds[lessonId]); + bindSounds(lessonId); + lessonId++; + num++; + $('#lesson').append('<div id="bindImg100" class="lesson3css"></div>'); + $('#bindImg100').append('<span class = "clickTextInfo"> '+lesson3texts[num]+' </span>'); + + num++; + $('#lesson').append('<div id="bindImg'+lessonId+'" class="lesson3css"></div>'); + $('#bindImg'+lessonId).append('<span class = "clickTextInfo"> '+lesson3texts[num]+' </span>'); + $('#bindImg'+lessonId).append('<div id = "click'+lessonId+'" class="clicktoChange small border brown"></div>'); + $('#click'+lessonId).append('brown'); + bindSounds(lessonId); + lessonId++; + $('#bindImg'+(lessonId-1)).append('<div id = "click'+lessonId+'" class="clicktoChange small border yellow"></div>'); + $('#click'+lessonId).append('uncle'); + bindSounds(lessonId); + lessonId++; + num++; + $('#lesson').append('<div id="bindImg'+lessonId+'" class="lesson3css"></div>'); + $('#bindImg'+lessonId).append('<span class = "clickTextInfo"> '+lesson3texts[num]+' </span>'); + $('#bindImg'+lessonId).append('<div id = "click'+lessonId+'" class="clicktoChange small border yellow"></div>'); + $('#click'+lessonId).append(sounds[lessonId]); + bindSounds(lessonId); + lessonId++; + num++; + $('#lesson').append('<div id="bindImg'+lessonId+'" class="lesson3css"></div>'); + $('#bindImg'+lessonId).append('<span class = "clickTextInfo"> '+lesson3texts[num]+' </span>'); + $('#bindImg'+lessonId).append('<div id = "click'+lessonId+'" class="clicktoChange small border green"></div>'); + $('#click'+lessonId).append(''); + bindSounds(lessonId); + lessonId++; + num++; + $('#lesson').append('<div id="bindImg'+lessonId+'" class="lesson3css"></div>'); + $('#bindImg'+lessonId).append('<span class = "clickTextInfo"> '+lesson3texts[num]+' </span>'); + $('#bindImg'+lessonId).append('<div id = "click'+lessonId+'" class="clicktoChange small border yellow"></div>'); + $('#click'+lessonId).append(sounds[lessonId]); + bindSounds(lessonId); + lessonId++; + num++; + $('#lesson').append('<div id="bindImg'+lessonId+'" class="lesson3css"></div>'); + $('#bindImg'+lessonId).append('<span class = "clickTextInfo"> '+lesson3texts[num]+' </span>'); + $('#bindImg'+lessonId).append('<div id = "click'+lessonId+'" class="clicktoChange small border red"></div>'); + $('#click'+lessonId).append(sounds[lessonId]); + bindSounds(lessonId); + + assignImagesAbsolute(0,75,0,'turtle'); + assignImagesAbsolute(1,150,500,'brown_uncle'); + assignImagesAbsolute(2,275,450,'bean'); + assignImagesAbsolute(3,400,450,'bed'); + + }; + + + + var nextLesson = function(){ + $('#content').html('').append('<div id="lesson"></div>'); + if(currentLesson === 2){ + startLesson3(); + } + if(currentLesson === 3){ + startLesson4(); + } + if(currentLesson === 4){ + startLesson5(); + } + if(currentLesson === 5){ + startLesson6(); + } + if(currentLesson === 6){ + startLesson7(); + } + if(currentLesson < 2){ // for being same interface for lesson 0 and 1 + var lessonCss = { + 'margin': '1em 0 0 18em', + 'float':'left', + 'width': '600px', + 'height': '520px', + 'text-align':'center' + }; + clickId = 0; + $('#lesson').css(lessonCss); + + currentLessonStart = 0; + for(j = 0; j< currentLesson;j++){ + currentLessonStart += numLessonClicks[j]; + if(currentLesson === 0){ + currentLessonStart = 0; + } + + } + for(i = 0;i<numLessonClicks[currentLesson];i++){ + assignLesson(i); + } + for(i = 0;i<numLessonClicks[currentLesson];i++){ + if(currentLesson === 0){ + if(i === 2|| i === 3 || i === 6||i === 7){ + assignImages(i); + } + } + else{ + assignImages(i); + } + } + } + + }; + + function gameStart(){ + nextLesson(); + } + + function game(){ + $('#linkPrevLesson').hide(); + currentLesson = 0; + gameStart(); + } + $('#linkPrevLesson').hide(); + currentLesson = 0; + + $('#linkNextLesson').click(function(){ + currentLesson++; + if(currentLesson === 6){ + $('#linkNextLesson').hide(); + } + else{ + $('#linkNextLesson').show(); + $('#linkPrevLesson').show(); + } + + nextLesson(); + }); + $('#linkPrevLesson').click(function(){ + currentLesson--; + if(currentLesson === 0){ + $('#linkPrevLesson').hide(); + } + else{ + $('#linkNextLesson').show(); + $('#linkPrevLesson').show(); + } + + nextLesson(); + }); + $('#linkStart').click(function(){ + gameStart(); + }); + + $('#linkPlayAgain').click(function(){ + game(); + }); + $('#linkHelp').mouseover(function(){ + $('#help').slideDown(2000); + }) + .mouseout(function(){ + $('#help').slideUp(2000); + + }); + + }); //end of k.ready +}); //end of document.read + + diff --git a/examples/lessons/6_English_VocabularyAnimals/js/ui.core.js b/examples/lessons/6_English_namesOfColor/js/ui.core.js index 5493e0a..5493e0a 100755 --- a/examples/lessons/6_English_VocabularyAnimals/js/ui.core.js +++ b/examples/lessons/6_English_namesOfColor/js/ui.core.js diff --git a/examples/lessons/6_English_VocabularyBirds/assets/audio/correct.ogg b/examples/lessons/6_English_oneOrMany/assets/audio/correct.ogg Binary files differindex a0d9e3a..a0d9e3a 100755 --- a/examples/lessons/6_English_VocabularyBirds/assets/audio/correct.ogg +++ b/examples/lessons/6_English_oneOrMany/assets/audio/correct.ogg diff --git a/examples/lessons/6_English_VocabularyBirds/assets/audio/incorrect.ogg b/examples/lessons/6_English_oneOrMany/assets/audio/incorrect.ogg Binary files differindex 4805e55..4805e55 100755 --- a/examples/lessons/6_English_VocabularyBirds/assets/audio/incorrect.ogg +++ b/examples/lessons/6_English_oneOrMany/assets/audio/incorrect.ogg diff --git a/examples/lessons/6_English_oneOrMany/assets/image/aeroplane.png b/examples/lessons/6_English_oneOrMany/assets/image/aeroplane.png Binary files differnew file mode 100755 index 0000000..99fd5a2 --- /dev/null +++ b/examples/lessons/6_English_oneOrMany/assets/image/aeroplane.png diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/backImage.png b/examples/lessons/6_English_oneOrMany/assets/image/backImage.png Binary files differindex 395650b..395650b 100755 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/backImage.png +++ b/examples/lessons/6_English_oneOrMany/assets/image/backImage.png diff --git a/examples/lessons/6_English_oneOrMany/assets/image/bag.png b/examples/lessons/6_English_oneOrMany/assets/image/bag.png Binary files differnew file mode 100755 index 0000000..0c08252 --- /dev/null +++ b/examples/lessons/6_English_oneOrMany/assets/image/bag.png diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/bear.png b/examples/lessons/6_English_oneOrMany/assets/image/bear.png Binary files differindex b8c29e4..b8c29e4 100755 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/bear.png +++ b/examples/lessons/6_English_oneOrMany/assets/image/bear.png diff --git a/examples/lessons/6_English_oneOrMany/assets/image/bench.png b/examples/lessons/6_English_oneOrMany/assets/image/bench.png Binary files differnew file mode 100755 index 0000000..d5a559e --- /dev/null +++ b/examples/lessons/6_English_oneOrMany/assets/image/bench.png diff --git a/examples/lessons/6_Maths_goShopping/assets/image/bg_footer.png b/examples/lessons/6_English_oneOrMany/assets/image/bg_footer.png Binary files differindex 8982264..8982264 100755 --- a/examples/lessons/6_Maths_goShopping/assets/image/bg_footer.png +++ b/examples/lessons/6_English_oneOrMany/assets/image/bg_footer.png diff --git a/examples/lessons/6_Maths_goShopping/assets/image/bg_header.png b/examples/lessons/6_English_oneOrMany/assets/image/bg_header.png Binary files differindex 98213f7..98213f7 100755 --- a/examples/lessons/6_Maths_goShopping/assets/image/bg_header.png +++ b/examples/lessons/6_English_oneOrMany/assets/image/bg_header.png diff --git a/examples/lessons/6_Maths_goShopping/assets/image/bg_title_block.png b/examples/lessons/6_English_oneOrMany/assets/image/bg_title_block.png Binary files differindex 2c9dacf..2c9dacf 100755 --- a/examples/lessons/6_Maths_goShopping/assets/image/bg_title_block.png +++ b/examples/lessons/6_English_oneOrMany/assets/image/bg_title_block.png diff --git a/examples/lessons/6_English_oneOrMany/assets/image/boat.png b/examples/lessons/6_English_oneOrMany/assets/image/boat.png Binary files differnew file mode 100755 index 0000000..09e3154 --- /dev/null +++ b/examples/lessons/6_English_oneOrMany/assets/image/boat.png diff --git a/examples/lessons/6_English_oneOrMany/assets/image/book.png b/examples/lessons/6_English_oneOrMany/assets/image/book.png Binary files differnew file mode 100755 index 0000000..536be2b --- /dev/null +++ b/examples/lessons/6_English_oneOrMany/assets/image/book.png diff --git a/examples/lessons/6_English_oneOrMany/assets/image/brush.png b/examples/lessons/6_English_oneOrMany/assets/image/brush.png Binary files differnew file mode 100755 index 0000000..ee6e220 --- /dev/null +++ b/examples/lessons/6_English_oneOrMany/assets/image/brush.png diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/btn_back.png b/examples/lessons/6_English_oneOrMany/assets/image/btn_back.png Binary files differindex d9fbf14..d9fbf14 100755 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/btn_back.png +++ b/examples/lessons/6_English_oneOrMany/assets/image/btn_back.png diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/btn_back_hover.png b/examples/lessons/6_English_oneOrMany/assets/image/btn_back_hover.png Binary files differindex 0911fcc..0911fcc 100755 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/btn_back_hover.png +++ b/examples/lessons/6_English_oneOrMany/assets/image/btn_back_hover.png diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/btn_help.png b/examples/lessons/6_English_oneOrMany/assets/image/btn_help.png Binary files differindex 6753e9c..6753e9c 100755 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/btn_help.png +++ b/examples/lessons/6_English_oneOrMany/assets/image/btn_help.png diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/btn_help_hover.png b/examples/lessons/6_English_oneOrMany/assets/image/btn_help_hover.png Binary files differindex d3ccd92..d3ccd92 100755 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/btn_help_hover.png +++ b/examples/lessons/6_English_oneOrMany/assets/image/btn_help_hover.png diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/btn_next.png b/examples/lessons/6_English_oneOrMany/assets/image/btn_next.png Binary files differindex 9d70993..9d70993 100755 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/btn_next.png +++ b/examples/lessons/6_English_oneOrMany/assets/image/btn_next.png diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/btn_next_hover.png b/examples/lessons/6_English_oneOrMany/assets/image/btn_next_hover.png Binary files differindex 2cd4d37..2cd4d37 100755 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/btn_next_hover.png +++ b/examples/lessons/6_English_oneOrMany/assets/image/btn_next_hover.png diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/btn_ole.png b/examples/lessons/6_English_oneOrMany/assets/image/btn_ole.png Binary files differindex 0e775e9..0e775e9 100755 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/btn_ole.png +++ b/examples/lessons/6_English_oneOrMany/assets/image/btn_ole.png diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/btn_ole_hover.png b/examples/lessons/6_English_oneOrMany/assets/image/btn_ole_hover.png Binary files differindex c43c5f7..c43c5f7 100755 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/btn_ole_hover.png +++ b/examples/lessons/6_English_oneOrMany/assets/image/btn_ole_hover.png diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/btn_play_again.png b/examples/lessons/6_English_oneOrMany/assets/image/btn_play_again.png Binary files differindex 3594d18..3594d18 100755 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/btn_play_again.png +++ b/examples/lessons/6_English_oneOrMany/assets/image/btn_play_again.png diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/btn_play_again_hover.png b/examples/lessons/6_English_oneOrMany/assets/image/btn_play_again_hover.png Binary files differindex ebb8f8c..ebb8f8c 100755 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/btn_play_again_hover.png +++ b/examples/lessons/6_English_oneOrMany/assets/image/btn_play_again_hover.png diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/btn_play_again_mouse_down.png b/examples/lessons/6_English_oneOrMany/assets/image/btn_play_again_mouse_down.png Binary files differindex 07d6e45..07d6e45 100755 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/btn_play_again_mouse_down.png +++ b/examples/lessons/6_English_oneOrMany/assets/image/btn_play_again_mouse_down.png diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/btn_start.png b/examples/lessons/6_English_oneOrMany/assets/image/btn_start.png Binary files differindex 32e5f20..32e5f20 100755 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/btn_start.png +++ b/examples/lessons/6_English_oneOrMany/assets/image/btn_start.png diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/btn_start_hover.png b/examples/lessons/6_English_oneOrMany/assets/image/btn_start_hover.png Binary files differindex 811ce78..811ce78 100755 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/btn_start_hover.png +++ b/examples/lessons/6_English_oneOrMany/assets/image/btn_start_hover.png diff --git a/examples/lessons/6_English_VocabularyBirds/assets/image/btn_start_mouse_down.png b/examples/lessons/6_English_oneOrMany/assets/image/btn_start_mouse_down.png Binary files differindex 5acd43b..5acd43b 100755 --- a/examples/lessons/6_English_VocabularyBirds/assets/image/btn_start_mouse_down.png +++ b/examples/lessons/6_English_oneOrMany/assets/image/btn_start_mouse_down.png diff --git a/examples/lessons/6_English_oneOrMany/assets/image/bus.png b/examples/lessons/6_English_oneOrMany/assets/image/bus.png Binary files differnew file mode 100755 index 0000000..e0bcc24 --- /dev/null +++ b/examples/lessons/6_English_oneOrMany/assets/image/bus.png diff --git a/examples/lessons/6_English_oneOrMany/assets/image/cart.png b/examples/lessons/6_English_oneOrMany/assets/image/cart.png Binary files differnew file mode 100755 index 0000000..42998c8 --- /dev/null +++ b/examples/lessons/6_English_oneOrMany/assets/image/cart.png diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/check.png b/examples/lessons/6_English_oneOrMany/assets/image/check.png Binary files differindex 84fc229..84fc229 100755 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/check.png +++ b/examples/lessons/6_English_oneOrMany/assets/image/check.png diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/comma.png b/examples/lessons/6_English_oneOrMany/assets/image/comma.png Binary files differindex aa0474e..aa0474e 100755 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/comma.png +++ b/examples/lessons/6_English_oneOrMany/assets/image/comma.png diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/correct.png b/examples/lessons/6_English_oneOrMany/assets/image/correct.png Binary files differindex ca9b9db..ca9b9db 100755 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/correct.png +++ b/examples/lessons/6_English_oneOrMany/assets/image/correct.png diff --git a/examples/lessons/6_English_oneOrMany/assets/image/cycle.png b/examples/lessons/6_English_oneOrMany/assets/image/cycle.png Binary files differnew file mode 100755 index 0000000..90afbd6 --- /dev/null +++ b/examples/lessons/6_English_oneOrMany/assets/image/cycle.png diff --git a/examples/lessons/6_English_oneOrMany/assets/image/desk.png b/examples/lessons/6_English_oneOrMany/assets/image/desk.png Binary files differnew file mode 100755 index 0000000..2c63613 --- /dev/null +++ b/examples/lessons/6_English_oneOrMany/assets/image/desk.png diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/dot.png b/examples/lessons/6_English_oneOrMany/assets/image/dot.png Binary files differindex 74ac1ff..74ac1ff 100755 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/dot.png +++ b/examples/lessons/6_English_oneOrMany/assets/image/dot.png diff --git a/examples/lessons/6_English_oneOrMany/assets/image/elephant.png b/examples/lessons/6_English_oneOrMany/assets/image/elephant.png Binary files differnew file mode 100755 index 0000000..6467a4b --- /dev/null +++ b/examples/lessons/6_English_oneOrMany/assets/image/elephant.png diff --git a/examples/lessons/6_English_oneOrMany/assets/image/help.png b/examples/lessons/6_English_oneOrMany/assets/image/help.png Binary files differnew file mode 100755 index 0000000..21ae5e0 --- /dev/null +++ b/examples/lessons/6_English_oneOrMany/assets/image/help.png diff --git a/examples/lessons/6_English_VocabularyAnimals/assets/image/incorrect.png b/examples/lessons/6_English_oneOrMany/assets/image/incorrect.png Binary files differindex 49ee2a2..49ee2a2 100755 --- a/examples/lessons/6_English_VocabularyAnimals/assets/image/incorrect.png +++ b/examples/lessons/6_English_oneOrMany/assets/image/incorrect.png diff --git a/examples/lessons/6_English_oneOrMany/assets/image/jackel.png b/examples/lessons/6_English_oneOrMany/assets/image/jackel.png Binary files differnew file mode 100755 index 0000000..88d7463 --- /dev/null +++ b/examples/lessons/6_English_oneOrMany/assets/image/jackel.png diff --git a/examples/lessons/6_English_oneOrMany/assets/image/kite.png b/examples/lessons/6_English_oneOrMany/assets/image/kite.png Binary files differnew file mode 100755 index 0000000..2eb6ded --- /dev/null +++ b/examples/lessons/6_English_oneOrMany/assets/image/kite.png diff --git a/examples/lessons/6_English_oneOrMany/assets/image/ladder.png b/examples/lessons/6_English_oneOrMany/assets/image/ladder.png Binary files differnew file mode 100755 index 0000000..84f8b9f --- /dev/null +++ b/examples/lessons/6_English_oneOrMany/assets/image/ladder.png diff --git a/examples/lessons/6_English_oneOrMany/assets/image/monkey.png b/examples/lessons/6_English_oneOrMany/assets/image/monkey.png Binary files differnew file mode 100755 index 0000000..6c8dce0 --- /dev/null +++ b/examples/lessons/6_English_oneOrMany/assets/image/monkey.png diff --git a/examples/lessons/6_English_oneOrMany/assets/image/objects.png b/examples/lessons/6_English_oneOrMany/assets/image/objects.png Binary files differnew file mode 100755 index 0000000..828a1a2 --- /dev/null +++ b/examples/lessons/6_English_oneOrMany/assets/image/objects.png diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/rhino.png b/examples/lessons/6_English_oneOrMany/assets/image/rhino.png Binary files differindex d853865..d853865 100755 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/rhino.png +++ b/examples/lessons/6_English_oneOrMany/assets/image/rhino.png diff --git a/examples/lessons/6_English_oneOrMany/assets/image/ship.png b/examples/lessons/6_English_oneOrMany/assets/image/ship.png Binary files differnew file mode 100755 index 0000000..a732c86 --- /dev/null +++ b/examples/lessons/6_English_oneOrMany/assets/image/ship.png diff --git a/examples/lessons/6_English_oneOrMany/assets/image/snake.png b/examples/lessons/6_English_oneOrMany/assets/image/snake.png Binary files differnew file mode 100755 index 0000000..103e9a5 --- /dev/null +++ b/examples/lessons/6_English_oneOrMany/assets/image/snake.png diff --git a/examples/lessons/6_English_oneOrMany/assets/image/soap.png b/examples/lessons/6_English_oneOrMany/assets/image/soap.png Binary files differnew file mode 100755 index 0000000..a7a4826 --- /dev/null +++ b/examples/lessons/6_English_oneOrMany/assets/image/soap.png diff --git a/examples/lessons/6_English_oneOrMany/assets/image/tempo.png b/examples/lessons/6_English_oneOrMany/assets/image/tempo.png Binary files differnew file mode 100755 index 0000000..e823d6a --- /dev/null +++ b/examples/lessons/6_English_oneOrMany/assets/image/tempo.png diff --git a/examples/lessons/6_English_oneOrMany/assets/image/tiger.png b/examples/lessons/6_English_oneOrMany/assets/image/tiger.png Binary files differnew file mode 100755 index 0000000..4228ecf --- /dev/null +++ b/examples/lessons/6_English_oneOrMany/assets/image/tiger.png diff --git a/examples/lessons/6_Maths_goShopping/assets/image/title_block_lt.png b/examples/lessons/6_English_oneOrMany/assets/image/title_block_lt.png Binary files differindex 4696182..4696182 100755 --- a/examples/lessons/6_Maths_goShopping/assets/image/title_block_lt.png +++ b/examples/lessons/6_English_oneOrMany/assets/image/title_block_lt.png diff --git a/examples/lessons/6_Maths_goShopping/assets/image/title_block_rt.png b/examples/lessons/6_English_oneOrMany/assets/image/title_block_rt.png Binary files differindex 37cc44a..37cc44a 100755 --- a/examples/lessons/6_Maths_goShopping/assets/image/title_block_rt.png +++ b/examples/lessons/6_English_oneOrMany/assets/image/title_block_rt.png diff --git a/examples/lessons/6_English_oneOrMany/assets/image/transportation.png b/examples/lessons/6_English_oneOrMany/assets/image/transportation.png Binary files differnew file mode 100755 index 0000000..ce0e783 --- /dev/null +++ b/examples/lessons/6_English_oneOrMany/assets/image/transportation.png diff --git a/examples/lessons/6_English_oneOrMany/assets/image/truck.png b/examples/lessons/6_English_oneOrMany/assets/image/truck.png Binary files differnew file mode 100755 index 0000000..6b86748 --- /dev/null +++ b/examples/lessons/6_English_oneOrMany/assets/image/truck.png diff --git a/examples/lessons/6_English_oneOrMany/assets/image/turtle.png b/examples/lessons/6_English_oneOrMany/assets/image/turtle.png Binary files differnew file mode 100755 index 0000000..d679b9b --- /dev/null +++ b/examples/lessons/6_English_oneOrMany/assets/image/turtle.png diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/wild.png b/examples/lessons/6_English_oneOrMany/assets/image/wild.png Binary files differindex a8cc09e..a8cc09e 100755 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/wild.png +++ b/examples/lessons/6_English_oneOrMany/assets/image/wild.png diff --git a/examples/lessons/6_English_oneOrMany/css/lesson.css b/examples/lessons/6_English_oneOrMany/css/lesson.css new file mode 100755 index 0000000..240e51e --- /dev/null +++ b/examples/lessons/6_English_oneOrMany/css/lesson.css @@ -0,0 +1,280 @@ +@CHARSET "UTF-8";
+/****** Page Styles ****/
+
+/* Designed for 1200*900 px screen resolution */
+
+body {
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ font-size: 10pt;
+ margin: 0px;
+ background-color: #FFFFCC;
+}
+#header {
+ background-image: url(../assets/image/bg_header.png);
+ background-repeat: repeat-x;
+ height: 75px;
+ width: 100%;
+ position: absolute;
+ left: 0px;
+ top: 0px;
+}
+#topbtn_left {
+ float: left;
+ height: 60px;
+ width: 60px;
+ padding-top: 6px;
+ padding-left: 15px;
+}
+
+
+ .linkBack{
+ width: 60px; height: 59px;
+ background:url(../assets/image/btn_back.png);
+ }
+ .linkBack:hover{
+ background:url(../assets/image/btn_back_hover.png);
+ }
+
+#lesson_title {
+ float: left;
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ font-size: 16pt;
+ font-weight: bold;
+ color: #FFFFFF;
+ margin-left: 10px;
+ background-image: url(../assets/image/bg_title_block.png);
+}
+#topbtn_right {
+ float: right;
+ height: 60px;
+ width: 60px;
+ padding-top: 6px;
+ padding-right: 15px;
+}
+ #linkHelp{
+ width: 60px; height: 60px;
+ background:url(../assets/image/btn_help.png);
+ }
+ #linkHelp:hover{
+ background:url(../assets/image/btn_help_hover.png);
+ }
+ #linkOle{
+ width: 60px; height: 60px;
+ background:url(../assets/image/btn_ole.png);
+ }
+ #linkOle:hover{
+ background:url(../assets/image/btn_ole_hover.png);
+ }
+ .linkNext{var bindImgCss = {
+ 'float':'left',
+ 'width': '450px',
+ 'height':'40px',
+ 'margin-top':'0.25em',
+ 'text-align':'center',
+ 'padding-bottom':'0.3em'
+ };
+ width: 60px; height: 60px;
+ background:url(../assets/image/btn_next.png);
+ }
+ .linkNext:hover{
+ background:url(../assets/image/btn_next_hover.png);
+ }
+#footer {
+ position:relative;
+ background-image: url(../assets/image/bg_footer.png);
+ background-repeat: repeat-x;
+ height: 75px;
+ width: 100%;
+ left: 0px;
+ bottom: 0px;
+}
+#score_box {
+ float: left;
+ padding-left: 5px;
+ padding-top: 0.7em;
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ color: #FFFF00;
+ font-size: 16pt;
+ font-weight: bold;
+}
+#botbtn_right {
+ float: right;
+ height: 55px;
+ padding-right: 5px;
+ padding-top: 10px;
+}
+ #linkCheck{
+ width: 187px; height: 55px;
+ background-image: url(../assets/image/check.png);
+ }
+
+ #linkStart{
+ width: 251px; height: 55px;
+ background:url(../assets/image/btn_start.png);
+ }
+ #linkStart:hover{
+ background:url(../assets/image/btn_start_hover.png);
+ }
+ #linkStart:active{
+ background:url(../assets/image/btn_start_mouse_down.png);
+ }
+ #linkPlayAgain{
+ width: 251px; height: 55px;
+ background:url(../assets/image/btn_play_again.png);
+ }
+ #linkPlayAgain:hover{
+ background:url(../assets/image/btn_play_again_hover.png);
+ }
+ #linkPlayAgain:active{
+ background:url(../assets/image/btn_play_again_mouse_down.png);
+ }
+#linkNextLesson{
+ position:absolute;
+ bottom: 75px;
+ right: 10px;
+}
+#linkPrevLesson{
+ position:absolute;
+ bottom: 75px;
+ left: 10px;
+}
+/**** End of the page style ****/
+
+/**** Game Styles ****/
+
+a{
+ color:#FFFFCC;
+}
+#currentTitle{
+ width: 150px;
+ height: 80xp;
+ font:25px/30px "Courier New", Courier, monospace;
+ font-weight: bold;
+ color: red;
+}
+#content{
+ position:relative;
+ margin: 0 auto;
+ margin-top: 75px;
+ width: 1198px;
+ height: 560px;
+
+}
+ #tabs{
+ margin-left: 0.5em;
+ width: 650px;
+ height: 60px;
+ }
+ .tabBox{
+ float:left;
+ margin: 0.5em;
+ }
+ .tabSelected{
+ background-color: #00FF00;
+ }
+
+ #section{
+ width: 900px;
+ height: 300px;
+ margin: 5px auto;
+ }
+
+ #questionSection{
+ margin-top: 100px;
+ margin-left: 300px;
+ }
+ .questions{
+ margin-top: 5px;
+ margin-left: 20px;
+ height: 35px;
+ font: 30px/35px Verdana, Geneva, Arial, Helvetica, sans-serif;
+ color: #000000;
+ }
+ #answerSection{
+ margin-left: 50px;
+ margin-top: 10px;
+ width: 700px;
+ height: 70px;
+ }
+ #comma{
+ width: 36px;
+ height: 60px;
+ margin-left: 118px;
+ background-image: url(../assets/image/comma.png);
+ }
+ #dot{
+ position:absolute;
+ top: 36%;
+ right: 10%;
+ width: 36px;
+ height: 60px;
+ background-image: url(../assets/image/dot.png);
+ }
+ #dragAnswers{
+ padding: 10px;
+ margin-top: 40px;
+ margin-left: 0px;
+ width:700px;
+ height: 30px;
+ border: 2px solid #ABF549;
+ text-align:center;
+
+ }
+ #imgAnimals{
+ position:absolute;
+ left: 10%;
+ top: 30%;
+ width: 222px;
+ height: 300px;
+ background: url(../assets/image/backImage.png);
+ text-align:center;
+ }
+ .imgAnim{
+ margin-top: 100px;
+ }
+
+ .drophover{
+ background-color: #FF9900;
+ }
+ #checkAnswer{
+ position:absolute;
+ right: 1%;
+ bottom: 47%;
+ width: 100px;
+ height: 92px;
+ }
+
+ #help{
+ display:none;
+ position:absolute;
+ right: 60px;
+ top: 75px;;
+ width: 256px;
+ height: 600px;
+ background:url(../assets/image/help.png);
+ z-index:40;
+}
+
+#gameOver{
+ margin: 10px auto;
+ width: 500px;
+ text-align:center;
+ font: 30px/35px Verdana, Geneva, Arial, Helvetica, sans-serif;
+ font-weight:bold;
+ color:red;
+}
+#gameOverInfo{
+ margin-top: 35px;
+ text-align:center;
+ font: 20px/25px Helvetica, Geneva, Arial, Verdana, sans-serif;
+ font-weight:bold;
+ color:#06D946;
+
+}
+.specialText{
+ font: 20px/25px Helvetica, Geneva, Arial, Verdana, sans-serif;
+ font-weight:bold;
+ color:#FF9900;
+ border-bottom: 2px dotted #CCC;
+
+}
\ No newline at end of file diff --git a/examples/lessons/6_English_alphabeticalOrder/css/ui.scoreboard.css b/examples/lessons/6_English_oneOrMany/css/ui.scoreboard.css index 11cdbb5..11cdbb5 100755 --- a/examples/lessons/6_English_alphabeticalOrder/css/ui.scoreboard.css +++ b/examples/lessons/6_English_oneOrMany/css/ui.scoreboard.css diff --git a/examples/lessons/6_English_oneOrMany/index.html b/examples/lessons/6_English_oneOrMany/index.html new file mode 100755 index 0000000..7068eb2 --- /dev/null +++ b/examples/lessons/6_English_oneOrMany/index.html @@ -0,0 +1,49 @@ +<!DOCTYPE html>
+<head>
+ <title>Class 6 English One or Many</title>
+ <meta name="keywords" content="karma,javascript,html5,sugar,sugarlabs,gsoc,ole,nepal" />
+ <link type="text/css" rel="stylesheet" href="css/lesson.css" />
+ <link type="text/css" rel="stylesheet" href="css/ui.scoreboard.css" />
+ <link type="text/css" rel="stylesheet" href="css/demos.css" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <link type="image/ico" rel="icon" href="../../assets/default/image/favicon.ico" />
+ <script type="text/javascript" src="js/jquery-1.4.js"></script>
+ <script type="text/javascript" src="js/ui.core.js"></script>
+ <script type="text/javascript" src="js/ui.draggable.js"></script>
+ <script type="text/javascript" src="js/ui.droppable.js"></script>
+ <script type="text/javascript" src="js/karma.js"></script>
+ <script type="text/javascript" src="js/ui.scoreboard.js"></script>
+ <script type="text/javascript" src="js/lesson.js"></script>
+</head>
+<body>
+ <div id="header">
+ <div id="topbtn_left"><a href="#"><div id="linkBackLesson" class="linkBack"></div></a></div>
+ <div id="lesson_title">
+ <img src="assets/image/title_block_lt.png" width="33" height="75" align="absmiddle" />
+ English One or Many<span id="currentTitle"></span>
+ <img src="assets/image/title_block_rt.png" width="33" height="75" align="absmiddle" />
+ </div>
+ <div id="topbtn_right"><a href="#"><div id="linkHelp"></div></a></div>
+ <div id="topbtn_right"><a href="http://olenepal.org"><div id="linkOle"></div></a></div>
+ </div>
+
+ <div id="content">
+ <div id="tabs"></div>
+ <div id="section"></div>
+ <div id="checkAnswer"></div>
+ <div id="displayImgArea"></div>
+ <div id="gameOver"></div>
+ </div>
+ <div id="help"></div>
+ <form name="delayForm">
+ <input type="hidden" name="delayval" size="5">
+ </form>
+
+ <div id="footer">
+ <div id="score_box"></div>
+ <div id="botbtn_right"><a href="#"><div id="linkPlayAgain"></div></a></div>
+ <div id="botbtn_right"><a href="#"><div id="linkStart"></div></a></div>
+ <div id="botbtn_right"><a href="#"><div id="linkCheck"></div></a></div>
+ </div>
+</body>
+</html>
diff --git a/examples/lessons/6_English_VocabularyBirds/js/jquery-1.4.js b/examples/lessons/6_English_oneOrMany/js/jquery-1.4.js index a448490..a448490 100755 --- a/examples/lessons/6_English_VocabularyBirds/js/jquery-1.4.js +++ b/examples/lessons/6_English_oneOrMany/js/jquery-1.4.js diff --git a/examples/lessons/6_English_VocabularyBirds/js/karma.js b/examples/lessons/6_English_oneOrMany/js/karma.js index 03f027b..03f027b 100755 --- a/examples/lessons/6_English_VocabularyBirds/js/karma.js +++ b/examples/lessons/6_English_oneOrMany/js/karma.js diff --git a/examples/lessons/6_English_oneOrMany/js/lesson.js b/examples/lessons/6_English_oneOrMany/js/lesson.js new file mode 100755 index 0000000..b53f945 --- /dev/null +++ b/examples/lessons/6_English_oneOrMany/js/lesson.js @@ -0,0 +1,318 @@ +$(document).ready(function(){ + var k = Karma({ + audio: [{'name':'correct','file':'correct.ogg'}, + {'name':'incorrect','file':'incorrect.ogg'} + ]}); + + k.ready(function(){ + var i,j,flag; + var TOTAL_QUES = 8; + var TOTAL_LEVEL = 3; + var MAX_NUMBERS = 7; + var currentDragObject; + var randPositions = []; + var randImages = []; + var randOptions = []; + var totalCounter; + var correctCounter; + var currentQuestion; + var currentDragObject; + var arrangedAns = []; //store the answer arranged by players + var correctAns = []; //store the correct ans of the current question + var checked; + var sectionNum; //store the current tab num + var flag_checked; + var currentQues; //store the current Animal name + var currentAnimal; //store the current Animal Image name + var correctQuest; //store 1 if the question and image is same + + var animals = new Array('tiger','elephant','jackel','bear','rhino','monkey','turtle','snake', + 'aeroplane','ship','cart','bus','cycle','boat','tempo','truck', + 'desk','bench','brush','soap','kite','bag','book','ladder' + ); + var numbersWords = ['zero','one','two','three','four','five','six','seven','eight','nine','ten']; + var animalNumbers = [2,3,2,1,1,3,5,4, + 1,1,3,2,5,5,3,2, + 1,1,5,3,4,1,3,2 + ]; + var answersOpts = []; + var tabs = new Array('wild','transportation','objects'); + + var scoreboard = $('#score_box').scoreboard({'layout':'horizontal', + 'winningScore': 8}); + /*scoreboard.bind('winGame',function(){ //needs total score counter to be checked problem + $('#gameOver').show(); + $('#dot').hide(); + $('#questionSection').hide(); + $('#gameOver').append('Game Over !!!'); + $('#gameOver').append('<div id="gameOverInfo">You got <span class="specialText">'+correctCounter+ + '</span> correct out of <span class="specialText">'+totalCounter+'</span> questions .</div>'); + + }); + */ + + var genRandOpts=function (){ + randOptions[0] = k.rand(0,5); + for(i=1; i<6; i++){ + do{ + flag = 0; + randOptions[i] = k.rand(0,5); + for(j=0; j<i; j++){ + if(randOptions[i] === randOptions[j]){ + flag++; + } + } + }while(flag != 0 ); //end of do while loop + } + + }; + var genRandImages=function (){ + randImages[0] = k.rand(0,TOTAL_QUES-1); + for(i=1; i<TOTAL_QUES; i++){ + do{ + flag = 0; + randImages[i] = k.rand(0,TOTAL_QUES-1); + for(j=0; j<i; j++){ + if(randImages[i] === randImages[j]){ + flag++; + } + } + }while(flag != 0 ); //end of do while loop + } + }; + var genRandPosition=function (){ + randPositions[0] = k.rand(0,TOTAL_QUES-1); + for(i=1; i<TOTAL_QUES; i++){ + do{ + flag = 0; + randPositions[i] = k.rand(0,TOTAL_QUES-1); + for(j=0; j<i; j++){ + if(randPositions[i] === randPositions[j]){ + flag++; + } + } + }while(flag != 0 ); //end of do while loop + } + }; + var display_game_over = function(){ + $('#dot').hide(); + $('#gameOver').show(); + $('#questionSection').html('').append('<div id="gameOver"></div>'); + $('#gameOver').append('Game Over !!!'); + $('#gameOver').append('<div id="gameOverInfo">You got <span class="specialText">'+correctCounter+ + '</span> correct out of <span class="specialText">'+totalCounter+'</span> questions .</div>'); + + }; + var display_control = function(){ + if(checked === 1){ + next_questions(); + } + }; + var delay_correctShow = function(){ + document.delayForm.delayval.value = 1; + $('#checkAnswer').hide(); + display_control(); + } + + var check_answers = function(){ + $('#checkAnswer').show(); + var correct = 0; + var correctCheck = 0; + for(i = 0;i<3;i++){ + if(correctAns[i] === arrangedAns[i]){ + correctCheck++; + } + } + if(correctCheck === 3){ + if(flag_checked === 0){ + scoreboard.scoreboard('inc'); + correctCounter++; + } + k.audio.correct.play(); + $('#checkAnswer').html('<img src="assets/image/correct.png" />'); + checked = 1; + totalCounter++; + scoreboard.scoreboard('incTotal'); + } + else{ + k.audio.incorrect.play(); + $('#checkAnswer').html('<img src="assets/image/incorrect.png" />'); + checked = 0; + flag_checked = 1; + } + t=setTimeout(function(){delay_correctShow();},1000); + }; + + var assignTabs = function (tabId){ + $('#tabs').append('<div id="tabs'+tabId+'" class="tabBox"></div>'); + var tabImgCss = { + 'width': '179px', + 'height': '50px', + 'background-image': 'url("assets/image/'+tabs[tabId]+'.png")', + 'background-repeat': 'no-repeat' + }; + $('#tabs'+tabId).css(tabImgCss); + $('#tabs'+tabId).click(function(){ + for(j = 0; j<TOTAL_LEVEL; j++){ + if(tabId === j){ + $('#tabs'+j).addClass('tabSelected'); + } + else{ + $('#tabs'+j).removeClass('tabSelected'); + } + } + sectionNum = tabId; + game(); + }); + }; + + var assignAns = function (ansId){ + $('#answerSection').append('<div id="drop'+ansId+'" class="dropObjects"></div>'); + var dropObjCss = { + 'width':'125px','height': '30px','margin':'1.7em 0.5em 0.2em 0.5em' , + 'border-bottom': '2px solid black','float':'left' + }; + $('.dropObjects').css(dropObjCss); + }; + + var assignDragAns = function (optId){ + $('#dragAnswers').append('<div id="drag'+optId+'" class="dragObjects">'+answersOpts[optId]+'</div>'); + var dragObjCss = { + 'float': 'left','cursor': 'move', + 'height':'30px','padding': '0px 0.7em', + 'font':'25px/35px bold Arial,Verdana,Geneva,Helvetica' + }; + $('.dragObjects').css(dragObjCss); + }; + + var next_questions = function(){ + if(totalCounter === TOTAL_QUES){ + display_game_over(); + } + else{ + currentQuestion = totalCounter; + flag_checked = 0; + genRandOpts(); + for(i=0; i<3; i++){ + arrangedAns[i] = 0; + } + var randImage = randImages[currentQuestion]+(sectionNum*TOTAL_QUES); + currentAnimal = animals[randImage]; + var animalPlural; + if(currentAnimal == 'brush' || currentAnimal == 'bus'|| currentAnimal == 'bench' ){ + animalPlural = currentAnimal+'es'; + } + else{ + animalPlural = currentAnimal+'s'; + } + $('#questionSection').html(''); + $('#imgAnimals').html('<img class="imgAnim" src = "assets/image/'+currentAnimal+'.png" />'); + $('#questionSection').append('<div id="ques'+currentQuestion+'" class="questions"></div>'); + $('#ques'+currentQuestion).append(totalCounter+1+'.').append(' How many '); + $('#ques'+currentQuestion).append(animalPlural+' are there?'); + $('#questionSection').append('<div id="answerSection"></div>'); + $('#answerSection').append('<div id="dropThere"></div>'); + var dropObjCss = { + 'width':'125px','height': '20px','margin':'1.3em 0.5em 0.5em 0.5em' , + 'border-bottom': '2px solid black','float':'left','font':'25px/5px bold Arial,Verdana,Geneva,Helvetica', + 'text-align':'center' + }; + $('#dropThere').css(dropObjCss).append('There'); + for(i = 0; i<3 ;i++){ + assignAns(i); + } + $('#section').append('<div id="dot"></div>'); + $('#questionSection').append('<div id="dragAnswers"></div>'); + var randOption; + + // generate suitable options for the option section + answersOpts[0] = 'is'; + answersOpts[1] = 'are'; + answersOpts[2] = currentAnimal; + answersOpts[3] = animalPlural; + + answersOpts[4] = numbersWords[animalNumbers[randImage]]; + var secondNumber; + do{ + secondNumber = k.rand(0,MAX_NUMBERS); + }while(secondNumber == animalNumbers[randImage]); + answersOpts[5] = numbersWords[secondNumber]; + + //generate correct answer for the current Question + if(animalNumbers[randImage]>1){ + correctAns[0] = 'are'; + correctAns[2] = animalPlural; + }else{ + correctAns[0] = 'is'; + correctAns[2] = currentAnimal; + } + correctAns[1] = numbersWords[animalNumbers[randImage]]; + + + for(i = 0; i<6 ;i++){ + randOption = randOptions[i]; + assignDragAns(randOption); + } + drag_drop(); + } + + }; + + function game(){ + scoreboard.scoreboard('reset'); + $('#linkNext').hide(); + $('#gameOver').hide(); + correctCounter = 0; + totalCounter = 0; + genRandPosition(); + genRandImages(); + $('#section').html(''); + $('#tabs1').removeClass('tabSelected'); + $('#tabs2').removeClass('tabSelected'); + $('#tabs'+sectionNum).addClass('tabSelected'); + $('#section').append('<div id="imgAnimals"></div>'); + $('#section').append('<div id="questionSection"></div>'); + next_questions(); + } + for(i = 0; i< TOTAL_LEVEL; i++){ + assignTabs(i); + } + sectionNum = 0; + + $('#linkCheck').click(function(){ + check_answers(); + }); + $('#linkStart').click(function(){ + + sectionNum = 0; + game(); + }); + + $('#linkPlayAgain').click(function(){ + game(); + }); + + function drag_drop(){ + $('.dragObjects').draggable({ containment: '#content'}); + $('.dragObjects').bind('dragstart', function(event, ui) { + currentDragObject = event.target.id; + }); + + $(".dropObjects").droppable({ tolerence: 'intersect' ,hoverClass: 'drophover' }); + $('.dropObjects').bind('drop', function(event, ui) { + var currentDropObject = event.target.id; + var droppedWord = parseInt(currentDropObject.substring(4)); + arrangedAns[droppedWord] = $('#'+currentDragObject).text(); + }); + } + + $('#linkHelp').mouseover(function(){ + $('#help').slideDown(2000); + }) + .mouseout(function(){ + $('#help').slideUp(2000); + }); + + + }); //end of k.ready +}); //end of document.ready
\ No newline at end of file diff --git a/examples/lessons/6_English_VocabularyBirds/js/ui.core.js b/examples/lessons/6_English_oneOrMany/js/ui.core.js index 5493e0a..5493e0a 100755 --- a/examples/lessons/6_English_VocabularyBirds/js/ui.core.js +++ b/examples/lessons/6_English_oneOrMany/js/ui.core.js diff --git a/examples/lessons/6_English_VocabularyAnimals/js/ui.draggable.js b/examples/lessons/6_English_oneOrMany/js/ui.draggable.js index 0402f0e..0402f0e 100755 --- a/examples/lessons/6_English_VocabularyAnimals/js/ui.draggable.js +++ b/examples/lessons/6_English_oneOrMany/js/ui.draggable.js diff --git a/examples/lessons/6_English_VocabularyAnimals/js/ui.droppable.js b/examples/lessons/6_English_oneOrMany/js/ui.droppable.js index 8e7be33..8e7be33 100755 --- a/examples/lessons/6_English_VocabularyAnimals/js/ui.droppable.js +++ b/examples/lessons/6_English_oneOrMany/js/ui.droppable.js diff --git a/examples/lessons/6_English_alphabeticalOrder/js/ui.scoreboard.js b/examples/lessons/6_English_oneOrMany/js/ui.scoreboard.js index 53a930a..53a930a 100755 --- a/examples/lessons/6_English_alphabeticalOrder/js/ui.scoreboard.js +++ b/examples/lessons/6_English_oneOrMany/js/ui.scoreboard.js diff --git a/examples/lessons/6_English_syllables/assets/image/bgContainer.png b/examples/lessons/6_English_syllables/assets/image/bgContainer.png Binary files differdeleted file mode 100755 index a81304e..0000000 --- a/examples/lessons/6_English_syllables/assets/image/bgContainer.png +++ /dev/null diff --git a/examples/lessons/6_English_syllables/assets/image/computer_base.png b/examples/lessons/6_English_syllables/assets/image/computer_base.png Binary files differdeleted file mode 100755 index b18175d..0000000 --- a/examples/lessons/6_English_syllables/assets/image/computer_base.png +++ /dev/null diff --git a/examples/lessons/6_English_syllables/assets/image/computer_body.png b/examples/lessons/6_English_syllables/assets/image/computer_body.png Binary files differdeleted file mode 100755 index a083144..0000000 --- a/examples/lessons/6_English_syllables/assets/image/computer_body.png +++ /dev/null diff --git a/examples/lessons/6_English_syllables/assets/image/computer_top.png b/examples/lessons/6_English_syllables/assets/image/computer_top.png Binary files differdeleted file mode 100755 index 0ea98fa..0000000 --- a/examples/lessons/6_English_syllables/assets/image/computer_top.png +++ /dev/null diff --git a/examples/lessons/6_English_syllables/assets/image/help.png b/examples/lessons/6_English_syllables/assets/image/help.png Binary files differdeleted file mode 100755 index 4cde516..0000000 --- a/examples/lessons/6_English_syllables/assets/image/help.png +++ /dev/null diff --git a/examples/lessons/6_English_syllables/assets/image/player_base.png b/examples/lessons/6_English_syllables/assets/image/player_base.png Binary files differdeleted file mode 100755 index 4b25b30..0000000 --- a/examples/lessons/6_English_syllables/assets/image/player_base.png +++ /dev/null diff --git a/examples/lessons/6_English_syllables/assets/image/player_body.png b/examples/lessons/6_English_syllables/assets/image/player_body.png Binary files differdeleted file mode 100755 index e1d1bb7..0000000 --- a/examples/lessons/6_English_syllables/assets/image/player_body.png +++ /dev/null diff --git a/examples/lessons/6_English_syllables/assets/image/player_top.png b/examples/lessons/6_English_syllables/assets/image/player_top.png Binary files differdeleted file mode 100755 index 9d95c18..0000000 --- a/examples/lessons/6_English_syllables/assets/image/player_top.png +++ /dev/null diff --git a/examples/lessons/6_English_syllables/css/lesson.css b/examples/lessons/6_English_syllables/css/lesson.css deleted file mode 100755 index 94e9e24..0000000 --- a/examples/lessons/6_English_syllables/css/lesson.css +++ /dev/null @@ -1,295 +0,0 @@ -@CHARSET "UTF-8";
-/****** Page Styles ****/
-
-/* Designed for 1200*900 px screen resolution */
-
-body {
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 10pt;
- margin: 0px;
- background-color: #FFFFCC;
-}
-#header {
- background-image: url(../assets/image/bg_header.png);
- background-repeat: repeat-x;
- height: 75px;
- width: 100%;
- position: absolute;
- left: 0px;
- top: 0px;
-}
-#topbtn_left {
- float: left;
- height: 60px;
- width: 60px;
- padding-top: 6px;
- padding-left: 15px;
-}
-
-
- .linkBack{
- width: 60px; height: 59px;
- background:url(../assets/image/btn_back.png);
- }
- .linkBack:hover{
- background:url(../assets/image/btn_back_hover.png);
- }
-
-#lesson_title {
- float: left;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 16pt;
- font-weight: bold;
- color: #FFFFFF;
- margin-left: 10px;
- background-image: url(../assets/image/bg_title_block.png);
-}
-#topbtn_right {
- float: right;
- height: 60px;
- width: 60px;
- padding-top: 6px;
- padding-right: 15px;
-}
- #linkHelp{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_help.png);
- }
- #linkHelp:hover{
- background:url(../assets/image/btn_help_hover.png);
- }
- #linkOle{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_ole.png);
- }
- #linkOle:hover{
- background:url(../assets/image/btn_ole_hover.png);
- }
- .linkNext{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_next.png);
- }
- .linkNext:hover{
- background:url(../assets/image/btn_next_hover.png);
- }
-#footer {
- position:relative;
- background-image: url(../assets/image/bg_footer.png);
- background-repeat: repeat-x;
- height: 75px;
- width: 100%;
- left: 0px;
- bottom: 0px;
-}
-#score_box {
- float: left;
- padding-left: 5px;
- padding-top: 10px;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- color: #FFFF00;
- font-size: 16pt;
- font-weight: bold;
-}
-#botbtn_right {
- float: right;
- height: 55px;
- padding-right: 5px;
- padding-top: 10px;
-}
- #linkCheck{
- margin: 1em 3em 0 0;
- width: 101px; height: 30px;
- background-image: url(../assets/image/check.png);
- }
-
- #linkStart{
- width: 251px; height: 55px;
- background:url(../assets/image/btn_start.png);
- }
- #linkStart:hover{
- background:url(../assets/image/btn_start_hover.png);
- }
- #linkStart:active{
- background:url(../assets/image/btn_start_mouse_down.png);
- }
- #linkPlayAgain{
- width: 251px; height: 55px;
- background:url(../assets/image/btn_play_again.png);
- }
- #linkPlayAgain:hover{
- background:url(../assets/image/btn_play_again_hover.png);
- }
- #linkPlayAgain:active{
- background:url(../assets/image/btn_play_again_mouse_down.png);
- }
-#linkNextExercise{
- position:absolute;
- bottom: 75px;
- right: 10px;
-}
-#linkPrevExercise{
- position:absolute;
- bottom: 75px;
- left: 10px;
-}
-/**** End of the page style ****/
-
-/**** Game Styles ****/
-
-a{
- color:#FFFFCC;
-}
-#currentTitle{
- width: 150px;
- height: 80xp;
- font:25px/30px "Courier New", Courier, monospace;
- font-weight: bold;
- color: red;
-}
-#content{
- margin: 0 auto;
- margin-top: 75px;
- width: 1180px;
- height: 550px;
- padding: 0.5em;
-}
- #left-side{
- position:relative;
- margin: 40px auto;
- margin-bottom:0;
- padding-top:50px;
- float:left;
- width: 170px;
- height: 450px;
- border: 4px solid #000;
- }
- #leftText{
- position:absolute;
- top: -30px;
- left: 0px;
- text-align:center;
- height: 40px;
- font : 20px/25px Verdana,Helvetica,Arial Black, Times New Roman;
- color: #FF0000;
- }
- .default{
- float:left;
- margin: 0px auto;
- text-align:center;
- width: 170px;
- height: 44px;
- }
- #right-side{
- position:relative;
- margin: 40px auto;
- margin-bottom:0;
- padding-top: 50px;
- float:right;
- width: 170px;
- height: 450px;
- border: 4px solid #000;
- }
- #rightText{
- position:absolute;
- top: -30px;
- left: 10px;
- text-align:center;
- height: 40px;
- font : 20px/25px Verdana,Helvetica,Arial Black, Times New Roman;
- color: #FF0000;
- }
- #main-content{
- margin-top: 10px;
- float:left;
- margin-left: 90px;
- width: 650px;
- height: 525px;
- }
- #topText{
- text-align:center;
- height: 40px;
- font : 20px/25px Verdana,Helvetica,Arial Black, Times New Roman;
- }
- #container{
- position:relative;
- margin: 5px auto;
- width : 598px;
- height: 390px;
- border: 4px solid #000;
- background:url(../assets/image/bgContainer.png);
- }
- #joinSyllable{
- margin: 10px auto;
- width : 525px;
- height: 60px;
- border: 4px solid #000;
- }
- .sign{
- float:left;
- width: 20px;
- height: 30px;
- padding: 5px;
- text-align:center;
- font : 30px/35px Verdana,Helvetica,Arial Black, Times New Roman;
- }
- .drophover{
- background-color: #FF9900;
- }
-
- .correctWord{
- border:none
- color: #FF00FF;
- }
-
-
-
- #help{
- display:none;
- position:absolute;
- right: 60px;
- top: 75px;;
- width: 256px;
- height: 600px;
- background:url(../assets/image/help.png);
- z-index:40;
- }
- .backOpaque{
- background-color: #A4A4A4;
- opacity: 0.2;
- }
- #timerBar {
- float: left;
- margin-left:50px;
- width: 200px;
- height:35px;
- padding-left: 10px;
- padding-top: 7px;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- color: #FFFF00;
- font-size: 16pt;
- font-weight: bold;
- }
-
- .timerBoxes{ /* Show the timer running after the game has began.... */
- float:left;
- margin: 0.5em 0 0 0.1em;
- width: 50px;
- height: 30px;
- border: 2px dotted green;
- padding: 3px;
- color: blue;
- text-align:center;
- font : bold 25px Arial Black, Times New Roman;
- background: #ACC;
- }
-
- #gameOver{
- opacity: 1;
- display:none;
- position:absolute;
- top:5%;
- left: 40%;
- color: blue;
- text-align:center;
- font : bold 25px/35px Arial Black, Times New Roman;
-}
diff --git a/examples/lessons/6_English_syllables/index.html b/examples/lessons/6_English_syllables/index.html deleted file mode 100755 index 74d1095..0000000 --- a/examples/lessons/6_English_syllables/index.html +++ /dev/null @@ -1,44 +0,0 @@ -<!DOCTYPE html>
-<head>
- <title>Class 6 English Syllabus</title>
- <meta name="keywords" content="karma,javascript,html5,sugar,sugarlabs,gsoc,ole,nepal" />
- <link type="text/css" rel="stylesheet" href="css/lesson.css" />
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <link type="image/ico" rel="icon" href="../../assets/default/image/favicon.ico" />
- <script type="text/javascript" src="js/jquery-1.3.2.min.js"></script>
- <script type="text/javascript" src="js/karma.js"></script>
- <script type="text/javascript" src="js/lesson.js"></script>
-</head>
-<body>
- <div id="header">
- <div id="topbtn_left"><a href="#"><div id="linkBackLesson" class="linkBack"></div></a></div>
- <div id="lesson_title">
- <img src="assets/image/title_block_lt.png" width="33" height="75" align="absmiddle" />
- English Syllabus<span id="currentTitle"></span>
- <img src="assets/image/title_block_rt.png" width="33" height="75" align="absmiddle" />
- </div>
- <div id="topbtn_right"><a href="#"><div id="linkHelp"></div></a></div>
- <div id="topbtn_right"><a href="http://olenepal.org"><div id="linkOle"></div></a></div>
- </div>
-
- <div id="content"></div>
- <div id="help"></div>
- <div id="gameOver">Game Over!!!</div>
- <form name="delayForm">
- <input type="hidden" name="delayval" size="5">
- </form>
-
- <div id="footer">
- <a href="#"><div id="linkNextExercise" class ="linkNext"></div></a>
- <a href="#"><div id="linkPrevExercise" class ="linkBack"></div></a>
- <!-- Timer Section -->
- <div id ="timerBar">
- <div id="timerBox3" class="timerBoxes">00</div>
- <div id="timerBox2" class="timerBoxes">00</div>
- <div id="timerBox1" class="timerBoxes">00</div>
- </div>
- <div id="botbtn_right"><a href="#"><div id="linkPlayAgain"></div></a></div>
- <div id="botbtn_right"><a href="#"><div id="linkStart"></div></a></div>
- </div>
-</body>
-</html>
diff --git a/examples/lessons/6_English_syllables/js/jquery-1.3.2.min.js b/examples/lessons/6_English_syllables/js/jquery-1.3.2.min.js deleted file mode 100755 index b1ae21d..0000000 --- a/examples/lessons/6_English_syllables/js/jquery-1.3.2.min.js +++ /dev/null @@ -1,19 +0,0 @@ -/* - * jQuery JavaScript Library v1.3.2 - * http://jquery.com/ - * - * Copyright (c) 2009 John Resig - * Dual licensed under the MIT and GPL licenses. - * http://docs.jquery.com/License - * - * Date: 2009-02-19 17:34:21 -0500 (Thu, 19 Feb 2009) - * Revision: 6246 - */ -(function(){var l=this,g,y=l.jQuery,p=l.$,o=l.jQuery=l.$=function(E,F){return new o.fn.init(E,F)},D=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,f=/^.[^:#\[\.,]*$/;o.fn=o.prototype={init:function(E,H){E=E||document;if(E.nodeType){this[0]=E;this.length=1;this.context=E;return this}if(typeof E==="string"){var G=D.exec(E);if(G&&(G[1]||!H)){if(G[1]){E=o.clean([G[1]],H)}else{var I=document.getElementById(G[3]);if(I&&I.id!=G[3]){return o().find(E)}var F=o(I||[]);F.context=document;F.selector=E;return F}}else{return o(H).find(E)}}else{if(o.isFunction(E)){return o(document).ready(E)}}if(E.selector&&E.context){this.selector=E.selector;this.context=E.context}return this.setArray(o.isArray(E)?E:o.makeArray(E))},selector:"",jquery:"1.3.2",size:function(){return this.length},get:function(E){return E===g?Array.prototype.slice.call(this):this[E]},pushStack:function(F,H,E){var G=o(F);G.prevObject=this;G.context=this.context;if(H==="find"){G.selector=this.selector+(this.selector?" ":"")+E}else{if(H){G.selector=this.selector+"."+H+"("+E+")"}}return G},setArray:function(E){this.length=0;Array.prototype.push.apply(this,E);return this},each:function(F,E){return o.each(this,F,E)},index:function(E){return o.inArray(E&&E.jquery?E[0]:E,this)},attr:function(F,H,G){var E=F;if(typeof F==="string"){if(H===g){return this[0]&&o[G||"attr"](this[0],F)}else{E={};E[F]=H}}return this.each(function(I){for(F in E){o.attr(G?this.style:this,F,o.prop(this,E[F],G,I,F))}})},css:function(E,F){if((E=="width"||E=="height")&&parseFloat(F)<0){F=g}return this.attr(E,F,"curCSS")},text:function(F){if(typeof F!=="object"&&F!=null){return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(F))}var E="";o.each(F||this,function(){o.each(this.childNodes,function(){if(this.nodeType!=8){E+=this.nodeType!=1?this.nodeValue:o.fn.text([this])}})});return E},wrapAll:function(E){if(this[0]){var F=o(E,this[0].ownerDocument).clone();if(this[0].parentNode){F.insertBefore(this[0])}F.map(function(){var G=this;while(G.firstChild){G=G.firstChild}return G}).append(this)}return this},wrapInner:function(E){return this.each(function(){o(this).contents().wrapAll(E)})},wrap:function(E){return this.each(function(){o(this).wrapAll(E)})},append:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.appendChild(E)}})},prepend:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.insertBefore(E,this.firstChild)}})},before:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this)})},after:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this.nextSibling)})},end:function(){return this.prevObject||o([])},push:[].push,sort:[].sort,splice:[].splice,find:function(E){if(this.length===1){var F=this.pushStack([],"find",E);F.length=0;o.find(E,this[0],F);return F}else{return this.pushStack(o.unique(o.map(this,function(G){return o.find(E,G)})),"find",E)}},clone:function(G){var E=this.map(function(){if(!o.support.noCloneEvent&&!o.isXMLDoc(this)){var I=this.outerHTML;if(!I){var J=this.ownerDocument.createElement("div");J.appendChild(this.cloneNode(true));I=J.innerHTML}return o.clean([I.replace(/ jQuery\d+="(?:\d+|null)"/g,"").replace(/^\s*/,"")])[0]}else{return this.cloneNode(true)}});if(G===true){var H=this.find("*").andSelf(),F=0;E.find("*").andSelf().each(function(){if(this.nodeName!==H[F].nodeName){return}var I=o.data(H[F],"events");for(var K in I){for(var J in I[K]){o.event.add(this,K,I[K][J],I[K][J].data)}}F++})}return E},filter:function(E){return this.pushStack(o.isFunction(E)&&o.grep(this,function(G,F){return E.call(G,F)})||o.multiFilter(E,o.grep(this,function(F){return F.nodeType===1})),"filter",E)},closest:function(E){var G=o.expr.match.POS.test(E)?o(E):null,F=0;return this.map(function(){var H=this;while(H&&H.ownerDocument){if(G?G.index(H)>-1:o(H).is(E)){o.data(H,"closest",F);return H}H=H.parentNode;F++}})},not:function(E){if(typeof E==="string"){if(f.test(E)){return this.pushStack(o.multiFilter(E,this,true),"not",E)}else{E=o.multiFilter(E,this)}}var F=E.length&&E[E.length-1]!==g&&!E.nodeType;return this.filter(function(){return F?o.inArray(this,E)<0:this!=E})},add:function(E){return this.pushStack(o.unique(o.merge(this.get(),typeof E==="string"?o(E):o.makeArray(E))))},is:function(E){return !!E&&o.multiFilter(E,this).length>0},hasClass:function(E){return !!E&&this.is("."+E)},val:function(K){if(K===g){var E=this[0];if(E){if(o.nodeName(E,"option")){return(E.attributes.value||{}).specified?E.value:E.text}if(o.nodeName(E,"select")){var I=E.selectedIndex,L=[],M=E.options,H=E.type=="select-one";if(I<0){return null}for(var F=H?I:0,J=H?I+1:M.length;F<J;F++){var G=M[F];if(G.selected){K=o(G).val();if(H){return K}L.push(K)}}return L}return(E.value||"").replace(/\r/g,"")}return g}if(typeof K==="number"){K+=""}return this.each(function(){if(this.nodeType!=1){return}if(o.isArray(K)&&/radio|checkbox/.test(this.type)){this.checked=(o.inArray(this.value,K)>=0||o.inArray(this.name,K)>=0)}else{if(o.nodeName(this,"select")){var N=o.makeArray(K);o("option",this).each(function(){this.selected=(o.inArray(this.value,N)>=0||o.inArray(this.text,N)>=0)});if(!N.length){this.selectedIndex=-1}}else{this.value=K}}})},html:function(E){return E===g?(this[0]?this[0].innerHTML.replace(/ jQuery\d+="(?:\d+|null)"/g,""):null):this.empty().append(E)},replaceWith:function(E){return this.after(E).remove()},eq:function(E){return this.slice(E,+E+1)},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","))},map:function(E){return this.pushStack(o.map(this,function(G,F){return E.call(G,F,G)}))},andSelf:function(){return this.add(this.prevObject)},domManip:function(J,M,L){if(this[0]){var I=(this[0].ownerDocument||this[0]).createDocumentFragment(),F=o.clean(J,(this[0].ownerDocument||this[0]),I),H=I.firstChild;if(H){for(var G=0,E=this.length;G<E;G++){L.call(K(this[G],H),this.length>1||G>0?I.cloneNode(true):I)}}if(F){o.each(F,z)}}return this;function K(N,O){return M&&o.nodeName(N,"table")&&o.nodeName(O,"tr")?(N.getElementsByTagName("tbody")[0]||N.appendChild(N.ownerDocument.createElement("tbody"))):N}}};o.fn.init.prototype=o.fn;function z(E,F){if(F.src){o.ajax({url:F.src,async:false,dataType:"script"})}else{o.globalEval(F.text||F.textContent||F.innerHTML||"")}if(F.parentNode){F.parentNode.removeChild(F)}}function e(){return +new Date}o.extend=o.fn.extend=function(){var J=arguments[0]||{},H=1,I=arguments.length,E=false,G;if(typeof J==="boolean"){E=J;J=arguments[1]||{};H=2}if(typeof J!=="object"&&!o.isFunction(J)){J={}}if(I==H){J=this;--H}for(;H<I;H++){if((G=arguments[H])!=null){for(var F in G){var K=J[F],L=G[F];if(J===L){continue}if(E&&L&&typeof L==="object"&&!L.nodeType){J[F]=o.extend(E,K||(L.length!=null?[]:{}),L)}else{if(L!==g){J[F]=L}}}}}return J};var b=/z-?index|font-?weight|opacity|zoom|line-?height/i,q=document.defaultView||{},s=Object.prototype.toString;o.extend({noConflict:function(E){l.$=p;if(E){l.jQuery=y}return o},isFunction:function(E){return s.call(E)==="[object Function]"},isArray:function(E){return s.call(E)==="[object Array]"},isXMLDoc:function(E){return E.nodeType===9&&E.documentElement.nodeName!=="HTML"||!!E.ownerDocument&&o.isXMLDoc(E.ownerDocument)},globalEval:function(G){if(G&&/\S/.test(G)){var F=document.getElementsByTagName("head")[0]||document.documentElement,E=document.createElement("script");E.type="text/javascript";if(o.support.scriptEval){E.appendChild(document.createTextNode(G))}else{E.text=G}F.insertBefore(E,F.firstChild);F.removeChild(E)}},nodeName:function(F,E){return F.nodeName&&F.nodeName.toUpperCase()==E.toUpperCase()},each:function(G,K,F){var E,H=0,I=G.length;if(F){if(I===g){for(E in G){if(K.apply(G[E],F)===false){break}}}else{for(;H<I;){if(K.apply(G[H++],F)===false){break}}}}else{if(I===g){for(E in G){if(K.call(G[E],E,G[E])===false){break}}}else{for(var J=G[0];H<I&&K.call(J,H,J)!==false;J=G[++H]){}}}return G},prop:function(H,I,G,F,E){if(o.isFunction(I)){I=I.call(H,F)}return typeof I==="number"&&G=="curCSS"&&!b.test(E)?I+"px":I},className:{add:function(E,F){o.each((F||"").split(/\s+/),function(G,H){if(E.nodeType==1&&!o.className.has(E.className,H)){E.className+=(E.className?" ":"")+H}})},remove:function(E,F){if(E.nodeType==1){E.className=F!==g?o.grep(E.className.split(/\s+/),function(G){return !o.className.has(F,G)}).join(" "):""}},has:function(F,E){return F&&o.inArray(E,(F.className||F).toString().split(/\s+/))>-1}},swap:function(H,G,I){var E={};for(var F in G){E[F]=H.style[F];H.style[F]=G[F]}I.call(H);for(var F in G){H.style[F]=E[F]}},css:function(H,F,J,E){if(F=="width"||F=="height"){var L,G={position:"absolute",visibility:"hidden",display:"block"},K=F=="width"?["Left","Right"]:["Top","Bottom"];function I(){L=F=="width"?H.offsetWidth:H.offsetHeight;if(E==="border"){return}o.each(K,function(){if(!E){L-=parseFloat(o.curCSS(H,"padding"+this,true))||0}if(E==="margin"){L+=parseFloat(o.curCSS(H,"margin"+this,true))||0}else{L-=parseFloat(o.curCSS(H,"border"+this+"Width",true))||0}})}if(H.offsetWidth!==0){I()}else{o.swap(H,G,I)}return Math.max(0,Math.round(L))}return o.curCSS(H,F,J)},curCSS:function(I,F,G){var L,E=I.style;if(F=="opacity"&&!o.support.opacity){L=o.attr(E,"opacity");return L==""?"1":L}if(F.match(/float/i)){F=w}if(!G&&E&&E[F]){L=E[F]}else{if(q.getComputedStyle){if(F.match(/float/i)){F="float"}F=F.replace(/([A-Z])/g,"-$1").toLowerCase();var M=q.getComputedStyle(I,null);if(M){L=M.getPropertyValue(F)}if(F=="opacity"&&L==""){L="1"}}else{if(I.currentStyle){var J=F.replace(/\-(\w)/g,function(N,O){return O.toUpperCase()});L=I.currentStyle[F]||I.currentStyle[J];if(!/^\d+(px)?$/i.test(L)&&/^\d/.test(L)){var H=E.left,K=I.runtimeStyle.left;I.runtimeStyle.left=I.currentStyle.left;E.left=L||0;L=E.pixelLeft+"px";E.left=H;I.runtimeStyle.left=K}}}}return L},clean:function(F,K,I){K=K||document;if(typeof K.createElement==="undefined"){K=K.ownerDocument||K[0]&&K[0].ownerDocument||document}if(!I&&F.length===1&&typeof F[0]==="string"){var H=/^<(\w+)\s*\/?>$/.exec(F[0]);if(H){return[K.createElement(H[1])]}}var G=[],E=[],L=K.createElement("div");o.each(F,function(P,S){if(typeof S==="number"){S+=""}if(!S){return}if(typeof S==="string"){S=S.replace(/(<(\w+)[^>]*?)\/>/g,function(U,V,T){return T.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?U:V+"></"+T+">"});var O=S.replace(/^\s+/,"").substring(0,10).toLowerCase();var Q=!O.indexOf("<opt")&&[1,"<select multiple='multiple'>","</select>"]||!O.indexOf("<leg")&&[1,"<fieldset>","</fieldset>"]||O.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"<table>","</table>"]||!O.indexOf("<tr")&&[2,"<table><tbody>","</tbody></table>"]||(!O.indexOf("<td")||!O.indexOf("<th"))&&[3,"<table><tbody><tr>","</tr></tbody></table>"]||!O.indexOf("<col")&&[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"]||!o.support.htmlSerialize&&[1,"div<div>","</div>"]||[0,"",""];L.innerHTML=Q[1]+S+Q[2];while(Q[0]--){L=L.lastChild}if(!o.support.tbody){var R=/<tbody/i.test(S),N=!O.indexOf("<table")&&!R?L.firstChild&&L.firstChild.childNodes:Q[1]=="<table>"&&!R?L.childNodes:[];for(var M=N.length-1;M>=0;--M){if(o.nodeName(N[M],"tbody")&&!N[M].childNodes.length){N[M].parentNode.removeChild(N[M])}}}if(!o.support.leadingWhitespace&&/^\s/.test(S)){L.insertBefore(K.createTextNode(S.match(/^\s*/)[0]),L.firstChild)}S=o.makeArray(L.childNodes)}if(S.nodeType){G.push(S)}else{G=o.merge(G,S)}});if(I){for(var J=0;G[J];J++){if(o.nodeName(G[J],"script")&&(!G[J].type||G[J].type.toLowerCase()==="text/javascript")){E.push(G[J].parentNode?G[J].parentNode.removeChild(G[J]):G[J])}else{if(G[J].nodeType===1){G.splice.apply(G,[J+1,0].concat(o.makeArray(G[J].getElementsByTagName("script"))))}I.appendChild(G[J])}}return E}return G},attr:function(J,G,K){if(!J||J.nodeType==3||J.nodeType==8){return g}var H=!o.isXMLDoc(J),L=K!==g;G=H&&o.props[G]||G;if(J.tagName){var F=/href|src|style/.test(G);if(G=="selected"&&J.parentNode){J.parentNode.selectedIndex}if(G in J&&H&&!F){if(L){if(G=="type"&&o.nodeName(J,"input")&&J.parentNode){throw"type property can't be changed"}J[G]=K}if(o.nodeName(J,"form")&&J.getAttributeNode(G)){return J.getAttributeNode(G).nodeValue}if(G=="tabIndex"){var I=J.getAttributeNode("tabIndex");return I&&I.specified?I.value:J.nodeName.match(/(button|input|object|select|textarea)/i)?0:J.nodeName.match(/^(a|area)$/i)&&J.href?0:g}return J[G]}if(!o.support.style&&H&&G=="style"){return o.attr(J.style,"cssText",K)}if(L){J.setAttribute(G,""+K)}var E=!o.support.hrefNormalized&&H&&F?J.getAttribute(G,2):J.getAttribute(G);return E===null?g:E}if(!o.support.opacity&&G=="opacity"){if(L){J.zoom=1;J.filter=(J.filter||"").replace(/alpha\([^)]*\)/,"")+(parseInt(K)+""=="NaN"?"":"alpha(opacity="+K*100+")")}return J.filter&&J.filter.indexOf("opacity=")>=0?(parseFloat(J.filter.match(/opacity=([^)]*)/)[1])/100)+"":""}G=G.replace(/-([a-z])/ig,function(M,N){return N.toUpperCase()});if(L){J[G]=K}return J[G]},trim:function(E){return(E||"").replace(/^\s+|\s+$/g,"")},makeArray:function(G){var E=[];if(G!=null){var F=G.length;if(F==null||typeof G==="string"||o.isFunction(G)||G.setInterval){E[0]=G}else{while(F){E[--F]=G[F]}}}return E},inArray:function(G,H){for(var E=0,F=H.length;E<F;E++){if(H[E]===G){return E}}return -1},merge:function(H,E){var F=0,G,I=H.length;if(!o.support.getAll){while((G=E[F++])!=null){if(G.nodeType!=8){H[I++]=G}}}else{while((G=E[F++])!=null){H[I++]=G}}return H},unique:function(K){var F=[],E={};try{for(var G=0,H=K.length;G<H;G++){var J=o.data(K[G]);if(!E[J]){E[J]=true;F.push(K[G])}}}catch(I){F=K}return F},grep:function(F,J,E){var G=[];for(var H=0,I=F.length;H<I;H++){if(!E!=!J(F[H],H)){G.push(F[H])}}return G},map:function(E,J){var F=[];for(var G=0,H=E.length;G<H;G++){var I=J(E[G],G);if(I!=null){F[F.length]=I}}return F.concat.apply([],F)}});var C=navigator.userAgent.toLowerCase();o.browser={version:(C.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)||[0,"0"])[1],safari:/webkit/.test(C),opera:/opera/.test(C),msie:/msie/.test(C)&&!/opera/.test(C),mozilla:/mozilla/.test(C)&&!/(compatible|webkit)/.test(C)};o.each({parent:function(E){return E.parentNode},parents:function(E){return o.dir(E,"parentNode")},next:function(E){return o.nth(E,2,"nextSibling")},prev:function(E){return o.nth(E,2,"previousSibling")},nextAll:function(E){return o.dir(E,"nextSibling")},prevAll:function(E){return o.dir(E,"previousSibling")},siblings:function(E){return o.sibling(E.parentNode.firstChild,E)},children:function(E){return o.sibling(E.firstChild)},contents:function(E){return o.nodeName(E,"iframe")?E.contentDocument||E.contentWindow.document:o.makeArray(E.childNodes)}},function(E,F){o.fn[E]=function(G){var H=o.map(this,F);if(G&&typeof G=="string"){H=o.multiFilter(G,H)}return this.pushStack(o.unique(H),E,G)}});o.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(E,F){o.fn[E]=function(G){var J=[],L=o(G);for(var K=0,H=L.length;K<H;K++){var I=(K>0?this.clone(true):this).get();o.fn[F].apply(o(L[K]),I);J=J.concat(I)}return this.pushStack(J,E,G)}});o.each({removeAttr:function(E){o.attr(this,E,"");if(this.nodeType==1){this.removeAttribute(E)}},addClass:function(E){o.className.add(this,E)},removeClass:function(E){o.className.remove(this,E)},toggleClass:function(F,E){if(typeof E!=="boolean"){E=!o.className.has(this,F)}o.className[E?"add":"remove"](this,F)},remove:function(E){if(!E||o.filter(E,[this]).length){o("*",this).add([this]).each(function(){o.event.remove(this);o.removeData(this)});if(this.parentNode){this.parentNode.removeChild(this)}}},empty:function(){o(this).children().remove();while(this.firstChild){this.removeChild(this.firstChild)}}},function(E,F){o.fn[E]=function(){return this.each(F,arguments)}});function j(E,F){return E[0]&&parseInt(o.curCSS(E[0],F,true),10)||0}var h="jQuery"+e(),v=0,A={};o.extend({cache:{},data:function(F,E,G){F=F==l?A:F;var H=F[h];if(!H){H=F[h]=++v}if(E&&!o.cache[H]){o.cache[H]={}}if(G!==g){o.cache[H][E]=G}return E?o.cache[H][E]:H},removeData:function(F,E){F=F==l?A:F;var H=F[h];if(E){if(o.cache[H]){delete o.cache[H][E];E="";for(E in o.cache[H]){break}if(!E){o.removeData(F)}}}else{try{delete F[h]}catch(G){if(F.removeAttribute){F.removeAttribute(h)}}delete o.cache[H]}},queue:function(F,E,H){if(F){E=(E||"fx")+"queue";var G=o.data(F,E);if(!G||o.isArray(H)){G=o.data(F,E,o.makeArray(H))}else{if(H){G.push(H)}}}return G},dequeue:function(H,G){var E=o.queue(H,G),F=E.shift();if(!G||G==="fx"){F=E[0]}if(F!==g){F.call(H)}}});o.fn.extend({data:function(E,G){var H=E.split(".");H[1]=H[1]?"."+H[1]:"";if(G===g){var F=this.triggerHandler("getData"+H[1]+"!",[H[0]]);if(F===g&&this.length){F=o.data(this[0],E)}return F===g&&H[1]?this.data(H[0]):F}else{return this.trigger("setData"+H[1]+"!",[H[0],G]).each(function(){o.data(this,E,G)})}},removeData:function(E){return this.each(function(){o.removeData(this,E)})},queue:function(E,F){if(typeof E!=="string"){F=E;E="fx"}if(F===g){return o.queue(this[0],E)}return this.each(function(){var G=o.queue(this,E,F);if(E=="fx"&&G.length==1){G[0].call(this)}})},dequeue:function(E){return this.each(function(){o.dequeue(this,E)})}}); -/* - * Sizzle CSS Selector Engine - v0.9.3 - * Copyright 2009, The Dojo Foundation - * Released under the MIT, BSD, and GPL Licenses. - * More information: http://sizzlejs.com/ - */ -(function(){var R=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?/g,L=0,H=Object.prototype.toString;var F=function(Y,U,ab,ac){ab=ab||[];U=U||document;if(U.nodeType!==1&&U.nodeType!==9){return[]}if(!Y||typeof Y!=="string"){return ab}var Z=[],W,af,ai,T,ad,V,X=true;R.lastIndex=0;while((W=R.exec(Y))!==null){Z.push(W[1]);if(W[2]){V=RegExp.rightContext;break}}if(Z.length>1&&M.exec(Y)){if(Z.length===2&&I.relative[Z[0]]){af=J(Z[0]+Z[1],U)}else{af=I.relative[Z[0]]?[U]:F(Z.shift(),U);while(Z.length){Y=Z.shift();if(I.relative[Y]){Y+=Z.shift()}af=J(Y,af)}}}else{var ae=ac?{expr:Z.pop(),set:E(ac)}:F.find(Z.pop(),Z.length===1&&U.parentNode?U.parentNode:U,Q(U));af=F.filter(ae.expr,ae.set);if(Z.length>0){ai=E(af)}else{X=false}while(Z.length){var ah=Z.pop(),ag=ah;if(!I.relative[ah]){ah=""}else{ag=Z.pop()}if(ag==null){ag=U}I.relative[ah](ai,ag,Q(U))}}if(!ai){ai=af}if(!ai){throw"Syntax error, unrecognized expression: "+(ah||Y)}if(H.call(ai)==="[object Array]"){if(!X){ab.push.apply(ab,ai)}else{if(U.nodeType===1){for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&(ai[aa]===true||ai[aa].nodeType===1&&K(U,ai[aa]))){ab.push(af[aa])}}}else{for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&ai[aa].nodeType===1){ab.push(af[aa])}}}}}else{E(ai,ab)}if(V){F(V,U,ab,ac);if(G){hasDuplicate=false;ab.sort(G);if(hasDuplicate){for(var aa=1;aa<ab.length;aa++){if(ab[aa]===ab[aa-1]){ab.splice(aa--,1)}}}}}return ab};F.matches=function(T,U){return F(T,null,null,U)};F.find=function(aa,T,ab){var Z,X;if(!aa){return[]}for(var W=0,V=I.order.length;W<V;W++){var Y=I.order[W],X;if((X=I.match[Y].exec(aa))){var U=RegExp.leftContext;if(U.substr(U.length-1)!=="\\"){X[1]=(X[1]||"").replace(/\\/g,"");Z=I.find[Y](X,T,ab);if(Z!=null){aa=aa.replace(I.match[Y],"");break}}}}if(!Z){Z=T.getElementsByTagName("*")}return{set:Z,expr:aa}};F.filter=function(ad,ac,ag,W){var V=ad,ai=[],aa=ac,Y,T,Z=ac&&ac[0]&&Q(ac[0]);while(ad&&ac.length){for(var ab in I.filter){if((Y=I.match[ab].exec(ad))!=null){var U=I.filter[ab],ah,af;T=false;if(aa==ai){ai=[]}if(I.preFilter[ab]){Y=I.preFilter[ab](Y,aa,ag,ai,W,Z);if(!Y){T=ah=true}else{if(Y===true){continue}}}if(Y){for(var X=0;(af=aa[X])!=null;X++){if(af){ah=U(af,Y,X,aa);var ae=W^!!ah;if(ag&&ah!=null){if(ae){T=true}else{aa[X]=false}}else{if(ae){ai.push(af);T=true}}}}}if(ah!==g){if(!ag){aa=ai}ad=ad.replace(I.match[ab],"");if(!T){return[]}break}}}if(ad==V){if(T==null){throw"Syntax error, unrecognized expression: "+ad}else{break}}V=ad}return aa};var I=F.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF_-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF_-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*_-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+-]*)\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF_-]|\\.)+)(?:\((['"]*)((?:\([^\)]+\)|[^\2\(\)]*)+)\2\))?/},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(T){return T.getAttribute("href")}},relative:{"+":function(aa,T,Z){var X=typeof T==="string",ab=X&&!/\W/.test(T),Y=X&&!ab;if(ab&&!Z){T=T.toUpperCase()}for(var W=0,V=aa.length,U;W<V;W++){if((U=aa[W])){while((U=U.previousSibling)&&U.nodeType!==1){}aa[W]=Y||U&&U.nodeName===T?U||false:U===T}}if(Y){F.filter(T,aa,true)}},">":function(Z,U,aa){var X=typeof U==="string";if(X&&!/\W/.test(U)){U=aa?U:U.toUpperCase();for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){var W=Y.parentNode;Z[V]=W.nodeName===U?W:false}}}else{for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){Z[V]=X?Y.parentNode:Y.parentNode===U}}if(X){F.filter(U,Z,true)}}},"":function(W,U,Y){var V=L++,T=S;if(!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("parentNode",U,V,W,X,Y)},"~":function(W,U,Y){var V=L++,T=S;if(typeof U==="string"&&!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("previousSibling",U,V,W,X,Y)}},find:{ID:function(U,V,W){if(typeof V.getElementById!=="undefined"&&!W){var T=V.getElementById(U[1]);return T?[T]:[]}},NAME:function(V,Y,Z){if(typeof Y.getElementsByName!=="undefined"){var U=[],X=Y.getElementsByName(V[1]);for(var W=0,T=X.length;W<T;W++){if(X[W].getAttribute("name")===V[1]){U.push(X[W])}}return U.length===0?null:U}},TAG:function(T,U){return U.getElementsByTagName(T[1])}},preFilter:{CLASS:function(W,U,V,T,Z,aa){W=" "+W[1].replace(/\\/g,"")+" ";if(aa){return W}for(var X=0,Y;(Y=U[X])!=null;X++){if(Y){if(Z^(Y.className&&(" "+Y.className+" ").indexOf(W)>=0)){if(!V){T.push(Y)}}else{if(V){U[X]=false}}}}return false},ID:function(T){return T[1].replace(/\\/g,"")},TAG:function(U,T){for(var V=0;T[V]===false;V++){}return T[V]&&Q(T[V])?U[1]:U[1].toUpperCase()},CHILD:function(T){if(T[1]=="nth"){var U=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(T[2]=="even"&&"2n"||T[2]=="odd"&&"2n+1"||!/\D/.test(T[2])&&"0n+"+T[2]||T[2]);T[2]=(U[1]+(U[2]||1))-0;T[3]=U[3]-0}T[0]=L++;return T},ATTR:function(X,U,V,T,Y,Z){var W=X[1].replace(/\\/g,"");if(!Z&&I.attrMap[W]){X[1]=I.attrMap[W]}if(X[2]==="~="){X[4]=" "+X[4]+" "}return X},PSEUDO:function(X,U,V,T,Y){if(X[1]==="not"){if(X[3].match(R).length>1||/^\w/.test(X[3])){X[3]=F(X[3],null,null,U)}else{var W=F.filter(X[3],U,V,true^Y);if(!V){T.push.apply(T,W)}return false}}else{if(I.match.POS.test(X[0])||I.match.CHILD.test(X[0])){return true}}return X},POS:function(T){T.unshift(true);return T}},filters:{enabled:function(T){return T.disabled===false&&T.type!=="hidden"},disabled:function(T){return T.disabled===true},checked:function(T){return T.checked===true},selected:function(T){T.parentNode.selectedIndex;return T.selected===true},parent:function(T){return !!T.firstChild},empty:function(T){return !T.firstChild},has:function(V,U,T){return !!F(T[3],V).length},header:function(T){return/h\d/i.test(T.nodeName)},text:function(T){return"text"===T.type},radio:function(T){return"radio"===T.type},checkbox:function(T){return"checkbox"===T.type},file:function(T){return"file"===T.type},password:function(T){return"password"===T.type},submit:function(T){return"submit"===T.type},image:function(T){return"image"===T.type},reset:function(T){return"reset"===T.type},button:function(T){return"button"===T.type||T.nodeName.toUpperCase()==="BUTTON"},input:function(T){return/input|select|textarea|button/i.test(T.nodeName)}},setFilters:{first:function(U,T){return T===0},last:function(V,U,T,W){return U===W.length-1},even:function(U,T){return T%2===0},odd:function(U,T){return T%2===1},lt:function(V,U,T){return U<T[3]-0},gt:function(V,U,T){return U>T[3]-0},nth:function(V,U,T){return T[3]-0==U},eq:function(V,U,T){return T[3]-0==U}},filter:{PSEUDO:function(Z,V,W,aa){var U=V[1],X=I.filters[U];if(X){return X(Z,W,V,aa)}else{if(U==="contains"){return(Z.textContent||Z.innerText||"").indexOf(V[3])>=0}else{if(U==="not"){var Y=V[3];for(var W=0,T=Y.length;W<T;W++){if(Y[W]===Z){return false}}return true}}}},CHILD:function(T,W){var Z=W[1],U=T;switch(Z){case"only":case"first":while(U=U.previousSibling){if(U.nodeType===1){return false}}if(Z=="first"){return true}U=T;case"last":while(U=U.nextSibling){if(U.nodeType===1){return false}}return true;case"nth":var V=W[2],ac=W[3];if(V==1&&ac==0){return true}var Y=W[0],ab=T.parentNode;if(ab&&(ab.sizcache!==Y||!T.nodeIndex)){var X=0;for(U=ab.firstChild;U;U=U.nextSibling){if(U.nodeType===1){U.nodeIndex=++X}}ab.sizcache=Y}var aa=T.nodeIndex-ac;if(V==0){return aa==0}else{return(aa%V==0&&aa/V>=0)}}},ID:function(U,T){return U.nodeType===1&&U.getAttribute("id")===T},TAG:function(U,T){return(T==="*"&&U.nodeType===1)||U.nodeName===T},CLASS:function(U,T){return(" "+(U.className||U.getAttribute("class"))+" ").indexOf(T)>-1},ATTR:function(Y,W){var V=W[1],T=I.attrHandle[V]?I.attrHandle[V](Y):Y[V]!=null?Y[V]:Y.getAttribute(V),Z=T+"",X=W[2],U=W[4];return T==null?X==="!=":X==="="?Z===U:X==="*="?Z.indexOf(U)>=0:X==="~="?(" "+Z+" ").indexOf(U)>=0:!U?Z&&T!==false:X==="!="?Z!=U:X==="^="?Z.indexOf(U)===0:X==="$="?Z.substr(Z.length-U.length)===U:X==="|="?Z===U||Z.substr(0,U.length+1)===U+"-":false},POS:function(X,U,V,Y){var T=U[2],W=I.setFilters[T];if(W){return W(X,V,U,Y)}}}};var M=I.match.POS;for(var O in I.match){I.match[O]=RegExp(I.match[O].source+/(?![^\[]*\])(?![^\(]*\))/.source)}var E=function(U,T){U=Array.prototype.slice.call(U);if(T){T.push.apply(T,U);return T}return U};try{Array.prototype.slice.call(document.documentElement.childNodes)}catch(N){E=function(X,W){var U=W||[];if(H.call(X)==="[object Array]"){Array.prototype.push.apply(U,X)}else{if(typeof X.length==="number"){for(var V=0,T=X.length;V<T;V++){U.push(X[V])}}else{for(var V=0;X[V];V++){U.push(X[V])}}}return U}}var G;if(document.documentElement.compareDocumentPosition){G=function(U,T){var V=U.compareDocumentPosition(T)&4?-1:U===T?0:1;if(V===0){hasDuplicate=true}return V}}else{if("sourceIndex" in document.documentElement){G=function(U,T){var V=U.sourceIndex-T.sourceIndex;if(V===0){hasDuplicate=true}return V}}else{if(document.createRange){G=function(W,U){var V=W.ownerDocument.createRange(),T=U.ownerDocument.createRange();V.selectNode(W);V.collapse(true);T.selectNode(U);T.collapse(true);var X=V.compareBoundaryPoints(Range.START_TO_END,T);if(X===0){hasDuplicate=true}return X}}}}(function(){var U=document.createElement("form"),V="script"+(new Date).getTime();U.innerHTML="<input name='"+V+"'/>";var T=document.documentElement;T.insertBefore(U,T.firstChild);if(!!document.getElementById(V)){I.find.ID=function(X,Y,Z){if(typeof Y.getElementById!=="undefined"&&!Z){var W=Y.getElementById(X[1]);return W?W.id===X[1]||typeof W.getAttributeNode!=="undefined"&&W.getAttributeNode("id").nodeValue===X[1]?[W]:g:[]}};I.filter.ID=function(Y,W){var X=typeof Y.getAttributeNode!=="undefined"&&Y.getAttributeNode("id");return Y.nodeType===1&&X&&X.nodeValue===W}}T.removeChild(U)})();(function(){var T=document.createElement("div");T.appendChild(document.createComment(""));if(T.getElementsByTagName("*").length>0){I.find.TAG=function(U,Y){var X=Y.getElementsByTagName(U[1]);if(U[1]==="*"){var W=[];for(var V=0;X[V];V++){if(X[V].nodeType===1){W.push(X[V])}}X=W}return X}}T.innerHTML="<a href='#'></a>";if(T.firstChild&&typeof T.firstChild.getAttribute!=="undefined"&&T.firstChild.getAttribute("href")!=="#"){I.attrHandle.href=function(U){return U.getAttribute("href",2)}}})();if(document.querySelectorAll){(function(){var T=F,U=document.createElement("div");U.innerHTML="<p class='TEST'></p>";if(U.querySelectorAll&&U.querySelectorAll(".TEST").length===0){return}F=function(Y,X,V,W){X=X||document;if(!W&&X.nodeType===9&&!Q(X)){try{return E(X.querySelectorAll(Y),V)}catch(Z){}}return T(Y,X,V,W)};F.find=T.find;F.filter=T.filter;F.selectors=T.selectors;F.matches=T.matches})()}if(document.getElementsByClassName&&document.documentElement.getElementsByClassName){(function(){var T=document.createElement("div");T.innerHTML="<div class='test e'></div><div class='test'></div>";if(T.getElementsByClassName("e").length===0){return}T.lastChild.className="e";if(T.getElementsByClassName("e").length===1){return}I.order.splice(1,0,"CLASS");I.find.CLASS=function(U,V,W){if(typeof V.getElementsByClassName!=="undefined"&&!W){return V.getElementsByClassName(U[1])}}})()}function P(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1&&!ac){T.sizcache=Y;T.sizset=W}if(T.nodeName===Z){X=T;break}T=T[U]}ad[W]=X}}}function S(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1){if(!ac){T.sizcache=Y;T.sizset=W}if(typeof Z!=="string"){if(T===Z){X=true;break}}else{if(F.filter(Z,[T]).length>0){X=T;break}}}T=T[U]}ad[W]=X}}}var K=document.compareDocumentPosition?function(U,T){return U.compareDocumentPosition(T)&16}:function(U,T){return U!==T&&(U.contains?U.contains(T):true)};var Q=function(T){return T.nodeType===9&&T.documentElement.nodeName!=="HTML"||!!T.ownerDocument&&Q(T.ownerDocument)};var J=function(T,aa){var W=[],X="",Y,V=aa.nodeType?[aa]:aa;while((Y=I.match.PSEUDO.exec(T))){X+=Y[0];T=T.replace(I.match.PSEUDO,"")}T=I.relative[T]?T+"*":T;for(var Z=0,U=V.length;Z<U;Z++){F(T,V[Z],W)}return F.filter(X,W)};o.find=F;o.filter=F.filter;o.expr=F.selectors;o.expr[":"]=o.expr.filters;F.selectors.filters.hidden=function(T){return T.offsetWidth===0||T.offsetHeight===0};F.selectors.filters.visible=function(T){return T.offsetWidth>0||T.offsetHeight>0};F.selectors.filters.animated=function(T){return o.grep(o.timers,function(U){return T===U.elem}).length};o.multiFilter=function(V,T,U){if(U){V=":not("+V+")"}return F.matches(V,T)};o.dir=function(V,U){var T=[],W=V[U];while(W&&W!=document){if(W.nodeType==1){T.push(W)}W=W[U]}return T};o.nth=function(X,T,V,W){T=T||1;var U=0;for(;X;X=X[V]){if(X.nodeType==1&&++U==T){break}}return X};o.sibling=function(V,U){var T=[];for(;V;V=V.nextSibling){if(V.nodeType==1&&V!=U){T.push(V)}}return T};return;l.Sizzle=F})();o.event={add:function(I,F,H,K){if(I.nodeType==3||I.nodeType==8){return}if(I.setInterval&&I!=l){I=l}if(!H.guid){H.guid=this.guid++}if(K!==g){var G=H;H=this.proxy(G);H.data=K}var E=o.data(I,"events")||o.data(I,"events",{}),J=o.data(I,"handle")||o.data(I,"handle",function(){return typeof o!=="undefined"&&!o.event.triggered?o.event.handle.apply(arguments.callee.elem,arguments):g});J.elem=I;o.each(F.split(/\s+/),function(M,N){var O=N.split(".");N=O.shift();H.type=O.slice().sort().join(".");var L=E[N];if(o.event.specialAll[N]){o.event.specialAll[N].setup.call(I,K,O)}if(!L){L=E[N]={};if(!o.event.special[N]||o.event.special[N].setup.call(I,K,O)===false){if(I.addEventListener){I.addEventListener(N,J,false)}else{if(I.attachEvent){I.attachEvent("on"+N,J)}}}}L[H.guid]=H;o.event.global[N]=true});I=null},guid:1,global:{},remove:function(K,H,J){if(K.nodeType==3||K.nodeType==8){return}var G=o.data(K,"events"),F,E;if(G){if(H===g||(typeof H==="string"&&H.charAt(0)==".")){for(var I in G){this.remove(K,I+(H||""))}}else{if(H.type){J=H.handler;H=H.type}o.each(H.split(/\s+/),function(M,O){var Q=O.split(".");O=Q.shift();var N=RegExp("(^|\\.)"+Q.slice().sort().join(".*\\.")+"(\\.|$)");if(G[O]){if(J){delete G[O][J.guid]}else{for(var P in G[O]){if(N.test(G[O][P].type)){delete G[O][P]}}}if(o.event.specialAll[O]){o.event.specialAll[O].teardown.call(K,Q)}for(F in G[O]){break}if(!F){if(!o.event.special[O]||o.event.special[O].teardown.call(K,Q)===false){if(K.removeEventListener){K.removeEventListener(O,o.data(K,"handle"),false)}else{if(K.detachEvent){K.detachEvent("on"+O,o.data(K,"handle"))}}}F=null;delete G[O]}}})}for(F in G){break}if(!F){var L=o.data(K,"handle");if(L){L.elem=null}o.removeData(K,"events");o.removeData(K,"handle")}}},trigger:function(I,K,H,E){var G=I.type||I;if(!E){I=typeof I==="object"?I[h]?I:o.extend(o.Event(G),I):o.Event(G);if(G.indexOf("!")>=0){I.type=G=G.slice(0,-1);I.exclusive=true}if(!H){I.stopPropagation();if(this.global[G]){o.each(o.cache,function(){if(this.events&&this.events[G]){o.event.trigger(I,K,this.handle.elem)}})}}if(!H||H.nodeType==3||H.nodeType==8){return g}I.result=g;I.target=H;K=o.makeArray(K);K.unshift(I)}I.currentTarget=H;var J=o.data(H,"handle");if(J){J.apply(H,K)}if((!H[G]||(o.nodeName(H,"a")&&G=="click"))&&H["on"+G]&&H["on"+G].apply(H,K)===false){I.result=false}if(!E&&H[G]&&!I.isDefaultPrevented()&&!(o.nodeName(H,"a")&&G=="click")){this.triggered=true;try{H[G]()}catch(L){}}this.triggered=false;if(!I.isPropagationStopped()){var F=H.parentNode||H.ownerDocument;if(F){o.event.trigger(I,K,F,true)}}},handle:function(K){var J,E;K=arguments[0]=o.event.fix(K||l.event);K.currentTarget=this;var L=K.type.split(".");K.type=L.shift();J=!L.length&&!K.exclusive;var I=RegExp("(^|\\.)"+L.slice().sort().join(".*\\.")+"(\\.|$)");E=(o.data(this,"events")||{})[K.type];for(var G in E){var H=E[G];if(J||I.test(H.type)){K.handler=H;K.data=H.data;var F=H.apply(this,arguments);if(F!==g){K.result=F;if(F===false){K.preventDefault();K.stopPropagation()}}if(K.isImmediatePropagationStopped()){break}}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(H){if(H[h]){return H}var F=H;H=o.Event(F);for(var G=this.props.length,J;G;){J=this.props[--G];H[J]=F[J]}if(!H.target){H.target=H.srcElement||document}if(H.target.nodeType==3){H.target=H.target.parentNode}if(!H.relatedTarget&&H.fromElement){H.relatedTarget=H.fromElement==H.target?H.toElement:H.fromElement}if(H.pageX==null&&H.clientX!=null){var I=document.documentElement,E=document.body;H.pageX=H.clientX+(I&&I.scrollLeft||E&&E.scrollLeft||0)-(I.clientLeft||0);H.pageY=H.clientY+(I&&I.scrollTop||E&&E.scrollTop||0)-(I.clientTop||0)}if(!H.which&&((H.charCode||H.charCode===0)?H.charCode:H.keyCode)){H.which=H.charCode||H.keyCode}if(!H.metaKey&&H.ctrlKey){H.metaKey=H.ctrlKey}if(!H.which&&H.button){H.which=(H.button&1?1:(H.button&2?3:(H.button&4?2:0)))}return H},proxy:function(F,E){E=E||function(){return F.apply(this,arguments)};E.guid=F.guid=F.guid||E.guid||this.guid++;return E},special:{ready:{setup:B,teardown:function(){}}},specialAll:{live:{setup:function(E,F){o.event.add(this,F[0],c)},teardown:function(G){if(G.length){var E=0,F=RegExp("(^|\\.)"+G[0]+"(\\.|$)");o.each((o.data(this,"events").live||{}),function(){if(F.test(this.type)){E++}});if(E<1){o.event.remove(this,G[0],c)}}}}}};o.Event=function(E){if(!this.preventDefault){return new o.Event(E)}if(E&&E.type){this.originalEvent=E;this.type=E.type}else{this.type=E}this.timeStamp=e();this[h]=true};function k(){return false}function u(){return true}o.Event.prototype={preventDefault:function(){this.isDefaultPrevented=u;var E=this.originalEvent;if(!E){return}if(E.preventDefault){E.preventDefault()}E.returnValue=false},stopPropagation:function(){this.isPropagationStopped=u;var E=this.originalEvent;if(!E){return}if(E.stopPropagation){E.stopPropagation()}E.cancelBubble=true},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=u;this.stopPropagation()},isDefaultPrevented:k,isPropagationStopped:k,isImmediatePropagationStopped:k};var a=function(F){var E=F.relatedTarget;while(E&&E!=this){try{E=E.parentNode}catch(G){E=this}}if(E!=this){F.type=F.data;o.event.handle.apply(this,arguments)}};o.each({mouseover:"mouseenter",mouseout:"mouseleave"},function(F,E){o.event.special[E]={setup:function(){o.event.add(this,F,a,E)},teardown:function(){o.event.remove(this,F,a)}}});o.fn.extend({bind:function(F,G,E){return F=="unload"?this.one(F,G,E):this.each(function(){o.event.add(this,F,E||G,E&&G)})},one:function(G,H,F){var E=o.event.proxy(F||H,function(I){o(this).unbind(I,E);return(F||H).apply(this,arguments)});return this.each(function(){o.event.add(this,G,E,F&&H)})},unbind:function(F,E){return this.each(function(){o.event.remove(this,F,E)})},trigger:function(E,F){return this.each(function(){o.event.trigger(E,F,this)})},triggerHandler:function(E,G){if(this[0]){var F=o.Event(E);F.preventDefault();F.stopPropagation();o.event.trigger(F,G,this[0]);return F.result}},toggle:function(G){var E=arguments,F=1;while(F<E.length){o.event.proxy(G,E[F++])}return this.click(o.event.proxy(G,function(H){this.lastToggle=(this.lastToggle||0)%F;H.preventDefault();return E[this.lastToggle++].apply(this,arguments)||false}))},hover:function(E,F){return this.mouseenter(E).mouseleave(F)},ready:function(E){B();if(o.isReady){E.call(document,o)}else{o.readyList.push(E)}return this},live:function(G,F){var E=o.event.proxy(F);E.guid+=this.selector+G;o(document).bind(i(G,this.selector),this.selector,E);return this},die:function(F,E){o(document).unbind(i(F,this.selector),E?{guid:E.guid+this.selector+F}:null);return this}});function c(H){var E=RegExp("(^|\\.)"+H.type+"(\\.|$)"),G=true,F=[];o.each(o.data(this,"events").live||[],function(I,J){if(E.test(J.type)){var K=o(H.target).closest(J.data)[0];if(K){F.push({elem:K,fn:J})}}});F.sort(function(J,I){return o.data(J.elem,"closest")-o.data(I.elem,"closest")});o.each(F,function(){if(this.fn.call(this.elem,H,this.fn.data)===false){return(G=false)}});return G}function i(F,E){return["live",F,E.replace(/\./g,"`").replace(/ /g,"|")].join(".")}o.extend({isReady:false,readyList:[],ready:function(){if(!o.isReady){o.isReady=true;if(o.readyList){o.each(o.readyList,function(){this.call(document,o)});o.readyList=null}o(document).triggerHandler("ready")}}});var x=false;function B(){if(x){return}x=true;if(document.addEventListener){document.addEventListener("DOMContentLoaded",function(){document.removeEventListener("DOMContentLoaded",arguments.callee,false);o.ready()},false)}else{if(document.attachEvent){document.attachEvent("onreadystatechange",function(){if(document.readyState==="complete"){document.detachEvent("onreadystatechange",arguments.callee);o.ready()}});if(document.documentElement.doScroll&&l==l.top){(function(){if(o.isReady){return}try{document.documentElement.doScroll("left")}catch(E){setTimeout(arguments.callee,0);return}o.ready()})()}}}o.event.add(l,"load",o.ready)}o.each(("blur,focus,load,resize,scroll,unload,click,dblclick,mousedown,mouseup,mousemove,mouseover,mouseout,mouseenter,mouseleave,change,select,submit,keydown,keypress,keyup,error").split(","),function(F,E){o.fn[E]=function(G){return G?this.bind(E,G):this.trigger(E)}});o(l).bind("unload",function(){for(var E in o.cache){if(E!=1&&o.cache[E].handle){o.event.remove(o.cache[E].handle.elem)}}});(function(){o.support={};var F=document.documentElement,G=document.createElement("script"),K=document.createElement("div"),J="script"+(new Date).getTime();K.style.display="none";K.innerHTML=' <link/><table></table><a href="/a" style="color:red;float:left;opacity:.5;">a</a><select><option>text</option></select><object><param/></object>';var H=K.getElementsByTagName("*"),E=K.getElementsByTagName("a")[0];if(!H||!H.length||!E){return}o.support={leadingWhitespace:K.firstChild.nodeType==3,tbody:!K.getElementsByTagName("tbody").length,objectAll:!!K.getElementsByTagName("object")[0].getElementsByTagName("*").length,htmlSerialize:!!K.getElementsByTagName("link").length,style:/red/.test(E.getAttribute("style")),hrefNormalized:E.getAttribute("href")==="/a",opacity:E.style.opacity==="0.5",cssFloat:!!E.style.cssFloat,scriptEval:false,noCloneEvent:true,boxModel:null};G.type="text/javascript";try{G.appendChild(document.createTextNode("window."+J+"=1;"))}catch(I){}F.insertBefore(G,F.firstChild);if(l[J]){o.support.scriptEval=true;delete l[J]}F.removeChild(G);if(K.attachEvent&&K.fireEvent){K.attachEvent("onclick",function(){o.support.noCloneEvent=false;K.detachEvent("onclick",arguments.callee)});K.cloneNode(true).fireEvent("onclick")}o(function(){var L=document.createElement("div");L.style.width=L.style.paddingLeft="1px";document.body.appendChild(L);o.boxModel=o.support.boxModel=L.offsetWidth===2;document.body.removeChild(L).style.display="none"})})();var w=o.support.cssFloat?"cssFloat":"styleFloat";o.props={"for":"htmlFor","class":"className","float":w,cssFloat:w,styleFloat:w,readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",tabindex:"tabIndex"};o.fn.extend({_load:o.fn.load,load:function(G,J,K){if(typeof G!=="string"){return this._load(G)}var I=G.indexOf(" ");if(I>=0){var E=G.slice(I,G.length);G=G.slice(0,I)}var H="GET";if(J){if(o.isFunction(J)){K=J;J=null}else{if(typeof J==="object"){J=o.param(J);H="POST"}}}var F=this;o.ajax({url:G,type:H,dataType:"html",data:J,complete:function(M,L){if(L=="success"||L=="notmodified"){F.html(E?o("<div/>").append(M.responseText.replace(/<script(.|\s)*?\/script>/g,"")).find(E):M.responseText)}if(K){F.each(K,[M.responseText,L,M])}}});return this},serialize:function(){return o.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?o.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password|search/i.test(this.type))}).map(function(E,F){var G=o(this).val();return G==null?null:o.isArray(G)?o.map(G,function(I,H){return{name:F.name,value:I}}):{name:F.name,value:G}}).get()}});o.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(E,F){o.fn[F]=function(G){return this.bind(F,G)}});var r=e();o.extend({get:function(E,G,H,F){if(o.isFunction(G)){H=G;G=null}return o.ajax({type:"GET",url:E,data:G,success:H,dataType:F})},getScript:function(E,F){return o.get(E,null,F,"script")},getJSON:function(E,F,G){return o.get(E,F,G,"json")},post:function(E,G,H,F){if(o.isFunction(G)){H=G;G={}}return o.ajax({type:"POST",url:E,data:G,success:H,dataType:F})},ajaxSetup:function(E){o.extend(o.ajaxSettings,E)},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return l.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest()},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(M){M=o.extend(true,M,o.extend(true,{},o.ajaxSettings,M));var W,F=/=\?(&|$)/g,R,V,G=M.type.toUpperCase();if(M.data&&M.processData&&typeof M.data!=="string"){M.data=o.param(M.data)}if(M.dataType=="jsonp"){if(G=="GET"){if(!M.url.match(F)){M.url+=(M.url.match(/\?/)?"&":"?")+(M.jsonp||"callback")+"=?"}}else{if(!M.data||!M.data.match(F)){M.data=(M.data?M.data+"&":"")+(M.jsonp||"callback")+"=?"}}M.dataType="json"}if(M.dataType=="json"&&(M.data&&M.data.match(F)||M.url.match(F))){W="jsonp"+r++;if(M.data){M.data=(M.data+"").replace(F,"="+W+"$1")}M.url=M.url.replace(F,"="+W+"$1");M.dataType="script";l[W]=function(X){V=X;I();L();l[W]=g;try{delete l[W]}catch(Y){}if(H){H.removeChild(T)}}}if(M.dataType=="script"&&M.cache==null){M.cache=false}if(M.cache===false&&G=="GET"){var E=e();var U=M.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+E+"$2");M.url=U+((U==M.url)?(M.url.match(/\?/)?"&":"?")+"_="+E:"")}if(M.data&&G=="GET"){M.url+=(M.url.match(/\?/)?"&":"?")+M.data;M.data=null}if(M.global&&!o.active++){o.event.trigger("ajaxStart")}var Q=/^(\w+:)?\/\/([^\/?#]+)/.exec(M.url);if(M.dataType=="script"&&G=="GET"&&Q&&(Q[1]&&Q[1]!=location.protocol||Q[2]!=location.host)){var H=document.getElementsByTagName("head")[0];var T=document.createElement("script");T.src=M.url;if(M.scriptCharset){T.charset=M.scriptCharset}if(!W){var O=false;T.onload=T.onreadystatechange=function(){if(!O&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){O=true;I();L();T.onload=T.onreadystatechange=null;H.removeChild(T)}}}H.appendChild(T);return g}var K=false;var J=M.xhr();if(M.username){J.open(G,M.url,M.async,M.username,M.password)}else{J.open(G,M.url,M.async)}try{if(M.data){J.setRequestHeader("Content-Type",M.contentType)}if(M.ifModified){J.setRequestHeader("If-Modified-Since",o.lastModified[M.url]||"Thu, 01 Jan 1970 00:00:00 GMT")}J.setRequestHeader("X-Requested-With","XMLHttpRequest");J.setRequestHeader("Accept",M.dataType&&M.accepts[M.dataType]?M.accepts[M.dataType]+", */*":M.accepts._default)}catch(S){}if(M.beforeSend&&M.beforeSend(J,M)===false){if(M.global&&!--o.active){o.event.trigger("ajaxStop")}J.abort();return false}if(M.global){o.event.trigger("ajaxSend",[J,M])}var N=function(X){if(J.readyState==0){if(P){clearInterval(P);P=null;if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}}else{if(!K&&J&&(J.readyState==4||X=="timeout")){K=true;if(P){clearInterval(P);P=null}R=X=="timeout"?"timeout":!o.httpSuccess(J)?"error":M.ifModified&&o.httpNotModified(J,M.url)?"notmodified":"success";if(R=="success"){try{V=o.httpData(J,M.dataType,M)}catch(Z){R="parsererror"}}if(R=="success"){var Y;try{Y=J.getResponseHeader("Last-Modified")}catch(Z){}if(M.ifModified&&Y){o.lastModified[M.url]=Y}if(!W){I()}}else{o.handleError(M,J,R)}L();if(X){J.abort()}if(M.async){J=null}}}};if(M.async){var P=setInterval(N,13);if(M.timeout>0){setTimeout(function(){if(J&&!K){N("timeout")}},M.timeout)}}try{J.send(M.data)}catch(S){o.handleError(M,J,null,S)}if(!M.async){N()}function I(){if(M.success){M.success(V,R)}if(M.global){o.event.trigger("ajaxSuccess",[J,M])}}function L(){if(M.complete){M.complete(J,R)}if(M.global){o.event.trigger("ajaxComplete",[J,M])}if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}return J},handleError:function(F,H,E,G){if(F.error){F.error(H,E,G)}if(F.global){o.event.trigger("ajaxError",[H,F,G])}},active:0,httpSuccess:function(F){try{return !F.status&&location.protocol=="file:"||(F.status>=200&&F.status<300)||F.status==304||F.status==1223}catch(E){}return false},httpNotModified:function(G,E){try{var H=G.getResponseHeader("Last-Modified");return G.status==304||H==o.lastModified[E]}catch(F){}return false},httpData:function(J,H,G){var F=J.getResponseHeader("content-type"),E=H=="xml"||!H&&F&&F.indexOf("xml")>=0,I=E?J.responseXML:J.responseText;if(E&&I.documentElement.tagName=="parsererror"){throw"parsererror"}if(G&&G.dataFilter){I=G.dataFilter(I,H)}if(typeof I==="string"){if(H=="script"){o.globalEval(I)}if(H=="json"){I=l["eval"]("("+I+")")}}return I},param:function(E){var G=[];function H(I,J){G[G.length]=encodeURIComponent(I)+"="+encodeURIComponent(J)}if(o.isArray(E)||E.jquery){o.each(E,function(){H(this.name,this.value)})}else{for(var F in E){if(o.isArray(E[F])){o.each(E[F],function(){H(F,this)})}else{H(F,o.isFunction(E[F])?E[F]():E[F])}}}return G.join("&").replace(/%20/g,"+")}});var m={},n,d=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];function t(F,E){var G={};o.each(d.concat.apply([],d.slice(0,E)),function(){G[this]=F});return G}o.fn.extend({show:function(J,L){if(J){return this.animate(t("show",3),J,L)}else{for(var H=0,F=this.length;H<F;H++){var E=o.data(this[H],"olddisplay");this[H].style.display=E||"";if(o.css(this[H],"display")==="none"){var G=this[H].tagName,K;if(m[G]){K=m[G]}else{var I=o("<"+G+" />").appendTo("body");K=I.css("display");if(K==="none"){K="block"}I.remove();m[G]=K}o.data(this[H],"olddisplay",K)}}for(var H=0,F=this.length;H<F;H++){this[H].style.display=o.data(this[H],"olddisplay")||""}return this}},hide:function(H,I){if(H){return this.animate(t("hide",3),H,I)}else{for(var G=0,F=this.length;G<F;G++){var E=o.data(this[G],"olddisplay");if(!E&&E!=="none"){o.data(this[G],"olddisplay",o.css(this[G],"display"))}}for(var G=0,F=this.length;G<F;G++){this[G].style.display="none"}return this}},_toggle:o.fn.toggle,toggle:function(G,F){var E=typeof G==="boolean";return o.isFunction(G)&&o.isFunction(F)?this._toggle.apply(this,arguments):G==null||E?this.each(function(){var H=E?G:o(this).is(":hidden");o(this)[H?"show":"hide"]()}):this.animate(t("toggle",3),G,F)},fadeTo:function(E,G,F){return this.animate({opacity:G},E,F)},animate:function(I,F,H,G){var E=o.speed(F,H,G);return this[E.queue===false?"each":"queue"](function(){var K=o.extend({},E),M,L=this.nodeType==1&&o(this).is(":hidden"),J=this;for(M in I){if(I[M]=="hide"&&L||I[M]=="show"&&!L){return K.complete.call(this)}if((M=="height"||M=="width")&&this.style){K.display=o.css(this,"display");K.overflow=this.style.overflow}}if(K.overflow!=null){this.style.overflow="hidden"}K.curAnim=o.extend({},I);o.each(I,function(O,S){var R=new o.fx(J,K,O);if(/toggle|show|hide/.test(S)){R[S=="toggle"?L?"show":"hide":S](I)}else{var Q=S.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),T=R.cur(true)||0;if(Q){var N=parseFloat(Q[2]),P=Q[3]||"px";if(P!="px"){J.style[O]=(N||1)+P;T=((N||1)/R.cur(true))*T;J.style[O]=T+P}if(Q[1]){N=((Q[1]=="-="?-1:1)*N)+T}R.custom(T,N,P)}else{R.custom(T,S,"")}}});return true})},stop:function(F,E){var G=o.timers;if(F){this.queue([])}this.each(function(){for(var H=G.length-1;H>=0;H--){if(G[H].elem==this){if(E){G[H](true)}G.splice(H,1)}}});if(!E){this.dequeue()}return this}});o.each({slideDown:t("show",1),slideUp:t("hide",1),slideToggle:t("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(E,F){o.fn[E]=function(G,H){return this.animate(F,G,H)}});o.extend({speed:function(G,H,F){var E=typeof G==="object"?G:{complete:F||!F&&H||o.isFunction(G)&&G,duration:G,easing:F&&H||H&&!o.isFunction(H)&&H};E.duration=o.fx.off?0:typeof E.duration==="number"?E.duration:o.fx.speeds[E.duration]||o.fx.speeds._default;E.old=E.complete;E.complete=function(){if(E.queue!==false){o(this).dequeue()}if(o.isFunction(E.old)){E.old.call(this)}};return E},easing:{linear:function(G,H,E,F){return E+F*G},swing:function(G,H,E,F){return((-Math.cos(G*Math.PI)/2)+0.5)*F+E}},timers:[],fx:function(F,E,G){this.options=E;this.elem=F;this.prop=G;if(!E.orig){E.orig={}}}});o.fx.prototype={update:function(){if(this.options.step){this.options.step.call(this.elem,this.now,this)}(o.fx.step[this.prop]||o.fx.step._default)(this);if((this.prop=="height"||this.prop=="width")&&this.elem.style){this.elem.style.display="block"}},cur:function(F){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)){return this.elem[this.prop]}var E=parseFloat(o.css(this.elem,this.prop,F));return E&&E>-10000?E:parseFloat(o.curCSS(this.elem,this.prop))||0},custom:function(I,H,G){this.startTime=e();this.start=I;this.end=H;this.unit=G||this.unit||"px";this.now=this.start;this.pos=this.state=0;var E=this;function F(J){return E.step(J)}F.elem=this.elem;if(F()&&o.timers.push(F)&&!n){n=setInterval(function(){var K=o.timers;for(var J=0;J<K.length;J++){if(!K[J]()){K.splice(J--,1)}}if(!K.length){clearInterval(n);n=g}},13)}},show:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.show=true;this.custom(this.prop=="width"||this.prop=="height"?1:0,this.cur());o(this.elem).show()},hide:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.hide=true;this.custom(this.cur(),0)},step:function(H){var G=e();if(H||G>=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var E=true;for(var F in this.options.curAnim){if(this.options.curAnim[F]!==true){E=false}}if(E){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(o.css(this.elem,"display")=="none"){this.elem.style.display="block"}}if(this.options.hide){o(this.elem).hide()}if(this.options.hide||this.options.show){for(var I in this.options.curAnim){o.attr(this.elem.style,I,this.options.orig[I])}}this.options.complete.call(this.elem)}return false}else{var J=G-this.startTime;this.state=J/this.options.duration;this.pos=o.easing[this.options.easing||(o.easing.swing?"swing":"linear")](this.state,J,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update()}return true}};o.extend(o.fx,{speeds:{slow:600,fast:200,_default:400},step:{opacity:function(E){o.attr(E.elem.style,"opacity",E.now)},_default:function(E){if(E.elem.style&&E.elem.style[E.prop]!=null){E.elem.style[E.prop]=E.now+E.unit}else{E.elem[E.prop]=E.now}}}});if(document.documentElement.getBoundingClientRect){o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}var G=this[0].getBoundingClientRect(),J=this[0].ownerDocument,F=J.body,E=J.documentElement,L=E.clientTop||F.clientTop||0,K=E.clientLeft||F.clientLeft||0,I=G.top+(self.pageYOffset||o.boxModel&&E.scrollTop||F.scrollTop)-L,H=G.left+(self.pageXOffset||o.boxModel&&E.scrollLeft||F.scrollLeft)-K;return{top:I,left:H}}}else{o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}o.offset.initialized||o.offset.initialize();var J=this[0],G=J.offsetParent,F=J,O=J.ownerDocument,M,H=O.documentElement,K=O.body,L=O.defaultView,E=L.getComputedStyle(J,null),N=J.offsetTop,I=J.offsetLeft;while((J=J.parentNode)&&J!==K&&J!==H){M=L.getComputedStyle(J,null);N-=J.scrollTop,I-=J.scrollLeft;if(J===G){N+=J.offsetTop,I+=J.offsetLeft;if(o.offset.doesNotAddBorder&&!(o.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(J.tagName))){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}F=G,G=J.offsetParent}if(o.offset.subtractsBorderForOverflowNotVisible&&M.overflow!=="visible"){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}E=M}if(E.position==="relative"||E.position==="static"){N+=K.offsetTop,I+=K.offsetLeft}if(E.position==="fixed"){N+=Math.max(H.scrollTop,K.scrollTop),I+=Math.max(H.scrollLeft,K.scrollLeft)}return{top:N,left:I}}}o.offset={initialize:function(){if(this.initialized){return}var L=document.body,F=document.createElement("div"),H,G,N,I,M,E,J=L.style.marginTop,K='<div style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;"><div></div></div><table style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;" cellpadding="0" cellspacing="0"><tr><td></td></tr></table>';M={position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"};for(E in M){F.style[E]=M[E]}F.innerHTML=K;L.insertBefore(F,L.firstChild);H=F.firstChild,G=H.firstChild,I=H.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(G.offsetTop!==5);this.doesAddBorderForTableAndCells=(I.offsetTop===5);H.style.overflow="hidden",H.style.position="relative";this.subtractsBorderForOverflowNotVisible=(G.offsetTop===-5);L.style.marginTop="1px";this.doesNotIncludeMarginInBodyOffset=(L.offsetTop===0);L.style.marginTop=J;L.removeChild(F);this.initialized=true},bodyOffset:function(E){o.offset.initialized||o.offset.initialize();var G=E.offsetTop,F=E.offsetLeft;if(o.offset.doesNotIncludeMarginInBodyOffset){G+=parseInt(o.curCSS(E,"marginTop",true),10)||0,F+=parseInt(o.curCSS(E,"marginLeft",true),10)||0}return{top:G,left:F}}};o.fn.extend({position:function(){var I=0,H=0,F;if(this[0]){var G=this.offsetParent(),J=this.offset(),E=/^body|html$/i.test(G[0].tagName)?{top:0,left:0}:G.offset();J.top-=j(this,"marginTop");J.left-=j(this,"marginLeft");E.top+=j(G,"borderTopWidth");E.left+=j(G,"borderLeftWidth");F={top:J.top-E.top,left:J.left-E.left}}return F},offsetParent:function(){var E=this[0].offsetParent||document.body;while(E&&(!/^body|html$/i.test(E.tagName)&&o.css(E,"position")=="static")){E=E.offsetParent}return o(E)}});o.each(["Left","Top"],function(F,E){var G="scroll"+E;o.fn[G]=function(H){if(!this[0]){return null}return H!==g?this.each(function(){this==l||this==document?l.scrollTo(!F?H:o(l).scrollLeft(),F?H:o(l).scrollTop()):this[G]=H}):this[0]==l||this[0]==document?self[F?"pageYOffset":"pageXOffset"]||o.boxModel&&document.documentElement[G]||document.body[G]:this[0][G]}});o.each(["Height","Width"],function(I,G){var E=I?"Left":"Top",H=I?"Right":"Bottom",F=G.toLowerCase();o.fn["inner"+G]=function(){return this[0]?o.css(this[0],F,false,"padding"):null};o.fn["outer"+G]=function(K){return this[0]?o.css(this[0],F,false,K?"margin":"border"):null};var J=G.toLowerCase();o.fn[J]=function(K){return this[0]==l?document.compatMode=="CSS1Compat"&&document.documentElement["client"+G]||document.body["client"+G]:this[0]==document?Math.max(document.documentElement["client"+G],document.body["scroll"+G],document.documentElement["scroll"+G],document.body["offset"+G],document.documentElement["offset"+G]):K===g?(this.length?o.css(this[0],J):null):this.css(J,typeof K==="string"?K:K+"px")}})})();
\ No newline at end of file diff --git a/examples/lessons/6_English_syllables/js/lesson.js b/examples/lessons/6_English_syllables/js/lesson.js deleted file mode 100755 index ca45a59..0000000 --- a/examples/lessons/6_English_syllables/js/lesson.js +++ /dev/null @@ -1,359 +0,0 @@ -$(document).ready(function(){ - var k = Karma({ - audio: [{'name':'correct','file':'correct.ogg'}, - {'name':'incorrect','file':'incorrect.ogg'} - ]}); - - k.ready(function(){ - var i,j; - var totalCounter; - var currentQuestion; - var TOTAL_QUES = 10; - var currentDragObject; - var prevDragObject; - var dropNum; - var sectionNum; - var randPositions = []; - var compCounter; - var playerCounter; - var fstSyllableId; - var fstSyllableId; - var checked; - var gamePlay; - var s,m,h,play; - var currentBlock; //flag for which side increases the score 1-player 0-computer - var completedWords = []; - var syllableWord1= new Array('be','en','ti','tues','stu','chil','eng','hap','sun','in', - 'sen','com','pro','prac','talk','pic','num','tea','mar','comp' - ); - var syllableWord2 = new Array('lieve','gine','ger','key','dent','ly','lish','py','day','sect', - 'tence','plete','noun','tice','ing','nic','ber','cher','ket','uter' - ); - - - var genRandPosition=function (){ - randPositions[0] = k.rand(0,19); - for(i=1; i<20; i++){ - do{ - flag = 0; - randPositions[i] = k.rand(0,19); - for(j=0; j<i; j++){ - if(randPositions[i] === randPositions[j]){ - flag++; - } - } - }while(flag != 0 ); //end of do while loop - } - }; - - - var checkTime = function(timePara){ - if (timePara<10 ) - { - timePara="0" + timePara; - } - return timePara; - }; - - - var resetTimer = function(){ - play = 0; - s = 10; - s=checkTime(s); - $('#timerBox1').html(s); - }; - - var increaseTime = function(){ - if(play === 1){ - s--; - s=checkTime(s); - if(s == 00){ //computer score increase - k.audio.incorrect.play(); - checked = 0; - t=setTimeout(function(){delay_correct();},2000); - currentBlock = 0; - assignBuildBlocks(); - compCounter++; - dropNum = 0; - resetTimer(); - } - else{ - $('#timerBox1').html(s); - var t=setTimeout(function(){increaseTime();},1000); - } - } - }; - var startTimer = function(){ - play = 1; - increaseTime(); - - }; - - var check_game_over = function(){ - var flag_game = 0; - if(totalCounter === 40){ //game over - $('#content').addClass('backOpaque'); - $('#gameOver').show(); - resetTimer(); - } - else if(totalCounter === 20){ - if(playerCounter < 10 || compCounter <10){ //u were missed play again - $('#topText').html('Sorry U missed the chance !!! Click Play Again.'); } - flag_game = 1; - } - else if(compCounter === 10){ //computer wins - $('#leftText').html('Computer Wins'); - $('#topText').html('Sorry U missed the chance !!! Click Play Again.'); - flag_game = 1; - } - else if(playerCounter === 10){ //player wins - $('#rightText').html('Player Wins'); - $('#topText').html('Great Job !!! Click Next Button to proceed to next level.'); - flag_game = 1; - } - if(flag_game === 1){ - playerCounter = 10; - compCounter = 10; - if(gamePlay === 0){ - $('#linkNextExercise').show(); - } - else{ - $('#linkPrevExercise').show(); - } - } - - - }; - var assignBuildBlocks = function(){ - var compName,playerName; - if((currentBlock === 1 && playerCounter === 9) || (currentBlock === 0 && compCounter === 9)){ - compName = 'computer_top'; - playerName = 'player_top'; - - } - else if((currentBlock === 1 && playerCounter === 0) || (currentBlock === 0 && compCounter === 0)){ - compName = 'computer_base'; - playerName = 'player_base'; - } - else{ - compName = 'computer_body'; - playerName = 'player_body'; - } - - if(currentBlock === 1){ - $('#playerBuild'+(9-playerCounter)).append('<img src="assets/image/'+playerName+'.png" />'); - } - else{ - $('#compBuild'+(9-compCounter)).append('<img src="assets/image/'+compName+'.png" />'); - } - - }; - - var delay_correct = function(){ - document.delayForm.delayval.value = 1; - if(checked ===1 ){ - $('#drag'+completedWords[totalCounter-2]).hide(); - $('#drag'+completedWords[totalCounter-1]).hide(); - } - $('#drop0').html('----------'); - $('#drop1').html('----------'); - $('#drop2').html('------------'); - }; - var check_answers = function(){ - var flag_correct = 0; - var secStart = sectionNum * 10; - var secStop = (sectionNum+1) * 10; - for( i = secStart ; i<secStop; i++){ - var fstSyllable = $('#drag'+fstSyllableId).text(); - var secondSyllable = $('#drag'+secondSyllableId).text(); - if(fstSyllable === syllableWord1[i] && secondSyllable === syllableWord2[i]){ - k.audio.correct.play(); - $('#drop2').html(fstSyllable+secondSyllable); - totalCounter += 2; - completedWords[totalCounter-2] = fstSyllableId; - completedWords[totalCounter-1] = secondSyllableId; - flag_correct = 1; - correctCounter++; - //check with timer and populate the side bar - //if done within 10 seconds - currentBlock = 1; - assignBuildBlocks(); - playerCounter++; - checked = 1; - t=setTimeout(function(){delay_correct();},1000); - } - } - if(flag_correct === 0){ //rearrange them - checked = 0; - k.audio.incorrect.play(); - $('#drop2').html('Not a Valid Word'); - currentBlock = 0; - assignBuildBlocks(); - compCounter++; - t=setTimeout(function(){delay_correct();},1000); - } - - }; - - var assignSyllableWords = function(sId){ - if(sId<10){ - sysId = sId+(10*sectionNum); - $('#container').append('<div id="drag'+sId+'" >'+syllableWord1[sysId]+'</div>'); - } - else{ - sysId = ((10*(sectionNum+2)) - 1)-sId; - $('#container').append('<div id="drag'+sId+'" >'+syllableWord2[sysId]+'</div>'); - } - - var dragObjCss = { - 'float':'left','position':'relative','cursor': 'move','margin': '1em', - 'width':'100px','height':'30px','border': '2px solid black', - 'font':'20px/25px bold Arial,Verdana,Geneva,Helvetica', - 'text-align':'center' - }; - $('#drag'+sId).css(dragObjCss); - $('#drag'+sId).click(function(){ - currentSyllable = $(this).text(); - if(dropNum === 0){ - fstSyllableId = $(this).attr('id'); - fstSyllableId = parseInt(fstSyllableId.substring(4)); - startTimer(); - - } - else{ - secondSyllableId = $(this).attr('id'); - secondSyllableId = parseInt(secondSyllableId.substring(4)); - } - $('#drop'+dropNum).html(currentSyllable); - dropNum++; - if(dropNum === 2){ - dropNum = 0; - resetTimer(); - check_answers(); - } - check_game_over(); - }); - - }; - - var assignDropPlaces = function(drpId){ - $('#joinSyllable').append('<div id="drop'+drpId+'" class="dropObjects"></div>'); - var dropObjCss = { - 'float':'left','width':'100px','height': '45px','margin': '0.5em 0.5em', - 'font':'20px/35px bold Arial,Verdana,Geneva,Helvetica', - 'text-align':'center','color':'#FF00FF' - }; - - if(drpId === 2){ - $('#drop'+drpId).css(dropObjCss).css({'width':'200px'}).html('------------'); - } - else{ - $('#drop'+drpId).css(dropObjCss).html('----------'); - } - }; - - - var next_syllables = function(){ - resetTimer(); - $('#content').removeClass('backOpaque').html(''); - $('#content').append('<div id="left-side"></div>'); - $('#content').append('<div id="main-content"></div>'); - $('#content').append('<div id="right-side"></div>'); - $('#left-side').append('<div id="leftText"></div>'); - $('#leftText').html('Computer Building'); - $('#right-side').append('<div id="rightText"></div>'); - $('#rightText').html('Player Building'); - - - $('#main-content').append('<div id="topText">Join two syllables to make one word</div>'); - $('#main-content').append('<div id="container"></div>'); - $('#main-content').append('<div id="joinSyllable"></div>'); - genRandPosition(); - playerCounter = 0; - compCounter = 0; - for(i = 0; i< 20; i++){ - var randNum = randPositions[i]; - assignSyllableWords(randNum); - } - $('#joinSyllable').html(''); - for(i = 0; i< 3;i++){ - assignDropPlaces(i); - if(i === 0){ - $('#joinSyllable').append('<div class="sign">+</div>'); - } - else if(i === 1){ - $('#joinSyllable').append('<div class="sign">=</div>'); - } - } - for(var i = 0; i< TOTAL_QUES; i++){ - $('#left-side').append('<div id="compBuild'+i+'></div>'); - $('#compBuild'+i).addClass('default'); - $('#right-side').append('<div id="playerBuild'+i+'></div>'); - $('#playerBuild'+i).addClass('default'); - } - - }; - - function game_start(){ - gamePlay = 0; - - - $('#linkNextExercise').hide(); - $('#linkPrevExercise').hide(); - $('#gameOver').hide(); - dropNum = 0; - correctCounter = 0; - totalCounter = 0; - sectionNum = k.rand(0,1); - next_syllables(); - } - - function game(){ - - - $('#linkNextExercise').hide(); - $('#linkPrevExercise').hide(); - $('#gameOver').hide(); - - } - - game(); - - $('#linkNextExercise').click(function(){ - $('#linkNextExercise').hide(); - if(sectionNum === 0){ - sectionNum += 1; - } - else{ - sectionNum -= 1; - } - gamePlay++; - next_syllables(); - }); - $('#linkPrevExercise').click(function(){ - $('#linkPrevExercise').hide(); - if(sectionNum === 0){ - sectionNum += 1; - } - else{ - sectionNum -= 1; - } - gamePlay--; - next_syllables(); - }); - $('#linkStart').click(function(){ - game_start(); - }); - - $('#linkPlayAgain').click(function(){ - game_start(); - }); - $('#linkHelp').mouseover(function(){ - $('#help').slideDown(2000); - }) - .mouseout(function(){ - $('#help').slideUp(2000); - }); - }); //end of k.ready - }); //end of document.read - diff --git a/examples/lessons/6_English_whatsThisLetter/assets/audio/apple.wav b/examples/lessons/6_English_whatsThisLetter/assets/audio/apple.wav Binary files differnew file mode 100755 index 0000000..aa15243 --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/assets/audio/apple.wav diff --git a/examples/lessons/6_English_whatsThisLetter/assets/audio/banana.wav b/examples/lessons/6_English_whatsThisLetter/assets/audio/banana.wav Binary files differnew file mode 100755 index 0000000..5066c59 --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/assets/audio/banana.wav diff --git a/examples/lessons/6_English_whatsThisLetter/assets/audio/boat.wav b/examples/lessons/6_English_whatsThisLetter/assets/audio/boat.wav Binary files differnew file mode 100755 index 0000000..5131b2a --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/assets/audio/boat.wav diff --git a/examples/lessons/6_English_whatsThisLetter/assets/audio/book.wav b/examples/lessons/6_English_whatsThisLetter/assets/audio/book.wav Binary files differnew file mode 100755 index 0000000..dcdb483 --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/assets/audio/book.wav diff --git a/examples/lessons/6_English_whatsThisLetter/assets/audio/bus.wav b/examples/lessons/6_English_whatsThisLetter/assets/audio/bus.wav Binary files differnew file mode 100755 index 0000000..8db7671 --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/assets/audio/bus.wav diff --git a/examples/lessons/6_English_whatsThisLetter/assets/audio/cake.wav b/examples/lessons/6_English_whatsThisLetter/assets/audio/cake.wav Binary files differnew file mode 100755 index 0000000..07e78b6 --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/assets/audio/cake.wav diff --git a/examples/lessons/6_English_whatsThisLetter/assets/audio/car.wav b/examples/lessons/6_English_whatsThisLetter/assets/audio/car.wav Binary files differnew file mode 100755 index 0000000..2733bfc --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/assets/audio/car.wav diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/audio/correct.ogg b/examples/lessons/6_English_whatsThisLetter/assets/audio/correct.ogg Binary files differindex a0d9e3a..a0d9e3a 100755 --- a/examples/lessons/6_English_alphabeticalOrder/assets/audio/correct.ogg +++ b/examples/lessons/6_English_whatsThisLetter/assets/audio/correct.ogg diff --git a/examples/lessons/6_English_whatsThisLetter/assets/audio/cow.wav b/examples/lessons/6_English_whatsThisLetter/assets/audio/cow.wav Binary files differnew file mode 100755 index 0000000..edcece5 --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/assets/audio/cow.wav diff --git a/examples/lessons/6_English_whatsThisLetter/assets/audio/flower.wav b/examples/lessons/6_English_whatsThisLetter/assets/audio/flower.wav Binary files differnew file mode 100755 index 0000000..c8710af --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/assets/audio/flower.wav diff --git a/examples/lessons/6_English_whatsThisLetter/assets/audio/hat.wav b/examples/lessons/6_English_whatsThisLetter/assets/audio/hat.wav Binary files differnew file mode 100755 index 0000000..62ab73e --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/assets/audio/hat.wav diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/audio/incorrect.ogg b/examples/lessons/6_English_whatsThisLetter/assets/audio/incorrect.ogg Binary files differindex 4805e55..4805e55 100755 --- a/examples/lessons/6_English_alphabeticalOrder/assets/audio/incorrect.ogg +++ b/examples/lessons/6_English_whatsThisLetter/assets/audio/incorrect.ogg diff --git a/examples/lessons/6_English_whatsThisLetter/assets/audio/kite.wav b/examples/lessons/6_English_whatsThisLetter/assets/audio/kite.wav Binary files differnew file mode 100755 index 0000000..6d8c65f --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/assets/audio/kite.wav diff --git a/examples/lessons/6_English_whatsThisLetter/assets/audio/lamp.wav b/examples/lessons/6_English_whatsThisLetter/assets/audio/lamp.wav Binary files differnew file mode 100755 index 0000000..d174df3 --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/assets/audio/lamp.wav diff --git a/examples/lessons/6_English_whatsThisLetter/assets/audio/pig.wav b/examples/lessons/6_English_whatsThisLetter/assets/audio/pig.wav Binary files differnew file mode 100755 index 0000000..9b45e34 --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/assets/audio/pig.wav diff --git a/examples/lessons/6_English_whatsThisLetter/assets/audio/pigeon.wav b/examples/lessons/6_English_whatsThisLetter/assets/audio/pigeon.wav Binary files differnew file mode 100755 index 0000000..4146930 --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/assets/audio/pigeon.wav diff --git a/examples/lessons/6_English_whatsThisLetter/assets/audio/rat.wav b/examples/lessons/6_English_whatsThisLetter/assets/audio/rat.wav Binary files differnew file mode 100755 index 0000000..9d8723d --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/assets/audio/rat.wav diff --git a/examples/lessons/6_English_whatsThisLetter/assets/audio/tomato.wav b/examples/lessons/6_English_whatsThisLetter/assets/audio/tomato.wav Binary files differnew file mode 100755 index 0000000..86f1144 --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/assets/audio/tomato.wav diff --git a/examples/lessons/6_English_whatsThisLetter/assets/audio/tree.wav b/examples/lessons/6_English_whatsThisLetter/assets/audio/tree.wav Binary files differnew file mode 100755 index 0000000..3444ed5 --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/assets/audio/tree.wav diff --git a/examples/lessons/6_English_whatsThisLetter/assets/image/ant.png b/examples/lessons/6_English_whatsThisLetter/assets/image/ant.png Binary files differnew file mode 100755 index 0000000..82a26bb --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/ant.png diff --git a/examples/lessons/6_English_whatsThisLetter/assets/image/apple.png b/examples/lessons/6_English_whatsThisLetter/assets/image/apple.png Binary files differnew file mode 100755 index 0000000..a09c8c5 --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/apple.png diff --git a/examples/lessons/6_English_whatsThisLetter/assets/image/banana.png b/examples/lessons/6_English_whatsThisLetter/assets/image/banana.png Binary files differnew file mode 100755 index 0000000..5c1f1a1 --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/banana.png diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/bg_footer.png b/examples/lessons/6_English_whatsThisLetter/assets/image/bg_footer.png Binary files differindex 8982264..8982264 100755 --- a/examples/lessons/6_Maths_parallelLines/assets/image/bg_footer.png +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/bg_footer.png diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/bg_header.png b/examples/lessons/6_English_whatsThisLetter/assets/image/bg_header.png Binary files differindex 98213f7..98213f7 100755 --- a/examples/lessons/6_Maths_parallelLines/assets/image/bg_header.png +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/bg_header.png diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/bg_title_block.png b/examples/lessons/6_English_whatsThisLetter/assets/image/bg_title_block.png Binary files differindex 2c9dacf..2c9dacf 100755 --- a/examples/lessons/6_Maths_parallelLines/assets/image/bg_title_block.png +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/bg_title_block.png diff --git a/examples/lessons/6_English_whatsThisLetter/assets/image/boat.png b/examples/lessons/6_English_whatsThisLetter/assets/image/boat.png Binary files differnew file mode 100755 index 0000000..cc41d58 --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/boat.png diff --git a/examples/lessons/6_English_whatsThisLetter/assets/image/book.png b/examples/lessons/6_English_whatsThisLetter/assets/image/book.png Binary files differnew file mode 100755 index 0000000..ec53795 --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/book.png diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/btn_back.png b/examples/lessons/6_English_whatsThisLetter/assets/image/btn_back.png Binary files differindex d9fbf14..d9fbf14 100755 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/btn_back.png +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/btn_back.png diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/btn_back_hover.png b/examples/lessons/6_English_whatsThisLetter/assets/image/btn_back_hover.png Binary files differindex 0911fcc..0911fcc 100755 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/btn_back_hover.png +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/btn_back_hover.png diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/btn_help.png b/examples/lessons/6_English_whatsThisLetter/assets/image/btn_help.png Binary files differindex 6753e9c..6753e9c 100755 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/btn_help.png +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/btn_help.png diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/btn_help_hover.png b/examples/lessons/6_English_whatsThisLetter/assets/image/btn_help_hover.png Binary files differindex d3ccd92..d3ccd92 100755 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/btn_help_hover.png +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/btn_help_hover.png diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/btn_next.png b/examples/lessons/6_English_whatsThisLetter/assets/image/btn_next.png Binary files differindex 9d70993..9d70993 100755 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/btn_next.png +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/btn_next.png diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/btn_next_hover.png b/examples/lessons/6_English_whatsThisLetter/assets/image/btn_next_hover.png Binary files differindex 2cd4d37..2cd4d37 100755 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/btn_next_hover.png +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/btn_next_hover.png diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/btn_ole.png b/examples/lessons/6_English_whatsThisLetter/assets/image/btn_ole.png Binary files differindex 0e775e9..0e775e9 100755 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/btn_ole.png +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/btn_ole.png diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/btn_ole_hover.png b/examples/lessons/6_English_whatsThisLetter/assets/image/btn_ole_hover.png Binary files differindex c43c5f7..c43c5f7 100755 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/btn_ole_hover.png +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/btn_ole_hover.png diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/btn_play_again.png b/examples/lessons/6_English_whatsThisLetter/assets/image/btn_play_again.png Binary files differindex 3594d18..3594d18 100755 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/btn_play_again.png +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/btn_play_again.png diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/btn_play_again_hover.png b/examples/lessons/6_English_whatsThisLetter/assets/image/btn_play_again_hover.png Binary files differindex ebb8f8c..ebb8f8c 100755 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/btn_play_again_hover.png +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/btn_play_again_hover.png diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/btn_play_again_mouse_down.png b/examples/lessons/6_English_whatsThisLetter/assets/image/btn_play_again_mouse_down.png Binary files differindex 07d6e45..07d6e45 100755 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/btn_play_again_mouse_down.png +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/btn_play_again_mouse_down.png diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/btn_start.png b/examples/lessons/6_English_whatsThisLetter/assets/image/btn_start.png Binary files differindex 32e5f20..32e5f20 100755 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/btn_start.png +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/btn_start.png diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/btn_start_hover.png b/examples/lessons/6_English_whatsThisLetter/assets/image/btn_start_hover.png Binary files differindex 811ce78..811ce78 100755 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/btn_start_hover.png +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/btn_start_hover.png diff --git a/examples/lessons/6_English_alphabeticalOrder/assets/image/btn_start_mouse_down.png b/examples/lessons/6_English_whatsThisLetter/assets/image/btn_start_mouse_down.png Binary files differindex 5acd43b..5acd43b 100755 --- a/examples/lessons/6_English_alphabeticalOrder/assets/image/btn_start_mouse_down.png +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/btn_start_mouse_down.png diff --git a/examples/lessons/6_English_whatsThisLetter/assets/image/bus.png b/examples/lessons/6_English_whatsThisLetter/assets/image/bus.png Binary files differnew file mode 100755 index 0000000..d0db371 --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/bus.png diff --git a/examples/lessons/6_English_whatsThisLetter/assets/image/cake.png b/examples/lessons/6_English_whatsThisLetter/assets/image/cake.png Binary files differnew file mode 100755 index 0000000..569e7fd --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/cake.png diff --git a/examples/lessons/6_English_whatsThisLetter/assets/image/car.png b/examples/lessons/6_English_whatsThisLetter/assets/image/car.png Binary files differnew file mode 100755 index 0000000..72b7a47 --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/car.png diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/cow.png b/examples/lessons/6_English_whatsThisLetter/assets/image/cow.png Binary files differindex 205fd8e..205fd8e 100755 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/cow.png +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/cow.png diff --git a/examples/lessons/6_English_whatsThisLetter/assets/image/flower.png b/examples/lessons/6_English_whatsThisLetter/assets/image/flower.png Binary files differnew file mode 100755 index 0000000..11ef0e7 --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/flower.png diff --git a/examples/lessons/6_English_whatsThisLetter/assets/image/hat.png b/examples/lessons/6_English_whatsThisLetter/assets/image/hat.png Binary files differnew file mode 100755 index 0000000..691ec6d --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/hat.png diff --git a/examples/lessons/6_English_whatsThisLetter/assets/image/help.png b/examples/lessons/6_English_whatsThisLetter/assets/image/help.png Binary files differnew file mode 100755 index 0000000..2a2ec47 --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/help.png diff --git a/examples/lessons/6_English_whatsThisLetter/assets/image/kite.png b/examples/lessons/6_English_whatsThisLetter/assets/image/kite.png Binary files differnew file mode 100755 index 0000000..c07a545 --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/kite.png diff --git a/examples/lessons/6_English_whatsThisLetter/assets/image/ladybird.png b/examples/lessons/6_English_whatsThisLetter/assets/image/ladybird.png Binary files differnew file mode 100755 index 0000000..5b40810 --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/ladybird.png diff --git a/examples/lessons/6_English_whatsThisLetter/assets/image/lamp.png b/examples/lessons/6_English_whatsThisLetter/assets/image/lamp.png Binary files differnew file mode 100755 index 0000000..ad94f45 --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/lamp.png diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/pig.png b/examples/lessons/6_English_whatsThisLetter/assets/image/pig.png Binary files differindex c523e35..c523e35 100755 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/pig.png +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/pig.png diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/pigeon.png b/examples/lessons/6_English_whatsThisLetter/assets/image/pigeon.png Binary files differindex 6c0edd7..6c0edd7 100755 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/pigeon.png +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/pigeon.png diff --git a/examples/lessons/6_English_whatsThisLetter/assets/image/rat.png b/examples/lessons/6_English_whatsThisLetter/assets/image/rat.png Binary files differnew file mode 100755 index 0000000..44934a4 --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/rat.png diff --git a/examples/lessons/6_English_whatsThisLetter/assets/image/socks.png b/examples/lessons/6_English_whatsThisLetter/assets/image/socks.png Binary files differnew file mode 100755 index 0000000..0e85c41 --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/socks.png diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/title_block_lt.png b/examples/lessons/6_English_whatsThisLetter/assets/image/title_block_lt.png Binary files differindex 4696182..4696182 100755 --- a/examples/lessons/6_Maths_parallelLines/assets/image/title_block_lt.png +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/title_block_lt.png diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/title_block_rt.png b/examples/lessons/6_English_whatsThisLetter/assets/image/title_block_rt.png Binary files differindex 37cc44a..37cc44a 100755 --- a/examples/lessons/6_Maths_parallelLines/assets/image/title_block_rt.png +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/title_block_rt.png diff --git a/examples/lessons/6_English_whatsThisLetter/assets/image/tomato.png b/examples/lessons/6_English_whatsThisLetter/assets/image/tomato.png Binary files differnew file mode 100755 index 0000000..f92c972 --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/tomato.png diff --git a/examples/lessons/6_English_whatsThisLetter/assets/image/tree.png b/examples/lessons/6_English_whatsThisLetter/assets/image/tree.png Binary files differnew file mode 100755 index 0000000..d3df317 --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/assets/image/tree.png diff --git a/examples/lessons/6_English_whatsThisLetter/css/lesson.css b/examples/lessons/6_English_whatsThisLetter/css/lesson.css new file mode 100755 index 0000000..462a640 --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/css/lesson.css @@ -0,0 +1,247 @@ +@CHARSET "UTF-8";
+/****** Page Styles ****/
+
+/* Designed for 1200*900 px screen resolution */
+
+body {
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ font-size: 10pt;
+ margin: 0px;
+ background-color: #FFFFCC;
+}
+#header {
+ background-image: url(../assets/image/bg_header.png);
+ background-repeat: repeat-x;
+ height: 75px;
+ width: 100%;
+ position: absolute;
+ left: 0px;
+ top: 0px;
+}
+#topbtn_left {
+ float: left;
+ height: 60px;
+ width: 60px;
+ padding-top: 6px;
+ padding-left: 15px;
+}
+
+
+ .linkBack{
+ width: 60px; height: 59px;
+ background:url(../assets/image/btn_back.png);
+ }
+ .linkBack:hover{
+ background:url(../assets/image/btn_back_hover.png);
+ }
+
+#lesson_title {
+ float: left;
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ font-size: 16pt;
+ font-weight: bold;
+ color: #FFFFFF;
+ margin-left: 10px;
+ background-image: url(../assets/image/bg_title_block.png);
+}
+#topbtn_right {
+ float: right;
+ height: 60px;
+ width: 60px;
+ padding-top: 6px;
+ padding-right: 15px;
+}
+ #linkHelp{
+ width: 60px; height: 60px;
+ background:url(../assets/image/btn_help.png);
+ }
+ #linkHelp:hover{
+ background:url(../assets/image/btn_help_hover.png);
+ }
+ #linkOle{
+ width: 60px; height: 60px;
+ background:url(../assets/image/btn_ole.png);
+ }
+ #linkOle:hover{
+ background:url(../assets/image/btn_ole_hover.png);
+ }
+ .linkNext{var bindImgCss = {
+ 'float':'left',
+ 'width': '450px',
+ 'height':'40px',
+ 'margin-top':'0.25em',
+ 'text-align':'center',
+ 'padding-bottom':'0.3em'
+ };
+ width: 60px; height: 60px;
+ background:url(../assets/image/btn_next.png);
+ }
+ .linkNext:hover{
+ background:url(../assets/image/btn_next_hover.png);
+ }
+#footer {
+ position:relative;
+ background-image: url(../assets/image/bg_footer.png);
+ background-repeat: repeat-x;
+ height: 75px;
+ width: 100%;
+ left: 0px;
+ bottom: 0px;
+}
+#score_box {
+ float: left;
+ padding-left: 5px;
+ padding-top: 0.7em;
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ color: #FFFF00;
+ font-size: 16pt;
+ font-weight: bold;
+}
+#botbtn_right {
+ float: right;
+ height: 55px;
+ padding-right: 5px;
+ padding-top: 10px;
+}
+ #linkCheck{
+ margin: 1em 3em 0 0;
+ width: 101px; height: 30px;
+ background-image: url(../assets/image/check.png);
+ }
+
+ #linkStart{
+ width: 251px; height: 55px;
+ background:url(../assets/image/btn_start.png);
+ }
+ #linkStart:hover{
+ background:url(../assets/image/btn_start_hover.png);
+ }
+ #linkStart:active{
+ background:url(../assets/image/btn_start_mouse_down.png);
+ }
+ #linkPlayAgain{
+ width: 251px; height: 55px;
+ background:url(../assets/image/btn_play_again.png);
+ }
+ #linkPlayAgain:hover{
+ background:url(../assets/image/btn_play_again_hover.png);
+ }
+ #linkPlayAgain:active{
+ background:url(../assets/image/btn_play_again_mouse_down.png);
+ }
+#linkNextLesson{
+ position:absolute;
+ bottom: 75px;
+ right: 10px;
+}
+#linkPrevLesson{
+ position:absolute;
+ bottom: 75px;
+ left: 10px;
+}
+
+/**** End of the page style ****/
+
+/**** Game Styles ****/
+
+a{
+ color:#FFFFCC;
+}
+#currentTitle{
+ width: 150px;
+ height: 80px;
+ font:25px/30px "Courier New", Courier, monospace;
+ font-weight: bold;
+ color: red;
+}
+#content{
+ position:relative;
+ margin: 0 auto;
+ margin-top: 75px;
+ width: 1198px;
+ height: 560px;
+
+}
+
+ #questionSection{
+ position:absolute;
+ top: 150px;
+ left: 270px;
+ width: 350px;
+ text-align:center;
+ }
+ #question{
+ position:relative;
+ display:block;
+ margin-top: 0.25em;
+ font: 40px Arial, Helvetica, sans-serif;
+ color: #000;
+ }
+ #answers{
+ position:relative;
+ font: 40px Arial, Helvetica, sans-serif;
+ color: #000;
+ text-align:center;
+ }
+
+ input.blankBox{
+ font: 35px Verdana, Geneva, Arial, Helvetica, sans-serif;
+ height:40px;
+ width: 30px;
+ color:red;
+
+ text-align:center;
+ }
+ .focus {
+ /* border: 2px solid #AA88FF;*/
+ background-color: #FFEEAA;
+ }
+ .correct{
+ background-color: #C0F9F3;
+ }
+ .incorrect{
+ background-color: #FFFF00;
+ }
+ .backOpaque{
+ background-color: #A4A4A4;
+ opacity: 0.2;
+ }
+
+#help{
+ display:none;
+ position:absolute;
+ right: 60px;
+ top: 75px;;
+ width: 256px;
+ height: 600px;
+ background:url(../assets/image/help.png);
+ z-index:40;
+}
+
+
+ #gameOver{
+ opacity: 1;
+ display:none;
+ position:absolute;
+ top:45%;
+ left: 30%;
+ color: blue;
+ text-align:center;
+ font : bold 45px/65px Arial Black, Times New Roman;
+ }
+ #gameOverInfo{
+ margin-top: 35px;
+ text-align:center;
+ font: 20px/25px Helvetica, Geneva, Arial, Verdana, sans-serif;
+ font-weight:bold;
+ color:#FF0000;
+
+ }
+ .specialText{
+ margin-top: 1em;
+ font: 20px/25px Helvetica, Geneva, Arial, Verdana, sans-serif;
+ font-weight:bold;
+ color:#FF9900;
+ border-bottom: 2px dotted #CCC;
+
+ }
diff --git a/examples/lessons/6_English_yesNoQuestions/css/ui.scoreboard.css b/examples/lessons/6_English_whatsThisLetter/css/ui.scoreboard.css index 11cdbb5..11cdbb5 100755 --- a/examples/lessons/6_English_yesNoQuestions/css/ui.scoreboard.css +++ b/examples/lessons/6_English_whatsThisLetter/css/ui.scoreboard.css diff --git a/examples/lessons/6_English_whatsThisLetter/index.html b/examples/lessons/6_English_whatsThisLetter/index.html new file mode 100755 index 0000000..feec44a --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/index.html @@ -0,0 +1,42 @@ +<!DOCTYPE html>
+<html>
+<head>
+ <title>Class 6 English What This Letter</title>
+ <meta name="keywords" content="karma,javascript,html5,sugar,sugarlabs,gsoc,ole,nepal" />
+ <link type="text/css" rel="stylesheet" href="css/ui.scoreboard.css" />
+ <link type="text/css" rel="stylesheet" href="css/lesson.css" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <link type="image/ico" rel="icon" href="../../assets/default/image/favicon.ico" />
+ <script type="text/javascript" src="js/jquery-1.4.js"></script>
+ <script type="text/javascript" src="js/ui.core.js"></script>
+ <script type="text/javascript" src="js/ui.scoreboard.js"></script>
+ <script type="text/javascript" src="js/karma.js"></script>
+ <script type="text/javascript" src="js/jquery.watermarkinput.js"></script>
+ <script type="text/javascript" src="js/lesson.js"></script>
+</head>
+<body>
+ <div id="header">
+ <div id="topbtn_left"><a href="#"><div id="linkBackLesson" class="linkBack"></div></a></div>
+ <div id="lesson_title">
+ <img src="assets/image/title_block_lt.png" width="33" height="75" align="absmiddle" />
+ What This Letter <span id="currentTitle"></span>
+ <img src="assets/image/title_block_rt.png" width="33" height="75" align="absmiddle" />
+ </div>
+ <div id="topbtn_right"><a href="#"><div id="linkHelp"></div></a></div>
+ <div id="topbtn_right"><a href="http://olenepal.org"><div id="linkOle"></div></a></div>
+ </div>
+
+ <div id="content"></div>
+ <div id="help"></div>
+ <div id="gameOver"></div>
+ <form name="delayForm">
+ <input type="hidden" name="delayval" size="5">
+ </form>
+
+ <div id="footer">
+ <div id="botbtn_right"><a href="#"><div id="linkPlayAgain"></div></a></div>
+ <div id="botbtn_right"><a href="#"><div id="linkStart"></div></a></div>
+ <div id="score_box"></div>
+ </div>
+</body>
+</html>
diff --git a/examples/lessons/6_English_yesNoQuestions/js/jquery-1.4.js b/examples/lessons/6_English_whatsThisLetter/js/jquery-1.4.js index a448490..a448490 100755 --- a/examples/lessons/6_English_yesNoQuestions/js/jquery-1.4.js +++ b/examples/lessons/6_English_whatsThisLetter/js/jquery-1.4.js diff --git a/examples/lessons/6_English_months/js/jquery.watermarkinput.js b/examples/lessons/6_English_whatsThisLetter/js/jquery.watermarkinput.js index fefa670..fefa670 100755 --- a/examples/lessons/6_English_months/js/jquery.watermarkinput.js +++ b/examples/lessons/6_English_whatsThisLetter/js/jquery.watermarkinput.js diff --git a/examples/lessons/6_English_alphabeticalOrder/js/karma.js b/examples/lessons/6_English_whatsThisLetter/js/karma.js index 03f027b..03f027b 100755 --- a/examples/lessons/6_English_alphabeticalOrder/js/karma.js +++ b/examples/lessons/6_English_whatsThisLetter/js/karma.js diff --git a/examples/lessons/6_English_whatsThisLetter/js/lesson.js b/examples/lessons/6_English_whatsThisLetter/js/lesson.js new file mode 100755 index 0000000..d6860e1 --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/js/lesson.js @@ -0,0 +1,263 @@ +$(document).ready(function(){ + var k = Karma({ + audio: [{'name':'correct','file':'correct.ogg'}, + {'name':'incorrect','file':'incorrect.ogg'}, + {'name':'apple','file':'apple.wav'}, + {'name':'banana','file':'banana.wav'}, + {'name':'boat','file':'boat.wav'}, + {'name':'book','file':'book.wav'}, + {'name':'bus','file':'bus.wav'}, + {'name':'cake','file':'cake.wav'}, + {'name':'car','file':'car.wav'}, + {'name':'cow','file':'cow.wav'}, + {'name':'flower','file':'flower.wav'}, + {'name':'hat','file':'hat.wav'}, + {'name':'kite','file':'kite.wav'}, + {'name':'lamp','file':'lamp.wav'}, + {'name':'pig','file':'pig.wav'}, + {'name':'pigeon','file':'pigeon.wav'}, + {'name':'rat','file':'rat.wav'}, + {'name':'tomato','file':'tomato.wav'}, + {'name':'tree','file':'tree.wav'} + ]}); + + k.ready(function(){ + var i,j,topPos,leftPos; //game is completely based on absolute positioning.... + var TOTAL_QUES = 10; + var TOTAL_OBJECTS = 17; + var randObjects = []; //store only ten random objects among TOTAL_OBJECTS + var randPositions = []; //store the random absolute positions for each object + var randQues = []; //store the turns of the pointer to go i.e questions + var objects = ['apple','banana','boat','book','bus','cake', + 'car','cow','flower','hat','kite','lamp', + 'pig','pigeon','rat','tomato','tree' + ]; + var pointers = ['ladybird','ant']; + var pointer; //which pointer to use + var currentWord; + var randNum; //store the random position of letter in a word + var flag_correct; + + var leftPositions = [-20,185,550,800,1025,-20,185,550,800,1025]; //array to store the left positions + var topPositions = [5,10,50,60,20,350,360,365,240,340]; + var pointerStartTop,pointerStartLeft; + var pointerStopTop,pointerStopLeft; + var currentQuestion,totalCounter,correctCounter; + + var scoreboard = $('#score_box').scoreboard({'layout':'horizontal', + 'winningScore': TOTAL_QUES}); + + var genRandObjects=function (){ + randObjects[0] = k.rand(0,TOTAL_OBJECTS-1); + for(i=1; i<TOTAL_QUES; i++){ + do{ + flag = 0; + randObjects[i] = k.rand(0,TOTAL_OBJECTS-1); + for(j=0; j<i; j++){ + if(randObjects[i] === randObjects[j]){ + flag++; + } + } + }while(flag != 0 ); //end of do while loop + } + }; + + var genRandQues=function (){ + randQues[0] = k.rand(0,TOTAL_QUES-1); + for(i=1; i<TOTAL_QUES; i++){ + do{ + flag = 0; + randQues[i] = k.rand(0,TOTAL_QUES-1); + for(j=0; j<i; j++){ + if(randQues[i] === randQues[j]){ + flag++; + } + } + }while(flag != 0 ); //end of do while loop + } + }; + + var generateAbsolutePositions = function(id,topPos,leftPos){ + var randNumImg = randObjects[id]; + $('#content').append('<div id="pos'+id+'"></div>'); + var objCss = { + 'position':'absolute', + 'top':topPos+'px', + 'left':leftPos+'px' + }; + $('#pos'+id).css(objCss).html('<img src="assets/image/'+objects[randNumImg]+'.png" />'); + }; + + + var showQuestion = function(){ + //alert('show question'); + $('#content').append('<div id="questionSection"></div>'); + $('#questionSection').html('').append('<div id="question">What is this?</div>'); + $('#questionSection').append("<div id='answers'></div>"); + currentWord = objects[randObjects[currentQuestion]]; + $('#answers').append("It's "); + if(currentWord[0] === 'a' || currentWord[0] === 'e' ||currentWord[0] === 'i' || currentWord[0] === 'o' || currentWord[0] === 'u'){ + $('#answers').append('an '); + } else{ + $('#answers').append('a '); + } + $('#answers').append('<span id="word'+currentQuestion+'" class="objectWord"></span>'); + $('#answers').append('.'); + + + var wordLength = currentWord.length; + randNum = k.rand(0,wordLength-1); + //randBoxes[monthId] = randNum; + for(var z = 0; z < wordLength; z++){ + if(z === (randNum)){ + $('#word'+currentQuestion).append('<input type="text" id="box'+currentQuestion+'" class="blankBox" maxlength="1"/>') + $('#box'+currentQuestion).Watermark("?"); + //insert text box + } + else{ + $('#word'+currentQuestion).append(currentWord[z]); + } + } + $('.blankBox').focus(); + foucs_blur(); + + + }; + + var nextQuestion = function(){ + flag_correct = 1; + currentQuestion = randQues[totalCounter]; + if(totalCounter === 0){ + pointerStartLeft = k.rand(10,1000); + pointerStartTop = k.rand(5,500); + } else{ + pointerStartLeft = pointerStopLeft; + pointerStartTop = pointerStopTop; + } + pointerStopLeft = leftPositions[currentQuestion]+70; + pointerStopTop = topPositions[currentQuestion]+70; + + $('#content').append('<div id="wordPointer"></div>'); + + var wordPointerCss = { + 'position':'absolute', + 'top':pointerStartTop+'px', + 'left':pointerStartLeft+'px', + 'background-color':'#F5F29E' + }; + $('#wordPointer').css(wordPointerCss).addClass('pointerBg').html('<img src="assets/image/'+pointers[pointer]+'.png" />'); + $('#wordPointer').animate( + {top:pointerStopTop+'px',left:pointerStopLeft+'px'},2000, + function(ev){ //callback function after the animation is complete + //alert('animation complete'); + showQuestion(); + } + ); + + }; + + function game(){ + $('#gameOver').hide(); + $('#content').removeClass('backOpaque'); + correctCounter = 0; + totalCounter = 0; + genRandQues(); + genRandObjects(); + pointer = k.rand(0,1); + + //Generate the fixed absolute positions for the random images + for(i = 0; i<leftPositions.length;i++){ + generateAbsolutePositions(i,topPositions[i],leftPositions[i]); + } + + nextQuestion(); + } + + $('#linkStart').click(function(){ + scoreboard.scoreboard('reset'); + game(); + }); + + $('#linkPlayAgain').click(function(){ + scoreboard.scoreboard('reset'); + game(); + }); + + var delay_gameOver = function(){ + document.delayForm.delayval.value = 1; + $('#questionSection').html(''); + $('#pos'+currentQuestion).html(''); + $('#content').addClass('backOpaque'); + $('#gameOver').show(); + $('#gameOver').html(''); + $('#gameOver').append('Game Over !!!'); + $('#gameOver').append('<div id="gameOverInfo">You got <span class="specialText">'+correctCounter+ + '</span> correct out of <span class="specialText">'+totalCounter+'</span> questions .</div>'); + + }; + + var delay_nextQues = function(){ + document.delayForm.delayval.value = 1; + $('#questionSection').html(''); + $('#pos'+currentQuestion).html(''); + nextQuestion(); + }; + + + var checkAnswer = function(){ + + if(currentWord[randNum] === $('.blankBox').val()){ + $('.blankBox').addClass("correct"); + if(flag_correct === 1){ + correctCounter++; + scoreboard.scoreboard('inc'); + } + k.audio[currentWord].play(); + totalCounter++; + scoreboard.scoreboard('incTotal'); + + if(totalCounter === TOTAL_QUES){ + t=setTimeout(function(){delay_gameOver();},1000); + } + else{ + + t=setTimeout(function(){delay_nextQues();},1000); + + } + } + else{ //incorrect + flag_correct = 0; + $('.blankBox').addClass("incorrect"); + k.audio.incorrect.play(); + + } + }; + + function foucs_blur(){ + $('input[type="text"]').bind({ + focus: function() { + $(this).removeClass('correct').removeClass('incorrect').addClass("focus"); + }, + blur: function(){ + $(this).removeClass("focus"); + }, + keypress: function(event) { + if(event.which === 13){ + checkAnswer(); + } + } + }); + } + + $('#linkHelp').mouseover(function(){ + $('#help').slideDown(2000); + }) + .mouseout(function(){ + $('#help').slideUp(2000); + }); + + + }); //end of k.ready +}); //end of document.read + + diff --git a/examples/lessons/6_English_whatsThisLetter/js/lesson.js~ b/examples/lessons/6_English_whatsThisLetter/js/lesson.js~ new file mode 100755 index 0000000..9c6e892 --- /dev/null +++ b/examples/lessons/6_English_whatsThisLetter/js/lesson.js~ @@ -0,0 +1,259 @@ +$(document).ready(function(){ + var k = Karma({ + audio: [{'name':'correct','file':'correct.ogg'}, + {'name':'incorrect','file':'incorrect.ogg'}, + {'name':'apple','file':'apple.wav'}, + {'name':'banana','file':'banana.wav'}, + {'name':'boat','file':'boat.wav'}, + {'name':'book','file':'book.wav'}, + {'name':'bus','file':'bus.wav'}, + {'name':'cake','file':'cake.wav'}, + {'name':'car','file':'car.wav'}, + {'name':'cow','file':'cow.wav'}, + {'name':'flower','file':'flower.wav'}, + {'name':'hat','file':'hat.wav'}, + {'name':'kite','file':'kite.wav'}, + {'name':'lamp','file':'lamp.wav'}, + {'name':'pig','file':'pig.wav'}, + {'name':'pigeon','file':'pigeon.wav'}, + {'name':'rat','file':'rat.wav'}, + {'name':'tomato','file':'tomato.wav'}, + {'name':'tree','file':'tree.wav'} + ]}); + + k.ready(function(){ + var i,j,topPos,leftPos; //game is completely based on absolute positioning.... + var TOTAL_QUES = 10; + var TOTAL_OBJECTS = 17; + var randObjects = []; //store only ten random objects among TOTAL_OBJECTS + var randPositions = []; //store the random absolute positions for each object + var randQues = []; //store the turns of the pointer to go i.e questions + var objects = ['apple','banana','boat','book','bus','cake', + 'car','cow','flower','hat','kite','lamp', + 'pig','pigeon','rat','tomato','tree' + ]; + var pointers = ['ladybird','ant']; + var pointer; //which pointer to use + var currentWord; + var randNum; //store the random position of letter in a word + var flag_correct; + + var leftPositions = [-20,185,550,800,1025,-20,185,550,800,1025]; //array to store the left positions + var topPositions = [5,10,50,60,20,350,360,365,240,340]; + var pointerStartTop,pointerStartLeft; + var pointerStopTop,pointerStopLeft; + var currentQuestion,totalCounter,correctCounter; + + var scoreboard = $('#score_box').scoreboard({'layout':'horizontal', + 'winningScore': TOTAL_QUES}); + + var genRandObjects=function (){ + randObjects[0] = k.rand(0,TOTAL_OBJECTS-1); + for(i=1; i<TOTAL_QUES; i++){ + do{ + flag = 0; + randObjects[i] = k.rand(0,TOTAL_OBJECTS-1); + for(j=0; j<i; j++){ + if(randObjects[i] === randObjects[j]){ + flag++; + } + } + }while(flag != 0 ); //end of do while loop + } + }; + + var genRandQues=function (){ + randQues[0] = k.rand(0,TOTAL_QUES-1); + for(i=1; i<TOTAL_QUES; i++){ + do{ + flag = 0; + randQues[i] = k.rand(0,TOTAL_QUES-1); + for(j=0; j<i; j++){ + if(randQues[i] === randQues[j]){ + flag++; + } + } + }while(flag != 0 ); //end of do while loop + } + }; + + var generateAbsolutePositions = function(id,topPos,leftPos){ + var randNumImg = randObjects[id]; + $('#content').append('<div id="pos'+id+'"></div>'); + var objCss = { + 'position':'absolute', + 'top':topPos+'px', + 'left':leftPos+'px' + }; + $('#pos'+id).css(objCss).html('<img src="assets/image/'+objects[randNumImg]+'.png" />'); + }; + + + var showQuestion = function(){ + //alert('show question'); + $('#content').append('<div id="questionSection"></div>'); + $('#questionSection').html('').append('<div id="question">What is this?</div>'); + $('#questionSection').append("<div id='answers'></div>"); + currentWord = objects[randObjects[currentQuestion]]; + $('#answers').append("It's "); + if(currentWord[0] === 'a' || currentWord[0] === 'e' ||currentWord[0] === 'i' || currentWord[0] === 'o' || currentWord[0] === 'u'){ + $('#answers').append('an '); + } else{ + $('#answers').append('a '); + } + $('#answers').append('<span id="word'+currentQuestion+'" class="objectWord"></span>'); + $('#answers').append('.'); + + + var wordLength = currentWord.length; + randNum = k.rand(0,wordLength-1); + //randBoxes[monthId] = randNum; + for(var z = 0; z < wordLength; z++){ + if(z === (randNum)){ + $('#word'+currentQuestion).append('<input type="text" id="box'+currentQuestion+'" class="blankBox" maxlength="1"/>') + $('#box'+currentQuestion).Watermark("?"); + //insert text box + } + else{ + $('#word'+currentQuestion).append(currentWord[z]); + } + } + $('.blankBox').focus(); + foucs_blur(); + + + }; + + var nextQuestion = function(){ + flag_correct = 1; + currentQuestion = randQues[totalCounter]; + if(totalCounter === 0){ + pointerStartLeft = k.rand(10,1000); + pointerStartTop = k.rand(5,500); + } else{ + pointerStartLeft = pointerStopLeft; + pointerStartTop = pointerStopTop; + } + pointerStopLeft = leftPositions[currentQuestion]+70; + pointerStopTop = topPositions[currentQuestion]+70; + + $('#content').append('<div id="wordPointer"></div>'); + + var wordPointerCss = { + 'position':'absolute', + 'top':pointerStartTop+'px', + 'left':pointerStartLeft+'px', + 'background-color':'#F5F29E' + }; + $('#wordPointer').css(wordPointerCss).addClass('pointerBg').html('<img src="assets/image/'+pointers[pointer]+'.png" />'); + $('#wordPointer').animate( + {top:pointerStopTop+'px',left:pointerStopLeft+'px'},2000, + function(ev){ //callback function after the animation is complete + //alert('animation complete'); + showQuestion(); + } + ); + + }; + + function game(){ + $('#gameOver').hide(); + $('#content').removeClass('backOpaque'); + correctCounter = 0; + totalCounter = 0; + genRandQues(); + genRandObjects(); + pointer = k.rand(0,1); + + //Generate the fixed absolute positions for the random images + for(i = 0; i<leftPositions.length;i++){ + generateAbsolutePositions(i,topPositions[i],leftPositions[i]); + } + + nextQuestion(); + } + + $('#linkStart').click(function(){ + game(); + }); + + $('#linkPlayAgain').click(function(){ + game(); + }); + + var delay_gameOver = function(){ + document.delayForm.delayval.value = 1; + $('#content').addClass('backOpaque'); + $('#gameOver').show(); + $('#gameOver').html(''); + $('#gameOver').append('Game Over !!!'); + $('#gameOver').append('<div id="gameOverInfo">You got <span class="specialText">'+correctCounter+ + '</span> correct out of <span class="specialText">'+totalCounter+'</span> questions .</div>'); + + }; + + var delay_nextQues = function(){ + document.delayForm.delayval.value = 1; + $('#questionSection').html(''); + $('#pos'+currentQuestion).html(''); + nextQuestion(); + }; + + + var checkAnswer = function(){ + + if(currentWord[randNum] === $('.blankBox').val()){ + $('.blankBox').addClass("correct"); + if(flag_correct === 1){ + correctCounter++; + scoreboard.scoreboard('inc'); + } + k.audio[currentWord].play(); + totalCounter++; + scoreboard.scoreboard('incTotal'); + + if(totalCounter === TOTAL_QUES){ + t=setTimeout(function(){delay_gameOver();},1000); + } + else{ + + t=setTimeout(function(){delay_nextQues();},1000); + + } + } + else{ //incorrect + flag_correct = 0; + $('.blankBox').addClass("incorrect"); + k.audio.incorrect.play(); + + } + }; + + function foucs_blur(){ + $('input[type="text"]').bind({ + focus: function() { + $(this).removeClass('correct').removeClass('incorrect').addClass("focus"); + }, + blur: function(){ + $(this).removeClass("focus"); + }, + keypress: function(event) { + if(event.which === 13){ + checkAnswer(); + } + } + }); + } + + $('#linkHelp').mouseover(function(){ + $('#help').slideDown(2000); + }) + .mouseout(function(){ + $('#help').slideUp(2000); + }); + + + }); //end of k.ready +}); //end of document.read + + diff --git a/examples/lessons/6_English_alphabeticalOrder/js/ui.core.js b/examples/lessons/6_English_whatsThisLetter/js/ui.core.js index 5493e0a..5493e0a 100755 --- a/examples/lessons/6_English_alphabeticalOrder/js/ui.core.js +++ b/examples/lessons/6_English_whatsThisLetter/js/ui.core.js diff --git a/examples/lessons/6_English_yesNoQuestions/js/ui.scoreboard.js b/examples/lessons/6_English_whatsThisLetter/js/ui.scoreboard.js index 53a930a..53a930a 100755 --- a/examples/lessons/6_English_yesNoQuestions/js/ui.scoreboard.js +++ b/examples/lessons/6_English_whatsThisLetter/js/ui.scoreboard.js diff --git a/examples/lessons/6_English_whatsThisWord/assets/audio/apple.wav b/examples/lessons/6_English_whatsThisWord/assets/audio/apple.wav Binary files differnew file mode 100755 index 0000000..aa15243 --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/assets/audio/apple.wav diff --git a/examples/lessons/6_English_whatsThisWord/assets/audio/banana.wav b/examples/lessons/6_English_whatsThisWord/assets/audio/banana.wav Binary files differnew file mode 100755 index 0000000..5066c59 --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/assets/audio/banana.wav diff --git a/examples/lessons/6_English_whatsThisWord/assets/audio/boat.wav b/examples/lessons/6_English_whatsThisWord/assets/audio/boat.wav Binary files differnew file mode 100755 index 0000000..5131b2a --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/assets/audio/boat.wav diff --git a/examples/lessons/6_English_whatsThisWord/assets/audio/book.wav b/examples/lessons/6_English_whatsThisWord/assets/audio/book.wav Binary files differnew file mode 100755 index 0000000..dcdb483 --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/assets/audio/book.wav diff --git a/examples/lessons/6_English_whatsThisWord/assets/audio/bus.wav b/examples/lessons/6_English_whatsThisWord/assets/audio/bus.wav Binary files differnew file mode 100755 index 0000000..8db7671 --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/assets/audio/bus.wav diff --git a/examples/lessons/6_English_whatsThisWord/assets/audio/cake.wav b/examples/lessons/6_English_whatsThisWord/assets/audio/cake.wav Binary files differnew file mode 100755 index 0000000..07e78b6 --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/assets/audio/cake.wav diff --git a/examples/lessons/6_English_whatsThisWord/assets/audio/car.wav b/examples/lessons/6_English_whatsThisWord/assets/audio/car.wav Binary files differnew file mode 100755 index 0000000..2733bfc --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/assets/audio/car.wav diff --git a/examples/lessons/6_English_months/assets/audio/correct.ogg b/examples/lessons/6_English_whatsThisWord/assets/audio/correct.ogg Binary files differindex a0d9e3a..a0d9e3a 100755 --- a/examples/lessons/6_English_months/assets/audio/correct.ogg +++ b/examples/lessons/6_English_whatsThisWord/assets/audio/correct.ogg diff --git a/examples/lessons/6_English_whatsThisWord/assets/audio/cow.wav b/examples/lessons/6_English_whatsThisWord/assets/audio/cow.wav Binary files differnew file mode 100755 index 0000000..edcece5 --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/assets/audio/cow.wav diff --git a/examples/lessons/6_English_whatsThisWord/assets/audio/flower.wav b/examples/lessons/6_English_whatsThisWord/assets/audio/flower.wav Binary files differnew file mode 100755 index 0000000..c8710af --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/assets/audio/flower.wav diff --git a/examples/lessons/6_English_whatsThisWord/assets/audio/hat.wav b/examples/lessons/6_English_whatsThisWord/assets/audio/hat.wav Binary files differnew file mode 100755 index 0000000..62ab73e --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/assets/audio/hat.wav diff --git a/examples/lessons/6_English_months/assets/audio/incorrect.ogg b/examples/lessons/6_English_whatsThisWord/assets/audio/incorrect.ogg Binary files differindex 4805e55..4805e55 100755 --- a/examples/lessons/6_English_months/assets/audio/incorrect.ogg +++ b/examples/lessons/6_English_whatsThisWord/assets/audio/incorrect.ogg diff --git a/examples/lessons/6_English_whatsThisWord/assets/audio/kite.wav b/examples/lessons/6_English_whatsThisWord/assets/audio/kite.wav Binary files differnew file mode 100755 index 0000000..6d8c65f --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/assets/audio/kite.wav diff --git a/examples/lessons/6_English_whatsThisWord/assets/audio/lamp.wav b/examples/lessons/6_English_whatsThisWord/assets/audio/lamp.wav Binary files differnew file mode 100755 index 0000000..d174df3 --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/assets/audio/lamp.wav diff --git a/examples/lessons/6_English_whatsThisWord/assets/audio/pig.wav b/examples/lessons/6_English_whatsThisWord/assets/audio/pig.wav Binary files differnew file mode 100755 index 0000000..9b45e34 --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/assets/audio/pig.wav diff --git a/examples/lessons/6_English_whatsThisWord/assets/audio/pigeon.wav b/examples/lessons/6_English_whatsThisWord/assets/audio/pigeon.wav Binary files differnew file mode 100755 index 0000000..4146930 --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/assets/audio/pigeon.wav diff --git a/examples/lessons/6_English_whatsThisWord/assets/audio/rat.wav b/examples/lessons/6_English_whatsThisWord/assets/audio/rat.wav Binary files differnew file mode 100755 index 0000000..9d8723d --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/assets/audio/rat.wav diff --git a/examples/lessons/6_English_whatsThisWord/assets/audio/tomato.wav b/examples/lessons/6_English_whatsThisWord/assets/audio/tomato.wav Binary files differnew file mode 100755 index 0000000..86f1144 --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/assets/audio/tomato.wav diff --git a/examples/lessons/6_English_whatsThisWord/assets/audio/tree.wav b/examples/lessons/6_English_whatsThisWord/assets/audio/tree.wav Binary files differnew file mode 100755 index 0000000..3444ed5 --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/assets/audio/tree.wav diff --git a/examples/lessons/6_English_whatsThisWord/assets/image/ant.png b/examples/lessons/6_English_whatsThisWord/assets/image/ant.png Binary files differnew file mode 100755 index 0000000..82a26bb --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/assets/image/ant.png diff --git a/examples/lessons/6_English_whatsThisWord/assets/image/apple.png b/examples/lessons/6_English_whatsThisWord/assets/image/apple.png Binary files differnew file mode 100755 index 0000000..a09c8c5 --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/assets/image/apple.png diff --git a/examples/lessons/6_English_whatsThisWord/assets/image/banana.png b/examples/lessons/6_English_whatsThisWord/assets/image/banana.png Binary files differnew file mode 100755 index 0000000..5c1f1a1 --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/assets/image/banana.png diff --git a/examples/lessons/6_English_syllables/assets/image/bg_footer.png b/examples/lessons/6_English_whatsThisWord/assets/image/bg_footer.png Binary files differindex 8982264..8982264 100755 --- a/examples/lessons/6_English_syllables/assets/image/bg_footer.png +++ b/examples/lessons/6_English_whatsThisWord/assets/image/bg_footer.png diff --git a/examples/lessons/6_English_syllables/assets/image/bg_header.png b/examples/lessons/6_English_whatsThisWord/assets/image/bg_header.png Binary files differindex 98213f7..98213f7 100755 --- a/examples/lessons/6_English_syllables/assets/image/bg_header.png +++ b/examples/lessons/6_English_whatsThisWord/assets/image/bg_header.png diff --git a/examples/lessons/6_English_syllables/assets/image/bg_title_block.png b/examples/lessons/6_English_whatsThisWord/assets/image/bg_title_block.png Binary files differindex 2c9dacf..2c9dacf 100755 --- a/examples/lessons/6_English_syllables/assets/image/bg_title_block.png +++ b/examples/lessons/6_English_whatsThisWord/assets/image/bg_title_block.png diff --git a/examples/lessons/6_English_whatsThisWord/assets/image/boat.png b/examples/lessons/6_English_whatsThisWord/assets/image/boat.png Binary files differnew file mode 100755 index 0000000..cc41d58 --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/assets/image/boat.png diff --git a/examples/lessons/6_English_whatsThisWord/assets/image/book.png b/examples/lessons/6_English_whatsThisWord/assets/image/book.png Binary files differnew file mode 100755 index 0000000..ec53795 --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/assets/image/book.png diff --git a/examples/lessons/6_English_months/assets/image/btn_back.png b/examples/lessons/6_English_whatsThisWord/assets/image/btn_back.png Binary files differindex d9fbf14..d9fbf14 100755 --- a/examples/lessons/6_English_months/assets/image/btn_back.png +++ b/examples/lessons/6_English_whatsThisWord/assets/image/btn_back.png diff --git a/examples/lessons/6_English_months/assets/image/btn_back_hover.png b/examples/lessons/6_English_whatsThisWord/assets/image/btn_back_hover.png Binary files differindex 0911fcc..0911fcc 100755 --- a/examples/lessons/6_English_months/assets/image/btn_back_hover.png +++ b/examples/lessons/6_English_whatsThisWord/assets/image/btn_back_hover.png diff --git a/examples/lessons/6_English_months/assets/image/btn_help.png b/examples/lessons/6_English_whatsThisWord/assets/image/btn_help.png Binary files differindex 6753e9c..6753e9c 100755 --- a/examples/lessons/6_English_months/assets/image/btn_help.png +++ b/examples/lessons/6_English_whatsThisWord/assets/image/btn_help.png diff --git a/examples/lessons/6_English_months/assets/image/btn_help_hover.png b/examples/lessons/6_English_whatsThisWord/assets/image/btn_help_hover.png Binary files differindex d3ccd92..d3ccd92 100755 --- a/examples/lessons/6_English_months/assets/image/btn_help_hover.png +++ b/examples/lessons/6_English_whatsThisWord/assets/image/btn_help_hover.png diff --git a/examples/lessons/6_English_months/assets/image/btn_next.png b/examples/lessons/6_English_whatsThisWord/assets/image/btn_next.png Binary files differindex 9d70993..9d70993 100755 --- a/examples/lessons/6_English_months/assets/image/btn_next.png +++ b/examples/lessons/6_English_whatsThisWord/assets/image/btn_next.png diff --git a/examples/lessons/6_English_months/assets/image/btn_next_hover.png b/examples/lessons/6_English_whatsThisWord/assets/image/btn_next_hover.png Binary files differindex 2cd4d37..2cd4d37 100755 --- a/examples/lessons/6_English_months/assets/image/btn_next_hover.png +++ b/examples/lessons/6_English_whatsThisWord/assets/image/btn_next_hover.png diff --git a/examples/lessons/6_English_months/assets/image/btn_ole.png b/examples/lessons/6_English_whatsThisWord/assets/image/btn_ole.png Binary files differindex 0e775e9..0e775e9 100755 --- a/examples/lessons/6_English_months/assets/image/btn_ole.png +++ b/examples/lessons/6_English_whatsThisWord/assets/image/btn_ole.png diff --git a/examples/lessons/6_English_months/assets/image/btn_ole_hover.png b/examples/lessons/6_English_whatsThisWord/assets/image/btn_ole_hover.png Binary files differindex c43c5f7..c43c5f7 100755 --- a/examples/lessons/6_English_months/assets/image/btn_ole_hover.png +++ b/examples/lessons/6_English_whatsThisWord/assets/image/btn_ole_hover.png diff --git a/examples/lessons/6_English_months/assets/image/btn_play_again.png b/examples/lessons/6_English_whatsThisWord/assets/image/btn_play_again.png Binary files differindex 3594d18..3594d18 100755 --- a/examples/lessons/6_English_months/assets/image/btn_play_again.png +++ b/examples/lessons/6_English_whatsThisWord/assets/image/btn_play_again.png diff --git a/examples/lessons/6_English_months/assets/image/btn_play_again_hover.png b/examples/lessons/6_English_whatsThisWord/assets/image/btn_play_again_hover.png Binary files differindex ebb8f8c..ebb8f8c 100755 --- a/examples/lessons/6_English_months/assets/image/btn_play_again_hover.png +++ b/examples/lessons/6_English_whatsThisWord/assets/image/btn_play_again_hover.png diff --git a/examples/lessons/6_English_months/assets/image/btn_play_again_mouse_down.png b/examples/lessons/6_English_whatsThisWord/assets/image/btn_play_again_mouse_down.png Binary files differindex 07d6e45..07d6e45 100755 --- a/examples/lessons/6_English_months/assets/image/btn_play_again_mouse_down.png +++ b/examples/lessons/6_English_whatsThisWord/assets/image/btn_play_again_mouse_down.png diff --git a/examples/lessons/6_English_months/assets/image/btn_start.png b/examples/lessons/6_English_whatsThisWord/assets/image/btn_start.png Binary files differindex 32e5f20..32e5f20 100755 --- a/examples/lessons/6_English_months/assets/image/btn_start.png +++ b/examples/lessons/6_English_whatsThisWord/assets/image/btn_start.png diff --git a/examples/lessons/6_English_months/assets/image/btn_start_hover.png b/examples/lessons/6_English_whatsThisWord/assets/image/btn_start_hover.png Binary files differindex 811ce78..811ce78 100755 --- a/examples/lessons/6_English_months/assets/image/btn_start_hover.png +++ b/examples/lessons/6_English_whatsThisWord/assets/image/btn_start_hover.png diff --git a/examples/lessons/6_English_months/assets/image/btn_start_mouse_down.png b/examples/lessons/6_English_whatsThisWord/assets/image/btn_start_mouse_down.png Binary files differindex 5acd43b..5acd43b 100755 --- a/examples/lessons/6_English_months/assets/image/btn_start_mouse_down.png +++ b/examples/lessons/6_English_whatsThisWord/assets/image/btn_start_mouse_down.png diff --git a/examples/lessons/6_English_whatsThisWord/assets/image/bus.png b/examples/lessons/6_English_whatsThisWord/assets/image/bus.png Binary files differnew file mode 100755 index 0000000..d0db371 --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/assets/image/bus.png diff --git a/examples/lessons/6_English_whatsThisWord/assets/image/cake.png b/examples/lessons/6_English_whatsThisWord/assets/image/cake.png Binary files differnew file mode 100755 index 0000000..569e7fd --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/assets/image/cake.png diff --git a/examples/lessons/6_English_whatsThisWord/assets/image/car.png b/examples/lessons/6_English_whatsThisWord/assets/image/car.png Binary files differnew file mode 100755 index 0000000..72b7a47 --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/assets/image/car.png diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/cow.png b/examples/lessons/6_English_whatsThisWord/assets/image/cow.png Binary files differindex 205fd8e..205fd8e 100755 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/cow.png +++ b/examples/lessons/6_English_whatsThisWord/assets/image/cow.png diff --git a/examples/lessons/6_English_whatsThisWord/assets/image/flower.png b/examples/lessons/6_English_whatsThisWord/assets/image/flower.png Binary files differnew file mode 100755 index 0000000..11ef0e7 --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/assets/image/flower.png diff --git a/examples/lessons/6_English_whatsThisWord/assets/image/hat.png b/examples/lessons/6_English_whatsThisWord/assets/image/hat.png Binary files differnew file mode 100755 index 0000000..691ec6d --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/assets/image/hat.png diff --git a/examples/lessons/6_English_whatsThisWord/assets/image/help.png b/examples/lessons/6_English_whatsThisWord/assets/image/help.png Binary files differnew file mode 100755 index 0000000..d8bb5c3 --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/assets/image/help.png diff --git a/examples/lessons/6_English_whatsThisWord/assets/image/kite.png b/examples/lessons/6_English_whatsThisWord/assets/image/kite.png Binary files differnew file mode 100755 index 0000000..c07a545 --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/assets/image/kite.png diff --git a/examples/lessons/6_English_whatsThisWord/assets/image/ladybird.png b/examples/lessons/6_English_whatsThisWord/assets/image/ladybird.png Binary files differnew file mode 100755 index 0000000..5b40810 --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/assets/image/ladybird.png diff --git a/examples/lessons/6_English_whatsThisWord/assets/image/lamp.png b/examples/lessons/6_English_whatsThisWord/assets/image/lamp.png Binary files differnew file mode 100755 index 0000000..ad94f45 --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/assets/image/lamp.png diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/pigeon.png b/examples/lessons/6_English_whatsThisWord/assets/image/piegon.png Binary files differindex 6c0edd7..6c0edd7 100755 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/pigeon.png +++ b/examples/lessons/6_English_whatsThisWord/assets/image/piegon.png diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/pig.png b/examples/lessons/6_English_whatsThisWord/assets/image/pig.png Binary files differindex c523e35..c523e35 100755 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/pig.png +++ b/examples/lessons/6_English_whatsThisWord/assets/image/pig.png diff --git a/examples/lessons/6_English_whatsThisWord/assets/image/rat.png b/examples/lessons/6_English_whatsThisWord/assets/image/rat.png Binary files differnew file mode 100755 index 0000000..44934a4 --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/assets/image/rat.png diff --git a/examples/lessons/6_English_whatsThisWord/assets/image/socks.png b/examples/lessons/6_English_whatsThisWord/assets/image/socks.png Binary files differnew file mode 100755 index 0000000..0e85c41 --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/assets/image/socks.png diff --git a/examples/lessons/6_English_syllables/assets/image/title_block_lt.png b/examples/lessons/6_English_whatsThisWord/assets/image/title_block_lt.png Binary files differindex 4696182..4696182 100755 --- a/examples/lessons/6_English_syllables/assets/image/title_block_lt.png +++ b/examples/lessons/6_English_whatsThisWord/assets/image/title_block_lt.png diff --git a/examples/lessons/6_English_syllables/assets/image/title_block_rt.png b/examples/lessons/6_English_whatsThisWord/assets/image/title_block_rt.png Binary files differindex 37cc44a..37cc44a 100755 --- a/examples/lessons/6_English_syllables/assets/image/title_block_rt.png +++ b/examples/lessons/6_English_whatsThisWord/assets/image/title_block_rt.png diff --git a/examples/lessons/6_English_whatsThisWord/assets/image/tomato.png b/examples/lessons/6_English_whatsThisWord/assets/image/tomato.png Binary files differnew file mode 100755 index 0000000..f92c972 --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/assets/image/tomato.png diff --git a/examples/lessons/6_English_whatsThisWord/assets/image/tree.png b/examples/lessons/6_English_whatsThisWord/assets/image/tree.png Binary files differnew file mode 100755 index 0000000..d3df317 --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/assets/image/tree.png diff --git a/examples/lessons/6_English_whatsThisWord/css/lesson.css b/examples/lessons/6_English_whatsThisWord/css/lesson.css new file mode 100755 index 0000000..764a204 --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/css/lesson.css @@ -0,0 +1,247 @@ +@CHARSET "UTF-8";
+/****** Page Styles ****/
+
+/* Designed for 1200*900 px screen resolution */
+
+body {
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ font-size: 10pt;
+ margin: 0px;
+ background-color: #FFFFCC;
+}
+#header {
+ background-image: url(../assets/image/bg_header.png);
+ background-repeat: repeat-x;
+ height: 75px;
+ width: 100%;
+ position: absolute;
+ left: 0px;
+ top: 0px;
+}
+#topbtn_left {
+ float: left;
+ height: 60px;
+ width: 60px;
+ padding-top: 6px;
+ padding-left: 15px;
+}
+
+
+ .linkBack{
+ width: 60px; height: 59px;
+ background:url(../assets/image/btn_back.png);
+ }
+ .linkBack:hover{
+ background:url(../assets/image/btn_back_hover.png);
+ }
+
+#lesson_title {
+ float: left;
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ font-size: 16pt;
+ font-weight: bold;
+ color: #FFFFFF;
+ margin-left: 10px;
+ background-image: url(../assets/image/bg_title_block.png);
+}
+#topbtn_right {
+ float: right;
+ height: 60px;
+ width: 60px;
+ padding-top: 6px;
+ padding-right: 15px;
+}
+ #linkHelp{
+ width: 60px; height: 60px;
+ background:url(../assets/image/btn_help.png);
+ }
+ #linkHelp:hover{
+ background:url(../assets/image/btn_help_hover.png);
+ }
+ #linkOle{
+ width: 60px; height: 60px;
+ background:url(../assets/image/btn_ole.png);
+ }
+ #linkOle:hover{
+ background:url(../assets/image/btn_ole_hover.png);
+ }
+ .linkNext{var bindImgCss = {
+ 'float':'left',
+ 'width': '450px',
+ 'height':'40px',
+ 'margin-top':'0.25em',
+ 'text-align':'center',
+ 'padding-bottom':'0.3em'
+ };
+ width: 60px; height: 60px;
+ background:url(../assets/image/btn_next.png);
+ }
+ .linkNext:hover{
+ background:url(../assets/image/btn_next_hover.png);
+ }
+#footer {
+ position:relative;
+ background-image: url(../assets/image/bg_footer.png);
+ background-repeat: repeat-x;
+ height: 75px;
+ width: 100%;
+ left: 0px;
+ bottom: 0px;
+}
+#score_box {
+ float: left;
+ padding-left: 5px;
+ padding-top: 0.7em;
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ color: #FFFF00;
+ font-size: 16pt;
+ font-weight: bold;
+}
+#botbtn_right {
+ float: right;
+ height: 55px;
+ padding-right: 5px;
+ padding-top: 10px;
+}
+ #linkCheck{
+ margin: 1em 3em 0 0;
+ width: 101px; height: 30px;
+ background-image: url(../assets/image/check.png);
+ }
+
+ #linkStart{
+ width: 251px; height: 55px;
+ background:url(../assets/image/btn_start.png);
+ }
+ #linkStart:hover{
+ background:url(../assets/image/btn_start_hover.png);
+ }
+ #linkStart:active{
+ background:url(../assets/image/btn_start_mouse_down.png);
+ }
+ #linkPlayAgain{
+ width: 251px; height: 55px;
+ background:url(../assets/image/btn_play_again.png);
+ }
+ #linkPlayAgain:hover{
+ background:url(../assets/image/btn_play_again_hover.png);
+ }
+ #linkPlayAgain:active{
+ background:url(../assets/image/btn_play_again_mouse_down.png);
+ }
+#linkNextLesson{
+ position:absolute;
+ bottom: 75px;
+ right: 10px;
+}
+#linkPrevLesson{
+ position:absolute;
+ bottom: 75px;
+ left: 10px;
+}
+
+/**** End of the page style ****/
+
+/**** Game Styles ****/
+
+a{
+ color:#FFFFCC;
+}
+#currentTitle{
+ width: 150px;
+ height: 80px;
+ font:25px/30px "Courier New", Courier, monospace;
+ font-weight: bold;
+ color: red;
+}
+#content{
+ position:relative;
+ margin: 0 auto;
+ margin-top: 75px;
+ width: 1198px;
+ height: 560px;
+
+}
+
+ #questionSection{
+ position:absolute;
+ top: 150px;
+ left: 270px;
+ width: 350px;
+ text-align:center;
+ }
+ #question{
+ position:relative;
+ display:block;
+ margin-top: 0.25em;
+ font: 40px Arial, Helvetica, sans-serif;
+ color: #000;
+ }
+ #answers{
+ position:relative;
+ font: 40px Arial, Helvetica, sans-serif;
+ color: #000;
+ text-align:center;
+ }
+
+ input.blankBox{
+ font: 35px Verdana, Geneva, Arial, Helvetica, sans-serif;
+ height:45px;
+ width: 150px;
+ color:red;
+
+ text-align:center;
+ }
+ .focus {
+ /* border: 2px solid #AA88FF;*/
+ background-color: #FFEEAA;
+ }
+ .correct{
+ background-color: #C0F9F3;
+ }
+ .incorrect{
+ background-color: #FFFF00;
+ }
+ .backOpaque{
+ background-color: #A4A4A4;
+ opacity: 0.2;
+ }
+
+#help{
+ display:none;
+ position:absolute;
+ right: 60px;
+ top: 75px;;
+ width: 256px;
+ height: 600px;
+ background:url(../assets/image/help.png);
+ z-index:40;
+}
+
+
+ #gameOver{
+ opacity: 1;
+ display:none;
+ position:absolute;
+ top:45%;
+ left: 30%;
+ color: blue;
+ text-align:center;
+ font : bold 45px/65px Arial Black, Times New Roman;
+ }
+ #gameOverInfo{
+ margin-top: 35px;
+ text-align:center;
+ font: 20px/25px Helvetica, Geneva, Arial, Verdana, sans-serif;
+ font-weight:bold;
+ color:#FF0000;
+
+ }
+ .specialText{
+ margin-top: 1em;
+ font: 20px/25px Helvetica, Geneva, Arial, Verdana, sans-serif;
+ font-weight:bold;
+ color:#FF9900;
+ border-bottom: 2px dotted #CCC;
+
+ }
diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/css/ui.scoreboard.css b/examples/lessons/6_English_whatsThisWord/css/ui.scoreboard.css index 11cdbb5..11cdbb5 100755 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/css/ui.scoreboard.css +++ b/examples/lessons/6_English_whatsThisWord/css/ui.scoreboard.css diff --git a/examples/lessons/6_English_whatsThisWord/index.html b/examples/lessons/6_English_whatsThisWord/index.html new file mode 100755 index 0000000..f822dea --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/index.html @@ -0,0 +1,42 @@ +<!DOCTYPE html>
+<html>
+<head>
+ <title>Class 6 English What This Word</title>
+ <meta name="keywords" content="karma,javascript,html5,sugar,sugarlabs,gsoc,ole,nepal" />
+ <link type="text/css" rel="stylesheet" href="css/ui.scoreboard.css" />
+ <link type="text/css" rel="stylesheet" href="css/lesson.css" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <link type="image/ico" rel="icon" href="../../assets/default/image/favicon.ico" />
+ <script type="text/javascript" src="js/jquery-1.4.js"></script>
+ <script type="text/javascript" src="js/ui.core.js"></script>
+ <script type="text/javascript" src="js/ui.scoreboard.js"></script>
+ <script type="text/javascript" src="js/karma.js"></script>
+ <script type="text/javascript" src="js/jquery.watermarkinput.js"></script>
+ <script type="text/javascript" src="js/lesson.js"></script>
+</head>
+<body>
+ <div id="header">
+ <div id="topbtn_left"><a href="#"><div id="linkBackLesson" class="linkBack"></div></a></div>
+ <div id="lesson_title">
+ <img src="assets/image/title_block_lt.png" width="33" height="75" align="absmiddle" />
+ What This Word <span id="currentTitle"></span>
+ <img src="assets/image/title_block_rt.png" width="33" height="75" align="absmiddle" />
+ </div>
+ <div id="topbtn_right"><a href="#"><div id="linkHelp"></div></a></div>
+ <div id="topbtn_right"><a href="http://olenepal.org"><div id="linkOle"></div></a></div>
+ </div>
+
+ <div id="content"></div>
+ <div id="help"></div>
+ <div id="gameOver"></div>
+ <form name="delayForm">
+ <input type="hidden" name="delayval" size="5">
+ </form>
+
+ <div id="footer">
+ <div id="botbtn_right"><a href="#"><div id="linkPlayAgain"></div></a></div>
+ <div id="botbtn_right"><a href="#"><div id="linkStart"></div></a></div>
+ <div id="score_box"></div>
+ </div>
+</body>
+</html>
diff --git a/examples/lessons/6_Maths_romanNumerals/js/jquery-1.4.js b/examples/lessons/6_English_whatsThisWord/js/jquery-1.4.js index a448490..a448490 100755 --- a/examples/lessons/6_Maths_romanNumerals/js/jquery-1.4.js +++ b/examples/lessons/6_English_whatsThisWord/js/jquery-1.4.js diff --git a/examples/lessons/6_English_months/js/jquery.watermarkinput.js b/examples/lessons/6_English_whatsThisWord/js/jquery.watermarkinput.js index fefa670..fefa670 100755 --- a/examples/lessons/6_English_months/js/jquery.watermarkinput.js +++ b/examples/lessons/6_English_whatsThisWord/js/jquery.watermarkinput.js diff --git a/examples/lessons/6_English_months/js/karma.js b/examples/lessons/6_English_whatsThisWord/js/karma.js index 03f027b..03f027b 100755 --- a/examples/lessons/6_English_months/js/karma.js +++ b/examples/lessons/6_English_whatsThisWord/js/karma.js diff --git a/examples/lessons/6_English_whatsThisWord/js/lesson.js b/examples/lessons/6_English_whatsThisWord/js/lesson.js new file mode 100755 index 0000000..26a2635 --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/js/lesson.js @@ -0,0 +1,249 @@ +$(document).ready(function(){ + var k = Karma({ + audio: [{'name':'correct','file':'correct.ogg'}, + {'name':'incorrect','file':'incorrect.ogg'}, + {'name':'apple','file':'apple.wav'}, + {'name':'banana','file':'banana.wav'}, + {'name':'boat','file':'boat.wav'}, + {'name':'book','file':'book.wav'}, + {'name':'bus','file':'bus.wav'}, + {'name':'cake','file':'cake.wav'}, + {'name':'car','file':'car.wav'}, + {'name':'cow','file':'cow.wav'}, + {'name':'flower','file':'flower.wav'}, + {'name':'hat','file':'hat.wav'}, + {'name':'kite','file':'kite.wav'}, + {'name':'lamp','file':'lamp.wav'}, + {'name':'pig','file':'pig.wav'}, + {'name':'pigeon','file':'pigeon.wav'}, + {'name':'rat','file':'rat.wav'}, + {'name':'tomato','file':'tomato.wav'}, + {'name':'tree','file':'tree.wav'} + ]}); + + k.ready(function(){ + var i,j,topPos,leftPos; //game is completely based on absolute positioning.... + var TOTAL_QUES = 10; + var TOTAL_OBJECTS = 17; + var randObjects = []; //store only ten random objects among TOTAL_OBJECTS + var randPositions = []; //store the random absolute positions for each object + var randQues = []; //store the turns of the pointer to go i.e questions + var objects = ['apple','banana','boat','book','bus','cake', + 'car','cow','flower','hat','kite','lamp', + 'pig','pigeon','rat','tomato','tree' + ]; + var pointers = ['ladybird','ant']; + var pointer; //which pointer to use + var currentWord; + var flag_correct; + + var leftPositions = [-20,185,550,800,1025,-20,185,550,800,1025]; //array to store the left positions + var topPositions = [5,10,50,60,20,350,360,365,240,340]; + var pointerStartTop,pointerStartLeft; + var pointerStopTop,pointerStopLeft; + var currentQuestion,totalCounter,correctCounter; + + var scoreboard = $('#score_box').scoreboard({'layout':'horizontal', + 'winningScore': TOTAL_QUES}); + + var genRandObjects=function (){ + randObjects[0] = k.rand(0,TOTAL_OBJECTS-1); + for(i=1; i<TOTAL_QUES; i++){ + do{ + flag = 0; + randObjects[i] = k.rand(0,TOTAL_OBJECTS-1); + for(j=0; j<i; j++){ + if(randObjects[i] === randObjects[j]){ + flag++; + } + } + }while(flag != 0 ); //end of do while loop + } + }; + + var genRandQues=function (){ + randQues[0] = k.rand(0,TOTAL_QUES-1); + for(i=1; i<TOTAL_QUES; i++){ + do{ + flag = 0; + randQues[i] = k.rand(0,TOTAL_QUES-1); + for(j=0; j<i; j++){ + if(randQues[i] === randQues[j]){ + flag++; + } + } + }while(flag != 0 ); //end of do while loop + } + }; + + var generateAbsolutePositions = function(id,topPos,leftPos){ + var randNumImg = randObjects[id]; + $('#content').append('<div id="pos'+id+'"></div>'); + var objCss = { + 'position':'absolute', + 'top':topPos+'px', + 'left':leftPos+'px' + }; + $('#pos'+id).css(objCss).html('<img src="assets/image/'+objects[randNumImg]+'.png" />'); + }; + + + var showQuestion = function(){ + //alert('show question'); + $('#content').append('<div id="questionSection"></div>'); + $('#questionSection').html('').append('<div id="question">What is this?</div>'); + $('#questionSection').append("<div id='answers'></div>"); + currentWord = objects[randObjects[currentQuestion]]; + $('#answers').append("It's "); + if(currentWord[0] === 'a' || currentWord[0] === 'e' ||currentWord[0] === 'i' || currentWord[0] === 'o' || currentWord[0] === 'u'){ + $('#answers').append('an '); + } else{ + $('#answers').append('a '); + } + $('#answers').append('<span id="word'+currentQuestion+'" class="objectWord"></span>'); + $('#answers').append('.'); + + $('#word'+currentQuestion).append('<input type="text" id="box'+currentQuestion+'" class="blankBox"/>') + $('#box'+currentQuestion).Watermark("?"); + $('.blankBox').focus(); + foucs_blur(); + + + }; + + var nextQuestion = function(){ + flag_correct = 1; + currentQuestion = randQues[totalCounter]; + if(totalCounter === 0){ + pointerStartLeft = k.rand(10,1000); + pointerStartTop = k.rand(5,500); + } else{ + pointerStartLeft = pointerStopLeft; + pointerStartTop = pointerStopTop; + } + pointerStopLeft = leftPositions[currentQuestion]+70; + pointerStopTop = topPositions[currentQuestion]+70; + + $('#content').append('<div id="wordPointer"></div>'); + + var wordPointerCss = { + 'position':'absolute', + 'top':pointerStartTop+'px', + 'left':pointerStartLeft+'px', + 'background-color':'#F5F29E' + }; + $('#wordPointer').css(wordPointerCss).addClass('pointerBg').html('<img src="assets/image/'+pointers[pointer]+'.png" />'); + $('#wordPointer').animate( + {top:pointerStopTop+'px',left:pointerStopLeft+'px'},2000, + function(ev){ //callback function after the animation is complete + //alert('animation complete'); + showQuestion(); + } + ); + + }; + + function game(){ + $('#gameOver').hide(); + $('#content').removeClass('backOpaque'); + correctCounter = 0; + totalCounter = 0; + genRandQues(); + genRandObjects(); + pointer = k.rand(0,1); + + //Generate the fixed absolute positions for the random images + for(i = 0; i<leftPositions.length;i++){ + generateAbsolutePositions(i,topPositions[i],leftPositions[i]); + } + + nextQuestion(); + } + + $('#linkStart').click(function(){ + game(); + }); + + $('#linkPlayAgain').click(function(){ + game(); + }); + + var delay_gameOver = function(){ + document.delayForm.delayval.value = 1; + $('#questionSection').html(''); + $('#pos'+currentQuestion).html(''); + $('#content').addClass('backOpaque'); + $('#gameOver').show(); + $('#gameOver').html(''); + $('#gameOver').append('Game Over !!!'); + $('#gameOver').append('<div id="gameOverInfo">You got <span class="specialText">'+correctCounter+ + '</span> correct out of <span class="specialText">'+totalCounter+'</span> questions .</div>'); + + }; + + var delay_nextQues = function(){ + document.delayForm.delayval.value = 1; + $('#questionSection').html(''); + $('#pos'+currentQuestion).html(''); + nextQuestion(); + }; + + + var checkAnswer = function(){ + + if(currentWord === $('.blankBox').val()){ + $('.blankBox').addClass("correct"); + if(flag_correct === 1){ + correctCounter++; + scoreboard.scoreboard('inc'); + } + k.audio[currentWord].play(); + totalCounter++; + scoreboard.scoreboard('incTotal'); + + if(totalCounter === TOTAL_QUES){ + t=setTimeout(function(){delay_gameOver();},1000); + } + else{ + + t=setTimeout(function(){delay_nextQues();},1000); + + } + } + else{ //incorrect + flag_correct = 0; + $('.blankBox').addClass("incorrect"); + k.audio.incorrect.play(); + + } + }; + + function foucs_blur(){ + $('input[type="text"]').bind({ + focus: function() { + $(this).removeClass('correct').removeClass('incorrect').addClass("focus"); + }, + blur: function(){ + $(this).removeClass("focus"); + }, + keypress: function(event) { + if(event.which === 13){ + checkAnswer(); + } + } + }); + } + + $('#linkHelp').mouseover(function(){ + $('#help').slideDown(2000); + }) + .mouseout(function(){ + $('#help').slideUp(2000); + }); + + game(); + + }); //end of k.ready +}); //end of document.read + + diff --git a/examples/lessons/6_English_whatsThisWord/js/lesson.js~ b/examples/lessons/6_English_whatsThisWord/js/lesson.js~ new file mode 100755 index 0000000..9c6e892 --- /dev/null +++ b/examples/lessons/6_English_whatsThisWord/js/lesson.js~ @@ -0,0 +1,259 @@ +$(document).ready(function(){ + var k = Karma({ + audio: [{'name':'correct','file':'correct.ogg'}, + {'name':'incorrect','file':'incorrect.ogg'}, + {'name':'apple','file':'apple.wav'}, + {'name':'banana','file':'banana.wav'}, + {'name':'boat','file':'boat.wav'}, + {'name':'book','file':'book.wav'}, + {'name':'bus','file':'bus.wav'}, + {'name':'cake','file':'cake.wav'}, + {'name':'car','file':'car.wav'}, + {'name':'cow','file':'cow.wav'}, + {'name':'flower','file':'flower.wav'}, + {'name':'hat','file':'hat.wav'}, + {'name':'kite','file':'kite.wav'}, + {'name':'lamp','file':'lamp.wav'}, + {'name':'pig','file':'pig.wav'}, + {'name':'pigeon','file':'pigeon.wav'}, + {'name':'rat','file':'rat.wav'}, + {'name':'tomato','file':'tomato.wav'}, + {'name':'tree','file':'tree.wav'} + ]}); + + k.ready(function(){ + var i,j,topPos,leftPos; //game is completely based on absolute positioning.... + var TOTAL_QUES = 10; + var TOTAL_OBJECTS = 17; + var randObjects = []; //store only ten random objects among TOTAL_OBJECTS + var randPositions = []; //store the random absolute positions for each object + var randQues = []; //store the turns of the pointer to go i.e questions + var objects = ['apple','banana','boat','book','bus','cake', + 'car','cow','flower','hat','kite','lamp', + 'pig','pigeon','rat','tomato','tree' + ]; + var pointers = ['ladybird','ant']; + var pointer; //which pointer to use + var currentWord; + var randNum; //store the random position of letter in a word + var flag_correct; + + var leftPositions = [-20,185,550,800,1025,-20,185,550,800,1025]; //array to store the left positions + var topPositions = [5,10,50,60,20,350,360,365,240,340]; + var pointerStartTop,pointerStartLeft; + var pointerStopTop,pointerStopLeft; + var currentQuestion,totalCounter,correctCounter; + + var scoreboard = $('#score_box').scoreboard({'layout':'horizontal', + 'winningScore': TOTAL_QUES}); + + var genRandObjects=function (){ + randObjects[0] = k.rand(0,TOTAL_OBJECTS-1); + for(i=1; i<TOTAL_QUES; i++){ + do{ + flag = 0; + randObjects[i] = k.rand(0,TOTAL_OBJECTS-1); + for(j=0; j<i; j++){ + if(randObjects[i] === randObjects[j]){ + flag++; + } + } + }while(flag != 0 ); //end of do while loop + } + }; + + var genRandQues=function (){ + randQues[0] = k.rand(0,TOTAL_QUES-1); + for(i=1; i<TOTAL_QUES; i++){ + do{ + flag = 0; + randQues[i] = k.rand(0,TOTAL_QUES-1); + for(j=0; j<i; j++){ + if(randQues[i] === randQues[j]){ + flag++; + } + } + }while(flag != 0 ); //end of do while loop + } + }; + + var generateAbsolutePositions = function(id,topPos,leftPos){ + var randNumImg = randObjects[id]; + $('#content').append('<div id="pos'+id+'"></div>'); + var objCss = { + 'position':'absolute', + 'top':topPos+'px', + 'left':leftPos+'px' + }; + $('#pos'+id).css(objCss).html('<img src="assets/image/'+objects[randNumImg]+'.png" />'); + }; + + + var showQuestion = function(){ + //alert('show question'); + $('#content').append('<div id="questionSection"></div>'); + $('#questionSection').html('').append('<div id="question">What is this?</div>'); + $('#questionSection').append("<div id='answers'></div>"); + currentWord = objects[randObjects[currentQuestion]]; + $('#answers').append("It's "); + if(currentWord[0] === 'a' || currentWord[0] === 'e' ||currentWord[0] === 'i' || currentWord[0] === 'o' || currentWord[0] === 'u'){ + $('#answers').append('an '); + } else{ + $('#answers').append('a '); + } + $('#answers').append('<span id="word'+currentQuestion+'" class="objectWord"></span>'); + $('#answers').append('.'); + + + var wordLength = currentWord.length; + randNum = k.rand(0,wordLength-1); + //randBoxes[monthId] = randNum; + for(var z = 0; z < wordLength; z++){ + if(z === (randNum)){ + $('#word'+currentQuestion).append('<input type="text" id="box'+currentQuestion+'" class="blankBox" maxlength="1"/>') + $('#box'+currentQuestion).Watermark("?"); + //insert text box + } + else{ + $('#word'+currentQuestion).append(currentWord[z]); + } + } + $('.blankBox').focus(); + foucs_blur(); + + + }; + + var nextQuestion = function(){ + flag_correct = 1; + currentQuestion = randQues[totalCounter]; + if(totalCounter === 0){ + pointerStartLeft = k.rand(10,1000); + pointerStartTop = k.rand(5,500); + } else{ + pointerStartLeft = pointerStopLeft; + pointerStartTop = pointerStopTop; + } + pointerStopLeft = leftPositions[currentQuestion]+70; + pointerStopTop = topPositions[currentQuestion]+70; + + $('#content').append('<div id="wordPointer"></div>'); + + var wordPointerCss = { + 'position':'absolute', + 'top':pointerStartTop+'px', + 'left':pointerStartLeft+'px', + 'background-color':'#F5F29E' + }; + $('#wordPointer').css(wordPointerCss).addClass('pointerBg').html('<img src="assets/image/'+pointers[pointer]+'.png" />'); + $('#wordPointer').animate( + {top:pointerStopTop+'px',left:pointerStopLeft+'px'},2000, + function(ev){ //callback function after the animation is complete + //alert('animation complete'); + showQuestion(); + } + ); + + }; + + function game(){ + $('#gameOver').hide(); + $('#content').removeClass('backOpaque'); + correctCounter = 0; + totalCounter = 0; + genRandQues(); + genRandObjects(); + pointer = k.rand(0,1); + + //Generate the fixed absolute positions for the random images + for(i = 0; i<leftPositions.length;i++){ + generateAbsolutePositions(i,topPositions[i],leftPositions[i]); + } + + nextQuestion(); + } + + $('#linkStart').click(function(){ + game(); + }); + + $('#linkPlayAgain').click(function(){ + game(); + }); + + var delay_gameOver = function(){ + document.delayForm.delayval.value = 1; + $('#content').addClass('backOpaque'); + $('#gameOver').show(); + $('#gameOver').html(''); + $('#gameOver').append('Game Over !!!'); + $('#gameOver').append('<div id="gameOverInfo">You got <span class="specialText">'+correctCounter+ + '</span> correct out of <span class="specialText">'+totalCounter+'</span> questions .</div>'); + + }; + + var delay_nextQues = function(){ + document.delayForm.delayval.value = 1; + $('#questionSection').html(''); + $('#pos'+currentQuestion).html(''); + nextQuestion(); + }; + + + var checkAnswer = function(){ + + if(currentWord[randNum] === $('.blankBox').val()){ + $('.blankBox').addClass("correct"); + if(flag_correct === 1){ + correctCounter++; + scoreboard.scoreboard('inc'); + } + k.audio[currentWord].play(); + totalCounter++; + scoreboard.scoreboard('incTotal'); + + if(totalCounter === TOTAL_QUES){ + t=setTimeout(function(){delay_gameOver();},1000); + } + else{ + + t=setTimeout(function(){delay_nextQues();},1000); + + } + } + else{ //incorrect + flag_correct = 0; + $('.blankBox').addClass("incorrect"); + k.audio.incorrect.play(); + + } + }; + + function foucs_blur(){ + $('input[type="text"]').bind({ + focus: function() { + $(this).removeClass('correct').removeClass('incorrect').addClass("focus"); + }, + blur: function(){ + $(this).removeClass("focus"); + }, + keypress: function(event) { + if(event.which === 13){ + checkAnswer(); + } + } + }); + } + + $('#linkHelp').mouseover(function(){ + $('#help').slideDown(2000); + }) + .mouseout(function(){ + $('#help').slideUp(2000); + }); + + + }); //end of k.ready +}); //end of document.read + + diff --git a/examples/lessons/6_English_months/js/ui.core.js b/examples/lessons/6_English_whatsThisWord/js/ui.core.js index 5493e0a..5493e0a 100755 --- a/examples/lessons/6_English_months/js/ui.core.js +++ b/examples/lessons/6_English_whatsThisWord/js/ui.core.js diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/js/ui.scoreboard.js b/examples/lessons/6_English_whatsThisWord/js/ui.scoreboard.js index 53a930a..53a930a 100755 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/js/ui.scoreboard.js +++ b/examples/lessons/6_English_whatsThisWord/js/ui.scoreboard.js diff --git a/examples/lessons/6_English_yesNoQuestions/assets/audio/correct.ogg b/examples/lessons/6_English_yesNoQuestions/assets/audio/correct.ogg Binary files differdeleted file mode 100755 index a0d9e3a..0000000 --- a/examples/lessons/6_English_yesNoQuestions/assets/audio/correct.ogg +++ /dev/null diff --git a/examples/lessons/6_English_yesNoQuestions/assets/audio/incorrect.ogg b/examples/lessons/6_English_yesNoQuestions/assets/audio/incorrect.ogg Binary files differdeleted file mode 100755 index 4805e55..0000000 --- a/examples/lessons/6_English_yesNoQuestions/assets/audio/incorrect.ogg +++ /dev/null diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/bg_footer.png b/examples/lessons/6_English_yesNoQuestions/assets/image/bg_footer.png Binary files differdeleted file mode 100755 index 4bd44fa..0000000 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/bg_footer.png +++ /dev/null diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/bg_header.png b/examples/lessons/6_English_yesNoQuestions/assets/image/bg_header.png Binary files differdeleted file mode 100755 index f421817..0000000 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/bg_header.png +++ /dev/null diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/bg_title_block.png b/examples/lessons/6_English_yesNoQuestions/assets/image/bg_title_block.png Binary files differdeleted file mode 100755 index 7311891..0000000 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/bg_title_block.png +++ /dev/null diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/bird.png b/examples/lessons/6_English_yesNoQuestions/assets/image/bird.png Binary files differdeleted file mode 100755 index ab1e994..0000000 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/bird.png +++ /dev/null diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/check.png b/examples/lessons/6_English_yesNoQuestions/assets/image/check.png Binary files differdeleted file mode 100755 index 84fc229..0000000 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/check.png +++ /dev/null diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/cock.png b/examples/lessons/6_English_yesNoQuestions/assets/image/cock.png Binary files differdeleted file mode 100755 index 998c31c..0000000 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/cock.png +++ /dev/null diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/correct.png b/examples/lessons/6_English_yesNoQuestions/assets/image/correct.png Binary files differdeleted file mode 100755 index ca9b9db..0000000 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/correct.png +++ /dev/null diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/crow.png b/examples/lessons/6_English_yesNoQuestions/assets/image/crow.png Binary files differdeleted file mode 100755 index 33c1366..0000000 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/crow.png +++ /dev/null diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/domestic.png b/examples/lessons/6_English_yesNoQuestions/assets/image/domestic.png Binary files differdeleted file mode 100755 index 3b5d099..0000000 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/domestic.png +++ /dev/null diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/duck.png b/examples/lessons/6_English_yesNoQuestions/assets/image/duck.png Binary files differdeleted file mode 100755 index 59ed78e..0000000 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/duck.png +++ /dev/null diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/eagle.png b/examples/lessons/6_English_yesNoQuestions/assets/image/eagle.png Binary files differdeleted file mode 100755 index 23d7c3f..0000000 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/eagle.png +++ /dev/null diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/egret.png b/examples/lessons/6_English_yesNoQuestions/assets/image/egret.png Binary files differdeleted file mode 100755 index 8d2c253..0000000 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/egret.png +++ /dev/null diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/elephant.png b/examples/lessons/6_English_yesNoQuestions/assets/image/elephant.png Binary files differdeleted file mode 100755 index 8d862f6..0000000 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/elephant.png +++ /dev/null diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/goat.png b/examples/lessons/6_English_yesNoQuestions/assets/image/goat.png Binary files differdeleted file mode 100755 index 48b2726..0000000 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/goat.png +++ /dev/null diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/horse.png b/examples/lessons/6_English_yesNoQuestions/assets/image/horse.png Binary files differdeleted file mode 100755 index 132b7b3..0000000 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/horse.png +++ /dev/null diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/incorrect.png b/examples/lessons/6_English_yesNoQuestions/assets/image/incorrect.png Binary files differdeleted file mode 100755 index 49ee2a2..0000000 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/incorrect.png +++ /dev/null diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/jackel.png b/examples/lessons/6_English_yesNoQuestions/assets/image/jackel.png Binary files differdeleted file mode 100755 index 31eb0c5..0000000 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/jackel.png +++ /dev/null diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/monkey.png b/examples/lessons/6_English_yesNoQuestions/assets/image/monkey.png Binary files differdeleted file mode 100755 index 94e31de..0000000 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/monkey.png +++ /dev/null diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/mynah.png b/examples/lessons/6_English_yesNoQuestions/assets/image/mynah.png Binary files differdeleted file mode 100755 index 0818f20..0000000 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/mynah.png +++ /dev/null diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/owl.png b/examples/lessons/6_English_yesNoQuestions/assets/image/owl.png Binary files differdeleted file mode 100755 index be45b5e..0000000 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/owl.png +++ /dev/null diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/parrot.png b/examples/lessons/6_English_yesNoQuestions/assets/image/parrot.png Binary files differdeleted file mode 100755 index 5eacfd7..0000000 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/parrot.png +++ /dev/null diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/rabbit.png b/examples/lessons/6_English_yesNoQuestions/assets/image/rabbit.png Binary files differdeleted file mode 100755 index 4aa302d..0000000 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/rabbit.png +++ /dev/null diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/sheep.png b/examples/lessons/6_English_yesNoQuestions/assets/image/sheep.png Binary files differdeleted file mode 100755 index de61ac8..0000000 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/sheep.png +++ /dev/null diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/snake.png b/examples/lessons/6_English_yesNoQuestions/assets/image/snake.png Binary files differdeleted file mode 100755 index 472295b..0000000 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/snake.png +++ /dev/null diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/sparrow.png b/examples/lessons/6_English_yesNoQuestions/assets/image/sparrow.png Binary files differdeleted file mode 100755 index 547645b..0000000 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/sparrow.png +++ /dev/null diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/tiger.png b/examples/lessons/6_English_yesNoQuestions/assets/image/tiger.png Binary files differdeleted file mode 100755 index 4b6e708..0000000 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/tiger.png +++ /dev/null diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/title_block_lt.png b/examples/lessons/6_English_yesNoQuestions/assets/image/title_block_lt.png Binary files differdeleted file mode 100755 index b1c0e90..0000000 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/title_block_lt.png +++ /dev/null diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/title_block_rt.png b/examples/lessons/6_English_yesNoQuestions/assets/image/title_block_rt.png Binary files differdeleted file mode 100755 index 275daaf..0000000 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/title_block_rt.png +++ /dev/null diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/turtle.png b/examples/lessons/6_English_yesNoQuestions/assets/image/turtle.png Binary files differdeleted file mode 100755 index d08bbdc..0000000 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/turtle.png +++ /dev/null diff --git a/examples/lessons/6_English_yesNoQuestions/css/lesson.css b/examples/lessons/6_English_yesNoQuestions/css/lesson.css deleted file mode 100755 index 4b89d22..0000000 --- a/examples/lessons/6_English_yesNoQuestions/css/lesson.css +++ /dev/null @@ -1,252 +0,0 @@ -@CHARSET "UTF-8";
-/****** Page Styles ****/
-
-body {
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 10pt;
- margin: 0px;
- background-color: #FFFFCC;
-}
-#header {
- background-image: url(../assets/image/bg_header.png);
- background-repeat: repeat-x;
- height: 89px;
- width: 100%;
- position: absolute;
- left: 0px;
- top: 0px;
-}
-#topbtn_left {
- float: left;
- height: 60px;
- width: 60px;
- padding-top: 13px;
- padding-left: 5px;
-}
-
-
- #linkBack{
- width: 60px; height: 59px;
- background:url(../assets/image/btn_back.png);
- }
- #linkBack:hover{
- background:url(../assets/image/btn_back_hover.png);
- }
-
-#lesson_title {
- float: left;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 16pt;
- font-weight: bold;
- color: #FFFFFF;
- margin-left: 10px;
- background-image: url(../assets/image/bg_title_block.png);
-}
-#topbtn_right {
- float: right;
- height: 60px;
- width: 60px;
- padding-top: 13px;
- padding-right: 5px;
-}
- #linkHelp{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_help.png);
- }
- #linkHelp:hover{
- background:url(../assets/image/btn_help_hover.png);
- }
- #linkOle{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_ole.png);
- }
- #linkOle:hover{
- background:url(../assets/image/btn_ole_hover.png);
- }
- #linkNext{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_next.png);
- }
- #linkNext:hover{
- background:url(../assets/image/btn_next_hover.png);
- }
-#footer {
- background-image: url(../assets/image/bg_footer.png);
- background-repeat: repeat-x;
- position: absolute;
- height: 69px;
- width: 100%;
- left: 0px;
- bottom: 0px;
-}
-#score_box {
- float: left;
- padding-left: 5px;
- padding-top: 10px;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- color: #FFFF00;
- font-size: 16pt;
- font-weight: bold;
-}
-#botbtn_right {
- float: right;
- height: 55px;
- /*width: 251px;*/
- padding-right: 5px;
- padding-top: 5px;
-}
- #linkCheck{
- width: 187px; height: 55px;
- background-image: url(../assets/image/check.png);
- }
-
- #linkStart{
- width: 251px; height: 55px;
- background:url(../assets/image/btn_start.png);
- }
- #linkStart:hover{
- background:url(../assets/image/btn_start_hover.png);
- }
- #linkStart:active{
- background:url(../assets/image/btn_start_mouse_down.png);
- }
- #linkPlayAgain{
- width: 251px; height: 55px;
- background:url(../assets/image/btn_play_again.png);
- }
- #linkPlayAgain:hover{
- background:url(../assets/image/btn_play_again_hover.png);
- }
- #linkPlayAgain:active{
- background:url(../assets/image/btn_play_again_mouse_down.png);
- }
-
-/**** End of the page style ****/
-
-/**** Game Styles ****/
-
-a{
- color:#FFFFCC;
-}
-#currentTitle{
- width: 150px;
- height: 80xp;
- font:25px/30px "Courier New", Courier, monospace;
- font-weight: bold;
- color: red;
-}
-#content{
- margin: 0px auto;
- margin-top: 85px;
- width: 100%;
- height: 400px;
-
-}
- #tabs{
- margin-left: 0.5em;
- width: 650px;
- height: 60px;
- }
- .tabBox{
- float:left;
- margin: 0.5em;
- }
- .tabSelected{
- background-color: #00FF00;
- }
-
- #section{
- width: 900px;
- height: 300px;
- margin: 5px auto;
- }
-
- #questionSection{
- margin-top: 50px;
- margin-left: 300px;
- }
- .questions{
- margin-top: 5px;
- margin-left: 20px;
- height: 30px;
- font: 25px/30px Verdana, Geneva, Arial, Helvetica, sans-serif;
- color: #000000;
- }
- #answerSection{
- margin-left: 50px;
- margin-top: 10px;
- width: 600px;
- height: 70px;
- }
- #comma{
- width: 36px;
- height: 60px;
- margin-left: 118px;
- background-image: url(../assets/image/comma.png);
- }
- #dot{
- position:absolute;
- top: 44%;
- right: 17%;
- width: 36px;
- height: 60px;
- background-image: url(../assets/image/dot.png);
- }
- #dragAnswers{
- padding: 10px;
- margin-top: 40px;
- margin-left: 85px;
- width: 350px;
- height: 30px;
- border: 2px solid #ABF549;
-
- }
- #imgAnimals{
- position:absolute;
- left: 10%;
- top: 30%;
- width: 222px;
- height: 300px;
- background: url(../assets/image/backImage.png);
- text-align:center;
- }
- .imgAnim{
- margin-top: 75px;
- }
-
- .drophover{
- background-color: #FF9900;
- }
- #checkAnswer{
- position:absolute;
- right: 5%;
- bottom: 45%;
- width: 100px;
- height: 92px;
- }
-
-
-
-#gameOver{
- margin: 10px auto;
- width: 500px;
- text-align:center;
- font: 30px/35px Verdana, Geneva, Arial, Helvetica, sans-serif;
- font-weight:bold;
- color:red;
-}
-#gameOverInfo{
- margin-top: 35px;
- text-align:center;
- font: 20px/25px Helvetica, Geneva, Arial, Verdana, sans-serif;
- font-weight:bold;
- color:#06D946;
-
-}
-.specialText{
- font: 20px/25px Helvetica, Geneva, Arial, Verdana, sans-serif;
- font-weight:bold;
- color:#FF9900;
- border-bottom: 2px dotted #CCC;
-
-}
\ No newline at end of file diff --git a/examples/lessons/6_English_yesNoQuestions/index.html b/examples/lessons/6_English_yesNoQuestions/index.html deleted file mode 100755 index c359651..0000000 --- a/examples/lessons/6_English_yesNoQuestions/index.html +++ /dev/null @@ -1,49 +0,0 @@ -<!DOCTYPE html>
-<head>
- <title>Class 6 English Yes No Questions</title>
- <meta name="keywords" content="karma,javascript,html5,sugar,sugarlabs,gsoc,ole,nepal" />
- <link type="text/css" rel="stylesheet" href="css/lesson.css" />
- <link type="text/css" rel="stylesheet" href="css/ui.scoreboard.css" />
- <link type="text/css" rel="stylesheet" href="css/demos.css" />
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <link type="image/ico" rel="icon" href="../../assets/default/image/favicon.ico" />
- <script type="text/javascript" src="js/jquery-1.4.js"></script>
- <script type="text/javascript" src="js/ui.core.js"></script>
- <script type="text/javascript" src="js/ui.draggable.js"></script>
- <script type="text/javascript" src="js/ui.droppable.js"></script>
- <script type="text/javascript" src="js/karma.js"></script>
- <script type="text/javascript" src="js/ui.scoreboard.js"></script>
- <script type="text/javascript" src="js/lesson.js"></script>
-</head>
-<body>
- <div id="header">
- <div id="topbtn_left"><a href="http://olenepal.org"><div id="linkOle"></div></a></div>
- <div id="lesson_title">
- <img src="assets/image/title_block_lt.png" width="33" height="89" align="absmiddle" />
- English Yes No Questions <span id="currentTitle"></span>
- <img src="assets/image/title_block_rt.png" width="33" height="89" align="absmiddle" />
- </div>
- <div id="topbtn_right"><a href="#"><div id="linkHelp"></div></a></div>
- <div id="topbtn_right"><a href="http://olenepal.org"><div id="linkOle"></div></a></div>
- </div>
-
- <div id="content">
- <div id="tabs"></div>
- <div id="section"></div>
- <div id="checkAnswer"></div>
- <div id="displayImgArea"></div>
- <div id="gameOver"></div>
- <div id="help"></div>
- </div>
- <form name="delayForm">
- <input type="hidden" name="delayval" size="5">
- </form>
-
- <div id="footer">
- <div id="score_box"></div>
- <div id="botbtn_right"><a href="#"><div id="linkStart"></div></a></div>
- <div id="botbtn_right"><a href="#"><div id="linkPlayAgain"></div></a></div>
- <div id="botbtn_right"><a href="#"><div id="linkCheck"></div></a></div>
- </div>
-</body>
-</html>
diff --git a/examples/lessons/6_English_yesNoQuestions/js/lesson.js b/examples/lessons/6_English_yesNoQuestions/js/lesson.js deleted file mode 100755 index a842b3d..0000000 --- a/examples/lessons/6_English_yesNoQuestions/js/lesson.js +++ /dev/null @@ -1,298 +0,0 @@ -$(document).ready(function(){ - var k = Karma({ - audio: [{'name':'correct','file':'correct.ogg'}, - {'name':'incorrect','file':'incorrect.ogg'} - ]}); - - k.ready(function(){ - var i,j,flag; - var TOTAL_QUES = 8; - var TOTAL_LEVEL = 3; - var currentDragObject; - var randPositions = []; - var randImages = []; - var randOptions = []; - var totalCounter; - var correctCounter; - var currentQuestion; - var currentDragObject; - var arrangedAns = []; - var checked; - var sectionNum; //store the current tab num - var flag_checked; - var currentQues; //store the current Animal name - var currentAnimal; //store the current Animal Image name - var correctQuest; //store 1 if the question and image is same - - var animals = new Array('tiger','elephant','jackel','bear','rhino','monkey','turtle','snake', - 'duck','cock','pig','cow','goat','horse','sheep','rabbit', - 'parrot','mynah','crow','sparrow','egret','pigeon','owl','eagle' - ); - var answersOpts = new Array('Yes','No','it','is',"isn't"); - var tabs = new Array('wild','domestic','bird'); - var correctYes = new Array('Yes','it','is'); - var correctNo = new Array('No','it',"isn't"); - - var scoreboard = $('#score_box').scoreboard({'layout':'horizontal', - 'winningScore': 8}); - /*scoreboard.bind('winGame',function(){ //needs total score counter to be checked problem - $('#gameOver').show(); - $('#dot').hide(); - $('#questionSection').hide(); - $('#gameOver').append('Game Over !!!'); - $('#gameOver').append('<div id="gameOverInfo">You got <span class="specialText">'+correctCounter+ - '</span> correct out of <span class="specialText">'+totalCounter+'</span> questions .</div>'); - - }); - */ - - var genRandOpts=function (){ - randOptions[0] = k.rand(0,4); - for(i=1; i<5; i++){ - do{ - flag = 0; - randOptions[i] = k.rand(0,4); - for(j=0; j<i; j++){ - if(randOptions[i] === randOptions[j]){ - flag++; - } - } - }while(flag != 0 ); //end of do while loop - } - - }; - var genRandImages=function (){ - randImages[0] = k.rand(0,TOTAL_QUES-1); - for(i=1; i<TOTAL_QUES; i++){ - do{ - flag = 0; - randImages[i] = k.rand(0,TOTAL_QUES-1); - for(j=0; j<i; j++){ - if(randImages[i] === randImages[j]){ - flag++; - } - } - }while(flag != 0 ); //end of do while loop - } - }; - var genRandPosition=function (){ - randPositions[0] = k.rand(0,TOTAL_QUES-1); - for(i=1; i<TOTAL_QUES; i++){ - do{ - flag = 0; - randPositions[i] = k.rand(0,TOTAL_QUES-1); - for(j=0; j<i; j++){ - if(randPositions[i] === randPositions[j]){ - flag++; - } - } - }while(flag != 0 ); //end of do while loop - } - }; - var display_game_over = function(){ - $('#dot').hide(); - $('#gameOver').show(); - $('#questionSection').html('').append('<div id="gameOver"></div>'); - $('#gameOver').append('Game Over !!!'); - $('#gameOver').append('<div id="gameOverInfo">You got <span class="specialText">'+correctCounter+ - '</span> correct out of <span class="specialText">'+totalCounter+'</span> questions .</div>'); - - }; - var display_control = function(){ - if(checked === 1){ - next_questions(); - } - }; - var delay_correctShow = function(){ - document.delayForm.delayval.value = 1; - $('#checkAnswer').hide(); - display_control(); - } - - var check_answers = function(){ - $('#checkAnswer').show(); - var correct = 0; - var correctCheck = 0; - if(correctQuest === 1){ - for(var i = 0 ; i< 3; i++){ - if(arrangedAns[i] === correctYes[i]){ - correct++; - } - } - if(correct === 3){ - correctCheck = 1; - } - } - else{ - for(var i = 0 ; i< 3; i++){ - if(arrangedAns[i] === correctNo[i]){ - correct++; - } - } - if(correct === 3){ - correctCheck = 1; - } - } - if(correctCheck === 1){ - if(flag_checked === 0){ - scoreboard.scoreboard('inc'); - correctCounter++; - } - k.audio.correct.play(); - $('#checkAnswer').html('<img src="assets/image/correct.png" />'); - checked = 1; - totalCounter++; - scoreboard.scoreboard('incTotal'); - } - else{ - k.audio.incorrect.play(); - $('#checkAnswer').html('<img src="assets/image/incorrect.png" />'); - checked = 0; - flag_checked = 1; - } - t=setTimeout(function(){delay_correctShow();},1000); - }; - - var assignTabs = function (tabId){ - $('#tabs').append('<div id="tabs'+tabId+'" class="tabBox"></div>'); - var tabImgCss = { - 'width': '179px', - 'height': '50px', - 'background-image': 'url("assets/image/'+tabs[tabId]+'.png")', - 'background-repeat': 'no-repeat' - }; - $('#tabs'+tabId).css(tabImgCss); - $('#tabs'+tabId).click(function(){ - for(j = 0; j<TOTAL_LEVEL; j++){ - if(tabId === j){ - $('#tabs'+j).addClass('tabSelected'); - } - else{ - $('#tabs'+j).removeClass('tabSelected'); - } - } - sectionNum = tabId; - game(); - }); - }; - - var assignAns = function (ansId){ - $('#answerSection').append('<div id="drop'+ansId+'" class="dropObjects"></div>'); - var dropObjCss = { - 'width':'125px','height': '30px','margin':'1.7em 0.5em 0.2em 0.5em' , - 'border-bottom': '2px solid black','float':'left' - }; - $('.dropObjects').css(dropObjCss); - }; - - var assignDragAns = function (optId){ - $('#dragAnswers').append('<div id="drag'+optId+'" class="dragObjects">'+answersOpts[optId]+'</div>'); - var dragObjCss = { - 'float': 'left','cursor': 'move', - 'height':'30px','padding': '0px 1em', - 'font':'20px/25px bold Arial,Verdana,Geneva,Helvetica' - }; - $('.dragObjects').css(dragObjCss); - }; - - var next_questions = function(){ - if(totalCounter === TOTAL_QUES){ - display_game_over(); - } - else{ - currentQuestion = totalCounter; - flag_checked = 0; - genRandOpts(); - for(i=0; i<3; i++){ - arrangedAns[i] = 0; - } - var randImage = randImages[currentQuestion]+(sectionNum*TOTAL_QUES); - var randNum = randPositions[currentQuestion]+(sectionNum*TOTAL_QUES); - currentQues = animals[randNum]; - currentAnimal = animals[randImage]; - $('#questionSection').html(''); - $('#imgAnimals').html('<img class="imgAnim" src = "assets/image/'+currentAnimal+'.png" />'); - $('#questionSection').append('<div id="ques'+currentQuestion+'" class="questions"></div>'); - $('#ques'+currentQuestion).append(totalCounter+1+'.').append(' Is this '); - - if(currentQues[0] === 'a' || currentQues[0] === 'e' ||currentQues[0] === 'i' ||currentQues[0] === 'o' ||currentQues[0] === 'u'){ - $('#ques'+currentQuestion).append('an '); - } - else{ - $('#ques'+currentQuestion).append('a '); - } - $('#ques'+currentQuestion).append(currentQues+' ?'); - if(currentAnimal === currentQues){ - correctQuest = 1; - } - else{ - correctQuest = 0; - } - $('#questionSection').append('<div id="answerSection"></div>'); - for(i = 0; i<3 ;i++){ - assignAns(i); - } - $('#answerSection').append('<div id="comma"></div>'); - $('#section').append('<div id="dot"></div>'); - $('#questionSection').append('<div id="dragAnswers"></div>'); - var randOption; - for(i = 0; i<5 ;i++){ - randOption = randOptions[i]; - assignDragAns(randOption); - } - drag_drop(); - } - - }; - - function game(){ - scoreboard.scoreboard('reset'); - $('#linkNext').hide(); - $('#gameOver').hide(); - correctCounter = 0; - totalCounter = 0; - genRandPosition(); - genRandImages(); - $('#section').html(''); - $('#tabs1').removeClass('tabSelected'); - $('#tabs2').removeClass('tabSelected'); - $('#tabs'+sectionNum).addClass('tabSelected'); - $('#section').append('<div id="imgAnimals"></div>'); - $('#section').append('<div id="questionSection"></div>'); - next_questions(); - } - for(i = 0; i< TOTAL_LEVEL; i++){ - assignTabs(i); - } - sectionNum = 0; - - $('#linkCheck').click(function(){ - check_answers(); - }); - $('#linkStart').click(function(){ - - sectionNum = 0; - game(); - }); - - $('#linkPlayAgain').click(function(){ - game(); - }); - - function drag_drop(){ - $('.dragObjects').draggable({ containment: '#content'}); - $('.dragObjects').bind('dragstart', function(event, ui) { - currentDragObject = event.target.id; - }); - - $(".dropObjects").droppable({ tolerence: 'intersect' ,hoverClass: 'drophover' }); - $('.dropObjects').bind('drop', function(event, ui) { - var currentDropObject = event.target.id; - var droppedWord = parseInt(currentDropObject.substring(4)); - arrangedAns[droppedWord] = $('#'+currentDragObject).text(); - }); - } - - - }); //end of k.ready -}); //end of document.ready
\ No newline at end of file diff --git a/examples/lessons/6_English_yesNoQuestions/js/ui.draggable.js b/examples/lessons/6_English_yesNoQuestions/js/ui.draggable.js deleted file mode 100755 index 0402f0e..0000000 --- a/examples/lessons/6_English_yesNoQuestions/js/ui.draggable.js +++ /dev/null @@ -1,766 +0,0 @@ -/* - * jQuery UI Draggable 1.7.2 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Draggables - * - * Depends: - * ui.core.js - */ -(function($) { - -$.widget("ui.draggable", $.extend({}, $.ui.mouse, { - - _init: function() { - - if (this.options.helper == 'original' && !(/^(?:r|a|f)/).test(this.element.css("position"))) - this.element[0].style.position = 'relative'; - - (this.options.addClasses && this.element.addClass("ui-draggable")); - (this.options.disabled && this.element.addClass("ui-draggable-disabled")); - - this._mouseInit(); - - }, - - destroy: function() { - if(!this.element.data('draggable')) return; - this.element - .removeData("draggable") - .unbind(".draggable") - .removeClass("ui-draggable" - + " ui-draggable-dragging" - + " ui-draggable-disabled"); - this._mouseDestroy(); - }, - - _mouseCapture: function(event) { - - var o = this.options; - - if (this.helper || o.disabled || $(event.target).is('.ui-resizable-handle')) - return false; - - //Quit if we're not on a valid handle - this.handle = this._getHandle(event); - if (!this.handle) - return false; - - return true; - - }, - - _mouseStart: function(event) { - - var o = this.options; - - //Create and append the visible helper - this.helper = this._createHelper(event); - - //Cache the helper size - this._cacheHelperProportions(); - - //If ddmanager is used for droppables, set the global draggable - if($.ui.ddmanager) - $.ui.ddmanager.current = this; - - /* - * - Position generation - - * This block generates everything position related - it's the core of draggables. - */ - - //Cache the margins of the original element - this._cacheMargins(); - - //Store the helper's css position - this.cssPosition = this.helper.css("position"); - this.scrollParent = this.helper.scrollParent(); - - //The element's absolute position on the page minus margins - this.offset = this.element.offset(); - this.offset = { - top: this.offset.top - this.margins.top, - left: this.offset.left - this.margins.left - }; - - $.extend(this.offset, { - click: { //Where the click happened, relative to the element - left: event.pageX - this.offset.left, - top: event.pageY - this.offset.top - }, - parent: this._getParentOffset(), - relative: this._getRelativeOffset() //This is a relative to absolute position minus the actual position calculation - only used for relative positioned helper - }); - - //Generate the original position - this.originalPosition = this._generatePosition(event); - this.originalPageX = event.pageX; - this.originalPageY = event.pageY; - - //Adjust the mouse offset relative to the helper if 'cursorAt' is supplied - if(o.cursorAt) - this._adjustOffsetFromHelper(o.cursorAt); - - //Set a containment if given in the options - if(o.containment) - this._setContainment(); - - //Call plugins and callbacks - this._trigger("start", event); - - //Recache the helper size - this._cacheHelperProportions(); - - //Prepare the droppable offsets - if ($.ui.ddmanager && !o.dropBehaviour) - $.ui.ddmanager.prepareOffsets(this, event); - - this.helper.addClass("ui-draggable-dragging"); - this._mouseDrag(event, true); //Execute the drag once - this causes the helper not to be visible before getting its correct position - return true; - }, - - _mouseDrag: function(event, noPropagation) { - - //Compute the helpers position - this.position = this._generatePosition(event); - this.positionAbs = this._convertPositionTo("absolute"); - - //Call plugins and callbacks and use the resulting position if something is returned - if (!noPropagation) { - var ui = this._uiHash(); - this._trigger('drag', event, ui); - this.position = ui.position; - } - - if(!this.options.axis || this.options.axis != "y") this.helper[0].style.left = this.position.left+'px'; - if(!this.options.axis || this.options.axis != "x") this.helper[0].style.top = this.position.top+'px'; - if($.ui.ddmanager) $.ui.ddmanager.drag(this, event); - - return false; - }, - - _mouseStop: function(event) { - - //If we are using droppables, inform the manager about the drop - var dropped = false; - if ($.ui.ddmanager && !this.options.dropBehaviour) - dropped = $.ui.ddmanager.drop(this, event); - - //if a drop comes from outside (a sortable) - if(this.dropped) { - dropped = this.dropped; - this.dropped = false; - } - - if((this.options.revert == "invalid" && !dropped) || (this.options.revert == "valid" && dropped) || this.options.revert === true || ($.isFunction(this.options.revert) && this.options.revert.call(this.element, dropped))) { - var self = this; - $(this.helper).animate(this.originalPosition, parseInt(this.options.revertDuration, 10), function() { - self._trigger("stop", event); - self._clear(); - }); - } else { - this._trigger("stop", event); - this._clear(); - } - - return false; - }, - - _getHandle: function(event) { - - var handle = !this.options.handle || !$(this.options.handle, this.element).length ? true : false; - $(this.options.handle, this.element) - .find("*") - .andSelf() - .each(function() { - if(this == event.target) handle = true; - }); - - return handle; - - }, - - _createHelper: function(event) { - - var o = this.options; - var helper = $.isFunction(o.helper) ? $(o.helper.apply(this.element[0], [event])) : (o.helper == 'clone' ? this.element.clone() : this.element); - - if(!helper.parents('body').length) - helper.appendTo((o.appendTo == 'parent' ? this.element[0].parentNode : o.appendTo)); - - if(helper[0] != this.element[0] && !(/(fixed|absolute)/).test(helper.css("position"))) - helper.css("position", "absolute"); - - return helper; - - }, - - _adjustOffsetFromHelper: function(obj) { - if(obj.left != undefined) this.offset.click.left = obj.left + this.margins.left; - if(obj.right != undefined) this.offset.click.left = this.helperProportions.width - obj.right + this.margins.left; - if(obj.top != undefined) this.offset.click.top = obj.top + this.margins.top; - if(obj.bottom != undefined) this.offset.click.top = this.helperProportions.height - obj.bottom + this.margins.top; - }, - - _getParentOffset: function() { - - //Get the offsetParent and cache its position - this.offsetParent = this.helper.offsetParent(); - var po = this.offsetParent.offset(); - - // This is a special case where we need to modify a offset calculated on start, since the following happened: - // 1. The position of the helper is absolute, so it's position is calculated based on the next positioned parent - // 2. The actual offset parent is a child of the scroll parent, and the scroll parent isn't the document, which means that - // the scroll is included in the initial calculation of the offset of the parent, and never recalculated upon drag - if(this.cssPosition == 'absolute' && this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) { - po.left += this.scrollParent.scrollLeft(); - po.top += this.scrollParent.scrollTop(); - } - - if((this.offsetParent[0] == document.body) //This needs to be actually done for all browsers, since pageX/pageY includes this information - || (this.offsetParent[0].tagName && this.offsetParent[0].tagName.toLowerCase() == 'html' && $.browser.msie)) //Ugly IE fix - po = { top: 0, left: 0 }; - - return { - top: po.top + (parseInt(this.offsetParent.css("borderTopWidth"),10) || 0), - left: po.left + (parseInt(this.offsetParent.css("borderLeftWidth"),10) || 0) - }; - - }, - - _getRelativeOffset: function() { - - if(this.cssPosition == "relative") { - var p = this.element.position(); - return { - top: p.top - (parseInt(this.helper.css("top"),10) || 0) + this.scrollParent.scrollTop(), - left: p.left - (parseInt(this.helper.css("left"),10) || 0) + this.scrollParent.scrollLeft() - }; - } else { - return { top: 0, left: 0 }; - } - - }, - - _cacheMargins: function() { - this.margins = { - left: (parseInt(this.element.css("marginLeft"),10) || 0), - top: (parseInt(this.element.css("marginTop"),10) || 0) - }; - }, - - _cacheHelperProportions: function() { - this.helperProportions = { - width: this.helper.outerWidth(), - height: this.helper.outerHeight() - }; - }, - - _setContainment: function() { - - var o = this.options; - if(o.containment == 'parent') o.containment = this.helper[0].parentNode; - if(o.containment == 'document' || o.containment == 'window') this.containment = [ - 0 - this.offset.relative.left - this.offset.parent.left, - 0 - this.offset.relative.top - this.offset.parent.top, - $(o.containment == 'document' ? document : window).width() - this.helperProportions.width - this.margins.left, - ($(o.containment == 'document' ? document : window).height() || document.body.parentNode.scrollHeight) - this.helperProportions.height - this.margins.top - ]; - - if(!(/^(document|window|parent)$/).test(o.containment) && o.containment.constructor != Array) { - var ce = $(o.containment)[0]; if(!ce) return; - var co = $(o.containment).offset(); - var over = ($(ce).css("overflow") != 'hidden'); - - this.containment = [ - co.left + (parseInt($(ce).css("borderLeftWidth"),10) || 0) + (parseInt($(ce).css("paddingLeft"),10) || 0) - this.margins.left, - co.top + (parseInt($(ce).css("borderTopWidth"),10) || 0) + (parseInt($(ce).css("paddingTop"),10) || 0) - this.margins.top, - co.left+(over ? Math.max(ce.scrollWidth,ce.offsetWidth) : ce.offsetWidth) - (parseInt($(ce).css("borderLeftWidth"),10) || 0) - (parseInt($(ce).css("paddingRight"),10) || 0) - this.helperProportions.width - this.margins.left, - co.top+(over ? Math.max(ce.scrollHeight,ce.offsetHeight) : ce.offsetHeight) - (parseInt($(ce).css("borderTopWidth"),10) || 0) - (parseInt($(ce).css("paddingBottom"),10) || 0) - this.helperProportions.height - this.margins.top - ]; - } else if(o.containment.constructor == Array) { - this.containment = o.containment; - } - - }, - - _convertPositionTo: function(d, pos) { - - if(!pos) pos = this.position; - var mod = d == "absolute" ? 1 : -1; - var o = this.options, scroll = this.cssPosition == 'absolute' && !(this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent, scrollIsRootNode = (/(html|body)/i).test(scroll[0].tagName); - - return { - top: ( - pos.top // The absolute mouse position - + this.offset.relative.top * mod // Only for relative positioned nodes: Relative offset from element to offset parent - + this.offset.parent.top * mod // The offsetParent's offset without borders (offset + border) - - ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollTop() : ( scrollIsRootNode ? 0 : scroll.scrollTop() ) ) * mod) - ), - left: ( - pos.left // The absolute mouse position - + this.offset.relative.left * mod // Only for relative positioned nodes: Relative offset from element to offset parent - + this.offset.parent.left * mod // The offsetParent's offset without borders (offset + border) - - ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollLeft() : scrollIsRootNode ? 0 : scroll.scrollLeft() ) * mod) - ) - }; - - }, - - _generatePosition: function(event) { - - var o = this.options, scroll = this.cssPosition == 'absolute' && !(this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent, scrollIsRootNode = (/(html|body)/i).test(scroll[0].tagName); - - // This is another very weird special case that only happens for relative elements: - // 1. If the css position is relative - // 2. and the scroll parent is the document or similar to the offset parent - // we have to refresh the relative offset during the scroll so there are no jumps - if(this.cssPosition == 'relative' && !(this.scrollParent[0] != document && this.scrollParent[0] != this.offsetParent[0])) { - this.offset.relative = this._getRelativeOffset(); - } - - var pageX = event.pageX; - var pageY = event.pageY; - - /* - * - Position constraining - - * Constrain the position to a mix of grid, containment. - */ - - if(this.originalPosition) { //If we are not dragging yet, we won't check for options - - if(this.containment) { - if(event.pageX - this.offset.click.left < this.containment[0]) pageX = this.containment[0] + this.offset.click.left; - if(event.pageY - this.offset.click.top < this.containment[1]) pageY = this.containment[1] + this.offset.click.top; - if(event.pageX - this.offset.click.left > this.containment[2]) pageX = this.containment[2] + this.offset.click.left; - if(event.pageY - this.offset.click.top > this.containment[3]) pageY = this.containment[3] + this.offset.click.top; - } - - if(o.grid) { - var top = this.originalPageY + Math.round((pageY - this.originalPageY) / o.grid[1]) * o.grid[1]; - pageY = this.containment ? (!(top - this.offset.click.top < this.containment[1] || top - this.offset.click.top > this.containment[3]) ? top : (!(top - this.offset.click.top < this.containment[1]) ? top - o.grid[1] : top + o.grid[1])) : top; - - var left = this.originalPageX + Math.round((pageX - this.originalPageX) / o.grid[0]) * o.grid[0]; - pageX = this.containment ? (!(left - this.offset.click.left < this.containment[0] || left - this.offset.click.left > this.containment[2]) ? left : (!(left - this.offset.click.left < this.containment[0]) ? left - o.grid[0] : left + o.grid[0])) : left; - } - - } - - return { - top: ( - pageY // The absolute mouse position - - this.offset.click.top // Click offset (relative to the element) - - this.offset.relative.top // Only for relative positioned nodes: Relative offset from element to offset parent - - this.offset.parent.top // The offsetParent's offset without borders (offset + border) - + ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollTop() : ( scrollIsRootNode ? 0 : scroll.scrollTop() ) )) - ), - left: ( - pageX // The absolute mouse position - - this.offset.click.left // Click offset (relative to the element) - - this.offset.relative.left // Only for relative positioned nodes: Relative offset from element to offset parent - - this.offset.parent.left // The offsetParent's offset without borders (offset + border) - + ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollLeft() : scrollIsRootNode ? 0 : scroll.scrollLeft() )) - ) - }; - - }, - - _clear: function() { - this.helper.removeClass("ui-draggable-dragging"); - if(this.helper[0] != this.element[0] && !this.cancelHelperRemoval) this.helper.remove(); - //if($.ui.ddmanager) $.ui.ddmanager.current = null; - this.helper = null; - this.cancelHelperRemoval = false; - }, - - // From now on bulk stuff - mainly helpers - - _trigger: function(type, event, ui) { - ui = ui || this._uiHash(); - $.ui.plugin.call(this, type, [event, ui]); - if(type == "drag") this.positionAbs = this._convertPositionTo("absolute"); //The absolute position has to be recalculated after plugins - return $.widget.prototype._trigger.call(this, type, event, ui); - }, - - plugins: {}, - - _uiHash: function(event) { - return { - helper: this.helper, - position: this.position, - absolutePosition: this.positionAbs, //deprecated - offset: this.positionAbs - }; - } - -})); - -$.extend($.ui.draggable, { - version: "1.7.2", - eventPrefix: "drag", - defaults: { - addClasses: true, - appendTo: "parent", - axis: false, - cancel: ":input,option", - connectToSortable: false, - containment: false, - cursor: "auto", - cursorAt: false, - delay: 0, - distance: 1, - grid: false, - handle: false, - helper: "original", - iframeFix: false, - opacity: false, - refreshPositions: false, - revert: false, - revertDuration: 500, - scope: "default", - scroll: true, - scrollSensitivity: 20, - scrollSpeed: 20, - snap: false, - snapMode: "both", - snapTolerance: 20, - stack: false, - zIndex: false - } -}); - -$.ui.plugin.add("draggable", "connectToSortable", { - start: function(event, ui) { - - var inst = $(this).data("draggable"), o = inst.options, - uiSortable = $.extend({}, ui, { item: inst.element }); - inst.sortables = []; - $(o.connectToSortable).each(function() { - var sortable = $.data(this, 'sortable'); - if (sortable && !sortable.options.disabled) { - inst.sortables.push({ - instance: sortable, - shouldRevert: sortable.options.revert - }); - sortable._refreshItems(); //Do a one-time refresh at start to refresh the containerCache - sortable._trigger("activate", event, uiSortable); - } - }); - - }, - stop: function(event, ui) { - - //If we are still over the sortable, we fake the stop event of the sortable, but also remove helper - var inst = $(this).data("draggable"), - uiSortable = $.extend({}, ui, { item: inst.element }); - - $.each(inst.sortables, function() { - if(this.instance.isOver) { - - this.instance.isOver = 0; - - inst.cancelHelperRemoval = true; //Don't remove the helper in the draggable instance - this.instance.cancelHelperRemoval = false; //Remove it in the sortable instance (so sortable plugins like revert still work) - - //The sortable revert is supported, and we have to set a temporary dropped variable on the draggable to support revert: 'valid/invalid' - if(this.shouldRevert) this.instance.options.revert = true; - - //Trigger the stop of the sortable - this.instance._mouseStop(event); - - this.instance.options.helper = this.instance.options._helper; - - //If the helper has been the original item, restore properties in the sortable - if(inst.options.helper == 'original') - this.instance.currentItem.css({ top: 'auto', left: 'auto' }); - - } else { - this.instance.cancelHelperRemoval = false; //Remove the helper in the sortable instance - this.instance._trigger("deactivate", event, uiSortable); - } - - }); - - }, - drag: function(event, ui) { - - var inst = $(this).data("draggable"), self = this; - - var checkPos = function(o) { - var dyClick = this.offset.click.top, dxClick = this.offset.click.left; - var helperTop = this.positionAbs.top, helperLeft = this.positionAbs.left; - var itemHeight = o.height, itemWidth = o.width; - var itemTop = o.top, itemLeft = o.left; - - return $.ui.isOver(helperTop + dyClick, helperLeft + dxClick, itemTop, itemLeft, itemHeight, itemWidth); - }; - - $.each(inst.sortables, function(i) { - - //Copy over some variables to allow calling the sortable's native _intersectsWith - this.instance.positionAbs = inst.positionAbs; - this.instance.helperProportions = inst.helperProportions; - this.instance.offset.click = inst.offset.click; - - if(this.instance._intersectsWith(this.instance.containerCache)) { - - //If it intersects, we use a little isOver variable and set it once, so our move-in stuff gets fired only once - if(!this.instance.isOver) { - - this.instance.isOver = 1; - //Now we fake the start of dragging for the sortable instance, - //by cloning the list group item, appending it to the sortable and using it as inst.currentItem - //We can then fire the start event of the sortable with our passed browser event, and our own helper (so it doesn't create a new one) - this.instance.currentItem = $(self).clone().appendTo(this.instance.element).data("sortable-item", true); - this.instance.options._helper = this.instance.options.helper; //Store helper option to later restore it - this.instance.options.helper = function() { return ui.helper[0]; }; - - event.target = this.instance.currentItem[0]; - this.instance._mouseCapture(event, true); - this.instance._mouseStart(event, true, true); - - //Because the browser event is way off the new appended portlet, we modify a couple of variables to reflect the changes - this.instance.offset.click.top = inst.offset.click.top; - this.instance.offset.click.left = inst.offset.click.left; - this.instance.offset.parent.left -= inst.offset.parent.left - this.instance.offset.parent.left; - this.instance.offset.parent.top -= inst.offset.parent.top - this.instance.offset.parent.top; - - inst._trigger("toSortable", event); - inst.dropped = this.instance.element; //draggable revert needs that - //hack so receive/update callbacks work (mostly) - inst.currentItem = inst.element; - this.instance.fromOutside = inst; - - } - - //Provided we did all the previous steps, we can fire the drag event of the sortable on every draggable drag, when it intersects with the sortable - if(this.instance.currentItem) this.instance._mouseDrag(event); - - } else { - - //If it doesn't intersect with the sortable, and it intersected before, - //we fake the drag stop of the sortable, but make sure it doesn't remove the helper by using cancelHelperRemoval - if(this.instance.isOver) { - - this.instance.isOver = 0; - this.instance.cancelHelperRemoval = true; - - //Prevent reverting on this forced stop - this.instance.options.revert = false; - - // The out event needs to be triggered independently - this.instance._trigger('out', event, this.instance._uiHash(this.instance)); - - this.instance._mouseStop(event, true); - this.instance.options.helper = this.instance.options._helper; - - //Now we remove our currentItem, the list group clone again, and the placeholder, and animate the helper back to it's original size - this.instance.currentItem.remove(); - if(this.instance.placeholder) this.instance.placeholder.remove(); - - inst._trigger("fromSortable", event); - inst.dropped = false; //draggable revert needs that - } - - }; - - }); - - } -}); - -$.ui.plugin.add("draggable", "cursor", { - start: function(event, ui) { - var t = $('body'), o = $(this).data('draggable').options; - if (t.css("cursor")) o._cursor = t.css("cursor"); - t.css("cursor", o.cursor); - }, - stop: function(event, ui) { - var o = $(this).data('draggable').options; - if (o._cursor) $('body').css("cursor", o._cursor); - } -}); - -$.ui.plugin.add("draggable", "iframeFix", { - start: function(event, ui) { - var o = $(this).data('draggable').options; - $(o.iframeFix === true ? "iframe" : o.iframeFix).each(function() { - $('<div class="ui-draggable-iframeFix" style="background: #fff;"></div>') - .css({ - width: this.offsetWidth+"px", height: this.offsetHeight+"px", - position: "absolute", opacity: "0.001", zIndex: 1000 - }) - .css($(this).offset()) - .appendTo("body"); - }); - }, - stop: function(event, ui) { - $("div.ui-draggable-iframeFix").each(function() { this.parentNode.removeChild(this); }); //Remove frame helpers - } -}); - -$.ui.plugin.add("draggable", "opacity", { - start: function(event, ui) { - var t = $(ui.helper), o = $(this).data('draggable').options; - if(t.css("opacity")) o._opacity = t.css("opacity"); - t.css('opacity', o.opacity); - }, - stop: function(event, ui) { - var o = $(this).data('draggable').options; - if(o._opacity) $(ui.helper).css('opacity', o._opacity); - } -}); - -$.ui.plugin.add("draggable", "scroll", { - start: function(event, ui) { - var i = $(this).data("draggable"); - if(i.scrollParent[0] != document && i.scrollParent[0].tagName != 'HTML') i.overflowOffset = i.scrollParent.offset(); - }, - drag: function(event, ui) { - - var i = $(this).data("draggable"), o = i.options, scrolled = false; - - if(i.scrollParent[0] != document && i.scrollParent[0].tagName != 'HTML') { - - if(!o.axis || o.axis != 'x') { - if((i.overflowOffset.top + i.scrollParent[0].offsetHeight) - event.pageY < o.scrollSensitivity) - i.scrollParent[0].scrollTop = scrolled = i.scrollParent[0].scrollTop + o.scrollSpeed; - else if(event.pageY - i.overflowOffset.top < o.scrollSensitivity) - i.scrollParent[0].scrollTop = scrolled = i.scrollParent[0].scrollTop - o.scrollSpeed; - } - - if(!o.axis || o.axis != 'y') { - if((i.overflowOffset.left + i.scrollParent[0].offsetWidth) - event.pageX < o.scrollSensitivity) - i.scrollParent[0].scrollLeft = scrolled = i.scrollParent[0].scrollLeft + o.scrollSpeed; - else if(event.pageX - i.overflowOffset.left < o.scrollSensitivity) - i.scrollParent[0].scrollLeft = scrolled = i.scrollParent[0].scrollLeft - o.scrollSpeed; - } - - } else { - - if(!o.axis || o.axis != 'x') { - if(event.pageY - $(document).scrollTop() < o.scrollSensitivity) - scrolled = $(document).scrollTop($(document).scrollTop() - o.scrollSpeed); - else if($(window).height() - (event.pageY - $(document).scrollTop()) < o.scrollSensitivity) - scrolled = $(document).scrollTop($(document).scrollTop() + o.scrollSpeed); - } - - if(!o.axis || o.axis != 'y') { - if(event.pageX - $(document).scrollLeft() < o.scrollSensitivity) - scrolled = $(document).scrollLeft($(document).scrollLeft() - o.scrollSpeed); - else if($(window).width() - (event.pageX - $(document).scrollLeft()) < o.scrollSensitivity) - scrolled = $(document).scrollLeft($(document).scrollLeft() + o.scrollSpeed); - } - - } - - if(scrolled !== false && $.ui.ddmanager && !o.dropBehaviour) - $.ui.ddmanager.prepareOffsets(i, event); - - } -}); - -$.ui.plugin.add("draggable", "snap", { - start: function(event, ui) { - - var i = $(this).data("draggable"), o = i.options; - i.snapElements = []; - - $(o.snap.constructor != String ? ( o.snap.items || ':data(draggable)' ) : o.snap).each(function() { - var $t = $(this); var $o = $t.offset(); - if(this != i.element[0]) i.snapElements.push({ - item: this, - width: $t.outerWidth(), height: $t.outerHeight(), - top: $o.top, left: $o.left - }); - }); - - }, - drag: function(event, ui) { - - var inst = $(this).data("draggable"), o = inst.options; - var d = o.snapTolerance; - - var x1 = ui.offset.left, x2 = x1 + inst.helperProportions.width, - y1 = ui.offset.top, y2 = y1 + inst.helperProportions.height; - - for (var i = inst.snapElements.length - 1; i >= 0; i--){ - - var l = inst.snapElements[i].left, r = l + inst.snapElements[i].width, - t = inst.snapElements[i].top, b = t + inst.snapElements[i].height; - - //Yes, I know, this is insane ;) - if(!((l-d < x1 && x1 < r+d && t-d < y1 && y1 < b+d) || (l-d < x1 && x1 < r+d && t-d < y2 && y2 < b+d) || (l-d < x2 && x2 < r+d && t-d < y1 && y1 < b+d) || (l-d < x2 && x2 < r+d && t-d < y2 && y2 < b+d))) { - if(inst.snapElements[i].snapping) (inst.options.snap.release && inst.options.snap.release.call(inst.element, event, $.extend(inst._uiHash(), { snapItem: inst.snapElements[i].item }))); - inst.snapElements[i].snapping = false; - continue; - } - - if(o.snapMode != 'inner') { - var ts = Math.abs(t - y2) <= d; - var bs = Math.abs(b - y1) <= d; - var ls = Math.abs(l - x2) <= d; - var rs = Math.abs(r - x1) <= d; - if(ts) ui.position.top = inst._convertPositionTo("relative", { top: t - inst.helperProportions.height, left: 0 }).top - inst.margins.top; - if(bs) ui.position.top = inst._convertPositionTo("relative", { top: b, left: 0 }).top - inst.margins.top; - if(ls) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: l - inst.helperProportions.width }).left - inst.margins.left; - if(rs) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: r }).left - inst.margins.left; - } - - var first = (ts || bs || ls || rs); - - if(o.snapMode != 'outer') { - var ts = Math.abs(t - y1) <= d; - var bs = Math.abs(b - y2) <= d; - var ls = Math.abs(l - x1) <= d; - var rs = Math.abs(r - x2) <= d; - if(ts) ui.position.top = inst._convertPositionTo("relative", { top: t, left: 0 }).top - inst.margins.top; - if(bs) ui.position.top = inst._convertPositionTo("relative", { top: b - inst.helperProportions.height, left: 0 }).top - inst.margins.top; - if(ls) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: l }).left - inst.margins.left; - if(rs) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: r - inst.helperProportions.width }).left - inst.margins.left; - } - - if(!inst.snapElements[i].snapping && (ts || bs || ls || rs || first)) - (inst.options.snap.snap && inst.options.snap.snap.call(inst.element, event, $.extend(inst._uiHash(), { snapItem: inst.snapElements[i].item }))); - inst.snapElements[i].snapping = (ts || bs || ls || rs || first); - - }; - - } -}); - -$.ui.plugin.add("draggable", "stack", { - start: function(event, ui) { - - var o = $(this).data("draggable").options; - - var group = $.makeArray($(o.stack.group)).sort(function(a,b) { - return (parseInt($(a).css("zIndex"),10) || o.stack.min) - (parseInt($(b).css("zIndex"),10) || o.stack.min); - }); - - $(group).each(function(i) { - this.style.zIndex = o.stack.min + i; - }); - - this[0].style.zIndex = o.stack.min + group.length; - - } -}); - -$.ui.plugin.add("draggable", "zIndex", { - start: function(event, ui) { - var t = $(ui.helper), o = $(this).data("draggable").options; - if(t.css("zIndex")) o._zIndex = t.css("zIndex"); - t.css('zIndex', o.zIndex); - }, - stop: function(event, ui) { - var o = $(this).data("draggable").options; - if(o._zIndex) $(ui.helper).css('zIndex', o._zIndex); - } -}); - -})(jQuery); diff --git a/examples/lessons/6_English_yesNoQuestions/js/ui.droppable.js b/examples/lessons/6_English_yesNoQuestions/js/ui.droppable.js deleted file mode 100755 index 8e7be33..0000000 --- a/examples/lessons/6_English_yesNoQuestions/js/ui.droppable.js +++ /dev/null @@ -1,282 +0,0 @@ -/* - * jQuery UI Droppable 1.7.2 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Droppables - * - * Depends: - * ui.core.js - * ui.draggable.js - */ -(function($) { - -$.widget("ui.droppable", { - - _init: function() { - - var o = this.options, accept = o.accept; - this.isover = 0; this.isout = 1; - - this.options.accept = this.options.accept && $.isFunction(this.options.accept) ? this.options.accept : function(d) { - return d.is(accept); - }; - - //Store the droppable's proportions - this.proportions = { width: this.element[0].offsetWidth, height: this.element[0].offsetHeight }; - - // Add the reference and positions to the manager - $.ui.ddmanager.droppables[this.options.scope] = $.ui.ddmanager.droppables[this.options.scope] || []; - $.ui.ddmanager.droppables[this.options.scope].push(this); - - (this.options.addClasses && this.element.addClass("ui-droppable")); - - }, - - destroy: function() { - var drop = $.ui.ddmanager.droppables[this.options.scope]; - for ( var i = 0; i < drop.length; i++ ) - if ( drop[i] == this ) - drop.splice(i, 1); - - this.element - .removeClass("ui-droppable ui-droppable-disabled") - .removeData("droppable") - .unbind(".droppable"); - }, - - _setData: function(key, value) { - - if(key == 'accept') { - this.options.accept = value && $.isFunction(value) ? value : function(d) { - return d.is(value); - }; - } else { - $.widget.prototype._setData.apply(this, arguments); - } - - }, - - _activate: function(event) { - var draggable = $.ui.ddmanager.current; - if(this.options.activeClass) this.element.addClass(this.options.activeClass); - (draggable && this._trigger('activate', event, this.ui(draggable))); - }, - - _deactivate: function(event) { - var draggable = $.ui.ddmanager.current; - if(this.options.activeClass) this.element.removeClass(this.options.activeClass); - (draggable && this._trigger('deactivate', event, this.ui(draggable))); - }, - - _over: function(event) { - - var draggable = $.ui.ddmanager.current; - if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return; // Bail if draggable and droppable are same element - - if (this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - if(this.options.hoverClass) this.element.addClass(this.options.hoverClass); - this._trigger('over', event, this.ui(draggable)); - } - - }, - - _out: function(event) { - - var draggable = $.ui.ddmanager.current; - if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return; // Bail if draggable and droppable are same element - - if (this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - if(this.options.hoverClass) this.element.removeClass(this.options.hoverClass); - this._trigger('out', event, this.ui(draggable)); - } - - }, - - _drop: function(event,custom) { - - var draggable = custom || $.ui.ddmanager.current; - if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return false; // Bail if draggable and droppable are same element - - var childrenIntersection = false; - this.element.find(":data(droppable)").not(".ui-draggable-dragging").each(function() { - var inst = $.data(this, 'droppable'); - if(inst.options.greedy && $.ui.intersect(draggable, $.extend(inst, { offset: inst.element.offset() }), inst.options.tolerance)) { - childrenIntersection = true; return false; - } - }); - if(childrenIntersection) return false; - - if(this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - if(this.options.activeClass) this.element.removeClass(this.options.activeClass); - if(this.options.hoverClass) this.element.removeClass(this.options.hoverClass); - this._trigger('drop', event, this.ui(draggable)); - return this.element; - } - - return false; - - }, - - ui: function(c) { - return { - draggable: (c.currentItem || c.element), - helper: c.helper, - position: c.position, - absolutePosition: c.positionAbs, //deprecated - offset: c.positionAbs - }; - } - -}); - -$.extend($.ui.droppable, { - version: "1.7.2", - eventPrefix: 'drop', - defaults: { - accept: '*', - activeClass: false, - addClasses: true, - greedy: false, - hoverClass: false, - scope: 'default', - tolerance: 'intersect' - } -}); - -$.ui.intersect = function(draggable, droppable, toleranceMode) { - - if (!droppable.offset) return false; - - var x1 = (draggable.positionAbs || draggable.position.absolute).left, x2 = x1 + draggable.helperProportions.width, - y1 = (draggable.positionAbs || draggable.position.absolute).top, y2 = y1 + draggable.helperProportions.height; - var l = droppable.offset.left, r = l + droppable.proportions.width, - t = droppable.offset.top, b = t + droppable.proportions.height; - - switch (toleranceMode) { - case 'fit': - return (l < x1 && x2 < r - && t < y1 && y2 < b); - break; - case 'intersect': - return (l < x1 + (draggable.helperProportions.width / 2) // Right Half - && x2 - (draggable.helperProportions.width / 2) < r // Left Half - && t < y1 + (draggable.helperProportions.height / 2) // Bottom Half - && y2 - (draggable.helperProportions.height / 2) < b ); // Top Half - break; - case 'pointer': - var draggableLeft = ((draggable.positionAbs || draggable.position.absolute).left + (draggable.clickOffset || draggable.offset.click).left), - draggableTop = ((draggable.positionAbs || draggable.position.absolute).top + (draggable.clickOffset || draggable.offset.click).top), - isOver = $.ui.isOver(draggableTop, draggableLeft, t, l, droppable.proportions.height, droppable.proportions.width); - return isOver; - break; - case 'touch': - return ( - (y1 >= t && y1 <= b) || // Top edge touching - (y2 >= t && y2 <= b) || // Bottom edge touching - (y1 < t && y2 > b) // Surrounded vertically - ) && ( - (x1 >= l && x1 <= r) || // Left edge touching - (x2 >= l && x2 <= r) || // Right edge touching - (x1 < l && x2 > r) // Surrounded horizontally - ); - break; - default: - return false; - break; - } - -}; - -/* - This manager tracks offsets of draggables and droppables -*/ -$.ui.ddmanager = { - current: null, - droppables: { 'default': [] }, - prepareOffsets: function(t, event) { - - var m = $.ui.ddmanager.droppables[t.options.scope]; - var type = event ? event.type : null; // workaround for #2317 - var list = (t.currentItem || t.element).find(":data(droppable)").andSelf(); - - droppablesLoop: for (var i = 0; i < m.length; i++) { - - if(m[i].options.disabled || (t && !m[i].options.accept.call(m[i].element[0],(t.currentItem || t.element)))) continue; //No disabled and non-accepted - for (var j=0; j < list.length; j++) { if(list[j] == m[i].element[0]) { m[i].proportions.height = 0; continue droppablesLoop; } }; //Filter out elements in the current dragged item - m[i].visible = m[i].element.css("display") != "none"; if(!m[i].visible) continue; //If the element is not visible, continue - - m[i].offset = m[i].element.offset(); - m[i].proportions = { width: m[i].element[0].offsetWidth, height: m[i].element[0].offsetHeight }; - - if(type == "mousedown") m[i]._activate.call(m[i], event); //Activate the droppable if used directly from draggables - - } - - }, - drop: function(draggable, event) { - - var dropped = false; - $.each($.ui.ddmanager.droppables[draggable.options.scope], function() { - - if(!this.options) return; - if (!this.options.disabled && this.visible && $.ui.intersect(draggable, this, this.options.tolerance)) - dropped = this._drop.call(this, event); - - if (!this.options.disabled && this.visible && this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - this.isout = 1; this.isover = 0; - this._deactivate.call(this, event); - } - - }); - return dropped; - - }, - drag: function(draggable, event) { - - //If you have a highly dynamic page, you might try this option. It renders positions every time you move the mouse. - if(draggable.options.refreshPositions) $.ui.ddmanager.prepareOffsets(draggable, event); - - //Run through all droppables and check their positions based on specific tolerance options - - $.each($.ui.ddmanager.droppables[draggable.options.scope], function() { - - if(this.options.disabled || this.greedyChild || !this.visible) return; - var intersects = $.ui.intersect(draggable, this, this.options.tolerance); - - var c = !intersects && this.isover == 1 ? 'isout' : (intersects && this.isover == 0 ? 'isover' : null); - if(!c) return; - - var parentInstance; - if (this.options.greedy) { - var parent = this.element.parents(':data(droppable):eq(0)'); - if (parent.length) { - parentInstance = $.data(parent[0], 'droppable'); - parentInstance.greedyChild = (c == 'isover' ? 1 : 0); - } - } - - // we just moved into a greedy child - if (parentInstance && c == 'isover') { - parentInstance['isover'] = 0; - parentInstance['isout'] = 1; - parentInstance._out.call(parentInstance, event); - } - - this[c] = 1; this[c == 'isout' ? 'isover' : 'isout'] = 0; - this[c == "isover" ? "_over" : "_out"].call(this, event); - - // we just moved out of a greedy child - if (parentInstance && c == 'isout') { - parentInstance['isout'] = 0; - parentInstance['isover'] = 1; - parentInstance._over.call(parentInstance, event); - } - }); - - } -}; - -})(jQuery); diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/audio/correct.wav b/examples/lessons/6_Maths_AddSubtract/assets/audio/correct.wav Binary files differindex a49ba33..a49ba33 100755 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/audio/correct.wav +++ b/examples/lessons/6_Maths_AddSubtract/assets/audio/correct.wav diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/audio/incorrect.wav b/examples/lessons/6_Maths_AddSubtract/assets/audio/incorrect.wav Binary files differindex 906c6a3..906c6a3 100755 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/audio/incorrect.wav +++ b/examples/lessons/6_Maths_AddSubtract/assets/audio/incorrect.wav diff --git a/examples/lessons/6_English_syllables/assets/image/bg_footer.png b/examples/lessons/6_Maths_AddSubtract/assets/image/bg_footer.png Binary files differindex 8982264..8982264 100755 --- a/examples/lessons/6_English_syllables/assets/image/bg_footer.png +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/bg_footer.png diff --git a/examples/lessons/6_English_syllables/assets/image/bg_header.png b/examples/lessons/6_Maths_AddSubtract/assets/image/bg_header.png Binary files differindex 98213f7..98213f7 100755 --- a/examples/lessons/6_English_syllables/assets/image/bg_header.png +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/bg_header.png diff --git a/examples/lessons/6_English_syllables/assets/image/bg_title_block.png b/examples/lessons/6_Maths_AddSubtract/assets/image/bg_title_block.png Binary files differindex 2c9dacf..2c9dacf 100755 --- a/examples/lessons/6_English_syllables/assets/image/bg_title_block.png +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/bg_title_block.png diff --git a/examples/lessons/6_English_syllables/assets/image/btn_back.png b/examples/lessons/6_Maths_AddSubtract/assets/image/btn_back.png Binary files differindex d9fbf14..d9fbf14 100755 --- a/examples/lessons/6_English_syllables/assets/image/btn_back.png +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/btn_back.png diff --git a/examples/lessons/6_English_syllables/assets/image/btn_back_hover.png b/examples/lessons/6_Maths_AddSubtract/assets/image/btn_back_hover.png Binary files differindex 0911fcc..0911fcc 100755 --- a/examples/lessons/6_English_syllables/assets/image/btn_back_hover.png +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/btn_back_hover.png diff --git a/examples/lessons/6_English_syllables/assets/image/btn_help.png b/examples/lessons/6_Maths_AddSubtract/assets/image/btn_help.png Binary files differindex 6753e9c..6753e9c 100755 --- a/examples/lessons/6_English_syllables/assets/image/btn_help.png +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/btn_help.png diff --git a/examples/lessons/6_English_syllables/assets/image/btn_help_hover.png b/examples/lessons/6_Maths_AddSubtract/assets/image/btn_help_hover.png Binary files differindex d3ccd92..d3ccd92 100755 --- a/examples/lessons/6_English_syllables/assets/image/btn_help_hover.png +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/btn_help_hover.png diff --git a/examples/lessons/6_English_syllables/assets/image/btn_next.png b/examples/lessons/6_Maths_AddSubtract/assets/image/btn_next.png Binary files differindex 9d70993..9d70993 100755 --- a/examples/lessons/6_English_syllables/assets/image/btn_next.png +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/btn_next.png diff --git a/examples/lessons/6_English_syllables/assets/image/btn_next_hover.png b/examples/lessons/6_Maths_AddSubtract/assets/image/btn_next_hover.png Binary files differindex 2cd4d37..2cd4d37 100755 --- a/examples/lessons/6_English_syllables/assets/image/btn_next_hover.png +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/btn_next_hover.png diff --git a/examples/lessons/6_English_syllables/assets/image/btn_ole.png b/examples/lessons/6_Maths_AddSubtract/assets/image/btn_ole.png Binary files differindex 0e775e9..0e775e9 100755 --- a/examples/lessons/6_English_syllables/assets/image/btn_ole.png +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/btn_ole.png diff --git a/examples/lessons/6_English_syllables/assets/image/btn_ole_hover.png b/examples/lessons/6_Maths_AddSubtract/assets/image/btn_ole_hover.png Binary files differindex c43c5f7..c43c5f7 100755 --- a/examples/lessons/6_English_syllables/assets/image/btn_ole_hover.png +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/btn_ole_hover.png diff --git a/examples/lessons/6_English_syllables/assets/image/btn_play_again.png b/examples/lessons/6_Maths_AddSubtract/assets/image/btn_play_again.png Binary files differindex 3594d18..3594d18 100755 --- a/examples/lessons/6_English_syllables/assets/image/btn_play_again.png +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/btn_play_again.png diff --git a/examples/lessons/6_English_syllables/assets/image/btn_play_again_hover.png b/examples/lessons/6_Maths_AddSubtract/assets/image/btn_play_again_hover.png Binary files differindex ebb8f8c..ebb8f8c 100755 --- a/examples/lessons/6_English_syllables/assets/image/btn_play_again_hover.png +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/btn_play_again_hover.png diff --git a/examples/lessons/6_English_syllables/assets/image/btn_play_again_mouse_down.png b/examples/lessons/6_Maths_AddSubtract/assets/image/btn_play_again_mouse_down.png Binary files differindex 07d6e45..07d6e45 100755 --- a/examples/lessons/6_English_syllables/assets/image/btn_play_again_mouse_down.png +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/btn_play_again_mouse_down.png diff --git a/examples/lessons/6_English_syllables/assets/image/btn_start.png b/examples/lessons/6_Maths_AddSubtract/assets/image/btn_start.png Binary files differindex 32e5f20..32e5f20 100755 --- a/examples/lessons/6_English_syllables/assets/image/btn_start.png +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/btn_start.png diff --git a/examples/lessons/6_English_syllables/assets/image/btn_start_hover.png b/examples/lessons/6_Maths_AddSubtract/assets/image/btn_start_hover.png Binary files differindex 811ce78..811ce78 100755 --- a/examples/lessons/6_English_syllables/assets/image/btn_start_hover.png +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/btn_start_hover.png diff --git a/examples/lessons/6_English_syllables/assets/image/btn_start_mouse_down.png b/examples/lessons/6_Maths_AddSubtract/assets/image/btn_start_mouse_down.png Binary files differindex 5acd43b..5acd43b 100755 --- a/examples/lessons/6_English_syllables/assets/image/btn_start_mouse_down.png +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/btn_start_mouse_down.png diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/check.png b/examples/lessons/6_Maths_AddSubtract/assets/image/check.png Binary files differindex bd0afcb..bd0afcb 100755 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/check.png +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/check.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/correct.png b/examples/lessons/6_Maths_AddSubtract/assets/image/correct.png Binary files differnew file mode 100755 index 0000000..f0e6699 --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/correct.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/help.png b/examples/lessons/6_Maths_AddSubtract/assets/image/help.png Binary files differnew file mode 100755 index 0000000..ae50162 --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/help.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/image1.png b/examples/lessons/6_Maths_AddSubtract/assets/image/image1.png Binary files differnew file mode 100755 index 0000000..d40c626 --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/image1.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/image2.png b/examples/lessons/6_Maths_AddSubtract/assets/image/image2.png Binary files differnew file mode 100755 index 0000000..a09d579 --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/image2.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/image3.png b/examples/lessons/6_Maths_AddSubtract/assets/image/image3.png Binary files differnew file mode 100755 index 0000000..7dfe911 --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/image3.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/incorrect.png b/examples/lessons/6_Maths_AddSubtract/assets/image/incorrect.png Binary files differnew file mode 100755 index 0000000..62cbbef --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/incorrect.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img0.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img0.png Binary files differnew file mode 100755 index 0000000..ad5d81c --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img0.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img1.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img1.png Binary files differnew file mode 100755 index 0000000..2b881cd --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img1.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img10.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img10.png Binary files differnew file mode 100755 index 0000000..8753799 --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img10.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img11.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img11.png Binary files differnew file mode 100755 index 0000000..dd5ae22 --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img11.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img12.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img12.png Binary files differnew file mode 100755 index 0000000..0f4f18d --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img12.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img13.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img13.png Binary files differnew file mode 100755 index 0000000..ba75502 --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img13.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img14.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img14.png Binary files differnew file mode 100755 index 0000000..16ecd7e --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img14.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img15.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img15.png Binary files differnew file mode 100755 index 0000000..04b16c9 --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img15.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img2.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img2.png Binary files differnew file mode 100755 index 0000000..135c34d --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img2.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img3.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img3.png Binary files differnew file mode 100755 index 0000000..a151c7d --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img3.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img4.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img4.png Binary files differnew file mode 100755 index 0000000..845939d --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img4.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img5.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img5.png Binary files differnew file mode 100755 index 0000000..2bf4138 --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img5.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img6.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img6.png Binary files differnew file mode 100755 index 0000000..9502f19 --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img6.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img7.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img7.png Binary files differnew file mode 100755 index 0000000..8d706c8 --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img7.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img8.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img8.png Binary files differnew file mode 100755 index 0000000..506456a --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img8.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img9.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img9.png Binary files differnew file mode 100755 index 0000000..97dbe5d --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level1Img9.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img0.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img0.png Binary files differnew file mode 100755 index 0000000..9ddd2fb --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img0.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img1.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img1.png Binary files differnew file mode 100755 index 0000000..6674006 --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img1.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img10.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img10.png Binary files differnew file mode 100755 index 0000000..ba3a27d --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img10.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img11.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img11.png Binary files differnew file mode 100755 index 0000000..0809b80 --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img11.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img12.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img12.png Binary files differnew file mode 100755 index 0000000..123401e --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img12.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img13.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img13.png Binary files differnew file mode 100755 index 0000000..cabfb55 --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img13.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img14.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img14.png Binary files differnew file mode 100755 index 0000000..bab1f4f --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img14.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img15.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img15.png Binary files differnew file mode 100755 index 0000000..b63119d --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img15.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img2.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img2.png Binary files differnew file mode 100755 index 0000000..7d0d82d --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img2.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img3.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img3.png Binary files differnew file mode 100755 index 0000000..45b213a --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img3.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img4.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img4.png Binary files differnew file mode 100755 index 0000000..a3e2b2a --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img4.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img5.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img5.png Binary files differnew file mode 100755 index 0000000..e49ffae --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img5.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img6.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img6.png Binary files differnew file mode 100755 index 0000000..0065f5d --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img6.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img7.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img7.png Binary files differnew file mode 100755 index 0000000..64e8498 --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img7.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img8.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img8.png Binary files differnew file mode 100755 index 0000000..83b2678 --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img8.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img9.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img9.png Binary files differnew file mode 100755 index 0000000..3003a81 --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level2Img9.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img0.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img0.png Binary files differnew file mode 100755 index 0000000..62a082a --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img0.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img1.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img1.png Binary files differnew file mode 100755 index 0000000..e230115 --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img1.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img10.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img10.png Binary files differnew file mode 100755 index 0000000..49d8235 --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img10.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img11.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img11.png Binary files differnew file mode 100755 index 0000000..cbbf9c6 --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img11.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img12.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img12.png Binary files differnew file mode 100755 index 0000000..d0618fb --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img12.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img13.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img13.png Binary files differnew file mode 100755 index 0000000..d3623e7 --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img13.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img14.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img14.png Binary files differnew file mode 100755 index 0000000..152789a --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img14.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img15.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img15.png Binary files differnew file mode 100755 index 0000000..c5403da --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img15.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img2.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img2.png Binary files differnew file mode 100755 index 0000000..71bffe2 --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img2.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img3.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img3.png Binary files differnew file mode 100755 index 0000000..facf01b --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img3.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img4.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img4.png Binary files differnew file mode 100755 index 0000000..722c3ae --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img4.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img5.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img5.png Binary files differnew file mode 100755 index 0000000..a8c3a3a --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img5.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img6.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img6.png Binary files differnew file mode 100755 index 0000000..df37c20 --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img6.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img7.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img7.png Binary files differnew file mode 100755 index 0000000..4cfeaa2 --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img7.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img8.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img8.png Binary files differnew file mode 100755 index 0000000..b4a3921 --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img8.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img9.png b/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img9.png Binary files differnew file mode 100755 index 0000000..12806a2 --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/level3Img9.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/levelDown.png b/examples/lessons/6_Maths_AddSubtract/assets/image/levelDown.png Binary files differnew file mode 100755 index 0000000..6e0387b --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/levelDown.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/levelUp.png b/examples/lessons/6_Maths_AddSubtract/assets/image/levelUp.png Binary files differnew file mode 100755 index 0000000..efd163f --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/levelUp.png diff --git a/examples/lessons/6_Maths_AddSubtract/assets/image/picClock.png b/examples/lessons/6_Maths_AddSubtract/assets/image/picClock.png Binary files differnew file mode 100755 index 0000000..63e50e2 --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/picClock.png diff --git a/examples/lessons/6_English_syllables/assets/image/title_block_lt.png b/examples/lessons/6_Maths_AddSubtract/assets/image/title_block_lt.png Binary files differindex 4696182..4696182 100755 --- a/examples/lessons/6_English_syllables/assets/image/title_block_lt.png +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/title_block_lt.png diff --git a/examples/lessons/6_English_syllables/assets/image/title_block_rt.png b/examples/lessons/6_Maths_AddSubtract/assets/image/title_block_rt.png Binary files differindex 37cc44a..37cc44a 100755 --- a/examples/lessons/6_English_syllables/assets/image/title_block_rt.png +++ b/examples/lessons/6_Maths_AddSubtract/assets/image/title_block_rt.png diff --git a/examples/lessons/6_Maths_AddSubtract/css/lesson.css b/examples/lessons/6_Maths_AddSubtract/css/lesson.css new file mode 100755 index 0000000..7ba7642 --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/css/lesson.css @@ -0,0 +1,332 @@ +@CHARSET "UTF-8";
+/****** Page Styles ****/
+
+/* Designed for 1200*900 px screen resolution */
+
+body {
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ font-size: 10pt;
+ margin: 0px;
+ background-color: #FFFFCC;
+}
+#header {
+ background-image: url(../assets/image/bg_header.png);
+ background-repeat: repeat-x;
+ height: 75px;
+ width: 100%;
+ position: absolute;
+ left: 0px;
+ top: 0px;
+}
+#topbtn_left {
+ float: left;
+ height: 60px;
+ width: 60px;
+ padding-top: 6px;
+ padding-left: 15px;
+}
+
+
+ .linkBack{
+ width: 60px; height: 59px;
+ background:url(../assets/image/btn_back.png);
+ }
+ .linkBack:hover{
+ background:url(../assets/image/btn_back_hover.png);
+ }
+
+#lesson_title {
+ float: left;
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ font-size: 16pt;
+ font-weight: bold;
+ color: #FFFFFF;
+ margin-left: 10px;
+ background-image: url(../assets/image/bg_title_block.png);
+}
+#topbtn_right {
+ float: right;
+ height: 60px;
+ width: 60px;
+ padding-top: 6px;
+ padding-right: 15px;
+}
+ #linkHelp{
+ width: 60px; height: 60px;
+ background:url(../assets/image/btn_help.png);
+ }
+ #linkHelp:hover{
+ background:url(../assets/image/btn_help_hover.png);
+ }
+ #linkOle{
+ width: 60px; height: 60px;
+ background:url(../assets/image/btn_ole.png);
+ }
+ #linkOle:hover{
+ background:url(../assets/image/btn_ole_hover.png);
+ }
+ .linkNext{var bindImgCss = {
+ 'float':'left',
+ 'width': '450px',
+ 'height':'40px',
+ 'margin-top':'0.25em',
+ 'text-align':'center',
+ 'padding-bottom':'0.3em'
+ };
+ width: 60px; height: 60px;
+ background:url(../assets/image/btn_next.png);
+ }
+ .linkNext:hover{
+ background:url(../assets/image/btn_next_hover.png);
+ }
+#footer {
+ position:relative;
+ background-image: url(../assets/image/bg_footer.png);
+ background-repeat: repeat-x;
+ height: 75px;
+ width: 100%;
+ left: 0px;
+ bottom: 0px;
+}
+#score_box {
+ float: left;
+ padding-left: 5px;
+ padding-top: 0.7em;
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ color: #FFFF00;
+ font-size: 16pt;
+ font-weight: bold;
+}
+#botbtn_right {
+ float: right;
+ height: 55px;
+ padding-right: 5px;
+ padding-top: 10px;
+}
+ #linkCheck{
+ margin: 1em 3em 0 0;
+ width: 101px; height: 30px;
+ background-image: url(../assets/image/check.png);
+ }
+
+ #linkStart{
+ width: 251px; height: 55px;
+ background:url(../assets/image/btn_start.png);
+ }
+ #linkStart:hover{
+ background:url(../assets/image/btn_start_hover.png);
+ }
+ #linkStart:active{
+ background:url(../assets/image/btn_start_mouse_down.png);
+ }
+ #linkPlayAgain{
+ width: 251px; height: 55px;
+ background:url(../assets/image/btn_play_again.png);
+ }
+ #linkPlayAgain:hover{
+ background:url(../assets/image/btn_play_again_hover.png);
+ }
+ #linkPlayAgain:active{
+ background:url(../assets/image/btn_play_again_mouse_down.png);
+ }
+
+
+#timerBar {
+ position: absolute;
+ left: 30%;
+ bottom: 25%;
+ width: 140px;
+ height:35px;
+ padding-left: 10px;
+ padding-top: 0px;
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ color: #FFFF00;
+ font-size: 16pt;
+ font-weight: bold;
+ }
+
+ .timerBoxes{ /* Show the timer running after the game has began.... */
+ float:right;
+ width: 80px;
+ height: 35px;
+ border: 2px dotted green;
+ padding-left: 0.5em;
+ color: blue;
+ text-align:center;
+ font : bold 25px Arial Black, Times New Roman;
+ background: #ACC;
+ }
+
+#linkNextLesson{
+ position:absolute;
+ bottom: 75px;
+ right: 10px;
+}
+#linkPrevLesson{
+ position:absolute;
+ bottom: 75px;
+ left: 10px;
+}
+
+/**** End of the page style ****/
+
+/**** Game Styles ****/
+
+a{
+ color:#FFFFCC;
+}
+#currentTitle{
+ width: 150px;
+ height: 80px;
+ font:25px/30px "Courier New", Courier, monospace;
+ font-weight: bold;
+ color: red;
+}
+#content{
+ position:relative;
+ margin: 0 auto;
+ margin-top: 80px;
+ width: 1198px;
+ height: 555px;
+}
+ #imageDisplayBox{
+ margin: 5px auto;
+ width: 600px;
+ height: 400px;
+ border: 1px solid #AFEF45;
+ }
+ .default{
+ float:left;
+ width: 148px;
+ height: 98px;
+ background-color:#C4FFC4;
+ border: 1px solid #AFEF45;
+ }
+ .correct{
+ float:left;
+ width: 69px;
+ height: 48px;
+ background-color:#A6E4FE;
+ border: 2px solid #F9F900;
+ }
+
+
+ #questionSection{
+ margin: 1em auto;
+ width: 50em;
+ height: 6em;
+ font: 20px/25px Verdana, Geneva, Arial, Helvetica, sans-serif;
+ font-weight:bolder;
+ text-align:center;
+ }
+ #questionInfo{
+ text-align:center;
+ width: 28em;
+ height: 2em;
+ margin: 0.5em auto;
+ }
+ .numberBox{
+ float:left;
+ width: 2em;
+ height: 1em;
+ padding: 0.1em;
+ }
+ .clickBox{
+ margin: 0 1.5em;
+ float:left;
+ width: 2em;
+ height: 1.2em;
+ padding: 0.1em;
+ border: 2px solid #000;
+ cursor:pointer;
+ }
+ #checkAnswer{
+ float:left;
+ width:64px;
+ height:64px;
+ border: 2px solid re;
+ }
+
+ #levelShow{
+ position:fixed;
+ top: 35%;
+ right:10%;
+ width: 50px;
+ height: 150px;
+ }
+ .levelImages{
+ float:left;
+ width: 48px;
+ height:48px;
+ cursor:pointer;
+ }
+ .levelText{
+ float:left;
+ width: 48px;
+ height:48px;
+ margin-top: .7em;
+ font: 20px/25px Verdana, Geneva, Arial, Helvetica, sans-serif;
+ font-weight:bolder;
+ }
+
+
+ #gameInformation{
+ position:absolute;
+ top: 70%;
+ right:0%;
+ width: 250px;
+ height: 150px;
+ font: 25px/30px Verdana, Geneva, Arial, Helvetica, sans-serif;
+ font-weight:bolder;
+ color: red;
+ }
+ /**** Page Classes ***/
+
+ .float-left{
+ float:left;
+ }
+ .yellow{
+ background-color: yellow;
+ }
+ .clicked{
+ background-color: #FF9900;
+ }
+
+#help{
+ display:none;
+ position:absolute;
+ right: 60px;
+ top: 75px;;
+ width: 256px;
+ height: 600px;
+ background:url(../assets/image/help.png);
+ z-index:40;
+}
+
+
+ #gameOver{
+ opacity: 1;
+ display:none;
+ position:absolute;
+ top:45%;
+ left: 30%;
+ color: blue;
+ text-align:center;
+ font : bold 45px/65px Arial Black, Times New Roman;
+ }
+ #gameOverInfo{
+ margin-top: 35px;
+ text-align:center;
+ font: 20px/25px Helvetica, Geneva, Arial, Verdana, sans-serif;
+ font-weight:bold;
+ color:#FF0000;
+
+ }
+ .specialText{
+ margin-top: 1em;
+ font: 20px/25px Helvetica, Geneva, Arial, Verdana, sans-serif;
+ font-weight:bold;
+ color:#FF9900;
+ border-bottom: 2px dotted #CCC;
+
+ }
diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/css/ui.scoreboard.css b/examples/lessons/6_Maths_AddSubtract/css/ui.scoreboard.css index 11cdbb5..11cdbb5 100755 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/css/ui.scoreboard.css +++ b/examples/lessons/6_Maths_AddSubtract/css/ui.scoreboard.css diff --git a/examples/lessons/6_Maths_AddSubtract/index.html b/examples/lessons/6_Maths_AddSubtract/index.html new file mode 100755 index 0000000..00caf40 --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/index.html @@ -0,0 +1,47 @@ +<!DOCTYPE html>
+<html>
+<head>
+ <title>Class 6 Maths Add Subtract</title>
+ <meta name="keywords" content="karma,javascript,html5,sugar,sugarlabs,gsoc,ole,nepal" />
+ <link type="text/css" rel="stylesheet" href="css/ui.scoreboard.css" />
+ <link type="text/css" rel="stylesheet" href="css/lesson.css" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <link type="image/ico" rel="icon" href="../../assets/default/image/favicon.ico" />
+ <script type="text/javascript" src="js/jquery-1.4.js"></script>
+ <script type="text/javascript" src="js/ui.core.js"></script>
+ <script type="text/javascript" src="js/ui.scoreboard.js"></script>
+ <script type="text/javascript" src="js/karma.js"></script>
+ <script type="text/javascript" src="js/jquery.watermarkinput.js"></script>
+ <script type="text/javascript" src="js/lesson.js"></script>
+</head>
+<body>
+ <div id="header">
+ <div id="topbtn_left"><a href="#"><div id="linkBackLesson" class="linkBack"></div></a></div>
+ <div id="lesson_title">
+ <img src="assets/image/title_block_lt.png" width="33" height="75" align="absmiddle" />
+ Add Subtract || <span id="currentTitle">जोड घटाउ अभ्यास </span>
+ <img src="assets/image/title_block_rt.png" width="33" height="75" align="absmiddle" />
+ </div>
+ <div id="topbtn_right"><a href="#"><div id="linkHelp"></div></a></div>
+ <div id="topbtn_right"><a href="http://olenepal.org"><div id="linkOle"></div></a></div>
+ </div>
+
+ <div id="content"></div>
+ <div id="help"></div>
+ <div id="gameOver"></div>
+ <form name="delayForm">
+ <input type="hidden" name="delayval" size="5">
+ </form>
+
+ <div id="footer">
+ <div id="botbtn_right"><a href="#"><div id="linkPlayAgain"></div></a></div>
+ <div id="botbtn_right"><a href="#"><div id="linkStart"></div></a></div>
+ <div id="botbtn_right"><a href="#"><div id="linkCheck"></div></a></div>
+ <div id="score_box"></div>
+ <div id ="timerBar">
+ <img src="assets/image/picClock.png" />
+ <div id="timerBox1" class="timerBoxes"></div>
+ </div>
+ </div>
+</body>
+</html>
diff --git a/examples/lessons/6_English_VocabularyAnimals/js/jquery-1.4.js b/examples/lessons/6_Maths_AddSubtract/js/jquery-1.4.js index a448490..a448490 100755 --- a/examples/lessons/6_English_VocabularyAnimals/js/jquery-1.4.js +++ b/examples/lessons/6_Maths_AddSubtract/js/jquery-1.4.js diff --git a/examples/lessons/6_English_months/js/jquery.watermarkinput.js b/examples/lessons/6_Maths_AddSubtract/js/jquery.watermarkinput.js index fefa670..fefa670 100755 --- a/examples/lessons/6_English_months/js/jquery.watermarkinput.js +++ b/examples/lessons/6_Maths_AddSubtract/js/jquery.watermarkinput.js diff --git a/examples/lessons/6_English_syllables/js/karma.js b/examples/lessons/6_Maths_AddSubtract/js/karma.js index 03f027b..03f027b 100755 --- a/examples/lessons/6_English_syllables/js/karma.js +++ b/examples/lessons/6_Maths_AddSubtract/js/karma.js diff --git a/examples/lessons/6_Maths_AddSubtract/js/lesson.js b/examples/lessons/6_Maths_AddSubtract/js/lesson.js new file mode 100755 index 0000000..9668719 --- /dev/null +++ b/examples/lessons/6_Maths_AddSubtract/js/lesson.js @@ -0,0 +1,301 @@ +$(document).ready(function(){ + var k = Karma({ + audio: [{'name':'correct','file':'correct.wav'}, + {'name':'incorrect','file':'incorrect.wav'}, + ]}); + + k.ready(function(){ + var i,j,s,t; + var checked; + var TOTAL_QUES = 16; + var TOTAL_LEVEL = 3; + var currentLevel; + var click1Counter; + var click2Counter; + var correctAns; + var flag_correct; + var flag_start = 0; //for play again but not to throw error + var totalCounter; + var correctCounter; + var randNumbers = []; + var randImg = []; + var signs = ['+','-']; + var correctSigns = []; //array to store the correct signs + + var nepaliNumbers = ['०','१','२','३','४','५','६',' ७','८','९']; + var scoreboard = $('#score_box').scoreboard({'layout':'horizontal', + 'winningScore': TOTAL_QUES}); + var clickValues = []; //store the clicks couting index 0 for click 1st and index 1 for 2nd clickbox + + var checkTime = function(timePara){ + if (timePara<10 ){ + timePara="00" + timePara; + } + else if (timePara<100 ){ + timePara="0" + timePara; + } + return timePara; + }; + + var stopTimer = function(){ + s = 0; + clearTimeout(t); + }; + var startTimer = function(){ + s = 0; + s=checkTime(s); + $('#timerBox1').html(s); + increaseTime(); + }; + + + var increaseTime = function(){ + s++; + s=checkTime(s); + $('#timerBox1').html(s); + if(s === 300){ + play = 0; + $('#gameInformation').html('!!! फेरी खेलौ बटन मा क्लिक गर !!! '); + }else{ + t=setTimeout(function(){increaseTime();},1000); + } + + }; + + var genRandImages=function (){correctCounter = 0; + randImg[0] = k.rand(0,TOTAL_QUES-1); + for(i=1; i<TOTAL_QUES; i++){ + do{ + flag = 0; + randImg[i] = k.rand(0,TOTAL_QUES-1); + for(j=0; j<i; j++){ + if(randImg[i] === randImg[j]){ + flag++; + } + } + }while(flag != 0 ); //end of do while loop + } + }; + + var convertIntoNepali = function(num){ //convert the english number sent as string to Nepali + var convertedNum = ''; + for(i = 0;i<num.length;i++){ + convertedNum += nepaliNumbers[num[i]]; + } + return convertedNum; + }; + + + var nextQuestion = function(){ + flag_correct = 1; + var num1,num2,num3; + clickValues = [0,0]; + click1Counter = 0; + click2Counter = 0; + $('#questionInfo').html('').append('<div id="checkAnswer"></div>'); + $('#questionInfo').append('<div id="number1" class="numberBox"></div>'); + $('#questionInfo').append('<div id="click0" class="clickBox yellow"></div>'); + $('#questionInfo').append('<div id="number2" class="numberBox"></div>'); + $('#questionInfo').append('<div id="click1" class="clickBox yellow"></div>'); + $('#questionInfo').append('<div id="number3" class="numberBox"></div>'); + $('#questionInfo').append('<div id="equals" class="numberBox"></div>'); + $('#questionInfo').append('<div id="total" class="numberBox"></div>'); + $('.clickBox').append('#'); + $('#equals').append('='); + + //Generate 3 random numbers + + var startNum; //1-10 for level 1 1-20 for level 2 and 1-30 for level 3 + var endNum; //Variables for the level numbers to set the difficulty levels + + startNum = (currentLevel+1); + endNum = (currentLevel+1)*10; + + num1 = k.rand(startNum,endNum); + num2 = k.rand(startNum,endNum); + num3 = k.rand(startNum,endNum); + + var total; + var randSign; + do{ + randSign = k.rand(0,1); + correctSigns[0] = signs[randSign]; + if(randSign === 0){ + total = num1 + num2; + } + else{ + total = num1 - num2; + } + randSign = k.rand(0,1); + correctSigns[1] = signs[randSign]; + if(randSign === 0){ + total = total+num3; + } + else{ + total = total-num3; + } + }while(total < 0); + correctAns = total; + // alert(num1 +' '+signs[randSign]+ num2 +' '+signs[randSign]+' '+num3 +' = '+ num1+signs[randSign]+num2); + + $('#number1').append(convertIntoNepali(''+num1+'')); + $('#number2').append(convertIntoNepali(''+num2+'')); + $('#number3').append(convertIntoNepali(''+num3+'')); + + $('#total').append(convertIntoNepali(''+total+'')); + + $('.clickBox').click(function(){ + var clickedBox = $(this).attr('id'); + var clickId = parseInt(clickedBox.substring(5)); + if(click1Counter === 2){ + click1Counter = 0; + } + if(click2Counter === 2){ + click2Counter = 0; + } + + if(clickId === 0){ + clickValues[clickId] = click1Counter; + if(click1Counter === 0){ + $(this).html('+'); + }else{ + $(this).html('-'); + } + click1Counter++; + } + else{ + clickValues[clickId] = click2Counter; + if(click2Counter === 0){ + $(this).html('+'); + }else{ + $(this).html('-'); + } + click2Counter++; + } + }); + levelControl(); + }; + + var startLevel = function(){ + checked = 0; + scoreboard.scoreboard('reset'); + genRandImages(); + stopTimer(); + startTimer(); + level = currentLevel+1; + totalCounter = 0; + correctCounter = 0; + $('#content').html('').append('<div id="imageDisplayBox"></div>'); + for(var i = 0; i< TOTAL_QUES; i++){ + $('#imageDisplayBox').append('<div id="img'+i+'"></div>'); + $('#img'+i).html('<img class="float-left" src="assets/image/level'+level+'Img'+i+'.png" />').html(''); //preloads the images + $('#img'+i).addClass('default'); + } + + $('#content').append('<div id="questionSection"></div>'); + $('#questionSection').append('तलका कोठामा "+" वा "-" जुन ठिक हुन्छ राख र "पक्का हो" थिच । '); + $('#questionSection').append('<div id="questionInfo"></div>'); + $('#content').append('<div id="levelShow"></div>'); + $('#levelShow').append('<img id="levelUp" class="levelImages" src="assets/image/levelUp.png"/>'); + $('#levelShow').append('<div class="levelText">तह '+convertIntoNepali(''+level+'')+'</div>'); + $('#levelShow').append('<img id="levelDown" class="levelImages" src="assets/image/levelDown.png"/>'); + $('#content').append('<div id="gameInformation"></div>'); + $('#gameInformation').html(''); + nextQuestion(); + }; + + + function game(){ + currentLevel = 0; + startLevel(); + }; + + var delayShow = function(){ + document.delayForm.delayval.value = 1; + $('#checkAnswer').html(''); + if(checked === 1 && currentLevel <3){ + currentLevel++; + startLevel(); + }else if(checked === 0){ + nextQuestion(); + } + }; + + function levelControl(){ + $('.levelImages').click(function(){ + var clickedLevel = $(this).attr('id'); + var clickedLevel = clickedLevel.substring(5); + if(clickedLevel === 'Up'){ + if(currentLevel != 2){ + currentLevel++; + startLevel(); + } + }else{ + if(currentLevel != 0){ + currentLevel--; + startLevel(); + } + } + }); + } + + $('#linkCheck').click(function(){ + var signFst = $('#click0').text(); + var sign2nd = $('#click1').text(); + if(signFst === correctSigns[0] && sign2nd === correctSigns[1]){ + k.audio.correct.play(); + $('#checkAnswer').html('<img src="assets/image/correct.png" />'); + $('#img'+randImg[totalCounter]).html('<img class="float-left" src="assets/image/level'+level+'Img'+randImg[totalCounter]+'.png" />') + if(flag_correct === 1){ + scoreboard.scoreboard('inc'); + correctCounter++; + } + } + else{ + $('#checkAnswer').html('<img src="assets/image/incorrect.png" />'); + k.audio.incorrect.play(); + flag_correct = 0; + } + scoreboard.scoreboard('incTotal'); + totalCounter++; + + if(totalCounter === TOTAL_QUES){ + $('#checkAnswer').html(''); + if(correctCounter === totalCounter){ + $('#gameInformation').html('!!! बधाई छ तिमीले सबै प्रश्नको जवाफ दियौ !!! '); + checked = 1; + }else{ + $('#gameInformation').html('!!! फेरी खेलौ बटन मा क्लिक गर !!! '); + checked = 2; + } + stopTimer(); + } + t=setTimeout(function(){delayShow();},1000); + + + + + }); + + $('#linkHelp').mouseover(function(){ + $('#help').slideDown(2000); + }) + .mouseout(function(){ + $('#help').slideUp(2000); + }); + + $('#linkStart').click(function(){ + flag_start = 1; + game(); + }); + + $('#linkPlayAgain').click(function(){ + if(flag_start === 1){ + startLevel(); + } + }); + + }); //end of k.ready +}); //end of document.read + + diff --git a/examples/lessons/6_English_yesNoQuestions/js/ui.core.js b/examples/lessons/6_Maths_AddSubtract/js/ui.core.js index 5493e0a..5493e0a 100755 --- a/examples/lessons/6_English_yesNoQuestions/js/ui.core.js +++ b/examples/lessons/6_Maths_AddSubtract/js/ui.core.js diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/js/ui.scoreboard.js b/examples/lessons/6_Maths_AddSubtract/js/ui.scoreboard.js index 53a930a..53a930a 100755 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/js/ui.scoreboard.js +++ b/examples/lessons/6_Maths_AddSubtract/js/ui.scoreboard.js diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/bg_footer.png b/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/bg_footer.png Binary files differdeleted file mode 100755 index 4bd44fa..0000000 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/bg_footer.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/bg_header.png b/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/bg_header.png Binary files differdeleted file mode 100755 index f421817..0000000 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/bg_header.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/bg_title_block.png b/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/bg_title_block.png Binary files differdeleted file mode 100755 index 7311891..0000000 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/bg_title_block.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/correct.png b/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/correct.png Binary files differdeleted file mode 100755 index ca9b9db..0000000 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/correct.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/cross.png b/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/cross.png Binary files differdeleted file mode 100755 index d5ef090..0000000 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/cross.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/gameOver.png b/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/gameOver.png Binary files differdeleted file mode 100755 index 81c403b..0000000 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/gameOver.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/help.png b/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/help.png Binary files differdeleted file mode 100755 index e79e879..0000000 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/help.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img0.png b/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img0.png Binary files differdeleted file mode 100755 index b87bed8..0000000 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img0.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img0More.png b/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img0More.png Binary files differdeleted file mode 100755 index 6e7431e..0000000 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img0More.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img1.png b/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img1.png Binary files differdeleted file mode 100755 index f9bf83a..0000000 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img1.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img1More.png b/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img1More.png Binary files differdeleted file mode 100755 index 2cb7ee4..0000000 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img1More.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img2.png b/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img2.png Binary files differdeleted file mode 100755 index d629f77..0000000 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img2.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img2More.png b/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img2More.png Binary files differdeleted file mode 100755 index b713994..0000000 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img2More.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img3.png b/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img3.png Binary files differdeleted file mode 100755 index e2a9738..0000000 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img3.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img3More.png b/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img3More.png Binary files differdeleted file mode 100755 index d4c7734..0000000 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img3More.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img4.png b/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img4.png Binary files differdeleted file mode 100755 index 2235a0a..0000000 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img4.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img4More.png b/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img4More.png Binary files differdeleted file mode 100755 index ec800cd..0000000 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img4More.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img5.png b/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img5.png Binary files differdeleted file mode 100755 index 5860c7e..0000000 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img5.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img5More.png b/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img5More.png Binary files differdeleted file mode 100755 index a62bd8f..0000000 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img5More.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img6.png b/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img6.png Binary files differdeleted file mode 100755 index 68422dc..0000000 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img6.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img6More.png b/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img6More.png Binary files differdeleted file mode 100755 index 1c6be38..0000000 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img6More.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img7.png b/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img7.png Binary files differdeleted file mode 100755 index 69232ca..0000000 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img7.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img7More.png b/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img7More.png Binary files differdeleted file mode 100755 index 9bc0e09..0000000 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/img7More.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/incorrect.png b/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/incorrect.png Binary files differdeleted file mode 100755 index 49ee2a2..0000000 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/incorrect.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/title_block_lt.png b/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/title_block_lt.png Binary files differdeleted file mode 100755 index b1c0e90..0000000 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/title_block_lt.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/title_block_rt.png b/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/title_block_rt.png Binary files differdeleted file mode 100755 index 275daaf..0000000 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/title_block_rt.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/css/lesson.css b/examples/lessons/6_Maths_AddingAndMultiplyingVariable/css/lesson.css deleted file mode 100755 index 3893644..0000000 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/css/lesson.css +++ /dev/null @@ -1,285 +0,0 @@ -@CHARSET "UTF-8";
-/****** Page Styles ****/
-
-body {
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 10pt;
- margin: 0px;
- background-color: #FFFFCC;
-}
-#header {
- background-image: url(../assets/image/bg_header.png);
- background-repeat: repeat-x;
- height: 89px;
- width: 100%;
- position: absolute;
- left: 0px;
- top: 0px;
-}
-#topbtn_left {
- float: left;
- height: 60px;
- width: 60px;
- padding-top: 13px;
- padding-left: 5px;
-}
-
-
- #linkBack{
- width: 60px; height: 59px;
- background:url(../assets/image/btn_back.png);
- }
- #linkBack:hover{
- background:url(../assets/image/btn_back_hover.png);
- }
-
-#lesson_title {
- float: left;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 16pt;
- font-weight: bold;
- color: #FFFFFF;
- margin-left: 10px;
- background-image: url(../assets/image/bg_title_block.png);
-}
-#topbtn_right {
- float: right;
- height: 60px;
- width: 60px;
- padding-top: 13px;
- padding-right: 5px;
-}
- #linkHelp{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_help.png);
- }bgCalculation
- #linkHelp:hover{
- background:url(../assets/image/btn_help_hover.png);
- }
- #linkOle{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_ole.png);
- }
- #linkOle:hover{
- background:url(../assets/image/btn_ole_hover.png);
- }
- #linkNext{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_next.png);
- }
- #linkNext:hover{
- background:url(../assets/image/btn_next_hover.png);
- }
-#footer {
- background-image: url(../assets/image/bg_footer.png);
- background-repeat: repeat-x;
- position: abbgCalculationsolute;
- height: 69px;
- width: 100%;
- left: 0px;
- bottom: 0px;
-}
-#score_box {
- float: left;
- padding-left: 5px;
- padding-top: 10px;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- color: #FFFF00;
- font-size: 16pt;
- font-weight: bold;
-}
-#botbtn_right {
- float: right;
- height: 55px;
- /*width: 25bgCalculation1px;*/
- padding-right: 5px;
- padding-top: 5px;
-}
- #linkCheck{
- margin: 1em 3em 0 0;
- width: 101px; height: 30px;
- background-image: url(../assets/image/check.png);
- }
-
- #linkStart{
- width: 251px; height: 55px;
- background:url(../assets/image/btn_start.png);
- }
- #linkStart:hover{
- background:url(../assets/image/btn_start_hover.png);
- }
- #linkStart:active{
- background:url(../assets/image/btn_start_mouse_down.png);
- }
- #linkPlayAgain{
- width: 251px; height: 55px;
- background:url(../assets/image/btn_play_again.png);
- }
- #linkPlayAgain:hover{
- background:url(../assets/image/btn_play_again_hover.png);
- }
- #linkPlayAgain:active{
- background:url(../assets/image/btn_play_again_mouse_down.png);
- }
-
-/**** End of the page style ****/
-
-/**** Game Styles ****/
-
-a{
- color:#FFFFCC;
-}
-#currentTitle{
- width: 150px;
- height: 80xp;
- font:25px/30px "Courier New", Courier, monospace;
- font-weight: bold;
- color: red;
-}
-#content{
- margin: 0 auto;
- margin-top: 85px;
- width: 95%;
- padding: 0.5em;
- height: 375px;
-}
- #section{
- width: 900px;
- height: 400px;
- margin: 0 auto;
- }
-
- #left-side{
- float:left;
- width: 360px;
- height: 365px;
- border: 2px solid black;
- }
- .bgQuesMain{
- margin: 0em auto;
- width: 360px;
- height: 115px;
- text-align:center;
- background: #D2D77E;
- }
- .bgQuesAns{
- margin: 0em auto;
- padding-top: 10px;
- width: 360px;
- height: 240px;
- text-align:center;
- background: #A5FFFE;
- }
- #right-side{
- float:right;
- width: 360px;
- height: 365px;
- border: 2px solid black;
- }
-
- .bgQuestion{
- margin: 0em auto;
- padding-top: 25px;
- width: 360px;
- height: 90px;
- text-align:center;
- background: #FED67E;
- }
- .bgCalculation{
- margin: 0em auto;
- padding-top: 5px;
- width: 360px;
- height: 245px;
- text-align:center;
- background: #6DFFD5;
- }
-
- #textQues1{
- float:right;
- margin-top: 20px;
- width: 300px;
- height:30px;
- letter-spacing: 5px;
- font: 20px/25px Verdana, Geneva, Arial, Helvetica, sans-serif;
- padding-right: 20px;
-
- text-align:right;
- }
- #textQues2{
- float:right;
- margin-top: 10px;
- width: 350px;
- height:30px;
- letter-spacing: 5px;
- text-align:right;
- font: 20px/25px Verdana, Geneva, Arial, Helvetica, sans-serif;
- padding-right: 15px;
- }
- #textQues3{
- float:right;
- text-align:right;
- margin-top: 20px;
- width: 300px;
- height: 30px;
- padding-right: 15px;
- }
- #textQues4{
- float:right;
- text-align:right;
- margin-top: 20px;
- width: 300px;
- height: 30px;
- padding-right: 20px;
- }
- .blankBoxes{
- padding-left: 15px;
- width: 35px;
- height: 40px;
- border-bottom : 2px solid black;
- font: 20px/25px Verdana, Geneva, Arial, Helvetica, sans-serif;
- }
- .quesText{
- font: 20px/25px Verdana, Geneva, Arial, Helvetica, sans-serif;
- color: #000000;
- }
- input.textBox{
- size:3;
- font: 15px/20px Verdana, Geneva, Arial, Helvetica, sans-serif;
- font-weight: bold;
- height:25px;
- width: 30px;
- text-align:center;
- }
- .focus {
- background-color: #FFEEAA;
- }
- .correct{
- background-color: #C0F9F3;
- }
- .incorrect{
- background-color: #FFFF00;
- }
-
- #help{
- display:none;
- position:absolute;
- right: 20%;
- top: 1%;
- width: 224px;
- height: 525px;
- background:url(../assets/image/help.png);
- z-index:40;
- }
- .backOpaque{
- background-color: #A4A4A4;
- opacity: 0.2;
- }
- #gameOver{
- display:none;
- position:absolute;
- top: 40%;
- left: 25%;
- width: 432px;
- height: 68px;
- background: url('../assets/image/gameOver.png');
- }
\ No newline at end of file diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/index.html b/examples/lessons/6_Maths_AddingAndMultiplyingVariable/index.html deleted file mode 100755 index 100e6b7..0000000 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/index.html +++ /dev/null @@ -1,46 +0,0 @@ -<!DOCTYPE html>
-<head>
- <title>Class 6 Maths Adding and Multiplying Variables</title>
- <meta name="keywords" content="karma,javascript,html5,sugar,sugarlabs,gsoc,ole,nepal" />
- <link type="text/css" rel="stylesheet" href="css/lesson.css" />
- <link type="text/css" rel="stylesheet" href="css/ui.scoreboard.css" />
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <link type="image/ico" rel="icon" href="../../assets/default/image/favicon.ico" />
- <script type="text/javascript" src="js/jquery-1.3.2.min.js"></script>
- <script type="text/javascript" src="js/ui.core.js"></script>
- <script type="text/javascript" src="js/ui.draggable.js"></script>
- <script type="text/javascript" src="js/ui.droppable.js"></script>
- <script type="text/javascript" src="js/karma.js"></script>
- <script type="text/javascript" src="js/ui.scoreboard.js"></script>
- <script type="text/javascript" src="js/lesson.js"></script>
-</head>
-<body>
- <div id="header">
- <div id="topbtn_left"><a href="http://olenepal.org"><div id="linkOle"></div></a></div>
- <div id="lesson_title">
- <img src="assets/image/title_block_lt.png" width="33" height="89" align="absmiddle" />
- Adding and Multiplying Variables || <span id="currentTitle"> चलको जोड र गुणन </span>
- <img src="assets/image/title_block_rt.png" width="33" height="89" align="absmiddle" />
- </div>
- <div id="topbtn_right"><a href="#"><div id="linkHelp"></div></a></div>
- <div id="topbtn_right"><a href="http://olenepal.org"><div id="linkOle"></div></a></div>
- </div>
-
- <div id="content">
- <div id="section"></div>
- <div id="displayImgArea"></div>
- <div id="gameOver"></div>
- <div id="help"></div>
- </div>
- <form name="delayForm">
- <input type="hidden" name="delayval" size="5">
- </form>
-
- <div id="footer">
- <div id="score_box"></div>
- <div id="botbtn_right"><a href="#"><div id="linkStart"></div></a></div>
- <div id="botbtn_right"><a href="#"><div id="linkPlayAgain"></div></a></div>
- <div id="botbtn_right"><a href="#"><div id="linkCheck"></div></a></div>
- </div>
-</body>
-</html>
diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/js/jquery-1.3.2.min.js b/examples/lessons/6_Maths_AddingAndMultiplyingVariable/js/jquery-1.3.2.min.js deleted file mode 100755 index b1ae21d..0000000 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/js/jquery-1.3.2.min.js +++ /dev/null @@ -1,19 +0,0 @@ -/* - * jQuery JavaScript Library v1.3.2 - * http://jquery.com/ - * - * Copyright (c) 2009 John Resig - * Dual licensed under the MIT and GPL licenses. - * http://docs.jquery.com/License - * - * Date: 2009-02-19 17:34:21 -0500 (Thu, 19 Feb 2009) - * Revision: 6246 - */ -(function(){var l=this,g,y=l.jQuery,p=l.$,o=l.jQuery=l.$=function(E,F){return new o.fn.init(E,F)},D=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,f=/^.[^:#\[\.,]*$/;o.fn=o.prototype={init:function(E,H){E=E||document;if(E.nodeType){this[0]=E;this.length=1;this.context=E;return this}if(typeof E==="string"){var G=D.exec(E);if(G&&(G[1]||!H)){if(G[1]){E=o.clean([G[1]],H)}else{var I=document.getElementById(G[3]);if(I&&I.id!=G[3]){return o().find(E)}var F=o(I||[]);F.context=document;F.selector=E;return F}}else{return o(H).find(E)}}else{if(o.isFunction(E)){return o(document).ready(E)}}if(E.selector&&E.context){this.selector=E.selector;this.context=E.context}return this.setArray(o.isArray(E)?E:o.makeArray(E))},selector:"",jquery:"1.3.2",size:function(){return this.length},get:function(E){return E===g?Array.prototype.slice.call(this):this[E]},pushStack:function(F,H,E){var G=o(F);G.prevObject=this;G.context=this.context;if(H==="find"){G.selector=this.selector+(this.selector?" ":"")+E}else{if(H){G.selector=this.selector+"."+H+"("+E+")"}}return G},setArray:function(E){this.length=0;Array.prototype.push.apply(this,E);return this},each:function(F,E){return o.each(this,F,E)},index:function(E){return o.inArray(E&&E.jquery?E[0]:E,this)},attr:function(F,H,G){var E=F;if(typeof F==="string"){if(H===g){return this[0]&&o[G||"attr"](this[0],F)}else{E={};E[F]=H}}return this.each(function(I){for(F in E){o.attr(G?this.style:this,F,o.prop(this,E[F],G,I,F))}})},css:function(E,F){if((E=="width"||E=="height")&&parseFloat(F)<0){F=g}return this.attr(E,F,"curCSS")},text:function(F){if(typeof F!=="object"&&F!=null){return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(F))}var E="";o.each(F||this,function(){o.each(this.childNodes,function(){if(this.nodeType!=8){E+=this.nodeType!=1?this.nodeValue:o.fn.text([this])}})});return E},wrapAll:function(E){if(this[0]){var F=o(E,this[0].ownerDocument).clone();if(this[0].parentNode){F.insertBefore(this[0])}F.map(function(){var G=this;while(G.firstChild){G=G.firstChild}return G}).append(this)}return this},wrapInner:function(E){return this.each(function(){o(this).contents().wrapAll(E)})},wrap:function(E){return this.each(function(){o(this).wrapAll(E)})},append:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.appendChild(E)}})},prepend:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.insertBefore(E,this.firstChild)}})},before:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this)})},after:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this.nextSibling)})},end:function(){return this.prevObject||o([])},push:[].push,sort:[].sort,splice:[].splice,find:function(E){if(this.length===1){var F=this.pushStack([],"find",E);F.length=0;o.find(E,this[0],F);return F}else{return this.pushStack(o.unique(o.map(this,function(G){return o.find(E,G)})),"find",E)}},clone:function(G){var E=this.map(function(){if(!o.support.noCloneEvent&&!o.isXMLDoc(this)){var I=this.outerHTML;if(!I){var J=this.ownerDocument.createElement("div");J.appendChild(this.cloneNode(true));I=J.innerHTML}return o.clean([I.replace(/ jQuery\d+="(?:\d+|null)"/g,"").replace(/^\s*/,"")])[0]}else{return this.cloneNode(true)}});if(G===true){var H=this.find("*").andSelf(),F=0;E.find("*").andSelf().each(function(){if(this.nodeName!==H[F].nodeName){return}var I=o.data(H[F],"events");for(var K in I){for(var J in I[K]){o.event.add(this,K,I[K][J],I[K][J].data)}}F++})}return E},filter:function(E){return this.pushStack(o.isFunction(E)&&o.grep(this,function(G,F){return E.call(G,F)})||o.multiFilter(E,o.grep(this,function(F){return F.nodeType===1})),"filter",E)},closest:function(E){var G=o.expr.match.POS.test(E)?o(E):null,F=0;return this.map(function(){var H=this;while(H&&H.ownerDocument){if(G?G.index(H)>-1:o(H).is(E)){o.data(H,"closest",F);return H}H=H.parentNode;F++}})},not:function(E){if(typeof E==="string"){if(f.test(E)){return this.pushStack(o.multiFilter(E,this,true),"not",E)}else{E=o.multiFilter(E,this)}}var F=E.length&&E[E.length-1]!==g&&!E.nodeType;return this.filter(function(){return F?o.inArray(this,E)<0:this!=E})},add:function(E){return this.pushStack(o.unique(o.merge(this.get(),typeof E==="string"?o(E):o.makeArray(E))))},is:function(E){return !!E&&o.multiFilter(E,this).length>0},hasClass:function(E){return !!E&&this.is("."+E)},val:function(K){if(K===g){var E=this[0];if(E){if(o.nodeName(E,"option")){return(E.attributes.value||{}).specified?E.value:E.text}if(o.nodeName(E,"select")){var I=E.selectedIndex,L=[],M=E.options,H=E.type=="select-one";if(I<0){return null}for(var F=H?I:0,J=H?I+1:M.length;F<J;F++){var G=M[F];if(G.selected){K=o(G).val();if(H){return K}L.push(K)}}return L}return(E.value||"").replace(/\r/g,"")}return g}if(typeof K==="number"){K+=""}return this.each(function(){if(this.nodeType!=1){return}if(o.isArray(K)&&/radio|checkbox/.test(this.type)){this.checked=(o.inArray(this.value,K)>=0||o.inArray(this.name,K)>=0)}else{if(o.nodeName(this,"select")){var N=o.makeArray(K);o("option",this).each(function(){this.selected=(o.inArray(this.value,N)>=0||o.inArray(this.text,N)>=0)});if(!N.length){this.selectedIndex=-1}}else{this.value=K}}})},html:function(E){return E===g?(this[0]?this[0].innerHTML.replace(/ jQuery\d+="(?:\d+|null)"/g,""):null):this.empty().append(E)},replaceWith:function(E){return this.after(E).remove()},eq:function(E){return this.slice(E,+E+1)},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","))},map:function(E){return this.pushStack(o.map(this,function(G,F){return E.call(G,F,G)}))},andSelf:function(){return this.add(this.prevObject)},domManip:function(J,M,L){if(this[0]){var I=(this[0].ownerDocument||this[0]).createDocumentFragment(),F=o.clean(J,(this[0].ownerDocument||this[0]),I),H=I.firstChild;if(H){for(var G=0,E=this.length;G<E;G++){L.call(K(this[G],H),this.length>1||G>0?I.cloneNode(true):I)}}if(F){o.each(F,z)}}return this;function K(N,O){return M&&o.nodeName(N,"table")&&o.nodeName(O,"tr")?(N.getElementsByTagName("tbody")[0]||N.appendChild(N.ownerDocument.createElement("tbody"))):N}}};o.fn.init.prototype=o.fn;function z(E,F){if(F.src){o.ajax({url:F.src,async:false,dataType:"script"})}else{o.globalEval(F.text||F.textContent||F.innerHTML||"")}if(F.parentNode){F.parentNode.removeChild(F)}}function e(){return +new Date}o.extend=o.fn.extend=function(){var J=arguments[0]||{},H=1,I=arguments.length,E=false,G;if(typeof J==="boolean"){E=J;J=arguments[1]||{};H=2}if(typeof J!=="object"&&!o.isFunction(J)){J={}}if(I==H){J=this;--H}for(;H<I;H++){if((G=arguments[H])!=null){for(var F in G){var K=J[F],L=G[F];if(J===L){continue}if(E&&L&&typeof L==="object"&&!L.nodeType){J[F]=o.extend(E,K||(L.length!=null?[]:{}),L)}else{if(L!==g){J[F]=L}}}}}return J};var b=/z-?index|font-?weight|opacity|zoom|line-?height/i,q=document.defaultView||{},s=Object.prototype.toString;o.extend({noConflict:function(E){l.$=p;if(E){l.jQuery=y}return o},isFunction:function(E){return s.call(E)==="[object Function]"},isArray:function(E){return s.call(E)==="[object Array]"},isXMLDoc:function(E){return E.nodeType===9&&E.documentElement.nodeName!=="HTML"||!!E.ownerDocument&&o.isXMLDoc(E.ownerDocument)},globalEval:function(G){if(G&&/\S/.test(G)){var F=document.getElementsByTagName("head")[0]||document.documentElement,E=document.createElement("script");E.type="text/javascript";if(o.support.scriptEval){E.appendChild(document.createTextNode(G))}else{E.text=G}F.insertBefore(E,F.firstChild);F.removeChild(E)}},nodeName:function(F,E){return F.nodeName&&F.nodeName.toUpperCase()==E.toUpperCase()},each:function(G,K,F){var E,H=0,I=G.length;if(F){if(I===g){for(E in G){if(K.apply(G[E],F)===false){break}}}else{for(;H<I;){if(K.apply(G[H++],F)===false){break}}}}else{if(I===g){for(E in G){if(K.call(G[E],E,G[E])===false){break}}}else{for(var J=G[0];H<I&&K.call(J,H,J)!==false;J=G[++H]){}}}return G},prop:function(H,I,G,F,E){if(o.isFunction(I)){I=I.call(H,F)}return typeof I==="number"&&G=="curCSS"&&!b.test(E)?I+"px":I},className:{add:function(E,F){o.each((F||"").split(/\s+/),function(G,H){if(E.nodeType==1&&!o.className.has(E.className,H)){E.className+=(E.className?" ":"")+H}})},remove:function(E,F){if(E.nodeType==1){E.className=F!==g?o.grep(E.className.split(/\s+/),function(G){return !o.className.has(F,G)}).join(" "):""}},has:function(F,E){return F&&o.inArray(E,(F.className||F).toString().split(/\s+/))>-1}},swap:function(H,G,I){var E={};for(var F in G){E[F]=H.style[F];H.style[F]=G[F]}I.call(H);for(var F in G){H.style[F]=E[F]}},css:function(H,F,J,E){if(F=="width"||F=="height"){var L,G={position:"absolute",visibility:"hidden",display:"block"},K=F=="width"?["Left","Right"]:["Top","Bottom"];function I(){L=F=="width"?H.offsetWidth:H.offsetHeight;if(E==="border"){return}o.each(K,function(){if(!E){L-=parseFloat(o.curCSS(H,"padding"+this,true))||0}if(E==="margin"){L+=parseFloat(o.curCSS(H,"margin"+this,true))||0}else{L-=parseFloat(o.curCSS(H,"border"+this+"Width",true))||0}})}if(H.offsetWidth!==0){I()}else{o.swap(H,G,I)}return Math.max(0,Math.round(L))}return o.curCSS(H,F,J)},curCSS:function(I,F,G){var L,E=I.style;if(F=="opacity"&&!o.support.opacity){L=o.attr(E,"opacity");return L==""?"1":L}if(F.match(/float/i)){F=w}if(!G&&E&&E[F]){L=E[F]}else{if(q.getComputedStyle){if(F.match(/float/i)){F="float"}F=F.replace(/([A-Z])/g,"-$1").toLowerCase();var M=q.getComputedStyle(I,null);if(M){L=M.getPropertyValue(F)}if(F=="opacity"&&L==""){L="1"}}else{if(I.currentStyle){var J=F.replace(/\-(\w)/g,function(N,O){return O.toUpperCase()});L=I.currentStyle[F]||I.currentStyle[J];if(!/^\d+(px)?$/i.test(L)&&/^\d/.test(L)){var H=E.left,K=I.runtimeStyle.left;I.runtimeStyle.left=I.currentStyle.left;E.left=L||0;L=E.pixelLeft+"px";E.left=H;I.runtimeStyle.left=K}}}}return L},clean:function(F,K,I){K=K||document;if(typeof K.createElement==="undefined"){K=K.ownerDocument||K[0]&&K[0].ownerDocument||document}if(!I&&F.length===1&&typeof F[0]==="string"){var H=/^<(\w+)\s*\/?>$/.exec(F[0]);if(H){return[K.createElement(H[1])]}}var G=[],E=[],L=K.createElement("div");o.each(F,function(P,S){if(typeof S==="number"){S+=""}if(!S){return}if(typeof S==="string"){S=S.replace(/(<(\w+)[^>]*?)\/>/g,function(U,V,T){return T.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?U:V+"></"+T+">"});var O=S.replace(/^\s+/,"").substring(0,10).toLowerCase();var Q=!O.indexOf("<opt")&&[1,"<select multiple='multiple'>","</select>"]||!O.indexOf("<leg")&&[1,"<fieldset>","</fieldset>"]||O.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"<table>","</table>"]||!O.indexOf("<tr")&&[2,"<table><tbody>","</tbody></table>"]||(!O.indexOf("<td")||!O.indexOf("<th"))&&[3,"<table><tbody><tr>","</tr></tbody></table>"]||!O.indexOf("<col")&&[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"]||!o.support.htmlSerialize&&[1,"div<div>","</div>"]||[0,"",""];L.innerHTML=Q[1]+S+Q[2];while(Q[0]--){L=L.lastChild}if(!o.support.tbody){var R=/<tbody/i.test(S),N=!O.indexOf("<table")&&!R?L.firstChild&&L.firstChild.childNodes:Q[1]=="<table>"&&!R?L.childNodes:[];for(var M=N.length-1;M>=0;--M){if(o.nodeName(N[M],"tbody")&&!N[M].childNodes.length){N[M].parentNode.removeChild(N[M])}}}if(!o.support.leadingWhitespace&&/^\s/.test(S)){L.insertBefore(K.createTextNode(S.match(/^\s*/)[0]),L.firstChild)}S=o.makeArray(L.childNodes)}if(S.nodeType){G.push(S)}else{G=o.merge(G,S)}});if(I){for(var J=0;G[J];J++){if(o.nodeName(G[J],"script")&&(!G[J].type||G[J].type.toLowerCase()==="text/javascript")){E.push(G[J].parentNode?G[J].parentNode.removeChild(G[J]):G[J])}else{if(G[J].nodeType===1){G.splice.apply(G,[J+1,0].concat(o.makeArray(G[J].getElementsByTagName("script"))))}I.appendChild(G[J])}}return E}return G},attr:function(J,G,K){if(!J||J.nodeType==3||J.nodeType==8){return g}var H=!o.isXMLDoc(J),L=K!==g;G=H&&o.props[G]||G;if(J.tagName){var F=/href|src|style/.test(G);if(G=="selected"&&J.parentNode){J.parentNode.selectedIndex}if(G in J&&H&&!F){if(L){if(G=="type"&&o.nodeName(J,"input")&&J.parentNode){throw"type property can't be changed"}J[G]=K}if(o.nodeName(J,"form")&&J.getAttributeNode(G)){return J.getAttributeNode(G).nodeValue}if(G=="tabIndex"){var I=J.getAttributeNode("tabIndex");return I&&I.specified?I.value:J.nodeName.match(/(button|input|object|select|textarea)/i)?0:J.nodeName.match(/^(a|area)$/i)&&J.href?0:g}return J[G]}if(!o.support.style&&H&&G=="style"){return o.attr(J.style,"cssText",K)}if(L){J.setAttribute(G,""+K)}var E=!o.support.hrefNormalized&&H&&F?J.getAttribute(G,2):J.getAttribute(G);return E===null?g:E}if(!o.support.opacity&&G=="opacity"){if(L){J.zoom=1;J.filter=(J.filter||"").replace(/alpha\([^)]*\)/,"")+(parseInt(K)+""=="NaN"?"":"alpha(opacity="+K*100+")")}return J.filter&&J.filter.indexOf("opacity=")>=0?(parseFloat(J.filter.match(/opacity=([^)]*)/)[1])/100)+"":""}G=G.replace(/-([a-z])/ig,function(M,N){return N.toUpperCase()});if(L){J[G]=K}return J[G]},trim:function(E){return(E||"").replace(/^\s+|\s+$/g,"")},makeArray:function(G){var E=[];if(G!=null){var F=G.length;if(F==null||typeof G==="string"||o.isFunction(G)||G.setInterval){E[0]=G}else{while(F){E[--F]=G[F]}}}return E},inArray:function(G,H){for(var E=0,F=H.length;E<F;E++){if(H[E]===G){return E}}return -1},merge:function(H,E){var F=0,G,I=H.length;if(!o.support.getAll){while((G=E[F++])!=null){if(G.nodeType!=8){H[I++]=G}}}else{while((G=E[F++])!=null){H[I++]=G}}return H},unique:function(K){var F=[],E={};try{for(var G=0,H=K.length;G<H;G++){var J=o.data(K[G]);if(!E[J]){E[J]=true;F.push(K[G])}}}catch(I){F=K}return F},grep:function(F,J,E){var G=[];for(var H=0,I=F.length;H<I;H++){if(!E!=!J(F[H],H)){G.push(F[H])}}return G},map:function(E,J){var F=[];for(var G=0,H=E.length;G<H;G++){var I=J(E[G],G);if(I!=null){F[F.length]=I}}return F.concat.apply([],F)}});var C=navigator.userAgent.toLowerCase();o.browser={version:(C.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)||[0,"0"])[1],safari:/webkit/.test(C),opera:/opera/.test(C),msie:/msie/.test(C)&&!/opera/.test(C),mozilla:/mozilla/.test(C)&&!/(compatible|webkit)/.test(C)};o.each({parent:function(E){return E.parentNode},parents:function(E){return o.dir(E,"parentNode")},next:function(E){return o.nth(E,2,"nextSibling")},prev:function(E){return o.nth(E,2,"previousSibling")},nextAll:function(E){return o.dir(E,"nextSibling")},prevAll:function(E){return o.dir(E,"previousSibling")},siblings:function(E){return o.sibling(E.parentNode.firstChild,E)},children:function(E){return o.sibling(E.firstChild)},contents:function(E){return o.nodeName(E,"iframe")?E.contentDocument||E.contentWindow.document:o.makeArray(E.childNodes)}},function(E,F){o.fn[E]=function(G){var H=o.map(this,F);if(G&&typeof G=="string"){H=o.multiFilter(G,H)}return this.pushStack(o.unique(H),E,G)}});o.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(E,F){o.fn[E]=function(G){var J=[],L=o(G);for(var K=0,H=L.length;K<H;K++){var I=(K>0?this.clone(true):this).get();o.fn[F].apply(o(L[K]),I);J=J.concat(I)}return this.pushStack(J,E,G)}});o.each({removeAttr:function(E){o.attr(this,E,"");if(this.nodeType==1){this.removeAttribute(E)}},addClass:function(E){o.className.add(this,E)},removeClass:function(E){o.className.remove(this,E)},toggleClass:function(F,E){if(typeof E!=="boolean"){E=!o.className.has(this,F)}o.className[E?"add":"remove"](this,F)},remove:function(E){if(!E||o.filter(E,[this]).length){o("*",this).add([this]).each(function(){o.event.remove(this);o.removeData(this)});if(this.parentNode){this.parentNode.removeChild(this)}}},empty:function(){o(this).children().remove();while(this.firstChild){this.removeChild(this.firstChild)}}},function(E,F){o.fn[E]=function(){return this.each(F,arguments)}});function j(E,F){return E[0]&&parseInt(o.curCSS(E[0],F,true),10)||0}var h="jQuery"+e(),v=0,A={};o.extend({cache:{},data:function(F,E,G){F=F==l?A:F;var H=F[h];if(!H){H=F[h]=++v}if(E&&!o.cache[H]){o.cache[H]={}}if(G!==g){o.cache[H][E]=G}return E?o.cache[H][E]:H},removeData:function(F,E){F=F==l?A:F;var H=F[h];if(E){if(o.cache[H]){delete o.cache[H][E];E="";for(E in o.cache[H]){break}if(!E){o.removeData(F)}}}else{try{delete F[h]}catch(G){if(F.removeAttribute){F.removeAttribute(h)}}delete o.cache[H]}},queue:function(F,E,H){if(F){E=(E||"fx")+"queue";var G=o.data(F,E);if(!G||o.isArray(H)){G=o.data(F,E,o.makeArray(H))}else{if(H){G.push(H)}}}return G},dequeue:function(H,G){var E=o.queue(H,G),F=E.shift();if(!G||G==="fx"){F=E[0]}if(F!==g){F.call(H)}}});o.fn.extend({data:function(E,G){var H=E.split(".");H[1]=H[1]?"."+H[1]:"";if(G===g){var F=this.triggerHandler("getData"+H[1]+"!",[H[0]]);if(F===g&&this.length){F=o.data(this[0],E)}return F===g&&H[1]?this.data(H[0]):F}else{return this.trigger("setData"+H[1]+"!",[H[0],G]).each(function(){o.data(this,E,G)})}},removeData:function(E){return this.each(function(){o.removeData(this,E)})},queue:function(E,F){if(typeof E!=="string"){F=E;E="fx"}if(F===g){return o.queue(this[0],E)}return this.each(function(){var G=o.queue(this,E,F);if(E=="fx"&&G.length==1){G[0].call(this)}})},dequeue:function(E){return this.each(function(){o.dequeue(this,E)})}}); -/* - * Sizzle CSS Selector Engine - v0.9.3 - * Copyright 2009, The Dojo Foundation - * Released under the MIT, BSD, and GPL Licenses. - * More information: http://sizzlejs.com/ - */ -(function(){var R=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?/g,L=0,H=Object.prototype.toString;var F=function(Y,U,ab,ac){ab=ab||[];U=U||document;if(U.nodeType!==1&&U.nodeType!==9){return[]}if(!Y||typeof Y!=="string"){return ab}var Z=[],W,af,ai,T,ad,V,X=true;R.lastIndex=0;while((W=R.exec(Y))!==null){Z.push(W[1]);if(W[2]){V=RegExp.rightContext;break}}if(Z.length>1&&M.exec(Y)){if(Z.length===2&&I.relative[Z[0]]){af=J(Z[0]+Z[1],U)}else{af=I.relative[Z[0]]?[U]:F(Z.shift(),U);while(Z.length){Y=Z.shift();if(I.relative[Y]){Y+=Z.shift()}af=J(Y,af)}}}else{var ae=ac?{expr:Z.pop(),set:E(ac)}:F.find(Z.pop(),Z.length===1&&U.parentNode?U.parentNode:U,Q(U));af=F.filter(ae.expr,ae.set);if(Z.length>0){ai=E(af)}else{X=false}while(Z.length){var ah=Z.pop(),ag=ah;if(!I.relative[ah]){ah=""}else{ag=Z.pop()}if(ag==null){ag=U}I.relative[ah](ai,ag,Q(U))}}if(!ai){ai=af}if(!ai){throw"Syntax error, unrecognized expression: "+(ah||Y)}if(H.call(ai)==="[object Array]"){if(!X){ab.push.apply(ab,ai)}else{if(U.nodeType===1){for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&(ai[aa]===true||ai[aa].nodeType===1&&K(U,ai[aa]))){ab.push(af[aa])}}}else{for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&ai[aa].nodeType===1){ab.push(af[aa])}}}}}else{E(ai,ab)}if(V){F(V,U,ab,ac);if(G){hasDuplicate=false;ab.sort(G);if(hasDuplicate){for(var aa=1;aa<ab.length;aa++){if(ab[aa]===ab[aa-1]){ab.splice(aa--,1)}}}}}return ab};F.matches=function(T,U){return F(T,null,null,U)};F.find=function(aa,T,ab){var Z,X;if(!aa){return[]}for(var W=0,V=I.order.length;W<V;W++){var Y=I.order[W],X;if((X=I.match[Y].exec(aa))){var U=RegExp.leftContext;if(U.substr(U.length-1)!=="\\"){X[1]=(X[1]||"").replace(/\\/g,"");Z=I.find[Y](X,T,ab);if(Z!=null){aa=aa.replace(I.match[Y],"");break}}}}if(!Z){Z=T.getElementsByTagName("*")}return{set:Z,expr:aa}};F.filter=function(ad,ac,ag,W){var V=ad,ai=[],aa=ac,Y,T,Z=ac&&ac[0]&&Q(ac[0]);while(ad&&ac.length){for(var ab in I.filter){if((Y=I.match[ab].exec(ad))!=null){var U=I.filter[ab],ah,af;T=false;if(aa==ai){ai=[]}if(I.preFilter[ab]){Y=I.preFilter[ab](Y,aa,ag,ai,W,Z);if(!Y){T=ah=true}else{if(Y===true){continue}}}if(Y){for(var X=0;(af=aa[X])!=null;X++){if(af){ah=U(af,Y,X,aa);var ae=W^!!ah;if(ag&&ah!=null){if(ae){T=true}else{aa[X]=false}}else{if(ae){ai.push(af);T=true}}}}}if(ah!==g){if(!ag){aa=ai}ad=ad.replace(I.match[ab],"");if(!T){return[]}break}}}if(ad==V){if(T==null){throw"Syntax error, unrecognized expression: "+ad}else{break}}V=ad}return aa};var I=F.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF_-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF_-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*_-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+-]*)\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF_-]|\\.)+)(?:\((['"]*)((?:\([^\)]+\)|[^\2\(\)]*)+)\2\))?/},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(T){return T.getAttribute("href")}},relative:{"+":function(aa,T,Z){var X=typeof T==="string",ab=X&&!/\W/.test(T),Y=X&&!ab;if(ab&&!Z){T=T.toUpperCase()}for(var W=0,V=aa.length,U;W<V;W++){if((U=aa[W])){while((U=U.previousSibling)&&U.nodeType!==1){}aa[W]=Y||U&&U.nodeName===T?U||false:U===T}}if(Y){F.filter(T,aa,true)}},">":function(Z,U,aa){var X=typeof U==="string";if(X&&!/\W/.test(U)){U=aa?U:U.toUpperCase();for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){var W=Y.parentNode;Z[V]=W.nodeName===U?W:false}}}else{for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){Z[V]=X?Y.parentNode:Y.parentNode===U}}if(X){F.filter(U,Z,true)}}},"":function(W,U,Y){var V=L++,T=S;if(!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("parentNode",U,V,W,X,Y)},"~":function(W,U,Y){var V=L++,T=S;if(typeof U==="string"&&!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("previousSibling",U,V,W,X,Y)}},find:{ID:function(U,V,W){if(typeof V.getElementById!=="undefined"&&!W){var T=V.getElementById(U[1]);return T?[T]:[]}},NAME:function(V,Y,Z){if(typeof Y.getElementsByName!=="undefined"){var U=[],X=Y.getElementsByName(V[1]);for(var W=0,T=X.length;W<T;W++){if(X[W].getAttribute("name")===V[1]){U.push(X[W])}}return U.length===0?null:U}},TAG:function(T,U){return U.getElementsByTagName(T[1])}},preFilter:{CLASS:function(W,U,V,T,Z,aa){W=" "+W[1].replace(/\\/g,"")+" ";if(aa){return W}for(var X=0,Y;(Y=U[X])!=null;X++){if(Y){if(Z^(Y.className&&(" "+Y.className+" ").indexOf(W)>=0)){if(!V){T.push(Y)}}else{if(V){U[X]=false}}}}return false},ID:function(T){return T[1].replace(/\\/g,"")},TAG:function(U,T){for(var V=0;T[V]===false;V++){}return T[V]&&Q(T[V])?U[1]:U[1].toUpperCase()},CHILD:function(T){if(T[1]=="nth"){var U=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(T[2]=="even"&&"2n"||T[2]=="odd"&&"2n+1"||!/\D/.test(T[2])&&"0n+"+T[2]||T[2]);T[2]=(U[1]+(U[2]||1))-0;T[3]=U[3]-0}T[0]=L++;return T},ATTR:function(X,U,V,T,Y,Z){var W=X[1].replace(/\\/g,"");if(!Z&&I.attrMap[W]){X[1]=I.attrMap[W]}if(X[2]==="~="){X[4]=" "+X[4]+" "}return X},PSEUDO:function(X,U,V,T,Y){if(X[1]==="not"){if(X[3].match(R).length>1||/^\w/.test(X[3])){X[3]=F(X[3],null,null,U)}else{var W=F.filter(X[3],U,V,true^Y);if(!V){T.push.apply(T,W)}return false}}else{if(I.match.POS.test(X[0])||I.match.CHILD.test(X[0])){return true}}return X},POS:function(T){T.unshift(true);return T}},filters:{enabled:function(T){return T.disabled===false&&T.type!=="hidden"},disabled:function(T){return T.disabled===true},checked:function(T){return T.checked===true},selected:function(T){T.parentNode.selectedIndex;return T.selected===true},parent:function(T){return !!T.firstChild},empty:function(T){return !T.firstChild},has:function(V,U,T){return !!F(T[3],V).length},header:function(T){return/h\d/i.test(T.nodeName)},text:function(T){return"text"===T.type},radio:function(T){return"radio"===T.type},checkbox:function(T){return"checkbox"===T.type},file:function(T){return"file"===T.type},password:function(T){return"password"===T.type},submit:function(T){return"submit"===T.type},image:function(T){return"image"===T.type},reset:function(T){return"reset"===T.type},button:function(T){return"button"===T.type||T.nodeName.toUpperCase()==="BUTTON"},input:function(T){return/input|select|textarea|button/i.test(T.nodeName)}},setFilters:{first:function(U,T){return T===0},last:function(V,U,T,W){return U===W.length-1},even:function(U,T){return T%2===0},odd:function(U,T){return T%2===1},lt:function(V,U,T){return U<T[3]-0},gt:function(V,U,T){return U>T[3]-0},nth:function(V,U,T){return T[3]-0==U},eq:function(V,U,T){return T[3]-0==U}},filter:{PSEUDO:function(Z,V,W,aa){var U=V[1],X=I.filters[U];if(X){return X(Z,W,V,aa)}else{if(U==="contains"){return(Z.textContent||Z.innerText||"").indexOf(V[3])>=0}else{if(U==="not"){var Y=V[3];for(var W=0,T=Y.length;W<T;W++){if(Y[W]===Z){return false}}return true}}}},CHILD:function(T,W){var Z=W[1],U=T;switch(Z){case"only":case"first":while(U=U.previousSibling){if(U.nodeType===1){return false}}if(Z=="first"){return true}U=T;case"last":while(U=U.nextSibling){if(U.nodeType===1){return false}}return true;case"nth":var V=W[2],ac=W[3];if(V==1&&ac==0){return true}var Y=W[0],ab=T.parentNode;if(ab&&(ab.sizcache!==Y||!T.nodeIndex)){var X=0;for(U=ab.firstChild;U;U=U.nextSibling){if(U.nodeType===1){U.nodeIndex=++X}}ab.sizcache=Y}var aa=T.nodeIndex-ac;if(V==0){return aa==0}else{return(aa%V==0&&aa/V>=0)}}},ID:function(U,T){return U.nodeType===1&&U.getAttribute("id")===T},TAG:function(U,T){return(T==="*"&&U.nodeType===1)||U.nodeName===T},CLASS:function(U,T){return(" "+(U.className||U.getAttribute("class"))+" ").indexOf(T)>-1},ATTR:function(Y,W){var V=W[1],T=I.attrHandle[V]?I.attrHandle[V](Y):Y[V]!=null?Y[V]:Y.getAttribute(V),Z=T+"",X=W[2],U=W[4];return T==null?X==="!=":X==="="?Z===U:X==="*="?Z.indexOf(U)>=0:X==="~="?(" "+Z+" ").indexOf(U)>=0:!U?Z&&T!==false:X==="!="?Z!=U:X==="^="?Z.indexOf(U)===0:X==="$="?Z.substr(Z.length-U.length)===U:X==="|="?Z===U||Z.substr(0,U.length+1)===U+"-":false},POS:function(X,U,V,Y){var T=U[2],W=I.setFilters[T];if(W){return W(X,V,U,Y)}}}};var M=I.match.POS;for(var O in I.match){I.match[O]=RegExp(I.match[O].source+/(?![^\[]*\])(?![^\(]*\))/.source)}var E=function(U,T){U=Array.prototype.slice.call(U);if(T){T.push.apply(T,U);return T}return U};try{Array.prototype.slice.call(document.documentElement.childNodes)}catch(N){E=function(X,W){var U=W||[];if(H.call(X)==="[object Array]"){Array.prototype.push.apply(U,X)}else{if(typeof X.length==="number"){for(var V=0,T=X.length;V<T;V++){U.push(X[V])}}else{for(var V=0;X[V];V++){U.push(X[V])}}}return U}}var G;if(document.documentElement.compareDocumentPosition){G=function(U,T){var V=U.compareDocumentPosition(T)&4?-1:U===T?0:1;if(V===0){hasDuplicate=true}return V}}else{if("sourceIndex" in document.documentElement){G=function(U,T){var V=U.sourceIndex-T.sourceIndex;if(V===0){hasDuplicate=true}return V}}else{if(document.createRange){G=function(W,U){var V=W.ownerDocument.createRange(),T=U.ownerDocument.createRange();V.selectNode(W);V.collapse(true);T.selectNode(U);T.collapse(true);var X=V.compareBoundaryPoints(Range.START_TO_END,T);if(X===0){hasDuplicate=true}return X}}}}(function(){var U=document.createElement("form"),V="script"+(new Date).getTime();U.innerHTML="<input name='"+V+"'/>";var T=document.documentElement;T.insertBefore(U,T.firstChild);if(!!document.getElementById(V)){I.find.ID=function(X,Y,Z){if(typeof Y.getElementById!=="undefined"&&!Z){var W=Y.getElementById(X[1]);return W?W.id===X[1]||typeof W.getAttributeNode!=="undefined"&&W.getAttributeNode("id").nodeValue===X[1]?[W]:g:[]}};I.filter.ID=function(Y,W){var X=typeof Y.getAttributeNode!=="undefined"&&Y.getAttributeNode("id");return Y.nodeType===1&&X&&X.nodeValue===W}}T.removeChild(U)})();(function(){var T=document.createElement("div");T.appendChild(document.createComment(""));if(T.getElementsByTagName("*").length>0){I.find.TAG=function(U,Y){var X=Y.getElementsByTagName(U[1]);if(U[1]==="*"){var W=[];for(var V=0;X[V];V++){if(X[V].nodeType===1){W.push(X[V])}}X=W}return X}}T.innerHTML="<a href='#'></a>";if(T.firstChild&&typeof T.firstChild.getAttribute!=="undefined"&&T.firstChild.getAttribute("href")!=="#"){I.attrHandle.href=function(U){return U.getAttribute("href",2)}}})();if(document.querySelectorAll){(function(){var T=F,U=document.createElement("div");U.innerHTML="<p class='TEST'></p>";if(U.querySelectorAll&&U.querySelectorAll(".TEST").length===0){return}F=function(Y,X,V,W){X=X||document;if(!W&&X.nodeType===9&&!Q(X)){try{return E(X.querySelectorAll(Y),V)}catch(Z){}}return T(Y,X,V,W)};F.find=T.find;F.filter=T.filter;F.selectors=T.selectors;F.matches=T.matches})()}if(document.getElementsByClassName&&document.documentElement.getElementsByClassName){(function(){var T=document.createElement("div");T.innerHTML="<div class='test e'></div><div class='test'></div>";if(T.getElementsByClassName("e").length===0){return}T.lastChild.className="e";if(T.getElementsByClassName("e").length===1){return}I.order.splice(1,0,"CLASS");I.find.CLASS=function(U,V,W){if(typeof V.getElementsByClassName!=="undefined"&&!W){return V.getElementsByClassName(U[1])}}})()}function P(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1&&!ac){T.sizcache=Y;T.sizset=W}if(T.nodeName===Z){X=T;break}T=T[U]}ad[W]=X}}}function S(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1){if(!ac){T.sizcache=Y;T.sizset=W}if(typeof Z!=="string"){if(T===Z){X=true;break}}else{if(F.filter(Z,[T]).length>0){X=T;break}}}T=T[U]}ad[W]=X}}}var K=document.compareDocumentPosition?function(U,T){return U.compareDocumentPosition(T)&16}:function(U,T){return U!==T&&(U.contains?U.contains(T):true)};var Q=function(T){return T.nodeType===9&&T.documentElement.nodeName!=="HTML"||!!T.ownerDocument&&Q(T.ownerDocument)};var J=function(T,aa){var W=[],X="",Y,V=aa.nodeType?[aa]:aa;while((Y=I.match.PSEUDO.exec(T))){X+=Y[0];T=T.replace(I.match.PSEUDO,"")}T=I.relative[T]?T+"*":T;for(var Z=0,U=V.length;Z<U;Z++){F(T,V[Z],W)}return F.filter(X,W)};o.find=F;o.filter=F.filter;o.expr=F.selectors;o.expr[":"]=o.expr.filters;F.selectors.filters.hidden=function(T){return T.offsetWidth===0||T.offsetHeight===0};F.selectors.filters.visible=function(T){return T.offsetWidth>0||T.offsetHeight>0};F.selectors.filters.animated=function(T){return o.grep(o.timers,function(U){return T===U.elem}).length};o.multiFilter=function(V,T,U){if(U){V=":not("+V+")"}return F.matches(V,T)};o.dir=function(V,U){var T=[],W=V[U];while(W&&W!=document){if(W.nodeType==1){T.push(W)}W=W[U]}return T};o.nth=function(X,T,V,W){T=T||1;var U=0;for(;X;X=X[V]){if(X.nodeType==1&&++U==T){break}}return X};o.sibling=function(V,U){var T=[];for(;V;V=V.nextSibling){if(V.nodeType==1&&V!=U){T.push(V)}}return T};return;l.Sizzle=F})();o.event={add:function(I,F,H,K){if(I.nodeType==3||I.nodeType==8){return}if(I.setInterval&&I!=l){I=l}if(!H.guid){H.guid=this.guid++}if(K!==g){var G=H;H=this.proxy(G);H.data=K}var E=o.data(I,"events")||o.data(I,"events",{}),J=o.data(I,"handle")||o.data(I,"handle",function(){return typeof o!=="undefined"&&!o.event.triggered?o.event.handle.apply(arguments.callee.elem,arguments):g});J.elem=I;o.each(F.split(/\s+/),function(M,N){var O=N.split(".");N=O.shift();H.type=O.slice().sort().join(".");var L=E[N];if(o.event.specialAll[N]){o.event.specialAll[N].setup.call(I,K,O)}if(!L){L=E[N]={};if(!o.event.special[N]||o.event.special[N].setup.call(I,K,O)===false){if(I.addEventListener){I.addEventListener(N,J,false)}else{if(I.attachEvent){I.attachEvent("on"+N,J)}}}}L[H.guid]=H;o.event.global[N]=true});I=null},guid:1,global:{},remove:function(K,H,J){if(K.nodeType==3||K.nodeType==8){return}var G=o.data(K,"events"),F,E;if(G){if(H===g||(typeof H==="string"&&H.charAt(0)==".")){for(var I in G){this.remove(K,I+(H||""))}}else{if(H.type){J=H.handler;H=H.type}o.each(H.split(/\s+/),function(M,O){var Q=O.split(".");O=Q.shift();var N=RegExp("(^|\\.)"+Q.slice().sort().join(".*\\.")+"(\\.|$)");if(G[O]){if(J){delete G[O][J.guid]}else{for(var P in G[O]){if(N.test(G[O][P].type)){delete G[O][P]}}}if(o.event.specialAll[O]){o.event.specialAll[O].teardown.call(K,Q)}for(F in G[O]){break}if(!F){if(!o.event.special[O]||o.event.special[O].teardown.call(K,Q)===false){if(K.removeEventListener){K.removeEventListener(O,o.data(K,"handle"),false)}else{if(K.detachEvent){K.detachEvent("on"+O,o.data(K,"handle"))}}}F=null;delete G[O]}}})}for(F in G){break}if(!F){var L=o.data(K,"handle");if(L){L.elem=null}o.removeData(K,"events");o.removeData(K,"handle")}}},trigger:function(I,K,H,E){var G=I.type||I;if(!E){I=typeof I==="object"?I[h]?I:o.extend(o.Event(G),I):o.Event(G);if(G.indexOf("!")>=0){I.type=G=G.slice(0,-1);I.exclusive=true}if(!H){I.stopPropagation();if(this.global[G]){o.each(o.cache,function(){if(this.events&&this.events[G]){o.event.trigger(I,K,this.handle.elem)}})}}if(!H||H.nodeType==3||H.nodeType==8){return g}I.result=g;I.target=H;K=o.makeArray(K);K.unshift(I)}I.currentTarget=H;var J=o.data(H,"handle");if(J){J.apply(H,K)}if((!H[G]||(o.nodeName(H,"a")&&G=="click"))&&H["on"+G]&&H["on"+G].apply(H,K)===false){I.result=false}if(!E&&H[G]&&!I.isDefaultPrevented()&&!(o.nodeName(H,"a")&&G=="click")){this.triggered=true;try{H[G]()}catch(L){}}this.triggered=false;if(!I.isPropagationStopped()){var F=H.parentNode||H.ownerDocument;if(F){o.event.trigger(I,K,F,true)}}},handle:function(K){var J,E;K=arguments[0]=o.event.fix(K||l.event);K.currentTarget=this;var L=K.type.split(".");K.type=L.shift();J=!L.length&&!K.exclusive;var I=RegExp("(^|\\.)"+L.slice().sort().join(".*\\.")+"(\\.|$)");E=(o.data(this,"events")||{})[K.type];for(var G in E){var H=E[G];if(J||I.test(H.type)){K.handler=H;K.data=H.data;var F=H.apply(this,arguments);if(F!==g){K.result=F;if(F===false){K.preventDefault();K.stopPropagation()}}if(K.isImmediatePropagationStopped()){break}}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(H){if(H[h]){return H}var F=H;H=o.Event(F);for(var G=this.props.length,J;G;){J=this.props[--G];H[J]=F[J]}if(!H.target){H.target=H.srcElement||document}if(H.target.nodeType==3){H.target=H.target.parentNode}if(!H.relatedTarget&&H.fromElement){H.relatedTarget=H.fromElement==H.target?H.toElement:H.fromElement}if(H.pageX==null&&H.clientX!=null){var I=document.documentElement,E=document.body;H.pageX=H.clientX+(I&&I.scrollLeft||E&&E.scrollLeft||0)-(I.clientLeft||0);H.pageY=H.clientY+(I&&I.scrollTop||E&&E.scrollTop||0)-(I.clientTop||0)}if(!H.which&&((H.charCode||H.charCode===0)?H.charCode:H.keyCode)){H.which=H.charCode||H.keyCode}if(!H.metaKey&&H.ctrlKey){H.metaKey=H.ctrlKey}if(!H.which&&H.button){H.which=(H.button&1?1:(H.button&2?3:(H.button&4?2:0)))}return H},proxy:function(F,E){E=E||function(){return F.apply(this,arguments)};E.guid=F.guid=F.guid||E.guid||this.guid++;return E},special:{ready:{setup:B,teardown:function(){}}},specialAll:{live:{setup:function(E,F){o.event.add(this,F[0],c)},teardown:function(G){if(G.length){var E=0,F=RegExp("(^|\\.)"+G[0]+"(\\.|$)");o.each((o.data(this,"events").live||{}),function(){if(F.test(this.type)){E++}});if(E<1){o.event.remove(this,G[0],c)}}}}}};o.Event=function(E){if(!this.preventDefault){return new o.Event(E)}if(E&&E.type){this.originalEvent=E;this.type=E.type}else{this.type=E}this.timeStamp=e();this[h]=true};function k(){return false}function u(){return true}o.Event.prototype={preventDefault:function(){this.isDefaultPrevented=u;var E=this.originalEvent;if(!E){return}if(E.preventDefault){E.preventDefault()}E.returnValue=false},stopPropagation:function(){this.isPropagationStopped=u;var E=this.originalEvent;if(!E){return}if(E.stopPropagation){E.stopPropagation()}E.cancelBubble=true},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=u;this.stopPropagation()},isDefaultPrevented:k,isPropagationStopped:k,isImmediatePropagationStopped:k};var a=function(F){var E=F.relatedTarget;while(E&&E!=this){try{E=E.parentNode}catch(G){E=this}}if(E!=this){F.type=F.data;o.event.handle.apply(this,arguments)}};o.each({mouseover:"mouseenter",mouseout:"mouseleave"},function(F,E){o.event.special[E]={setup:function(){o.event.add(this,F,a,E)},teardown:function(){o.event.remove(this,F,a)}}});o.fn.extend({bind:function(F,G,E){return F=="unload"?this.one(F,G,E):this.each(function(){o.event.add(this,F,E||G,E&&G)})},one:function(G,H,F){var E=o.event.proxy(F||H,function(I){o(this).unbind(I,E);return(F||H).apply(this,arguments)});return this.each(function(){o.event.add(this,G,E,F&&H)})},unbind:function(F,E){return this.each(function(){o.event.remove(this,F,E)})},trigger:function(E,F){return this.each(function(){o.event.trigger(E,F,this)})},triggerHandler:function(E,G){if(this[0]){var F=o.Event(E);F.preventDefault();F.stopPropagation();o.event.trigger(F,G,this[0]);return F.result}},toggle:function(G){var E=arguments,F=1;while(F<E.length){o.event.proxy(G,E[F++])}return this.click(o.event.proxy(G,function(H){this.lastToggle=(this.lastToggle||0)%F;H.preventDefault();return E[this.lastToggle++].apply(this,arguments)||false}))},hover:function(E,F){return this.mouseenter(E).mouseleave(F)},ready:function(E){B();if(o.isReady){E.call(document,o)}else{o.readyList.push(E)}return this},live:function(G,F){var E=o.event.proxy(F);E.guid+=this.selector+G;o(document).bind(i(G,this.selector),this.selector,E);return this},die:function(F,E){o(document).unbind(i(F,this.selector),E?{guid:E.guid+this.selector+F}:null);return this}});function c(H){var E=RegExp("(^|\\.)"+H.type+"(\\.|$)"),G=true,F=[];o.each(o.data(this,"events").live||[],function(I,J){if(E.test(J.type)){var K=o(H.target).closest(J.data)[0];if(K){F.push({elem:K,fn:J})}}});F.sort(function(J,I){return o.data(J.elem,"closest")-o.data(I.elem,"closest")});o.each(F,function(){if(this.fn.call(this.elem,H,this.fn.data)===false){return(G=false)}});return G}function i(F,E){return["live",F,E.replace(/\./g,"`").replace(/ /g,"|")].join(".")}o.extend({isReady:false,readyList:[],ready:function(){if(!o.isReady){o.isReady=true;if(o.readyList){o.each(o.readyList,function(){this.call(document,o)});o.readyList=null}o(document).triggerHandler("ready")}}});var x=false;function B(){if(x){return}x=true;if(document.addEventListener){document.addEventListener("DOMContentLoaded",function(){document.removeEventListener("DOMContentLoaded",arguments.callee,false);o.ready()},false)}else{if(document.attachEvent){document.attachEvent("onreadystatechange",function(){if(document.readyState==="complete"){document.detachEvent("onreadystatechange",arguments.callee);o.ready()}});if(document.documentElement.doScroll&&l==l.top){(function(){if(o.isReady){return}try{document.documentElement.doScroll("left")}catch(E){setTimeout(arguments.callee,0);return}o.ready()})()}}}o.event.add(l,"load",o.ready)}o.each(("blur,focus,load,resize,scroll,unload,click,dblclick,mousedown,mouseup,mousemove,mouseover,mouseout,mouseenter,mouseleave,change,select,submit,keydown,keypress,keyup,error").split(","),function(F,E){o.fn[E]=function(G){return G?this.bind(E,G):this.trigger(E)}});o(l).bind("unload",function(){for(var E in o.cache){if(E!=1&&o.cache[E].handle){o.event.remove(o.cache[E].handle.elem)}}});(function(){o.support={};var F=document.documentElement,G=document.createElement("script"),K=document.createElement("div"),J="script"+(new Date).getTime();K.style.display="none";K.innerHTML=' <link/><table></table><a href="/a" style="color:red;float:left;opacity:.5;">a</a><select><option>text</option></select><object><param/></object>';var H=K.getElementsByTagName("*"),E=K.getElementsByTagName("a")[0];if(!H||!H.length||!E){return}o.support={leadingWhitespace:K.firstChild.nodeType==3,tbody:!K.getElementsByTagName("tbody").length,objectAll:!!K.getElementsByTagName("object")[0].getElementsByTagName("*").length,htmlSerialize:!!K.getElementsByTagName("link").length,style:/red/.test(E.getAttribute("style")),hrefNormalized:E.getAttribute("href")==="/a",opacity:E.style.opacity==="0.5",cssFloat:!!E.style.cssFloat,scriptEval:false,noCloneEvent:true,boxModel:null};G.type="text/javascript";try{G.appendChild(document.createTextNode("window."+J+"=1;"))}catch(I){}F.insertBefore(G,F.firstChild);if(l[J]){o.support.scriptEval=true;delete l[J]}F.removeChild(G);if(K.attachEvent&&K.fireEvent){K.attachEvent("onclick",function(){o.support.noCloneEvent=false;K.detachEvent("onclick",arguments.callee)});K.cloneNode(true).fireEvent("onclick")}o(function(){var L=document.createElement("div");L.style.width=L.style.paddingLeft="1px";document.body.appendChild(L);o.boxModel=o.support.boxModel=L.offsetWidth===2;document.body.removeChild(L).style.display="none"})})();var w=o.support.cssFloat?"cssFloat":"styleFloat";o.props={"for":"htmlFor","class":"className","float":w,cssFloat:w,styleFloat:w,readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",tabindex:"tabIndex"};o.fn.extend({_load:o.fn.load,load:function(G,J,K){if(typeof G!=="string"){return this._load(G)}var I=G.indexOf(" ");if(I>=0){var E=G.slice(I,G.length);G=G.slice(0,I)}var H="GET";if(J){if(o.isFunction(J)){K=J;J=null}else{if(typeof J==="object"){J=o.param(J);H="POST"}}}var F=this;o.ajax({url:G,type:H,dataType:"html",data:J,complete:function(M,L){if(L=="success"||L=="notmodified"){F.html(E?o("<div/>").append(M.responseText.replace(/<script(.|\s)*?\/script>/g,"")).find(E):M.responseText)}if(K){F.each(K,[M.responseText,L,M])}}});return this},serialize:function(){return o.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?o.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password|search/i.test(this.type))}).map(function(E,F){var G=o(this).val();return G==null?null:o.isArray(G)?o.map(G,function(I,H){return{name:F.name,value:I}}):{name:F.name,value:G}}).get()}});o.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(E,F){o.fn[F]=function(G){return this.bind(F,G)}});var r=e();o.extend({get:function(E,G,H,F){if(o.isFunction(G)){H=G;G=null}return o.ajax({type:"GET",url:E,data:G,success:H,dataType:F})},getScript:function(E,F){return o.get(E,null,F,"script")},getJSON:function(E,F,G){return o.get(E,F,G,"json")},post:function(E,G,H,F){if(o.isFunction(G)){H=G;G={}}return o.ajax({type:"POST",url:E,data:G,success:H,dataType:F})},ajaxSetup:function(E){o.extend(o.ajaxSettings,E)},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return l.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest()},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(M){M=o.extend(true,M,o.extend(true,{},o.ajaxSettings,M));var W,F=/=\?(&|$)/g,R,V,G=M.type.toUpperCase();if(M.data&&M.processData&&typeof M.data!=="string"){M.data=o.param(M.data)}if(M.dataType=="jsonp"){if(G=="GET"){if(!M.url.match(F)){M.url+=(M.url.match(/\?/)?"&":"?")+(M.jsonp||"callback")+"=?"}}else{if(!M.data||!M.data.match(F)){M.data=(M.data?M.data+"&":"")+(M.jsonp||"callback")+"=?"}}M.dataType="json"}if(M.dataType=="json"&&(M.data&&M.data.match(F)||M.url.match(F))){W="jsonp"+r++;if(M.data){M.data=(M.data+"").replace(F,"="+W+"$1")}M.url=M.url.replace(F,"="+W+"$1");M.dataType="script";l[W]=function(X){V=X;I();L();l[W]=g;try{delete l[W]}catch(Y){}if(H){H.removeChild(T)}}}if(M.dataType=="script"&&M.cache==null){M.cache=false}if(M.cache===false&&G=="GET"){var E=e();var U=M.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+E+"$2");M.url=U+((U==M.url)?(M.url.match(/\?/)?"&":"?")+"_="+E:"")}if(M.data&&G=="GET"){M.url+=(M.url.match(/\?/)?"&":"?")+M.data;M.data=null}if(M.global&&!o.active++){o.event.trigger("ajaxStart")}var Q=/^(\w+:)?\/\/([^\/?#]+)/.exec(M.url);if(M.dataType=="script"&&G=="GET"&&Q&&(Q[1]&&Q[1]!=location.protocol||Q[2]!=location.host)){var H=document.getElementsByTagName("head")[0];var T=document.createElement("script");T.src=M.url;if(M.scriptCharset){T.charset=M.scriptCharset}if(!W){var O=false;T.onload=T.onreadystatechange=function(){if(!O&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){O=true;I();L();T.onload=T.onreadystatechange=null;H.removeChild(T)}}}H.appendChild(T);return g}var K=false;var J=M.xhr();if(M.username){J.open(G,M.url,M.async,M.username,M.password)}else{J.open(G,M.url,M.async)}try{if(M.data){J.setRequestHeader("Content-Type",M.contentType)}if(M.ifModified){J.setRequestHeader("If-Modified-Since",o.lastModified[M.url]||"Thu, 01 Jan 1970 00:00:00 GMT")}J.setRequestHeader("X-Requested-With","XMLHttpRequest");J.setRequestHeader("Accept",M.dataType&&M.accepts[M.dataType]?M.accepts[M.dataType]+", */*":M.accepts._default)}catch(S){}if(M.beforeSend&&M.beforeSend(J,M)===false){if(M.global&&!--o.active){o.event.trigger("ajaxStop")}J.abort();return false}if(M.global){o.event.trigger("ajaxSend",[J,M])}var N=function(X){if(J.readyState==0){if(P){clearInterval(P);P=null;if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}}else{if(!K&&J&&(J.readyState==4||X=="timeout")){K=true;if(P){clearInterval(P);P=null}R=X=="timeout"?"timeout":!o.httpSuccess(J)?"error":M.ifModified&&o.httpNotModified(J,M.url)?"notmodified":"success";if(R=="success"){try{V=o.httpData(J,M.dataType,M)}catch(Z){R="parsererror"}}if(R=="success"){var Y;try{Y=J.getResponseHeader("Last-Modified")}catch(Z){}if(M.ifModified&&Y){o.lastModified[M.url]=Y}if(!W){I()}}else{o.handleError(M,J,R)}L();if(X){J.abort()}if(M.async){J=null}}}};if(M.async){var P=setInterval(N,13);if(M.timeout>0){setTimeout(function(){if(J&&!K){N("timeout")}},M.timeout)}}try{J.send(M.data)}catch(S){o.handleError(M,J,null,S)}if(!M.async){N()}function I(){if(M.success){M.success(V,R)}if(M.global){o.event.trigger("ajaxSuccess",[J,M])}}function L(){if(M.complete){M.complete(J,R)}if(M.global){o.event.trigger("ajaxComplete",[J,M])}if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}return J},handleError:function(F,H,E,G){if(F.error){F.error(H,E,G)}if(F.global){o.event.trigger("ajaxError",[H,F,G])}},active:0,httpSuccess:function(F){try{return !F.status&&location.protocol=="file:"||(F.status>=200&&F.status<300)||F.status==304||F.status==1223}catch(E){}return false},httpNotModified:function(G,E){try{var H=G.getResponseHeader("Last-Modified");return G.status==304||H==o.lastModified[E]}catch(F){}return false},httpData:function(J,H,G){var F=J.getResponseHeader("content-type"),E=H=="xml"||!H&&F&&F.indexOf("xml")>=0,I=E?J.responseXML:J.responseText;if(E&&I.documentElement.tagName=="parsererror"){throw"parsererror"}if(G&&G.dataFilter){I=G.dataFilter(I,H)}if(typeof I==="string"){if(H=="script"){o.globalEval(I)}if(H=="json"){I=l["eval"]("("+I+")")}}return I},param:function(E){var G=[];function H(I,J){G[G.length]=encodeURIComponent(I)+"="+encodeURIComponent(J)}if(o.isArray(E)||E.jquery){o.each(E,function(){H(this.name,this.value)})}else{for(var F in E){if(o.isArray(E[F])){o.each(E[F],function(){H(F,this)})}else{H(F,o.isFunction(E[F])?E[F]():E[F])}}}return G.join("&").replace(/%20/g,"+")}});var m={},n,d=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];function t(F,E){var G={};o.each(d.concat.apply([],d.slice(0,E)),function(){G[this]=F});return G}o.fn.extend({show:function(J,L){if(J){return this.animate(t("show",3),J,L)}else{for(var H=0,F=this.length;H<F;H++){var E=o.data(this[H],"olddisplay");this[H].style.display=E||"";if(o.css(this[H],"display")==="none"){var G=this[H].tagName,K;if(m[G]){K=m[G]}else{var I=o("<"+G+" />").appendTo("body");K=I.css("display");if(K==="none"){K="block"}I.remove();m[G]=K}o.data(this[H],"olddisplay",K)}}for(var H=0,F=this.length;H<F;H++){this[H].style.display=o.data(this[H],"olddisplay")||""}return this}},hide:function(H,I){if(H){return this.animate(t("hide",3),H,I)}else{for(var G=0,F=this.length;G<F;G++){var E=o.data(this[G],"olddisplay");if(!E&&E!=="none"){o.data(this[G],"olddisplay",o.css(this[G],"display"))}}for(var G=0,F=this.length;G<F;G++){this[G].style.display="none"}return this}},_toggle:o.fn.toggle,toggle:function(G,F){var E=typeof G==="boolean";return o.isFunction(G)&&o.isFunction(F)?this._toggle.apply(this,arguments):G==null||E?this.each(function(){var H=E?G:o(this).is(":hidden");o(this)[H?"show":"hide"]()}):this.animate(t("toggle",3),G,F)},fadeTo:function(E,G,F){return this.animate({opacity:G},E,F)},animate:function(I,F,H,G){var E=o.speed(F,H,G);return this[E.queue===false?"each":"queue"](function(){var K=o.extend({},E),M,L=this.nodeType==1&&o(this).is(":hidden"),J=this;for(M in I){if(I[M]=="hide"&&L||I[M]=="show"&&!L){return K.complete.call(this)}if((M=="height"||M=="width")&&this.style){K.display=o.css(this,"display");K.overflow=this.style.overflow}}if(K.overflow!=null){this.style.overflow="hidden"}K.curAnim=o.extend({},I);o.each(I,function(O,S){var R=new o.fx(J,K,O);if(/toggle|show|hide/.test(S)){R[S=="toggle"?L?"show":"hide":S](I)}else{var Q=S.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),T=R.cur(true)||0;if(Q){var N=parseFloat(Q[2]),P=Q[3]||"px";if(P!="px"){J.style[O]=(N||1)+P;T=((N||1)/R.cur(true))*T;J.style[O]=T+P}if(Q[1]){N=((Q[1]=="-="?-1:1)*N)+T}R.custom(T,N,P)}else{R.custom(T,S,"")}}});return true})},stop:function(F,E){var G=o.timers;if(F){this.queue([])}this.each(function(){for(var H=G.length-1;H>=0;H--){if(G[H].elem==this){if(E){G[H](true)}G.splice(H,1)}}});if(!E){this.dequeue()}return this}});o.each({slideDown:t("show",1),slideUp:t("hide",1),slideToggle:t("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(E,F){o.fn[E]=function(G,H){return this.animate(F,G,H)}});o.extend({speed:function(G,H,F){var E=typeof G==="object"?G:{complete:F||!F&&H||o.isFunction(G)&&G,duration:G,easing:F&&H||H&&!o.isFunction(H)&&H};E.duration=o.fx.off?0:typeof E.duration==="number"?E.duration:o.fx.speeds[E.duration]||o.fx.speeds._default;E.old=E.complete;E.complete=function(){if(E.queue!==false){o(this).dequeue()}if(o.isFunction(E.old)){E.old.call(this)}};return E},easing:{linear:function(G,H,E,F){return E+F*G},swing:function(G,H,E,F){return((-Math.cos(G*Math.PI)/2)+0.5)*F+E}},timers:[],fx:function(F,E,G){this.options=E;this.elem=F;this.prop=G;if(!E.orig){E.orig={}}}});o.fx.prototype={update:function(){if(this.options.step){this.options.step.call(this.elem,this.now,this)}(o.fx.step[this.prop]||o.fx.step._default)(this);if((this.prop=="height"||this.prop=="width")&&this.elem.style){this.elem.style.display="block"}},cur:function(F){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)){return this.elem[this.prop]}var E=parseFloat(o.css(this.elem,this.prop,F));return E&&E>-10000?E:parseFloat(o.curCSS(this.elem,this.prop))||0},custom:function(I,H,G){this.startTime=e();this.start=I;this.end=H;this.unit=G||this.unit||"px";this.now=this.start;this.pos=this.state=0;var E=this;function F(J){return E.step(J)}F.elem=this.elem;if(F()&&o.timers.push(F)&&!n){n=setInterval(function(){var K=o.timers;for(var J=0;J<K.length;J++){if(!K[J]()){K.splice(J--,1)}}if(!K.length){clearInterval(n);n=g}},13)}},show:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.show=true;this.custom(this.prop=="width"||this.prop=="height"?1:0,this.cur());o(this.elem).show()},hide:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.hide=true;this.custom(this.cur(),0)},step:function(H){var G=e();if(H||G>=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var E=true;for(var F in this.options.curAnim){if(this.options.curAnim[F]!==true){E=false}}if(E){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(o.css(this.elem,"display")=="none"){this.elem.style.display="block"}}if(this.options.hide){o(this.elem).hide()}if(this.options.hide||this.options.show){for(var I in this.options.curAnim){o.attr(this.elem.style,I,this.options.orig[I])}}this.options.complete.call(this.elem)}return false}else{var J=G-this.startTime;this.state=J/this.options.duration;this.pos=o.easing[this.options.easing||(o.easing.swing?"swing":"linear")](this.state,J,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update()}return true}};o.extend(o.fx,{speeds:{slow:600,fast:200,_default:400},step:{opacity:function(E){o.attr(E.elem.style,"opacity",E.now)},_default:function(E){if(E.elem.style&&E.elem.style[E.prop]!=null){E.elem.style[E.prop]=E.now+E.unit}else{E.elem[E.prop]=E.now}}}});if(document.documentElement.getBoundingClientRect){o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}var G=this[0].getBoundingClientRect(),J=this[0].ownerDocument,F=J.body,E=J.documentElement,L=E.clientTop||F.clientTop||0,K=E.clientLeft||F.clientLeft||0,I=G.top+(self.pageYOffset||o.boxModel&&E.scrollTop||F.scrollTop)-L,H=G.left+(self.pageXOffset||o.boxModel&&E.scrollLeft||F.scrollLeft)-K;return{top:I,left:H}}}else{o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}o.offset.initialized||o.offset.initialize();var J=this[0],G=J.offsetParent,F=J,O=J.ownerDocument,M,H=O.documentElement,K=O.body,L=O.defaultView,E=L.getComputedStyle(J,null),N=J.offsetTop,I=J.offsetLeft;while((J=J.parentNode)&&J!==K&&J!==H){M=L.getComputedStyle(J,null);N-=J.scrollTop,I-=J.scrollLeft;if(J===G){N+=J.offsetTop,I+=J.offsetLeft;if(o.offset.doesNotAddBorder&&!(o.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(J.tagName))){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}F=G,G=J.offsetParent}if(o.offset.subtractsBorderForOverflowNotVisible&&M.overflow!=="visible"){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}E=M}if(E.position==="relative"||E.position==="static"){N+=K.offsetTop,I+=K.offsetLeft}if(E.position==="fixed"){N+=Math.max(H.scrollTop,K.scrollTop),I+=Math.max(H.scrollLeft,K.scrollLeft)}return{top:N,left:I}}}o.offset={initialize:function(){if(this.initialized){return}var L=document.body,F=document.createElement("div"),H,G,N,I,M,E,J=L.style.marginTop,K='<div style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;"><div></div></div><table style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;" cellpadding="0" cellspacing="0"><tr><td></td></tr></table>';M={position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"};for(E in M){F.style[E]=M[E]}F.innerHTML=K;L.insertBefore(F,L.firstChild);H=F.firstChild,G=H.firstChild,I=H.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(G.offsetTop!==5);this.doesAddBorderForTableAndCells=(I.offsetTop===5);H.style.overflow="hidden",H.style.position="relative";this.subtractsBorderForOverflowNotVisible=(G.offsetTop===-5);L.style.marginTop="1px";this.doesNotIncludeMarginInBodyOffset=(L.offsetTop===0);L.style.marginTop=J;L.removeChild(F);this.initialized=true},bodyOffset:function(E){o.offset.initialized||o.offset.initialize();var G=E.offsetTop,F=E.offsetLeft;if(o.offset.doesNotIncludeMarginInBodyOffset){G+=parseInt(o.curCSS(E,"marginTop",true),10)||0,F+=parseInt(o.curCSS(E,"marginLeft",true),10)||0}return{top:G,left:F}}};o.fn.extend({position:function(){var I=0,H=0,F;if(this[0]){var G=this.offsetParent(),J=this.offset(),E=/^body|html$/i.test(G[0].tagName)?{top:0,left:0}:G.offset();J.top-=j(this,"marginTop");J.left-=j(this,"marginLeft");E.top+=j(G,"borderTopWidth");E.left+=j(G,"borderLeftWidth");F={top:J.top-E.top,left:J.left-E.left}}return F},offsetParent:function(){var E=this[0].offsetParent||document.body;while(E&&(!/^body|html$/i.test(E.tagName)&&o.css(E,"position")=="static")){E=E.offsetParent}return o(E)}});o.each(["Left","Top"],function(F,E){var G="scroll"+E;o.fn[G]=function(H){if(!this[0]){return null}return H!==g?this.each(function(){this==l||this==document?l.scrollTo(!F?H:o(l).scrollLeft(),F?H:o(l).scrollTop()):this[G]=H}):this[0]==l||this[0]==document?self[F?"pageYOffset":"pageXOffset"]||o.boxModel&&document.documentElement[G]||document.body[G]:this[0][G]}});o.each(["Height","Width"],function(I,G){var E=I?"Left":"Top",H=I?"Right":"Bottom",F=G.toLowerCase();o.fn["inner"+G]=function(){return this[0]?o.css(this[0],F,false,"padding"):null};o.fn["outer"+G]=function(K){return this[0]?o.css(this[0],F,false,K?"margin":"border"):null};var J=G.toLowerCase();o.fn[J]=function(K){return this[0]==l?document.compatMode=="CSS1Compat"&&document.documentElement["client"+G]||document.body["client"+G]:this[0]==document?Math.max(document.documentElement["client"+G],document.body["scroll"+G],document.documentElement["scroll"+G],document.body["offset"+G],document.documentElement["offset"+G]):K===g?(this.length?o.css(this[0],J):null):this.css(J,typeof K==="string"?K:K+"px")}})})();
\ No newline at end of file diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/js/lesson.js b/examples/lessons/6_Maths_AddingAndMultiplyingVariable/js/lesson.js deleted file mode 100755 index 22e8099..0000000 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/js/lesson.js +++ /dev/null @@ -1,212 +0,0 @@ -$(document).ready(function(){ - var k = Karma({ - audio: [{'name':'correct','file':'correct.wav'}, - {'name':'incorrect','file':'incorrect.wav'} - ]}); - - k.ready(function(){ - var i,j; - var totalCounter; - var correctCounter; - var currentQuestion; - var TOTAL_QUES = 8; - var flag_correct; - var randPositions = []; - var check_num; - var infoQues1 = new Array('एउटा बट्टामा y ओटा लडडुहरु छन ', - 'एउटा सीसाकलमको बट्टामा p ओटा सीसाकलमहरु छन', - 'एउटा बोरामा r केजी चामल छ ', - 'एउटा सिसीमा z लिटर तेल छ ', - 'एउटा कार्टुनमा x प्याकेट चाउचाउ छन ', - 'एउटा डालोमा n ओटा नरिवलहरु छन ', - 'एउटा झोलामा m केजी आपहरु छन', - 'यो एउटा बिस्कुटको प्याकेटमा x ओटा बिस्कुटहरु छन ' - ); - - var infoQues2 = new Array('यदि एउटा बट्टामा 20 ओटा लडडुहरु छन भने 5 ओटा बट्टामा', - 'यदि एउटा बट्टामा 10 ओटा सीसाकलमहरु छन भने 4 ओटा बट्टामा', - 'यदि एउटा बोरामा 50 केजी चामल छ भने 4 ओटा बोरामा जम्मा ', - 'यदि एउटा सिसीमा 2 लिटर तेल छ भने 4 ओटा सिसीमा जम्मा ', - 'यदि एउटा कार्टुनमा 30 प्याकेट चाउचाउ छन भने 3 ओटा कार्टुनमा जम्मा ', - 'यदि एउटा डालोमा 25 ओटा नरिवलहरु छन भने 3 ओटा डालोमा जम्मा ', - 'यदि एउटा झोलामा 7 केजी आपहरु छन भने 2 ओटा झोलामा जम्मा ', - 'यदि एउटा प्याकेटमा 15 बिस्कुट ओटा बिस्कुट छन भने 3 ओटा प्याकेटमा जम्मा ' - ); - - var infoQues3 = new Array('ओटा लडडुहरु छन','सीसाकलमहरु छन','केजी चामल छ','लिटर तेल छ', - 'प्याकेट चाउचाउ छन','ओटा नरिवलहरु छन','केजी आपहरु छन','बिस्कुटहरु छन' - ); - var variableName = new Array('y','p','r','z','x','n','m','x'); - var perPack = new Array('20','10','50','2','30','25','7','15'); - var quantity = new Array('5','4','4','4','3','3','2','3'); - var answers = new Array('100','40','200','8','90','75','14','45'); - - var scoreboard = $('#score_box').scoreboard({'layout':'horizontal', - 'winningScore': TOTAL_QUES}); - - var genRandPosition=function (){ - randPositions[0] = k.rand(0,TOTAL_QUES-1); - for(i=1; i<TOTAL_QUES; i++){ - do{ - flag = 0; - randPositions[i] = k.rand(0,TOTAL_QUES-1); - for(j=0; j<i; j++){ - if(randPositions[i] === randPositions[j]){ - flag++; - } - } - }while(flag != 0 ); //end of do while loop - } - }; - - var next_question = function (){ - if(totalCounter === TOTAL_QUES){ - t=setTimeout(function(){delay_gameOver();},1000); - } - else{ - currentQuestion = randPositions[totalCounter]; - //currentQuestion = totalCounter; - flag_correct = 1; - check_num = 0; - $('#linkCheck').show(); - $('.bgQuesMain').html('<img id="img'+currentQuestion+'" src="assets/image/img'+currentQuestion+'.png" />'); - $('.bgQuesAns').html('<img id="img'+currentQuestion+'" src="assets/image/img'+currentQuestion+'More.png" />'); - $('.bgQuestion').addClass('quesText').html(infoQues1[currentQuestion]+' ।'); - $('.bgCalculation').addClass('quesText').html(infoQues2[currentQuestion]); - $('.bgCalculation').append('<div id="textQues1"></div>'); - $('.bgCalculation').append('<div id="textQues2"></div>'); - for( i = 0; i< quantity[currentQuestion]; i++){ - $('#textQues1').append(variableName[currentQuestion]); - $('#textQues2').append('<span class="blankBoxes"></span>'); - if(i != quantity[currentQuestion]-1){ - $('#textQues1').append('+'); - $('#textQues2').append('+'); - } - else{ - $('#textQues1').append(' = ').append(quantity[currentQuestion]+' * '+variableName[currentQuestion]); - $('#textQues2').append(' = ').append(quantity[currentQuestion]+' *'+'<input type="text" id="text1" class="textBox" maxLength="2"/>'); - } - $("input#text1").focus(); - } - - - foucs_blur(); - } - - }; - - function game_start(){ - $('#gameOver').hide(); - $('#linkCheck').show(); - $('#section').removeClass('backOpaque'); - genRandPosition(); - next_question(); - } - - function game() { - totalCounter = 0; - correctCounter = 0; - $('#section').html('').append('<div id="left-side"></div>'); - $('#left-side').append('<div class="bgQuesMain"></div>'); - $('#left-side').append('<div class="bgQuesAns"></div>'); - $('#section').append('<div id="right-side"></div>'); - $('#right-side').append('<div class="bgQuestion"></div>'); - $('#right-side').append('<div class="bgCalculation"></div>'); - $('#help').hide(); - $('.bgAns').hide(); - $('#linkCheck').hide(); - $('#gameOver').hide(); - - } - - game(); - - var delay_nextQues = function(){ - document.delayForm.delayval.value = 1; - next_question(); - }; - - var delay_gameOver = function(){ - document.delayForm.delayval.value = 1; - $('#section').addClass('backOpaque'); - $('#linkCheck').hide(); - $('#gameOver').show(); - }; - - var check_answer = function(){ - if(check_num === 0){ - var textVal = $('#text1').val(); - if(textVal === perPack[currentQuestion]){ // first one is correct - k.audio.correct.play(); - $('.bgCalculation').append('<div id="textQues3"></div>'); - $('.bgCalculation').append('<div id="textQues4"></div>'); - $('#textQues3').append(' = ').append('<input type="text" id="text2" class="textBox" maxLength="3"/>'); - $('#textQues4').append(infoQues3[currentQuestion]+' ।'); - $('#text1').attr("disabled", true); - $('.blankBoxes').css({'padding':'0'}).html(perPack[currentQuestion]); - check_num++; - $("input#text2").focus(); - foucs_blur(); - } - else{ - k.audio.incorrect.play(); - flag_correct = 0; - } - } - else{ - textVal = $('#text2').val(); - //if(textVal === perPack[currentQuestion] * quantity[currentQuestion]){ - if(textVal === answers[currentQuestion]){ - k.audio.correct.play(); - if(flag_correct === 1){ - scoreboard.scoreboard('inc'); - correctCounter++; - } - scoreboard.scoreboard('incTotal'); - totalCounter++; - t=setTimeout(function(){delay_nextQues();},1000); - } - else{ - flag_correct = 0; - k.audio.incorrect.play(); - } - } - }; - - function foucs_blur(){ - - $('input[type="text"]') - .focus(function() { - $(this).removeClass('incorrect').addClass("focus"); - }) - .blur(function() { - $(this).removeClass("focus"); - }) - .keypress(function(event) { - if(event.which === 13){ - check_answer(); - } - - }); - - $('#linkCheck').click(function(){ - check_answer(); - }); - } - - $('#linkStart').click(function(){ - game_start(); - }); - - $('#linkPlayAgain').click(function(){ - scoreboard.scoreboard('reset'); - game_start(); - }); - $('#linkHelp').click(function(){ - $('#help').slideDown(2000); - }) - .mouseout(function(){ - $('#help').slideUp(2000); - }); - }); //end of k.ready -}); //end of document.ready
\ No newline at end of file diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/js/ui.draggable.js b/examples/lessons/6_Maths_AddingAndMultiplyingVariable/js/ui.draggable.js deleted file mode 100755 index 0402f0e..0000000 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/js/ui.draggable.js +++ /dev/null @@ -1,766 +0,0 @@ -/* - * jQuery UI Draggable 1.7.2 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Draggables - * - * Depends: - * ui.core.js - */ -(function($) { - -$.widget("ui.draggable", $.extend({}, $.ui.mouse, { - - _init: function() { - - if (this.options.helper == 'original' && !(/^(?:r|a|f)/).test(this.element.css("position"))) - this.element[0].style.position = 'relative'; - - (this.options.addClasses && this.element.addClass("ui-draggable")); - (this.options.disabled && this.element.addClass("ui-draggable-disabled")); - - this._mouseInit(); - - }, - - destroy: function() { - if(!this.element.data('draggable')) return; - this.element - .removeData("draggable") - .unbind(".draggable") - .removeClass("ui-draggable" - + " ui-draggable-dragging" - + " ui-draggable-disabled"); - this._mouseDestroy(); - }, - - _mouseCapture: function(event) { - - var o = this.options; - - if (this.helper || o.disabled || $(event.target).is('.ui-resizable-handle')) - return false; - - //Quit if we're not on a valid handle - this.handle = this._getHandle(event); - if (!this.handle) - return false; - - return true; - - }, - - _mouseStart: function(event) { - - var o = this.options; - - //Create and append the visible helper - this.helper = this._createHelper(event); - - //Cache the helper size - this._cacheHelperProportions(); - - //If ddmanager is used for droppables, set the global draggable - if($.ui.ddmanager) - $.ui.ddmanager.current = this; - - /* - * - Position generation - - * This block generates everything position related - it's the core of draggables. - */ - - //Cache the margins of the original element - this._cacheMargins(); - - //Store the helper's css position - this.cssPosition = this.helper.css("position"); - this.scrollParent = this.helper.scrollParent(); - - //The element's absolute position on the page minus margins - this.offset = this.element.offset(); - this.offset = { - top: this.offset.top - this.margins.top, - left: this.offset.left - this.margins.left - }; - - $.extend(this.offset, { - click: { //Where the click happened, relative to the element - left: event.pageX - this.offset.left, - top: event.pageY - this.offset.top - }, - parent: this._getParentOffset(), - relative: this._getRelativeOffset() //This is a relative to absolute position minus the actual position calculation - only used for relative positioned helper - }); - - //Generate the original position - this.originalPosition = this._generatePosition(event); - this.originalPageX = event.pageX; - this.originalPageY = event.pageY; - - //Adjust the mouse offset relative to the helper if 'cursorAt' is supplied - if(o.cursorAt) - this._adjustOffsetFromHelper(o.cursorAt); - - //Set a containment if given in the options - if(o.containment) - this._setContainment(); - - //Call plugins and callbacks - this._trigger("start", event); - - //Recache the helper size - this._cacheHelperProportions(); - - //Prepare the droppable offsets - if ($.ui.ddmanager && !o.dropBehaviour) - $.ui.ddmanager.prepareOffsets(this, event); - - this.helper.addClass("ui-draggable-dragging"); - this._mouseDrag(event, true); //Execute the drag once - this causes the helper not to be visible before getting its correct position - return true; - }, - - _mouseDrag: function(event, noPropagation) { - - //Compute the helpers position - this.position = this._generatePosition(event); - this.positionAbs = this._convertPositionTo("absolute"); - - //Call plugins and callbacks and use the resulting position if something is returned - if (!noPropagation) { - var ui = this._uiHash(); - this._trigger('drag', event, ui); - this.position = ui.position; - } - - if(!this.options.axis || this.options.axis != "y") this.helper[0].style.left = this.position.left+'px'; - if(!this.options.axis || this.options.axis != "x") this.helper[0].style.top = this.position.top+'px'; - if($.ui.ddmanager) $.ui.ddmanager.drag(this, event); - - return false; - }, - - _mouseStop: function(event) { - - //If we are using droppables, inform the manager about the drop - var dropped = false; - if ($.ui.ddmanager && !this.options.dropBehaviour) - dropped = $.ui.ddmanager.drop(this, event); - - //if a drop comes from outside (a sortable) - if(this.dropped) { - dropped = this.dropped; - this.dropped = false; - } - - if((this.options.revert == "invalid" && !dropped) || (this.options.revert == "valid" && dropped) || this.options.revert === true || ($.isFunction(this.options.revert) && this.options.revert.call(this.element, dropped))) { - var self = this; - $(this.helper).animate(this.originalPosition, parseInt(this.options.revertDuration, 10), function() { - self._trigger("stop", event); - self._clear(); - }); - } else { - this._trigger("stop", event); - this._clear(); - } - - return false; - }, - - _getHandle: function(event) { - - var handle = !this.options.handle || !$(this.options.handle, this.element).length ? true : false; - $(this.options.handle, this.element) - .find("*") - .andSelf() - .each(function() { - if(this == event.target) handle = true; - }); - - return handle; - - }, - - _createHelper: function(event) { - - var o = this.options; - var helper = $.isFunction(o.helper) ? $(o.helper.apply(this.element[0], [event])) : (o.helper == 'clone' ? this.element.clone() : this.element); - - if(!helper.parents('body').length) - helper.appendTo((o.appendTo == 'parent' ? this.element[0].parentNode : o.appendTo)); - - if(helper[0] != this.element[0] && !(/(fixed|absolute)/).test(helper.css("position"))) - helper.css("position", "absolute"); - - return helper; - - }, - - _adjustOffsetFromHelper: function(obj) { - if(obj.left != undefined) this.offset.click.left = obj.left + this.margins.left; - if(obj.right != undefined) this.offset.click.left = this.helperProportions.width - obj.right + this.margins.left; - if(obj.top != undefined) this.offset.click.top = obj.top + this.margins.top; - if(obj.bottom != undefined) this.offset.click.top = this.helperProportions.height - obj.bottom + this.margins.top; - }, - - _getParentOffset: function() { - - //Get the offsetParent and cache its position - this.offsetParent = this.helper.offsetParent(); - var po = this.offsetParent.offset(); - - // This is a special case where we need to modify a offset calculated on start, since the following happened: - // 1. The position of the helper is absolute, so it's position is calculated based on the next positioned parent - // 2. The actual offset parent is a child of the scroll parent, and the scroll parent isn't the document, which means that - // the scroll is included in the initial calculation of the offset of the parent, and never recalculated upon drag - if(this.cssPosition == 'absolute' && this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) { - po.left += this.scrollParent.scrollLeft(); - po.top += this.scrollParent.scrollTop(); - } - - if((this.offsetParent[0] == document.body) //This needs to be actually done for all browsers, since pageX/pageY includes this information - || (this.offsetParent[0].tagName && this.offsetParent[0].tagName.toLowerCase() == 'html' && $.browser.msie)) //Ugly IE fix - po = { top: 0, left: 0 }; - - return { - top: po.top + (parseInt(this.offsetParent.css("borderTopWidth"),10) || 0), - left: po.left + (parseInt(this.offsetParent.css("borderLeftWidth"),10) || 0) - }; - - }, - - _getRelativeOffset: function() { - - if(this.cssPosition == "relative") { - var p = this.element.position(); - return { - top: p.top - (parseInt(this.helper.css("top"),10) || 0) + this.scrollParent.scrollTop(), - left: p.left - (parseInt(this.helper.css("left"),10) || 0) + this.scrollParent.scrollLeft() - }; - } else { - return { top: 0, left: 0 }; - } - - }, - - _cacheMargins: function() { - this.margins = { - left: (parseInt(this.element.css("marginLeft"),10) || 0), - top: (parseInt(this.element.css("marginTop"),10) || 0) - }; - }, - - _cacheHelperProportions: function() { - this.helperProportions = { - width: this.helper.outerWidth(), - height: this.helper.outerHeight() - }; - }, - - _setContainment: function() { - - var o = this.options; - if(o.containment == 'parent') o.containment = this.helper[0].parentNode; - if(o.containment == 'document' || o.containment == 'window') this.containment = [ - 0 - this.offset.relative.left - this.offset.parent.left, - 0 - this.offset.relative.top - this.offset.parent.top, - $(o.containment == 'document' ? document : window).width() - this.helperProportions.width - this.margins.left, - ($(o.containment == 'document' ? document : window).height() || document.body.parentNode.scrollHeight) - this.helperProportions.height - this.margins.top - ]; - - if(!(/^(document|window|parent)$/).test(o.containment) && o.containment.constructor != Array) { - var ce = $(o.containment)[0]; if(!ce) return; - var co = $(o.containment).offset(); - var over = ($(ce).css("overflow") != 'hidden'); - - this.containment = [ - co.left + (parseInt($(ce).css("borderLeftWidth"),10) || 0) + (parseInt($(ce).css("paddingLeft"),10) || 0) - this.margins.left, - co.top + (parseInt($(ce).css("borderTopWidth"),10) || 0) + (parseInt($(ce).css("paddingTop"),10) || 0) - this.margins.top, - co.left+(over ? Math.max(ce.scrollWidth,ce.offsetWidth) : ce.offsetWidth) - (parseInt($(ce).css("borderLeftWidth"),10) || 0) - (parseInt($(ce).css("paddingRight"),10) || 0) - this.helperProportions.width - this.margins.left, - co.top+(over ? Math.max(ce.scrollHeight,ce.offsetHeight) : ce.offsetHeight) - (parseInt($(ce).css("borderTopWidth"),10) || 0) - (parseInt($(ce).css("paddingBottom"),10) || 0) - this.helperProportions.height - this.margins.top - ]; - } else if(o.containment.constructor == Array) { - this.containment = o.containment; - } - - }, - - _convertPositionTo: function(d, pos) { - - if(!pos) pos = this.position; - var mod = d == "absolute" ? 1 : -1; - var o = this.options, scroll = this.cssPosition == 'absolute' && !(this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent, scrollIsRootNode = (/(html|body)/i).test(scroll[0].tagName); - - return { - top: ( - pos.top // The absolute mouse position - + this.offset.relative.top * mod // Only for relative positioned nodes: Relative offset from element to offset parent - + this.offset.parent.top * mod // The offsetParent's offset without borders (offset + border) - - ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollTop() : ( scrollIsRootNode ? 0 : scroll.scrollTop() ) ) * mod) - ), - left: ( - pos.left // The absolute mouse position - + this.offset.relative.left * mod // Only for relative positioned nodes: Relative offset from element to offset parent - + this.offset.parent.left * mod // The offsetParent's offset without borders (offset + border) - - ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollLeft() : scrollIsRootNode ? 0 : scroll.scrollLeft() ) * mod) - ) - }; - - }, - - _generatePosition: function(event) { - - var o = this.options, scroll = this.cssPosition == 'absolute' && !(this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent, scrollIsRootNode = (/(html|body)/i).test(scroll[0].tagName); - - // This is another very weird special case that only happens for relative elements: - // 1. If the css position is relative - // 2. and the scroll parent is the document or similar to the offset parent - // we have to refresh the relative offset during the scroll so there are no jumps - if(this.cssPosition == 'relative' && !(this.scrollParent[0] != document && this.scrollParent[0] != this.offsetParent[0])) { - this.offset.relative = this._getRelativeOffset(); - } - - var pageX = event.pageX; - var pageY = event.pageY; - - /* - * - Position constraining - - * Constrain the position to a mix of grid, containment. - */ - - if(this.originalPosition) { //If we are not dragging yet, we won't check for options - - if(this.containment) { - if(event.pageX - this.offset.click.left < this.containment[0]) pageX = this.containment[0] + this.offset.click.left; - if(event.pageY - this.offset.click.top < this.containment[1]) pageY = this.containment[1] + this.offset.click.top; - if(event.pageX - this.offset.click.left > this.containment[2]) pageX = this.containment[2] + this.offset.click.left; - if(event.pageY - this.offset.click.top > this.containment[3]) pageY = this.containment[3] + this.offset.click.top; - } - - if(o.grid) { - var top = this.originalPageY + Math.round((pageY - this.originalPageY) / o.grid[1]) * o.grid[1]; - pageY = this.containment ? (!(top - this.offset.click.top < this.containment[1] || top - this.offset.click.top > this.containment[3]) ? top : (!(top - this.offset.click.top < this.containment[1]) ? top - o.grid[1] : top + o.grid[1])) : top; - - var left = this.originalPageX + Math.round((pageX - this.originalPageX) / o.grid[0]) * o.grid[0]; - pageX = this.containment ? (!(left - this.offset.click.left < this.containment[0] || left - this.offset.click.left > this.containment[2]) ? left : (!(left - this.offset.click.left < this.containment[0]) ? left - o.grid[0] : left + o.grid[0])) : left; - } - - } - - return { - top: ( - pageY // The absolute mouse position - - this.offset.click.top // Click offset (relative to the element) - - this.offset.relative.top // Only for relative positioned nodes: Relative offset from element to offset parent - - this.offset.parent.top // The offsetParent's offset without borders (offset + border) - + ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollTop() : ( scrollIsRootNode ? 0 : scroll.scrollTop() ) )) - ), - left: ( - pageX // The absolute mouse position - - this.offset.click.left // Click offset (relative to the element) - - this.offset.relative.left // Only for relative positioned nodes: Relative offset from element to offset parent - - this.offset.parent.left // The offsetParent's offset without borders (offset + border) - + ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollLeft() : scrollIsRootNode ? 0 : scroll.scrollLeft() )) - ) - }; - - }, - - _clear: function() { - this.helper.removeClass("ui-draggable-dragging"); - if(this.helper[0] != this.element[0] && !this.cancelHelperRemoval) this.helper.remove(); - //if($.ui.ddmanager) $.ui.ddmanager.current = null; - this.helper = null; - this.cancelHelperRemoval = false; - }, - - // From now on bulk stuff - mainly helpers - - _trigger: function(type, event, ui) { - ui = ui || this._uiHash(); - $.ui.plugin.call(this, type, [event, ui]); - if(type == "drag") this.positionAbs = this._convertPositionTo("absolute"); //The absolute position has to be recalculated after plugins - return $.widget.prototype._trigger.call(this, type, event, ui); - }, - - plugins: {}, - - _uiHash: function(event) { - return { - helper: this.helper, - position: this.position, - absolutePosition: this.positionAbs, //deprecated - offset: this.positionAbs - }; - } - -})); - -$.extend($.ui.draggable, { - version: "1.7.2", - eventPrefix: "drag", - defaults: { - addClasses: true, - appendTo: "parent", - axis: false, - cancel: ":input,option", - connectToSortable: false, - containment: false, - cursor: "auto", - cursorAt: false, - delay: 0, - distance: 1, - grid: false, - handle: false, - helper: "original", - iframeFix: false, - opacity: false, - refreshPositions: false, - revert: false, - revertDuration: 500, - scope: "default", - scroll: true, - scrollSensitivity: 20, - scrollSpeed: 20, - snap: false, - snapMode: "both", - snapTolerance: 20, - stack: false, - zIndex: false - } -}); - -$.ui.plugin.add("draggable", "connectToSortable", { - start: function(event, ui) { - - var inst = $(this).data("draggable"), o = inst.options, - uiSortable = $.extend({}, ui, { item: inst.element }); - inst.sortables = []; - $(o.connectToSortable).each(function() { - var sortable = $.data(this, 'sortable'); - if (sortable && !sortable.options.disabled) { - inst.sortables.push({ - instance: sortable, - shouldRevert: sortable.options.revert - }); - sortable._refreshItems(); //Do a one-time refresh at start to refresh the containerCache - sortable._trigger("activate", event, uiSortable); - } - }); - - }, - stop: function(event, ui) { - - //If we are still over the sortable, we fake the stop event of the sortable, but also remove helper - var inst = $(this).data("draggable"), - uiSortable = $.extend({}, ui, { item: inst.element }); - - $.each(inst.sortables, function() { - if(this.instance.isOver) { - - this.instance.isOver = 0; - - inst.cancelHelperRemoval = true; //Don't remove the helper in the draggable instance - this.instance.cancelHelperRemoval = false; //Remove it in the sortable instance (so sortable plugins like revert still work) - - //The sortable revert is supported, and we have to set a temporary dropped variable on the draggable to support revert: 'valid/invalid' - if(this.shouldRevert) this.instance.options.revert = true; - - //Trigger the stop of the sortable - this.instance._mouseStop(event); - - this.instance.options.helper = this.instance.options._helper; - - //If the helper has been the original item, restore properties in the sortable - if(inst.options.helper == 'original') - this.instance.currentItem.css({ top: 'auto', left: 'auto' }); - - } else { - this.instance.cancelHelperRemoval = false; //Remove the helper in the sortable instance - this.instance._trigger("deactivate", event, uiSortable); - } - - }); - - }, - drag: function(event, ui) { - - var inst = $(this).data("draggable"), self = this; - - var checkPos = function(o) { - var dyClick = this.offset.click.top, dxClick = this.offset.click.left; - var helperTop = this.positionAbs.top, helperLeft = this.positionAbs.left; - var itemHeight = o.height, itemWidth = o.width; - var itemTop = o.top, itemLeft = o.left; - - return $.ui.isOver(helperTop + dyClick, helperLeft + dxClick, itemTop, itemLeft, itemHeight, itemWidth); - }; - - $.each(inst.sortables, function(i) { - - //Copy over some variables to allow calling the sortable's native _intersectsWith - this.instance.positionAbs = inst.positionAbs; - this.instance.helperProportions = inst.helperProportions; - this.instance.offset.click = inst.offset.click; - - if(this.instance._intersectsWith(this.instance.containerCache)) { - - //If it intersects, we use a little isOver variable and set it once, so our move-in stuff gets fired only once - if(!this.instance.isOver) { - - this.instance.isOver = 1; - //Now we fake the start of dragging for the sortable instance, - //by cloning the list group item, appending it to the sortable and using it as inst.currentItem - //We can then fire the start event of the sortable with our passed browser event, and our own helper (so it doesn't create a new one) - this.instance.currentItem = $(self).clone().appendTo(this.instance.element).data("sortable-item", true); - this.instance.options._helper = this.instance.options.helper; //Store helper option to later restore it - this.instance.options.helper = function() { return ui.helper[0]; }; - - event.target = this.instance.currentItem[0]; - this.instance._mouseCapture(event, true); - this.instance._mouseStart(event, true, true); - - //Because the browser event is way off the new appended portlet, we modify a couple of variables to reflect the changes - this.instance.offset.click.top = inst.offset.click.top; - this.instance.offset.click.left = inst.offset.click.left; - this.instance.offset.parent.left -= inst.offset.parent.left - this.instance.offset.parent.left; - this.instance.offset.parent.top -= inst.offset.parent.top - this.instance.offset.parent.top; - - inst._trigger("toSortable", event); - inst.dropped = this.instance.element; //draggable revert needs that - //hack so receive/update callbacks work (mostly) - inst.currentItem = inst.element; - this.instance.fromOutside = inst; - - } - - //Provided we did all the previous steps, we can fire the drag event of the sortable on every draggable drag, when it intersects with the sortable - if(this.instance.currentItem) this.instance._mouseDrag(event); - - } else { - - //If it doesn't intersect with the sortable, and it intersected before, - //we fake the drag stop of the sortable, but make sure it doesn't remove the helper by using cancelHelperRemoval - if(this.instance.isOver) { - - this.instance.isOver = 0; - this.instance.cancelHelperRemoval = true; - - //Prevent reverting on this forced stop - this.instance.options.revert = false; - - // The out event needs to be triggered independently - this.instance._trigger('out', event, this.instance._uiHash(this.instance)); - - this.instance._mouseStop(event, true); - this.instance.options.helper = this.instance.options._helper; - - //Now we remove our currentItem, the list group clone again, and the placeholder, and animate the helper back to it's original size - this.instance.currentItem.remove(); - if(this.instance.placeholder) this.instance.placeholder.remove(); - - inst._trigger("fromSortable", event); - inst.dropped = false; //draggable revert needs that - } - - }; - - }); - - } -}); - -$.ui.plugin.add("draggable", "cursor", { - start: function(event, ui) { - var t = $('body'), o = $(this).data('draggable').options; - if (t.css("cursor")) o._cursor = t.css("cursor"); - t.css("cursor", o.cursor); - }, - stop: function(event, ui) { - var o = $(this).data('draggable').options; - if (o._cursor) $('body').css("cursor", o._cursor); - } -}); - -$.ui.plugin.add("draggable", "iframeFix", { - start: function(event, ui) { - var o = $(this).data('draggable').options; - $(o.iframeFix === true ? "iframe" : o.iframeFix).each(function() { - $('<div class="ui-draggable-iframeFix" style="background: #fff;"></div>') - .css({ - width: this.offsetWidth+"px", height: this.offsetHeight+"px", - position: "absolute", opacity: "0.001", zIndex: 1000 - }) - .css($(this).offset()) - .appendTo("body"); - }); - }, - stop: function(event, ui) { - $("div.ui-draggable-iframeFix").each(function() { this.parentNode.removeChild(this); }); //Remove frame helpers - } -}); - -$.ui.plugin.add("draggable", "opacity", { - start: function(event, ui) { - var t = $(ui.helper), o = $(this).data('draggable').options; - if(t.css("opacity")) o._opacity = t.css("opacity"); - t.css('opacity', o.opacity); - }, - stop: function(event, ui) { - var o = $(this).data('draggable').options; - if(o._opacity) $(ui.helper).css('opacity', o._opacity); - } -}); - -$.ui.plugin.add("draggable", "scroll", { - start: function(event, ui) { - var i = $(this).data("draggable"); - if(i.scrollParent[0] != document && i.scrollParent[0].tagName != 'HTML') i.overflowOffset = i.scrollParent.offset(); - }, - drag: function(event, ui) { - - var i = $(this).data("draggable"), o = i.options, scrolled = false; - - if(i.scrollParent[0] != document && i.scrollParent[0].tagName != 'HTML') { - - if(!o.axis || o.axis != 'x') { - if((i.overflowOffset.top + i.scrollParent[0].offsetHeight) - event.pageY < o.scrollSensitivity) - i.scrollParent[0].scrollTop = scrolled = i.scrollParent[0].scrollTop + o.scrollSpeed; - else if(event.pageY - i.overflowOffset.top < o.scrollSensitivity) - i.scrollParent[0].scrollTop = scrolled = i.scrollParent[0].scrollTop - o.scrollSpeed; - } - - if(!o.axis || o.axis != 'y') { - if((i.overflowOffset.left + i.scrollParent[0].offsetWidth) - event.pageX < o.scrollSensitivity) - i.scrollParent[0].scrollLeft = scrolled = i.scrollParent[0].scrollLeft + o.scrollSpeed; - else if(event.pageX - i.overflowOffset.left < o.scrollSensitivity) - i.scrollParent[0].scrollLeft = scrolled = i.scrollParent[0].scrollLeft - o.scrollSpeed; - } - - } else { - - if(!o.axis || o.axis != 'x') { - if(event.pageY - $(document).scrollTop() < o.scrollSensitivity) - scrolled = $(document).scrollTop($(document).scrollTop() - o.scrollSpeed); - else if($(window).height() - (event.pageY - $(document).scrollTop()) < o.scrollSensitivity) - scrolled = $(document).scrollTop($(document).scrollTop() + o.scrollSpeed); - } - - if(!o.axis || o.axis != 'y') { - if(event.pageX - $(document).scrollLeft() < o.scrollSensitivity) - scrolled = $(document).scrollLeft($(document).scrollLeft() - o.scrollSpeed); - else if($(window).width() - (event.pageX - $(document).scrollLeft()) < o.scrollSensitivity) - scrolled = $(document).scrollLeft($(document).scrollLeft() + o.scrollSpeed); - } - - } - - if(scrolled !== false && $.ui.ddmanager && !o.dropBehaviour) - $.ui.ddmanager.prepareOffsets(i, event); - - } -}); - -$.ui.plugin.add("draggable", "snap", { - start: function(event, ui) { - - var i = $(this).data("draggable"), o = i.options; - i.snapElements = []; - - $(o.snap.constructor != String ? ( o.snap.items || ':data(draggable)' ) : o.snap).each(function() { - var $t = $(this); var $o = $t.offset(); - if(this != i.element[0]) i.snapElements.push({ - item: this, - width: $t.outerWidth(), height: $t.outerHeight(), - top: $o.top, left: $o.left - }); - }); - - }, - drag: function(event, ui) { - - var inst = $(this).data("draggable"), o = inst.options; - var d = o.snapTolerance; - - var x1 = ui.offset.left, x2 = x1 + inst.helperProportions.width, - y1 = ui.offset.top, y2 = y1 + inst.helperProportions.height; - - for (var i = inst.snapElements.length - 1; i >= 0; i--){ - - var l = inst.snapElements[i].left, r = l + inst.snapElements[i].width, - t = inst.snapElements[i].top, b = t + inst.snapElements[i].height; - - //Yes, I know, this is insane ;) - if(!((l-d < x1 && x1 < r+d && t-d < y1 && y1 < b+d) || (l-d < x1 && x1 < r+d && t-d < y2 && y2 < b+d) || (l-d < x2 && x2 < r+d && t-d < y1 && y1 < b+d) || (l-d < x2 && x2 < r+d && t-d < y2 && y2 < b+d))) { - if(inst.snapElements[i].snapping) (inst.options.snap.release && inst.options.snap.release.call(inst.element, event, $.extend(inst._uiHash(), { snapItem: inst.snapElements[i].item }))); - inst.snapElements[i].snapping = false; - continue; - } - - if(o.snapMode != 'inner') { - var ts = Math.abs(t - y2) <= d; - var bs = Math.abs(b - y1) <= d; - var ls = Math.abs(l - x2) <= d; - var rs = Math.abs(r - x1) <= d; - if(ts) ui.position.top = inst._convertPositionTo("relative", { top: t - inst.helperProportions.height, left: 0 }).top - inst.margins.top; - if(bs) ui.position.top = inst._convertPositionTo("relative", { top: b, left: 0 }).top - inst.margins.top; - if(ls) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: l - inst.helperProportions.width }).left - inst.margins.left; - if(rs) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: r }).left - inst.margins.left; - } - - var first = (ts || bs || ls || rs); - - if(o.snapMode != 'outer') { - var ts = Math.abs(t - y1) <= d; - var bs = Math.abs(b - y2) <= d; - var ls = Math.abs(l - x1) <= d; - var rs = Math.abs(r - x2) <= d; - if(ts) ui.position.top = inst._convertPositionTo("relative", { top: t, left: 0 }).top - inst.margins.top; - if(bs) ui.position.top = inst._convertPositionTo("relative", { top: b - inst.helperProportions.height, left: 0 }).top - inst.margins.top; - if(ls) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: l }).left - inst.margins.left; - if(rs) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: r - inst.helperProportions.width }).left - inst.margins.left; - } - - if(!inst.snapElements[i].snapping && (ts || bs || ls || rs || first)) - (inst.options.snap.snap && inst.options.snap.snap.call(inst.element, event, $.extend(inst._uiHash(), { snapItem: inst.snapElements[i].item }))); - inst.snapElements[i].snapping = (ts || bs || ls || rs || first); - - }; - - } -}); - -$.ui.plugin.add("draggable", "stack", { - start: function(event, ui) { - - var o = $(this).data("draggable").options; - - var group = $.makeArray($(o.stack.group)).sort(function(a,b) { - return (parseInt($(a).css("zIndex"),10) || o.stack.min) - (parseInt($(b).css("zIndex"),10) || o.stack.min); - }); - - $(group).each(function(i) { - this.style.zIndex = o.stack.min + i; - }); - - this[0].style.zIndex = o.stack.min + group.length; - - } -}); - -$.ui.plugin.add("draggable", "zIndex", { - start: function(event, ui) { - var t = $(ui.helper), o = $(this).data("draggable").options; - if(t.css("zIndex")) o._zIndex = t.css("zIndex"); - t.css('zIndex', o.zIndex); - }, - stop: function(event, ui) { - var o = $(this).data("draggable").options; - if(o._zIndex) $(ui.helper).css('zIndex', o._zIndex); - } -}); - -})(jQuery); diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/js/ui.droppable.js b/examples/lessons/6_Maths_AddingAndMultiplyingVariable/js/ui.droppable.js deleted file mode 100755 index 8e7be33..0000000 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/js/ui.droppable.js +++ /dev/null @@ -1,282 +0,0 @@ -/* - * jQuery UI Droppable 1.7.2 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Droppables - * - * Depends: - * ui.core.js - * ui.draggable.js - */ -(function($) { - -$.widget("ui.droppable", { - - _init: function() { - - var o = this.options, accept = o.accept; - this.isover = 0; this.isout = 1; - - this.options.accept = this.options.accept && $.isFunction(this.options.accept) ? this.options.accept : function(d) { - return d.is(accept); - }; - - //Store the droppable's proportions - this.proportions = { width: this.element[0].offsetWidth, height: this.element[0].offsetHeight }; - - // Add the reference and positions to the manager - $.ui.ddmanager.droppables[this.options.scope] = $.ui.ddmanager.droppables[this.options.scope] || []; - $.ui.ddmanager.droppables[this.options.scope].push(this); - - (this.options.addClasses && this.element.addClass("ui-droppable")); - - }, - - destroy: function() { - var drop = $.ui.ddmanager.droppables[this.options.scope]; - for ( var i = 0; i < drop.length; i++ ) - if ( drop[i] == this ) - drop.splice(i, 1); - - this.element - .removeClass("ui-droppable ui-droppable-disabled") - .removeData("droppable") - .unbind(".droppable"); - }, - - _setData: function(key, value) { - - if(key == 'accept') { - this.options.accept = value && $.isFunction(value) ? value : function(d) { - return d.is(value); - }; - } else { - $.widget.prototype._setData.apply(this, arguments); - } - - }, - - _activate: function(event) { - var draggable = $.ui.ddmanager.current; - if(this.options.activeClass) this.element.addClass(this.options.activeClass); - (draggable && this._trigger('activate', event, this.ui(draggable))); - }, - - _deactivate: function(event) { - var draggable = $.ui.ddmanager.current; - if(this.options.activeClass) this.element.removeClass(this.options.activeClass); - (draggable && this._trigger('deactivate', event, this.ui(draggable))); - }, - - _over: function(event) { - - var draggable = $.ui.ddmanager.current; - if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return; // Bail if draggable and droppable are same element - - if (this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - if(this.options.hoverClass) this.element.addClass(this.options.hoverClass); - this._trigger('over', event, this.ui(draggable)); - } - - }, - - _out: function(event) { - - var draggable = $.ui.ddmanager.current; - if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return; // Bail if draggable and droppable are same element - - if (this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - if(this.options.hoverClass) this.element.removeClass(this.options.hoverClass); - this._trigger('out', event, this.ui(draggable)); - } - - }, - - _drop: function(event,custom) { - - var draggable = custom || $.ui.ddmanager.current; - if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return false; // Bail if draggable and droppable are same element - - var childrenIntersection = false; - this.element.find(":data(droppable)").not(".ui-draggable-dragging").each(function() { - var inst = $.data(this, 'droppable'); - if(inst.options.greedy && $.ui.intersect(draggable, $.extend(inst, { offset: inst.element.offset() }), inst.options.tolerance)) { - childrenIntersection = true; return false; - } - }); - if(childrenIntersection) return false; - - if(this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - if(this.options.activeClass) this.element.removeClass(this.options.activeClass); - if(this.options.hoverClass) this.element.removeClass(this.options.hoverClass); - this._trigger('drop', event, this.ui(draggable)); - return this.element; - } - - return false; - - }, - - ui: function(c) { - return { - draggable: (c.currentItem || c.element), - helper: c.helper, - position: c.position, - absolutePosition: c.positionAbs, //deprecated - offset: c.positionAbs - }; - } - -}); - -$.extend($.ui.droppable, { - version: "1.7.2", - eventPrefix: 'drop', - defaults: { - accept: '*', - activeClass: false, - addClasses: true, - greedy: false, - hoverClass: false, - scope: 'default', - tolerance: 'intersect' - } -}); - -$.ui.intersect = function(draggable, droppable, toleranceMode) { - - if (!droppable.offset) return false; - - var x1 = (draggable.positionAbs || draggable.position.absolute).left, x2 = x1 + draggable.helperProportions.width, - y1 = (draggable.positionAbs || draggable.position.absolute).top, y2 = y1 + draggable.helperProportions.height; - var l = droppable.offset.left, r = l + droppable.proportions.width, - t = droppable.offset.top, b = t + droppable.proportions.height; - - switch (toleranceMode) { - case 'fit': - return (l < x1 && x2 < r - && t < y1 && y2 < b); - break; - case 'intersect': - return (l < x1 + (draggable.helperProportions.width / 2) // Right Half - && x2 - (draggable.helperProportions.width / 2) < r // Left Half - && t < y1 + (draggable.helperProportions.height / 2) // Bottom Half - && y2 - (draggable.helperProportions.height / 2) < b ); // Top Half - break; - case 'pointer': - var draggableLeft = ((draggable.positionAbs || draggable.position.absolute).left + (draggable.clickOffset || draggable.offset.click).left), - draggableTop = ((draggable.positionAbs || draggable.position.absolute).top + (draggable.clickOffset || draggable.offset.click).top), - isOver = $.ui.isOver(draggableTop, draggableLeft, t, l, droppable.proportions.height, droppable.proportions.width); - return isOver; - break; - case 'touch': - return ( - (y1 >= t && y1 <= b) || // Top edge touching - (y2 >= t && y2 <= b) || // Bottom edge touching - (y1 < t && y2 > b) // Surrounded vertically - ) && ( - (x1 >= l && x1 <= r) || // Left edge touching - (x2 >= l && x2 <= r) || // Right edge touching - (x1 < l && x2 > r) // Surrounded horizontally - ); - break; - default: - return false; - break; - } - -}; - -/* - This manager tracks offsets of draggables and droppables -*/ -$.ui.ddmanager = { - current: null, - droppables: { 'default': [] }, - prepareOffsets: function(t, event) { - - var m = $.ui.ddmanager.droppables[t.options.scope]; - var type = event ? event.type : null; // workaround for #2317 - var list = (t.currentItem || t.element).find(":data(droppable)").andSelf(); - - droppablesLoop: for (var i = 0; i < m.length; i++) { - - if(m[i].options.disabled || (t && !m[i].options.accept.call(m[i].element[0],(t.currentItem || t.element)))) continue; //No disabled and non-accepted - for (var j=0; j < list.length; j++) { if(list[j] == m[i].element[0]) { m[i].proportions.height = 0; continue droppablesLoop; } }; //Filter out elements in the current dragged item - m[i].visible = m[i].element.css("display") != "none"; if(!m[i].visible) continue; //If the element is not visible, continue - - m[i].offset = m[i].element.offset(); - m[i].proportions = { width: m[i].element[0].offsetWidth, height: m[i].element[0].offsetHeight }; - - if(type == "mousedown") m[i]._activate.call(m[i], event); //Activate the droppable if used directly from draggables - - } - - }, - drop: function(draggable, event) { - - var dropped = false; - $.each($.ui.ddmanager.droppables[draggable.options.scope], function() { - - if(!this.options) return; - if (!this.options.disabled && this.visible && $.ui.intersect(draggable, this, this.options.tolerance)) - dropped = this._drop.call(this, event); - - if (!this.options.disabled && this.visible && this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - this.isout = 1; this.isover = 0; - this._deactivate.call(this, event); - } - - }); - return dropped; - - }, - drag: function(draggable, event) { - - //If you have a highly dynamic page, you might try this option. It renders positions every time you move the mouse. - if(draggable.options.refreshPositions) $.ui.ddmanager.prepareOffsets(draggable, event); - - //Run through all droppables and check their positions based on specific tolerance options - - $.each($.ui.ddmanager.droppables[draggable.options.scope], function() { - - if(this.options.disabled || this.greedyChild || !this.visible) return; - var intersects = $.ui.intersect(draggable, this, this.options.tolerance); - - var c = !intersects && this.isover == 1 ? 'isout' : (intersects && this.isover == 0 ? 'isover' : null); - if(!c) return; - - var parentInstance; - if (this.options.greedy) { - var parent = this.element.parents(':data(droppable):eq(0)'); - if (parent.length) { - parentInstance = $.data(parent[0], 'droppable'); - parentInstance.greedyChild = (c == 'isover' ? 1 : 0); - } - } - - // we just moved into a greedy child - if (parentInstance && c == 'isover') { - parentInstance['isover'] = 0; - parentInstance['isout'] = 1; - parentInstance._out.call(parentInstance, event); - } - - this[c] = 1; this[c == 'isout' ? 'isover' : 'isout'] = 0; - this[c == "isover" ? "_over" : "_out"].call(this, event); - - // we just moved out of a greedy child - if (parentInstance && c == 'isout') { - parentInstance['isout'] = 0; - parentInstance['isover'] = 1; - parentInstance._over.call(parentInstance, event); - } - }); - - } -}; - -})(jQuery); diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/bgLeft.png b/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/bgLeft.png Binary files differdeleted file mode 100755 index 18fc2e1..0000000 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/bgLeft.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/bg_footer.png b/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/bg_footer.png Binary files differdeleted file mode 100755 index 4bd44fa..0000000 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/bg_footer.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/bg_header.png b/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/bg_header.png Binary files differdeleted file mode 100755 index f421817..0000000 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/bg_header.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/bg_title_block.png b/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/bg_title_block.png Binary files differdeleted file mode 100755 index 7311891..0000000 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/bg_title_block.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/gameOver.png b/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/gameOver.png Binary files differdeleted file mode 100755 index 81c403b..0000000 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/gameOver.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/help.png b/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/help.png Binary files differdeleted file mode 100755 index f3505e7..0000000 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/help.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/img0.png b/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/img0.png Binary files differdeleted file mode 100755 index ed86909..0000000 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/img0.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/img1.png b/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/img1.png Binary files differdeleted file mode 100755 index b87cab4..0000000 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/img1.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/img2.png b/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/img2.png Binary files differdeleted file mode 100755 index 15de5ef..0000000 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/img2.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/img3.png b/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/img3.png Binary files differdeleted file mode 100755 index 915e20a..0000000 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/img3.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/img4.png b/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/img4.png Binary files differdeleted file mode 100755 index d172dac..0000000 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/img4.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/img5.png b/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/img5.png Binary files differdeleted file mode 100755 index 011aea5..0000000 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/img5.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/ques0.png b/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/ques0.png Binary files differdeleted file mode 100755 index c35776e..0000000 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/ques0.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/ques1.png b/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/ques1.png Binary files differdeleted file mode 100755 index cec454c..0000000 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/ques1.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/ques2.png b/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/ques2.png Binary files differdeleted file mode 100755 index eba02bd..0000000 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/ques2.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/ques3.png b/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/ques3.png Binary files differdeleted file mode 100755 index 6008fa0..0000000 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/ques3.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/ques4.png b/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/ques4.png Binary files differdeleted file mode 100755 index 8b5397f..0000000 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/ques4.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/ques5.png b/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/ques5.png Binary files differdeleted file mode 100755 index ee8d142..0000000 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/ques5.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/title_block_lt.png b/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/title_block_lt.png Binary files differdeleted file mode 100755 index b1c0e90..0000000 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/title_block_lt.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/title_block_rt.png b/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/title_block_rt.png Binary files differdeleted file mode 100755 index 275daaf..0000000 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/title_block_rt.png +++ /dev/null diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/css/lesson.css b/examples/lessons/6_Maths_AddingAndSubtractingVariables/css/lesson.css deleted file mode 100755 index 283bf25..0000000 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/css/lesson.css +++ /dev/null @@ -1,273 +0,0 @@ -@CHARSET "UTF-8";
-/****** Page Styles ****/
-
-body {
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 10pt;
- margin: 0px;
- background-color: #FFFFCC;
-}
-#header {
- background-image: url(../assets/image/bg_header.png);
- background-repeat: repeat-x;
- height: 89px;
- width: 100%;
- position: absolute;
- left: 0px;
- top: 0px;
-}
-#topbtn_left {
- float: left;
- height: 60px;
- width: 60px;
- padding-top: 13px;
- padding-left: 5px;
-}
-
-
- #linkBack{
- width: 60px; height: 59px;
- background:url(../assets/image/btn_back.png);
- }
- #linkBack:hover{
- background:url(../assets/image/btn_back_hover.png);
- }
-
-#lesson_title {
- float: left;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 16pt;
- font-weight: bold;
- color: #FFFFFF;
- margin-left: 10px;
- background-image: url(../assets/image/bg_title_block.png);
-}
-#topbtn_right {
- float: right;
- height: 60px;
- width: 60px;
- padding-top: 13px;
- padding-right: 5px;
-}
- #linkHelp{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_help.png);
- }bgCalculation
- #linkHelp:hover{
- background:url(../assets/image/btn_help_hover.png);
- }
- #linkOle{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_ole.png);
- }
- #linkOle:hover{
- background:url(../assets/image/btn_ole_hover.png);
- }
- #linkNext{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_next.png);
- }
- #linkNext:hover{
- background:url(../assets/image/btn_next_hover.png);
- }
-#footer {
- background-image: url(../assets/image/bg_footer.png);
- background-repeat: repeat-x;
- position: abbgCalculationsolute;
- height: 69px;
- width: 100%;
- left: 0px;
- bottom: 0px;
-}
-#score_box {
- float: left;
- padding-left: 5px;
- padding-top: 10px;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- color: #FFFF00;
- font-size: 16pt;
- font-weight: bold;
-}
-#botbtn_right {
- float: right;
- height: 55px;
- /*width: 25bgCalculation1px;*/
- padding-right: 5px;
- padding-top: 5px;
-}
- #linkCheck{
- margin: 1em 3em 0 0;
- width: 101px; height: 30px;
- background-image: url(../assets/image/check.png);
- }
-
- #linkStart{
- width: 251px; height: 55px;
- background:url(../assets/image/btn_start.png);
- }
- #linkStart:hover{
- background:url(../assets/image/btn_start_hover.png);
- }
- #linkStart:active{
- background:url(../assets/image/btn_start_mouse_down.png);
- }
- #linkPlayAgain{
- width: 251px; height: 55px;
- background:url(../assets/image/btn_play_again.png);
- }
- #linkPlayAgain:hover{
- background:url(../assets/image/btn_play_again_hover.png);
- }
- #linkPlayAgain:active{
- background:url(../assets/image/btn_play_again_mouse_down.png);
- }
-
-/**** End of the page style ****/
-
-/**** Game Styles ****/
-
-a{
- color:#FFFFCC;
-}
-#currentTitle{
- width: 150px;
- height: 80xp;
- font:25px/30px "Courier New", Courier, monospace;
- font-weight: bold;
- color: red;
-}
-#content{
- margin: 0 auto;
- margin-top: 85px;
- width: 95%;
- padding: 0.5em;
- height: 375px;
-}
- #section{
- width: 900px;
- height: 400px;
- margin: 0 auto;
- }
-
- #left-side{
- padding-top: 80px;
- margin: 0em auto;
- float:left;
- width: 360px;
- height: 285px;
- border: 2px solid black;
- text-align:center;
- background: url(../assets/image/bgLeft.png);
- -moz-border-radius : 20px;
- -webkit-border-radius : 20px;
- border-radius : 20px;
- }
-
- #right-side{
- float:right;
- width: 383px;
- height: 365px;
- border: 2px solid black;
- -moz-border-radius : 20px;
- -webkit-border-radius : 20px;
- border-radius : 20px;
- background-color: #7FFFC9;
-
- }
-
- #rightBack{
- background-repeat: no-repeat;
- width: 383px;
- height: 365px;
- }
-
- .bgCalculation{
- position:absolute;
- top: 58%;
- right: 8%;
- padding-top: 5px;
- width: 360px;
- height: 90px;
- text-align:center;
-
- }
-
- #textQues1{
- float:right;
- width: 300px;
- height:30px;
- letter-spacing: 5px;
- font: 20px/25px Verdana, Geneva, Arial, Helvetica, sans-serif;
- padding-right: 20px;
-
- text-align:right;
- }
- #textQues2{
- float:right;
- width: 350px;
- height:30px;
- letter-spacing: 5px;
- text-align:right;
- font: 20px/25px Verdana, Geneva, Arial, Helvetica, sans-serif;
- padding-right: 15px;
- }
- #textQues3{
- margin-top: 5px;
- float:right;
- text-align:right;
- width: 300px;
- height: 30px;
- padding-right: 15px;
- }
- .blankBoxes{
- padding-left: 15px;
- width: 35px;
- height: 40px;
- border-bottom : 2px solid black;
- font: 20px/25px Verdana, Geneva, Arial, Helvetica, sans-serif;
- }
- .quesText{
- font: 20px/25px Verdana, Geneva, Arial, Helvetica, sans-serif;
- color: #000000;
- }
- input.textBox{
- size:3;
- font: 15px/20px Verdana, Geneva, Arial, Helvetica, sans-serif;
- font-weight: bold;
- height:20px;
- width: 30px;
- text-align:center;
- }
- .focus {
- background-color: #FFEEAA;
- }
- .correct{
- background-color: #C0F9F3;
- }
- .incorrect{
- background-color: #FFFF00;
- }
-
- #help{
- display:none;
- position:absolute;
- right: 20%;
- top: 1%;
- width: 224px;
- height: 525px;
- background:url(../assets/image/help.png);
- z-index:40;
- }
- .backOpaque{
- background-color: #A4A4A4;
- opacity: 0.2;
- }
- #gameOver{
- display:none;
- position:absolute;
- top: 40%;
- left: 25%;
- width: 432px;
- height: 68px;
- background: url('../assets/image/gameOver.png');
- }
\ No newline at end of file diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/index.html b/examples/lessons/6_Maths_AddingAndSubtractingVariables/index.html deleted file mode 100755 index 736b381..0000000 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/index.html +++ /dev/null @@ -1,46 +0,0 @@ -<!DOCTYPE html>
-<head>
- <title>Class 6 Maths Adding and Subtracting Variables</title>
- <meta name="keywords" content="karma,javascript,html5,sugar,sugarlabs,gsoc,ole,nepal" />
- <link type="text/css" rel="stylesheet" href="css/lesson.css" />
- <link type="text/css" rel="stylesheet" href="css/ui.scoreboard.css" />
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <link type="image/ico" rel="icon" href="../../assets/default/image/favicon.ico" />
- <script type="text/javascript" src="js/jquery-1.3.2.min.js"></script>
- <script type="text/javascript" src="js/ui.core.js"></script>
- <script type="text/javascript" src="js/ui.draggable.js"></script>
- <script type="text/javascript" src="js/ui.droppable.js"></script>
- <script type="text/javascript" src="js/karma.js"></script>
- <script type="text/javascript" src="js/ui.scoreboard.js"></script>
- <script type="text/javascript" src="js/lesson.js"></script>
-</head>
-<body>
- <div id="header">
- <div id="topbtn_left"><a href="http://olenepal.org"><div id="linkOle"></div></a></div>
- <div id="lesson_title">
- <img src="assets/image/title_block_lt.png" width="33" height="89" align="absmiddle" />
- Adding and Subtracting Variables||<span id="currentTitle">सजातीय पद हरुको जोड र घटाउ</span>
- <img src="assets/image/title_block_rt.png" width="33" height="89" align="absmiddle" />
- </div>
- <div id="topbtn_right"><a href="#"><div id="linkHelp"></div></a></div>
- <div id="topbtn_right"><a href="http://olenepal.org"><div id="linkOle"></div></a></div>
- </div>
-
- <div id="content">
- <div id="section"></div>
- <div id="displayImgArea"></div>
- <div id="gameOver"></div>
- <div id="help"></div>
- </div>
- <form name="delayForm">
- <input type="hidden" name="delayval" size="5">
- </form>
-
- <div id="footer">
- <div id="score_box"></div>
- <div id="botbtn_right"><a href="#"><div id="linkStart"></div></a></div>
- <div id="botbtn_right"><a href="#"><div id="linkPlayAgain"></div></a></div>
- <div id="botbtn_right"><a href="#"><div id="linkCheck"></div></a></div>
- </div>
-</body>
-</html>
diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/js/jquery-1.3.2.min.js b/examples/lessons/6_Maths_AddingAndSubtractingVariables/js/jquery-1.3.2.min.js deleted file mode 100755 index b1ae21d..0000000 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/js/jquery-1.3.2.min.js +++ /dev/null @@ -1,19 +0,0 @@ -/* - * jQuery JavaScript Library v1.3.2 - * http://jquery.com/ - * - * Copyright (c) 2009 John Resig - * Dual licensed under the MIT and GPL licenses. - * http://docs.jquery.com/License - * - * Date: 2009-02-19 17:34:21 -0500 (Thu, 19 Feb 2009) - * Revision: 6246 - */ -(function(){var l=this,g,y=l.jQuery,p=l.$,o=l.jQuery=l.$=function(E,F){return new o.fn.init(E,F)},D=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,f=/^.[^:#\[\.,]*$/;o.fn=o.prototype={init:function(E,H){E=E||document;if(E.nodeType){this[0]=E;this.length=1;this.context=E;return this}if(typeof E==="string"){var G=D.exec(E);if(G&&(G[1]||!H)){if(G[1]){E=o.clean([G[1]],H)}else{var I=document.getElementById(G[3]);if(I&&I.id!=G[3]){return o().find(E)}var F=o(I||[]);F.context=document;F.selector=E;return F}}else{return o(H).find(E)}}else{if(o.isFunction(E)){return o(document).ready(E)}}if(E.selector&&E.context){this.selector=E.selector;this.context=E.context}return this.setArray(o.isArray(E)?E:o.makeArray(E))},selector:"",jquery:"1.3.2",size:function(){return this.length},get:function(E){return E===g?Array.prototype.slice.call(this):this[E]},pushStack:function(F,H,E){var G=o(F);G.prevObject=this;G.context=this.context;if(H==="find"){G.selector=this.selector+(this.selector?" ":"")+E}else{if(H){G.selector=this.selector+"."+H+"("+E+")"}}return G},setArray:function(E){this.length=0;Array.prototype.push.apply(this,E);return this},each:function(F,E){return o.each(this,F,E)},index:function(E){return o.inArray(E&&E.jquery?E[0]:E,this)},attr:function(F,H,G){var E=F;if(typeof F==="string"){if(H===g){return this[0]&&o[G||"attr"](this[0],F)}else{E={};E[F]=H}}return this.each(function(I){for(F in E){o.attr(G?this.style:this,F,o.prop(this,E[F],G,I,F))}})},css:function(E,F){if((E=="width"||E=="height")&&parseFloat(F)<0){F=g}return this.attr(E,F,"curCSS")},text:function(F){if(typeof F!=="object"&&F!=null){return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(F))}var E="";o.each(F||this,function(){o.each(this.childNodes,function(){if(this.nodeType!=8){E+=this.nodeType!=1?this.nodeValue:o.fn.text([this])}})});return E},wrapAll:function(E){if(this[0]){var F=o(E,this[0].ownerDocument).clone();if(this[0].parentNode){F.insertBefore(this[0])}F.map(function(){var G=this;while(G.firstChild){G=G.firstChild}return G}).append(this)}return this},wrapInner:function(E){return this.each(function(){o(this).contents().wrapAll(E)})},wrap:function(E){return this.each(function(){o(this).wrapAll(E)})},append:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.appendChild(E)}})},prepend:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.insertBefore(E,this.firstChild)}})},before:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this)})},after:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this.nextSibling)})},end:function(){return this.prevObject||o([])},push:[].push,sort:[].sort,splice:[].splice,find:function(E){if(this.length===1){var F=this.pushStack([],"find",E);F.length=0;o.find(E,this[0],F);return F}else{return this.pushStack(o.unique(o.map(this,function(G){return o.find(E,G)})),"find",E)}},clone:function(G){var E=this.map(function(){if(!o.support.noCloneEvent&&!o.isXMLDoc(this)){var I=this.outerHTML;if(!I){var J=this.ownerDocument.createElement("div");J.appendChild(this.cloneNode(true));I=J.innerHTML}return o.clean([I.replace(/ jQuery\d+="(?:\d+|null)"/g,"").replace(/^\s*/,"")])[0]}else{return this.cloneNode(true)}});if(G===true){var H=this.find("*").andSelf(),F=0;E.find("*").andSelf().each(function(){if(this.nodeName!==H[F].nodeName){return}var I=o.data(H[F],"events");for(var K in I){for(var J in I[K]){o.event.add(this,K,I[K][J],I[K][J].data)}}F++})}return E},filter:function(E){return this.pushStack(o.isFunction(E)&&o.grep(this,function(G,F){return E.call(G,F)})||o.multiFilter(E,o.grep(this,function(F){return F.nodeType===1})),"filter",E)},closest:function(E){var G=o.expr.match.POS.test(E)?o(E):null,F=0;return this.map(function(){var H=this;while(H&&H.ownerDocument){if(G?G.index(H)>-1:o(H).is(E)){o.data(H,"closest",F);return H}H=H.parentNode;F++}})},not:function(E){if(typeof E==="string"){if(f.test(E)){return this.pushStack(o.multiFilter(E,this,true),"not",E)}else{E=o.multiFilter(E,this)}}var F=E.length&&E[E.length-1]!==g&&!E.nodeType;return this.filter(function(){return F?o.inArray(this,E)<0:this!=E})},add:function(E){return this.pushStack(o.unique(o.merge(this.get(),typeof E==="string"?o(E):o.makeArray(E))))},is:function(E){return !!E&&o.multiFilter(E,this).length>0},hasClass:function(E){return !!E&&this.is("."+E)},val:function(K){if(K===g){var E=this[0];if(E){if(o.nodeName(E,"option")){return(E.attributes.value||{}).specified?E.value:E.text}if(o.nodeName(E,"select")){var I=E.selectedIndex,L=[],M=E.options,H=E.type=="select-one";if(I<0){return null}for(var F=H?I:0,J=H?I+1:M.length;F<J;F++){var G=M[F];if(G.selected){K=o(G).val();if(H){return K}L.push(K)}}return L}return(E.value||"").replace(/\r/g,"")}return g}if(typeof K==="number"){K+=""}return this.each(function(){if(this.nodeType!=1){return}if(o.isArray(K)&&/radio|checkbox/.test(this.type)){this.checked=(o.inArray(this.value,K)>=0||o.inArray(this.name,K)>=0)}else{if(o.nodeName(this,"select")){var N=o.makeArray(K);o("option",this).each(function(){this.selected=(o.inArray(this.value,N)>=0||o.inArray(this.text,N)>=0)});if(!N.length){this.selectedIndex=-1}}else{this.value=K}}})},html:function(E){return E===g?(this[0]?this[0].innerHTML.replace(/ jQuery\d+="(?:\d+|null)"/g,""):null):this.empty().append(E)},replaceWith:function(E){return this.after(E).remove()},eq:function(E){return this.slice(E,+E+1)},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","))},map:function(E){return this.pushStack(o.map(this,function(G,F){return E.call(G,F,G)}))},andSelf:function(){return this.add(this.prevObject)},domManip:function(J,M,L){if(this[0]){var I=(this[0].ownerDocument||this[0]).createDocumentFragment(),F=o.clean(J,(this[0].ownerDocument||this[0]),I),H=I.firstChild;if(H){for(var G=0,E=this.length;G<E;G++){L.call(K(this[G],H),this.length>1||G>0?I.cloneNode(true):I)}}if(F){o.each(F,z)}}return this;function K(N,O){return M&&o.nodeName(N,"table")&&o.nodeName(O,"tr")?(N.getElementsByTagName("tbody")[0]||N.appendChild(N.ownerDocument.createElement("tbody"))):N}}};o.fn.init.prototype=o.fn;function z(E,F){if(F.src){o.ajax({url:F.src,async:false,dataType:"script"})}else{o.globalEval(F.text||F.textContent||F.innerHTML||"")}if(F.parentNode){F.parentNode.removeChild(F)}}function e(){return +new Date}o.extend=o.fn.extend=function(){var J=arguments[0]||{},H=1,I=arguments.length,E=false,G;if(typeof J==="boolean"){E=J;J=arguments[1]||{};H=2}if(typeof J!=="object"&&!o.isFunction(J)){J={}}if(I==H){J=this;--H}for(;H<I;H++){if((G=arguments[H])!=null){for(var F in G){var K=J[F],L=G[F];if(J===L){continue}if(E&&L&&typeof L==="object"&&!L.nodeType){J[F]=o.extend(E,K||(L.length!=null?[]:{}),L)}else{if(L!==g){J[F]=L}}}}}return J};var b=/z-?index|font-?weight|opacity|zoom|line-?height/i,q=document.defaultView||{},s=Object.prototype.toString;o.extend({noConflict:function(E){l.$=p;if(E){l.jQuery=y}return o},isFunction:function(E){return s.call(E)==="[object Function]"},isArray:function(E){return s.call(E)==="[object Array]"},isXMLDoc:function(E){return E.nodeType===9&&E.documentElement.nodeName!=="HTML"||!!E.ownerDocument&&o.isXMLDoc(E.ownerDocument)},globalEval:function(G){if(G&&/\S/.test(G)){var F=document.getElementsByTagName("head")[0]||document.documentElement,E=document.createElement("script");E.type="text/javascript";if(o.support.scriptEval){E.appendChild(document.createTextNode(G))}else{E.text=G}F.insertBefore(E,F.firstChild);F.removeChild(E)}},nodeName:function(F,E){return F.nodeName&&F.nodeName.toUpperCase()==E.toUpperCase()},each:function(G,K,F){var E,H=0,I=G.length;if(F){if(I===g){for(E in G){if(K.apply(G[E],F)===false){break}}}else{for(;H<I;){if(K.apply(G[H++],F)===false){break}}}}else{if(I===g){for(E in G){if(K.call(G[E],E,G[E])===false){break}}}else{for(var J=G[0];H<I&&K.call(J,H,J)!==false;J=G[++H]){}}}return G},prop:function(H,I,G,F,E){if(o.isFunction(I)){I=I.call(H,F)}return typeof I==="number"&&G=="curCSS"&&!b.test(E)?I+"px":I},className:{add:function(E,F){o.each((F||"").split(/\s+/),function(G,H){if(E.nodeType==1&&!o.className.has(E.className,H)){E.className+=(E.className?" ":"")+H}})},remove:function(E,F){if(E.nodeType==1){E.className=F!==g?o.grep(E.className.split(/\s+/),function(G){return !o.className.has(F,G)}).join(" "):""}},has:function(F,E){return F&&o.inArray(E,(F.className||F).toString().split(/\s+/))>-1}},swap:function(H,G,I){var E={};for(var F in G){E[F]=H.style[F];H.style[F]=G[F]}I.call(H);for(var F in G){H.style[F]=E[F]}},css:function(H,F,J,E){if(F=="width"||F=="height"){var L,G={position:"absolute",visibility:"hidden",display:"block"},K=F=="width"?["Left","Right"]:["Top","Bottom"];function I(){L=F=="width"?H.offsetWidth:H.offsetHeight;if(E==="border"){return}o.each(K,function(){if(!E){L-=parseFloat(o.curCSS(H,"padding"+this,true))||0}if(E==="margin"){L+=parseFloat(o.curCSS(H,"margin"+this,true))||0}else{L-=parseFloat(o.curCSS(H,"border"+this+"Width",true))||0}})}if(H.offsetWidth!==0){I()}else{o.swap(H,G,I)}return Math.max(0,Math.round(L))}return o.curCSS(H,F,J)},curCSS:function(I,F,G){var L,E=I.style;if(F=="opacity"&&!o.support.opacity){L=o.attr(E,"opacity");return L==""?"1":L}if(F.match(/float/i)){F=w}if(!G&&E&&E[F]){L=E[F]}else{if(q.getComputedStyle){if(F.match(/float/i)){F="float"}F=F.replace(/([A-Z])/g,"-$1").toLowerCase();var M=q.getComputedStyle(I,null);if(M){L=M.getPropertyValue(F)}if(F=="opacity"&&L==""){L="1"}}else{if(I.currentStyle){var J=F.replace(/\-(\w)/g,function(N,O){return O.toUpperCase()});L=I.currentStyle[F]||I.currentStyle[J];if(!/^\d+(px)?$/i.test(L)&&/^\d/.test(L)){var H=E.left,K=I.runtimeStyle.left;I.runtimeStyle.left=I.currentStyle.left;E.left=L||0;L=E.pixelLeft+"px";E.left=H;I.runtimeStyle.left=K}}}}return L},clean:function(F,K,I){K=K||document;if(typeof K.createElement==="undefined"){K=K.ownerDocument||K[0]&&K[0].ownerDocument||document}if(!I&&F.length===1&&typeof F[0]==="string"){var H=/^<(\w+)\s*\/?>$/.exec(F[0]);if(H){return[K.createElement(H[1])]}}var G=[],E=[],L=K.createElement("div");o.each(F,function(P,S){if(typeof S==="number"){S+=""}if(!S){return}if(typeof S==="string"){S=S.replace(/(<(\w+)[^>]*?)\/>/g,function(U,V,T){return T.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?U:V+"></"+T+">"});var O=S.replace(/^\s+/,"").substring(0,10).toLowerCase();var Q=!O.indexOf("<opt")&&[1,"<select multiple='multiple'>","</select>"]||!O.indexOf("<leg")&&[1,"<fieldset>","</fieldset>"]||O.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"<table>","</table>"]||!O.indexOf("<tr")&&[2,"<table><tbody>","</tbody></table>"]||(!O.indexOf("<td")||!O.indexOf("<th"))&&[3,"<table><tbody><tr>","</tr></tbody></table>"]||!O.indexOf("<col")&&[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"]||!o.support.htmlSerialize&&[1,"div<div>","</div>"]||[0,"",""];L.innerHTML=Q[1]+S+Q[2];while(Q[0]--){L=L.lastChild}if(!o.support.tbody){var R=/<tbody/i.test(S),N=!O.indexOf("<table")&&!R?L.firstChild&&L.firstChild.childNodes:Q[1]=="<table>"&&!R?L.childNodes:[];for(var M=N.length-1;M>=0;--M){if(o.nodeName(N[M],"tbody")&&!N[M].childNodes.length){N[M].parentNode.removeChild(N[M])}}}if(!o.support.leadingWhitespace&&/^\s/.test(S)){L.insertBefore(K.createTextNode(S.match(/^\s*/)[0]),L.firstChild)}S=o.makeArray(L.childNodes)}if(S.nodeType){G.push(S)}else{G=o.merge(G,S)}});if(I){for(var J=0;G[J];J++){if(o.nodeName(G[J],"script")&&(!G[J].type||G[J].type.toLowerCase()==="text/javascript")){E.push(G[J].parentNode?G[J].parentNode.removeChild(G[J]):G[J])}else{if(G[J].nodeType===1){G.splice.apply(G,[J+1,0].concat(o.makeArray(G[J].getElementsByTagName("script"))))}I.appendChild(G[J])}}return E}return G},attr:function(J,G,K){if(!J||J.nodeType==3||J.nodeType==8){return g}var H=!o.isXMLDoc(J),L=K!==g;G=H&&o.props[G]||G;if(J.tagName){var F=/href|src|style/.test(G);if(G=="selected"&&J.parentNode){J.parentNode.selectedIndex}if(G in J&&H&&!F){if(L){if(G=="type"&&o.nodeName(J,"input")&&J.parentNode){throw"type property can't be changed"}J[G]=K}if(o.nodeName(J,"form")&&J.getAttributeNode(G)){return J.getAttributeNode(G).nodeValue}if(G=="tabIndex"){var I=J.getAttributeNode("tabIndex");return I&&I.specified?I.value:J.nodeName.match(/(button|input|object|select|textarea)/i)?0:J.nodeName.match(/^(a|area)$/i)&&J.href?0:g}return J[G]}if(!o.support.style&&H&&G=="style"){return o.attr(J.style,"cssText",K)}if(L){J.setAttribute(G,""+K)}var E=!o.support.hrefNormalized&&H&&F?J.getAttribute(G,2):J.getAttribute(G);return E===null?g:E}if(!o.support.opacity&&G=="opacity"){if(L){J.zoom=1;J.filter=(J.filter||"").replace(/alpha\([^)]*\)/,"")+(parseInt(K)+""=="NaN"?"":"alpha(opacity="+K*100+")")}return J.filter&&J.filter.indexOf("opacity=")>=0?(parseFloat(J.filter.match(/opacity=([^)]*)/)[1])/100)+"":""}G=G.replace(/-([a-z])/ig,function(M,N){return N.toUpperCase()});if(L){J[G]=K}return J[G]},trim:function(E){return(E||"").replace(/^\s+|\s+$/g,"")},makeArray:function(G){var E=[];if(G!=null){var F=G.length;if(F==null||typeof G==="string"||o.isFunction(G)||G.setInterval){E[0]=G}else{while(F){E[--F]=G[F]}}}return E},inArray:function(G,H){for(var E=0,F=H.length;E<F;E++){if(H[E]===G){return E}}return -1},merge:function(H,E){var F=0,G,I=H.length;if(!o.support.getAll){while((G=E[F++])!=null){if(G.nodeType!=8){H[I++]=G}}}else{while((G=E[F++])!=null){H[I++]=G}}return H},unique:function(K){var F=[],E={};try{for(var G=0,H=K.length;G<H;G++){var J=o.data(K[G]);if(!E[J]){E[J]=true;F.push(K[G])}}}catch(I){F=K}return F},grep:function(F,J,E){var G=[];for(var H=0,I=F.length;H<I;H++){if(!E!=!J(F[H],H)){G.push(F[H])}}return G},map:function(E,J){var F=[];for(var G=0,H=E.length;G<H;G++){var I=J(E[G],G);if(I!=null){F[F.length]=I}}return F.concat.apply([],F)}});var C=navigator.userAgent.toLowerCase();o.browser={version:(C.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)||[0,"0"])[1],safari:/webkit/.test(C),opera:/opera/.test(C),msie:/msie/.test(C)&&!/opera/.test(C),mozilla:/mozilla/.test(C)&&!/(compatible|webkit)/.test(C)};o.each({parent:function(E){return E.parentNode},parents:function(E){return o.dir(E,"parentNode")},next:function(E){return o.nth(E,2,"nextSibling")},prev:function(E){return o.nth(E,2,"previousSibling")},nextAll:function(E){return o.dir(E,"nextSibling")},prevAll:function(E){return o.dir(E,"previousSibling")},siblings:function(E){return o.sibling(E.parentNode.firstChild,E)},children:function(E){return o.sibling(E.firstChild)},contents:function(E){return o.nodeName(E,"iframe")?E.contentDocument||E.contentWindow.document:o.makeArray(E.childNodes)}},function(E,F){o.fn[E]=function(G){var H=o.map(this,F);if(G&&typeof G=="string"){H=o.multiFilter(G,H)}return this.pushStack(o.unique(H),E,G)}});o.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(E,F){o.fn[E]=function(G){var J=[],L=o(G);for(var K=0,H=L.length;K<H;K++){var I=(K>0?this.clone(true):this).get();o.fn[F].apply(o(L[K]),I);J=J.concat(I)}return this.pushStack(J,E,G)}});o.each({removeAttr:function(E){o.attr(this,E,"");if(this.nodeType==1){this.removeAttribute(E)}},addClass:function(E){o.className.add(this,E)},removeClass:function(E){o.className.remove(this,E)},toggleClass:function(F,E){if(typeof E!=="boolean"){E=!o.className.has(this,F)}o.className[E?"add":"remove"](this,F)},remove:function(E){if(!E||o.filter(E,[this]).length){o("*",this).add([this]).each(function(){o.event.remove(this);o.removeData(this)});if(this.parentNode){this.parentNode.removeChild(this)}}},empty:function(){o(this).children().remove();while(this.firstChild){this.removeChild(this.firstChild)}}},function(E,F){o.fn[E]=function(){return this.each(F,arguments)}});function j(E,F){return E[0]&&parseInt(o.curCSS(E[0],F,true),10)||0}var h="jQuery"+e(),v=0,A={};o.extend({cache:{},data:function(F,E,G){F=F==l?A:F;var H=F[h];if(!H){H=F[h]=++v}if(E&&!o.cache[H]){o.cache[H]={}}if(G!==g){o.cache[H][E]=G}return E?o.cache[H][E]:H},removeData:function(F,E){F=F==l?A:F;var H=F[h];if(E){if(o.cache[H]){delete o.cache[H][E];E="";for(E in o.cache[H]){break}if(!E){o.removeData(F)}}}else{try{delete F[h]}catch(G){if(F.removeAttribute){F.removeAttribute(h)}}delete o.cache[H]}},queue:function(F,E,H){if(F){E=(E||"fx")+"queue";var G=o.data(F,E);if(!G||o.isArray(H)){G=o.data(F,E,o.makeArray(H))}else{if(H){G.push(H)}}}return G},dequeue:function(H,G){var E=o.queue(H,G),F=E.shift();if(!G||G==="fx"){F=E[0]}if(F!==g){F.call(H)}}});o.fn.extend({data:function(E,G){var H=E.split(".");H[1]=H[1]?"."+H[1]:"";if(G===g){var F=this.triggerHandler("getData"+H[1]+"!",[H[0]]);if(F===g&&this.length){F=o.data(this[0],E)}return F===g&&H[1]?this.data(H[0]):F}else{return this.trigger("setData"+H[1]+"!",[H[0],G]).each(function(){o.data(this,E,G)})}},removeData:function(E){return this.each(function(){o.removeData(this,E)})},queue:function(E,F){if(typeof E!=="string"){F=E;E="fx"}if(F===g){return o.queue(this[0],E)}return this.each(function(){var G=o.queue(this,E,F);if(E=="fx"&&G.length==1){G[0].call(this)}})},dequeue:function(E){return this.each(function(){o.dequeue(this,E)})}}); -/* - * Sizzle CSS Selector Engine - v0.9.3 - * Copyright 2009, The Dojo Foundation - * Released under the MIT, BSD, and GPL Licenses. - * More information: http://sizzlejs.com/ - */ -(function(){var R=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?/g,L=0,H=Object.prototype.toString;var F=function(Y,U,ab,ac){ab=ab||[];U=U||document;if(U.nodeType!==1&&U.nodeType!==9){return[]}if(!Y||typeof Y!=="string"){return ab}var Z=[],W,af,ai,T,ad,V,X=true;R.lastIndex=0;while((W=R.exec(Y))!==null){Z.push(W[1]);if(W[2]){V=RegExp.rightContext;break}}if(Z.length>1&&M.exec(Y)){if(Z.length===2&&I.relative[Z[0]]){af=J(Z[0]+Z[1],U)}else{af=I.relative[Z[0]]?[U]:F(Z.shift(),U);while(Z.length){Y=Z.shift();if(I.relative[Y]){Y+=Z.shift()}af=J(Y,af)}}}else{var ae=ac?{expr:Z.pop(),set:E(ac)}:F.find(Z.pop(),Z.length===1&&U.parentNode?U.parentNode:U,Q(U));af=F.filter(ae.expr,ae.set);if(Z.length>0){ai=E(af)}else{X=false}while(Z.length){var ah=Z.pop(),ag=ah;if(!I.relative[ah]){ah=""}else{ag=Z.pop()}if(ag==null){ag=U}I.relative[ah](ai,ag,Q(U))}}if(!ai){ai=af}if(!ai){throw"Syntax error, unrecognized expression: "+(ah||Y)}if(H.call(ai)==="[object Array]"){if(!X){ab.push.apply(ab,ai)}else{if(U.nodeType===1){for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&(ai[aa]===true||ai[aa].nodeType===1&&K(U,ai[aa]))){ab.push(af[aa])}}}else{for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&ai[aa].nodeType===1){ab.push(af[aa])}}}}}else{E(ai,ab)}if(V){F(V,U,ab,ac);if(G){hasDuplicate=false;ab.sort(G);if(hasDuplicate){for(var aa=1;aa<ab.length;aa++){if(ab[aa]===ab[aa-1]){ab.splice(aa--,1)}}}}}return ab};F.matches=function(T,U){return F(T,null,null,U)};F.find=function(aa,T,ab){var Z,X;if(!aa){return[]}for(var W=0,V=I.order.length;W<V;W++){var Y=I.order[W],X;if((X=I.match[Y].exec(aa))){var U=RegExp.leftContext;if(U.substr(U.length-1)!=="\\"){X[1]=(X[1]||"").replace(/\\/g,"");Z=I.find[Y](X,T,ab);if(Z!=null){aa=aa.replace(I.match[Y],"");break}}}}if(!Z){Z=T.getElementsByTagName("*")}return{set:Z,expr:aa}};F.filter=function(ad,ac,ag,W){var V=ad,ai=[],aa=ac,Y,T,Z=ac&&ac[0]&&Q(ac[0]);while(ad&&ac.length){for(var ab in I.filter){if((Y=I.match[ab].exec(ad))!=null){var U=I.filter[ab],ah,af;T=false;if(aa==ai){ai=[]}if(I.preFilter[ab]){Y=I.preFilter[ab](Y,aa,ag,ai,W,Z);if(!Y){T=ah=true}else{if(Y===true){continue}}}if(Y){for(var X=0;(af=aa[X])!=null;X++){if(af){ah=U(af,Y,X,aa);var ae=W^!!ah;if(ag&&ah!=null){if(ae){T=true}else{aa[X]=false}}else{if(ae){ai.push(af);T=true}}}}}if(ah!==g){if(!ag){aa=ai}ad=ad.replace(I.match[ab],"");if(!T){return[]}break}}}if(ad==V){if(T==null){throw"Syntax error, unrecognized expression: "+ad}else{break}}V=ad}return aa};var I=F.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF_-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF_-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*_-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+-]*)\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF_-]|\\.)+)(?:\((['"]*)((?:\([^\)]+\)|[^\2\(\)]*)+)\2\))?/},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(T){return T.getAttribute("href")}},relative:{"+":function(aa,T,Z){var X=typeof T==="string",ab=X&&!/\W/.test(T),Y=X&&!ab;if(ab&&!Z){T=T.toUpperCase()}for(var W=0,V=aa.length,U;W<V;W++){if((U=aa[W])){while((U=U.previousSibling)&&U.nodeType!==1){}aa[W]=Y||U&&U.nodeName===T?U||false:U===T}}if(Y){F.filter(T,aa,true)}},">":function(Z,U,aa){var X=typeof U==="string";if(X&&!/\W/.test(U)){U=aa?U:U.toUpperCase();for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){var W=Y.parentNode;Z[V]=W.nodeName===U?W:false}}}else{for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){Z[V]=X?Y.parentNode:Y.parentNode===U}}if(X){F.filter(U,Z,true)}}},"":function(W,U,Y){var V=L++,T=S;if(!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("parentNode",U,V,W,X,Y)},"~":function(W,U,Y){var V=L++,T=S;if(typeof U==="string"&&!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("previousSibling",U,V,W,X,Y)}},find:{ID:function(U,V,W){if(typeof V.getElementById!=="undefined"&&!W){var T=V.getElementById(U[1]);return T?[T]:[]}},NAME:function(V,Y,Z){if(typeof Y.getElementsByName!=="undefined"){var U=[],X=Y.getElementsByName(V[1]);for(var W=0,T=X.length;W<T;W++){if(X[W].getAttribute("name")===V[1]){U.push(X[W])}}return U.length===0?null:U}},TAG:function(T,U){return U.getElementsByTagName(T[1])}},preFilter:{CLASS:function(W,U,V,T,Z,aa){W=" "+W[1].replace(/\\/g,"")+" ";if(aa){return W}for(var X=0,Y;(Y=U[X])!=null;X++){if(Y){if(Z^(Y.className&&(" "+Y.className+" ").indexOf(W)>=0)){if(!V){T.push(Y)}}else{if(V){U[X]=false}}}}return false},ID:function(T){return T[1].replace(/\\/g,"")},TAG:function(U,T){for(var V=0;T[V]===false;V++){}return T[V]&&Q(T[V])?U[1]:U[1].toUpperCase()},CHILD:function(T){if(T[1]=="nth"){var U=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(T[2]=="even"&&"2n"||T[2]=="odd"&&"2n+1"||!/\D/.test(T[2])&&"0n+"+T[2]||T[2]);T[2]=(U[1]+(U[2]||1))-0;T[3]=U[3]-0}T[0]=L++;return T},ATTR:function(X,U,V,T,Y,Z){var W=X[1].replace(/\\/g,"");if(!Z&&I.attrMap[W]){X[1]=I.attrMap[W]}if(X[2]==="~="){X[4]=" "+X[4]+" "}return X},PSEUDO:function(X,U,V,T,Y){if(X[1]==="not"){if(X[3].match(R).length>1||/^\w/.test(X[3])){X[3]=F(X[3],null,null,U)}else{var W=F.filter(X[3],U,V,true^Y);if(!V){T.push.apply(T,W)}return false}}else{if(I.match.POS.test(X[0])||I.match.CHILD.test(X[0])){return true}}return X},POS:function(T){T.unshift(true);return T}},filters:{enabled:function(T){return T.disabled===false&&T.type!=="hidden"},disabled:function(T){return T.disabled===true},checked:function(T){return T.checked===true},selected:function(T){T.parentNode.selectedIndex;return T.selected===true},parent:function(T){return !!T.firstChild},empty:function(T){return !T.firstChild},has:function(V,U,T){return !!F(T[3],V).length},header:function(T){return/h\d/i.test(T.nodeName)},text:function(T){return"text"===T.type},radio:function(T){return"radio"===T.type},checkbox:function(T){return"checkbox"===T.type},file:function(T){return"file"===T.type},password:function(T){return"password"===T.type},submit:function(T){return"submit"===T.type},image:function(T){return"image"===T.type},reset:function(T){return"reset"===T.type},button:function(T){return"button"===T.type||T.nodeName.toUpperCase()==="BUTTON"},input:function(T){return/input|select|textarea|button/i.test(T.nodeName)}},setFilters:{first:function(U,T){return T===0},last:function(V,U,T,W){return U===W.length-1},even:function(U,T){return T%2===0},odd:function(U,T){return T%2===1},lt:function(V,U,T){return U<T[3]-0},gt:function(V,U,T){return U>T[3]-0},nth:function(V,U,T){return T[3]-0==U},eq:function(V,U,T){return T[3]-0==U}},filter:{PSEUDO:function(Z,V,W,aa){var U=V[1],X=I.filters[U];if(X){return X(Z,W,V,aa)}else{if(U==="contains"){return(Z.textContent||Z.innerText||"").indexOf(V[3])>=0}else{if(U==="not"){var Y=V[3];for(var W=0,T=Y.length;W<T;W++){if(Y[W]===Z){return false}}return true}}}},CHILD:function(T,W){var Z=W[1],U=T;switch(Z){case"only":case"first":while(U=U.previousSibling){if(U.nodeType===1){return false}}if(Z=="first"){return true}U=T;case"last":while(U=U.nextSibling){if(U.nodeType===1){return false}}return true;case"nth":var V=W[2],ac=W[3];if(V==1&&ac==0){return true}var Y=W[0],ab=T.parentNode;if(ab&&(ab.sizcache!==Y||!T.nodeIndex)){var X=0;for(U=ab.firstChild;U;U=U.nextSibling){if(U.nodeType===1){U.nodeIndex=++X}}ab.sizcache=Y}var aa=T.nodeIndex-ac;if(V==0){return aa==0}else{return(aa%V==0&&aa/V>=0)}}},ID:function(U,T){return U.nodeType===1&&U.getAttribute("id")===T},TAG:function(U,T){return(T==="*"&&U.nodeType===1)||U.nodeName===T},CLASS:function(U,T){return(" "+(U.className||U.getAttribute("class"))+" ").indexOf(T)>-1},ATTR:function(Y,W){var V=W[1],T=I.attrHandle[V]?I.attrHandle[V](Y):Y[V]!=null?Y[V]:Y.getAttribute(V),Z=T+"",X=W[2],U=W[4];return T==null?X==="!=":X==="="?Z===U:X==="*="?Z.indexOf(U)>=0:X==="~="?(" "+Z+" ").indexOf(U)>=0:!U?Z&&T!==false:X==="!="?Z!=U:X==="^="?Z.indexOf(U)===0:X==="$="?Z.substr(Z.length-U.length)===U:X==="|="?Z===U||Z.substr(0,U.length+1)===U+"-":false},POS:function(X,U,V,Y){var T=U[2],W=I.setFilters[T];if(W){return W(X,V,U,Y)}}}};var M=I.match.POS;for(var O in I.match){I.match[O]=RegExp(I.match[O].source+/(?![^\[]*\])(?![^\(]*\))/.source)}var E=function(U,T){U=Array.prototype.slice.call(U);if(T){T.push.apply(T,U);return T}return U};try{Array.prototype.slice.call(document.documentElement.childNodes)}catch(N){E=function(X,W){var U=W||[];if(H.call(X)==="[object Array]"){Array.prototype.push.apply(U,X)}else{if(typeof X.length==="number"){for(var V=0,T=X.length;V<T;V++){U.push(X[V])}}else{for(var V=0;X[V];V++){U.push(X[V])}}}return U}}var G;if(document.documentElement.compareDocumentPosition){G=function(U,T){var V=U.compareDocumentPosition(T)&4?-1:U===T?0:1;if(V===0){hasDuplicate=true}return V}}else{if("sourceIndex" in document.documentElement){G=function(U,T){var V=U.sourceIndex-T.sourceIndex;if(V===0){hasDuplicate=true}return V}}else{if(document.createRange){G=function(W,U){var V=W.ownerDocument.createRange(),T=U.ownerDocument.createRange();V.selectNode(W);V.collapse(true);T.selectNode(U);T.collapse(true);var X=V.compareBoundaryPoints(Range.START_TO_END,T);if(X===0){hasDuplicate=true}return X}}}}(function(){var U=document.createElement("form"),V="script"+(new Date).getTime();U.innerHTML="<input name='"+V+"'/>";var T=document.documentElement;T.insertBefore(U,T.firstChild);if(!!document.getElementById(V)){I.find.ID=function(X,Y,Z){if(typeof Y.getElementById!=="undefined"&&!Z){var W=Y.getElementById(X[1]);return W?W.id===X[1]||typeof W.getAttributeNode!=="undefined"&&W.getAttributeNode("id").nodeValue===X[1]?[W]:g:[]}};I.filter.ID=function(Y,W){var X=typeof Y.getAttributeNode!=="undefined"&&Y.getAttributeNode("id");return Y.nodeType===1&&X&&X.nodeValue===W}}T.removeChild(U)})();(function(){var T=document.createElement("div");T.appendChild(document.createComment(""));if(T.getElementsByTagName("*").length>0){I.find.TAG=function(U,Y){var X=Y.getElementsByTagName(U[1]);if(U[1]==="*"){var W=[];for(var V=0;X[V];V++){if(X[V].nodeType===1){W.push(X[V])}}X=W}return X}}T.innerHTML="<a href='#'></a>";if(T.firstChild&&typeof T.firstChild.getAttribute!=="undefined"&&T.firstChild.getAttribute("href")!=="#"){I.attrHandle.href=function(U){return U.getAttribute("href",2)}}})();if(document.querySelectorAll){(function(){var T=F,U=document.createElement("div");U.innerHTML="<p class='TEST'></p>";if(U.querySelectorAll&&U.querySelectorAll(".TEST").length===0){return}F=function(Y,X,V,W){X=X||document;if(!W&&X.nodeType===9&&!Q(X)){try{return E(X.querySelectorAll(Y),V)}catch(Z){}}return T(Y,X,V,W)};F.find=T.find;F.filter=T.filter;F.selectors=T.selectors;F.matches=T.matches})()}if(document.getElementsByClassName&&document.documentElement.getElementsByClassName){(function(){var T=document.createElement("div");T.innerHTML="<div class='test e'></div><div class='test'></div>";if(T.getElementsByClassName("e").length===0){return}T.lastChild.className="e";if(T.getElementsByClassName("e").length===1){return}I.order.splice(1,0,"CLASS");I.find.CLASS=function(U,V,W){if(typeof V.getElementsByClassName!=="undefined"&&!W){return V.getElementsByClassName(U[1])}}})()}function P(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1&&!ac){T.sizcache=Y;T.sizset=W}if(T.nodeName===Z){X=T;break}T=T[U]}ad[W]=X}}}function S(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1){if(!ac){T.sizcache=Y;T.sizset=W}if(typeof Z!=="string"){if(T===Z){X=true;break}}else{if(F.filter(Z,[T]).length>0){X=T;break}}}T=T[U]}ad[W]=X}}}var K=document.compareDocumentPosition?function(U,T){return U.compareDocumentPosition(T)&16}:function(U,T){return U!==T&&(U.contains?U.contains(T):true)};var Q=function(T){return T.nodeType===9&&T.documentElement.nodeName!=="HTML"||!!T.ownerDocument&&Q(T.ownerDocument)};var J=function(T,aa){var W=[],X="",Y,V=aa.nodeType?[aa]:aa;while((Y=I.match.PSEUDO.exec(T))){X+=Y[0];T=T.replace(I.match.PSEUDO,"")}T=I.relative[T]?T+"*":T;for(var Z=0,U=V.length;Z<U;Z++){F(T,V[Z],W)}return F.filter(X,W)};o.find=F;o.filter=F.filter;o.expr=F.selectors;o.expr[":"]=o.expr.filters;F.selectors.filters.hidden=function(T){return T.offsetWidth===0||T.offsetHeight===0};F.selectors.filters.visible=function(T){return T.offsetWidth>0||T.offsetHeight>0};F.selectors.filters.animated=function(T){return o.grep(o.timers,function(U){return T===U.elem}).length};o.multiFilter=function(V,T,U){if(U){V=":not("+V+")"}return F.matches(V,T)};o.dir=function(V,U){var T=[],W=V[U];while(W&&W!=document){if(W.nodeType==1){T.push(W)}W=W[U]}return T};o.nth=function(X,T,V,W){T=T||1;var U=0;for(;X;X=X[V]){if(X.nodeType==1&&++U==T){break}}return X};o.sibling=function(V,U){var T=[];for(;V;V=V.nextSibling){if(V.nodeType==1&&V!=U){T.push(V)}}return T};return;l.Sizzle=F})();o.event={add:function(I,F,H,K){if(I.nodeType==3||I.nodeType==8){return}if(I.setInterval&&I!=l){I=l}if(!H.guid){H.guid=this.guid++}if(K!==g){var G=H;H=this.proxy(G);H.data=K}var E=o.data(I,"events")||o.data(I,"events",{}),J=o.data(I,"handle")||o.data(I,"handle",function(){return typeof o!=="undefined"&&!o.event.triggered?o.event.handle.apply(arguments.callee.elem,arguments):g});J.elem=I;o.each(F.split(/\s+/),function(M,N){var O=N.split(".");N=O.shift();H.type=O.slice().sort().join(".");var L=E[N];if(o.event.specialAll[N]){o.event.specialAll[N].setup.call(I,K,O)}if(!L){L=E[N]={};if(!o.event.special[N]||o.event.special[N].setup.call(I,K,O)===false){if(I.addEventListener){I.addEventListener(N,J,false)}else{if(I.attachEvent){I.attachEvent("on"+N,J)}}}}L[H.guid]=H;o.event.global[N]=true});I=null},guid:1,global:{},remove:function(K,H,J){if(K.nodeType==3||K.nodeType==8){return}var G=o.data(K,"events"),F,E;if(G){if(H===g||(typeof H==="string"&&H.charAt(0)==".")){for(var I in G){this.remove(K,I+(H||""))}}else{if(H.type){J=H.handler;H=H.type}o.each(H.split(/\s+/),function(M,O){var Q=O.split(".");O=Q.shift();var N=RegExp("(^|\\.)"+Q.slice().sort().join(".*\\.")+"(\\.|$)");if(G[O]){if(J){delete G[O][J.guid]}else{for(var P in G[O]){if(N.test(G[O][P].type)){delete G[O][P]}}}if(o.event.specialAll[O]){o.event.specialAll[O].teardown.call(K,Q)}for(F in G[O]){break}if(!F){if(!o.event.special[O]||o.event.special[O].teardown.call(K,Q)===false){if(K.removeEventListener){K.removeEventListener(O,o.data(K,"handle"),false)}else{if(K.detachEvent){K.detachEvent("on"+O,o.data(K,"handle"))}}}F=null;delete G[O]}}})}for(F in G){break}if(!F){var L=o.data(K,"handle");if(L){L.elem=null}o.removeData(K,"events");o.removeData(K,"handle")}}},trigger:function(I,K,H,E){var G=I.type||I;if(!E){I=typeof I==="object"?I[h]?I:o.extend(o.Event(G),I):o.Event(G);if(G.indexOf("!")>=0){I.type=G=G.slice(0,-1);I.exclusive=true}if(!H){I.stopPropagation();if(this.global[G]){o.each(o.cache,function(){if(this.events&&this.events[G]){o.event.trigger(I,K,this.handle.elem)}})}}if(!H||H.nodeType==3||H.nodeType==8){return g}I.result=g;I.target=H;K=o.makeArray(K);K.unshift(I)}I.currentTarget=H;var J=o.data(H,"handle");if(J){J.apply(H,K)}if((!H[G]||(o.nodeName(H,"a")&&G=="click"))&&H["on"+G]&&H["on"+G].apply(H,K)===false){I.result=false}if(!E&&H[G]&&!I.isDefaultPrevented()&&!(o.nodeName(H,"a")&&G=="click")){this.triggered=true;try{H[G]()}catch(L){}}this.triggered=false;if(!I.isPropagationStopped()){var F=H.parentNode||H.ownerDocument;if(F){o.event.trigger(I,K,F,true)}}},handle:function(K){var J,E;K=arguments[0]=o.event.fix(K||l.event);K.currentTarget=this;var L=K.type.split(".");K.type=L.shift();J=!L.length&&!K.exclusive;var I=RegExp("(^|\\.)"+L.slice().sort().join(".*\\.")+"(\\.|$)");E=(o.data(this,"events")||{})[K.type];for(var G in E){var H=E[G];if(J||I.test(H.type)){K.handler=H;K.data=H.data;var F=H.apply(this,arguments);if(F!==g){K.result=F;if(F===false){K.preventDefault();K.stopPropagation()}}if(K.isImmediatePropagationStopped()){break}}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(H){if(H[h]){return H}var F=H;H=o.Event(F);for(var G=this.props.length,J;G;){J=this.props[--G];H[J]=F[J]}if(!H.target){H.target=H.srcElement||document}if(H.target.nodeType==3){H.target=H.target.parentNode}if(!H.relatedTarget&&H.fromElement){H.relatedTarget=H.fromElement==H.target?H.toElement:H.fromElement}if(H.pageX==null&&H.clientX!=null){var I=document.documentElement,E=document.body;H.pageX=H.clientX+(I&&I.scrollLeft||E&&E.scrollLeft||0)-(I.clientLeft||0);H.pageY=H.clientY+(I&&I.scrollTop||E&&E.scrollTop||0)-(I.clientTop||0)}if(!H.which&&((H.charCode||H.charCode===0)?H.charCode:H.keyCode)){H.which=H.charCode||H.keyCode}if(!H.metaKey&&H.ctrlKey){H.metaKey=H.ctrlKey}if(!H.which&&H.button){H.which=(H.button&1?1:(H.button&2?3:(H.button&4?2:0)))}return H},proxy:function(F,E){E=E||function(){return F.apply(this,arguments)};E.guid=F.guid=F.guid||E.guid||this.guid++;return E},special:{ready:{setup:B,teardown:function(){}}},specialAll:{live:{setup:function(E,F){o.event.add(this,F[0],c)},teardown:function(G){if(G.length){var E=0,F=RegExp("(^|\\.)"+G[0]+"(\\.|$)");o.each((o.data(this,"events").live||{}),function(){if(F.test(this.type)){E++}});if(E<1){o.event.remove(this,G[0],c)}}}}}};o.Event=function(E){if(!this.preventDefault){return new o.Event(E)}if(E&&E.type){this.originalEvent=E;this.type=E.type}else{this.type=E}this.timeStamp=e();this[h]=true};function k(){return false}function u(){return true}o.Event.prototype={preventDefault:function(){this.isDefaultPrevented=u;var E=this.originalEvent;if(!E){return}if(E.preventDefault){E.preventDefault()}E.returnValue=false},stopPropagation:function(){this.isPropagationStopped=u;var E=this.originalEvent;if(!E){return}if(E.stopPropagation){E.stopPropagation()}E.cancelBubble=true},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=u;this.stopPropagation()},isDefaultPrevented:k,isPropagationStopped:k,isImmediatePropagationStopped:k};var a=function(F){var E=F.relatedTarget;while(E&&E!=this){try{E=E.parentNode}catch(G){E=this}}if(E!=this){F.type=F.data;o.event.handle.apply(this,arguments)}};o.each({mouseover:"mouseenter",mouseout:"mouseleave"},function(F,E){o.event.special[E]={setup:function(){o.event.add(this,F,a,E)},teardown:function(){o.event.remove(this,F,a)}}});o.fn.extend({bind:function(F,G,E){return F=="unload"?this.one(F,G,E):this.each(function(){o.event.add(this,F,E||G,E&&G)})},one:function(G,H,F){var E=o.event.proxy(F||H,function(I){o(this).unbind(I,E);return(F||H).apply(this,arguments)});return this.each(function(){o.event.add(this,G,E,F&&H)})},unbind:function(F,E){return this.each(function(){o.event.remove(this,F,E)})},trigger:function(E,F){return this.each(function(){o.event.trigger(E,F,this)})},triggerHandler:function(E,G){if(this[0]){var F=o.Event(E);F.preventDefault();F.stopPropagation();o.event.trigger(F,G,this[0]);return F.result}},toggle:function(G){var E=arguments,F=1;while(F<E.length){o.event.proxy(G,E[F++])}return this.click(o.event.proxy(G,function(H){this.lastToggle=(this.lastToggle||0)%F;H.preventDefault();return E[this.lastToggle++].apply(this,arguments)||false}))},hover:function(E,F){return this.mouseenter(E).mouseleave(F)},ready:function(E){B();if(o.isReady){E.call(document,o)}else{o.readyList.push(E)}return this},live:function(G,F){var E=o.event.proxy(F);E.guid+=this.selector+G;o(document).bind(i(G,this.selector),this.selector,E);return this},die:function(F,E){o(document).unbind(i(F,this.selector),E?{guid:E.guid+this.selector+F}:null);return this}});function c(H){var E=RegExp("(^|\\.)"+H.type+"(\\.|$)"),G=true,F=[];o.each(o.data(this,"events").live||[],function(I,J){if(E.test(J.type)){var K=o(H.target).closest(J.data)[0];if(K){F.push({elem:K,fn:J})}}});F.sort(function(J,I){return o.data(J.elem,"closest")-o.data(I.elem,"closest")});o.each(F,function(){if(this.fn.call(this.elem,H,this.fn.data)===false){return(G=false)}});return G}function i(F,E){return["live",F,E.replace(/\./g,"`").replace(/ /g,"|")].join(".")}o.extend({isReady:false,readyList:[],ready:function(){if(!o.isReady){o.isReady=true;if(o.readyList){o.each(o.readyList,function(){this.call(document,o)});o.readyList=null}o(document).triggerHandler("ready")}}});var x=false;function B(){if(x){return}x=true;if(document.addEventListener){document.addEventListener("DOMContentLoaded",function(){document.removeEventListener("DOMContentLoaded",arguments.callee,false);o.ready()},false)}else{if(document.attachEvent){document.attachEvent("onreadystatechange",function(){if(document.readyState==="complete"){document.detachEvent("onreadystatechange",arguments.callee);o.ready()}});if(document.documentElement.doScroll&&l==l.top){(function(){if(o.isReady){return}try{document.documentElement.doScroll("left")}catch(E){setTimeout(arguments.callee,0);return}o.ready()})()}}}o.event.add(l,"load",o.ready)}o.each(("blur,focus,load,resize,scroll,unload,click,dblclick,mousedown,mouseup,mousemove,mouseover,mouseout,mouseenter,mouseleave,change,select,submit,keydown,keypress,keyup,error").split(","),function(F,E){o.fn[E]=function(G){return G?this.bind(E,G):this.trigger(E)}});o(l).bind("unload",function(){for(var E in o.cache){if(E!=1&&o.cache[E].handle){o.event.remove(o.cache[E].handle.elem)}}});(function(){o.support={};var F=document.documentElement,G=document.createElement("script"),K=document.createElement("div"),J="script"+(new Date).getTime();K.style.display="none";K.innerHTML=' <link/><table></table><a href="/a" style="color:red;float:left;opacity:.5;">a</a><select><option>text</option></select><object><param/></object>';var H=K.getElementsByTagName("*"),E=K.getElementsByTagName("a")[0];if(!H||!H.length||!E){return}o.support={leadingWhitespace:K.firstChild.nodeType==3,tbody:!K.getElementsByTagName("tbody").length,objectAll:!!K.getElementsByTagName("object")[0].getElementsByTagName("*").length,htmlSerialize:!!K.getElementsByTagName("link").length,style:/red/.test(E.getAttribute("style")),hrefNormalized:E.getAttribute("href")==="/a",opacity:E.style.opacity==="0.5",cssFloat:!!E.style.cssFloat,scriptEval:false,noCloneEvent:true,boxModel:null};G.type="text/javascript";try{G.appendChild(document.createTextNode("window."+J+"=1;"))}catch(I){}F.insertBefore(G,F.firstChild);if(l[J]){o.support.scriptEval=true;delete l[J]}F.removeChild(G);if(K.attachEvent&&K.fireEvent){K.attachEvent("onclick",function(){o.support.noCloneEvent=false;K.detachEvent("onclick",arguments.callee)});K.cloneNode(true).fireEvent("onclick")}o(function(){var L=document.createElement("div");L.style.width=L.style.paddingLeft="1px";document.body.appendChild(L);o.boxModel=o.support.boxModel=L.offsetWidth===2;document.body.removeChild(L).style.display="none"})})();var w=o.support.cssFloat?"cssFloat":"styleFloat";o.props={"for":"htmlFor","class":"className","float":w,cssFloat:w,styleFloat:w,readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",tabindex:"tabIndex"};o.fn.extend({_load:o.fn.load,load:function(G,J,K){if(typeof G!=="string"){return this._load(G)}var I=G.indexOf(" ");if(I>=0){var E=G.slice(I,G.length);G=G.slice(0,I)}var H="GET";if(J){if(o.isFunction(J)){K=J;J=null}else{if(typeof J==="object"){J=o.param(J);H="POST"}}}var F=this;o.ajax({url:G,type:H,dataType:"html",data:J,complete:function(M,L){if(L=="success"||L=="notmodified"){F.html(E?o("<div/>").append(M.responseText.replace(/<script(.|\s)*?\/script>/g,"")).find(E):M.responseText)}if(K){F.each(K,[M.responseText,L,M])}}});return this},serialize:function(){return o.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?o.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password|search/i.test(this.type))}).map(function(E,F){var G=o(this).val();return G==null?null:o.isArray(G)?o.map(G,function(I,H){return{name:F.name,value:I}}):{name:F.name,value:G}}).get()}});o.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(E,F){o.fn[F]=function(G){return this.bind(F,G)}});var r=e();o.extend({get:function(E,G,H,F){if(o.isFunction(G)){H=G;G=null}return o.ajax({type:"GET",url:E,data:G,success:H,dataType:F})},getScript:function(E,F){return o.get(E,null,F,"script")},getJSON:function(E,F,G){return o.get(E,F,G,"json")},post:function(E,G,H,F){if(o.isFunction(G)){H=G;G={}}return o.ajax({type:"POST",url:E,data:G,success:H,dataType:F})},ajaxSetup:function(E){o.extend(o.ajaxSettings,E)},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return l.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest()},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(M){M=o.extend(true,M,o.extend(true,{},o.ajaxSettings,M));var W,F=/=\?(&|$)/g,R,V,G=M.type.toUpperCase();if(M.data&&M.processData&&typeof M.data!=="string"){M.data=o.param(M.data)}if(M.dataType=="jsonp"){if(G=="GET"){if(!M.url.match(F)){M.url+=(M.url.match(/\?/)?"&":"?")+(M.jsonp||"callback")+"=?"}}else{if(!M.data||!M.data.match(F)){M.data=(M.data?M.data+"&":"")+(M.jsonp||"callback")+"=?"}}M.dataType="json"}if(M.dataType=="json"&&(M.data&&M.data.match(F)||M.url.match(F))){W="jsonp"+r++;if(M.data){M.data=(M.data+"").replace(F,"="+W+"$1")}M.url=M.url.replace(F,"="+W+"$1");M.dataType="script";l[W]=function(X){V=X;I();L();l[W]=g;try{delete l[W]}catch(Y){}if(H){H.removeChild(T)}}}if(M.dataType=="script"&&M.cache==null){M.cache=false}if(M.cache===false&&G=="GET"){var E=e();var U=M.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+E+"$2");M.url=U+((U==M.url)?(M.url.match(/\?/)?"&":"?")+"_="+E:"")}if(M.data&&G=="GET"){M.url+=(M.url.match(/\?/)?"&":"?")+M.data;M.data=null}if(M.global&&!o.active++){o.event.trigger("ajaxStart")}var Q=/^(\w+:)?\/\/([^\/?#]+)/.exec(M.url);if(M.dataType=="script"&&G=="GET"&&Q&&(Q[1]&&Q[1]!=location.protocol||Q[2]!=location.host)){var H=document.getElementsByTagName("head")[0];var T=document.createElement("script");T.src=M.url;if(M.scriptCharset){T.charset=M.scriptCharset}if(!W){var O=false;T.onload=T.onreadystatechange=function(){if(!O&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){O=true;I();L();T.onload=T.onreadystatechange=null;H.removeChild(T)}}}H.appendChild(T);return g}var K=false;var J=M.xhr();if(M.username){J.open(G,M.url,M.async,M.username,M.password)}else{J.open(G,M.url,M.async)}try{if(M.data){J.setRequestHeader("Content-Type",M.contentType)}if(M.ifModified){J.setRequestHeader("If-Modified-Since",o.lastModified[M.url]||"Thu, 01 Jan 1970 00:00:00 GMT")}J.setRequestHeader("X-Requested-With","XMLHttpRequest");J.setRequestHeader("Accept",M.dataType&&M.accepts[M.dataType]?M.accepts[M.dataType]+", */*":M.accepts._default)}catch(S){}if(M.beforeSend&&M.beforeSend(J,M)===false){if(M.global&&!--o.active){o.event.trigger("ajaxStop")}J.abort();return false}if(M.global){o.event.trigger("ajaxSend",[J,M])}var N=function(X){if(J.readyState==0){if(P){clearInterval(P);P=null;if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}}else{if(!K&&J&&(J.readyState==4||X=="timeout")){K=true;if(P){clearInterval(P);P=null}R=X=="timeout"?"timeout":!o.httpSuccess(J)?"error":M.ifModified&&o.httpNotModified(J,M.url)?"notmodified":"success";if(R=="success"){try{V=o.httpData(J,M.dataType,M)}catch(Z){R="parsererror"}}if(R=="success"){var Y;try{Y=J.getResponseHeader("Last-Modified")}catch(Z){}if(M.ifModified&&Y){o.lastModified[M.url]=Y}if(!W){I()}}else{o.handleError(M,J,R)}L();if(X){J.abort()}if(M.async){J=null}}}};if(M.async){var P=setInterval(N,13);if(M.timeout>0){setTimeout(function(){if(J&&!K){N("timeout")}},M.timeout)}}try{J.send(M.data)}catch(S){o.handleError(M,J,null,S)}if(!M.async){N()}function I(){if(M.success){M.success(V,R)}if(M.global){o.event.trigger("ajaxSuccess",[J,M])}}function L(){if(M.complete){M.complete(J,R)}if(M.global){o.event.trigger("ajaxComplete",[J,M])}if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}return J},handleError:function(F,H,E,G){if(F.error){F.error(H,E,G)}if(F.global){o.event.trigger("ajaxError",[H,F,G])}},active:0,httpSuccess:function(F){try{return !F.status&&location.protocol=="file:"||(F.status>=200&&F.status<300)||F.status==304||F.status==1223}catch(E){}return false},httpNotModified:function(G,E){try{var H=G.getResponseHeader("Last-Modified");return G.status==304||H==o.lastModified[E]}catch(F){}return false},httpData:function(J,H,G){var F=J.getResponseHeader("content-type"),E=H=="xml"||!H&&F&&F.indexOf("xml")>=0,I=E?J.responseXML:J.responseText;if(E&&I.documentElement.tagName=="parsererror"){throw"parsererror"}if(G&&G.dataFilter){I=G.dataFilter(I,H)}if(typeof I==="string"){if(H=="script"){o.globalEval(I)}if(H=="json"){I=l["eval"]("("+I+")")}}return I},param:function(E){var G=[];function H(I,J){G[G.length]=encodeURIComponent(I)+"="+encodeURIComponent(J)}if(o.isArray(E)||E.jquery){o.each(E,function(){H(this.name,this.value)})}else{for(var F in E){if(o.isArray(E[F])){o.each(E[F],function(){H(F,this)})}else{H(F,o.isFunction(E[F])?E[F]():E[F])}}}return G.join("&").replace(/%20/g,"+")}});var m={},n,d=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];function t(F,E){var G={};o.each(d.concat.apply([],d.slice(0,E)),function(){G[this]=F});return G}o.fn.extend({show:function(J,L){if(J){return this.animate(t("show",3),J,L)}else{for(var H=0,F=this.length;H<F;H++){var E=o.data(this[H],"olddisplay");this[H].style.display=E||"";if(o.css(this[H],"display")==="none"){var G=this[H].tagName,K;if(m[G]){K=m[G]}else{var I=o("<"+G+" />").appendTo("body");K=I.css("display");if(K==="none"){K="block"}I.remove();m[G]=K}o.data(this[H],"olddisplay",K)}}for(var H=0,F=this.length;H<F;H++){this[H].style.display=o.data(this[H],"olddisplay")||""}return this}},hide:function(H,I){if(H){return this.animate(t("hide",3),H,I)}else{for(var G=0,F=this.length;G<F;G++){var E=o.data(this[G],"olddisplay");if(!E&&E!=="none"){o.data(this[G],"olddisplay",o.css(this[G],"display"))}}for(var G=0,F=this.length;G<F;G++){this[G].style.display="none"}return this}},_toggle:o.fn.toggle,toggle:function(G,F){var E=typeof G==="boolean";return o.isFunction(G)&&o.isFunction(F)?this._toggle.apply(this,arguments):G==null||E?this.each(function(){var H=E?G:o(this).is(":hidden");o(this)[H?"show":"hide"]()}):this.animate(t("toggle",3),G,F)},fadeTo:function(E,G,F){return this.animate({opacity:G},E,F)},animate:function(I,F,H,G){var E=o.speed(F,H,G);return this[E.queue===false?"each":"queue"](function(){var K=o.extend({},E),M,L=this.nodeType==1&&o(this).is(":hidden"),J=this;for(M in I){if(I[M]=="hide"&&L||I[M]=="show"&&!L){return K.complete.call(this)}if((M=="height"||M=="width")&&this.style){K.display=o.css(this,"display");K.overflow=this.style.overflow}}if(K.overflow!=null){this.style.overflow="hidden"}K.curAnim=o.extend({},I);o.each(I,function(O,S){var R=new o.fx(J,K,O);if(/toggle|show|hide/.test(S)){R[S=="toggle"?L?"show":"hide":S](I)}else{var Q=S.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),T=R.cur(true)||0;if(Q){var N=parseFloat(Q[2]),P=Q[3]||"px";if(P!="px"){J.style[O]=(N||1)+P;T=((N||1)/R.cur(true))*T;J.style[O]=T+P}if(Q[1]){N=((Q[1]=="-="?-1:1)*N)+T}R.custom(T,N,P)}else{R.custom(T,S,"")}}});return true})},stop:function(F,E){var G=o.timers;if(F){this.queue([])}this.each(function(){for(var H=G.length-1;H>=0;H--){if(G[H].elem==this){if(E){G[H](true)}G.splice(H,1)}}});if(!E){this.dequeue()}return this}});o.each({slideDown:t("show",1),slideUp:t("hide",1),slideToggle:t("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(E,F){o.fn[E]=function(G,H){return this.animate(F,G,H)}});o.extend({speed:function(G,H,F){var E=typeof G==="object"?G:{complete:F||!F&&H||o.isFunction(G)&&G,duration:G,easing:F&&H||H&&!o.isFunction(H)&&H};E.duration=o.fx.off?0:typeof E.duration==="number"?E.duration:o.fx.speeds[E.duration]||o.fx.speeds._default;E.old=E.complete;E.complete=function(){if(E.queue!==false){o(this).dequeue()}if(o.isFunction(E.old)){E.old.call(this)}};return E},easing:{linear:function(G,H,E,F){return E+F*G},swing:function(G,H,E,F){return((-Math.cos(G*Math.PI)/2)+0.5)*F+E}},timers:[],fx:function(F,E,G){this.options=E;this.elem=F;this.prop=G;if(!E.orig){E.orig={}}}});o.fx.prototype={update:function(){if(this.options.step){this.options.step.call(this.elem,this.now,this)}(o.fx.step[this.prop]||o.fx.step._default)(this);if((this.prop=="height"||this.prop=="width")&&this.elem.style){this.elem.style.display="block"}},cur:function(F){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)){return this.elem[this.prop]}var E=parseFloat(o.css(this.elem,this.prop,F));return E&&E>-10000?E:parseFloat(o.curCSS(this.elem,this.prop))||0},custom:function(I,H,G){this.startTime=e();this.start=I;this.end=H;this.unit=G||this.unit||"px";this.now=this.start;this.pos=this.state=0;var E=this;function F(J){return E.step(J)}F.elem=this.elem;if(F()&&o.timers.push(F)&&!n){n=setInterval(function(){var K=o.timers;for(var J=0;J<K.length;J++){if(!K[J]()){K.splice(J--,1)}}if(!K.length){clearInterval(n);n=g}},13)}},show:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.show=true;this.custom(this.prop=="width"||this.prop=="height"?1:0,this.cur());o(this.elem).show()},hide:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.hide=true;this.custom(this.cur(),0)},step:function(H){var G=e();if(H||G>=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var E=true;for(var F in this.options.curAnim){if(this.options.curAnim[F]!==true){E=false}}if(E){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(o.css(this.elem,"display")=="none"){this.elem.style.display="block"}}if(this.options.hide){o(this.elem).hide()}if(this.options.hide||this.options.show){for(var I in this.options.curAnim){o.attr(this.elem.style,I,this.options.orig[I])}}this.options.complete.call(this.elem)}return false}else{var J=G-this.startTime;this.state=J/this.options.duration;this.pos=o.easing[this.options.easing||(o.easing.swing?"swing":"linear")](this.state,J,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update()}return true}};o.extend(o.fx,{speeds:{slow:600,fast:200,_default:400},step:{opacity:function(E){o.attr(E.elem.style,"opacity",E.now)},_default:function(E){if(E.elem.style&&E.elem.style[E.prop]!=null){E.elem.style[E.prop]=E.now+E.unit}else{E.elem[E.prop]=E.now}}}});if(document.documentElement.getBoundingClientRect){o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}var G=this[0].getBoundingClientRect(),J=this[0].ownerDocument,F=J.body,E=J.documentElement,L=E.clientTop||F.clientTop||0,K=E.clientLeft||F.clientLeft||0,I=G.top+(self.pageYOffset||o.boxModel&&E.scrollTop||F.scrollTop)-L,H=G.left+(self.pageXOffset||o.boxModel&&E.scrollLeft||F.scrollLeft)-K;return{top:I,left:H}}}else{o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}o.offset.initialized||o.offset.initialize();var J=this[0],G=J.offsetParent,F=J,O=J.ownerDocument,M,H=O.documentElement,K=O.body,L=O.defaultView,E=L.getComputedStyle(J,null),N=J.offsetTop,I=J.offsetLeft;while((J=J.parentNode)&&J!==K&&J!==H){M=L.getComputedStyle(J,null);N-=J.scrollTop,I-=J.scrollLeft;if(J===G){N+=J.offsetTop,I+=J.offsetLeft;if(o.offset.doesNotAddBorder&&!(o.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(J.tagName))){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}F=G,G=J.offsetParent}if(o.offset.subtractsBorderForOverflowNotVisible&&M.overflow!=="visible"){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}E=M}if(E.position==="relative"||E.position==="static"){N+=K.offsetTop,I+=K.offsetLeft}if(E.position==="fixed"){N+=Math.max(H.scrollTop,K.scrollTop),I+=Math.max(H.scrollLeft,K.scrollLeft)}return{top:N,left:I}}}o.offset={initialize:function(){if(this.initialized){return}var L=document.body,F=document.createElement("div"),H,G,N,I,M,E,J=L.style.marginTop,K='<div style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;"><div></div></div><table style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;" cellpadding="0" cellspacing="0"><tr><td></td></tr></table>';M={position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"};for(E in M){F.style[E]=M[E]}F.innerHTML=K;L.insertBefore(F,L.firstChild);H=F.firstChild,G=H.firstChild,I=H.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(G.offsetTop!==5);this.doesAddBorderForTableAndCells=(I.offsetTop===5);H.style.overflow="hidden",H.style.position="relative";this.subtractsBorderForOverflowNotVisible=(G.offsetTop===-5);L.style.marginTop="1px";this.doesNotIncludeMarginInBodyOffset=(L.offsetTop===0);L.style.marginTop=J;L.removeChild(F);this.initialized=true},bodyOffset:function(E){o.offset.initialized||o.offset.initialize();var G=E.offsetTop,F=E.offsetLeft;if(o.offset.doesNotIncludeMarginInBodyOffset){G+=parseInt(o.curCSS(E,"marginTop",true),10)||0,F+=parseInt(o.curCSS(E,"marginLeft",true),10)||0}return{top:G,left:F}}};o.fn.extend({position:function(){var I=0,H=0,F;if(this[0]){var G=this.offsetParent(),J=this.offset(),E=/^body|html$/i.test(G[0].tagName)?{top:0,left:0}:G.offset();J.top-=j(this,"marginTop");J.left-=j(this,"marginLeft");E.top+=j(G,"borderTopWidth");E.left+=j(G,"borderLeftWidth");F={top:J.top-E.top,left:J.left-E.left}}return F},offsetParent:function(){var E=this[0].offsetParent||document.body;while(E&&(!/^body|html$/i.test(E.tagName)&&o.css(E,"position")=="static")){E=E.offsetParent}return o(E)}});o.each(["Left","Top"],function(F,E){var G="scroll"+E;o.fn[G]=function(H){if(!this[0]){return null}return H!==g?this.each(function(){this==l||this==document?l.scrollTo(!F?H:o(l).scrollLeft(),F?H:o(l).scrollTop()):this[G]=H}):this[0]==l||this[0]==document?self[F?"pageYOffset":"pageXOffset"]||o.boxModel&&document.documentElement[G]||document.body[G]:this[0][G]}});o.each(["Height","Width"],function(I,G){var E=I?"Left":"Top",H=I?"Right":"Bottom",F=G.toLowerCase();o.fn["inner"+G]=function(){return this[0]?o.css(this[0],F,false,"padding"):null};o.fn["outer"+G]=function(K){return this[0]?o.css(this[0],F,false,K?"margin":"border"):null};var J=G.toLowerCase();o.fn[J]=function(K){return this[0]==l?document.compatMode=="CSS1Compat"&&document.documentElement["client"+G]||document.body["client"+G]:this[0]==document?Math.max(document.documentElement["client"+G],document.body["scroll"+G],document.documentElement["scroll"+G],document.body["offset"+G],document.documentElement["offset"+G]):K===g?(this.length?o.css(this[0],J):null):this.css(J,typeof K==="string"?K:K+"px")}})})();
\ No newline at end of file diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/js/lesson.js b/examples/lessons/6_Maths_AddingAndSubtractingVariables/js/lesson.js deleted file mode 100755 index 9f094ca..0000000 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/js/lesson.js +++ /dev/null @@ -1,215 +0,0 @@ -$(document).ready(function(){ - var k = Karma({ - audio: [{'name':'correct','file':'correct.wav'}, - {'name':'incorrect','file':'incorrect.wav'} - ]}); - - k.ready(function(){ - var i,j; - var totalCounter; - var correctCounter; - var currentQuestion; - var TOTAL_QUES = 6; - var flag_correct; - var randPositions = []; - var check_num; - - var variableName = new Array('x','p','y','x','x','r'); - var perPack = new Array('16','80','25','30','15','70'); - var quantity = new Array('4','1','2','3','2','1'); - var finishedQty = new Array('8','30','16','7','7','22'); - - var answers = new Array('58','50','34','97','37','48'); - - - var scoreboard = $('#score_box').scoreboard({'layout':'horizontal', - 'winningScore': TOTAL_QUES}); - - var genRandPosition=function (){ - randPositions[0] = k.rand(0,TOTAL_QUES-1); - for(i=1; i<TOTAL_QUES; i++){ - do{ - flag = 0; - randPositions[i] = k.rand(0,TOTAL_QUES-1); - for(j=0; j<i; j++){ - if(randPositions[i] === randPositions[j]){ - flag++; - } - } - }while(flag != 0 ); //end of do while loop - } - }; - - var next_question = function (){ - if(totalCounter === TOTAL_QUES){ - t=setTimeout(function(){delay_gameOver();},1000); - } - else{ - currentQuestion = randPositions[totalCounter]; - currentQuestion = totalCounter; - flag_correct = 1; - check_num = 0; - var sign; - $('#linkCheck').show(); - $('#left-side').html('<img id="img'+currentQuestion+'" src="assets/image/img'+currentQuestion+'.png" />'); - //$('#left-side').html('<img id="img'+currentQuestion+'" src="assets/image/img0.png" />'); - - $('#rightBack').css({'background':'url(assets/image/ques'+currentQuestion+'.png)'}); - $('.bgCalculation').html('').append('<div id="textQues1"></div>'); - $('.bgCalculation').append('<div id="textQues2"></div>'); - - if(currentQuestion ===3 || currentQuestion === 4){ - sign = '+'; - } - else{ - sign = '-'; - - } - for( i = 0; i< quantity[currentQuestion]; i++){ - $('#textQues1').append(variableName[currentQuestion]); - $('#textQues2').append('<span class="blankBoxes"></span>'); - if(i != quantity[currentQuestion]-1){ - $('#textQues1').append('+'); - $('#textQues2').append('+'); - } - else{ - - if(parseInt(quantity[currentQuestion]) === 1){ - $('#textQues1').append(sign+''+finishedQty[currentQuestion]); - $('#textQues1').append(' = ').append(variableName[currentQuestion]); - $('#textQues1').append(sign+''+finishedQty[currentQuestion]); - $('#textQues2').append(sign+''+finishedQty[currentQuestion]); - $('#textQues2').append(' = ').append('<input type="text" id="text1" class="textBox" maxLength="2"/>'); - $('#textQues2').append(sign+''+finishedQty[currentQuestion]); - } - else{ - $('#textQues1').append(sign+''+finishedQty[currentQuestion]); - $('#textQues1').append(' = ').append(quantity[currentQuestion]+' * '+variableName[currentQuestion]); - $('#textQues1').append(sign+''+finishedQty[currentQuestion]); - $('#textQues2').append(sign+''+finishedQty[currentQuestion]); - $('#textQues2').append(' = ').append(quantity[currentQuestion]+' *'+'<input type="text" id="text1" class="textBox" maxLength="2"/>'); - $('#textQues2').append(sign+''+finishedQty[currentQuestion]); - } - - - } - $("input#text1").focus(); - } - - - foucs_blur(); - - } - - }; - - function game_start(){ - $('#gameOver').hide(); - $('#linkCheck').show(); - $('#section').removeClass('backOpaque'); - genRandPosition(); - next_question(); - } - - function game() { - totalCounter = 0; - correctCounter = 0; - $('#section').html('').append('<div id="left-side"></div>'); - $('#section').append('<div id="right-side"></div>'); - $('#right-side').append('<div id="rightBack"></div>'); - $('#right-side').append('<div class="bgCalculation"></div>'); - $('#help').hide(); - $('#linkCheck').hide(); - $('#gameOver').hide(); - } - - game(); - - var delay_nextQues = function(){ - document.delayForm.delayval.value = 1; - next_question(); - }; - - var delay_gameOver = function(){ - document.delayForm.delayval.value = 1; - $('#section').addClass('backOpaque'); - $('#linkCheck').hide(); - $('#gameOver').show(); - }; - - var check_answer = function(){ - if(check_num === 0){ - var textVal = $('#text1').val(); - if(textVal === perPack[currentQuestion]){ // first one is correct - k.audio.correct.play(); - $('.bgCalculation').append('<div id="textQues3"></div>'); - $('.bgCalculation').append('<div id="textQues4"></div>'); - $('#textQues3').append(' = ').append('<input type="text" id="text2" class="textBox" maxLength="3"/>'); - $('#text1').attr("disabled", true); - $('.blankBoxes').css({'padding':'0'}).html(perPack[currentQuestion]); - check_num++; - $("input#text2").focus(); - foucs_blur(); - } - else{ - k.audio.incorrect.play(); - flag_correct = 0; - } - } - else{ - textVal = $('#text2').val(); - //if(textVal === perPack[currentQuestion] * quantity[currentQuestion]){ - if(textVal === answers[currentQuestion]){ - k.audio.correct.play(); - if(flag_correct === 1){ - scoreboard.scoreboard('inc'); - correctCounter++; - } - scoreboard.scoreboard('incTotal'); - totalCounter++; - t=setTimeout(function(){delay_nextQues();},1000); - } - else{ - flag_correct = 0; - k.audio.incorrect.play(); - } - } - }; - - function foucs_blur(){ - - $('input[type="text"]') - .focus(function() { - $(this).removeClass('incorrect').addClass("focus"); - }) - .blur(function() { - $(this).removeClass("focus"); - }) - .keypress(function(event) { - if(event.which === 13){ - check_answer(); - } - - }); - - $('#linkCheck').click(function(){ - check_answer(); - }); - } - - $('#linkStart').click(function(){ - game_start(); - }); - - $('#linkPlayAgain').click(function(){ - scoreboard.scoreboard('reset'); - game_start(); - }); - $('#linkHelp').click(function(){ - $('#help').slideDown(2000); - }) - .mouseout(function(){ - $('#help').slideUp(2000); - }); - }); //end of k.ready -}); //end of document.ready
\ No newline at end of file diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/js/ui.draggable.js b/examples/lessons/6_Maths_AddingAndSubtractingVariables/js/ui.draggable.js deleted file mode 100755 index 0402f0e..0000000 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/js/ui.draggable.js +++ /dev/null @@ -1,766 +0,0 @@ -/* - * jQuery UI Draggable 1.7.2 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Draggables - * - * Depends: - * ui.core.js - */ -(function($) { - -$.widget("ui.draggable", $.extend({}, $.ui.mouse, { - - _init: function() { - - if (this.options.helper == 'original' && !(/^(?:r|a|f)/).test(this.element.css("position"))) - this.element[0].style.position = 'relative'; - - (this.options.addClasses && this.element.addClass("ui-draggable")); - (this.options.disabled && this.element.addClass("ui-draggable-disabled")); - - this._mouseInit(); - - }, - - destroy: function() { - if(!this.element.data('draggable')) return; - this.element - .removeData("draggable") - .unbind(".draggable") - .removeClass("ui-draggable" - + " ui-draggable-dragging" - + " ui-draggable-disabled"); - this._mouseDestroy(); - }, - - _mouseCapture: function(event) { - - var o = this.options; - - if (this.helper || o.disabled || $(event.target).is('.ui-resizable-handle')) - return false; - - //Quit if we're not on a valid handle - this.handle = this._getHandle(event); - if (!this.handle) - return false; - - return true; - - }, - - _mouseStart: function(event) { - - var o = this.options; - - //Create and append the visible helper - this.helper = this._createHelper(event); - - //Cache the helper size - this._cacheHelperProportions(); - - //If ddmanager is used for droppables, set the global draggable - if($.ui.ddmanager) - $.ui.ddmanager.current = this; - - /* - * - Position generation - - * This block generates everything position related - it's the core of draggables. - */ - - //Cache the margins of the original element - this._cacheMargins(); - - //Store the helper's css position - this.cssPosition = this.helper.css("position"); - this.scrollParent = this.helper.scrollParent(); - - //The element's absolute position on the page minus margins - this.offset = this.element.offset(); - this.offset = { - top: this.offset.top - this.margins.top, - left: this.offset.left - this.margins.left - }; - - $.extend(this.offset, { - click: { //Where the click happened, relative to the element - left: event.pageX - this.offset.left, - top: event.pageY - this.offset.top - }, - parent: this._getParentOffset(), - relative: this._getRelativeOffset() //This is a relative to absolute position minus the actual position calculation - only used for relative positioned helper - }); - - //Generate the original position - this.originalPosition = this._generatePosition(event); - this.originalPageX = event.pageX; - this.originalPageY = event.pageY; - - //Adjust the mouse offset relative to the helper if 'cursorAt' is supplied - if(o.cursorAt) - this._adjustOffsetFromHelper(o.cursorAt); - - //Set a containment if given in the options - if(o.containment) - this._setContainment(); - - //Call plugins and callbacks - this._trigger("start", event); - - //Recache the helper size - this._cacheHelperProportions(); - - //Prepare the droppable offsets - if ($.ui.ddmanager && !o.dropBehaviour) - $.ui.ddmanager.prepareOffsets(this, event); - - this.helper.addClass("ui-draggable-dragging"); - this._mouseDrag(event, true); //Execute the drag once - this causes the helper not to be visible before getting its correct position - return true; - }, - - _mouseDrag: function(event, noPropagation) { - - //Compute the helpers position - this.position = this._generatePosition(event); - this.positionAbs = this._convertPositionTo("absolute"); - - //Call plugins and callbacks and use the resulting position if something is returned - if (!noPropagation) { - var ui = this._uiHash(); - this._trigger('drag', event, ui); - this.position = ui.position; - } - - if(!this.options.axis || this.options.axis != "y") this.helper[0].style.left = this.position.left+'px'; - if(!this.options.axis || this.options.axis != "x") this.helper[0].style.top = this.position.top+'px'; - if($.ui.ddmanager) $.ui.ddmanager.drag(this, event); - - return false; - }, - - _mouseStop: function(event) { - - //If we are using droppables, inform the manager about the drop - var dropped = false; - if ($.ui.ddmanager && !this.options.dropBehaviour) - dropped = $.ui.ddmanager.drop(this, event); - - //if a drop comes from outside (a sortable) - if(this.dropped) { - dropped = this.dropped; - this.dropped = false; - } - - if((this.options.revert == "invalid" && !dropped) || (this.options.revert == "valid" && dropped) || this.options.revert === true || ($.isFunction(this.options.revert) && this.options.revert.call(this.element, dropped))) { - var self = this; - $(this.helper).animate(this.originalPosition, parseInt(this.options.revertDuration, 10), function() { - self._trigger("stop", event); - self._clear(); - }); - } else { - this._trigger("stop", event); - this._clear(); - } - - return false; - }, - - _getHandle: function(event) { - - var handle = !this.options.handle || !$(this.options.handle, this.element).length ? true : false; - $(this.options.handle, this.element) - .find("*") - .andSelf() - .each(function() { - if(this == event.target) handle = true; - }); - - return handle; - - }, - - _createHelper: function(event) { - - var o = this.options; - var helper = $.isFunction(o.helper) ? $(o.helper.apply(this.element[0], [event])) : (o.helper == 'clone' ? this.element.clone() : this.element); - - if(!helper.parents('body').length) - helper.appendTo((o.appendTo == 'parent' ? this.element[0].parentNode : o.appendTo)); - - if(helper[0] != this.element[0] && !(/(fixed|absolute)/).test(helper.css("position"))) - helper.css("position", "absolute"); - - return helper; - - }, - - _adjustOffsetFromHelper: function(obj) { - if(obj.left != undefined) this.offset.click.left = obj.left + this.margins.left; - if(obj.right != undefined) this.offset.click.left = this.helperProportions.width - obj.right + this.margins.left; - if(obj.top != undefined) this.offset.click.top = obj.top + this.margins.top; - if(obj.bottom != undefined) this.offset.click.top = this.helperProportions.height - obj.bottom + this.margins.top; - }, - - _getParentOffset: function() { - - //Get the offsetParent and cache its position - this.offsetParent = this.helper.offsetParent(); - var po = this.offsetParent.offset(); - - // This is a special case where we need to modify a offset calculated on start, since the following happened: - // 1. The position of the helper is absolute, so it's position is calculated based on the next positioned parent - // 2. The actual offset parent is a child of the scroll parent, and the scroll parent isn't the document, which means that - // the scroll is included in the initial calculation of the offset of the parent, and never recalculated upon drag - if(this.cssPosition == 'absolute' && this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) { - po.left += this.scrollParent.scrollLeft(); - po.top += this.scrollParent.scrollTop(); - } - - if((this.offsetParent[0] == document.body) //This needs to be actually done for all browsers, since pageX/pageY includes this information - || (this.offsetParent[0].tagName && this.offsetParent[0].tagName.toLowerCase() == 'html' && $.browser.msie)) //Ugly IE fix - po = { top: 0, left: 0 }; - - return { - top: po.top + (parseInt(this.offsetParent.css("borderTopWidth"),10) || 0), - left: po.left + (parseInt(this.offsetParent.css("borderLeftWidth"),10) || 0) - }; - - }, - - _getRelativeOffset: function() { - - if(this.cssPosition == "relative") { - var p = this.element.position(); - return { - top: p.top - (parseInt(this.helper.css("top"),10) || 0) + this.scrollParent.scrollTop(), - left: p.left - (parseInt(this.helper.css("left"),10) || 0) + this.scrollParent.scrollLeft() - }; - } else { - return { top: 0, left: 0 }; - } - - }, - - _cacheMargins: function() { - this.margins = { - left: (parseInt(this.element.css("marginLeft"),10) || 0), - top: (parseInt(this.element.css("marginTop"),10) || 0) - }; - }, - - _cacheHelperProportions: function() { - this.helperProportions = { - width: this.helper.outerWidth(), - height: this.helper.outerHeight() - }; - }, - - _setContainment: function() { - - var o = this.options; - if(o.containment == 'parent') o.containment = this.helper[0].parentNode; - if(o.containment == 'document' || o.containment == 'window') this.containment = [ - 0 - this.offset.relative.left - this.offset.parent.left, - 0 - this.offset.relative.top - this.offset.parent.top, - $(o.containment == 'document' ? document : window).width() - this.helperProportions.width - this.margins.left, - ($(o.containment == 'document' ? document : window).height() || document.body.parentNode.scrollHeight) - this.helperProportions.height - this.margins.top - ]; - - if(!(/^(document|window|parent)$/).test(o.containment) && o.containment.constructor != Array) { - var ce = $(o.containment)[0]; if(!ce) return; - var co = $(o.containment).offset(); - var over = ($(ce).css("overflow") != 'hidden'); - - this.containment = [ - co.left + (parseInt($(ce).css("borderLeftWidth"),10) || 0) + (parseInt($(ce).css("paddingLeft"),10) || 0) - this.margins.left, - co.top + (parseInt($(ce).css("borderTopWidth"),10) || 0) + (parseInt($(ce).css("paddingTop"),10) || 0) - this.margins.top, - co.left+(over ? Math.max(ce.scrollWidth,ce.offsetWidth) : ce.offsetWidth) - (parseInt($(ce).css("borderLeftWidth"),10) || 0) - (parseInt($(ce).css("paddingRight"),10) || 0) - this.helperProportions.width - this.margins.left, - co.top+(over ? Math.max(ce.scrollHeight,ce.offsetHeight) : ce.offsetHeight) - (parseInt($(ce).css("borderTopWidth"),10) || 0) - (parseInt($(ce).css("paddingBottom"),10) || 0) - this.helperProportions.height - this.margins.top - ]; - } else if(o.containment.constructor == Array) { - this.containment = o.containment; - } - - }, - - _convertPositionTo: function(d, pos) { - - if(!pos) pos = this.position; - var mod = d == "absolute" ? 1 : -1; - var o = this.options, scroll = this.cssPosition == 'absolute' && !(this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent, scrollIsRootNode = (/(html|body)/i).test(scroll[0].tagName); - - return { - top: ( - pos.top // The absolute mouse position - + this.offset.relative.top * mod // Only for relative positioned nodes: Relative offset from element to offset parent - + this.offset.parent.top * mod // The offsetParent's offset without borders (offset + border) - - ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollTop() : ( scrollIsRootNode ? 0 : scroll.scrollTop() ) ) * mod) - ), - left: ( - pos.left // The absolute mouse position - + this.offset.relative.left * mod // Only for relative positioned nodes: Relative offset from element to offset parent - + this.offset.parent.left * mod // The offsetParent's offset without borders (offset + border) - - ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollLeft() : scrollIsRootNode ? 0 : scroll.scrollLeft() ) * mod) - ) - }; - - }, - - _generatePosition: function(event) { - - var o = this.options, scroll = this.cssPosition == 'absolute' && !(this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent, scrollIsRootNode = (/(html|body)/i).test(scroll[0].tagName); - - // This is another very weird special case that only happens for relative elements: - // 1. If the css position is relative - // 2. and the scroll parent is the document or similar to the offset parent - // we have to refresh the relative offset during the scroll so there are no jumps - if(this.cssPosition == 'relative' && !(this.scrollParent[0] != document && this.scrollParent[0] != this.offsetParent[0])) { - this.offset.relative = this._getRelativeOffset(); - } - - var pageX = event.pageX; - var pageY = event.pageY; - - /* - * - Position constraining - - * Constrain the position to a mix of grid, containment. - */ - - if(this.originalPosition) { //If we are not dragging yet, we won't check for options - - if(this.containment) { - if(event.pageX - this.offset.click.left < this.containment[0]) pageX = this.containment[0] + this.offset.click.left; - if(event.pageY - this.offset.click.top < this.containment[1]) pageY = this.containment[1] + this.offset.click.top; - if(event.pageX - this.offset.click.left > this.containment[2]) pageX = this.containment[2] + this.offset.click.left; - if(event.pageY - this.offset.click.top > this.containment[3]) pageY = this.containment[3] + this.offset.click.top; - } - - if(o.grid) { - var top = this.originalPageY + Math.round((pageY - this.originalPageY) / o.grid[1]) * o.grid[1]; - pageY = this.containment ? (!(top - this.offset.click.top < this.containment[1] || top - this.offset.click.top > this.containment[3]) ? top : (!(top - this.offset.click.top < this.containment[1]) ? top - o.grid[1] : top + o.grid[1])) : top; - - var left = this.originalPageX + Math.round((pageX - this.originalPageX) / o.grid[0]) * o.grid[0]; - pageX = this.containment ? (!(left - this.offset.click.left < this.containment[0] || left - this.offset.click.left > this.containment[2]) ? left : (!(left - this.offset.click.left < this.containment[0]) ? left - o.grid[0] : left + o.grid[0])) : left; - } - - } - - return { - top: ( - pageY // The absolute mouse position - - this.offset.click.top // Click offset (relative to the element) - - this.offset.relative.top // Only for relative positioned nodes: Relative offset from element to offset parent - - this.offset.parent.top // The offsetParent's offset without borders (offset + border) - + ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollTop() : ( scrollIsRootNode ? 0 : scroll.scrollTop() ) )) - ), - left: ( - pageX // The absolute mouse position - - this.offset.click.left // Click offset (relative to the element) - - this.offset.relative.left // Only for relative positioned nodes: Relative offset from element to offset parent - - this.offset.parent.left // The offsetParent's offset without borders (offset + border) - + ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollLeft() : scrollIsRootNode ? 0 : scroll.scrollLeft() )) - ) - }; - - }, - - _clear: function() { - this.helper.removeClass("ui-draggable-dragging"); - if(this.helper[0] != this.element[0] && !this.cancelHelperRemoval) this.helper.remove(); - //if($.ui.ddmanager) $.ui.ddmanager.current = null; - this.helper = null; - this.cancelHelperRemoval = false; - }, - - // From now on bulk stuff - mainly helpers - - _trigger: function(type, event, ui) { - ui = ui || this._uiHash(); - $.ui.plugin.call(this, type, [event, ui]); - if(type == "drag") this.positionAbs = this._convertPositionTo("absolute"); //The absolute position has to be recalculated after plugins - return $.widget.prototype._trigger.call(this, type, event, ui); - }, - - plugins: {}, - - _uiHash: function(event) { - return { - helper: this.helper, - position: this.position, - absolutePosition: this.positionAbs, //deprecated - offset: this.positionAbs - }; - } - -})); - -$.extend($.ui.draggable, { - version: "1.7.2", - eventPrefix: "drag", - defaults: { - addClasses: true, - appendTo: "parent", - axis: false, - cancel: ":input,option", - connectToSortable: false, - containment: false, - cursor: "auto", - cursorAt: false, - delay: 0, - distance: 1, - grid: false, - handle: false, - helper: "original", - iframeFix: false, - opacity: false, - refreshPositions: false, - revert: false, - revertDuration: 500, - scope: "default", - scroll: true, - scrollSensitivity: 20, - scrollSpeed: 20, - snap: false, - snapMode: "both", - snapTolerance: 20, - stack: false, - zIndex: false - } -}); - -$.ui.plugin.add("draggable", "connectToSortable", { - start: function(event, ui) { - - var inst = $(this).data("draggable"), o = inst.options, - uiSortable = $.extend({}, ui, { item: inst.element }); - inst.sortables = []; - $(o.connectToSortable).each(function() { - var sortable = $.data(this, 'sortable'); - if (sortable && !sortable.options.disabled) { - inst.sortables.push({ - instance: sortable, - shouldRevert: sortable.options.revert - }); - sortable._refreshItems(); //Do a one-time refresh at start to refresh the containerCache - sortable._trigger("activate", event, uiSortable); - } - }); - - }, - stop: function(event, ui) { - - //If we are still over the sortable, we fake the stop event of the sortable, but also remove helper - var inst = $(this).data("draggable"), - uiSortable = $.extend({}, ui, { item: inst.element }); - - $.each(inst.sortables, function() { - if(this.instance.isOver) { - - this.instance.isOver = 0; - - inst.cancelHelperRemoval = true; //Don't remove the helper in the draggable instance - this.instance.cancelHelperRemoval = false; //Remove it in the sortable instance (so sortable plugins like revert still work) - - //The sortable revert is supported, and we have to set a temporary dropped variable on the draggable to support revert: 'valid/invalid' - if(this.shouldRevert) this.instance.options.revert = true; - - //Trigger the stop of the sortable - this.instance._mouseStop(event); - - this.instance.options.helper = this.instance.options._helper; - - //If the helper has been the original item, restore properties in the sortable - if(inst.options.helper == 'original') - this.instance.currentItem.css({ top: 'auto', left: 'auto' }); - - } else { - this.instance.cancelHelperRemoval = false; //Remove the helper in the sortable instance - this.instance._trigger("deactivate", event, uiSortable); - } - - }); - - }, - drag: function(event, ui) { - - var inst = $(this).data("draggable"), self = this; - - var checkPos = function(o) { - var dyClick = this.offset.click.top, dxClick = this.offset.click.left; - var helperTop = this.positionAbs.top, helperLeft = this.positionAbs.left; - var itemHeight = o.height, itemWidth = o.width; - var itemTop = o.top, itemLeft = o.left; - - return $.ui.isOver(helperTop + dyClick, helperLeft + dxClick, itemTop, itemLeft, itemHeight, itemWidth); - }; - - $.each(inst.sortables, function(i) { - - //Copy over some variables to allow calling the sortable's native _intersectsWith - this.instance.positionAbs = inst.positionAbs; - this.instance.helperProportions = inst.helperProportions; - this.instance.offset.click = inst.offset.click; - - if(this.instance._intersectsWith(this.instance.containerCache)) { - - //If it intersects, we use a little isOver variable and set it once, so our move-in stuff gets fired only once - if(!this.instance.isOver) { - - this.instance.isOver = 1; - //Now we fake the start of dragging for the sortable instance, - //by cloning the list group item, appending it to the sortable and using it as inst.currentItem - //We can then fire the start event of the sortable with our passed browser event, and our own helper (so it doesn't create a new one) - this.instance.currentItem = $(self).clone().appendTo(this.instance.element).data("sortable-item", true); - this.instance.options._helper = this.instance.options.helper; //Store helper option to later restore it - this.instance.options.helper = function() { return ui.helper[0]; }; - - event.target = this.instance.currentItem[0]; - this.instance._mouseCapture(event, true); - this.instance._mouseStart(event, true, true); - - //Because the browser event is way off the new appended portlet, we modify a couple of variables to reflect the changes - this.instance.offset.click.top = inst.offset.click.top; - this.instance.offset.click.left = inst.offset.click.left; - this.instance.offset.parent.left -= inst.offset.parent.left - this.instance.offset.parent.left; - this.instance.offset.parent.top -= inst.offset.parent.top - this.instance.offset.parent.top; - - inst._trigger("toSortable", event); - inst.dropped = this.instance.element; //draggable revert needs that - //hack so receive/update callbacks work (mostly) - inst.currentItem = inst.element; - this.instance.fromOutside = inst; - - } - - //Provided we did all the previous steps, we can fire the drag event of the sortable on every draggable drag, when it intersects with the sortable - if(this.instance.currentItem) this.instance._mouseDrag(event); - - } else { - - //If it doesn't intersect with the sortable, and it intersected before, - //we fake the drag stop of the sortable, but make sure it doesn't remove the helper by using cancelHelperRemoval - if(this.instance.isOver) { - - this.instance.isOver = 0; - this.instance.cancelHelperRemoval = true; - - //Prevent reverting on this forced stop - this.instance.options.revert = false; - - // The out event needs to be triggered independently - this.instance._trigger('out', event, this.instance._uiHash(this.instance)); - - this.instance._mouseStop(event, true); - this.instance.options.helper = this.instance.options._helper; - - //Now we remove our currentItem, the list group clone again, and the placeholder, and animate the helper back to it's original size - this.instance.currentItem.remove(); - if(this.instance.placeholder) this.instance.placeholder.remove(); - - inst._trigger("fromSortable", event); - inst.dropped = false; //draggable revert needs that - } - - }; - - }); - - } -}); - -$.ui.plugin.add("draggable", "cursor", { - start: function(event, ui) { - var t = $('body'), o = $(this).data('draggable').options; - if (t.css("cursor")) o._cursor = t.css("cursor"); - t.css("cursor", o.cursor); - }, - stop: function(event, ui) { - var o = $(this).data('draggable').options; - if (o._cursor) $('body').css("cursor", o._cursor); - } -}); - -$.ui.plugin.add("draggable", "iframeFix", { - start: function(event, ui) { - var o = $(this).data('draggable').options; - $(o.iframeFix === true ? "iframe" : o.iframeFix).each(function() { - $('<div class="ui-draggable-iframeFix" style="background: #fff;"></div>') - .css({ - width: this.offsetWidth+"px", height: this.offsetHeight+"px", - position: "absolute", opacity: "0.001", zIndex: 1000 - }) - .css($(this).offset()) - .appendTo("body"); - }); - }, - stop: function(event, ui) { - $("div.ui-draggable-iframeFix").each(function() { this.parentNode.removeChild(this); }); //Remove frame helpers - } -}); - -$.ui.plugin.add("draggable", "opacity", { - start: function(event, ui) { - var t = $(ui.helper), o = $(this).data('draggable').options; - if(t.css("opacity")) o._opacity = t.css("opacity"); - t.css('opacity', o.opacity); - }, - stop: function(event, ui) { - var o = $(this).data('draggable').options; - if(o._opacity) $(ui.helper).css('opacity', o._opacity); - } -}); - -$.ui.plugin.add("draggable", "scroll", { - start: function(event, ui) { - var i = $(this).data("draggable"); - if(i.scrollParent[0] != document && i.scrollParent[0].tagName != 'HTML') i.overflowOffset = i.scrollParent.offset(); - }, - drag: function(event, ui) { - - var i = $(this).data("draggable"), o = i.options, scrolled = false; - - if(i.scrollParent[0] != document && i.scrollParent[0].tagName != 'HTML') { - - if(!o.axis || o.axis != 'x') { - if((i.overflowOffset.top + i.scrollParent[0].offsetHeight) - event.pageY < o.scrollSensitivity) - i.scrollParent[0].scrollTop = scrolled = i.scrollParent[0].scrollTop + o.scrollSpeed; - else if(event.pageY - i.overflowOffset.top < o.scrollSensitivity) - i.scrollParent[0].scrollTop = scrolled = i.scrollParent[0].scrollTop - o.scrollSpeed; - } - - if(!o.axis || o.axis != 'y') { - if((i.overflowOffset.left + i.scrollParent[0].offsetWidth) - event.pageX < o.scrollSensitivity) - i.scrollParent[0].scrollLeft = scrolled = i.scrollParent[0].scrollLeft + o.scrollSpeed; - else if(event.pageX - i.overflowOffset.left < o.scrollSensitivity) - i.scrollParent[0].scrollLeft = scrolled = i.scrollParent[0].scrollLeft - o.scrollSpeed; - } - - } else { - - if(!o.axis || o.axis != 'x') { - if(event.pageY - $(document).scrollTop() < o.scrollSensitivity) - scrolled = $(document).scrollTop($(document).scrollTop() - o.scrollSpeed); - else if($(window).height() - (event.pageY - $(document).scrollTop()) < o.scrollSensitivity) - scrolled = $(document).scrollTop($(document).scrollTop() + o.scrollSpeed); - } - - if(!o.axis || o.axis != 'y') { - if(event.pageX - $(document).scrollLeft() < o.scrollSensitivity) - scrolled = $(document).scrollLeft($(document).scrollLeft() - o.scrollSpeed); - else if($(window).width() - (event.pageX - $(document).scrollLeft()) < o.scrollSensitivity) - scrolled = $(document).scrollLeft($(document).scrollLeft() + o.scrollSpeed); - } - - } - - if(scrolled !== false && $.ui.ddmanager && !o.dropBehaviour) - $.ui.ddmanager.prepareOffsets(i, event); - - } -}); - -$.ui.plugin.add("draggable", "snap", { - start: function(event, ui) { - - var i = $(this).data("draggable"), o = i.options; - i.snapElements = []; - - $(o.snap.constructor != String ? ( o.snap.items || ':data(draggable)' ) : o.snap).each(function() { - var $t = $(this); var $o = $t.offset(); - if(this != i.element[0]) i.snapElements.push({ - item: this, - width: $t.outerWidth(), height: $t.outerHeight(), - top: $o.top, left: $o.left - }); - }); - - }, - drag: function(event, ui) { - - var inst = $(this).data("draggable"), o = inst.options; - var d = o.snapTolerance; - - var x1 = ui.offset.left, x2 = x1 + inst.helperProportions.width, - y1 = ui.offset.top, y2 = y1 + inst.helperProportions.height; - - for (var i = inst.snapElements.length - 1; i >= 0; i--){ - - var l = inst.snapElements[i].left, r = l + inst.snapElements[i].width, - t = inst.snapElements[i].top, b = t + inst.snapElements[i].height; - - //Yes, I know, this is insane ;) - if(!((l-d < x1 && x1 < r+d && t-d < y1 && y1 < b+d) || (l-d < x1 && x1 < r+d && t-d < y2 && y2 < b+d) || (l-d < x2 && x2 < r+d && t-d < y1 && y1 < b+d) || (l-d < x2 && x2 < r+d && t-d < y2 && y2 < b+d))) { - if(inst.snapElements[i].snapping) (inst.options.snap.release && inst.options.snap.release.call(inst.element, event, $.extend(inst._uiHash(), { snapItem: inst.snapElements[i].item }))); - inst.snapElements[i].snapping = false; - continue; - } - - if(o.snapMode != 'inner') { - var ts = Math.abs(t - y2) <= d; - var bs = Math.abs(b - y1) <= d; - var ls = Math.abs(l - x2) <= d; - var rs = Math.abs(r - x1) <= d; - if(ts) ui.position.top = inst._convertPositionTo("relative", { top: t - inst.helperProportions.height, left: 0 }).top - inst.margins.top; - if(bs) ui.position.top = inst._convertPositionTo("relative", { top: b, left: 0 }).top - inst.margins.top; - if(ls) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: l - inst.helperProportions.width }).left - inst.margins.left; - if(rs) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: r }).left - inst.margins.left; - } - - var first = (ts || bs || ls || rs); - - if(o.snapMode != 'outer') { - var ts = Math.abs(t - y1) <= d; - var bs = Math.abs(b - y2) <= d; - var ls = Math.abs(l - x1) <= d; - var rs = Math.abs(r - x2) <= d; - if(ts) ui.position.top = inst._convertPositionTo("relative", { top: t, left: 0 }).top - inst.margins.top; - if(bs) ui.position.top = inst._convertPositionTo("relative", { top: b - inst.helperProportions.height, left: 0 }).top - inst.margins.top; - if(ls) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: l }).left - inst.margins.left; - if(rs) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: r - inst.helperProportions.width }).left - inst.margins.left; - } - - if(!inst.snapElements[i].snapping && (ts || bs || ls || rs || first)) - (inst.options.snap.snap && inst.options.snap.snap.call(inst.element, event, $.extend(inst._uiHash(), { snapItem: inst.snapElements[i].item }))); - inst.snapElements[i].snapping = (ts || bs || ls || rs || first); - - }; - - } -}); - -$.ui.plugin.add("draggable", "stack", { - start: function(event, ui) { - - var o = $(this).data("draggable").options; - - var group = $.makeArray($(o.stack.group)).sort(function(a,b) { - return (parseInt($(a).css("zIndex"),10) || o.stack.min) - (parseInt($(b).css("zIndex"),10) || o.stack.min); - }); - - $(group).each(function(i) { - this.style.zIndex = o.stack.min + i; - }); - - this[0].style.zIndex = o.stack.min + group.length; - - } -}); - -$.ui.plugin.add("draggable", "zIndex", { - start: function(event, ui) { - var t = $(ui.helper), o = $(this).data("draggable").options; - if(t.css("zIndex")) o._zIndex = t.css("zIndex"); - t.css('zIndex', o.zIndex); - }, - stop: function(event, ui) { - var o = $(this).data("draggable").options; - if(o._zIndex) $(ui.helper).css('zIndex', o._zIndex); - } -}); - -})(jQuery); diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/js/ui.droppable.js b/examples/lessons/6_Maths_AddingAndSubtractingVariables/js/ui.droppable.js deleted file mode 100755 index 8e7be33..0000000 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/js/ui.droppable.js +++ /dev/null @@ -1,282 +0,0 @@ -/* - * jQuery UI Droppable 1.7.2 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Droppables - * - * Depends: - * ui.core.js - * ui.draggable.js - */ -(function($) { - -$.widget("ui.droppable", { - - _init: function() { - - var o = this.options, accept = o.accept; - this.isover = 0; this.isout = 1; - - this.options.accept = this.options.accept && $.isFunction(this.options.accept) ? this.options.accept : function(d) { - return d.is(accept); - }; - - //Store the droppable's proportions - this.proportions = { width: this.element[0].offsetWidth, height: this.element[0].offsetHeight }; - - // Add the reference and positions to the manager - $.ui.ddmanager.droppables[this.options.scope] = $.ui.ddmanager.droppables[this.options.scope] || []; - $.ui.ddmanager.droppables[this.options.scope].push(this); - - (this.options.addClasses && this.element.addClass("ui-droppable")); - - }, - - destroy: function() { - var drop = $.ui.ddmanager.droppables[this.options.scope]; - for ( var i = 0; i < drop.length; i++ ) - if ( drop[i] == this ) - drop.splice(i, 1); - - this.element - .removeClass("ui-droppable ui-droppable-disabled") - .removeData("droppable") - .unbind(".droppable"); - }, - - _setData: function(key, value) { - - if(key == 'accept') { - this.options.accept = value && $.isFunction(value) ? value : function(d) { - return d.is(value); - }; - } else { - $.widget.prototype._setData.apply(this, arguments); - } - - }, - - _activate: function(event) { - var draggable = $.ui.ddmanager.current; - if(this.options.activeClass) this.element.addClass(this.options.activeClass); - (draggable && this._trigger('activate', event, this.ui(draggable))); - }, - - _deactivate: function(event) { - var draggable = $.ui.ddmanager.current; - if(this.options.activeClass) this.element.removeClass(this.options.activeClass); - (draggable && this._trigger('deactivate', event, this.ui(draggable))); - }, - - _over: function(event) { - - var draggable = $.ui.ddmanager.current; - if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return; // Bail if draggable and droppable are same element - - if (this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - if(this.options.hoverClass) this.element.addClass(this.options.hoverClass); - this._trigger('over', event, this.ui(draggable)); - } - - }, - - _out: function(event) { - - var draggable = $.ui.ddmanager.current; - if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return; // Bail if draggable and droppable are same element - - if (this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - if(this.options.hoverClass) this.element.removeClass(this.options.hoverClass); - this._trigger('out', event, this.ui(draggable)); - } - - }, - - _drop: function(event,custom) { - - var draggable = custom || $.ui.ddmanager.current; - if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return false; // Bail if draggable and droppable are same element - - var childrenIntersection = false; - this.element.find(":data(droppable)").not(".ui-draggable-dragging").each(function() { - var inst = $.data(this, 'droppable'); - if(inst.options.greedy && $.ui.intersect(draggable, $.extend(inst, { offset: inst.element.offset() }), inst.options.tolerance)) { - childrenIntersection = true; return false; - } - }); - if(childrenIntersection) return false; - - if(this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - if(this.options.activeClass) this.element.removeClass(this.options.activeClass); - if(this.options.hoverClass) this.element.removeClass(this.options.hoverClass); - this._trigger('drop', event, this.ui(draggable)); - return this.element; - } - - return false; - - }, - - ui: function(c) { - return { - draggable: (c.currentItem || c.element), - helper: c.helper, - position: c.position, - absolutePosition: c.positionAbs, //deprecated - offset: c.positionAbs - }; - } - -}); - -$.extend($.ui.droppable, { - version: "1.7.2", - eventPrefix: 'drop', - defaults: { - accept: '*', - activeClass: false, - addClasses: true, - greedy: false, - hoverClass: false, - scope: 'default', - tolerance: 'intersect' - } -}); - -$.ui.intersect = function(draggable, droppable, toleranceMode) { - - if (!droppable.offset) return false; - - var x1 = (draggable.positionAbs || draggable.position.absolute).left, x2 = x1 + draggable.helperProportions.width, - y1 = (draggable.positionAbs || draggable.position.absolute).top, y2 = y1 + draggable.helperProportions.height; - var l = droppable.offset.left, r = l + droppable.proportions.width, - t = droppable.offset.top, b = t + droppable.proportions.height; - - switch (toleranceMode) { - case 'fit': - return (l < x1 && x2 < r - && t < y1 && y2 < b); - break; - case 'intersect': - return (l < x1 + (draggable.helperProportions.width / 2) // Right Half - && x2 - (draggable.helperProportions.width / 2) < r // Left Half - && t < y1 + (draggable.helperProportions.height / 2) // Bottom Half - && y2 - (draggable.helperProportions.height / 2) < b ); // Top Half - break; - case 'pointer': - var draggableLeft = ((draggable.positionAbs || draggable.position.absolute).left + (draggable.clickOffset || draggable.offset.click).left), - draggableTop = ((draggable.positionAbs || draggable.position.absolute).top + (draggable.clickOffset || draggable.offset.click).top), - isOver = $.ui.isOver(draggableTop, draggableLeft, t, l, droppable.proportions.height, droppable.proportions.width); - return isOver; - break; - case 'touch': - return ( - (y1 >= t && y1 <= b) || // Top edge touching - (y2 >= t && y2 <= b) || // Bottom edge touching - (y1 < t && y2 > b) // Surrounded vertically - ) && ( - (x1 >= l && x1 <= r) || // Left edge touching - (x2 >= l && x2 <= r) || // Right edge touching - (x1 < l && x2 > r) // Surrounded horizontally - ); - break; - default: - return false; - break; - } - -}; - -/* - This manager tracks offsets of draggables and droppables -*/ -$.ui.ddmanager = { - current: null, - droppables: { 'default': [] }, - prepareOffsets: function(t, event) { - - var m = $.ui.ddmanager.droppables[t.options.scope]; - var type = event ? event.type : null; // workaround for #2317 - var list = (t.currentItem || t.element).find(":data(droppable)").andSelf(); - - droppablesLoop: for (var i = 0; i < m.length; i++) { - - if(m[i].options.disabled || (t && !m[i].options.accept.call(m[i].element[0],(t.currentItem || t.element)))) continue; //No disabled and non-accepted - for (var j=0; j < list.length; j++) { if(list[j] == m[i].element[0]) { m[i].proportions.height = 0; continue droppablesLoop; } }; //Filter out elements in the current dragged item - m[i].visible = m[i].element.css("display") != "none"; if(!m[i].visible) continue; //If the element is not visible, continue - - m[i].offset = m[i].element.offset(); - m[i].proportions = { width: m[i].element[0].offsetWidth, height: m[i].element[0].offsetHeight }; - - if(type == "mousedown") m[i]._activate.call(m[i], event); //Activate the droppable if used directly from draggables - - } - - }, - drop: function(draggable, event) { - - var dropped = false; - $.each($.ui.ddmanager.droppables[draggable.options.scope], function() { - - if(!this.options) return; - if (!this.options.disabled && this.visible && $.ui.intersect(draggable, this, this.options.tolerance)) - dropped = this._drop.call(this, event); - - if (!this.options.disabled && this.visible && this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - this.isout = 1; this.isover = 0; - this._deactivate.call(this, event); - } - - }); - return dropped; - - }, - drag: function(draggable, event) { - - //If you have a highly dynamic page, you might try this option. It renders positions every time you move the mouse. - if(draggable.options.refreshPositions) $.ui.ddmanager.prepareOffsets(draggable, event); - - //Run through all droppables and check their positions based on specific tolerance options - - $.each($.ui.ddmanager.droppables[draggable.options.scope], function() { - - if(this.options.disabled || this.greedyChild || !this.visible) return; - var intersects = $.ui.intersect(draggable, this, this.options.tolerance); - - var c = !intersects && this.isover == 1 ? 'isout' : (intersects && this.isover == 0 ? 'isover' : null); - if(!c) return; - - var parentInstance; - if (this.options.greedy) { - var parent = this.element.parents(':data(droppable):eq(0)'); - if (parent.length) { - parentInstance = $.data(parent[0], 'droppable'); - parentInstance.greedyChild = (c == 'isover' ? 1 : 0); - } - } - - // we just moved into a greedy child - if (parentInstance && c == 'isover') { - parentInstance['isover'] = 0; - parentInstance['isout'] = 1; - parentInstance._out.call(parentInstance, event); - } - - this[c] = 1; this[c == 'isout' ? 'isover' : 'isout'] = 0; - this[c == "isover" ? "_over" : "_out"].call(this, event); - - // we just moved out of a greedy child - if (parentInstance && c == 'isout') { - parentInstance['isout'] = 0; - parentInstance['isover'] = 1; - parentInstance._over.call(parentInstance, event); - } - }); - - } -}; - -})(jQuery); diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/audio/correct.ogg b/examples/lessons/6_Maths_SetMultipleChoice/assets/audio/correct.ogg Binary files differdeleted file mode 100755 index a0d9e3a..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/audio/correct.ogg +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/audio/incorrect.ogg b/examples/lessons/6_Maths_SetMultipleChoice/assets/audio/incorrect.ogg Binary files differdeleted file mode 100755 index 4805e55..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/audio/incorrect.ogg +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/a.png b/examples/lessons/6_Maths_SetMultipleChoice/assets/image/a.png Binary files differdeleted file mode 100755 index 635ffa4..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/a.png +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/b.png b/examples/lessons/6_Maths_SetMultipleChoice/assets/image/b.png Binary files differdeleted file mode 100755 index a03655e..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/b.png +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/bg_footer.png b/examples/lessons/6_Maths_SetMultipleChoice/assets/image/bg_footer.png Binary files differdeleted file mode 100755 index 4bd44fa..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/bg_footer.png +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/bg_header.png b/examples/lessons/6_Maths_SetMultipleChoice/assets/image/bg_header.png Binary files differdeleted file mode 100755 index f421817..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/bg_header.png +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/bg_title_block.png b/examples/lessons/6_Maths_SetMultipleChoice/assets/image/bg_title_block.png Binary files differdeleted file mode 100755 index 7311891..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/bg_title_block.png +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_back.png b/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_back.png Binary files differdeleted file mode 100755 index d9fbf14..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_back.png +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_back_hover.png b/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_back_hover.png Binary files differdeleted file mode 100755 index 0911fcc..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_back_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_help.png b/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_help.png Binary files differdeleted file mode 100755 index 6753e9c..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_help.png +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_help_hover.png b/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_help_hover.png Binary files differdeleted file mode 100755 index d3ccd92..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_help_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_next.png b/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_next.png Binary files differdeleted file mode 100755 index 9d70993..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_next.png +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_next_hover.png b/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_next_hover.png Binary files differdeleted file mode 100755 index 2cd4d37..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_next_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_ole.png b/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_ole.png Binary files differdeleted file mode 100755 index 0e775e9..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_ole.png +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_ole_hover.png b/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_ole_hover.png Binary files differdeleted file mode 100755 index c43c5f7..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_ole_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_play_again.png b/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_play_again.png Binary files differdeleted file mode 100755 index 3594d18..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_play_again.png +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_play_again_hover.png b/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_play_again_hover.png Binary files differdeleted file mode 100755 index ebb8f8c..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_play_again_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_play_again_mouse_down.png b/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_play_again_mouse_down.png Binary files differdeleted file mode 100755 index 07d6e45..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_play_again_mouse_down.png +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_start.png b/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_start.png Binary files differdeleted file mode 100755 index 32e5f20..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_start.png +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_start_hover.png b/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_start_hover.png Binary files differdeleted file mode 100755 index 811ce78..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_start_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_start_mouse_down.png b/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_start_mouse_down.png Binary files differdeleted file mode 100755 index 5acd43b..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/btn_start_mouse_down.png +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/c.png b/examples/lessons/6_Maths_SetMultipleChoice/assets/image/c.png Binary files differdeleted file mode 100755 index cad4fc1..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/c.png +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/correct.png b/examples/lessons/6_Maths_SetMultipleChoice/assets/image/correct.png Binary files differdeleted file mode 100755 index f2dbc5a..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/correct.png +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/d.png b/examples/lessons/6_Maths_SetMultipleChoice/assets/image/d.png Binary files differdeleted file mode 100755 index 709a8ee..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/d.png +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/ques1def.png b/examples/lessons/6_Maths_SetMultipleChoice/assets/image/ques1def.png Binary files differdeleted file mode 100755 index 721e969..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/ques1def.png +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/ques2def.png b/examples/lessons/6_Maths_SetMultipleChoice/assets/image/ques2def.png Binary files differdeleted file mode 100755 index e5ebb6e..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/ques2def.png +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/ques3def.png b/examples/lessons/6_Maths_SetMultipleChoice/assets/image/ques3def.png Binary files differdeleted file mode 100755 index 044e758..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/ques3def.png +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/ques4def.png b/examples/lessons/6_Maths_SetMultipleChoice/assets/image/ques4def.png Binary files differdeleted file mode 100755 index 87e4e5c..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/ques4def.png +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/ques5def.png b/examples/lessons/6_Maths_SetMultipleChoice/assets/image/ques5def.png Binary files differdeleted file mode 100755 index b9f8f0c..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/ques5def.png +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/ques6def.png b/examples/lessons/6_Maths_SetMultipleChoice/assets/image/ques6def.png Binary files differdeleted file mode 100755 index 6e50a4b..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/ques6def.png +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/ques7def.png b/examples/lessons/6_Maths_SetMultipleChoice/assets/image/ques7def.png Binary files differdeleted file mode 100755 index b065e27..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/ques7def.png +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/ques8def.png b/examples/lessons/6_Maths_SetMultipleChoice/assets/image/ques8def.png Binary files differdeleted file mode 100755 index 280f318..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/ques8def.png +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/title_block_lt.png b/examples/lessons/6_Maths_SetMultipleChoice/assets/image/title_block_lt.png Binary files differdeleted file mode 100755 index b1c0e90..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/title_block_lt.png +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/title_block_rt.png b/examples/lessons/6_Maths_SetMultipleChoice/assets/image/title_block_rt.png Binary files differdeleted file mode 100755 index 275daaf..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/title_block_rt.png +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/volume.png b/examples/lessons/6_Maths_SetMultipleChoice/assets/image/volume.png Binary files differdeleted file mode 100755 index 4cf5397..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/volume.png +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/wrong.png b/examples/lessons/6_Maths_SetMultipleChoice/assets/image/wrong.png Binary files differdeleted file mode 100755 index edfe9c5..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/assets/image/wrong.png +++ /dev/null diff --git a/examples/lessons/6_Maths_SetMultipleChoice/css/lesson.css b/examples/lessons/6_Maths_SetMultipleChoice/css/lesson.css deleted file mode 100755 index 3c784d3..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/css/lesson.css +++ /dev/null @@ -1,224 +0,0 @@ -@CHARSET "UTF-8";
-/****** Page Styles ****/
-
-body {
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 10pt;
- margin: 0px;
- background-color: #FFFFCC;
-}
-#header {
- background-image: url(../assets/image/bg_header.png);
- background-repeat: repeat-x;
- height: 89px;
- width: 100%;
- position: absolute;
- left: 0px;
- top: 0px;
-}
-#topbtn_left {
- float: left;
- height: 60px;
- width: 60px;
- padding-top: 13px;
- padding-left: 5px;
-}
-
-
- #linkBack{
- width: 60px; height: 59px;
- background:url(../assets/image/btn_back.png);
- }
- #linkBack:hover{
- background:url(../assets/image/btn_back_hover.png);
- }
-
-#lesson_title {
- float: left;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 16pt;
- font-weight: bold;
- color: #FFFFFF;
- margin-left: 10px;
- background-image: url(../assets/image/bg_title_block.png);
-}
-#topbtn_right {
- float: right;
- height: 60px;
- width: 60px;
- padding-top: 13px;
- padding-right: 5px;
-}
- #linkHelp{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_help.png);
- }
- #linkHelp:hover{
- background:url(../assets/image/btn_help_hover.png);
- }
- #linkOle{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_ole.png);
- }
- #linkOle:hover{
- background:url(../assets/image/btn_ole_hover.png);
- }
- #linkNext{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_next.png);
- }
- #linkNext:hover{
- background:url(../assets/image/btn_next_hover.png);
- }
-#footer {
- background-image: url(../assets/image/bg_footer.png);
- background-repeat: repeat-x;
- position: absolute;
- height: 69px;
- width: 100%;
- left: 0px;
- bottom: 0px;
-}
-#score_box {
- float: left;
- padding-left: 10px;
- padding-top: 10px;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- color: #FFFF00;
- font-size: 16pt;
- font-weight: bold;
-}
-#botbtn_right {
- float: right;
- height: 55px;
- width: 251px;
- padding-right: 5px;
- padding-top: 5px;संख्यामा तर
-}
- #linkStart{
- width: 251px; height: 55px;
- background:url(../assets/image/btn_start.png);
- }
- #linkStart:hover{
- background:url(../assets/image/btn_start_hover.png);
- }
- #linkStart:active{
- background:url(../assets/image/btn_start_mouse_down.png);
- }
- #linkPlayAgain{
- width: 251px; height: 55px;
- background:url(../assets/image/btn_play_again.png);
- }
- #linkPlayAgain:hover{
- background:url(../assets/image/btn_play_again_hover.png);
- }
- #linkPlayAgain:active{
- background:url(../assets/image/btn_play_again_mouse_down.png);
- }
-
-/**** End of the page style ****/
-
-/**** Game Styles ****/
-
-a{
- color:#FFFFCC;
-}
-#currentTitle{
- width: 150px;
- height: 80xp;
- font:25px/30px "Courier New", Courier, monospace;
- font-weight: bold;
- color: red;
-}
-#content{
- margin: 0px auto;
- margin-top: 90px;
- width: 95%;
- height: 375px;
-
-}
-#section{
- margin: 0px auto;
-}
-
- #topText{
- width: 350px;
- height:25px;
- font: 15px/20px Arial, Helvetica, sans-serif;
- color: #FF9900;
- }
- #question{
- text-align:center;
- margin: 2px auto;
- padding:5px;
- width: 700px;
- height:30px;
- font: 20px/25px Arial, Helvetica, sans-serif;
- color: #0000FF;
- }
- #answer{
- margin: 2px auto;
- padding:2px;
- width: 600px;
- height: 80px;
- text-align:center;
- font: 20px/25px Arial, Helvetica, sans-serif;
- color: #000000;
- border: 5px groove #FF9900;
- }
-
-
- #optionSection{
- margin: 5px auto;
- margin-bottom: 2px;
- width: 550px;
- height: 210px;
- }
- .options{
- float:left;
- width: 44px;
- height: 46px;
- }
- .check{
- margin-top: 10px;
- float:left;
- width: 36px;
- height: 32px;
- }
- .optionText{
- float:left;
- margin-left:0.7em;
- width: 450px;
- height: 50px;
- font: 18px/50px Arial, Helvetica, sans-serif;
- color: #000000;
- }
-
-
-#gameOver{
- display:none;
- position:absolute;
- top: 40%;
- left: 20%;
- text-align:center;
- font: 30px/35px Verdana, Geneva, Arial, Helvetica, sans-serif;
- font-weight:bold;
- color:red;
-}
-#gameOverInfo{
- margin-top: 35px;
- text-align:center;
- font: 20px/25px Helvetica, Geneva, Arial, Verdana, sans-serif;
- font-weight:bold;
- color:#000000;
-
-}
-.specialText{
- font: 20px/25px Helvetica, Geneva, Arial, Verdana, sans-serif;
- font-weight:bold;
- color:#FF9900;
- border-bottom: 2px dotted #CCC;
-
-}
-
-
diff --git a/examples/lessons/6_Maths_SetMultipleChoice/index.html b/examples/lessons/6_Maths_SetMultipleChoice/index.html deleted file mode 100755 index d7f1249..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/index.html +++ /dev/null @@ -1,54 +0,0 @@ -<!DOCTYPE html>
-<head>
- <title>Class 6 Math Set Multiple Choice</title>
- <meta name="keywords" content="karma,javascript,html5,sugar,sugarlabs,gsoc,ole,nepal" />
- <link type="text/css" rel="stylesheet" href="css/lesson.css" />
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <link type="image/ico" rel="icon" href="../../assets/default/image/favicon.ico" />
- <script type="text/javascript" src="js/jquery-1.3.2.min.js"></script>
- <script type="text/javascript" src="js/lesson.js"></script>
-</head>
-<body>
- <div id="header">
- <div id="topbtn_left"><a href="http://olenepal.org"><div id="linkOle"></div></a></div>
- <div id="lesson_title">
- <img src="assets/image/title_block_lt.png" width="33" height="89" align="absmiddle" />
- Set Multiple Choice <span id="currentTitle"></span>
- <img src="assets/image/title_block_rt.png" width="33" height="89" align="absmiddle" />
- </div>
- <div id="topbtn_right"><a href="#"><div id="linkHelp"></div></a></div>
- <div id="topbtn_right"><a href="http://olenepal.org"><div id="linkOle"></div></a></div>
- <div id="topbtn_right"><a href="#"><div id="linkNext"></div></a></div>
- </div>
-
- <div id="content">
- <div id="section">
- <div id="topText">
- Click on the answer you think is correct.
- </div>
- <div id="question"></div>
- <div id="optionSection"></div>
- <div id="answer"></div>
- </div>
- <div id="gameOver"></div>
- <div id="help"></div>
- </div>
- <form name="delayForm">
- <input type="hidden" name="delayval" size="5">
- </form>
-
-
- <div id="footer">
- <div id="score_box">
- <form name="scoreForm">
- अंक:
- <input name="score" type="text" id="score" size="2" maxlength="2" /> |
- <input name="full_mark" type="text" id="full_mark" size="2" maxlength="2"/>
- </form>
- </div>
- <div id="botbtn_right"><a href="#"><div id="linkStart"></div></a></div>
- <div id="botbtn_right"><a href="#"><div id="linkPlayAgain"></div></a></div>
-
- </div>
-</body>
-</html>
diff --git a/examples/lessons/6_Maths_SetMultipleChoice/js/jquery-1.3.2.min.js b/examples/lessons/6_Maths_SetMultipleChoice/js/jquery-1.3.2.min.js deleted file mode 100755 index b1ae21d..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/js/jquery-1.3.2.min.js +++ /dev/null @@ -1,19 +0,0 @@ -/* - * jQuery JavaScript Library v1.3.2 - * http://jquery.com/ - * - * Copyright (c) 2009 John Resig - * Dual licensed under the MIT and GPL licenses. - * http://docs.jquery.com/License - * - * Date: 2009-02-19 17:34:21 -0500 (Thu, 19 Feb 2009) - * Revision: 6246 - */ -(function(){var l=this,g,y=l.jQuery,p=l.$,o=l.jQuery=l.$=function(E,F){return new o.fn.init(E,F)},D=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,f=/^.[^:#\[\.,]*$/;o.fn=o.prototype={init:function(E,H){E=E||document;if(E.nodeType){this[0]=E;this.length=1;this.context=E;return this}if(typeof E==="string"){var G=D.exec(E);if(G&&(G[1]||!H)){if(G[1]){E=o.clean([G[1]],H)}else{var I=document.getElementById(G[3]);if(I&&I.id!=G[3]){return o().find(E)}var F=o(I||[]);F.context=document;F.selector=E;return F}}else{return o(H).find(E)}}else{if(o.isFunction(E)){return o(document).ready(E)}}if(E.selector&&E.context){this.selector=E.selector;this.context=E.context}return this.setArray(o.isArray(E)?E:o.makeArray(E))},selector:"",jquery:"1.3.2",size:function(){return this.length},get:function(E){return E===g?Array.prototype.slice.call(this):this[E]},pushStack:function(F,H,E){var G=o(F);G.prevObject=this;G.context=this.context;if(H==="find"){G.selector=this.selector+(this.selector?" ":"")+E}else{if(H){G.selector=this.selector+"."+H+"("+E+")"}}return G},setArray:function(E){this.length=0;Array.prototype.push.apply(this,E);return this},each:function(F,E){return o.each(this,F,E)},index:function(E){return o.inArray(E&&E.jquery?E[0]:E,this)},attr:function(F,H,G){var E=F;if(typeof F==="string"){if(H===g){return this[0]&&o[G||"attr"](this[0],F)}else{E={};E[F]=H}}return this.each(function(I){for(F in E){o.attr(G?this.style:this,F,o.prop(this,E[F],G,I,F))}})},css:function(E,F){if((E=="width"||E=="height")&&parseFloat(F)<0){F=g}return this.attr(E,F,"curCSS")},text:function(F){if(typeof F!=="object"&&F!=null){return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(F))}var E="";o.each(F||this,function(){o.each(this.childNodes,function(){if(this.nodeType!=8){E+=this.nodeType!=1?this.nodeValue:o.fn.text([this])}})});return E},wrapAll:function(E){if(this[0]){var F=o(E,this[0].ownerDocument).clone();if(this[0].parentNode){F.insertBefore(this[0])}F.map(function(){var G=this;while(G.firstChild){G=G.firstChild}return G}).append(this)}return this},wrapInner:function(E){return this.each(function(){o(this).contents().wrapAll(E)})},wrap:function(E){return this.each(function(){o(this).wrapAll(E)})},append:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.appendChild(E)}})},prepend:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.insertBefore(E,this.firstChild)}})},before:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this)})},after:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this.nextSibling)})},end:function(){return this.prevObject||o([])},push:[].push,sort:[].sort,splice:[].splice,find:function(E){if(this.length===1){var F=this.pushStack([],"find",E);F.length=0;o.find(E,this[0],F);return F}else{return this.pushStack(o.unique(o.map(this,function(G){return o.find(E,G)})),"find",E)}},clone:function(G){var E=this.map(function(){if(!o.support.noCloneEvent&&!o.isXMLDoc(this)){var I=this.outerHTML;if(!I){var J=this.ownerDocument.createElement("div");J.appendChild(this.cloneNode(true));I=J.innerHTML}return o.clean([I.replace(/ jQuery\d+="(?:\d+|null)"/g,"").replace(/^\s*/,"")])[0]}else{return this.cloneNode(true)}});if(G===true){var H=this.find("*").andSelf(),F=0;E.find("*").andSelf().each(function(){if(this.nodeName!==H[F].nodeName){return}var I=o.data(H[F],"events");for(var K in I){for(var J in I[K]){o.event.add(this,K,I[K][J],I[K][J].data)}}F++})}return E},filter:function(E){return this.pushStack(o.isFunction(E)&&o.grep(this,function(G,F){return E.call(G,F)})||o.multiFilter(E,o.grep(this,function(F){return F.nodeType===1})),"filter",E)},closest:function(E){var G=o.expr.match.POS.test(E)?o(E):null,F=0;return this.map(function(){var H=this;while(H&&H.ownerDocument){if(G?G.index(H)>-1:o(H).is(E)){o.data(H,"closest",F);return H}H=H.parentNode;F++}})},not:function(E){if(typeof E==="string"){if(f.test(E)){return this.pushStack(o.multiFilter(E,this,true),"not",E)}else{E=o.multiFilter(E,this)}}var F=E.length&&E[E.length-1]!==g&&!E.nodeType;return this.filter(function(){return F?o.inArray(this,E)<0:this!=E})},add:function(E){return this.pushStack(o.unique(o.merge(this.get(),typeof E==="string"?o(E):o.makeArray(E))))},is:function(E){return !!E&&o.multiFilter(E,this).length>0},hasClass:function(E){return !!E&&this.is("."+E)},val:function(K){if(K===g){var E=this[0];if(E){if(o.nodeName(E,"option")){return(E.attributes.value||{}).specified?E.value:E.text}if(o.nodeName(E,"select")){var I=E.selectedIndex,L=[],M=E.options,H=E.type=="select-one";if(I<0){return null}for(var F=H?I:0,J=H?I+1:M.length;F<J;F++){var G=M[F];if(G.selected){K=o(G).val();if(H){return K}L.push(K)}}return L}return(E.value||"").replace(/\r/g,"")}return g}if(typeof K==="number"){K+=""}return this.each(function(){if(this.nodeType!=1){return}if(o.isArray(K)&&/radio|checkbox/.test(this.type)){this.checked=(o.inArray(this.value,K)>=0||o.inArray(this.name,K)>=0)}else{if(o.nodeName(this,"select")){var N=o.makeArray(K);o("option",this).each(function(){this.selected=(o.inArray(this.value,N)>=0||o.inArray(this.text,N)>=0)});if(!N.length){this.selectedIndex=-1}}else{this.value=K}}})},html:function(E){return E===g?(this[0]?this[0].innerHTML.replace(/ jQuery\d+="(?:\d+|null)"/g,""):null):this.empty().append(E)},replaceWith:function(E){return this.after(E).remove()},eq:function(E){return this.slice(E,+E+1)},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","))},map:function(E){return this.pushStack(o.map(this,function(G,F){return E.call(G,F,G)}))},andSelf:function(){return this.add(this.prevObject)},domManip:function(J,M,L){if(this[0]){var I=(this[0].ownerDocument||this[0]).createDocumentFragment(),F=o.clean(J,(this[0].ownerDocument||this[0]),I),H=I.firstChild;if(H){for(var G=0,E=this.length;G<E;G++){L.call(K(this[G],H),this.length>1||G>0?I.cloneNode(true):I)}}if(F){o.each(F,z)}}return this;function K(N,O){return M&&o.nodeName(N,"table")&&o.nodeName(O,"tr")?(N.getElementsByTagName("tbody")[0]||N.appendChild(N.ownerDocument.createElement("tbody"))):N}}};o.fn.init.prototype=o.fn;function z(E,F){if(F.src){o.ajax({url:F.src,async:false,dataType:"script"})}else{o.globalEval(F.text||F.textContent||F.innerHTML||"")}if(F.parentNode){F.parentNode.removeChild(F)}}function e(){return +new Date}o.extend=o.fn.extend=function(){var J=arguments[0]||{},H=1,I=arguments.length,E=false,G;if(typeof J==="boolean"){E=J;J=arguments[1]||{};H=2}if(typeof J!=="object"&&!o.isFunction(J)){J={}}if(I==H){J=this;--H}for(;H<I;H++){if((G=arguments[H])!=null){for(var F in G){var K=J[F],L=G[F];if(J===L){continue}if(E&&L&&typeof L==="object"&&!L.nodeType){J[F]=o.extend(E,K||(L.length!=null?[]:{}),L)}else{if(L!==g){J[F]=L}}}}}return J};var b=/z-?index|font-?weight|opacity|zoom|line-?height/i,q=document.defaultView||{},s=Object.prototype.toString;o.extend({noConflict:function(E){l.$=p;if(E){l.jQuery=y}return o},isFunction:function(E){return s.call(E)==="[object Function]"},isArray:function(E){return s.call(E)==="[object Array]"},isXMLDoc:function(E){return E.nodeType===9&&E.documentElement.nodeName!=="HTML"||!!E.ownerDocument&&o.isXMLDoc(E.ownerDocument)},globalEval:function(G){if(G&&/\S/.test(G)){var F=document.getElementsByTagName("head")[0]||document.documentElement,E=document.createElement("script");E.type="text/javascript";if(o.support.scriptEval){E.appendChild(document.createTextNode(G))}else{E.text=G}F.insertBefore(E,F.firstChild);F.removeChild(E)}},nodeName:function(F,E){return F.nodeName&&F.nodeName.toUpperCase()==E.toUpperCase()},each:function(G,K,F){var E,H=0,I=G.length;if(F){if(I===g){for(E in G){if(K.apply(G[E],F)===false){break}}}else{for(;H<I;){if(K.apply(G[H++],F)===false){break}}}}else{if(I===g){for(E in G){if(K.call(G[E],E,G[E])===false){break}}}else{for(var J=G[0];H<I&&K.call(J,H,J)!==false;J=G[++H]){}}}return G},prop:function(H,I,G,F,E){if(o.isFunction(I)){I=I.call(H,F)}return typeof I==="number"&&G=="curCSS"&&!b.test(E)?I+"px":I},className:{add:function(E,F){o.each((F||"").split(/\s+/),function(G,H){if(E.nodeType==1&&!o.className.has(E.className,H)){E.className+=(E.className?" ":"")+H}})},remove:function(E,F){if(E.nodeType==1){E.className=F!==g?o.grep(E.className.split(/\s+/),function(G){return !o.className.has(F,G)}).join(" "):""}},has:function(F,E){return F&&o.inArray(E,(F.className||F).toString().split(/\s+/))>-1}},swap:function(H,G,I){var E={};for(var F in G){E[F]=H.style[F];H.style[F]=G[F]}I.call(H);for(var F in G){H.style[F]=E[F]}},css:function(H,F,J,E){if(F=="width"||F=="height"){var L,G={position:"absolute",visibility:"hidden",display:"block"},K=F=="width"?["Left","Right"]:["Top","Bottom"];function I(){L=F=="width"?H.offsetWidth:H.offsetHeight;if(E==="border"){return}o.each(K,function(){if(!E){L-=parseFloat(o.curCSS(H,"padding"+this,true))||0}if(E==="margin"){L+=parseFloat(o.curCSS(H,"margin"+this,true))||0}else{L-=parseFloat(o.curCSS(H,"border"+this+"Width",true))||0}})}if(H.offsetWidth!==0){I()}else{o.swap(H,G,I)}return Math.max(0,Math.round(L))}return o.curCSS(H,F,J)},curCSS:function(I,F,G){var L,E=I.style;if(F=="opacity"&&!o.support.opacity){L=o.attr(E,"opacity");return L==""?"1":L}if(F.match(/float/i)){F=w}if(!G&&E&&E[F]){L=E[F]}else{if(q.getComputedStyle){if(F.match(/float/i)){F="float"}F=F.replace(/([A-Z])/g,"-$1").toLowerCase();var M=q.getComputedStyle(I,null);if(M){L=M.getPropertyValue(F)}if(F=="opacity"&&L==""){L="1"}}else{if(I.currentStyle){var J=F.replace(/\-(\w)/g,function(N,O){return O.toUpperCase()});L=I.currentStyle[F]||I.currentStyle[J];if(!/^\d+(px)?$/i.test(L)&&/^\d/.test(L)){var H=E.left,K=I.runtimeStyle.left;I.runtimeStyle.left=I.currentStyle.left;E.left=L||0;L=E.pixelLeft+"px";E.left=H;I.runtimeStyle.left=K}}}}return L},clean:function(F,K,I){K=K||document;if(typeof K.createElement==="undefined"){K=K.ownerDocument||K[0]&&K[0].ownerDocument||document}if(!I&&F.length===1&&typeof F[0]==="string"){var H=/^<(\w+)\s*\/?>$/.exec(F[0]);if(H){return[K.createElement(H[1])]}}var G=[],E=[],L=K.createElement("div");o.each(F,function(P,S){if(typeof S==="number"){S+=""}if(!S){return}if(typeof S==="string"){S=S.replace(/(<(\w+)[^>]*?)\/>/g,function(U,V,T){return T.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?U:V+"></"+T+">"});var O=S.replace(/^\s+/,"").substring(0,10).toLowerCase();var Q=!O.indexOf("<opt")&&[1,"<select multiple='multiple'>","</select>"]||!O.indexOf("<leg")&&[1,"<fieldset>","</fieldset>"]||O.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"<table>","</table>"]||!O.indexOf("<tr")&&[2,"<table><tbody>","</tbody></table>"]||(!O.indexOf("<td")||!O.indexOf("<th"))&&[3,"<table><tbody><tr>","</tr></tbody></table>"]||!O.indexOf("<col")&&[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"]||!o.support.htmlSerialize&&[1,"div<div>","</div>"]||[0,"",""];L.innerHTML=Q[1]+S+Q[2];while(Q[0]--){L=L.lastChild}if(!o.support.tbody){var R=/<tbody/i.test(S),N=!O.indexOf("<table")&&!R?L.firstChild&&L.firstChild.childNodes:Q[1]=="<table>"&&!R?L.childNodes:[];for(var M=N.length-1;M>=0;--M){if(o.nodeName(N[M],"tbody")&&!N[M].childNodes.length){N[M].parentNode.removeChild(N[M])}}}if(!o.support.leadingWhitespace&&/^\s/.test(S)){L.insertBefore(K.createTextNode(S.match(/^\s*/)[0]),L.firstChild)}S=o.makeArray(L.childNodes)}if(S.nodeType){G.push(S)}else{G=o.merge(G,S)}});if(I){for(var J=0;G[J];J++){if(o.nodeName(G[J],"script")&&(!G[J].type||G[J].type.toLowerCase()==="text/javascript")){E.push(G[J].parentNode?G[J].parentNode.removeChild(G[J]):G[J])}else{if(G[J].nodeType===1){G.splice.apply(G,[J+1,0].concat(o.makeArray(G[J].getElementsByTagName("script"))))}I.appendChild(G[J])}}return E}return G},attr:function(J,G,K){if(!J||J.nodeType==3||J.nodeType==8){return g}var H=!o.isXMLDoc(J),L=K!==g;G=H&&o.props[G]||G;if(J.tagName){var F=/href|src|style/.test(G);if(G=="selected"&&J.parentNode){J.parentNode.selectedIndex}if(G in J&&H&&!F){if(L){if(G=="type"&&o.nodeName(J,"input")&&J.parentNode){throw"type property can't be changed"}J[G]=K}if(o.nodeName(J,"form")&&J.getAttributeNode(G)){return J.getAttributeNode(G).nodeValue}if(G=="tabIndex"){var I=J.getAttributeNode("tabIndex");return I&&I.specified?I.value:J.nodeName.match(/(button|input|object|select|textarea)/i)?0:J.nodeName.match(/^(a|area)$/i)&&J.href?0:g}return J[G]}if(!o.support.style&&H&&G=="style"){return o.attr(J.style,"cssText",K)}if(L){J.setAttribute(G,""+K)}var E=!o.support.hrefNormalized&&H&&F?J.getAttribute(G,2):J.getAttribute(G);return E===null?g:E}if(!o.support.opacity&&G=="opacity"){if(L){J.zoom=1;J.filter=(J.filter||"").replace(/alpha\([^)]*\)/,"")+(parseInt(K)+""=="NaN"?"":"alpha(opacity="+K*100+")")}return J.filter&&J.filter.indexOf("opacity=")>=0?(parseFloat(J.filter.match(/opacity=([^)]*)/)[1])/100)+"":""}G=G.replace(/-([a-z])/ig,function(M,N){return N.toUpperCase()});if(L){J[G]=K}return J[G]},trim:function(E){return(E||"").replace(/^\s+|\s+$/g,"")},makeArray:function(G){var E=[];if(G!=null){var F=G.length;if(F==null||typeof G==="string"||o.isFunction(G)||G.setInterval){E[0]=G}else{while(F){E[--F]=G[F]}}}return E},inArray:function(G,H){for(var E=0,F=H.length;E<F;E++){if(H[E]===G){return E}}return -1},merge:function(H,E){var F=0,G,I=H.length;if(!o.support.getAll){while((G=E[F++])!=null){if(G.nodeType!=8){H[I++]=G}}}else{while((G=E[F++])!=null){H[I++]=G}}return H},unique:function(K){var F=[],E={};try{for(var G=0,H=K.length;G<H;G++){var J=o.data(K[G]);if(!E[J]){E[J]=true;F.push(K[G])}}}catch(I){F=K}return F},grep:function(F,J,E){var G=[];for(var H=0,I=F.length;H<I;H++){if(!E!=!J(F[H],H)){G.push(F[H])}}return G},map:function(E,J){var F=[];for(var G=0,H=E.length;G<H;G++){var I=J(E[G],G);if(I!=null){F[F.length]=I}}return F.concat.apply([],F)}});var C=navigator.userAgent.toLowerCase();o.browser={version:(C.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)||[0,"0"])[1],safari:/webkit/.test(C),opera:/opera/.test(C),msie:/msie/.test(C)&&!/opera/.test(C),mozilla:/mozilla/.test(C)&&!/(compatible|webkit)/.test(C)};o.each({parent:function(E){return E.parentNode},parents:function(E){return o.dir(E,"parentNode")},next:function(E){return o.nth(E,2,"nextSibling")},prev:function(E){return o.nth(E,2,"previousSibling")},nextAll:function(E){return o.dir(E,"nextSibling")},prevAll:function(E){return o.dir(E,"previousSibling")},siblings:function(E){return o.sibling(E.parentNode.firstChild,E)},children:function(E){return o.sibling(E.firstChild)},contents:function(E){return o.nodeName(E,"iframe")?E.contentDocument||E.contentWindow.document:o.makeArray(E.childNodes)}},function(E,F){o.fn[E]=function(G){var H=o.map(this,F);if(G&&typeof G=="string"){H=o.multiFilter(G,H)}return this.pushStack(o.unique(H),E,G)}});o.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(E,F){o.fn[E]=function(G){var J=[],L=o(G);for(var K=0,H=L.length;K<H;K++){var I=(K>0?this.clone(true):this).get();o.fn[F].apply(o(L[K]),I);J=J.concat(I)}return this.pushStack(J,E,G)}});o.each({removeAttr:function(E){o.attr(this,E,"");if(this.nodeType==1){this.removeAttribute(E)}},addClass:function(E){o.className.add(this,E)},removeClass:function(E){o.className.remove(this,E)},toggleClass:function(F,E){if(typeof E!=="boolean"){E=!o.className.has(this,F)}o.className[E?"add":"remove"](this,F)},remove:function(E){if(!E||o.filter(E,[this]).length){o("*",this).add([this]).each(function(){o.event.remove(this);o.removeData(this)});if(this.parentNode){this.parentNode.removeChild(this)}}},empty:function(){o(this).children().remove();while(this.firstChild){this.removeChild(this.firstChild)}}},function(E,F){o.fn[E]=function(){return this.each(F,arguments)}});function j(E,F){return E[0]&&parseInt(o.curCSS(E[0],F,true),10)||0}var h="jQuery"+e(),v=0,A={};o.extend({cache:{},data:function(F,E,G){F=F==l?A:F;var H=F[h];if(!H){H=F[h]=++v}if(E&&!o.cache[H]){o.cache[H]={}}if(G!==g){o.cache[H][E]=G}return E?o.cache[H][E]:H},removeData:function(F,E){F=F==l?A:F;var H=F[h];if(E){if(o.cache[H]){delete o.cache[H][E];E="";for(E in o.cache[H]){break}if(!E){o.removeData(F)}}}else{try{delete F[h]}catch(G){if(F.removeAttribute){F.removeAttribute(h)}}delete o.cache[H]}},queue:function(F,E,H){if(F){E=(E||"fx")+"queue";var G=o.data(F,E);if(!G||o.isArray(H)){G=o.data(F,E,o.makeArray(H))}else{if(H){G.push(H)}}}return G},dequeue:function(H,G){var E=o.queue(H,G),F=E.shift();if(!G||G==="fx"){F=E[0]}if(F!==g){F.call(H)}}});o.fn.extend({data:function(E,G){var H=E.split(".");H[1]=H[1]?"."+H[1]:"";if(G===g){var F=this.triggerHandler("getData"+H[1]+"!",[H[0]]);if(F===g&&this.length){F=o.data(this[0],E)}return F===g&&H[1]?this.data(H[0]):F}else{return this.trigger("setData"+H[1]+"!",[H[0],G]).each(function(){o.data(this,E,G)})}},removeData:function(E){return this.each(function(){o.removeData(this,E)})},queue:function(E,F){if(typeof E!=="string"){F=E;E="fx"}if(F===g){return o.queue(this[0],E)}return this.each(function(){var G=o.queue(this,E,F);if(E=="fx"&&G.length==1){G[0].call(this)}})},dequeue:function(E){return this.each(function(){o.dequeue(this,E)})}}); -/* - * Sizzle CSS Selector Engine - v0.9.3 - * Copyright 2009, The Dojo Foundation - * Released under the MIT, BSD, and GPL Licenses. - * More information: http://sizzlejs.com/ - */ -(function(){var R=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?/g,L=0,H=Object.prototype.toString;var F=function(Y,U,ab,ac){ab=ab||[];U=U||document;if(U.nodeType!==1&&U.nodeType!==9){return[]}if(!Y||typeof Y!=="string"){return ab}var Z=[],W,af,ai,T,ad,V,X=true;R.lastIndex=0;while((W=R.exec(Y))!==null){Z.push(W[1]);if(W[2]){V=RegExp.rightContext;break}}if(Z.length>1&&M.exec(Y)){if(Z.length===2&&I.relative[Z[0]]){af=J(Z[0]+Z[1],U)}else{af=I.relative[Z[0]]?[U]:F(Z.shift(),U);while(Z.length){Y=Z.shift();if(I.relative[Y]){Y+=Z.shift()}af=J(Y,af)}}}else{var ae=ac?{expr:Z.pop(),set:E(ac)}:F.find(Z.pop(),Z.length===1&&U.parentNode?U.parentNode:U,Q(U));af=F.filter(ae.expr,ae.set);if(Z.length>0){ai=E(af)}else{X=false}while(Z.length){var ah=Z.pop(),ag=ah;if(!I.relative[ah]){ah=""}else{ag=Z.pop()}if(ag==null){ag=U}I.relative[ah](ai,ag,Q(U))}}if(!ai){ai=af}if(!ai){throw"Syntax error, unrecognized expression: "+(ah||Y)}if(H.call(ai)==="[object Array]"){if(!X){ab.push.apply(ab,ai)}else{if(U.nodeType===1){for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&(ai[aa]===true||ai[aa].nodeType===1&&K(U,ai[aa]))){ab.push(af[aa])}}}else{for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&ai[aa].nodeType===1){ab.push(af[aa])}}}}}else{E(ai,ab)}if(V){F(V,U,ab,ac);if(G){hasDuplicate=false;ab.sort(G);if(hasDuplicate){for(var aa=1;aa<ab.length;aa++){if(ab[aa]===ab[aa-1]){ab.splice(aa--,1)}}}}}return ab};F.matches=function(T,U){return F(T,null,null,U)};F.find=function(aa,T,ab){var Z,X;if(!aa){return[]}for(var W=0,V=I.order.length;W<V;W++){var Y=I.order[W],X;if((X=I.match[Y].exec(aa))){var U=RegExp.leftContext;if(U.substr(U.length-1)!=="\\"){X[1]=(X[1]||"").replace(/\\/g,"");Z=I.find[Y](X,T,ab);if(Z!=null){aa=aa.replace(I.match[Y],"");break}}}}if(!Z){Z=T.getElementsByTagName("*")}return{set:Z,expr:aa}};F.filter=function(ad,ac,ag,W){var V=ad,ai=[],aa=ac,Y,T,Z=ac&&ac[0]&&Q(ac[0]);while(ad&&ac.length){for(var ab in I.filter){if((Y=I.match[ab].exec(ad))!=null){var U=I.filter[ab],ah,af;T=false;if(aa==ai){ai=[]}if(I.preFilter[ab]){Y=I.preFilter[ab](Y,aa,ag,ai,W,Z);if(!Y){T=ah=true}else{if(Y===true){continue}}}if(Y){for(var X=0;(af=aa[X])!=null;X++){if(af){ah=U(af,Y,X,aa);var ae=W^!!ah;if(ag&&ah!=null){if(ae){T=true}else{aa[X]=false}}else{if(ae){ai.push(af);T=true}}}}}if(ah!==g){if(!ag){aa=ai}ad=ad.replace(I.match[ab],"");if(!T){return[]}break}}}if(ad==V){if(T==null){throw"Syntax error, unrecognized expression: "+ad}else{break}}V=ad}return aa};var I=F.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF_-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF_-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*_-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+-]*)\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF_-]|\\.)+)(?:\((['"]*)((?:\([^\)]+\)|[^\2\(\)]*)+)\2\))?/},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(T){return T.getAttribute("href")}},relative:{"+":function(aa,T,Z){var X=typeof T==="string",ab=X&&!/\W/.test(T),Y=X&&!ab;if(ab&&!Z){T=T.toUpperCase()}for(var W=0,V=aa.length,U;W<V;W++){if((U=aa[W])){while((U=U.previousSibling)&&U.nodeType!==1){}aa[W]=Y||U&&U.nodeName===T?U||false:U===T}}if(Y){F.filter(T,aa,true)}},">":function(Z,U,aa){var X=typeof U==="string";if(X&&!/\W/.test(U)){U=aa?U:U.toUpperCase();for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){var W=Y.parentNode;Z[V]=W.nodeName===U?W:false}}}else{for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){Z[V]=X?Y.parentNode:Y.parentNode===U}}if(X){F.filter(U,Z,true)}}},"":function(W,U,Y){var V=L++,T=S;if(!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("parentNode",U,V,W,X,Y)},"~":function(W,U,Y){var V=L++,T=S;if(typeof U==="string"&&!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("previousSibling",U,V,W,X,Y)}},find:{ID:function(U,V,W){if(typeof V.getElementById!=="undefined"&&!W){var T=V.getElementById(U[1]);return T?[T]:[]}},NAME:function(V,Y,Z){if(typeof Y.getElementsByName!=="undefined"){var U=[],X=Y.getElementsByName(V[1]);for(var W=0,T=X.length;W<T;W++){if(X[W].getAttribute("name")===V[1]){U.push(X[W])}}return U.length===0?null:U}},TAG:function(T,U){return U.getElementsByTagName(T[1])}},preFilter:{CLASS:function(W,U,V,T,Z,aa){W=" "+W[1].replace(/\\/g,"")+" ";if(aa){return W}for(var X=0,Y;(Y=U[X])!=null;X++){if(Y){if(Z^(Y.className&&(" "+Y.className+" ").indexOf(W)>=0)){if(!V){T.push(Y)}}else{if(V){U[X]=false}}}}return false},ID:function(T){return T[1].replace(/\\/g,"")},TAG:function(U,T){for(var V=0;T[V]===false;V++){}return T[V]&&Q(T[V])?U[1]:U[1].toUpperCase()},CHILD:function(T){if(T[1]=="nth"){var U=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(T[2]=="even"&&"2n"||T[2]=="odd"&&"2n+1"||!/\D/.test(T[2])&&"0n+"+T[2]||T[2]);T[2]=(U[1]+(U[2]||1))-0;T[3]=U[3]-0}T[0]=L++;return T},ATTR:function(X,U,V,T,Y,Z){var W=X[1].replace(/\\/g,"");if(!Z&&I.attrMap[W]){X[1]=I.attrMap[W]}if(X[2]==="~="){X[4]=" "+X[4]+" "}return X},PSEUDO:function(X,U,V,T,Y){if(X[1]==="not"){if(X[3].match(R).length>1||/^\w/.test(X[3])){X[3]=F(X[3],null,null,U)}else{var W=F.filter(X[3],U,V,true^Y);if(!V){T.push.apply(T,W)}return false}}else{if(I.match.POS.test(X[0])||I.match.CHILD.test(X[0])){return true}}return X},POS:function(T){T.unshift(true);return T}},filters:{enabled:function(T){return T.disabled===false&&T.type!=="hidden"},disabled:function(T){return T.disabled===true},checked:function(T){return T.checked===true},selected:function(T){T.parentNode.selectedIndex;return T.selected===true},parent:function(T){return !!T.firstChild},empty:function(T){return !T.firstChild},has:function(V,U,T){return !!F(T[3],V).length},header:function(T){return/h\d/i.test(T.nodeName)},text:function(T){return"text"===T.type},radio:function(T){return"radio"===T.type},checkbox:function(T){return"checkbox"===T.type},file:function(T){return"file"===T.type},password:function(T){return"password"===T.type},submit:function(T){return"submit"===T.type},image:function(T){return"image"===T.type},reset:function(T){return"reset"===T.type},button:function(T){return"button"===T.type||T.nodeName.toUpperCase()==="BUTTON"},input:function(T){return/input|select|textarea|button/i.test(T.nodeName)}},setFilters:{first:function(U,T){return T===0},last:function(V,U,T,W){return U===W.length-1},even:function(U,T){return T%2===0},odd:function(U,T){return T%2===1},lt:function(V,U,T){return U<T[3]-0},gt:function(V,U,T){return U>T[3]-0},nth:function(V,U,T){return T[3]-0==U},eq:function(V,U,T){return T[3]-0==U}},filter:{PSEUDO:function(Z,V,W,aa){var U=V[1],X=I.filters[U];if(X){return X(Z,W,V,aa)}else{if(U==="contains"){return(Z.textContent||Z.innerText||"").indexOf(V[3])>=0}else{if(U==="not"){var Y=V[3];for(var W=0,T=Y.length;W<T;W++){if(Y[W]===Z){return false}}return true}}}},CHILD:function(T,W){var Z=W[1],U=T;switch(Z){case"only":case"first":while(U=U.previousSibling){if(U.nodeType===1){return false}}if(Z=="first"){return true}U=T;case"last":while(U=U.nextSibling){if(U.nodeType===1){return false}}return true;case"nth":var V=W[2],ac=W[3];if(V==1&&ac==0){return true}var Y=W[0],ab=T.parentNode;if(ab&&(ab.sizcache!==Y||!T.nodeIndex)){var X=0;for(U=ab.firstChild;U;U=U.nextSibling){if(U.nodeType===1){U.nodeIndex=++X}}ab.sizcache=Y}var aa=T.nodeIndex-ac;if(V==0){return aa==0}else{return(aa%V==0&&aa/V>=0)}}},ID:function(U,T){return U.nodeType===1&&U.getAttribute("id")===T},TAG:function(U,T){return(T==="*"&&U.nodeType===1)||U.nodeName===T},CLASS:function(U,T){return(" "+(U.className||U.getAttribute("class"))+" ").indexOf(T)>-1},ATTR:function(Y,W){var V=W[1],T=I.attrHandle[V]?I.attrHandle[V](Y):Y[V]!=null?Y[V]:Y.getAttribute(V),Z=T+"",X=W[2],U=W[4];return T==null?X==="!=":X==="="?Z===U:X==="*="?Z.indexOf(U)>=0:X==="~="?(" "+Z+" ").indexOf(U)>=0:!U?Z&&T!==false:X==="!="?Z!=U:X==="^="?Z.indexOf(U)===0:X==="$="?Z.substr(Z.length-U.length)===U:X==="|="?Z===U||Z.substr(0,U.length+1)===U+"-":false},POS:function(X,U,V,Y){var T=U[2],W=I.setFilters[T];if(W){return W(X,V,U,Y)}}}};var M=I.match.POS;for(var O in I.match){I.match[O]=RegExp(I.match[O].source+/(?![^\[]*\])(?![^\(]*\))/.source)}var E=function(U,T){U=Array.prototype.slice.call(U);if(T){T.push.apply(T,U);return T}return U};try{Array.prototype.slice.call(document.documentElement.childNodes)}catch(N){E=function(X,W){var U=W||[];if(H.call(X)==="[object Array]"){Array.prototype.push.apply(U,X)}else{if(typeof X.length==="number"){for(var V=0,T=X.length;V<T;V++){U.push(X[V])}}else{for(var V=0;X[V];V++){U.push(X[V])}}}return U}}var G;if(document.documentElement.compareDocumentPosition){G=function(U,T){var V=U.compareDocumentPosition(T)&4?-1:U===T?0:1;if(V===0){hasDuplicate=true}return V}}else{if("sourceIndex" in document.documentElement){G=function(U,T){var V=U.sourceIndex-T.sourceIndex;if(V===0){hasDuplicate=true}return V}}else{if(document.createRange){G=function(W,U){var V=W.ownerDocument.createRange(),T=U.ownerDocument.createRange();V.selectNode(W);V.collapse(true);T.selectNode(U);T.collapse(true);var X=V.compareBoundaryPoints(Range.START_TO_END,T);if(X===0){hasDuplicate=true}return X}}}}(function(){var U=document.createElement("form"),V="script"+(new Date).getTime();U.innerHTML="<input name='"+V+"'/>";var T=document.documentElement;T.insertBefore(U,T.firstChild);if(!!document.getElementById(V)){I.find.ID=function(X,Y,Z){if(typeof Y.getElementById!=="undefined"&&!Z){var W=Y.getElementById(X[1]);return W?W.id===X[1]||typeof W.getAttributeNode!=="undefined"&&W.getAttributeNode("id").nodeValue===X[1]?[W]:g:[]}};I.filter.ID=function(Y,W){var X=typeof Y.getAttributeNode!=="undefined"&&Y.getAttributeNode("id");return Y.nodeType===1&&X&&X.nodeValue===W}}T.removeChild(U)})();(function(){var T=document.createElement("div");T.appendChild(document.createComment(""));if(T.getElementsByTagName("*").length>0){I.find.TAG=function(U,Y){var X=Y.getElementsByTagName(U[1]);if(U[1]==="*"){var W=[];for(var V=0;X[V];V++){if(X[V].nodeType===1){W.push(X[V])}}X=W}return X}}T.innerHTML="<a href='#'></a>";if(T.firstChild&&typeof T.firstChild.getAttribute!=="undefined"&&T.firstChild.getAttribute("href")!=="#"){I.attrHandle.href=function(U){return U.getAttribute("href",2)}}})();if(document.querySelectorAll){(function(){var T=F,U=document.createElement("div");U.innerHTML="<p class='TEST'></p>";if(U.querySelectorAll&&U.querySelectorAll(".TEST").length===0){return}F=function(Y,X,V,W){X=X||document;if(!W&&X.nodeType===9&&!Q(X)){try{return E(X.querySelectorAll(Y),V)}catch(Z){}}return T(Y,X,V,W)};F.find=T.find;F.filter=T.filter;F.selectors=T.selectors;F.matches=T.matches})()}if(document.getElementsByClassName&&document.documentElement.getElementsByClassName){(function(){var T=document.createElement("div");T.innerHTML="<div class='test e'></div><div class='test'></div>";if(T.getElementsByClassName("e").length===0){return}T.lastChild.className="e";if(T.getElementsByClassName("e").length===1){return}I.order.splice(1,0,"CLASS");I.find.CLASS=function(U,V,W){if(typeof V.getElementsByClassName!=="undefined"&&!W){return V.getElementsByClassName(U[1])}}})()}function P(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1&&!ac){T.sizcache=Y;T.sizset=W}if(T.nodeName===Z){X=T;break}T=T[U]}ad[W]=X}}}function S(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1){if(!ac){T.sizcache=Y;T.sizset=W}if(typeof Z!=="string"){if(T===Z){X=true;break}}else{if(F.filter(Z,[T]).length>0){X=T;break}}}T=T[U]}ad[W]=X}}}var K=document.compareDocumentPosition?function(U,T){return U.compareDocumentPosition(T)&16}:function(U,T){return U!==T&&(U.contains?U.contains(T):true)};var Q=function(T){return T.nodeType===9&&T.documentElement.nodeName!=="HTML"||!!T.ownerDocument&&Q(T.ownerDocument)};var J=function(T,aa){var W=[],X="",Y,V=aa.nodeType?[aa]:aa;while((Y=I.match.PSEUDO.exec(T))){X+=Y[0];T=T.replace(I.match.PSEUDO,"")}T=I.relative[T]?T+"*":T;for(var Z=0,U=V.length;Z<U;Z++){F(T,V[Z],W)}return F.filter(X,W)};o.find=F;o.filter=F.filter;o.expr=F.selectors;o.expr[":"]=o.expr.filters;F.selectors.filters.hidden=function(T){return T.offsetWidth===0||T.offsetHeight===0};F.selectors.filters.visible=function(T){return T.offsetWidth>0||T.offsetHeight>0};F.selectors.filters.animated=function(T){return o.grep(o.timers,function(U){return T===U.elem}).length};o.multiFilter=function(V,T,U){if(U){V=":not("+V+")"}return F.matches(V,T)};o.dir=function(V,U){var T=[],W=V[U];while(W&&W!=document){if(W.nodeType==1){T.push(W)}W=W[U]}return T};o.nth=function(X,T,V,W){T=T||1;var U=0;for(;X;X=X[V]){if(X.nodeType==1&&++U==T){break}}return X};o.sibling=function(V,U){var T=[];for(;V;V=V.nextSibling){if(V.nodeType==1&&V!=U){T.push(V)}}return T};return;l.Sizzle=F})();o.event={add:function(I,F,H,K){if(I.nodeType==3||I.nodeType==8){return}if(I.setInterval&&I!=l){I=l}if(!H.guid){H.guid=this.guid++}if(K!==g){var G=H;H=this.proxy(G);H.data=K}var E=o.data(I,"events")||o.data(I,"events",{}),J=o.data(I,"handle")||o.data(I,"handle",function(){return typeof o!=="undefined"&&!o.event.triggered?o.event.handle.apply(arguments.callee.elem,arguments):g});J.elem=I;o.each(F.split(/\s+/),function(M,N){var O=N.split(".");N=O.shift();H.type=O.slice().sort().join(".");var L=E[N];if(o.event.specialAll[N]){o.event.specialAll[N].setup.call(I,K,O)}if(!L){L=E[N]={};if(!o.event.special[N]||o.event.special[N].setup.call(I,K,O)===false){if(I.addEventListener){I.addEventListener(N,J,false)}else{if(I.attachEvent){I.attachEvent("on"+N,J)}}}}L[H.guid]=H;o.event.global[N]=true});I=null},guid:1,global:{},remove:function(K,H,J){if(K.nodeType==3||K.nodeType==8){return}var G=o.data(K,"events"),F,E;if(G){if(H===g||(typeof H==="string"&&H.charAt(0)==".")){for(var I in G){this.remove(K,I+(H||""))}}else{if(H.type){J=H.handler;H=H.type}o.each(H.split(/\s+/),function(M,O){var Q=O.split(".");O=Q.shift();var N=RegExp("(^|\\.)"+Q.slice().sort().join(".*\\.")+"(\\.|$)");if(G[O]){if(J){delete G[O][J.guid]}else{for(var P in G[O]){if(N.test(G[O][P].type)){delete G[O][P]}}}if(o.event.specialAll[O]){o.event.specialAll[O].teardown.call(K,Q)}for(F in G[O]){break}if(!F){if(!o.event.special[O]||o.event.special[O].teardown.call(K,Q)===false){if(K.removeEventListener){K.removeEventListener(O,o.data(K,"handle"),false)}else{if(K.detachEvent){K.detachEvent("on"+O,o.data(K,"handle"))}}}F=null;delete G[O]}}})}for(F in G){break}if(!F){var L=o.data(K,"handle");if(L){L.elem=null}o.removeData(K,"events");o.removeData(K,"handle")}}},trigger:function(I,K,H,E){var G=I.type||I;if(!E){I=typeof I==="object"?I[h]?I:o.extend(o.Event(G),I):o.Event(G);if(G.indexOf("!")>=0){I.type=G=G.slice(0,-1);I.exclusive=true}if(!H){I.stopPropagation();if(this.global[G]){o.each(o.cache,function(){if(this.events&&this.events[G]){o.event.trigger(I,K,this.handle.elem)}})}}if(!H||H.nodeType==3||H.nodeType==8){return g}I.result=g;I.target=H;K=o.makeArray(K);K.unshift(I)}I.currentTarget=H;var J=o.data(H,"handle");if(J){J.apply(H,K)}if((!H[G]||(o.nodeName(H,"a")&&G=="click"))&&H["on"+G]&&H["on"+G].apply(H,K)===false){I.result=false}if(!E&&H[G]&&!I.isDefaultPrevented()&&!(o.nodeName(H,"a")&&G=="click")){this.triggered=true;try{H[G]()}catch(L){}}this.triggered=false;if(!I.isPropagationStopped()){var F=H.parentNode||H.ownerDocument;if(F){o.event.trigger(I,K,F,true)}}},handle:function(K){var J,E;K=arguments[0]=o.event.fix(K||l.event);K.currentTarget=this;var L=K.type.split(".");K.type=L.shift();J=!L.length&&!K.exclusive;var I=RegExp("(^|\\.)"+L.slice().sort().join(".*\\.")+"(\\.|$)");E=(o.data(this,"events")||{})[K.type];for(var G in E){var H=E[G];if(J||I.test(H.type)){K.handler=H;K.data=H.data;var F=H.apply(this,arguments);if(F!==g){K.result=F;if(F===false){K.preventDefault();K.stopPropagation()}}if(K.isImmediatePropagationStopped()){break}}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(H){if(H[h]){return H}var F=H;H=o.Event(F);for(var G=this.props.length,J;G;){J=this.props[--G];H[J]=F[J]}if(!H.target){H.target=H.srcElement||document}if(H.target.nodeType==3){H.target=H.target.parentNode}if(!H.relatedTarget&&H.fromElement){H.relatedTarget=H.fromElement==H.target?H.toElement:H.fromElement}if(H.pageX==null&&H.clientX!=null){var I=document.documentElement,E=document.body;H.pageX=H.clientX+(I&&I.scrollLeft||E&&E.scrollLeft||0)-(I.clientLeft||0);H.pageY=H.clientY+(I&&I.scrollTop||E&&E.scrollTop||0)-(I.clientTop||0)}if(!H.which&&((H.charCode||H.charCode===0)?H.charCode:H.keyCode)){H.which=H.charCode||H.keyCode}if(!H.metaKey&&H.ctrlKey){H.metaKey=H.ctrlKey}if(!H.which&&H.button){H.which=(H.button&1?1:(H.button&2?3:(H.button&4?2:0)))}return H},proxy:function(F,E){E=E||function(){return F.apply(this,arguments)};E.guid=F.guid=F.guid||E.guid||this.guid++;return E},special:{ready:{setup:B,teardown:function(){}}},specialAll:{live:{setup:function(E,F){o.event.add(this,F[0],c)},teardown:function(G){if(G.length){var E=0,F=RegExp("(^|\\.)"+G[0]+"(\\.|$)");o.each((o.data(this,"events").live||{}),function(){if(F.test(this.type)){E++}});if(E<1){o.event.remove(this,G[0],c)}}}}}};o.Event=function(E){if(!this.preventDefault){return new o.Event(E)}if(E&&E.type){this.originalEvent=E;this.type=E.type}else{this.type=E}this.timeStamp=e();this[h]=true};function k(){return false}function u(){return true}o.Event.prototype={preventDefault:function(){this.isDefaultPrevented=u;var E=this.originalEvent;if(!E){return}if(E.preventDefault){E.preventDefault()}E.returnValue=false},stopPropagation:function(){this.isPropagationStopped=u;var E=this.originalEvent;if(!E){return}if(E.stopPropagation){E.stopPropagation()}E.cancelBubble=true},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=u;this.stopPropagation()},isDefaultPrevented:k,isPropagationStopped:k,isImmediatePropagationStopped:k};var a=function(F){var E=F.relatedTarget;while(E&&E!=this){try{E=E.parentNode}catch(G){E=this}}if(E!=this){F.type=F.data;o.event.handle.apply(this,arguments)}};o.each({mouseover:"mouseenter",mouseout:"mouseleave"},function(F,E){o.event.special[E]={setup:function(){o.event.add(this,F,a,E)},teardown:function(){o.event.remove(this,F,a)}}});o.fn.extend({bind:function(F,G,E){return F=="unload"?this.one(F,G,E):this.each(function(){o.event.add(this,F,E||G,E&&G)})},one:function(G,H,F){var E=o.event.proxy(F||H,function(I){o(this).unbind(I,E);return(F||H).apply(this,arguments)});return this.each(function(){o.event.add(this,G,E,F&&H)})},unbind:function(F,E){return this.each(function(){o.event.remove(this,F,E)})},trigger:function(E,F){return this.each(function(){o.event.trigger(E,F,this)})},triggerHandler:function(E,G){if(this[0]){var F=o.Event(E);F.preventDefault();F.stopPropagation();o.event.trigger(F,G,this[0]);return F.result}},toggle:function(G){var E=arguments,F=1;while(F<E.length){o.event.proxy(G,E[F++])}return this.click(o.event.proxy(G,function(H){this.lastToggle=(this.lastToggle||0)%F;H.preventDefault();return E[this.lastToggle++].apply(this,arguments)||false}))},hover:function(E,F){return this.mouseenter(E).mouseleave(F)},ready:function(E){B();if(o.isReady){E.call(document,o)}else{o.readyList.push(E)}return this},live:function(G,F){var E=o.event.proxy(F);E.guid+=this.selector+G;o(document).bind(i(G,this.selector),this.selector,E);return this},die:function(F,E){o(document).unbind(i(F,this.selector),E?{guid:E.guid+this.selector+F}:null);return this}});function c(H){var E=RegExp("(^|\\.)"+H.type+"(\\.|$)"),G=true,F=[];o.each(o.data(this,"events").live||[],function(I,J){if(E.test(J.type)){var K=o(H.target).closest(J.data)[0];if(K){F.push({elem:K,fn:J})}}});F.sort(function(J,I){return o.data(J.elem,"closest")-o.data(I.elem,"closest")});o.each(F,function(){if(this.fn.call(this.elem,H,this.fn.data)===false){return(G=false)}});return G}function i(F,E){return["live",F,E.replace(/\./g,"`").replace(/ /g,"|")].join(".")}o.extend({isReady:false,readyList:[],ready:function(){if(!o.isReady){o.isReady=true;if(o.readyList){o.each(o.readyList,function(){this.call(document,o)});o.readyList=null}o(document).triggerHandler("ready")}}});var x=false;function B(){if(x){return}x=true;if(document.addEventListener){document.addEventListener("DOMContentLoaded",function(){document.removeEventListener("DOMContentLoaded",arguments.callee,false);o.ready()},false)}else{if(document.attachEvent){document.attachEvent("onreadystatechange",function(){if(document.readyState==="complete"){document.detachEvent("onreadystatechange",arguments.callee);o.ready()}});if(document.documentElement.doScroll&&l==l.top){(function(){if(o.isReady){return}try{document.documentElement.doScroll("left")}catch(E){setTimeout(arguments.callee,0);return}o.ready()})()}}}o.event.add(l,"load",o.ready)}o.each(("blur,focus,load,resize,scroll,unload,click,dblclick,mousedown,mouseup,mousemove,mouseover,mouseout,mouseenter,mouseleave,change,select,submit,keydown,keypress,keyup,error").split(","),function(F,E){o.fn[E]=function(G){return G?this.bind(E,G):this.trigger(E)}});o(l).bind("unload",function(){for(var E in o.cache){if(E!=1&&o.cache[E].handle){o.event.remove(o.cache[E].handle.elem)}}});(function(){o.support={};var F=document.documentElement,G=document.createElement("script"),K=document.createElement("div"),J="script"+(new Date).getTime();K.style.display="none";K.innerHTML=' <link/><table></table><a href="/a" style="color:red;float:left;opacity:.5;">a</a><select><option>text</option></select><object><param/></object>';var H=K.getElementsByTagName("*"),E=K.getElementsByTagName("a")[0];if(!H||!H.length||!E){return}o.support={leadingWhitespace:K.firstChild.nodeType==3,tbody:!K.getElementsByTagName("tbody").length,objectAll:!!K.getElementsByTagName("object")[0].getElementsByTagName("*").length,htmlSerialize:!!K.getElementsByTagName("link").length,style:/red/.test(E.getAttribute("style")),hrefNormalized:E.getAttribute("href")==="/a",opacity:E.style.opacity==="0.5",cssFloat:!!E.style.cssFloat,scriptEval:false,noCloneEvent:true,boxModel:null};G.type="text/javascript";try{G.appendChild(document.createTextNode("window."+J+"=1;"))}catch(I){}F.insertBefore(G,F.firstChild);if(l[J]){o.support.scriptEval=true;delete l[J]}F.removeChild(G);if(K.attachEvent&&K.fireEvent){K.attachEvent("onclick",function(){o.support.noCloneEvent=false;K.detachEvent("onclick",arguments.callee)});K.cloneNode(true).fireEvent("onclick")}o(function(){var L=document.createElement("div");L.style.width=L.style.paddingLeft="1px";document.body.appendChild(L);o.boxModel=o.support.boxModel=L.offsetWidth===2;document.body.removeChild(L).style.display="none"})})();var w=o.support.cssFloat?"cssFloat":"styleFloat";o.props={"for":"htmlFor","class":"className","float":w,cssFloat:w,styleFloat:w,readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",tabindex:"tabIndex"};o.fn.extend({_load:o.fn.load,load:function(G,J,K){if(typeof G!=="string"){return this._load(G)}var I=G.indexOf(" ");if(I>=0){var E=G.slice(I,G.length);G=G.slice(0,I)}var H="GET";if(J){if(o.isFunction(J)){K=J;J=null}else{if(typeof J==="object"){J=o.param(J);H="POST"}}}var F=this;o.ajax({url:G,type:H,dataType:"html",data:J,complete:function(M,L){if(L=="success"||L=="notmodified"){F.html(E?o("<div/>").append(M.responseText.replace(/<script(.|\s)*?\/script>/g,"")).find(E):M.responseText)}if(K){F.each(K,[M.responseText,L,M])}}});return this},serialize:function(){return o.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?o.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password|search/i.test(this.type))}).map(function(E,F){var G=o(this).val();return G==null?null:o.isArray(G)?o.map(G,function(I,H){return{name:F.name,value:I}}):{name:F.name,value:G}}).get()}});o.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(E,F){o.fn[F]=function(G){return this.bind(F,G)}});var r=e();o.extend({get:function(E,G,H,F){if(o.isFunction(G)){H=G;G=null}return o.ajax({type:"GET",url:E,data:G,success:H,dataType:F})},getScript:function(E,F){return o.get(E,null,F,"script")},getJSON:function(E,F,G){return o.get(E,F,G,"json")},post:function(E,G,H,F){if(o.isFunction(G)){H=G;G={}}return o.ajax({type:"POST",url:E,data:G,success:H,dataType:F})},ajaxSetup:function(E){o.extend(o.ajaxSettings,E)},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return l.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest()},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(M){M=o.extend(true,M,o.extend(true,{},o.ajaxSettings,M));var W,F=/=\?(&|$)/g,R,V,G=M.type.toUpperCase();if(M.data&&M.processData&&typeof M.data!=="string"){M.data=o.param(M.data)}if(M.dataType=="jsonp"){if(G=="GET"){if(!M.url.match(F)){M.url+=(M.url.match(/\?/)?"&":"?")+(M.jsonp||"callback")+"=?"}}else{if(!M.data||!M.data.match(F)){M.data=(M.data?M.data+"&":"")+(M.jsonp||"callback")+"=?"}}M.dataType="json"}if(M.dataType=="json"&&(M.data&&M.data.match(F)||M.url.match(F))){W="jsonp"+r++;if(M.data){M.data=(M.data+"").replace(F,"="+W+"$1")}M.url=M.url.replace(F,"="+W+"$1");M.dataType="script";l[W]=function(X){V=X;I();L();l[W]=g;try{delete l[W]}catch(Y){}if(H){H.removeChild(T)}}}if(M.dataType=="script"&&M.cache==null){M.cache=false}if(M.cache===false&&G=="GET"){var E=e();var U=M.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+E+"$2");M.url=U+((U==M.url)?(M.url.match(/\?/)?"&":"?")+"_="+E:"")}if(M.data&&G=="GET"){M.url+=(M.url.match(/\?/)?"&":"?")+M.data;M.data=null}if(M.global&&!o.active++){o.event.trigger("ajaxStart")}var Q=/^(\w+:)?\/\/([^\/?#]+)/.exec(M.url);if(M.dataType=="script"&&G=="GET"&&Q&&(Q[1]&&Q[1]!=location.protocol||Q[2]!=location.host)){var H=document.getElementsByTagName("head")[0];var T=document.createElement("script");T.src=M.url;if(M.scriptCharset){T.charset=M.scriptCharset}if(!W){var O=false;T.onload=T.onreadystatechange=function(){if(!O&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){O=true;I();L();T.onload=T.onreadystatechange=null;H.removeChild(T)}}}H.appendChild(T);return g}var K=false;var J=M.xhr();if(M.username){J.open(G,M.url,M.async,M.username,M.password)}else{J.open(G,M.url,M.async)}try{if(M.data){J.setRequestHeader("Content-Type",M.contentType)}if(M.ifModified){J.setRequestHeader("If-Modified-Since",o.lastModified[M.url]||"Thu, 01 Jan 1970 00:00:00 GMT")}J.setRequestHeader("X-Requested-With","XMLHttpRequest");J.setRequestHeader("Accept",M.dataType&&M.accepts[M.dataType]?M.accepts[M.dataType]+", */*":M.accepts._default)}catch(S){}if(M.beforeSend&&M.beforeSend(J,M)===false){if(M.global&&!--o.active){o.event.trigger("ajaxStop")}J.abort();return false}if(M.global){o.event.trigger("ajaxSend",[J,M])}var N=function(X){if(J.readyState==0){if(P){clearInterval(P);P=null;if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}}else{if(!K&&J&&(J.readyState==4||X=="timeout")){K=true;if(P){clearInterval(P);P=null}R=X=="timeout"?"timeout":!o.httpSuccess(J)?"error":M.ifModified&&o.httpNotModified(J,M.url)?"notmodified":"success";if(R=="success"){try{V=o.httpData(J,M.dataType,M)}catch(Z){R="parsererror"}}if(R=="success"){var Y;try{Y=J.getResponseHeader("Last-Modified")}catch(Z){}if(M.ifModified&&Y){o.lastModified[M.url]=Y}if(!W){I()}}else{o.handleError(M,J,R)}L();if(X){J.abort()}if(M.async){J=null}}}};if(M.async){var P=setInterval(N,13);if(M.timeout>0){setTimeout(function(){if(J&&!K){N("timeout")}},M.timeout)}}try{J.send(M.data)}catch(S){o.handleError(M,J,null,S)}if(!M.async){N()}function I(){if(M.success){M.success(V,R)}if(M.global){o.event.trigger("ajaxSuccess",[J,M])}}function L(){if(M.complete){M.complete(J,R)}if(M.global){o.event.trigger("ajaxComplete",[J,M])}if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}return J},handleError:function(F,H,E,G){if(F.error){F.error(H,E,G)}if(F.global){o.event.trigger("ajaxError",[H,F,G])}},active:0,httpSuccess:function(F){try{return !F.status&&location.protocol=="file:"||(F.status>=200&&F.status<300)||F.status==304||F.status==1223}catch(E){}return false},httpNotModified:function(G,E){try{var H=G.getResponseHeader("Last-Modified");return G.status==304||H==o.lastModified[E]}catch(F){}return false},httpData:function(J,H,G){var F=J.getResponseHeader("content-type"),E=H=="xml"||!H&&F&&F.indexOf("xml")>=0,I=E?J.responseXML:J.responseText;if(E&&I.documentElement.tagName=="parsererror"){throw"parsererror"}if(G&&G.dataFilter){I=G.dataFilter(I,H)}if(typeof I==="string"){if(H=="script"){o.globalEval(I)}if(H=="json"){I=l["eval"]("("+I+")")}}return I},param:function(E){var G=[];function H(I,J){G[G.length]=encodeURIComponent(I)+"="+encodeURIComponent(J)}if(o.isArray(E)||E.jquery){o.each(E,function(){H(this.name,this.value)})}else{for(var F in E){if(o.isArray(E[F])){o.each(E[F],function(){H(F,this)})}else{H(F,o.isFunction(E[F])?E[F]():E[F])}}}return G.join("&").replace(/%20/g,"+")}});var m={},n,d=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];function t(F,E){var G={};o.each(d.concat.apply([],d.slice(0,E)),function(){G[this]=F});return G}o.fn.extend({show:function(J,L){if(J){return this.animate(t("show",3),J,L)}else{for(var H=0,F=this.length;H<F;H++){var E=o.data(this[H],"olddisplay");this[H].style.display=E||"";if(o.css(this[H],"display")==="none"){var G=this[H].tagName,K;if(m[G]){K=m[G]}else{var I=o("<"+G+" />").appendTo("body");K=I.css("display");if(K==="none"){K="block"}I.remove();m[G]=K}o.data(this[H],"olddisplay",K)}}for(var H=0,F=this.length;H<F;H++){this[H].style.display=o.data(this[H],"olddisplay")||""}return this}},hide:function(H,I){if(H){return this.animate(t("hide",3),H,I)}else{for(var G=0,F=this.length;G<F;G++){var E=o.data(this[G],"olddisplay");if(!E&&E!=="none"){o.data(this[G],"olddisplay",o.css(this[G],"display"))}}for(var G=0,F=this.length;G<F;G++){this[G].style.display="none"}return this}},_toggle:o.fn.toggle,toggle:function(G,F){var E=typeof G==="boolean";return o.isFunction(G)&&o.isFunction(F)?this._toggle.apply(this,arguments):G==null||E?this.each(function(){var H=E?G:o(this).is(":hidden");o(this)[H?"show":"hide"]()}):this.animate(t("toggle",3),G,F)},fadeTo:function(E,G,F){return this.animate({opacity:G},E,F)},animate:function(I,F,H,G){var E=o.speed(F,H,G);return this[E.queue===false?"each":"queue"](function(){var K=o.extend({},E),M,L=this.nodeType==1&&o(this).is(":hidden"),J=this;for(M in I){if(I[M]=="hide"&&L||I[M]=="show"&&!L){return K.complete.call(this)}if((M=="height"||M=="width")&&this.style){K.display=o.css(this,"display");K.overflow=this.style.overflow}}if(K.overflow!=null){this.style.overflow="hidden"}K.curAnim=o.extend({},I);o.each(I,function(O,S){var R=new o.fx(J,K,O);if(/toggle|show|hide/.test(S)){R[S=="toggle"?L?"show":"hide":S](I)}else{var Q=S.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),T=R.cur(true)||0;if(Q){var N=parseFloat(Q[2]),P=Q[3]||"px";if(P!="px"){J.style[O]=(N||1)+P;T=((N||1)/R.cur(true))*T;J.style[O]=T+P}if(Q[1]){N=((Q[1]=="-="?-1:1)*N)+T}R.custom(T,N,P)}else{R.custom(T,S,"")}}});return true})},stop:function(F,E){var G=o.timers;if(F){this.queue([])}this.each(function(){for(var H=G.length-1;H>=0;H--){if(G[H].elem==this){if(E){G[H](true)}G.splice(H,1)}}});if(!E){this.dequeue()}return this}});o.each({slideDown:t("show",1),slideUp:t("hide",1),slideToggle:t("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(E,F){o.fn[E]=function(G,H){return this.animate(F,G,H)}});o.extend({speed:function(G,H,F){var E=typeof G==="object"?G:{complete:F||!F&&H||o.isFunction(G)&&G,duration:G,easing:F&&H||H&&!o.isFunction(H)&&H};E.duration=o.fx.off?0:typeof E.duration==="number"?E.duration:o.fx.speeds[E.duration]||o.fx.speeds._default;E.old=E.complete;E.complete=function(){if(E.queue!==false){o(this).dequeue()}if(o.isFunction(E.old)){E.old.call(this)}};return E},easing:{linear:function(G,H,E,F){return E+F*G},swing:function(G,H,E,F){return((-Math.cos(G*Math.PI)/2)+0.5)*F+E}},timers:[],fx:function(F,E,G){this.options=E;this.elem=F;this.prop=G;if(!E.orig){E.orig={}}}});o.fx.prototype={update:function(){if(this.options.step){this.options.step.call(this.elem,this.now,this)}(o.fx.step[this.prop]||o.fx.step._default)(this);if((this.prop=="height"||this.prop=="width")&&this.elem.style){this.elem.style.display="block"}},cur:function(F){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)){return this.elem[this.prop]}var E=parseFloat(o.css(this.elem,this.prop,F));return E&&E>-10000?E:parseFloat(o.curCSS(this.elem,this.prop))||0},custom:function(I,H,G){this.startTime=e();this.start=I;this.end=H;this.unit=G||this.unit||"px";this.now=this.start;this.pos=this.state=0;var E=this;function F(J){return E.step(J)}F.elem=this.elem;if(F()&&o.timers.push(F)&&!n){n=setInterval(function(){var K=o.timers;for(var J=0;J<K.length;J++){if(!K[J]()){K.splice(J--,1)}}if(!K.length){clearInterval(n);n=g}},13)}},show:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.show=true;this.custom(this.prop=="width"||this.prop=="height"?1:0,this.cur());o(this.elem).show()},hide:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.hide=true;this.custom(this.cur(),0)},step:function(H){var G=e();if(H||G>=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var E=true;for(var F in this.options.curAnim){if(this.options.curAnim[F]!==true){E=false}}if(E){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(o.css(this.elem,"display")=="none"){this.elem.style.display="block"}}if(this.options.hide){o(this.elem).hide()}if(this.options.hide||this.options.show){for(var I in this.options.curAnim){o.attr(this.elem.style,I,this.options.orig[I])}}this.options.complete.call(this.elem)}return false}else{var J=G-this.startTime;this.state=J/this.options.duration;this.pos=o.easing[this.options.easing||(o.easing.swing?"swing":"linear")](this.state,J,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update()}return true}};o.extend(o.fx,{speeds:{slow:600,fast:200,_default:400},step:{opacity:function(E){o.attr(E.elem.style,"opacity",E.now)},_default:function(E){if(E.elem.style&&E.elem.style[E.prop]!=null){E.elem.style[E.prop]=E.now+E.unit}else{E.elem[E.prop]=E.now}}}});if(document.documentElement.getBoundingClientRect){o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}var G=this[0].getBoundingClientRect(),J=this[0].ownerDocument,F=J.body,E=J.documentElement,L=E.clientTop||F.clientTop||0,K=E.clientLeft||F.clientLeft||0,I=G.top+(self.pageYOffset||o.boxModel&&E.scrollTop||F.scrollTop)-L,H=G.left+(self.pageXOffset||o.boxModel&&E.scrollLeft||F.scrollLeft)-K;return{top:I,left:H}}}else{o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}o.offset.initialized||o.offset.initialize();var J=this[0],G=J.offsetParent,F=J,O=J.ownerDocument,M,H=O.documentElement,K=O.body,L=O.defaultView,E=L.getComputedStyle(J,null),N=J.offsetTop,I=J.offsetLeft;while((J=J.parentNode)&&J!==K&&J!==H){M=L.getComputedStyle(J,null);N-=J.scrollTop,I-=J.scrollLeft;if(J===G){N+=J.offsetTop,I+=J.offsetLeft;if(o.offset.doesNotAddBorder&&!(o.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(J.tagName))){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}F=G,G=J.offsetParent}if(o.offset.subtractsBorderForOverflowNotVisible&&M.overflow!=="visible"){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}E=M}if(E.position==="relative"||E.position==="static"){N+=K.offsetTop,I+=K.offsetLeft}if(E.position==="fixed"){N+=Math.max(H.scrollTop,K.scrollTop),I+=Math.max(H.scrollLeft,K.scrollLeft)}return{top:N,left:I}}}o.offset={initialize:function(){if(this.initialized){return}var L=document.body,F=document.createElement("div"),H,G,N,I,M,E,J=L.style.marginTop,K='<div style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;"><div></div></div><table style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;" cellpadding="0" cellspacing="0"><tr><td></td></tr></table>';M={position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"};for(E in M){F.style[E]=M[E]}F.innerHTML=K;L.insertBefore(F,L.firstChild);H=F.firstChild,G=H.firstChild,I=H.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(G.offsetTop!==5);this.doesAddBorderForTableAndCells=(I.offsetTop===5);H.style.overflow="hidden",H.style.position="relative";this.subtractsBorderForOverflowNotVisible=(G.offsetTop===-5);L.style.marginTop="1px";this.doesNotIncludeMarginInBodyOffset=(L.offsetTop===0);L.style.marginTop=J;L.removeChild(F);this.initialized=true},bodyOffset:function(E){o.offset.initialized||o.offset.initialize();var G=E.offsetTop,F=E.offsetLeft;if(o.offset.doesNotIncludeMarginInBodyOffset){G+=parseInt(o.curCSS(E,"marginTop",true),10)||0,F+=parseInt(o.curCSS(E,"marginLeft",true),10)||0}return{top:G,left:F}}};o.fn.extend({position:function(){var I=0,H=0,F;if(this[0]){var G=this.offsetParent(),J=this.offset(),E=/^body|html$/i.test(G[0].tagName)?{top:0,left:0}:G.offset();J.top-=j(this,"marginTop");J.left-=j(this,"marginLeft");E.top+=j(G,"borderTopWidth");E.left+=j(G,"borderLeftWidth");F={top:J.top-E.top,left:J.left-E.left}}return F},offsetParent:function(){var E=this[0].offsetParent||document.body;while(E&&(!/^body|html$/i.test(E.tagName)&&o.css(E,"position")=="static")){E=E.offsetParent}return o(E)}});o.each(["Left","Top"],function(F,E){var G="scroll"+E;o.fn[G]=function(H){if(!this[0]){return null}return H!==g?this.each(function(){this==l||this==document?l.scrollTo(!F?H:o(l).scrollLeft(),F?H:o(l).scrollTop()):this[G]=H}):this[0]==l||this[0]==document?self[F?"pageYOffset":"pageXOffset"]||o.boxModel&&document.documentElement[G]||document.body[G]:this[0][G]}});o.each(["Height","Width"],function(I,G){var E=I?"Left":"Top",H=I?"Right":"Bottom",F=G.toLowerCase();o.fn["inner"+G]=function(){return this[0]?o.css(this[0],F,false,"padding"):null};o.fn["outer"+G]=function(K){return this[0]?o.css(this[0],F,false,K?"margin":"border"):null};var J=G.toLowerCase();o.fn[J]=function(K){return this[0]==l?document.compatMode=="CSS1Compat"&&document.documentElement["client"+G]||document.body["client"+G]:this[0]==document?Math.max(document.documentElement["client"+G],document.body["scroll"+G],document.documentElement["scroll"+G],document.body["offset"+G],document.documentElement["offset"+G]):K===g?(this.length?o.css(this[0],J):null):this.css(J,typeof K==="string"?K:K+"px")}})})();
\ No newline at end of file diff --git a/examples/lessons/6_Maths_SetMultipleChoice/js/lesson.js b/examples/lessons/6_Maths_SetMultipleChoice/js/lesson.js deleted file mode 100755 index 1d33caa..0000000 --- a/examples/lessons/6_Maths_SetMultipleChoice/js/lesson.js +++ /dev/null @@ -1,193 +0,0 @@ -$(document).ready(function() { - var i,j,flag; - var clickedObject; //store the clicked image id - var correctCounter = 0; - var totalCounter = 0; - var objrand = []; - var randQues = []; - var currentObj; //store the current object clicked - var currentQuestion; - var NUM_OBJECTS = 4; //no of options - var TOTAL_QUES = 8; - var flag_correct; - - var questions = new Array('समूह V = {a,e,i,o,u}लाई कसरी लेख्दा ठिक हुदैन ', - 'MISSISSIPPI (नदीको) नाममा भएका अङ्ग्रेजी वर्णमालाका अक्षर हरुको M समुह बनाउदा कसरी लेख्नुपर्छ ', - 'चिन्ह ∈ ले के जनाउछ ', - 'चिन्ह ∉ ले के जनाउछ', - 'समुहको गणनात्मकता (cardinal numbers) भन्नाले के बुझिन्छ ', - 'बराबर समुह (equal sets) भन्नाले के बुझिन्छ' , - 'समतुल्य समुह (equivalent sets) भन्नाले के बुझिन्छ', - 'चिन्ह ∅ ले कस्तो समुह जनाउछ' - ); - - - //current answer among four stored at first 4 options for each questions - var answers = new Array( - 'V = {e,a,i,a,u}','V = {e,a,o,i,u}','V = {i,u,a,o,e}','V = {a,e,o,i,u}', - 'M = {M,I,S,I,P,I}','M = {M,I,S,S,I,S,S,I,P,P,I}','M = {M,I,S,P}','M = {M,I,S,S,P}', - 'समुहको सदस्य हो','समुहको सदस्य होइन','उप-समुह हो','उप-समुह होइन ', - 'समुहको सदस्य होइन','समुहको सदस्य हो','उप-समुह हो','उप-समुह होइन ', - 'समुहमा भएका सदस्यहरुको सङ्ख्या','सङ्ख्याहरु मिलेर बनेको समुह','समुहहरुको सङ्ख्या','समुहलाई गन्ने', - 'दुईओटा समुहमा उतिकै र उही सदस्यहरु छन् ', 'दुईओटा समुहमा उतिकै संख्यामा सदस्यहरु छन्', - 'दुईओटा समुहमा उतिकै केहि सदस्यहरु एकअर्कासंग मिल्छन' ,'दुईओटा समुहमा उतिकै संख्यामा तर सदस्यहरु सबै फरक हुनुपर्छ ', - 'दुईओटा समुहमा उतिकै संख्यामा सदस्यहरु छन्','दुईओटा समुहमा उतिकै र उही सदस्यहरु छन् ', - 'दुईओटा समुहमा उतिकै केहि सदस्यहरु एकअर्कासंग मिल्छन' ,'दुईओटा समुहमा उतिकै संख्यामा तर सदस्यहरु सबै फरक हुनुपर्छ ', - 'एउटा पनि सदस्य नभएको समुह ',' 0 (शून्य) संख्या सदस्य भएको समुह','सबैभन्दा ठुलो समुह ','उप-समुह' - ); - - - var nepaliNumbers = new Array('०','१','२','३','४','५','६'); - var optionImg = new Array('a','b','c','d'); - - var randNumber = function(limit){ //generate random number between any two ranges - var rand_no = Math.floor(limit*Math.random()); - return rand_no; - }; - - var generate_random_questions = function(){ - randQues[0] = randNumber(TOTAL_QUES); - for(i=1; i<TOTAL_QUES; i++){ - do{ - flag = 0; - randQues[i] = randNumber(TOTAL_QUES); - for(j=0; j<i; j++){ - if(randQues[i]===randQues[j]){ - flag++; - } - } - }while(flag != 0 ); //end of do while loop - } - }; - var generate_random_options_no = function(){ - objrand[0] = randNumber(NUM_OBJECTS); - for(i=1; i<NUM_OBJECTS; i++){ - do{ - flag = 0; - objrand[i] = randNumber(NUM_OBJECTS); - for(j=0; j<i; j++){ - if(objrand[i]===objrand[j]){ - flag++; - } - } - }while(flag != 0 ); //end of do while loop - } - - }; - - var display_score = function(){ - document.scoreForm.score.value = nepaliNumbers[correctCounter]; - document.scoreForm.full_mark.value = nepaliNumbers[totalCounter]; - }; - - var display_game_over = function(){ - $('#section').hide(); - $('#linkNext').hide(); - $('#gameOver').show(); - $('#gameOver').html(); - $('#gameOver').append('Game Over !!!'); - if(correctCounter === totalCounter){ - $('#gameOver').append('<div id="gameOverInfo">बधाई छ !!! सबै उत्तर सहि भए !!! </div>'); - } - else{ - $('#gameOver').append('<div id="gameOverInfo">किन गलत भयो पत्ता लगाउ र अर्को पटक सहि बनाउने कोशिश गर । <br /> You Got <span class="specialText">'+correctCounter+ - '</span> correct out of <span class="specialText">'+totalCounter+'</span> questions .</div>'); - } - }; - - var delay = function(){ - document.delayForm.delayval.value = 1; - display_game_over(); - }; - var check_game_over = function(){ - if(totalCounter === TOTAL_QUES){ //show all - t=setTimeout(function(){delay();},1000); - } - }; - - var store_clicked_object = function(objectClicked){ - var checked; - if(objrand[objectClicked] ===0){ - if(flag_correct == 1){ //correct at first attempt - checked = "correct"; - correctCounter++; - } - } - else{ - - flag_correct = 0; - checked = "wrong"; - } - - flag_correct = 0; - $('#checkans'+objectClicked).html(''); - $('#checkans'+objectClicked).append('<img src="assets/image/'+checked+'.png">'); - $('#answer').show(''); - $('#answer').html(''); - var quesNo =currentQuestion+1; - $('#answer').append('<img src="assets/image/ques'+quesNo+'def.png">'); - $('#linkNext').show(); - totalCounter++; - display_score(); - check_game_over(); - }; - - - var assignOptions = function (square){ - var a = currentQuestion*4; - var randOption = objrand[square]+a; - $('#optionSection').append('<div id="checkans'+square+'" class = "check"></div>'); - $('#optionSection').append('<a href="#"></a>'); - $('#optionSection a:last-of-type').append('<div class="options" id="option'+square+'">'+ - '<img src="assets/image/'+optionImg[square]+'.png"></div>'); - $('#optionSection a:last-of-type').append('<div class="optionText">'+answers[randOption]+'</div>'); - $('#optionSection a:last-of-type').click(function(){ - if(flag_correct === 1){ - store_clicked_object(square); - } - }); - }; - - var next_sentence = function(){ - flag_correct = 1; - var imgName,topPos; - generate_random_options_no(); - currentQuestion = randQues[totalCounter]; - $('#question').html(''); - $('#question').append(nepaliNumbers[totalCounter+1]).append(' .'); - $('#question').append(questions[currentQuestion]).append(' ?'); - for(var i = 0; i < 4; i++){ - assignOptions(i); - } - }; - function game(){ - $('#gameOver').hide(); - $('#section').show(); - $('#answer').hide(); - correctCounter = 0; - totalCounter = 0; - $('#linkNext').hide(); - $('#optionSection').html(''); - display_score(); - generate_random_questions(); - next_sentence(); - } - $('#linkNext').click(function(){ - $('#linkNext').hide(); - $('#optionSection').html(''); - $('#answer').hide(''); - next_sentence(); - }); - - $('#linkStart').click(function(){ - game(); - }); - - $('#linkPlayAgain').click(function(){ - game(); - }); - $('#answer').hide(); - display_score(); - $('#linkNext').hide(); - -});//end of DOM diff --git a/examples/lessons/6_English_syllables/assets/audio/correct.ogg b/examples/lessons/6_Maths_complexAddition/assets/audio/correct.ogg Binary files differindex a0d9e3a..a0d9e3a 100755 --- a/examples/lessons/6_English_syllables/assets/audio/correct.ogg +++ b/examples/lessons/6_Maths_complexAddition/assets/audio/correct.ogg diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/audio/correct.wav b/examples/lessons/6_Maths_complexAddition/assets/audio/correct.wav Binary files differindex a49ba33..a49ba33 100755 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/audio/correct.wav +++ b/examples/lessons/6_Maths_complexAddition/assets/audio/correct.wav diff --git a/examples/lessons/6_English_syllables/assets/audio/incorrect.ogg b/examples/lessons/6_Maths_complexAddition/assets/audio/incorrect.ogg Binary files differindex 4805e55..4805e55 100755 --- a/examples/lessons/6_English_syllables/assets/audio/incorrect.ogg +++ b/examples/lessons/6_Maths_complexAddition/assets/audio/incorrect.ogg diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/audio/incorrect.wav b/examples/lessons/6_Maths_complexAddition/assets/audio/incorrect.wav Binary files differindex 906c6a3..906c6a3 100755 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/audio/incorrect.wav +++ b/examples/lessons/6_Maths_complexAddition/assets/audio/incorrect.wav diff --git a/examples/lessons/6_Maths_complexAddition/assets/image/background.png b/examples/lessons/6_Maths_complexAddition/assets/image/background.png Binary files differnew file mode 100755 index 0000000..88ad480 --- /dev/null +++ b/examples/lessons/6_Maths_complexAddition/assets/image/background.png diff --git a/examples/lessons/6_English_syllables/assets/image/bg_footer.png b/examples/lessons/6_Maths_complexAddition/assets/image/bg_footer.png Binary files differindex 8982264..8982264 100755 --- a/examples/lessons/6_English_syllables/assets/image/bg_footer.png +++ b/examples/lessons/6_Maths_complexAddition/assets/image/bg_footer.png diff --git a/examples/lessons/6_English_syllables/assets/image/bg_header.png b/examples/lessons/6_Maths_complexAddition/assets/image/bg_header.png Binary files differindex 98213f7..98213f7 100755 --- a/examples/lessons/6_English_syllables/assets/image/bg_header.png +++ b/examples/lessons/6_Maths_complexAddition/assets/image/bg_header.png diff --git a/examples/lessons/6_English_syllables/assets/image/bg_title_block.png b/examples/lessons/6_Maths_complexAddition/assets/image/bg_title_block.png Binary files differindex 2c9dacf..2c9dacf 100755 --- a/examples/lessons/6_English_syllables/assets/image/bg_title_block.png +++ b/examples/lessons/6_Maths_complexAddition/assets/image/bg_title_block.png diff --git a/examples/lessons/6_Maths_complexAddition/assets/image/blueBoy0.png b/examples/lessons/6_Maths_complexAddition/assets/image/blueBoy0.png Binary files differnew file mode 100755 index 0000000..86c0215 --- /dev/null +++ b/examples/lessons/6_Maths_complexAddition/assets/image/blueBoy0.png diff --git a/examples/lessons/6_Maths_complexAddition/assets/image/blueBoy1.png b/examples/lessons/6_Maths_complexAddition/assets/image/blueBoy1.png Binary files differnew file mode 100755 index 0000000..0e447b5 --- /dev/null +++ b/examples/lessons/6_Maths_complexAddition/assets/image/blueBoy1.png diff --git a/examples/lessons/6_Maths_complexAddition/assets/image/blueBoy2.png b/examples/lessons/6_Maths_complexAddition/assets/image/blueBoy2.png Binary files differnew file mode 100755 index 0000000..c635b03 --- /dev/null +++ b/examples/lessons/6_Maths_complexAddition/assets/image/blueBoy2.png diff --git a/examples/lessons/6_Maths_complexAddition/assets/image/blueBoy3.png b/examples/lessons/6_Maths_complexAddition/assets/image/blueBoy3.png Binary files differnew file mode 100755 index 0000000..af7e6ab --- /dev/null +++ b/examples/lessons/6_Maths_complexAddition/assets/image/blueBoy3.png diff --git a/examples/lessons/6_Maths_complexAddition/assets/image/blueNumPlus.png b/examples/lessons/6_Maths_complexAddition/assets/image/blueNumPlus.png Binary files differnew file mode 100755 index 0000000..22dffe0 --- /dev/null +++ b/examples/lessons/6_Maths_complexAddition/assets/image/blueNumPlus.png diff --git a/examples/lessons/6_Maths_complexAddition/assets/image/blueRing.png b/examples/lessons/6_Maths_complexAddition/assets/image/blueRing.png Binary files differnew file mode 100755 index 0000000..690900c --- /dev/null +++ b/examples/lessons/6_Maths_complexAddition/assets/image/blueRing.png diff --git a/examples/lessons/6_Maths_complexAddition/assets/image/blueTotal.png b/examples/lessons/6_Maths_complexAddition/assets/image/blueTotal.png Binary files differnew file mode 100755 index 0000000..316c6c3 --- /dev/null +++ b/examples/lessons/6_Maths_complexAddition/assets/image/blueTotal.png diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/btn_back.png b/examples/lessons/6_Maths_complexAddition/assets/image/btn_back.png Binary files differindex d9fbf14..d9fbf14 100755 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/btn_back.png +++ b/examples/lessons/6_Maths_complexAddition/assets/image/btn_back.png diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/btn_back_hover.png b/examples/lessons/6_Maths_complexAddition/assets/image/btn_back_hover.png Binary files differindex 0911fcc..0911fcc 100755 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/btn_back_hover.png +++ b/examples/lessons/6_Maths_complexAddition/assets/image/btn_back_hover.png diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/btn_help.png b/examples/lessons/6_Maths_complexAddition/assets/image/btn_help.png Binary files differindex 6753e9c..6753e9c 100755 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/btn_help.png +++ b/examples/lessons/6_Maths_complexAddition/assets/image/btn_help.png diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/btn_help_hover.png b/examples/lessons/6_Maths_complexAddition/assets/image/btn_help_hover.png Binary files differindex d3ccd92..d3ccd92 100755 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/btn_help_hover.png +++ b/examples/lessons/6_Maths_complexAddition/assets/image/btn_help_hover.png diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/btn_next.png b/examples/lessons/6_Maths_complexAddition/assets/image/btn_next.png Binary files differindex 9d70993..9d70993 100755 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/btn_next.png +++ b/examples/lessons/6_Maths_complexAddition/assets/image/btn_next.png diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/btn_next_hover.png b/examples/lessons/6_Maths_complexAddition/assets/image/btn_next_hover.png Binary files differindex 2cd4d37..2cd4d37 100755 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/btn_next_hover.png +++ b/examples/lessons/6_Maths_complexAddition/assets/image/btn_next_hover.png diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/btn_ole.png b/examples/lessons/6_Maths_complexAddition/assets/image/btn_ole.png Binary files differindex 0e775e9..0e775e9 100755 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/btn_ole.png +++ b/examples/lessons/6_Maths_complexAddition/assets/image/btn_ole.png diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/btn_ole_hover.png b/examples/lessons/6_Maths_complexAddition/assets/image/btn_ole_hover.png Binary files differindex c43c5f7..c43c5f7 100755 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/btn_ole_hover.png +++ b/examples/lessons/6_Maths_complexAddition/assets/image/btn_ole_hover.png diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/btn_play_again.png b/examples/lessons/6_Maths_complexAddition/assets/image/btn_play_again.png Binary files differindex 3594d18..3594d18 100755 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/btn_play_again.png +++ b/examples/lessons/6_Maths_complexAddition/assets/image/btn_play_again.png diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/btn_play_again_hover.png b/examples/lessons/6_Maths_complexAddition/assets/image/btn_play_again_hover.png Binary files differindex ebb8f8c..ebb8f8c 100755 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/btn_play_again_hover.png +++ b/examples/lessons/6_Maths_complexAddition/assets/image/btn_play_again_hover.png diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/btn_play_again_mouse_down.png b/examples/lessons/6_Maths_complexAddition/assets/image/btn_play_again_mouse_down.png Binary files differindex 07d6e45..07d6e45 100755 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/btn_play_again_mouse_down.png +++ b/examples/lessons/6_Maths_complexAddition/assets/image/btn_play_again_mouse_down.png diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/btn_start.png b/examples/lessons/6_Maths_complexAddition/assets/image/btn_start.png Binary files differindex 32e5f20..32e5f20 100755 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/btn_start.png +++ b/examples/lessons/6_Maths_complexAddition/assets/image/btn_start.png diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/btn_start_hover.png b/examples/lessons/6_Maths_complexAddition/assets/image/btn_start_hover.png Binary files differindex 811ce78..811ce78 100755 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/btn_start_hover.png +++ b/examples/lessons/6_Maths_complexAddition/assets/image/btn_start_hover.png diff --git a/examples/lessons/6_English_yesNoQuestions/assets/image/btn_start_mouse_down.png b/examples/lessons/6_Maths_complexAddition/assets/image/btn_start_mouse_down.png Binary files differindex 5acd43b..5acd43b 100755 --- a/examples/lessons/6_English_yesNoQuestions/assets/image/btn_start_mouse_down.png +++ b/examples/lessons/6_Maths_complexAddition/assets/image/btn_start_mouse_down.png diff --git a/examples/lessons/6_Maths_complexAddition/assets/image/help.png b/examples/lessons/6_Maths_complexAddition/assets/image/help.png Binary files differnew file mode 100755 index 0000000..7a82e1d --- /dev/null +++ b/examples/lessons/6_Maths_complexAddition/assets/image/help.png diff --git a/examples/lessons/6_Maths_complexAddition/assets/image/imgNumContainer.png b/examples/lessons/6_Maths_complexAddition/assets/image/imgNumContainer.png Binary files differnew file mode 100755 index 0000000..52cc997 --- /dev/null +++ b/examples/lessons/6_Maths_complexAddition/assets/image/imgNumContainer.png diff --git a/examples/lessons/6_Maths_complexAddition/assets/image/redGirl0.png b/examples/lessons/6_Maths_complexAddition/assets/image/redGirl0.png Binary files differnew file mode 100755 index 0000000..2ebc5e5 --- /dev/null +++ b/examples/lessons/6_Maths_complexAddition/assets/image/redGirl0.png diff --git a/examples/lessons/6_Maths_complexAddition/assets/image/redGirl1.png b/examples/lessons/6_Maths_complexAddition/assets/image/redGirl1.png Binary files differnew file mode 100755 index 0000000..58e8d2f --- /dev/null +++ b/examples/lessons/6_Maths_complexAddition/assets/image/redGirl1.png diff --git a/examples/lessons/6_Maths_complexAddition/assets/image/redGirl2.png b/examples/lessons/6_Maths_complexAddition/assets/image/redGirl2.png Binary files differnew file mode 100755 index 0000000..9dedceb --- /dev/null +++ b/examples/lessons/6_Maths_complexAddition/assets/image/redGirl2.png diff --git a/examples/lessons/6_Maths_complexAddition/assets/image/redGirl3.png b/examples/lessons/6_Maths_complexAddition/assets/image/redGirl3.png Binary files differnew file mode 100755 index 0000000..8d58a42 --- /dev/null +++ b/examples/lessons/6_Maths_complexAddition/assets/image/redGirl3.png diff --git a/examples/lessons/6_Maths_complexAddition/assets/image/redNumPlus.png b/examples/lessons/6_Maths_complexAddition/assets/image/redNumPlus.png Binary files differnew file mode 100755 index 0000000..105e308 --- /dev/null +++ b/examples/lessons/6_Maths_complexAddition/assets/image/redNumPlus.png diff --git a/examples/lessons/6_Maths_complexAddition/assets/image/redRing.png b/examples/lessons/6_Maths_complexAddition/assets/image/redRing.png Binary files differnew file mode 100755 index 0000000..400065b --- /dev/null +++ b/examples/lessons/6_Maths_complexAddition/assets/image/redRing.png diff --git a/examples/lessons/6_Maths_complexAddition/assets/image/redTotal.png b/examples/lessons/6_Maths_complexAddition/assets/image/redTotal.png Binary files differnew file mode 100755 index 0000000..2d55e88 --- /dev/null +++ b/examples/lessons/6_Maths_complexAddition/assets/image/redTotal.png diff --git a/examples/lessons/6_Maths_complexAddition/assets/image/scoreBox.png b/examples/lessons/6_Maths_complexAddition/assets/image/scoreBox.png Binary files differnew file mode 100755 index 0000000..c99e32f --- /dev/null +++ b/examples/lessons/6_Maths_complexAddition/assets/image/scoreBox.png diff --git a/examples/lessons/6_Maths_complexAddition/assets/image/title.png b/examples/lessons/6_Maths_complexAddition/assets/image/title.png Binary files differnew file mode 100755 index 0000000..5fcfa82 --- /dev/null +++ b/examples/lessons/6_Maths_complexAddition/assets/image/title.png diff --git a/examples/lessons/6_English_syllables/assets/image/title_block_lt.png b/examples/lessons/6_Maths_complexAddition/assets/image/title_block_lt.png Binary files differindex 4696182..4696182 100755 --- a/examples/lessons/6_English_syllables/assets/image/title_block_lt.png +++ b/examples/lessons/6_Maths_complexAddition/assets/image/title_block_lt.png diff --git a/examples/lessons/6_English_syllables/assets/image/title_block_rt.png b/examples/lessons/6_Maths_complexAddition/assets/image/title_block_rt.png Binary files differindex 37cc44a..37cc44a 100755 --- a/examples/lessons/6_English_syllables/assets/image/title_block_rt.png +++ b/examples/lessons/6_Maths_complexAddition/assets/image/title_block_rt.png diff --git a/examples/lessons/6_Maths_complexAddition/assets/image/totalCorrect.png b/examples/lessons/6_Maths_complexAddition/assets/image/totalCorrect.png Binary files differnew file mode 100755 index 0000000..69cad74 --- /dev/null +++ b/examples/lessons/6_Maths_complexAddition/assets/image/totalCorrect.png diff --git a/examples/lessons/6_Maths_complexAddition/css/lesson.css b/examples/lessons/6_Maths_complexAddition/css/lesson.css new file mode 100755 index 0000000..e27f93b --- /dev/null +++ b/examples/lessons/6_Maths_complexAddition/css/lesson.css @@ -0,0 +1,225 @@ +@CHARSET "UTF-8";
+/****** Page Styles ****/
+
+/* Designed for 1200*900 px screen resolution */
+
+body {
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ font-size: 10pt;
+ margin: 0px;
+ background-color: #FFFFCC;
+}
+#header {
+ background-image: url(../assets/image/bg_header.png);
+ background-repeat: repeat-x;
+ height: 75px;
+ width: 100%;
+ position: absolute;
+ left: 0px;
+ top: 0px;
+}
+#topbtn_left {
+ float: left;
+ height: 60px;
+ width: 60px;
+ padding-top: 6px;
+ padding-left: 15px;
+}
+
+
+ .linkBack{
+ width: 60px; height: 59px;
+ background:url(../assets/image/btn_back.png);
+ }
+ .linkBack:hover{
+ background:url(../assets/image/btn_back_hover.png);
+ }
+
+#lesson_title {
+ float: left;
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ font-size: 16pt;
+ font-weight: bold;
+ color: #FFFFFF;
+ margin-left: 10px;
+ background-image: url(../assets/image/bg_title_block.png);
+}
+#topbtn_right {
+ float: right;
+ height: 60px;
+ width: 60px;
+ padding-top: 6px;
+ padding-right: 15px;
+}
+ #linkHelp{
+ width: 60px; height: 60px;
+ background:url(../assets/image/btn_help.png);
+ }
+ #linkHelp:hover{
+ background:url(../assets/image/btn_help_hover.png);
+ }
+ #linkOle{
+ width: 60px; height: 60px;
+ background:url(../assets/image/btn_ole.png);
+ }
+ #linkOle:hover{
+ background:url(../assets/image/btn_ole_hover.png);
+ }
+ .linkNext{var bindImgCss = {
+ 'float':'left',
+ 'width': '450px',
+ 'height':'40px',
+ 'margin-top':'0.25em',
+ 'text-align':'center',
+ 'padding-bottom':'0.3em'
+ };
+ width: 60px; height: 60px;
+ background:url(../assets/image/btn_next.png);
+ }
+ .linkNext:hover{
+ background:url(../assets/image/btn_next_hover.png);
+ }
+#footer {
+ position:relative;
+ background-image: url(../assets/image/bg_footer.png);
+ background-repeat: repeat-x;
+ height: 75px;
+ width: 100%;
+ left: 0px;
+ bottom: 0px;
+}
+#score_box {
+ float: left;
+ padding-left: 5px;
+ padding-top: 0.7em;
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ color: #FFFF00;
+ font-size: 16pt;
+ font-weight: bold;
+}
+#botbtn_right {
+ float: right;
+ height: 55px;
+ padding-right: 5px;
+ padding-top: 10px;
+}
+ #linkCheck{
+ margin: 1em 3em 0 0;
+ width: 101px; height: 30px;
+ background-image: url(../assets/image/check.png);
+ }
+
+ #linkStart{
+ width: 251px; height: 55px;
+ background:url(../assets/image/btn_start.png);
+ }
+ #linkStart:hover{
+ background:url(../assets/image/btn_start_hover.png);
+ }
+ #linkStart:active{
+ background:url(../assets/image/btn_start_mouse_down.png);
+ }
+ #linkPlayAgain{
+ width: 251px; height: 55px;
+ background:url(../assets/image/btn_play_again.png);
+ }
+ #linkPlayAgain:hover{
+ background:url(../assets/image/btn_play_again_hover.png);
+ }
+ #linkPlayAgain:active{
+ background:url(../assets/image/btn_play_again_mouse_down.png);
+ }
+#linkNextLesson{
+ position:absolute;
+ bottom: 75px;
+ right: 10px;
+}
+#linkPrevLesson{
+ position:absolute;
+ bottom: 75px;
+ left: 10px;
+}
+
+/**** End of the page style ****/
+
+/**** Game Styles ****/
+
+a{
+ color:#FFFFCC;
+}
+#currentTitle{
+ width: 150px;
+ height: 80px;
+ font:25px/30px "Courier New", Courier, monospace;
+ font-weight: bold;
+ color: red;
+}
+#content{
+ position:relative;
+ margin: 0 auto;
+ margin-top: 75px;
+ width: 1198px;
+ height: 560px;
+ background: url(../assets/image/background.png) no-repeat center;
+}
+
+
+ input.blankBox{
+ font: 30px/35px Verdana, Geneva, Arial, Helvetica, sans-serif;
+ height:33px;
+ width: 130px;
+ text-align:center;
+
+ }
+ .focus {
+
+ background-color: #FFEEAA;
+ }
+ .correct{
+ background-color: #C0F9F3;
+ }
+ .incorrect{
+ background-color: #FFFF00;
+ }
+ .backOpaque{
+ background-color: #A4A4A4;
+ opacity: 0.2;
+ }
+
+#help{
+ display:none;
+ position:absolute;
+ right: 60px;
+ top: 75px;;
+ width: 256px;
+ height: 600px;
+ background:url(../assets/image/help.png);
+ z-index:40;
+}
+
+
+ #gameOver{
+ opacity: 1;
+ position:absolute;
+ top:60%;
+ left: 25%;
+ color: blue;
+ text-align:center;
+ font : bold 45px/65px Arial Black, Times New Roman;
+ }
+ #gameOverInfo{
+ margin-top: 35px;
+ text-align:center;
+ font: 20px/25px Helvetica, Geneva, Arial, Verdana, sans-serif;
+ font-weight:bold;
+ color:#FF0000;
+
+ }
+ .specialText{
+ margin-top: 1em;
+ font: 20px/25px Helvetica, Geneva, Arial, Verdana, sans-serif;
+ font-weight:bold;
+ color:#FF9900;
+ border-bottom: 2px dotted #CCC;
+
+ }
diff --git a/examples/lessons/6_Maths_complexAddition/index.html b/examples/lessons/6_Maths_complexAddition/index.html new file mode 100755 index 0000000..91499dc --- /dev/null +++ b/examples/lessons/6_Maths_complexAddition/index.html @@ -0,0 +1,39 @@ +<!DOCTYPE html>
+<html>
+<head>
+ <title>Class 6 Maths Complex Addition</title>
+ <meta name="keywords" content="karma,javascript,html5,sugar,sugarlabs,gsoc,ole,nepal" />
+ <link type="text/css" rel="stylesheet" href="css/lesson.css" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <link type="image/ico" rel="icon" href="../../assets/default/image/favicon.ico" />
+ <script type="text/javascript" src="js/jquery-1.4.js"></script>
+ <script type="text/javascript" src="js/karma.js"></script>
+ <script type="text/javascript" src="js/lesson.js"></script>
+</head>
+<body>
+ <div id="header">
+ <div id="topbtn_left"><a href="#"><div id="linkBackLesson" class="linkBack"></div></a></div>
+ <div id="lesson_title">
+ <img src="assets/image/title_block_lt.png" width="33" height="75" align="absmiddle" />
+ Complex Addition <span id="currentTitle"></span>
+ <img src="assets/image/title_block_rt.png" width="33" height="75" align="absmiddle" />
+ </div>
+ <div id="topbtn_right"><a href="#"><div id="linkHelp"></div></a></div>
+ <div id="topbtn_right"><a href="http://olenepal.org"><div id="linkOle"></div></a></div>
+ </div>
+
+ <div id="content"></div>
+ <div id="help"></div>
+ <div id="gameOver"></div>
+ <form name="delayForm">
+ <input type="hidden" name="delayval" size="5">
+ </form>
+
+ <div id="footer">
+ <div id="botbtn_right"><a href="#"><div id="linkPlayAgain"></div></a></div>
+ <div id="botbtn_right"><a href="#"><div id="linkStart"></div></a></div>
+ <div id="score_box"></div>
+ <div id ="timer"></div>
+ </div>
+</body>
+</html>
diff --git a/examples/lessons/6_English_VocabularyAnimals/js/jquery-1.4.js b/examples/lessons/6_Maths_complexAddition/js/jquery-1.4.js index a448490..a448490 100755 --- a/examples/lessons/6_English_VocabularyAnimals/js/jquery-1.4.js +++ b/examples/lessons/6_Maths_complexAddition/js/jquery-1.4.js diff --git a/examples/lessons/6_English_yesNoQuestions/js/karma.js b/examples/lessons/6_Maths_complexAddition/js/karma.js index 03f027b..03f027b 100755 --- a/examples/lessons/6_English_yesNoQuestions/js/karma.js +++ b/examples/lessons/6_Maths_complexAddition/js/karma.js diff --git a/examples/lessons/6_Maths_complexAddition/js/lesson.js b/examples/lessons/6_Maths_complexAddition/js/lesson.js new file mode 100755 index 0000000..1864fb8 --- /dev/null +++ b/examples/lessons/6_Maths_complexAddition/js/lesson.js @@ -0,0 +1,217 @@ +$(document).ready(function(){ + var k = Karma({ + audio: [{'name':'correct','file':'correct.wav'}, + {'name':'incorrect','file':'incorrect.wav'}, + ]}); + + k.ready(function(){ + var TOTAL_NUMS = 5; + var MAX_NUM = 30; + var imgCounter; + var currentNum; //store the current targeted num id + var currentPlayer; + var players = ['Red','Blue']; + var randNumbers = []; + var flag_busy; + var TIME_LIMIT = 5; //within this time limit they have to answer the current question + var stopTimer = function(){ + s = 0; + clearTimeout(t); + }; + var startTimer = function(){ + s = 0; + increaseTime(); + }; + + + var increaseTime = function(){ + s++; + if(s === TIME_LIMIT){ + play = 0; + $('#content').addClass('backOpaque'); + $('#gameOver').html('!!! फेरी खेलौ बटन मा क्लिक गर !!! '); + }else{ + t=setTimeout(function(){increaseTime();},1000); + } + + }; + var genRandomNumbers = function(){ + randNumbers[0] = k.rand(1,MAX_NUM-1); + for(i=1; i<TOTAL_NUMS; i++){ + do{ + flag = 0; + randNumbers[i] = k.rand(1,MAX_NUM-1); + for(j=0; j<i; j++){ + if(randNumbers[i]===randNumbers[j]){ + flag++; + } + } + }while(flag != 0 ); //end of do while loop + } + }; + + function showText(parentDiv,divName,topPos,leftPos,numText,color){ + var textCss = { + 'position':'absolute', + 'top':topPos+'em', + 'left':leftPos+'em', + 'font':'2em arial,verdana,geneva,helvetica', + 'color':'#'+color, + 'z-index':'5' + }; + $('#'+parentDiv).append('<div id="'+divName+'"></div>'); + $('#'+divName).css(textCss).html(numText); + } + + function showPicture(divName,imgName,topPos,leftPos){ + var imgCss = { + 'position':'absolute', + 'top':topPos+'em', + 'left':leftPos+'em', + 'z-index':'2' + }; + $('#content').append('<div id="'+divName+'"></div>'); + $('#'+divName).css(imgCss).html('<img src="assets/image/'+imgName+'.png" />'); + } + + function imgAnimate(divName,topPos,leftPos,duration){ + $('#'+divName).animate( + {top:topPos+'em',left:leftPos+'em'},duration, + function(ev){ + flag_busy = 0; + $('#txtInput'+players[currentPlayer]).focus(); + startTimer(); + } + ); + } + + var animateBoy = function(){ + showPicture('imgBoy','blueBoy'+imgCounter,30.7,50); + if(imgCounter != 4){ + var t=setTimeout(function(){animateBoy();},500); + }else{ + currentNum = k.rand(0,4); + var x = 23.5+(currentNum*9.5); + showPicture('imgBlueRing','blueRing',29.5,50); + imgAnimate('imgBlueRing',6.2,x,1000); + showPicture('imgBoy','blueBoy0',30.7,50); + } + imgCounter++; + }; + + var animateGirl = function(){ + showPicture('imgGirl','redGirl'+imgCounter,30.7,30); + if(imgCounter != 4){ + var t=setTimeout(function(){animateGirl();},500); + }else{ + currentNum = k.rand(0,4); + var x = 23.5+(currentNum*9.5); + showPicture('imgRedRing','redRing',29.5,34); + imgAnimate('imgRedRing',6.2,x,1000); + showPicture('imgGirl','redGirl0',30.7,30); + } + imgCounter++; + }; + + var nextQuestion = function(){ + genRandomNumbers(); + flag_busy = 1; + for(var i = 0; i< 5; i++){ + showText('divNum'+i,'num'+i,2.5,1,randNumbers[i],'E5D700'); + } + showPicture('imgBoy','blueBoy0',30.7,50); + showPicture('imgGirl','redGirl0',30.7,30); + imgCounter = 0; + if(currentPlayer === 0){ + animateGirl(); + }else{ + animateBoy(); + } + + foucs_blur(); + }; + + function game(){ + $('#content').removeClass('backOpaque').html(''); + for(var i = 0;i<5;i++){ + var x = 22+(i*9.5); + showPicture('divNum'+i,'imgNumContainer',7,x); + } + showPicture('divScoreBox','scoreBox',15.5,22.5); + + showPicture('divtitle','title',2,27.5); + showPicture('txtRedTotal','redTotal',16,24); + showPicture('txtBlueTotal','blueTotal',16,48); + showPicture('txtRedNumPlus','redNumPlus',21.5,24); + showPicture('txtBlueNumPlus','blueNumPlus',21.5,48); + + //show current Score of numbers + showText('txtRedTotal','divRedScore',1.5,2,0,'FFF'); + showText('txtBlueTotal','divBlueScore',1.5,2,0,'FFF'); + + //text boxes for input + showText('txtRedNumPlus','textInputRed',1.6,1.5,'<input type="text" id="txtInputRed" class="blankBox">','FFF'); + $('#txtInputRed').css({'color':'red','border':'2px solid #FF0000'}); + showText('txtBlueNumPlus','textInputBlue',1.6,1.5,'<input type="text" id="txtInputBlue" class="blankBox">','FFF'); + $('#txtInputBlue').css({'color':'blue','border':'2px solid #0000FF'}); + currentPlayer = 0; + nextQuestion(); + }; + + + + + $('#linkStart').click(function(){ + game(); + }); + + $('#linkPlayAgain').click(function(){ + game(); + }); + + $('#linkHelp').click(function(){ + $('#help').slideDown(2000); + }) + .mouseout(function(){ + $('#help').slideUp(2000); + }); + + + var checkAnswer = function(){ + if(flag_busy === 0){ + var currentScore = parseInt($('#div'+players[currentPlayer]+'Score').text()); + var inputTextVal = $('#txtInput'+players[currentPlayer]).val(); + var totalVal = currentScore + randNumbers[currentNum]; + if(totalVal == inputTextVal){ + stopTimer(); + k.audio.correct.play(); + inputTextVal = $('#txtInput'+players[currentPlayer]).val(''); + $('#div'+players[currentPlayer]+'Score').html(totalVal); + $('#img'+players[currentPlayer]+'Ring').html(''); + $('#txtInput'+players[currentPlayer]).blur(); + if(currentPlayer === 0){ + currentPlayer = 1; + }else{ + currentPlayer = 0; + } + + nextQuestion(); + }else{ + k.audio.incorrect.play(); + } + } + }; + + function foucs_blur(){ + $('input[type="text"]').keypress(function(event) { + if(event.which === 13){ + checkAnswer(); + } + + }); + } + + }); //end of k.ready +}); //end of document.read + + diff --git a/examples/lessons/6_Maths_goShopping/assets/image/apple.png b/examples/lessons/6_Maths_goShopping/assets/image/apple.png Binary files differdeleted file mode 100755 index 8a982bd..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/apple.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/bag.png b/examples/lessons/6_Maths_goShopping/assets/image/bag.png Binary files differdeleted file mode 100755 index e41fd52..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/bag.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/balloon.png b/examples/lessons/6_Maths_goShopping/assets/image/balloon.png Binary files differdeleted file mode 100755 index 21a5236..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/balloon.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/book.png b/examples/lessons/6_Maths_goShopping/assets/image/book.png Binary files differdeleted file mode 100755 index 0648da7..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/book.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/bread.png b/examples/lessons/6_Maths_goShopping/assets/image/bread.png Binary files differdeleted file mode 100755 index eed6297..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/bread.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/btn_back.png b/examples/lessons/6_Maths_goShopping/assets/image/btn_back.png Binary files differdeleted file mode 100755 index d9fbf14..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/btn_back.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/btn_back_hover.png b/examples/lessons/6_Maths_goShopping/assets/image/btn_back_hover.png Binary files differdeleted file mode 100755 index 0911fcc..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/btn_back_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/btn_help.png b/examples/lessons/6_Maths_goShopping/assets/image/btn_help.png Binary files differdeleted file mode 100755 index 6753e9c..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/btn_help.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/btn_help_hover.png b/examples/lessons/6_Maths_goShopping/assets/image/btn_help_hover.png Binary files differdeleted file mode 100755 index d3ccd92..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/btn_help_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/btn_next.png b/examples/lessons/6_Maths_goShopping/assets/image/btn_next.png Binary files differdeleted file mode 100755 index 9d70993..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/btn_next.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/btn_next_hover.png b/examples/lessons/6_Maths_goShopping/assets/image/btn_next_hover.png Binary files differdeleted file mode 100755 index 2cd4d37..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/btn_next_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/btn_ole.png b/examples/lessons/6_Maths_goShopping/assets/image/btn_ole.png Binary files differdeleted file mode 100755 index 0e775e9..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/btn_ole.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/btn_ole_hover.png b/examples/lessons/6_Maths_goShopping/assets/image/btn_ole_hover.png Binary files differdeleted file mode 100755 index c43c5f7..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/btn_ole_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/btn_play_again.png b/examples/lessons/6_Maths_goShopping/assets/image/btn_play_again.png Binary files differdeleted file mode 100755 index 3594d18..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/btn_play_again.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/btn_play_again_hover.png b/examples/lessons/6_Maths_goShopping/assets/image/btn_play_again_hover.png Binary files differdeleted file mode 100755 index ebb8f8c..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/btn_play_again_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/btn_play_again_mouse_down.png b/examples/lessons/6_Maths_goShopping/assets/image/btn_play_again_mouse_down.png Binary files differdeleted file mode 100755 index 07d6e45..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/btn_play_again_mouse_down.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/btn_start.png b/examples/lessons/6_Maths_goShopping/assets/image/btn_start.png Binary files differdeleted file mode 100755 index 32e5f20..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/btn_start.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/btn_start_hover.png b/examples/lessons/6_Maths_goShopping/assets/image/btn_start_hover.png Binary files differdeleted file mode 100755 index 811ce78..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/btn_start_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/btn_start_mouse_down.png b/examples/lessons/6_Maths_goShopping/assets/image/btn_start_mouse_down.png Binary files differdeleted file mode 100755 index 5acd43b..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/btn_start_mouse_down.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/cake.png b/examples/lessons/6_Maths_goShopping/assets/image/cake.png Binary files differdeleted file mode 100755 index 075571f..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/cake.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/cap.png b/examples/lessons/6_Maths_goShopping/assets/image/cap.png Binary files differdeleted file mode 100755 index 0507d8f..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/cap.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/correct.png b/examples/lessons/6_Maths_goShopping/assets/image/correct.png Binary files differdeleted file mode 100755 index fff0b0f..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/correct.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/doll.png b/examples/lessons/6_Maths_goShopping/assets/image/doll.png Binary files differdeleted file mode 100755 index 282260e..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/doll.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/food.png b/examples/lessons/6_Maths_goShopping/assets/image/food.png Binary files differdeleted file mode 100755 index e584852..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/food.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/grapes.png b/examples/lessons/6_Maths_goShopping/assets/image/grapes.png Binary files differdeleted file mode 100755 index 7398874..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/grapes.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/help.png b/examples/lessons/6_Maths_goShopping/assets/image/help.png Binary files differdeleted file mode 100755 index a59e1d9..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/help.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/howMuchLeft.png b/examples/lessons/6_Maths_goShopping/assets/image/howMuchLeft.png Binary files differdeleted file mode 100755 index 9d39a6b..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/howMuchLeft.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/howMuchNeeded.png b/examples/lessons/6_Maths_goShopping/assets/image/howMuchNeeded.png Binary files differdeleted file mode 100755 index 52afff3..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/howMuchNeeded.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/ice.png b/examples/lessons/6_Maths_goShopping/assets/image/ice.png Binary files differdeleted file mode 100755 index 7248f45..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/ice.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/incorrect.png b/examples/lessons/6_Maths_goShopping/assets/image/incorrect.png Binary files differdeleted file mode 100755 index 4a38e07..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/incorrect.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/lays.png b/examples/lessons/6_Maths_goShopping/assets/image/lays.png Binary files differdeleted file mode 100755 index 1384186..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/lays.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/leftText.png b/examples/lessons/6_Maths_goShopping/assets/image/leftText.png Binary files differdeleted file mode 100755 index 39eaa72..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/leftText.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/mango.png b/examples/lessons/6_Maths_goShopping/assets/image/mango.png Binary files differdeleted file mode 100755 index 94ec9b7..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/mango.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/moneyNeeded.png b/examples/lessons/6_Maths_goShopping/assets/image/moneyNeeded.png Binary files differdeleted file mode 100755 index aeedb7d..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/moneyNeeded.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/moneyOk.png b/examples/lessons/6_Maths_goShopping/assets/image/moneyOk.png Binary files differdeleted file mode 100755 index 4fc12f2..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/moneyOk.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/orange.png b/examples/lessons/6_Maths_goShopping/assets/image/orange.png Binary files differdeleted file mode 100755 index 847f9c0..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/orange.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/papaya.png b/examples/lessons/6_Maths_goShopping/assets/image/papaya.png Binary files differdeleted file mode 100755 index ba6c598..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/papaya.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/pear.png b/examples/lessons/6_Maths_goShopping/assets/image/pear.png Binary files differdeleted file mode 100755 index 958649c..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/pear.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/pen.png b/examples/lessons/6_Maths_goShopping/assets/image/pen.png Binary files differdeleted file mode 100755 index 43f4f96..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/pen.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/pomogranate.png b/examples/lessons/6_Maths_goShopping/assets/image/pomogranate.png Binary files differdeleted file mode 100755 index 84183ab..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/pomogranate.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/rightText.png b/examples/lessons/6_Maths_goShopping/assets/image/rightText.png Binary files differdeleted file mode 100755 index 0092ae6..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/rightText.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/roti.png b/examples/lessons/6_Maths_goShopping/assets/image/roti.png Binary files differdeleted file mode 100755 index 3a62fc7..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/roti.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/rs10.png b/examples/lessons/6_Maths_goShopping/assets/image/rs10.png Binary files differdeleted file mode 100755 index 1ce7088..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/rs10.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/rs100.png b/examples/lessons/6_Maths_goShopping/assets/image/rs100.png Binary files differdeleted file mode 100755 index 156a236..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/rs100.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/rs25.png b/examples/lessons/6_Maths_goShopping/assets/image/rs25.png Binary files differdeleted file mode 100755 index ff11e54..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/rs25.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/rs5.png b/examples/lessons/6_Maths_goShopping/assets/image/rs5.png Binary files differdeleted file mode 100755 index 4d9b758..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/rs5.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/assets/image/rs50.png b/examples/lessons/6_Maths_goShopping/assets/image/rs50.png Binary files differdeleted file mode 100755 index 9b949f0..0000000 --- a/examples/lessons/6_Maths_goShopping/assets/image/rs50.png +++ /dev/null diff --git a/examples/lessons/6_Maths_goShopping/css/lesson.css b/examples/lessons/6_Maths_goShopping/css/lesson.css deleted file mode 100755 index 4fc67bc..0000000 --- a/examples/lessons/6_Maths_goShopping/css/lesson.css +++ /dev/null @@ -1,299 +0,0 @@ -@CHARSET "UTF-8";
-/****** Page Styles ****/
-
-/* Designed for 1200*900 px screen resolution */
-
-body {
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 10pt;
- margin: 0px;
- background-color: #FFFFCC;
-}
-#header {
- background-image: url(../assets/image/bg_header.png);
- background-repeat: repeat-x;
- height: 75px;
- width: 100%;
- position: absolute;
- left: 0px;
- top: 0px;
-}
-#topbtn_left {
- float: left;
- height: 60px;
- width: 60px;
- padding-top: 6px;
- padding-left: 15px;
-}
-
-
- .linkBack{
- width: 60px; height: 59px;
- background:url(../assets/image/btn_back.png);
- }
- .linkBack:hover{
- background:url(../assets/image/btn_back_hover.png);
- }
-
-#lesson_title {
- float: left;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 16pt;
- font-weight: bold;
- color: #FFFFFF;
- margin-left: 10px;
- background-image: url(../assets/image/bg_title_block.png);
-}
-#topbtn_right {
- float: right;
- height: 60px;
- width: 60px;
- padding-top: 6px;
- padding-right: 15px;
-}
- #linkHelp{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_help.png);
- }
- #linkHelp:hover{
- background:url(../assets/image/btn_help_hover.png);
- }
- #linkOle{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_ole.png);
- }
- #linkOle:hover{
- background:url(../assets/image/btn_ole_hover.png);
- }
- .linkNext{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_next.png);
- }
- .linkNext:hover{
- background:url(../assets/image/btn_next_hover.png);
- }
-#footer {
- position:relative;
- background-image: url(../assets/image/bg_footer.png);
- background-repeat: repeat-x;
- height: 75px;
- width: 100%;
- left: 0px;
- bottom: 0px;
-}
-#score_box {
- float: left;
- padding-left: 5px;
- padding-top: 0.7em;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- color: #FFFF00;
- font-size: 16pt;
- font-weight: bold;
-}
-#botbtn_right {
- float: right;
- height: 55px;
- padding-right: 5px;
- padding-top: 10px;
-}
- #linkCheck{
- margin: 1em 3em 0 0;
- width: 101px; height: 30px;
- background-image: url(../assets/image/check.png);
- }
-
- #linkStart{
- width: 251px; height: 55px;
- background:url(../assets/image/btn_start.png);
- }
- #linkStart:hover{
- background:url(../assets/image/btn_start_hover.png);
- }
- #linkStart:active{
- background:url(../assets/image/btn_start_mouse_down.png);
- }
- #linkPlayAgain{
- width: 251px; height: 55px;
- background:url(../assets/image/btn_play_again.png);
- }
- #linkPlayAgain:hover{
- background:url(../assets/image/btn_play_again_hover.png);
- }
- #linkPlayAgain:active{
- background:url(../assets/image/btn_play_again_mouse_down.png);
- }
-#linkNextExercise{
- position:absolute;
- bottom: 75px;
- right: 10px;
-}
-#linkPrevExercise{
- position:absolute;
- bottom: 75px;
- left: 10px;
-}
-
-/**** End of the page style ****/
-
-/**** Game Styles ****/
-
-a{
- color:#FFFFCC;
-}
-#currentTitle{
- width: 150px;
- height: 80xp;
- font:25px/30px "Courier New", Courier, monospace;
- font-weight: bold;
- color: red;
-}
-#content{
- margin: 0 auto;
- margin-top: 75px;
- width: 95%;
- height: 550px;
- padding: 0.5em;
-}
- #left-side{
- position:relative;
- margin: 60px auto;
- margin-bottom:0;
- padding-top:50px;
- float:left;
- width: 60%;
- height: 350px;
- border: 4px solid #000;
- }
- #leftText{
- position:absolute;
- top: -60px;
- left: 100px;
- text-align:center;
- height: 40px;
- font : 20px/25px Verdana,Helvetica,Arial Black, Times New Roman;
- color: #FF0000;
- }
- .default{
- float:left;
- margin: 0px auto;
- text-align:center;
- width: 170px;
- height: 44px;
- }
- .moneyPositions{
- position:absolute;
- width: 489px;
- height: 199px;
- }
-
- #right-side{
- position:relative;
- margin: 60px auto;
- margin-bottom:0;
- padding-top: 50px;
- float:right;
- width: 35%;
- height: 350px;
- border: 4px solid #000;
- }
- #rightText{
- position:absolute;
- top: -60px;
- left: 20px;
- text-align:center;
- height: 40px;
- font : 20px/25px Verdana,Helvetica,Arial Black, Times New Roman;
- color: #FF0000;
- }
- .thingsPositions{
- position:absolute;
- width: 150px;
- height: 150px;
- }
- #checkSection{
- position: static;
- bottom: -25px;
- left: 50%;
- width: 40%;
- height: 65px;
- text-align:center;
- }
- .checkMoney{
- float:left;
- margin: 0.8em;
- }
- #howmuchText{
- float:left;
- margin: 0.5em 0 0.9em 1em ;
- width: auto;
- height: 35px;
- }
- #textDiv{
- float:left;
- width: 75px;
- margin:0.5em 0 0 1em;
- height: 35px;
- }
-
- input.textBox{
- size:3;
- font: 25px/30px Verdana, Geneva, Arial, Helvetica, sans-serif;
- font-weight: bold;
- height:35px;
- width: 75px;
- text-align:center;
- }
-
-
- .focus {
- background-color: #FF9900;
- }
-
- #checkDisplay{
- float:right;
- width: 64px;
- height: 64px;
- margin: 0 0 0 1em;
- }
-
- .backOpaque{
- background-color: #A4A4A4;
- opacity: 0.2;
- }
- #help{
- display:none;
- position:absolute;
- right: 60px;
- top: 75px;;
- width: 256px;
- height: 600px;
- background:url(../assets/image/help.png);
- z-index:40;
- }
-
- #gameOver{
- opacity: 1;
- display:none;
- position:absolute;
- top:45%;
- left: 30%;
- color: blue;
- text-align:center;
- font : bold 45px/65px Arial Black, Times New Roman;
- }
- #gameOverInfo{
- margin-top: 35px;
- text-align:center;
- font: 20px/25px Helvetica, Geneva, Arial, Verdana, sans-serif;
- font-weight:bold;
- color:#FF0000;
-
- }
- .specialText{
- margin-top: 1em;
- font: 20px/25px Helvetica, Geneva, Arial, Verdana, sans-serif;
- font-weight:bold;
- color:#FF9900;
- border-bottom: 2px dotted #CCC;
-
- }
diff --git a/examples/lessons/6_Maths_goShopping/index.html b/examples/lessons/6_Maths_goShopping/index.html deleted file mode 100755 index b88c678..0000000 --- a/examples/lessons/6_Maths_goShopping/index.html +++ /dev/null @@ -1,52 +0,0 @@ -<!DOCTYPE html>
-<head>
- <title>Class 6 Maths Go Shopping</title>
- <meta name="keywords" content="karma,javascript,html5,sugar,sugarlabs,gsoc,ole,nepal" />
- <link type="text/css" rel="stylesheet" href="css/ui.scoreboard.css" />
- <link type="text/css" rel="stylesheet" href="css/lesson.css" />
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <link type="image/ico" rel="icon" href="../../assets/default/image/favicon.ico" />
- <script type="text/javascript" src="js/jquery-1.3.2.min.js"></script>
- <script type="text/javascript" src="js/ui.core.js"></script>
- <script type="text/javascript" src="js/ui.scoreboard.js"></script>
- <script type="text/javascript" src="js/karma.js"></script>
- <script type="text/javascript" src="js/lesson.js"></script>
-</head>
-<body>
- <div id="header">
- <div id="topbtn_left"><a href="#"><div id="linkBackLesson" class="linkBack"></div></a></div>
- <div id="lesson_title">
- <img src="assets/image/title_block_lt.png" width="33" height="75" align="absmiddle" />
- Go Shopping || <span id="currentTitle">किनमेल </span>
- <img src="assets/image/title_block_rt.png" width="33" height="75" align="absmiddle" />
- </div>
- <div id="topbtn_right"><a href="#"><div id="linkHelp"></div></a></div>
- <div id="topbtn_right"><a href="http://olenepal.org"><div id="linkOle"></div></a></div>
- </div>
-
- <div id="content">
- <div id="left-side"></div>
- <div id="right-side"></div>
- <div id="checkSection">
- <div id="checkButtons">
- <img id="moneyOk" class="checkMoney" src="assets/image/moneyOk.png" />
- <img id="moneyNeeded" class="checkMoney" src="assets/image/moneyNeeded.png" />
- </div>
- <div id="howmuchText"></div>
- <div id="textDiv"></div>
- <div id="checkDisplay"></div>
- </div>
- </div>
- <div id="help"></div>
- <div id="gameOver"></div>
- <form name="delayForm">
- <input type="hidden" name="delayval" size="5">
- </form>
-
- <div id="footer">
- <div id="score_box"></div>
- <div id="botbtn_right"><a href="#"><div id="linkPlayAgain"></div></a></div>
- <div id="botbtn_right"><a href="#"><div id="linkStart"></div></a></div>
- </div>
-</body>
-</html>
diff --git a/examples/lessons/6_Maths_goShopping/js/jquery-1.3.2.min.js b/examples/lessons/6_Maths_goShopping/js/jquery-1.3.2.min.js deleted file mode 100755 index b1ae21d..0000000 --- a/examples/lessons/6_Maths_goShopping/js/jquery-1.3.2.min.js +++ /dev/null @@ -1,19 +0,0 @@ -/* - * jQuery JavaScript Library v1.3.2 - * http://jquery.com/ - * - * Copyright (c) 2009 John Resig - * Dual licensed under the MIT and GPL licenses. - * http://docs.jquery.com/License - * - * Date: 2009-02-19 17:34:21 -0500 (Thu, 19 Feb 2009) - * Revision: 6246 - */ -(function(){var l=this,g,y=l.jQuery,p=l.$,o=l.jQuery=l.$=function(E,F){return new o.fn.init(E,F)},D=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,f=/^.[^:#\[\.,]*$/;o.fn=o.prototype={init:function(E,H){E=E||document;if(E.nodeType){this[0]=E;this.length=1;this.context=E;return this}if(typeof E==="string"){var G=D.exec(E);if(G&&(G[1]||!H)){if(G[1]){E=o.clean([G[1]],H)}else{var I=document.getElementById(G[3]);if(I&&I.id!=G[3]){return o().find(E)}var F=o(I||[]);F.context=document;F.selector=E;return F}}else{return o(H).find(E)}}else{if(o.isFunction(E)){return o(document).ready(E)}}if(E.selector&&E.context){this.selector=E.selector;this.context=E.context}return this.setArray(o.isArray(E)?E:o.makeArray(E))},selector:"",jquery:"1.3.2",size:function(){return this.length},get:function(E){return E===g?Array.prototype.slice.call(this):this[E]},pushStack:function(F,H,E){var G=o(F);G.prevObject=this;G.context=this.context;if(H==="find"){G.selector=this.selector+(this.selector?" ":"")+E}else{if(H){G.selector=this.selector+"."+H+"("+E+")"}}return G},setArray:function(E){this.length=0;Array.prototype.push.apply(this,E);return this},each:function(F,E){return o.each(this,F,E)},index:function(E){return o.inArray(E&&E.jquery?E[0]:E,this)},attr:function(F,H,G){var E=F;if(typeof F==="string"){if(H===g){return this[0]&&o[G||"attr"](this[0],F)}else{E={};E[F]=H}}return this.each(function(I){for(F in E){o.attr(G?this.style:this,F,o.prop(this,E[F],G,I,F))}})},css:function(E,F){if((E=="width"||E=="height")&&parseFloat(F)<0){F=g}return this.attr(E,F,"curCSS")},text:function(F){if(typeof F!=="object"&&F!=null){return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(F))}var E="";o.each(F||this,function(){o.each(this.childNodes,function(){if(this.nodeType!=8){E+=this.nodeType!=1?this.nodeValue:o.fn.text([this])}})});return E},wrapAll:function(E){if(this[0]){var F=o(E,this[0].ownerDocument).clone();if(this[0].parentNode){F.insertBefore(this[0])}F.map(function(){var G=this;while(G.firstChild){G=G.firstChild}return G}).append(this)}return this},wrapInner:function(E){return this.each(function(){o(this).contents().wrapAll(E)})},wrap:function(E){return this.each(function(){o(this).wrapAll(E)})},append:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.appendChild(E)}})},prepend:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.insertBefore(E,this.firstChild)}})},before:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this)})},after:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this.nextSibling)})},end:function(){return this.prevObject||o([])},push:[].push,sort:[].sort,splice:[].splice,find:function(E){if(this.length===1){var F=this.pushStack([],"find",E);F.length=0;o.find(E,this[0],F);return F}else{return this.pushStack(o.unique(o.map(this,function(G){return o.find(E,G)})),"find",E)}},clone:function(G){var E=this.map(function(){if(!o.support.noCloneEvent&&!o.isXMLDoc(this)){var I=this.outerHTML;if(!I){var J=this.ownerDocument.createElement("div");J.appendChild(this.cloneNode(true));I=J.innerHTML}return o.clean([I.replace(/ jQuery\d+="(?:\d+|null)"/g,"").replace(/^\s*/,"")])[0]}else{return this.cloneNode(true)}});if(G===true){var H=this.find("*").andSelf(),F=0;E.find("*").andSelf().each(function(){if(this.nodeName!==H[F].nodeName){return}var I=o.data(H[F],"events");for(var K in I){for(var J in I[K]){o.event.add(this,K,I[K][J],I[K][J].data)}}F++})}return E},filter:function(E){return this.pushStack(o.isFunction(E)&&o.grep(this,function(G,F){return E.call(G,F)})||o.multiFilter(E,o.grep(this,function(F){return F.nodeType===1})),"filter",E)},closest:function(E){var G=o.expr.match.POS.test(E)?o(E):null,F=0;return this.map(function(){var H=this;while(H&&H.ownerDocument){if(G?G.index(H)>-1:o(H).is(E)){o.data(H,"closest",F);return H}H=H.parentNode;F++}})},not:function(E){if(typeof E==="string"){if(f.test(E)){return this.pushStack(o.multiFilter(E,this,true),"not",E)}else{E=o.multiFilter(E,this)}}var F=E.length&&E[E.length-1]!==g&&!E.nodeType;return this.filter(function(){return F?o.inArray(this,E)<0:this!=E})},add:function(E){return this.pushStack(o.unique(o.merge(this.get(),typeof E==="string"?o(E):o.makeArray(E))))},is:function(E){return !!E&&o.multiFilter(E,this).length>0},hasClass:function(E){return !!E&&this.is("."+E)},val:function(K){if(K===g){var E=this[0];if(E){if(o.nodeName(E,"option")){return(E.attributes.value||{}).specified?E.value:E.text}if(o.nodeName(E,"select")){var I=E.selectedIndex,L=[],M=E.options,H=E.type=="select-one";if(I<0){return null}for(var F=H?I:0,J=H?I+1:M.length;F<J;F++){var G=M[F];if(G.selected){K=o(G).val();if(H){return K}L.push(K)}}return L}return(E.value||"").replace(/\r/g,"")}return g}if(typeof K==="number"){K+=""}return this.each(function(){if(this.nodeType!=1){return}if(o.isArray(K)&&/radio|checkbox/.test(this.type)){this.checked=(o.inArray(this.value,K)>=0||o.inArray(this.name,K)>=0)}else{if(o.nodeName(this,"select")){var N=o.makeArray(K);o("option",this).each(function(){this.selected=(o.inArray(this.value,N)>=0||o.inArray(this.text,N)>=0)});if(!N.length){this.selectedIndex=-1}}else{this.value=K}}})},html:function(E){return E===g?(this[0]?this[0].innerHTML.replace(/ jQuery\d+="(?:\d+|null)"/g,""):null):this.empty().append(E)},replaceWith:function(E){return this.after(E).remove()},eq:function(E){return this.slice(E,+E+1)},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","))},map:function(E){return this.pushStack(o.map(this,function(G,F){return E.call(G,F,G)}))},andSelf:function(){return this.add(this.prevObject)},domManip:function(J,M,L){if(this[0]){var I=(this[0].ownerDocument||this[0]).createDocumentFragment(),F=o.clean(J,(this[0].ownerDocument||this[0]),I),H=I.firstChild;if(H){for(var G=0,E=this.length;G<E;G++){L.call(K(this[G],H),this.length>1||G>0?I.cloneNode(true):I)}}if(F){o.each(F,z)}}return this;function K(N,O){return M&&o.nodeName(N,"table")&&o.nodeName(O,"tr")?(N.getElementsByTagName("tbody")[0]||N.appendChild(N.ownerDocument.createElement("tbody"))):N}}};o.fn.init.prototype=o.fn;function z(E,F){if(F.src){o.ajax({url:F.src,async:false,dataType:"script"})}else{o.globalEval(F.text||F.textContent||F.innerHTML||"")}if(F.parentNode){F.parentNode.removeChild(F)}}function e(){return +new Date}o.extend=o.fn.extend=function(){var J=arguments[0]||{},H=1,I=arguments.length,E=false,G;if(typeof J==="boolean"){E=J;J=arguments[1]||{};H=2}if(typeof J!=="object"&&!o.isFunction(J)){J={}}if(I==H){J=this;--H}for(;H<I;H++){if((G=arguments[H])!=null){for(var F in G){var K=J[F],L=G[F];if(J===L){continue}if(E&&L&&typeof L==="object"&&!L.nodeType){J[F]=o.extend(E,K||(L.length!=null?[]:{}),L)}else{if(L!==g){J[F]=L}}}}}return J};var b=/z-?index|font-?weight|opacity|zoom|line-?height/i,q=document.defaultView||{},s=Object.prototype.toString;o.extend({noConflict:function(E){l.$=p;if(E){l.jQuery=y}return o},isFunction:function(E){return s.call(E)==="[object Function]"},isArray:function(E){return s.call(E)==="[object Array]"},isXMLDoc:function(E){return E.nodeType===9&&E.documentElement.nodeName!=="HTML"||!!E.ownerDocument&&o.isXMLDoc(E.ownerDocument)},globalEval:function(G){if(G&&/\S/.test(G)){var F=document.getElementsByTagName("head")[0]||document.documentElement,E=document.createElement("script");E.type="text/javascript";if(o.support.scriptEval){E.appendChild(document.createTextNode(G))}else{E.text=G}F.insertBefore(E,F.firstChild);F.removeChild(E)}},nodeName:function(F,E){return F.nodeName&&F.nodeName.toUpperCase()==E.toUpperCase()},each:function(G,K,F){var E,H=0,I=G.length;if(F){if(I===g){for(E in G){if(K.apply(G[E],F)===false){break}}}else{for(;H<I;){if(K.apply(G[H++],F)===false){break}}}}else{if(I===g){for(E in G){if(K.call(G[E],E,G[E])===false){break}}}else{for(var J=G[0];H<I&&K.call(J,H,J)!==false;J=G[++H]){}}}return G},prop:function(H,I,G,F,E){if(o.isFunction(I)){I=I.call(H,F)}return typeof I==="number"&&G=="curCSS"&&!b.test(E)?I+"px":I},className:{add:function(E,F){o.each((F||"").split(/\s+/),function(G,H){if(E.nodeType==1&&!o.className.has(E.className,H)){E.className+=(E.className?" ":"")+H}})},remove:function(E,F){if(E.nodeType==1){E.className=F!==g?o.grep(E.className.split(/\s+/),function(G){return !o.className.has(F,G)}).join(" "):""}},has:function(F,E){return F&&o.inArray(E,(F.className||F).toString().split(/\s+/))>-1}},swap:function(H,G,I){var E={};for(var F in G){E[F]=H.style[F];H.style[F]=G[F]}I.call(H);for(var F in G){H.style[F]=E[F]}},css:function(H,F,J,E){if(F=="width"||F=="height"){var L,G={position:"absolute",visibility:"hidden",display:"block"},K=F=="width"?["Left","Right"]:["Top","Bottom"];function I(){L=F=="width"?H.offsetWidth:H.offsetHeight;if(E==="border"){return}o.each(K,function(){if(!E){L-=parseFloat(o.curCSS(H,"padding"+this,true))||0}if(E==="margin"){L+=parseFloat(o.curCSS(H,"margin"+this,true))||0}else{L-=parseFloat(o.curCSS(H,"border"+this+"Width",true))||0}})}if(H.offsetWidth!==0){I()}else{o.swap(H,G,I)}return Math.max(0,Math.round(L))}return o.curCSS(H,F,J)},curCSS:function(I,F,G){var L,E=I.style;if(F=="opacity"&&!o.support.opacity){L=o.attr(E,"opacity");return L==""?"1":L}if(F.match(/float/i)){F=w}if(!G&&E&&E[F]){L=E[F]}else{if(q.getComputedStyle){if(F.match(/float/i)){F="float"}F=F.replace(/([A-Z])/g,"-$1").toLowerCase();var M=q.getComputedStyle(I,null);if(M){L=M.getPropertyValue(F)}if(F=="opacity"&&L==""){L="1"}}else{if(I.currentStyle){var J=F.replace(/\-(\w)/g,function(N,O){return O.toUpperCase()});L=I.currentStyle[F]||I.currentStyle[J];if(!/^\d+(px)?$/i.test(L)&&/^\d/.test(L)){var H=E.left,K=I.runtimeStyle.left;I.runtimeStyle.left=I.currentStyle.left;E.left=L||0;L=E.pixelLeft+"px";E.left=H;I.runtimeStyle.left=K}}}}return L},clean:function(F,K,I){K=K||document;if(typeof K.createElement==="undefined"){K=K.ownerDocument||K[0]&&K[0].ownerDocument||document}if(!I&&F.length===1&&typeof F[0]==="string"){var H=/^<(\w+)\s*\/?>$/.exec(F[0]);if(H){return[K.createElement(H[1])]}}var G=[],E=[],L=K.createElement("div");o.each(F,function(P,S){if(typeof S==="number"){S+=""}if(!S){return}if(typeof S==="string"){S=S.replace(/(<(\w+)[^>]*?)\/>/g,function(U,V,T){return T.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?U:V+"></"+T+">"});var O=S.replace(/^\s+/,"").substring(0,10).toLowerCase();var Q=!O.indexOf("<opt")&&[1,"<select multiple='multiple'>","</select>"]||!O.indexOf("<leg")&&[1,"<fieldset>","</fieldset>"]||O.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"<table>","</table>"]||!O.indexOf("<tr")&&[2,"<table><tbody>","</tbody></table>"]||(!O.indexOf("<td")||!O.indexOf("<th"))&&[3,"<table><tbody><tr>","</tr></tbody></table>"]||!O.indexOf("<col")&&[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"]||!o.support.htmlSerialize&&[1,"div<div>","</div>"]||[0,"",""];L.innerHTML=Q[1]+S+Q[2];while(Q[0]--){L=L.lastChild}if(!o.support.tbody){var R=/<tbody/i.test(S),N=!O.indexOf("<table")&&!R?L.firstChild&&L.firstChild.childNodes:Q[1]=="<table>"&&!R?L.childNodes:[];for(var M=N.length-1;M>=0;--M){if(o.nodeName(N[M],"tbody")&&!N[M].childNodes.length){N[M].parentNode.removeChild(N[M])}}}if(!o.support.leadingWhitespace&&/^\s/.test(S)){L.insertBefore(K.createTextNode(S.match(/^\s*/)[0]),L.firstChild)}S=o.makeArray(L.childNodes)}if(S.nodeType){G.push(S)}else{G=o.merge(G,S)}});if(I){for(var J=0;G[J];J++){if(o.nodeName(G[J],"script")&&(!G[J].type||G[J].type.toLowerCase()==="text/javascript")){E.push(G[J].parentNode?G[J].parentNode.removeChild(G[J]):G[J])}else{if(G[J].nodeType===1){G.splice.apply(G,[J+1,0].concat(o.makeArray(G[J].getElementsByTagName("script"))))}I.appendChild(G[J])}}return E}return G},attr:function(J,G,K){if(!J||J.nodeType==3||J.nodeType==8){return g}var H=!o.isXMLDoc(J),L=K!==g;G=H&&o.props[G]||G;if(J.tagName){var F=/href|src|style/.test(G);if(G=="selected"&&J.parentNode){J.parentNode.selectedIndex}if(G in J&&H&&!F){if(L){if(G=="type"&&o.nodeName(J,"input")&&J.parentNode){throw"type property can't be changed"}J[G]=K}if(o.nodeName(J,"form")&&J.getAttributeNode(G)){return J.getAttributeNode(G).nodeValue}if(G=="tabIndex"){var I=J.getAttributeNode("tabIndex");return I&&I.specified?I.value:J.nodeName.match(/(button|input|object|select|textarea)/i)?0:J.nodeName.match(/^(a|area)$/i)&&J.href?0:g}return J[G]}if(!o.support.style&&H&&G=="style"){return o.attr(J.style,"cssText",K)}if(L){J.setAttribute(G,""+K)}var E=!o.support.hrefNormalized&&H&&F?J.getAttribute(G,2):J.getAttribute(G);return E===null?g:E}if(!o.support.opacity&&G=="opacity"){if(L){J.zoom=1;J.filter=(J.filter||"").replace(/alpha\([^)]*\)/,"")+(parseInt(K)+""=="NaN"?"":"alpha(opacity="+K*100+")")}return J.filter&&J.filter.indexOf("opacity=")>=0?(parseFloat(J.filter.match(/opacity=([^)]*)/)[1])/100)+"":""}G=G.replace(/-([a-z])/ig,function(M,N){return N.toUpperCase()});if(L){J[G]=K}return J[G]},trim:function(E){return(E||"").replace(/^\s+|\s+$/g,"")},makeArray:function(G){var E=[];if(G!=null){var F=G.length;if(F==null||typeof G==="string"||o.isFunction(G)||G.setInterval){E[0]=G}else{while(F){E[--F]=G[F]}}}return E},inArray:function(G,H){for(var E=0,F=H.length;E<F;E++){if(H[E]===G){return E}}return -1},merge:function(H,E){var F=0,G,I=H.length;if(!o.support.getAll){while((G=E[F++])!=null){if(G.nodeType!=8){H[I++]=G}}}else{while((G=E[F++])!=null){H[I++]=G}}return H},unique:function(K){var F=[],E={};try{for(var G=0,H=K.length;G<H;G++){var J=o.data(K[G]);if(!E[J]){E[J]=true;F.push(K[G])}}}catch(I){F=K}return F},grep:function(F,J,E){var G=[];for(var H=0,I=F.length;H<I;H++){if(!E!=!J(F[H],H)){G.push(F[H])}}return G},map:function(E,J){var F=[];for(var G=0,H=E.length;G<H;G++){var I=J(E[G],G);if(I!=null){F[F.length]=I}}return F.concat.apply([],F)}});var C=navigator.userAgent.toLowerCase();o.browser={version:(C.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)||[0,"0"])[1],safari:/webkit/.test(C),opera:/opera/.test(C),msie:/msie/.test(C)&&!/opera/.test(C),mozilla:/mozilla/.test(C)&&!/(compatible|webkit)/.test(C)};o.each({parent:function(E){return E.parentNode},parents:function(E){return o.dir(E,"parentNode")},next:function(E){return o.nth(E,2,"nextSibling")},prev:function(E){return o.nth(E,2,"previousSibling")},nextAll:function(E){return o.dir(E,"nextSibling")},prevAll:function(E){return o.dir(E,"previousSibling")},siblings:function(E){return o.sibling(E.parentNode.firstChild,E)},children:function(E){return o.sibling(E.firstChild)},contents:function(E){return o.nodeName(E,"iframe")?E.contentDocument||E.contentWindow.document:o.makeArray(E.childNodes)}},function(E,F){o.fn[E]=function(G){var H=o.map(this,F);if(G&&typeof G=="string"){H=o.multiFilter(G,H)}return this.pushStack(o.unique(H),E,G)}});o.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(E,F){o.fn[E]=function(G){var J=[],L=o(G);for(var K=0,H=L.length;K<H;K++){var I=(K>0?this.clone(true):this).get();o.fn[F].apply(o(L[K]),I);J=J.concat(I)}return this.pushStack(J,E,G)}});o.each({removeAttr:function(E){o.attr(this,E,"");if(this.nodeType==1){this.removeAttribute(E)}},addClass:function(E){o.className.add(this,E)},removeClass:function(E){o.className.remove(this,E)},toggleClass:function(F,E){if(typeof E!=="boolean"){E=!o.className.has(this,F)}o.className[E?"add":"remove"](this,F)},remove:function(E){if(!E||o.filter(E,[this]).length){o("*",this).add([this]).each(function(){o.event.remove(this);o.removeData(this)});if(this.parentNode){this.parentNode.removeChild(this)}}},empty:function(){o(this).children().remove();while(this.firstChild){this.removeChild(this.firstChild)}}},function(E,F){o.fn[E]=function(){return this.each(F,arguments)}});function j(E,F){return E[0]&&parseInt(o.curCSS(E[0],F,true),10)||0}var h="jQuery"+e(),v=0,A={};o.extend({cache:{},data:function(F,E,G){F=F==l?A:F;var H=F[h];if(!H){H=F[h]=++v}if(E&&!o.cache[H]){o.cache[H]={}}if(G!==g){o.cache[H][E]=G}return E?o.cache[H][E]:H},removeData:function(F,E){F=F==l?A:F;var H=F[h];if(E){if(o.cache[H]){delete o.cache[H][E];E="";for(E in o.cache[H]){break}if(!E){o.removeData(F)}}}else{try{delete F[h]}catch(G){if(F.removeAttribute){F.removeAttribute(h)}}delete o.cache[H]}},queue:function(F,E,H){if(F){E=(E||"fx")+"queue";var G=o.data(F,E);if(!G||o.isArray(H)){G=o.data(F,E,o.makeArray(H))}else{if(H){G.push(H)}}}return G},dequeue:function(H,G){var E=o.queue(H,G),F=E.shift();if(!G||G==="fx"){F=E[0]}if(F!==g){F.call(H)}}});o.fn.extend({data:function(E,G){var H=E.split(".");H[1]=H[1]?"."+H[1]:"";if(G===g){var F=this.triggerHandler("getData"+H[1]+"!",[H[0]]);if(F===g&&this.length){F=o.data(this[0],E)}return F===g&&H[1]?this.data(H[0]):F}else{return this.trigger("setData"+H[1]+"!",[H[0],G]).each(function(){o.data(this,E,G)})}},removeData:function(E){return this.each(function(){o.removeData(this,E)})},queue:function(E,F){if(typeof E!=="string"){F=E;E="fx"}if(F===g){return o.queue(this[0],E)}return this.each(function(){var G=o.queue(this,E,F);if(E=="fx"&&G.length==1){G[0].call(this)}})},dequeue:function(E){return this.each(function(){o.dequeue(this,E)})}}); -/* - * Sizzle CSS Selector Engine - v0.9.3 - * Copyright 2009, The Dojo Foundation - * Released under the MIT, BSD, and GPL Licenses. - * More information: http://sizzlejs.com/ - */ -(function(){var R=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?/g,L=0,H=Object.prototype.toString;var F=function(Y,U,ab,ac){ab=ab||[];U=U||document;if(U.nodeType!==1&&U.nodeType!==9){return[]}if(!Y||typeof Y!=="string"){return ab}var Z=[],W,af,ai,T,ad,V,X=true;R.lastIndex=0;while((W=R.exec(Y))!==null){Z.push(W[1]);if(W[2]){V=RegExp.rightContext;break}}if(Z.length>1&&M.exec(Y)){if(Z.length===2&&I.relative[Z[0]]){af=J(Z[0]+Z[1],U)}else{af=I.relative[Z[0]]?[U]:F(Z.shift(),U);while(Z.length){Y=Z.shift();if(I.relative[Y]){Y+=Z.shift()}af=J(Y,af)}}}else{var ae=ac?{expr:Z.pop(),set:E(ac)}:F.find(Z.pop(),Z.length===1&&U.parentNode?U.parentNode:U,Q(U));af=F.filter(ae.expr,ae.set);if(Z.length>0){ai=E(af)}else{X=false}while(Z.length){var ah=Z.pop(),ag=ah;if(!I.relative[ah]){ah=""}else{ag=Z.pop()}if(ag==null){ag=U}I.relative[ah](ai,ag,Q(U))}}if(!ai){ai=af}if(!ai){throw"Syntax error, unrecognized expression: "+(ah||Y)}if(H.call(ai)==="[object Array]"){if(!X){ab.push.apply(ab,ai)}else{if(U.nodeType===1){for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&(ai[aa]===true||ai[aa].nodeType===1&&K(U,ai[aa]))){ab.push(af[aa])}}}else{for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&ai[aa].nodeType===1){ab.push(af[aa])}}}}}else{E(ai,ab)}if(V){F(V,U,ab,ac);if(G){hasDuplicate=false;ab.sort(G);if(hasDuplicate){for(var aa=1;aa<ab.length;aa++){if(ab[aa]===ab[aa-1]){ab.splice(aa--,1)}}}}}return ab};F.matches=function(T,U){return F(T,null,null,U)};F.find=function(aa,T,ab){var Z,X;if(!aa){return[]}for(var W=0,V=I.order.length;W<V;W++){var Y=I.order[W],X;if((X=I.match[Y].exec(aa))){var U=RegExp.leftContext;if(U.substr(U.length-1)!=="\\"){X[1]=(X[1]||"").replace(/\\/g,"");Z=I.find[Y](X,T,ab);if(Z!=null){aa=aa.replace(I.match[Y],"");break}}}}if(!Z){Z=T.getElementsByTagName("*")}return{set:Z,expr:aa}};F.filter=function(ad,ac,ag,W){var V=ad,ai=[],aa=ac,Y,T,Z=ac&&ac[0]&&Q(ac[0]);while(ad&&ac.length){for(var ab in I.filter){if((Y=I.match[ab].exec(ad))!=null){var U=I.filter[ab],ah,af;T=false;if(aa==ai){ai=[]}if(I.preFilter[ab]){Y=I.preFilter[ab](Y,aa,ag,ai,W,Z);if(!Y){T=ah=true}else{if(Y===true){continue}}}if(Y){for(var X=0;(af=aa[X])!=null;X++){if(af){ah=U(af,Y,X,aa);var ae=W^!!ah;if(ag&&ah!=null){if(ae){T=true}else{aa[X]=false}}else{if(ae){ai.push(af);T=true}}}}}if(ah!==g){if(!ag){aa=ai}ad=ad.replace(I.match[ab],"");if(!T){return[]}break}}}if(ad==V){if(T==null){throw"Syntax error, unrecognized expression: "+ad}else{break}}V=ad}return aa};var I=F.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF_-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF_-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*_-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+-]*)\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF_-]|\\.)+)(?:\((['"]*)((?:\([^\)]+\)|[^\2\(\)]*)+)\2\))?/},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(T){return T.getAttribute("href")}},relative:{"+":function(aa,T,Z){var X=typeof T==="string",ab=X&&!/\W/.test(T),Y=X&&!ab;if(ab&&!Z){T=T.toUpperCase()}for(var W=0,V=aa.length,U;W<V;W++){if((U=aa[W])){while((U=U.previousSibling)&&U.nodeType!==1){}aa[W]=Y||U&&U.nodeName===T?U||false:U===T}}if(Y){F.filter(T,aa,true)}},">":function(Z,U,aa){var X=typeof U==="string";if(X&&!/\W/.test(U)){U=aa?U:U.toUpperCase();for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){var W=Y.parentNode;Z[V]=W.nodeName===U?W:false}}}else{for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){Z[V]=X?Y.parentNode:Y.parentNode===U}}if(X){F.filter(U,Z,true)}}},"":function(W,U,Y){var V=L++,T=S;if(!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("parentNode",U,V,W,X,Y)},"~":function(W,U,Y){var V=L++,T=S;if(typeof U==="string"&&!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("previousSibling",U,V,W,X,Y)}},find:{ID:function(U,V,W){if(typeof V.getElementById!=="undefined"&&!W){var T=V.getElementById(U[1]);return T?[T]:[]}},NAME:function(V,Y,Z){if(typeof Y.getElementsByName!=="undefined"){var U=[],X=Y.getElementsByName(V[1]);for(var W=0,T=X.length;W<T;W++){if(X[W].getAttribute("name")===V[1]){U.push(X[W])}}return U.length===0?null:U}},TAG:function(T,U){return U.getElementsByTagName(T[1])}},preFilter:{CLASS:function(W,U,V,T,Z,aa){W=" "+W[1].replace(/\\/g,"")+" ";if(aa){return W}for(var X=0,Y;(Y=U[X])!=null;X++){if(Y){if(Z^(Y.className&&(" "+Y.className+" ").indexOf(W)>=0)){if(!V){T.push(Y)}}else{if(V){U[X]=false}}}}return false},ID:function(T){return T[1].replace(/\\/g,"")},TAG:function(U,T){for(var V=0;T[V]===false;V++){}return T[V]&&Q(T[V])?U[1]:U[1].toUpperCase()},CHILD:function(T){if(T[1]=="nth"){var U=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(T[2]=="even"&&"2n"||T[2]=="odd"&&"2n+1"||!/\D/.test(T[2])&&"0n+"+T[2]||T[2]);T[2]=(U[1]+(U[2]||1))-0;T[3]=U[3]-0}T[0]=L++;return T},ATTR:function(X,U,V,T,Y,Z){var W=X[1].replace(/\\/g,"");if(!Z&&I.attrMap[W]){X[1]=I.attrMap[W]}if(X[2]==="~="){X[4]=" "+X[4]+" "}return X},PSEUDO:function(X,U,V,T,Y){if(X[1]==="not"){if(X[3].match(R).length>1||/^\w/.test(X[3])){X[3]=F(X[3],null,null,U)}else{var W=F.filter(X[3],U,V,true^Y);if(!V){T.push.apply(T,W)}return false}}else{if(I.match.POS.test(X[0])||I.match.CHILD.test(X[0])){return true}}return X},POS:function(T){T.unshift(true);return T}},filters:{enabled:function(T){return T.disabled===false&&T.type!=="hidden"},disabled:function(T){return T.disabled===true},checked:function(T){return T.checked===true},selected:function(T){T.parentNode.selectedIndex;return T.selected===true},parent:function(T){return !!T.firstChild},empty:function(T){return !T.firstChild},has:function(V,U,T){return !!F(T[3],V).length},header:function(T){return/h\d/i.test(T.nodeName)},text:function(T){return"text"===T.type},radio:function(T){return"radio"===T.type},checkbox:function(T){return"checkbox"===T.type},file:function(T){return"file"===T.type},password:function(T){return"password"===T.type},submit:function(T){return"submit"===T.type},image:function(T){return"image"===T.type},reset:function(T){return"reset"===T.type},button:function(T){return"button"===T.type||T.nodeName.toUpperCase()==="BUTTON"},input:function(T){return/input|select|textarea|button/i.test(T.nodeName)}},setFilters:{first:function(U,T){return T===0},last:function(V,U,T,W){return U===W.length-1},even:function(U,T){return T%2===0},odd:function(U,T){return T%2===1},lt:function(V,U,T){return U<T[3]-0},gt:function(V,U,T){return U>T[3]-0},nth:function(V,U,T){return T[3]-0==U},eq:function(V,U,T){return T[3]-0==U}},filter:{PSEUDO:function(Z,V,W,aa){var U=V[1],X=I.filters[U];if(X){return X(Z,W,V,aa)}else{if(U==="contains"){return(Z.textContent||Z.innerText||"").indexOf(V[3])>=0}else{if(U==="not"){var Y=V[3];for(var W=0,T=Y.length;W<T;W++){if(Y[W]===Z){return false}}return true}}}},CHILD:function(T,W){var Z=W[1],U=T;switch(Z){case"only":case"first":while(U=U.previousSibling){if(U.nodeType===1){return false}}if(Z=="first"){return true}U=T;case"last":while(U=U.nextSibling){if(U.nodeType===1){return false}}return true;case"nth":var V=W[2],ac=W[3];if(V==1&&ac==0){return true}var Y=W[0],ab=T.parentNode;if(ab&&(ab.sizcache!==Y||!T.nodeIndex)){var X=0;for(U=ab.firstChild;U;U=U.nextSibling){if(U.nodeType===1){U.nodeIndex=++X}}ab.sizcache=Y}var aa=T.nodeIndex-ac;if(V==0){return aa==0}else{return(aa%V==0&&aa/V>=0)}}},ID:function(U,T){return U.nodeType===1&&U.getAttribute("id")===T},TAG:function(U,T){return(T==="*"&&U.nodeType===1)||U.nodeName===T},CLASS:function(U,T){return(" "+(U.className||U.getAttribute("class"))+" ").indexOf(T)>-1},ATTR:function(Y,W){var V=W[1],T=I.attrHandle[V]?I.attrHandle[V](Y):Y[V]!=null?Y[V]:Y.getAttribute(V),Z=T+"",X=W[2],U=W[4];return T==null?X==="!=":X==="="?Z===U:X==="*="?Z.indexOf(U)>=0:X==="~="?(" "+Z+" ").indexOf(U)>=0:!U?Z&&T!==false:X==="!="?Z!=U:X==="^="?Z.indexOf(U)===0:X==="$="?Z.substr(Z.length-U.length)===U:X==="|="?Z===U||Z.substr(0,U.length+1)===U+"-":false},POS:function(X,U,V,Y){var T=U[2],W=I.setFilters[T];if(W){return W(X,V,U,Y)}}}};var M=I.match.POS;for(var O in I.match){I.match[O]=RegExp(I.match[O].source+/(?![^\[]*\])(?![^\(]*\))/.source)}var E=function(U,T){U=Array.prototype.slice.call(U);if(T){T.push.apply(T,U);return T}return U};try{Array.prototype.slice.call(document.documentElement.childNodes)}catch(N){E=function(X,W){var U=W||[];if(H.call(X)==="[object Array]"){Array.prototype.push.apply(U,X)}else{if(typeof X.length==="number"){for(var V=0,T=X.length;V<T;V++){U.push(X[V])}}else{for(var V=0;X[V];V++){U.push(X[V])}}}return U}}var G;if(document.documentElement.compareDocumentPosition){G=function(U,T){var V=U.compareDocumentPosition(T)&4?-1:U===T?0:1;if(V===0){hasDuplicate=true}return V}}else{if("sourceIndex" in document.documentElement){G=function(U,T){var V=U.sourceIndex-T.sourceIndex;if(V===0){hasDuplicate=true}return V}}else{if(document.createRange){G=function(W,U){var V=W.ownerDocument.createRange(),T=U.ownerDocument.createRange();V.selectNode(W);V.collapse(true);T.selectNode(U);T.collapse(true);var X=V.compareBoundaryPoints(Range.START_TO_END,T);if(X===0){hasDuplicate=true}return X}}}}(function(){var U=document.createElement("form"),V="script"+(new Date).getTime();U.innerHTML="<input name='"+V+"'/>";var T=document.documentElement;T.insertBefore(U,T.firstChild);if(!!document.getElementById(V)){I.find.ID=function(X,Y,Z){if(typeof Y.getElementById!=="undefined"&&!Z){var W=Y.getElementById(X[1]);return W?W.id===X[1]||typeof W.getAttributeNode!=="undefined"&&W.getAttributeNode("id").nodeValue===X[1]?[W]:g:[]}};I.filter.ID=function(Y,W){var X=typeof Y.getAttributeNode!=="undefined"&&Y.getAttributeNode("id");return Y.nodeType===1&&X&&X.nodeValue===W}}T.removeChild(U)})();(function(){var T=document.createElement("div");T.appendChild(document.createComment(""));if(T.getElementsByTagName("*").length>0){I.find.TAG=function(U,Y){var X=Y.getElementsByTagName(U[1]);if(U[1]==="*"){var W=[];for(var V=0;X[V];V++){if(X[V].nodeType===1){W.push(X[V])}}X=W}return X}}T.innerHTML="<a href='#'></a>";if(T.firstChild&&typeof T.firstChild.getAttribute!=="undefined"&&T.firstChild.getAttribute("href")!=="#"){I.attrHandle.href=function(U){return U.getAttribute("href",2)}}})();if(document.querySelectorAll){(function(){var T=F,U=document.createElement("div");U.innerHTML="<p class='TEST'></p>";if(U.querySelectorAll&&U.querySelectorAll(".TEST").length===0){return}F=function(Y,X,V,W){X=X||document;if(!W&&X.nodeType===9&&!Q(X)){try{return E(X.querySelectorAll(Y),V)}catch(Z){}}return T(Y,X,V,W)};F.find=T.find;F.filter=T.filter;F.selectors=T.selectors;F.matches=T.matches})()}if(document.getElementsByClassName&&document.documentElement.getElementsByClassName){(function(){var T=document.createElement("div");T.innerHTML="<div class='test e'></div><div class='test'></div>";if(T.getElementsByClassName("e").length===0){return}T.lastChild.className="e";if(T.getElementsByClassName("e").length===1){return}I.order.splice(1,0,"CLASS");I.find.CLASS=function(U,V,W){if(typeof V.getElementsByClassName!=="undefined"&&!W){return V.getElementsByClassName(U[1])}}})()}function P(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1&&!ac){T.sizcache=Y;T.sizset=W}if(T.nodeName===Z){X=T;break}T=T[U]}ad[W]=X}}}function S(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1){if(!ac){T.sizcache=Y;T.sizset=W}if(typeof Z!=="string"){if(T===Z){X=true;break}}else{if(F.filter(Z,[T]).length>0){X=T;break}}}T=T[U]}ad[W]=X}}}var K=document.compareDocumentPosition?function(U,T){return U.compareDocumentPosition(T)&16}:function(U,T){return U!==T&&(U.contains?U.contains(T):true)};var Q=function(T){return T.nodeType===9&&T.documentElement.nodeName!=="HTML"||!!T.ownerDocument&&Q(T.ownerDocument)};var J=function(T,aa){var W=[],X="",Y,V=aa.nodeType?[aa]:aa;while((Y=I.match.PSEUDO.exec(T))){X+=Y[0];T=T.replace(I.match.PSEUDO,"")}T=I.relative[T]?T+"*":T;for(var Z=0,U=V.length;Z<U;Z++){F(T,V[Z],W)}return F.filter(X,W)};o.find=F;o.filter=F.filter;o.expr=F.selectors;o.expr[":"]=o.expr.filters;F.selectors.filters.hidden=function(T){return T.offsetWidth===0||T.offsetHeight===0};F.selectors.filters.visible=function(T){return T.offsetWidth>0||T.offsetHeight>0};F.selectors.filters.animated=function(T){return o.grep(o.timers,function(U){return T===U.elem}).length};o.multiFilter=function(V,T,U){if(U){V=":not("+V+")"}return F.matches(V,T)};o.dir=function(V,U){var T=[],W=V[U];while(W&&W!=document){if(W.nodeType==1){T.push(W)}W=W[U]}return T};o.nth=function(X,T,V,W){T=T||1;var U=0;for(;X;X=X[V]){if(X.nodeType==1&&++U==T){break}}return X};o.sibling=function(V,U){var T=[];for(;V;V=V.nextSibling){if(V.nodeType==1&&V!=U){T.push(V)}}return T};return;l.Sizzle=F})();o.event={add:function(I,F,H,K){if(I.nodeType==3||I.nodeType==8){return}if(I.setInterval&&I!=l){I=l}if(!H.guid){H.guid=this.guid++}if(K!==g){var G=H;H=this.proxy(G);H.data=K}var E=o.data(I,"events")||o.data(I,"events",{}),J=o.data(I,"handle")||o.data(I,"handle",function(){return typeof o!=="undefined"&&!o.event.triggered?o.event.handle.apply(arguments.callee.elem,arguments):g});J.elem=I;o.each(F.split(/\s+/),function(M,N){var O=N.split(".");N=O.shift();H.type=O.slice().sort().join(".");var L=E[N];if(o.event.specialAll[N]){o.event.specialAll[N].setup.call(I,K,O)}if(!L){L=E[N]={};if(!o.event.special[N]||o.event.special[N].setup.call(I,K,O)===false){if(I.addEventListener){I.addEventListener(N,J,false)}else{if(I.attachEvent){I.attachEvent("on"+N,J)}}}}L[H.guid]=H;o.event.global[N]=true});I=null},guid:1,global:{},remove:function(K,H,J){if(K.nodeType==3||K.nodeType==8){return}var G=o.data(K,"events"),F,E;if(G){if(H===g||(typeof H==="string"&&H.charAt(0)==".")){for(var I in G){this.remove(K,I+(H||""))}}else{if(H.type){J=H.handler;H=H.type}o.each(H.split(/\s+/),function(M,O){var Q=O.split(".");O=Q.shift();var N=RegExp("(^|\\.)"+Q.slice().sort().join(".*\\.")+"(\\.|$)");if(G[O]){if(J){delete G[O][J.guid]}else{for(var P in G[O]){if(N.test(G[O][P].type)){delete G[O][P]}}}if(o.event.specialAll[O]){o.event.specialAll[O].teardown.call(K,Q)}for(F in G[O]){break}if(!F){if(!o.event.special[O]||o.event.special[O].teardown.call(K,Q)===false){if(K.removeEventListener){K.removeEventListener(O,o.data(K,"handle"),false)}else{if(K.detachEvent){K.detachEvent("on"+O,o.data(K,"handle"))}}}F=null;delete G[O]}}})}for(F in G){break}if(!F){var L=o.data(K,"handle");if(L){L.elem=null}o.removeData(K,"events");o.removeData(K,"handle")}}},trigger:function(I,K,H,E){var G=I.type||I;if(!E){I=typeof I==="object"?I[h]?I:o.extend(o.Event(G),I):o.Event(G);if(G.indexOf("!")>=0){I.type=G=G.slice(0,-1);I.exclusive=true}if(!H){I.stopPropagation();if(this.global[G]){o.each(o.cache,function(){if(this.events&&this.events[G]){o.event.trigger(I,K,this.handle.elem)}})}}if(!H||H.nodeType==3||H.nodeType==8){return g}I.result=g;I.target=H;K=o.makeArray(K);K.unshift(I)}I.currentTarget=H;var J=o.data(H,"handle");if(J){J.apply(H,K)}if((!H[G]||(o.nodeName(H,"a")&&G=="click"))&&H["on"+G]&&H["on"+G].apply(H,K)===false){I.result=false}if(!E&&H[G]&&!I.isDefaultPrevented()&&!(o.nodeName(H,"a")&&G=="click")){this.triggered=true;try{H[G]()}catch(L){}}this.triggered=false;if(!I.isPropagationStopped()){var F=H.parentNode||H.ownerDocument;if(F){o.event.trigger(I,K,F,true)}}},handle:function(K){var J,E;K=arguments[0]=o.event.fix(K||l.event);K.currentTarget=this;var L=K.type.split(".");K.type=L.shift();J=!L.length&&!K.exclusive;var I=RegExp("(^|\\.)"+L.slice().sort().join(".*\\.")+"(\\.|$)");E=(o.data(this,"events")||{})[K.type];for(var G in E){var H=E[G];if(J||I.test(H.type)){K.handler=H;K.data=H.data;var F=H.apply(this,arguments);if(F!==g){K.result=F;if(F===false){K.preventDefault();K.stopPropagation()}}if(K.isImmediatePropagationStopped()){break}}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(H){if(H[h]){return H}var F=H;H=o.Event(F);for(var G=this.props.length,J;G;){J=this.props[--G];H[J]=F[J]}if(!H.target){H.target=H.srcElement||document}if(H.target.nodeType==3){H.target=H.target.parentNode}if(!H.relatedTarget&&H.fromElement){H.relatedTarget=H.fromElement==H.target?H.toElement:H.fromElement}if(H.pageX==null&&H.clientX!=null){var I=document.documentElement,E=document.body;H.pageX=H.clientX+(I&&I.scrollLeft||E&&E.scrollLeft||0)-(I.clientLeft||0);H.pageY=H.clientY+(I&&I.scrollTop||E&&E.scrollTop||0)-(I.clientTop||0)}if(!H.which&&((H.charCode||H.charCode===0)?H.charCode:H.keyCode)){H.which=H.charCode||H.keyCode}if(!H.metaKey&&H.ctrlKey){H.metaKey=H.ctrlKey}if(!H.which&&H.button){H.which=(H.button&1?1:(H.button&2?3:(H.button&4?2:0)))}return H},proxy:function(F,E){E=E||function(){return F.apply(this,arguments)};E.guid=F.guid=F.guid||E.guid||this.guid++;return E},special:{ready:{setup:B,teardown:function(){}}},specialAll:{live:{setup:function(E,F){o.event.add(this,F[0],c)},teardown:function(G){if(G.length){var E=0,F=RegExp("(^|\\.)"+G[0]+"(\\.|$)");o.each((o.data(this,"events").live||{}),function(){if(F.test(this.type)){E++}});if(E<1){o.event.remove(this,G[0],c)}}}}}};o.Event=function(E){if(!this.preventDefault){return new o.Event(E)}if(E&&E.type){this.originalEvent=E;this.type=E.type}else{this.type=E}this.timeStamp=e();this[h]=true};function k(){return false}function u(){return true}o.Event.prototype={preventDefault:function(){this.isDefaultPrevented=u;var E=this.originalEvent;if(!E){return}if(E.preventDefault){E.preventDefault()}E.returnValue=false},stopPropagation:function(){this.isPropagationStopped=u;var E=this.originalEvent;if(!E){return}if(E.stopPropagation){E.stopPropagation()}E.cancelBubble=true},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=u;this.stopPropagation()},isDefaultPrevented:k,isPropagationStopped:k,isImmediatePropagationStopped:k};var a=function(F){var E=F.relatedTarget;while(E&&E!=this){try{E=E.parentNode}catch(G){E=this}}if(E!=this){F.type=F.data;o.event.handle.apply(this,arguments)}};o.each({mouseover:"mouseenter",mouseout:"mouseleave"},function(F,E){o.event.special[E]={setup:function(){o.event.add(this,F,a,E)},teardown:function(){o.event.remove(this,F,a)}}});o.fn.extend({bind:function(F,G,E){return F=="unload"?this.one(F,G,E):this.each(function(){o.event.add(this,F,E||G,E&&G)})},one:function(G,H,F){var E=o.event.proxy(F||H,function(I){o(this).unbind(I,E);return(F||H).apply(this,arguments)});return this.each(function(){o.event.add(this,G,E,F&&H)})},unbind:function(F,E){return this.each(function(){o.event.remove(this,F,E)})},trigger:function(E,F){return this.each(function(){o.event.trigger(E,F,this)})},triggerHandler:function(E,G){if(this[0]){var F=o.Event(E);F.preventDefault();F.stopPropagation();o.event.trigger(F,G,this[0]);return F.result}},toggle:function(G){var E=arguments,F=1;while(F<E.length){o.event.proxy(G,E[F++])}return this.click(o.event.proxy(G,function(H){this.lastToggle=(this.lastToggle||0)%F;H.preventDefault();return E[this.lastToggle++].apply(this,arguments)||false}))},hover:function(E,F){return this.mouseenter(E).mouseleave(F)},ready:function(E){B();if(o.isReady){E.call(document,o)}else{o.readyList.push(E)}return this},live:function(G,F){var E=o.event.proxy(F);E.guid+=this.selector+G;o(document).bind(i(G,this.selector),this.selector,E);return this},die:function(F,E){o(document).unbind(i(F,this.selector),E?{guid:E.guid+this.selector+F}:null);return this}});function c(H){var E=RegExp("(^|\\.)"+H.type+"(\\.|$)"),G=true,F=[];o.each(o.data(this,"events").live||[],function(I,J){if(E.test(J.type)){var K=o(H.target).closest(J.data)[0];if(K){F.push({elem:K,fn:J})}}});F.sort(function(J,I){return o.data(J.elem,"closest")-o.data(I.elem,"closest")});o.each(F,function(){if(this.fn.call(this.elem,H,this.fn.data)===false){return(G=false)}});return G}function i(F,E){return["live",F,E.replace(/\./g,"`").replace(/ /g,"|")].join(".")}o.extend({isReady:false,readyList:[],ready:function(){if(!o.isReady){o.isReady=true;if(o.readyList){o.each(o.readyList,function(){this.call(document,o)});o.readyList=null}o(document).triggerHandler("ready")}}});var x=false;function B(){if(x){return}x=true;if(document.addEventListener){document.addEventListener("DOMContentLoaded",function(){document.removeEventListener("DOMContentLoaded",arguments.callee,false);o.ready()},false)}else{if(document.attachEvent){document.attachEvent("onreadystatechange",function(){if(document.readyState==="complete"){document.detachEvent("onreadystatechange",arguments.callee);o.ready()}});if(document.documentElement.doScroll&&l==l.top){(function(){if(o.isReady){return}try{document.documentElement.doScroll("left")}catch(E){setTimeout(arguments.callee,0);return}o.ready()})()}}}o.event.add(l,"load",o.ready)}o.each(("blur,focus,load,resize,scroll,unload,click,dblclick,mousedown,mouseup,mousemove,mouseover,mouseout,mouseenter,mouseleave,change,select,submit,keydown,keypress,keyup,error").split(","),function(F,E){o.fn[E]=function(G){return G?this.bind(E,G):this.trigger(E)}});o(l).bind("unload",function(){for(var E in o.cache){if(E!=1&&o.cache[E].handle){o.event.remove(o.cache[E].handle.elem)}}});(function(){o.support={};var F=document.documentElement,G=document.createElement("script"),K=document.createElement("div"),J="script"+(new Date).getTime();K.style.display="none";K.innerHTML=' <link/><table></table><a href="/a" style="color:red;float:left;opacity:.5;">a</a><select><option>text</option></select><object><param/></object>';var H=K.getElementsByTagName("*"),E=K.getElementsByTagName("a")[0];if(!H||!H.length||!E){return}o.support={leadingWhitespace:K.firstChild.nodeType==3,tbody:!K.getElementsByTagName("tbody").length,objectAll:!!K.getElementsByTagName("object")[0].getElementsByTagName("*").length,htmlSerialize:!!K.getElementsByTagName("link").length,style:/red/.test(E.getAttribute("style")),hrefNormalized:E.getAttribute("href")==="/a",opacity:E.style.opacity==="0.5",cssFloat:!!E.style.cssFloat,scriptEval:false,noCloneEvent:true,boxModel:null};G.type="text/javascript";try{G.appendChild(document.createTextNode("window."+J+"=1;"))}catch(I){}F.insertBefore(G,F.firstChild);if(l[J]){o.support.scriptEval=true;delete l[J]}F.removeChild(G);if(K.attachEvent&&K.fireEvent){K.attachEvent("onclick",function(){o.support.noCloneEvent=false;K.detachEvent("onclick",arguments.callee)});K.cloneNode(true).fireEvent("onclick")}o(function(){var L=document.createElement("div");L.style.width=L.style.paddingLeft="1px";document.body.appendChild(L);o.boxModel=o.support.boxModel=L.offsetWidth===2;document.body.removeChild(L).style.display="none"})})();var w=o.support.cssFloat?"cssFloat":"styleFloat";o.props={"for":"htmlFor","class":"className","float":w,cssFloat:w,styleFloat:w,readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",tabindex:"tabIndex"};o.fn.extend({_load:o.fn.load,load:function(G,J,K){if(typeof G!=="string"){return this._load(G)}var I=G.indexOf(" ");if(I>=0){var E=G.slice(I,G.length);G=G.slice(0,I)}var H="GET";if(J){if(o.isFunction(J)){K=J;J=null}else{if(typeof J==="object"){J=o.param(J);H="POST"}}}var F=this;o.ajax({url:G,type:H,dataType:"html",data:J,complete:function(M,L){if(L=="success"||L=="notmodified"){F.html(E?o("<div/>").append(M.responseText.replace(/<script(.|\s)*?\/script>/g,"")).find(E):M.responseText)}if(K){F.each(K,[M.responseText,L,M])}}});return this},serialize:function(){return o.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?o.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password|search/i.test(this.type))}).map(function(E,F){var G=o(this).val();return G==null?null:o.isArray(G)?o.map(G,function(I,H){return{name:F.name,value:I}}):{name:F.name,value:G}}).get()}});o.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(E,F){o.fn[F]=function(G){return this.bind(F,G)}});var r=e();o.extend({get:function(E,G,H,F){if(o.isFunction(G)){H=G;G=null}return o.ajax({type:"GET",url:E,data:G,success:H,dataType:F})},getScript:function(E,F){return o.get(E,null,F,"script")},getJSON:function(E,F,G){return o.get(E,F,G,"json")},post:function(E,G,H,F){if(o.isFunction(G)){H=G;G={}}return o.ajax({type:"POST",url:E,data:G,success:H,dataType:F})},ajaxSetup:function(E){o.extend(o.ajaxSettings,E)},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return l.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest()},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(M){M=o.extend(true,M,o.extend(true,{},o.ajaxSettings,M));var W,F=/=\?(&|$)/g,R,V,G=M.type.toUpperCase();if(M.data&&M.processData&&typeof M.data!=="string"){M.data=o.param(M.data)}if(M.dataType=="jsonp"){if(G=="GET"){if(!M.url.match(F)){M.url+=(M.url.match(/\?/)?"&":"?")+(M.jsonp||"callback")+"=?"}}else{if(!M.data||!M.data.match(F)){M.data=(M.data?M.data+"&":"")+(M.jsonp||"callback")+"=?"}}M.dataType="json"}if(M.dataType=="json"&&(M.data&&M.data.match(F)||M.url.match(F))){W="jsonp"+r++;if(M.data){M.data=(M.data+"").replace(F,"="+W+"$1")}M.url=M.url.replace(F,"="+W+"$1");M.dataType="script";l[W]=function(X){V=X;I();L();l[W]=g;try{delete l[W]}catch(Y){}if(H){H.removeChild(T)}}}if(M.dataType=="script"&&M.cache==null){M.cache=false}if(M.cache===false&&G=="GET"){var E=e();var U=M.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+E+"$2");M.url=U+((U==M.url)?(M.url.match(/\?/)?"&":"?")+"_="+E:"")}if(M.data&&G=="GET"){M.url+=(M.url.match(/\?/)?"&":"?")+M.data;M.data=null}if(M.global&&!o.active++){o.event.trigger("ajaxStart")}var Q=/^(\w+:)?\/\/([^\/?#]+)/.exec(M.url);if(M.dataType=="script"&&G=="GET"&&Q&&(Q[1]&&Q[1]!=location.protocol||Q[2]!=location.host)){var H=document.getElementsByTagName("head")[0];var T=document.createElement("script");T.src=M.url;if(M.scriptCharset){T.charset=M.scriptCharset}if(!W){var O=false;T.onload=T.onreadystatechange=function(){if(!O&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){O=true;I();L();T.onload=T.onreadystatechange=null;H.removeChild(T)}}}H.appendChild(T);return g}var K=false;var J=M.xhr();if(M.username){J.open(G,M.url,M.async,M.username,M.password)}else{J.open(G,M.url,M.async)}try{if(M.data){J.setRequestHeader("Content-Type",M.contentType)}if(M.ifModified){J.setRequestHeader("If-Modified-Since",o.lastModified[M.url]||"Thu, 01 Jan 1970 00:00:00 GMT")}J.setRequestHeader("X-Requested-With","XMLHttpRequest");J.setRequestHeader("Accept",M.dataType&&M.accepts[M.dataType]?M.accepts[M.dataType]+", */*":M.accepts._default)}catch(S){}if(M.beforeSend&&M.beforeSend(J,M)===false){if(M.global&&!--o.active){o.event.trigger("ajaxStop")}J.abort();return false}if(M.global){o.event.trigger("ajaxSend",[J,M])}var N=function(X){if(J.readyState==0){if(P){clearInterval(P);P=null;if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}}else{if(!K&&J&&(J.readyState==4||X=="timeout")){K=true;if(P){clearInterval(P);P=null}R=X=="timeout"?"timeout":!o.httpSuccess(J)?"error":M.ifModified&&o.httpNotModified(J,M.url)?"notmodified":"success";if(R=="success"){try{V=o.httpData(J,M.dataType,M)}catch(Z){R="parsererror"}}if(R=="success"){var Y;try{Y=J.getResponseHeader("Last-Modified")}catch(Z){}if(M.ifModified&&Y){o.lastModified[M.url]=Y}if(!W){I()}}else{o.handleError(M,J,R)}L();if(X){J.abort()}if(M.async){J=null}}}};if(M.async){var P=setInterval(N,13);if(M.timeout>0){setTimeout(function(){if(J&&!K){N("timeout")}},M.timeout)}}try{J.send(M.data)}catch(S){o.handleError(M,J,null,S)}if(!M.async){N()}function I(){if(M.success){M.success(V,R)}if(M.global){o.event.trigger("ajaxSuccess",[J,M])}}function L(){if(M.complete){M.complete(J,R)}if(M.global){o.event.trigger("ajaxComplete",[J,M])}if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}return J},handleError:function(F,H,E,G){if(F.error){F.error(H,E,G)}if(F.global){o.event.trigger("ajaxError",[H,F,G])}},active:0,httpSuccess:function(F){try{return !F.status&&location.protocol=="file:"||(F.status>=200&&F.status<300)||F.status==304||F.status==1223}catch(E){}return false},httpNotModified:function(G,E){try{var H=G.getResponseHeader("Last-Modified");return G.status==304||H==o.lastModified[E]}catch(F){}return false},httpData:function(J,H,G){var F=J.getResponseHeader("content-type"),E=H=="xml"||!H&&F&&F.indexOf("xml")>=0,I=E?J.responseXML:J.responseText;if(E&&I.documentElement.tagName=="parsererror"){throw"parsererror"}if(G&&G.dataFilter){I=G.dataFilter(I,H)}if(typeof I==="string"){if(H=="script"){o.globalEval(I)}if(H=="json"){I=l["eval"]("("+I+")")}}return I},param:function(E){var G=[];function H(I,J){G[G.length]=encodeURIComponent(I)+"="+encodeURIComponent(J)}if(o.isArray(E)||E.jquery){o.each(E,function(){H(this.name,this.value)})}else{for(var F in E){if(o.isArray(E[F])){o.each(E[F],function(){H(F,this)})}else{H(F,o.isFunction(E[F])?E[F]():E[F])}}}return G.join("&").replace(/%20/g,"+")}});var m={},n,d=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];function t(F,E){var G={};o.each(d.concat.apply([],d.slice(0,E)),function(){G[this]=F});return G}o.fn.extend({show:function(J,L){if(J){return this.animate(t("show",3),J,L)}else{for(var H=0,F=this.length;H<F;H++){var E=o.data(this[H],"olddisplay");this[H].style.display=E||"";if(o.css(this[H],"display")==="none"){var G=this[H].tagName,K;if(m[G]){K=m[G]}else{var I=o("<"+G+" />").appendTo("body");K=I.css("display");if(K==="none"){K="block"}I.remove();m[G]=K}o.data(this[H],"olddisplay",K)}}for(var H=0,F=this.length;H<F;H++){this[H].style.display=o.data(this[H],"olddisplay")||""}return this}},hide:function(H,I){if(H){return this.animate(t("hide",3),H,I)}else{for(var G=0,F=this.length;G<F;G++){var E=o.data(this[G],"olddisplay");if(!E&&E!=="none"){o.data(this[G],"olddisplay",o.css(this[G],"display"))}}for(var G=0,F=this.length;G<F;G++){this[G].style.display="none"}return this}},_toggle:o.fn.toggle,toggle:function(G,F){var E=typeof G==="boolean";return o.isFunction(G)&&o.isFunction(F)?this._toggle.apply(this,arguments):G==null||E?this.each(function(){var H=E?G:o(this).is(":hidden");o(this)[H?"show":"hide"]()}):this.animate(t("toggle",3),G,F)},fadeTo:function(E,G,F){return this.animate({opacity:G},E,F)},animate:function(I,F,H,G){var E=o.speed(F,H,G);return this[E.queue===false?"each":"queue"](function(){var K=o.extend({},E),M,L=this.nodeType==1&&o(this).is(":hidden"),J=this;for(M in I){if(I[M]=="hide"&&L||I[M]=="show"&&!L){return K.complete.call(this)}if((M=="height"||M=="width")&&this.style){K.display=o.css(this,"display");K.overflow=this.style.overflow}}if(K.overflow!=null){this.style.overflow="hidden"}K.curAnim=o.extend({},I);o.each(I,function(O,S){var R=new o.fx(J,K,O);if(/toggle|show|hide/.test(S)){R[S=="toggle"?L?"show":"hide":S](I)}else{var Q=S.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),T=R.cur(true)||0;if(Q){var N=parseFloat(Q[2]),P=Q[3]||"px";if(P!="px"){J.style[O]=(N||1)+P;T=((N||1)/R.cur(true))*T;J.style[O]=T+P}if(Q[1]){N=((Q[1]=="-="?-1:1)*N)+T}R.custom(T,N,P)}else{R.custom(T,S,"")}}});return true})},stop:function(F,E){var G=o.timers;if(F){this.queue([])}this.each(function(){for(var H=G.length-1;H>=0;H--){if(G[H].elem==this){if(E){G[H](true)}G.splice(H,1)}}});if(!E){this.dequeue()}return this}});o.each({slideDown:t("show",1),slideUp:t("hide",1),slideToggle:t("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(E,F){o.fn[E]=function(G,H){return this.animate(F,G,H)}});o.extend({speed:function(G,H,F){var E=typeof G==="object"?G:{complete:F||!F&&H||o.isFunction(G)&&G,duration:G,easing:F&&H||H&&!o.isFunction(H)&&H};E.duration=o.fx.off?0:typeof E.duration==="number"?E.duration:o.fx.speeds[E.duration]||o.fx.speeds._default;E.old=E.complete;E.complete=function(){if(E.queue!==false){o(this).dequeue()}if(o.isFunction(E.old)){E.old.call(this)}};return E},easing:{linear:function(G,H,E,F){return E+F*G},swing:function(G,H,E,F){return((-Math.cos(G*Math.PI)/2)+0.5)*F+E}},timers:[],fx:function(F,E,G){this.options=E;this.elem=F;this.prop=G;if(!E.orig){E.orig={}}}});o.fx.prototype={update:function(){if(this.options.step){this.options.step.call(this.elem,this.now,this)}(o.fx.step[this.prop]||o.fx.step._default)(this);if((this.prop=="height"||this.prop=="width")&&this.elem.style){this.elem.style.display="block"}},cur:function(F){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)){return this.elem[this.prop]}var E=parseFloat(o.css(this.elem,this.prop,F));return E&&E>-10000?E:parseFloat(o.curCSS(this.elem,this.prop))||0},custom:function(I,H,G){this.startTime=e();this.start=I;this.end=H;this.unit=G||this.unit||"px";this.now=this.start;this.pos=this.state=0;var E=this;function F(J){return E.step(J)}F.elem=this.elem;if(F()&&o.timers.push(F)&&!n){n=setInterval(function(){var K=o.timers;for(var J=0;J<K.length;J++){if(!K[J]()){K.splice(J--,1)}}if(!K.length){clearInterval(n);n=g}},13)}},show:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.show=true;this.custom(this.prop=="width"||this.prop=="height"?1:0,this.cur());o(this.elem).show()},hide:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.hide=true;this.custom(this.cur(),0)},step:function(H){var G=e();if(H||G>=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var E=true;for(var F in this.options.curAnim){if(this.options.curAnim[F]!==true){E=false}}if(E){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(o.css(this.elem,"display")=="none"){this.elem.style.display="block"}}if(this.options.hide){o(this.elem).hide()}if(this.options.hide||this.options.show){for(var I in this.options.curAnim){o.attr(this.elem.style,I,this.options.orig[I])}}this.options.complete.call(this.elem)}return false}else{var J=G-this.startTime;this.state=J/this.options.duration;this.pos=o.easing[this.options.easing||(o.easing.swing?"swing":"linear")](this.state,J,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update()}return true}};o.extend(o.fx,{speeds:{slow:600,fast:200,_default:400},step:{opacity:function(E){o.attr(E.elem.style,"opacity",E.now)},_default:function(E){if(E.elem.style&&E.elem.style[E.prop]!=null){E.elem.style[E.prop]=E.now+E.unit}else{E.elem[E.prop]=E.now}}}});if(document.documentElement.getBoundingClientRect){o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}var G=this[0].getBoundingClientRect(),J=this[0].ownerDocument,F=J.body,E=J.documentElement,L=E.clientTop||F.clientTop||0,K=E.clientLeft||F.clientLeft||0,I=G.top+(self.pageYOffset||o.boxModel&&E.scrollTop||F.scrollTop)-L,H=G.left+(self.pageXOffset||o.boxModel&&E.scrollLeft||F.scrollLeft)-K;return{top:I,left:H}}}else{o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}o.offset.initialized||o.offset.initialize();var J=this[0],G=J.offsetParent,F=J,O=J.ownerDocument,M,H=O.documentElement,K=O.body,L=O.defaultView,E=L.getComputedStyle(J,null),N=J.offsetTop,I=J.offsetLeft;while((J=J.parentNode)&&J!==K&&J!==H){M=L.getComputedStyle(J,null);N-=J.scrollTop,I-=J.scrollLeft;if(J===G){N+=J.offsetTop,I+=J.offsetLeft;if(o.offset.doesNotAddBorder&&!(o.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(J.tagName))){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}F=G,G=J.offsetParent}if(o.offset.subtractsBorderForOverflowNotVisible&&M.overflow!=="visible"){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}E=M}if(E.position==="relative"||E.position==="static"){N+=K.offsetTop,I+=K.offsetLeft}if(E.position==="fixed"){N+=Math.max(H.scrollTop,K.scrollTop),I+=Math.max(H.scrollLeft,K.scrollLeft)}return{top:N,left:I}}}o.offset={initialize:function(){if(this.initialized){return}var L=document.body,F=document.createElement("div"),H,G,N,I,M,E,J=L.style.marginTop,K='<div style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;"><div></div></div><table style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;" cellpadding="0" cellspacing="0"><tr><td></td></tr></table>';M={position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"};for(E in M){F.style[E]=M[E]}F.innerHTML=K;L.insertBefore(F,L.firstChild);H=F.firstChild,G=H.firstChild,I=H.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(G.offsetTop!==5);this.doesAddBorderForTableAndCells=(I.offsetTop===5);H.style.overflow="hidden",H.style.position="relative";this.subtractsBorderForOverflowNotVisible=(G.offsetTop===-5);L.style.marginTop="1px";this.doesNotIncludeMarginInBodyOffset=(L.offsetTop===0);L.style.marginTop=J;L.removeChild(F);this.initialized=true},bodyOffset:function(E){o.offset.initialized||o.offset.initialize();var G=E.offsetTop,F=E.offsetLeft;if(o.offset.doesNotIncludeMarginInBodyOffset){G+=parseInt(o.curCSS(E,"marginTop",true),10)||0,F+=parseInt(o.curCSS(E,"marginLeft",true),10)||0}return{top:G,left:F}}};o.fn.extend({position:function(){var I=0,H=0,F;if(this[0]){var G=this.offsetParent(),J=this.offset(),E=/^body|html$/i.test(G[0].tagName)?{top:0,left:0}:G.offset();J.top-=j(this,"marginTop");J.left-=j(this,"marginLeft");E.top+=j(G,"borderTopWidth");E.left+=j(G,"borderLeftWidth");F={top:J.top-E.top,left:J.left-E.left}}return F},offsetParent:function(){var E=this[0].offsetParent||document.body;while(E&&(!/^body|html$/i.test(E.tagName)&&o.css(E,"position")=="static")){E=E.offsetParent}return o(E)}});o.each(["Left","Top"],function(F,E){var G="scroll"+E;o.fn[G]=function(H){if(!this[0]){return null}return H!==g?this.each(function(){this==l||this==document?l.scrollTo(!F?H:o(l).scrollLeft(),F?H:o(l).scrollTop()):this[G]=H}):this[0]==l||this[0]==document?self[F?"pageYOffset":"pageXOffset"]||o.boxModel&&document.documentElement[G]||document.body[G]:this[0][G]}});o.each(["Height","Width"],function(I,G){var E=I?"Left":"Top",H=I?"Right":"Bottom",F=G.toLowerCase();o.fn["inner"+G]=function(){return this[0]?o.css(this[0],F,false,"padding"):null};o.fn["outer"+G]=function(K){return this[0]?o.css(this[0],F,false,K?"margin":"border"):null};var J=G.toLowerCase();o.fn[J]=function(K){return this[0]==l?document.compatMode=="CSS1Compat"&&document.documentElement["client"+G]||document.body["client"+G]:this[0]==document?Math.max(document.documentElement["client"+G],document.body["scroll"+G],document.documentElement["scroll"+G],document.body["offset"+G],document.documentElement["offset"+G]):K===g?(this.length?o.css(this[0],J):null):this.css(J,typeof K==="string"?K:K+"px")}})})();
\ No newline at end of file diff --git a/examples/lessons/6_Maths_goShopping/js/karma.js b/examples/lessons/6_Maths_goShopping/js/karma.js deleted file mode 100755 index 03f027b..0000000 --- a/examples/lessons/6_Maths_goShopping/js/karma.js +++ /dev/null @@ -1,1018 +0,0 @@ -/* Documentation Note: - * Public methods and properties are commented with /** some text *\/ - * and private methods and properties are commented with // - * - * Please leave it that way to keep this documentation sane - */ - - -/* -* Karma Framework -* http://karmaeducation.org -* -* Copyright (c) 2009 -* Bryan W Berry bryan@olenepal.org -* Felipe López Toledo zer.subzero@gmail.com -* -* Under MIT License: -* Permission is hereby granted, free of charge, to any person -* obtaining a copy of this software and associated documentation -* files (the "Software"), to deal in the Software without -* restriction, including without limitation the rights to use, -* copy, modify, merge, publish, distribute, sublicense, and/or sell -* copies of the Software, and to permit persons to whom the -* Software is furnished to do so, subject to the following -* conditions: -* -* The above copyright notice and this permission notice shall be -* included in all copies or substantial portions of the Software. -* -* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -* OTHER DEALINGS IN THE SOFTWARE. -*/ - -/** -* @fileOverview Contains karma library -* @author Bryan Berry <bryan@olenepal.org> -* @author Felipe Lopez Toledo <zer.subzero@gmail.com> -*/ - - -//common.js modules use exports object -if(!this.exports) { - exports = {}; -} - - - -/** Checks if the current document type is set to HTML 5, throws - * an error otherwise, then initializes the karma object and returns - * a reference to that object. - * @namespace Global namespace for Karma library - * @param {Object} [options={}] options for intializing Karma library - * @param {String} [options.locale=''] sets current locale Not Yet Implemented - * @param {Array} [options.image=[]] array of images to be converted into a collection - * @param {Array} [options.audio=[]] array of audio to be converted into a collection - * @param {Array} [options.video=[]] array of videos to be converted into a collection - * @param {Array} [options.svg=[]] array of SVG elements to be - * converted into a collection. Each SVG element must already exist in the html document - * @param {Array} [options.canvas=[]] array of canvas elements - * to be converted into a collection. Each canvas element must already exist in the - * html document and width and height of each element must be set as attributes - * @throws {Error} if the document type declaration is not set to HTML 5, e.g. - * <!DOCTYPE html> - * @throws {Error} If any of the initialization parameters are invalid values - * @returns {Object} Karma.karma -- reference to the initialized Karma library - * @example - * - * var k = Karma({ - * image: [ - * {name: "ninja", file: "ninja.png"}, - * {name: "cowboy", file: "cowboy.png"} - * ], - * audio: [ - * {name: "woosh", file: "woosh.ogg"}, - * {name: "yeehaw", file: "yeehaw.ogg"} - * ], - * video: [ - * {name: "attack", file: "attack.ogv"}, - * {name: "ride", file: "ride.ogv"} - * ] - * canvas: [ - * {name: "ninja", domId: "ninjaCanvas"}, - * {name: "cowboy", domId: "cowboyCanvas"} - * ], - * svg: [ - * {name: "ninja", domId: "ninjaSvg"}, - * {name: "cowboy", domId: "cowboySvg"} - * ], - * }); - * Next, call the ready function with a callback to your program code - * - * k.ready(function () { ... your application code . . . } - * - * after that you can access each asset like so - * k.image.ninja; - * k.svg.cowboy; - * k.audio.yeehaw.play(); - * k.canvas.ninja.drawImage(k.image.ninja, 0, 0); - * - */ -var Karma = exports.Karma = function (options) { - Karma._isHtml5(document.doctype.nodeName); - - if ( Karma.karma._initialized === true ) { - return Karma.karma; - } else { - return Karma.karma._init(options); - } -}; - - -//helper functions - -/**This emulates the Object.create method in ecmascript 5 spec - * This isn't a full implementation as it doesn't support - * This has the same functionality as Crockford's beget method - * and this primary building block for prototypal inheritance in - * this library - * @param {Object} target that the new object's prototype should point to - * @returns {Object} object whose prototype points to target - * @example - * - * var ninja = { weapon : "sword" }; - * var ninja1 = Karma.create(ninja); - * ninja1.sword === "sword" - */ -Karma.create = function (target){ - function F () {}; - F.prototype = target; - return new F(); -}; - -/** Returns a shallow copy of the passed in object - * @param {Object} target to be copied - * @returns {Object} a shallow copy of target - */ -Karma.clone = function (target){ - var copy = {}; - for ( var i in target ) { - if(target.hasOwnProperty(i)){ - copy[i] = target[i]; - } - } - return copy; -}; - -/** Extends properties of the target object with those of - * the source object - * @param {Object} target object to be extended - * @param {Object} source whose properties will extend target - * @returns {Object} target extended by source - */ -Karma.objectPlus = function (target, source){ - for ( var i in source){ - if (source.hasOwnProperty(i)){ - target[i] = source[i]; - } - } - return target; -}; - -/** Creates a new object that is a prototype of the first argument - * then extends it with the properties of the second argument - * @param {Object} parent1 will be prototype of returned object - * @param {Object} parent2 will extend properties of returned object - * @returns {Object} object that whose prototype is parent1 and has - * been extended with properties of parent2 - */ -Karma.copyObjectPlus = function (parent1, parent2){ - function F () {}; - F.prototype = parent1; - var G = new F(); - return Karma.objectPlus(G, parent2); -}; - -//Enables function chaining for a specified list of function names -//IMPORTANT: use of closures here with "this" and "that" is __very__ -//complicated here -Karma._makeChain = function (chainingFunctions) { - var that = this; - var _chainFunction = function ( name ){ - that[ name ] = function ( ){ - var type = typeof this.ctx[name]; - if ( type === "function") { - this.ctx[ name ].apply( this.ctx, arguments ); - }else if ( type === "string" ){ - this.ctx[ name ] = arguments[0]; - }else { - throw ("wtf?!: impossible to chain " + name + "!"); - } - return this; - }; - }; - - for (var i = 0; i < chainingFunctions.length; i++){ - _chainFunction( chainingFunctions[ i ] ); - } -}; - -//Throws big ugly error if doctype isn't html5 -Karma._isHtml5 = function (doctype){ - var regex = new RegExp('^html$', 'i'); - if(!regex.test(doctype)){ - var errorMsg = "ERROR: The doctype must be set to <!DOCTYPE html> " + - "in order to use Karma. Karma require you use html5"; - var errorElem = document.createElement('div'); - errorElem.setAttribute('id', 'errorDoctype'); - errorElem.innerText = errorMsg; - document.body.appendChild(errorElem); - throw new Error(errorMsg); - } -}; - - -/** Stores global settings for the Karma library - * @class This object stores the global settings for the Karma library - */ -Karma.karma = { - /** This is the global locale as passed to Karma(), - * such as "en", "es_SP" - * @type string - * @default undefined - */ - locale : undefined, - /** Collection of images with special helper - * methods added to each reference - * @type object - * @default empty object - */ - image : {}, - /** Collection of audio with special helper - * methods added to each reference - * @type object - * @default empty object - */ - audio : {}, - /** Collection of canvas with special helper - * methods added to each reference - * @type object - * @default empty object - */ - canvas : {}, - /** Collection of svgs with special helper - * methods added to each reference - * @type object - * @default empty object - */ - svg : {}, - /** Collection of videos with special helper - * methods added to each reference - * @type object - * @default empty object - */ - video : {}, - _localized : false, - _assetPath : "assets/", - _localePath : "", - _initialized : false, - _statusDiv: undefined, - _loaderDiv : undefined, - _counters : { total : 0, errors : 0, loaded : 0}, - - //init initializes all the assets passed to Karma, that's it - //it returns 'this' so it can be used for function chaining - _init: function(options) { - this._initialized = true; - - //set up message that show count of assets loaded - //and has an ordered list to append error messages to - var _statusDiv = this._statusDiv = document.createElement('div'); - this._loaderDiv = this._loaderDiv = document.createElement('div'); - var errorList = document.createElement('ol'); - - _statusDiv.setAttribute('id', 'karma-status'); - _statusDiv.setAttribute('style', 'position:absolute;'); - _statusDiv.innerHTML = 'Karma is loading ...'; - this._loaderDiv.setAttribute('id', 'karma-loader'); - this._loaderDiv.setAttribute('class', 'status'); - errorList.setAttribute('id', 'errorList'); - - _statusDiv.appendChild(this._loaderDiv); - this._statusDiv.appendChild(errorList); - document.body.appendChild(_statusDiv); - - - //chain the functions for kCanvas and kSvg - Karma._makeChain.call(Karma.kCanvas, - Karma.kCanvas._chainingFunctions); - //Karma._makeChain.apply(Karma.kSvg, Karma.kSvg._chainingFunctions); - - - - //regular expression that matches the name of aprivate property - // the karma object - var regexPrivate = new RegExp('^_.*'); - - for ( var option in options ) { - if (options.hasOwnProperty(option)){ - if (option === "image" || option === "audio" || option === - "svg" || option === "video" || option === "canvas"){ - - if(!(options[option] instanceof Array)){ - throw new Error("" + option + " must be an array"); - } else if (options[option].length === 0){ - continue; - } - } else if (regexPrivate.test(option)){ - //don't overwrite a private property of karma object - continue; - } - - switch (option){ - case "locale": - - if (this._isValidLocale(options[option])){ - this.locale = this._normalizeLocale(options[option]); - this._localized = true; - this._localePath = Karma._computeLocalePath(this.locale); - } else { - throw new Error("locale provided to karma._init() is invalid"); - } - - break; - case "image": - options[option]._type = 'image'; - Karma._makeImages(options[option]); - break; - case "audio": - options[option]._type = 'audio'; - Karma._makeAudio(options[option]); - break; - case "video": - options[option]._type = 'video'; - Karma._makeVideos(options[option]); - break; - case "svg": - options[option]._type = 'svg'; - Karma._makeSvgs(options[option]); - break; - case "canvas": - options[option]._type = 'canvas'; - Karma._makeCanvases(options[option]); - break; - } - } - } - - - - return this; - }, - - /** Waits until all assets loaded, i.e. ready, then calls callback - * @param {Function} [cb] callback function - * @returns this - * @throws {Error} if Karma.karma is not initialized with the - * Karma({ options }) function - * @example - * - * var k = Karma({ . . . your assets here . . . }); - * k.ready(function(){ .. your code here . . .}); - * - * your code will not be called until all assets have been loaded - * - */ - ready : function( cb ) { - var that = this; - if (Karma.karma._initialized !== true){ - throw new Error("Karma.karma not initialized"); - } - - if (this._counters.loaded !== this._counters.total){ - setTimeout(function(){ that.ready(cb);}, 5); - } else if (cb) { - //hide the "Karma is loading..." message - this._statusDiv.setAttribute('style', 'display:none;'); - - cb(); - } else if (!cb) { - //hide the "Karma is loading..." message - this._statusDiv.setAttribute('style', 'display:none;'); - - //if no options passed, show it works message - this._showStarterMessage(); - } - - - - - return this; - }, - - //Display Apache-like "It works" message if no options - _showStarterMessage : function (){ - var starterMsg = document.createElement('div'); - starterMsg.setAttribute('id', 'starterMsg'); - starterMsg.innerHTML = "<h1>It Works</h1>"; - document.body.appendChild(starterMsg); - }, - - //Updates visible counter of how many assets are loaded - _updateStatus : function (errorMsg) { - var loaded = this._counters.loaded; - var total = this._counters.total; - var errors = this._counters.errors; - this._loaderDiv.innerHTML = "Loaded " + loaded + " / " + total + - "" + (errors > 0 ? " Errors [ " + errors +" ]" : ''); - if (errorMsg) { - var liError = document.createElement('li'); - liError.innerHTML = errorMsg; - var errorList = document.getElementById('errorList'); - errorList.appendChild(liError); - } - }, - - //matches 2 letter country code then optionally - //a dash or underscore followed by a country or language identifier - //i currently only allow a language identifier 2-3 chars long - _isValidLocale : function (locale) { - var localeRegex = new RegExp('^[a-zA-Z][a-zA-Z]([-_][a-zA-z]{2,3})?$'); - return localeRegex.test(locale); - }, - - _normalizeLocale : function(locale) { - var lang = ""; - var country = ""; - var divider = ""; - - lang = locale.slice(0, 2).toLowerCase(); - divider = "_"; - country = locale.slice(3, 6).toUpperCase(); - - return locale.length > 2 ? "" + lang + divider + country : lang; - }, - - // Below are geometry and math helper methods - - /** - * Converts a value from degrees to radians. - * @param {Number} angle The angle in degrees - * @returns {Number} The angle in radians - */ - radians : function( angle ){ - return ( angle / 180 ) * Math.PI; - }, - /** - * Gets the square of the Euclidian (ordinary) distance between 2 points. - * @param {Object} Point No. 0 - * @param {Number} Point0.x - * @param {Number} Point0.y - * @param {Object} Point No. 1 - * @param {Number} Point1.x - * @param {Number} Point1.y - * @returns {Number} The square of the Euclidian distance - * @example - * - * p0 = {x:0, y:1}; - * p1 = {x:50, y:70}; - * var d = distance2(p0, p1); - * - */ - distance2 : function ( p0, p1 ) { - return (p1.x - p0.x) * (p1.x - p0.x) + (p1.y - p1.y) * (p1.y - p1.y); - }, - /** - * Gets the Euclidian (ordinary) distance between 2 points.<br> - * <b>Warning:</b> It's slower than distance2 function - * @param {Object} Point No. 0 - * @param {Number} Point0.x - * @param {Number} Point0.y - * @param {Object} Point No. 1 - * @param {Number} Point1.x - * @param {Number} Point1.y - * @returns {Number} The Euclidian distance - * @example - * - * p0 = {x:0, y:1}; - * p1 = {x:50, y:70}; - * var d = distance2(p0, p1); - * - */ - distance : function ( p0, p1 ) { - return Math.sqrt( this.distance2( p0, p1 ) ); - }, - /** Returns a random number within the range provided - * @param {Number} lower limit of the range, lowest number that can be returned - * @param {Number} upper limit of the range, highest number that can be returned - * @returns {Number} number that is >= lower and <= upper - * @example - * - * var num = rand(0, 10); - * - * num could be 0, 1, 2, 3 ... or 10 - * - */ - rand : function ( lower, upper ){ - return Math.round( Math.random() * (upper - lower) + lower ); - } - -}; - -/** Prototypal object for images, videos, and audio files but - * does not include svg or canvas elements - * @class This object is the prototype for images, videos, and audio files but - * does not include svg or canvas elements - * @ throws {Error} if the individual asset is set to be localized but - * the globale locale is not set on the Karma.karma object - * @ throws {Error} if the name and file properties are not supplied - * @example - * kMedia is the prototype object for images, audio, and videos. - * These 'media' assets are loaded in a distinctly different way - * from the canvas or svg assets. They also have distinctly different - * helper methods - * - * You initialize the kMedia assets by passing an array of objects - */ -Karma.kMedia = { - /** file location of asset - * @type String - * @default "" - */ - file : "", - /** media object - * @type Audio|Image|Video - * @default undefined - */ - media : undefined, - //actual path to the file - _path : "", - //if using localized version of this asset - _localized : false, - //audio, image, or video - _type : "", - //initializes kMedia instance with values provided by user - _init : function (asset) { - asset._localized = asset._localized || false; - Karma.karma._counters.total++; - - if (asset.name === undefined || asset.file === undefined){ - throw new Error("properties name and file have to be defined"); - } else { - this.name = asset.name; - this.file = asset.file; - } - - //_type is a private variable used internally - if (asset._type === undefined){ - throw new Error("the _type property must be set. " + - "Blame the karma library authors as this is an internal value"); - } else { - if (Karma._isValidType(asset._type)){ - this._type = asset._type; - switch ( this._type ) { - case "image": this.media = new Image(); - break; - case "audio": this.media = new Audio(); - break; - //case "video": - //NYI - //this.media = new Video(); - break; - default: throw new Error("Media type not supported"); - } - - } else { - throw new Error("the _type property supplied is invalid. " + - "Blame the karma library authors as this is an internal value"); - } - } - - if(Karma._isLocalized(asset._localized)){ - this._localized = asset._localized; - this._path = Karma.karma._localePath + - this._type + "/"; - } else { - this._path = Karma.karma._assetPath + - this._type + "/"; - } - - - //IMPORTANT: This one magic line loads the file - this.media.src = this.src = this._path + this.file; - - //add event handlers - this._addEventHandlers(); - - if (this._type === "audio"){ - this.media.autobuffer = true; - this.media.load(); - } - - - return this; - }, - //Adds event handlers to update the counters when - //the asset is successfully or unsuccessfully loaded - _addEventHandlers : function () { - var that = this; - var loadEvent = "load"; - //Browser Hack recommended by chromium devs - //http://code.google.com/p/chromium/issues/detail?id=20251&q=loading%20audio&colspec=ID%20Stars%20Pri%20Area%20Type%20Status%20Summary%20Modified%20Owner%20Mstone%20OS#c4 - if (this._type === "audio" || this._type === "video"){ - loadEvent = "canplaythrough"; - } - - that.media.addEventListener( - loadEvent, - function (e) { - Karma.karma._counters.loaded++; - Karma.karma._updateStatus(); - that.status = "loaded";}, false); - - that.media.addEventListener( - "error", - function (e) { - Karma.karma._counters.errors++; - that.status = "error"; - var errorMsg = "Error: " + that._type.toUpperCase() + - " " + that.name + " cannot be loaded."; - Karma.karma._updateStatus(errorMsg); - }, - false); - that.media.addEventListener( - "abort", - function (e) { - Karma.karma._counters.total++; - that.status = "aborted"; - var errorMsg = "ABORT: " + that._type.toUpperCase() + - " " + that.name + " loading was aborted."; - Karma.karma._updateStatus(errorMsg); - - }, false); - - } - -}; - -//determine if it is a valid type of asset -Karma._isValidType = function (type){ - return type === "image" || - type === "svg" || - type === "audio" || - type === "video" || - type === "canvas"; -}; - -Karma._isLocalized = function (boolLocalized) { - if (typeof boolLocalized === "boolean" ) { - if(boolLocalized === true && - Karma.karma.locale === undefined){ - throw new Error("You cannot localize a media asset" + - " if the global locale for Karma isn't set"); - } else { - return boolLocalized; - } - } else if (typeof boolLocalized === undefined){ - return false; - } else{ - throw new Error("This is not a valid value for the localized option"); - } -}; - -Karma._computeLocalePath = function(locale) { - return Karma.karma._assetPath + locale + "/"; -}; - -Karma._makeImages = function (imgConfigs){ - var makeImage = function (imgConfig){ - var image = undefined; - imgConfig._type = "image"; - image = Karma.create(Karma.kMedia)._init(imgConfig); - Karma.karma.image[imgConfig.name] = image; - }; - - imgConfigs.forEach(function(imgConfig){ makeImage(imgConfig);}); - -}; - -Karma._makeAudio = function (audioConfigs){ - var makeAudio = function (audioConfig){ - var audio = undefined; - audioConfig._type = "audio"; - audio = Karma.create(Karma.kMedia)._init(audioConfig); - audio.play = function () { - //hack to fix the audio "stuttering" problem - //more info: https://bugs.launchpad.net/karma/+bug/426108 - this.media.currentTime = 0.1; - this.media.play(); - }; - Karma.karma.audio[audioConfig.name] = audio; - }; - - audioConfigs.forEach(function(audioConfig){ makeAudio(audioConfig);}); - -}; - - -Karma._makeCanvases = function (canvasConfigs){ - var makeCanvas = function (canvasConfig){ - var canvas = undefined; - canvas = Karma.create(Karma.kCanvas)._init(canvasConfig); - Karma.karma.canvas[canvasConfig.name] = canvas; - }; - - canvasConfigs.forEach(function(canvasConfig){ makeCanvas(canvasConfig);}); - -}; - -/** Prototypal object for each canvas element submitted to Karma in the - * Karma() method - * @throws {Error} if the name and domId for the canvas element are not specified - * @thows {Error} if the supplied domId does not match an element in the DOM - * @class This object is the prototype for each canvas element submitted to Karma in the - * Karma() method - */ -Karma.kCanvas = { - /** Name of the canvas, used internally by karma.js - * @type String - * @default '' - */ - name : '', - /** Width of canvas element - * @type Number - * @default 0 - */ - width: 0, - /** Height of canvas element - * @type Number - * @default 0 - */ - height: 0, - /** Whether canvas is visible - * @type boolean - * @default true - */ - visible: true, - /** Element ID for canvas element in html document - * @type String - * @default undefined - */ - domId: undefined, - /** Reference to the DOM element - * @type DOMElement - * @default undefined - */ - node: undefined, - /** The 2 Dimensional Rendering context property for this canvas - * @type 2DRenderingContext - * @default undefined - */ - ctx: undefined, - /** Frames Per Second, I don't know what the purpose of this is, - * Felipe made it up - * @type Number - * @default 24 - */ - fps: 24, - - //initializes object with values provides by user - _init: function (config) { - for (var option in config){ - if (config.hasOwnProperty(option)){ - switch (option){ - case "name": - this.name = config[option]; - break; - case "domId": - this.domId = config[option]; - break; - case "width": - if(!this.height){ - throw new Error("If you specify a width you must also" + - "specify a height"); - } - this.width = config[option]; - break; - case "height": - if(!this.width){ - throw new Error("If you specify a height you must also" + - "specify a width"); - } - this.height = parseInt(config.option, 10); - break; - case "fps": - this.fps = parseInt(config.option, 10); - break; - } - } - } - - if(this.domId && document.getElementById(this.domId)){ - this.node = document.getElementById(this.domId); - this.ctx = this.node.getContext('2d'); - } else { - throw new Error('you must specify a valid domId that' + - 'is in your html page'); - } - - if(!config.height && !config.width){ - this.width = parseInt(this.node.getAttribute('width'), 10); - this.height = parseInt(this.node.getAttribute('height'), 10); - } - - return this; - }, - /** Clear area of canvas element specified by parameters, if no - * parameters supplied, clears entire canvas - * @param {Number} [x=0] x coordinate, defaults to zero if left blank - * @param {Number} [y=0] y coordinate, defaults to zero if left blank - * @param {Number} [width=0] width of area to be cleared, defaults - * entire width of canvas - * @param {Number} [height=0] height of area to be cleared, defaults - * entire height of canvas - * @returns this - * @example - * - * k.canvas.ninja.clear(); - * // clears the entire ninja canvas - * - * k.canvas.ninja.clear(0, 10, 20, 30); - * //clears a specific portion of the ninja canvas - * - */ - clear : function ( x, y, width, height ) { - var that = this; - that.ctx.clearRect( - x || 0, - y || 0, - width || that.width, - height || that.height - ); - return that; - }, - - //These are all properties or methods of the canvas element's - //2 dimensional context - _chainingFunctions : [ - "globalAlpha", "globalCompositeOperation", "lineWidth", "lineCap", - "lineJoin", "miterLimit", "font", "textAlign", "textBaseline", "save", - "restore", "scale", "rotate", "translate", "transform", "setTransform", - "clearRect", "fillRect", "strokeRect", "beginPath", "closePath", - "moveTo", "lineTo", "quadraticCurveTo", "bezierCurveTo", "arcTo", - "arc", "rect", "fill", "stroke", "clip", "fillText", "strokeText", - "measureText", "isPointInPath", "strokeStyle", "fillStyle", - "createLinearGradient", "createRadialGradient", "createPattern", - "shadowOffsetX", "shadowOffsetY", "shadowBlur", "shadowColor", - //"mozTextStyle", "mozDrawText", "mozMeasureText", "mozPathText", - "mozTextAlongPath", "drawImage", "getImageData", "putImageData", - "createImageData", "drawWindow" - ] -}; - - - -Karma._makeSvgs = function (svgConfigs){ - var makeSvg = function (svgConfig){ - var svg = undefined; - svg = Karma.create(Karma.kSvg)._init(svgConfig); - Karma.karma.svg[svgConfig.name] = svg; - }; - - svgConfigs.forEach(function(svgConfig){ makeSvg(svgConfig);}); - -}; - -/** Prototypal object for each svg element submitted to Karma in the - * Karma() method - * @throws {Error} if the name and domId for the svg element are not specified - * @thows {Error} if the supplied domId does not match an element in the DOM - * @class This object is the prototype for each svg element submitted to Karma in the - * Karma() method - */ -Karma.kSvg = { - /** name of instance, used internally - * @typeof string - * @default "" - */ - name : "", - /** width of element - * @type number - * @default 0 - */ - width: 0, - /** height of element - * @type number - * @default 0 - */ - height: 0, - /** Status of element, either "loaded" or "error" - * @type string - * @default "" - */ - status: "", - /** Whether canvas is visible - * @type boolean - * @default true - */ - visible: true, - /** Element ID for canvas element in html document - * @type String - * @default undefined - */ - domId: undefined, - /** Reference to the DOM element - * @type DOMElement - * @default undefined - */ - node: undefined, - /** Reference to the SVGDocument - * @type SVGDocument - * @default undefined - */ - doc: undefined, - /** Reference to the root element of the SVG Document - * @type DocumentElement - * @default undefined - */ - root: undefined, - _localized : undefined, - _chainingFunctions: [], - _init: function (config) { - Karma.karma._counters.total++; - - for (var option in config){ - if (config.hasOwnProperty(option)){ - switch (option){ - case "name": - this.name = config[option]; - break; - case "domId": - this.domId = config[option]; - break; - case "width": - if(!this.height){ - throw new Error("If you specify a width you must also" + - "specify a height"); - } - this.width = parseInt(config[option], 10); - break; - case "height": - if(!this.width){ - throw new Error("If you specify a height you must also" + - "specify a width"); - } - this.height = config[option]; - break; - case "fps": - this.fps = config[option]; - break; - } - } - } - - if(this.domId && document.getElementById(this.domId)){ - this.node = document.getElementById(this.domId); - } else { - throw new Error('you must specify a valid domId that' + - 'is in your html page'); - } - - if(!config.height && !config.width){ - this.width = parseInt(this.node.getAttribute('width'), 10); - this.height = parseInt(this.node.getAttribute('height'), 10); - } - - var that = this; - that._addEventHandlers(); - - return this; - - - }, - _addEventHandlers : function () { - var that = this; - that.doc = that.node.getSVGDocument(); - that.node.addEventListener( - "load", - function (e) { - that.doc = that.node.getSVGDocument(); - that.root = that.doc.documentElement; - Karma.karma._counters.loaded++; - Karma.karma._updateStatus(); - that.status = "loaded"; - }, false); - - that.node.addEventListener( - "error", - function (e) { - Karma.karma._counters.loaded--; - Karma.karma._counters.errors++; - that.status = "error"; - var errorMsg = "Error: " + that._type.toUpperCase() + - " " + that.name + " cannot be loaded."; - Karma.karma._updateStatus(errorMsg); - }, - false); - that.node.addEventListener( - "abort", - function (e) { - that.status = "aborted"; - var errorMsg = "ABORT: " + that._type.toUpperCase() + - " " + that.name + " loading was aborted."; - Karma.karma._updateStatus(errorMsg); - - }, false); - - } -}; - -Karma._makeVideos = function (video){ - -}; diff --git a/examples/lessons/6_Maths_goShopping/js/lesson.js b/examples/lessons/6_Maths_goShopping/js/lesson.js deleted file mode 100755 index 5236876..0000000 --- a/examples/lessons/6_Maths_goShopping/js/lesson.js +++ /dev/null @@ -1,259 +0,0 @@ -$(document).ready(function(){ - var k = Karma({ - audio: [{'name':'correct','file':'correct.wav'}, - {'name':'incorrect','file':'incorrect.wav'} - ]}); - - k.ready(function(){ - var i,j; - var checkId; - var correctCounter; - var totalCounter; - var TOTAL_THINGS = 19; - var TOTAL_MONEYS = 5; - var TOTAL_QUES = 10; - var flag_correct; - var flag_checked; - var checked; - var randThings = []; - var randMoneys = []; - var totalMoney; - var totalPrice; - - var money = new Array(5,10,25,50,100); - var things = new Array('roti','pomogranate','pen','pear','papaya','orange','mango','lays','ice', - 'grapes','food','doll','cap','cake','bread','book','balloon','bag','apple' - ); - var priceThings = new Array(15,5,41,3,7,5,9,19,13,11,45,89,65,33,23,65,25,87,15); - - var scoreboard = $('#score_box').scoreboard({'layout':'horizontal', - 'winningScore': TOTAL_QUES}); - - var genRandomThings = function(){ - randThings[0] = k.rand(0,TOTAL_THINGS-1); - for(i=1; i<TOTAL_THINGS; i++){ - do{ - flag = 0; - randThings[i] = k.rand(0,TOTAL_THINGS-1); - for(j=0; j<i; j++){ - if(randThings[i]===randThings[j]){ - flag++; - } - } - }while(flag != 0 ); //end of do while loop - } - - }; - - var genRandomMoneys = function(){ - randMoneys[0] = k.rand(0,TOTAL_MONEYS-1); - for(i=1; i<TOTAL_MONEYS; i++){ - do{ - flag = 0; - randMoneys[i] = k.rand(0,TOTAL_MONEYS-1); - for(j=0; j<i; j++){ - if(randMoneys[i]===randMoneys[j]){ - flag++; - } - } - }while(flag != 0 ); //end of do while loop - } - - }; - - - - - var generatePositions = function(side,posId,topPos,leftPos){ - var side,posIdentify; - var zindexVal; - if(side === "left"){ - if(posId === 1){ - zindexVal = 1; - } - else if(posId === 3){ - zindexVal = 1; - } - else{ - zindexVal = 0; - } - $('#left-side').append('<div id="moneyPos'+posId+'" class="moneyPositions"></div>'); - $('#moneyPos'+posId).css({'top':topPos+'px','left':leftPos+'px','z-index':zindexVal}); - } - else{ - $('#right-side').append('<div id="thingPos'+posId+'" class="thingsPositions"></div>'); - $('#thingPos'+posId).css({'top':topPos+'px','left':leftPos+'px'}); - } - }; - - var checkAnswer = function(){ - if(flag_checked != 0){ - if(checkId == "moneyOk" && totalMoney >= totalPrice){ - flag_checked = 0; - $('#howmuchText').html('<img src="assets/image/howMuchLeft.png" />'); - } - else if(checkId == "moneyNeeded" && totalMoney < totalPrice){ - flag_checked = 0; - $('#howmuchText').html('<img src="assets/image/howMuchNeeded.png" />'); - } - else{ //try again ur score wont increase - flag_correct = 0; - } - } - if(flag_checked === 0){ - $('#textDiv').html('<input type="text" class="textBox" maxlength="3"/>'); - $('.textBox').val(''); - foucs_blur(); $('.textBox').focus(); - } - }; - - var nextQuestions = function(){ - $('#howmuchText').html(''); - $('#textDiv').html(''); - - totalMoney = 0; - totalPrice = 0; - flag_correct = 1; - flag_checked = 1; - $('#left-side').html('').append('<img id="leftText" src="assets/image/leftText.png" />'); - $('#right-side').html('').append('<img id="rightText" src="assets/image/rightText.png" />'); - - generatePositions('left',0,25,25); - generatePositions('left',1,75,325); - generatePositions('left',2,150,50); - generatePositions('left',3,180,350); - - generatePositions('right',0,50,25); - generatePositions('right',1,25,220); - generatePositions('right',2,225,50); - generatePositions('right',3,200,275); - - genRandomMoneys(); - var currentMoneys = k.rand(1,4); - for(i = 0; i< currentMoneys ;i++){ - var randMoney = randMoneys[i]; - $('#moneyPos'+i).append('<img src = "assets/image/rs'+money[randMoney]+'.png" />'); - totalMoney += money[randMoney]; - } - genRandomThings(); - var currentThings = k.rand(1,4); - for(i = 0; i< currentThings ;i++){ - var randThing = randThings[i]; - $('#thingPos'+i).append('<img src = "assets/image/'+things[randThing]+'.png" />'); - totalPrice += priceThings[randThing]; - } - - $('.checkMoney').click(function(){ - checkId = $(this).attr('id'); - checkAnswer(); - }); - }; - - - - function gameStart(){ - $('#content').removeClass('backOpaque'); - $('#gameOver').hide(); - totalCounter = 0; - correctCounter = 0; - nextQuestions(); - - } - - var displayGameOver = function(){ - $('#content').addClass('backOpaque'); - $('#gameOver').show(); - if(correctCounter === totalCounter){ - $('#gameOver').html('बधाई छ !!! सबै उत्तर सहि भए !!! '); - } - else{ - $('#gameOver').html('<div id="gameOverInfo">किन गलत भयो पत्ता लगाउ र अर्को पटक सहि बनाउने कोशिश गर । <br /> You Got <span class="specialText">'+correctCounter+ - '</span> correct out of <span class="specialText">'+totalCounter+'</span> questions .</div>'); - } - }; - - var delayCorrectShow = function(){ - document.delayForm.delayval.value = 1; - if(checked === 1){ - if(totalCounter === 10){ - displayGameOver(); - } - else{ - nextQuestions(); - } - } - $('#checkDisplay').html(''); - - - }; - - var checkMoney = function(){ - var flag_correctAns = 1; - var textVal = $('.textBox').val(); - if( checkId === "moneyOk" && textVal == (totalMoney - totalPrice) ){ - flag_correctAns = 1; - } - else if(checkId === "moneyNeeded" && textVal == (totalPrice - totalMoney)){ - flag_correctAns = 1; - } - else{ - flag_correctAns = 0; - } - - if(flag_correctAns === 1){ - checked = 1; - k.audio.correct.play(); - if(flag_correct === 1){ - correctCounter++; - scoreboard.scoreboard('inc'); - } - totalCounter++; - scoreboard.scoreboard('incTotal'); - $('#checkDisplay').html('<img src="assets/image/correct.png" />'); - - } - else{ - flag_correct = 0; - checked = 0; - k.audio.incorrect.play(); - $('#checkDisplay').html('<img src="assets/image/incorrect.png" />'); - t=setTimeout(function(){delayCorrectShow();},1000); - } - t=setTimeout(function(){delayCorrectShow();},1000); - - }; - - function foucs_blur(){ - $('input[type="text"]') - .focus(function() { - $(this).addClass("focus"); - }) - .blur(function() { - $(this).removeClass("focus"); - }) - .keypress(function(event) { - if(event.which === 13){ - checkMoney(); - } - - }); - - } - - $('#linkStart').click(function(){ - gameStart(); - }); - - $('#linkPlayAgain').click(function(){ - gameStart(); - }); - $('#linkHelp').mouseover(function(){ - $('#help').slideDown(2000); - }) - .mouseout(function(){ - $('#help').slideUp(2000); - - }); - }); //end of k.ready - }); //end of document.read - diff --git a/examples/lessons/6_Maths_goShopping/js/ui.core.js b/examples/lessons/6_Maths_goShopping/js/ui.core.js deleted file mode 100755 index 5493e0a..0000000 --- a/examples/lessons/6_Maths_goShopping/js/ui.core.js +++ /dev/null @@ -1,519 +0,0 @@ -/* - * jQuery UI 1.7.2 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI - */ -;jQuery.ui || (function($) { - -var _remove = $.fn.remove, - isFF2 = $.browser.mozilla && (parseFloat($.browser.version) < 1.9); - -//Helper functions and ui object -$.ui = { - version: "1.7.2", - - // $.ui.plugin is deprecated. Use the proxy pattern instead. - plugin: { - add: function(module, option, set) { - var proto = $.ui[module].prototype; - for(var i in set) { - proto.plugins[i] = proto.plugins[i] || []; - proto.plugins[i].push([option, set[i]]); - } - }, - call: function(instance, name, args) { - var set = instance.plugins[name]; - if(!set || !instance.element[0].parentNode) { return; } - - for (var i = 0; i < set.length; i++) { - if (instance.options[set[i][0]]) { - set[i][1].apply(instance.element, args); - } - } - } - }, - - contains: function(a, b) { - return document.compareDocumentPosition - ? a.compareDocumentPosition(b) & 16 - : a !== b && a.contains(b); - }, - - hasScroll: function(el, a) { - - //If overflow is hidden, the element might have extra content, but the user wants to hide it - if ($(el).css('overflow') == 'hidden') { return false; } - - var scroll = (a && a == 'left') ? 'scrollLeft' : 'scrollTop', - has = false; - - if (el[scroll] > 0) { return true; } - - // TODO: determine which cases actually cause this to happen - // if the element doesn't have the scroll set, see if it's possible to - // set the scroll - el[scroll] = 1; - has = (el[scroll] > 0); - el[scroll] = 0; - return has; - }, - - isOverAxis: function(x, reference, size) { - //Determines when x coordinate is over "b" element axis - return (x > reference) && (x < (reference + size)); - }, - - isOver: function(y, x, top, left, height, width) { - //Determines when x, y coordinates is over "b" element - return $.ui.isOverAxis(y, top, height) && $.ui.isOverAxis(x, left, width); - }, - - keyCode: { - BACKSPACE: 8, - CAPS_LOCK: 20, - COMMA: 188, - CONTROL: 17, - DELETE: 46, - DOWN: 40, - END: 35, - ENTER: 13, - ESCAPE: 27, - HOME: 36, - INSERT: 45, - LEFT: 37, - NUMPAD_ADD: 107, - NUMPAD_DECIMAL: 110, - NUMPAD_DIVIDE: 111, - NUMPAD_ENTER: 108, - NUMPAD_MULTIPLY: 106, - NUMPAD_SUBTRACT: 109, - PAGE_DOWN: 34, - PAGE_UP: 33, - PERIOD: 190, - RIGHT: 39, - SHIFT: 16, - SPACE: 32, - TAB: 9, - UP: 38 - } -}; - -// WAI-ARIA normalization -if (isFF2) { - var attr = $.attr, - removeAttr = $.fn.removeAttr, - ariaNS = "http://www.w3.org/2005/07/aaa", - ariaState = /^aria-/, - ariaRole = /^wairole:/; - - $.attr = function(elem, name, value) { - var set = value !== undefined; - - return (name == 'role' - ? (set - ? attr.call(this, elem, name, "wairole:" + value) - : (attr.apply(this, arguments) || "").replace(ariaRole, "")) - : (ariaState.test(name) - ? (set - ? elem.setAttributeNS(ariaNS, - name.replace(ariaState, "aaa:"), value) - : attr.call(this, elem, name.replace(ariaState, "aaa:"))) - : attr.apply(this, arguments))); - }; - - $.fn.removeAttr = function(name) { - return (ariaState.test(name) - ? this.each(function() { - this.removeAttributeNS(ariaNS, name.replace(ariaState, "")); - }) : removeAttr.call(this, name)); - }; -} - -//jQuery plugins -$.fn.extend({ - remove: function() { - // Safari has a native remove event which actually removes DOM elements, - // so we have to use triggerHandler instead of trigger (#3037). - $("*", this).add(this).each(function() { - $(this).triggerHandler("remove"); - }); - return _remove.apply(this, arguments ); - }, - - enableSelection: function() { - return this - .attr('unselectable', 'off') - .css('MozUserSelect', '') - .unbind('selectstart.ui'); - }, - - disableSelection: function() { - return this - .attr('unselectable', 'on') - .css('MozUserSelect', 'none') - .bind('selectstart.ui', function() { return false; }); - }, - - scrollParent: function() { - var scrollParent; - if(($.browser.msie && (/(static|relative)/).test(this.css('position'))) || (/absolute/).test(this.css('position'))) { - scrollParent = this.parents().filter(function() { - return (/(relative|absolute|fixed)/).test($.curCSS(this,'position',1)) && (/(auto|scroll)/).test($.curCSS(this,'overflow',1)+$.curCSS(this,'overflow-y',1)+$.curCSS(this,'overflow-x',1)); - }).eq(0); - } else { - scrollParent = this.parents().filter(function() { - return (/(auto|scroll)/).test($.curCSS(this,'overflow',1)+$.curCSS(this,'overflow-y',1)+$.curCSS(this,'overflow-x',1)); - }).eq(0); - } - - return (/fixed/).test(this.css('position')) || !scrollParent.length ? $(document) : scrollParent; - } -}); - - -//Additional selectors -$.extend($.expr[':'], { - data: function(elem, i, match) { - return !!$.data(elem, match[3]); - }, - - focusable: function(element) { - var nodeName = element.nodeName.toLowerCase(), - tabIndex = $.attr(element, 'tabindex'); - return (/input|select|textarea|button|object/.test(nodeName) - ? !element.disabled - : 'a' == nodeName || 'area' == nodeName - ? element.href || !isNaN(tabIndex) - : !isNaN(tabIndex)) - // the element and all of its ancestors must be visible - // the browser may report that the area is hidden - && !$(element)['area' == nodeName ? 'parents' : 'closest'](':hidden').length; - }, - - tabbable: function(element) { - var tabIndex = $.attr(element, 'tabindex'); - return (isNaN(tabIndex) || tabIndex >= 0) && $(element).is(':focusable'); - } -}); - - -// $.widget is a factory to create jQuery plugins -// taking some boilerplate code out of the plugin code -function getter(namespace, plugin, method, args) { - function getMethods(type) { - var methods = $[namespace][plugin][type] || []; - return (typeof methods == 'string' ? methods.split(/,?\s+/) : methods); - } - - var methods = getMethods('getter'); - if (args.length == 1 && typeof args[0] == 'string') { - methods = methods.concat(getMethods('getterSetter')); - } - return ($.inArray(method, methods) != -1); -} - -$.widget = function(name, prototype) { - var namespace = name.split(".")[0]; - name = name.split(".")[1]; - - // create plugin method - $.fn[name] = function(options) { - var isMethodCall = (typeof options == 'string'), - args = Array.prototype.slice.call(arguments, 1); - - // prevent calls to internal methods - if (isMethodCall && options.substring(0, 1) == '_') { - return this; - } - - // handle getter methods - if (isMethodCall && getter(namespace, name, options, args)) { - var instance = $.data(this[0], name); - return (instance ? instance[options].apply(instance, args) - : undefined); - } - - // handle initialization and non-getter methods - return this.each(function() { - var instance = $.data(this, name); - - // constructor - (!instance && !isMethodCall && - $.data(this, name, new $[namespace][name](this, options))._init()); - - // method call - (instance && isMethodCall && $.isFunction(instance[options]) && - instance[options].apply(instance, args)); - }); - }; - - // create widget constructor - $[namespace] = $[namespace] || {}; - $[namespace][name] = function(element, options) { - var self = this; - - this.namespace = namespace; - this.widgetName = name; - this.widgetEventPrefix = $[namespace][name].eventPrefix || name; - this.widgetBaseClass = namespace + '-' + name; - - this.options = $.extend({}, - $.widget.defaults, - $[namespace][name].defaults, - $.metadata && $.metadata.get(element)[name], - options); - - this.element = $(element) - .bind('setData.' + name, function(event, key, value) { - if (event.target == element) { - return self._setData(key, value); - } - }) - .bind('getData.' + name, function(event, key) { - if (event.target == element) { - return self._getData(key); - } - }) - .bind('remove', function() { - return self.destroy(); - }); - }; - - // add widget prototype - $[namespace][name].prototype = $.extend({}, $.widget.prototype, prototype); - - // TODO: merge getter and getterSetter properties from widget prototype - // and plugin prototype - $[namespace][name].getterSetter = 'option'; -}; - -$.widget.prototype = { - _init: function() {}, - destroy: function() { - this.element.removeData(this.widgetName) - .removeClass(this.widgetBaseClass + '-disabled' + ' ' + this.namespace + '-state-disabled') - .removeAttr('aria-disabled'); - }, - - option: function(key, value) { - var options = key, - self = this; - - if (typeof key == "string") { - if (value === undefined) { - return this._getData(key); - } - options = {}; - options[key] = value; - } - - $.each(options, function(key, value) { - self._setData(key, value); - }); - }, - _getData: function(key) { - return this.options[key]; - }, - _setData: function(key, value) { - this.options[key] = value; - - if (key == 'disabled') { - this.element - [value ? 'addClass' : 'removeClass']( - this.widgetBaseClass + '-disabled' + ' ' + - this.namespace + '-state-disabled') - .attr("aria-disabled", value); - } - }, - - enable: function() { - this._setData('disabled', false); - }, - disable: function() { - this._setData('disabled', true); - }, - - _trigger: function(type, event, data) { - var callback = this.options[type], - eventName = (type == this.widgetEventPrefix - ? type : this.widgetEventPrefix + type); - - event = $.Event(event); - event.type = eventName; - - // copy original event properties over to the new event - // this would happen if we could call $.event.fix instead of $.Event - // but we don't have a way to force an event to be fixed multiple times - if (event.originalEvent) { - for (var i = $.event.props.length, prop; i;) { - prop = $.event.props[--i]; - event[prop] = event.originalEvent[prop]; - } - } - - this.element.trigger(event, data); - - return !($.isFunction(callback) && callback.call(this.element[0], event, data) === false - || event.isDefaultPrevented()); - } -}; - -$.widget.defaults = { - disabled: false -}; - - -/** Mouse Interaction Plugin **/ - -$.ui.mouse = { - _mouseInit: function() { - var self = this; - - this.element - .bind('mousedown.'+this.widgetName, function(event) { - return self._mouseDown(event); - }) - .bind('click.'+this.widgetName, function(event) { - if(self._preventClickEvent) { - self._preventClickEvent = false; - event.stopImmediatePropagation(); - return false; - } - }); - - // Prevent text selection in IE - if ($.browser.msie) { - this._mouseUnselectable = this.element.attr('unselectable'); - this.element.attr('unselectable', 'on'); - } - - this.started = false; - }, - - // TODO: make sure destroying one instance of mouse doesn't mess with - // other instances of mouse - _mouseDestroy: function() { - this.element.unbind('.'+this.widgetName); - - // Restore text selection in IE - ($.browser.msie - && this.element.attr('unselectable', this._mouseUnselectable)); - }, - - _mouseDown: function(event) { - // don't let more than one widget handle mouseStart - // TODO: figure out why we have to use originalEvent - event.originalEvent = event.originalEvent || {}; - if (event.originalEvent.mouseHandled) { return; } - - // we may have missed mouseup (out of window) - (this._mouseStarted && this._mouseUp(event)); - - this._mouseDownEvent = event; - - var self = this, - btnIsLeft = (event.which == 1), - elIsCancel = (typeof this.options.cancel == "string" ? $(event.target).parents().add(event.target).filter(this.options.cancel).length : false); - if (!btnIsLeft || elIsCancel || !this._mouseCapture(event)) { - return true; - } - - this.mouseDelayMet = !this.options.delay; - if (!this.mouseDelayMet) { - this._mouseDelayTimer = setTimeout(function() { - self.mouseDelayMet = true; - }, this.options.delay); - } - - if (this._mouseDistanceMet(event) && this._mouseDelayMet(event)) { - this._mouseStarted = (this._mouseStart(event) !== false); - if (!this._mouseStarted) { - event.preventDefault(); - return true; - } - } - - // these delegates are required to keep context - this._mouseMoveDelegate = function(event) { - return self._mouseMove(event); - }; - this._mouseUpDelegate = function(event) { - return self._mouseUp(event); - }; - $(document) - .bind('mousemove.'+this.widgetName, this._mouseMoveDelegate) - .bind('mouseup.'+this.widgetName, this._mouseUpDelegate); - - // preventDefault() is used to prevent the selection of text here - - // however, in Safari, this causes select boxes not to be selectable - // anymore, so this fix is needed - ($.browser.safari || event.preventDefault()); - - event.originalEvent.mouseHandled = true; - return true; - }, - - _mouseMove: function(event) { - // IE mouseup check - mouseup happened when mouse was out of window - if ($.browser.msie && !event.button) { - return this._mouseUp(event); - } - - if (this._mouseStarted) { - this._mouseDrag(event); - return event.preventDefault(); - } - - if (this._mouseDistanceMet(event) && this._mouseDelayMet(event)) { - this._mouseStarted = - (this._mouseStart(this._mouseDownEvent, event) !== false); - (this._mouseStarted ? this._mouseDrag(event) : this._mouseUp(event)); - } - - return !this._mouseStarted; - }, - - _mouseUp: function(event) { - $(document) - .unbind('mousemove.'+this.widgetName, this._mouseMoveDelegate) - .unbind('mouseup.'+this.widgetName, this._mouseUpDelegate); - - if (this._mouseStarted) { - this._mouseStarted = false; - this._preventClickEvent = (event.target == this._mouseDownEvent.target); - this._mouseStop(event); - } - - return false; - }, - - _mouseDistanceMet: function(event) { - return (Math.max( - Math.abs(this._mouseDownEvent.pageX - event.pageX), - Math.abs(this._mouseDownEvent.pageY - event.pageY) - ) >= this.options.distance - ); - }, - - _mouseDelayMet: function(event) { - return this.mouseDelayMet; - }, - - // These are placeholder methods, to be overriden by extending plugin - _mouseStart: function(event) {}, - _mouseDrag: function(event) {}, - _mouseStop: function(event) {}, - _mouseCapture: function(event) { return true; } -}; - -$.ui.mouse.defaults = { - cancel: null, - distance: 1, - delay: 0 -}; - -})(jQuery); diff --git a/examples/lessons/6_Maths_goShopping/assets/audio/correct.wav b/examples/lessons/6_Maths_lowestCommonMultiple/assets/audio/correct.wav Binary files differindex a49ba33..a49ba33 100755 --- a/examples/lessons/6_Maths_goShopping/assets/audio/correct.wav +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/audio/correct.wav diff --git a/examples/lessons/6_Maths_goShopping/assets/audio/incorrect.wav b/examples/lessons/6_Maths_lowestCommonMultiple/assets/audio/incorrect.wav Binary files differindex 906c6a3..906c6a3 100755 --- a/examples/lessons/6_Maths_goShopping/assets/audio/incorrect.wav +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/audio/incorrect.wav diff --git a/examples/lessons/6_English_syllables/assets/image/bg_footer.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/bg_footer.png Binary files differindex 8982264..8982264 100755 --- a/examples/lessons/6_English_syllables/assets/image/bg_footer.png +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/bg_footer.png diff --git a/examples/lessons/6_English_syllables/assets/image/bg_header.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/bg_header.png Binary files differindex 98213f7..98213f7 100755 --- a/examples/lessons/6_English_syllables/assets/image/bg_header.png +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/bg_header.png diff --git a/examples/lessons/6_English_syllables/assets/image/bg_title_block.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/bg_title_block.png Binary files differindex 2c9dacf..2c9dacf 100755 --- a/examples/lessons/6_English_syllables/assets/image/bg_title_block.png +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/bg_title_block.png diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/btn_back.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/btn_back.png Binary files differindex d9fbf14..d9fbf14 100755 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/btn_back.png +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/btn_back.png diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/btn_back_hover.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/btn_back_hover.png Binary files differindex 0911fcc..0911fcc 100755 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/btn_back_hover.png +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/btn_back_hover.png diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/btn_help.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/btn_help.png Binary files differindex 6753e9c..6753e9c 100755 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/btn_help.png +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/btn_help.png diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/btn_help_hover.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/btn_help_hover.png Binary files differindex d3ccd92..d3ccd92 100755 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/btn_help_hover.png +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/btn_help_hover.png diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/btn_next.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/btn_next.png Binary files differindex 9d70993..9d70993 100755 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/btn_next.png +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/btn_next.png diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/btn_next_hover.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/btn_next_hover.png Binary files differindex 2cd4d37..2cd4d37 100755 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/btn_next_hover.png +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/btn_next_hover.png diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/btn_ole.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/btn_ole.png Binary files differindex 0e775e9..0e775e9 100755 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/btn_ole.png +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/btn_ole.png diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/btn_ole_hover.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/btn_ole_hover.png Binary files differindex c43c5f7..c43c5f7 100755 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/btn_ole_hover.png +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/btn_ole_hover.png diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/btn_play_again.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/btn_play_again.png Binary files differindex 3594d18..3594d18 100755 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/btn_play_again.png +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/btn_play_again.png diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/btn_play_again_hover.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/btn_play_again_hover.png Binary files differindex ebb8f8c..ebb8f8c 100755 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/btn_play_again_hover.png +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/btn_play_again_hover.png diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/btn_play_again_mouse_down.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/btn_play_again_mouse_down.png Binary files differindex 07d6e45..07d6e45 100755 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/btn_play_again_mouse_down.png +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/btn_play_again_mouse_down.png diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/btn_start.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/btn_start.png Binary files differindex 32e5f20..32e5f20 100755 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/btn_start.png +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/btn_start.png diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/btn_start_hover.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/btn_start_hover.png Binary files differindex 811ce78..811ce78 100755 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/btn_start_hover.png +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/btn_start_hover.png diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/btn_start_mouse_down.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/btn_start_mouse_down.png Binary files differindex 5acd43b..5acd43b 100755 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/assets/image/btn_start_mouse_down.png +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/btn_start_mouse_down.png diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/check.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/check.png Binary files differindex bd0afcb..bd0afcb 100755 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/check.png +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/check.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/checkAnsBtn.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/checkAnsBtn.png Binary files differnew file mode 100755 index 0000000..b7c80d3 --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/checkAnsBtn.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/checkAnsBtnHover.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/checkAnsBtnHover.png Binary files differnew file mode 100755 index 0000000..a0e6b6d --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/checkAnsBtnHover.png diff --git a/examples/lessons/6_Maths_romanNumerals/assets/image/correct.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/correct.png Binary files differindex 7e15698..7e15698 100755 --- a/examples/lessons/6_Maths_romanNumerals/assets/image/correct.png +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/correct.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/exercise1.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/exercise1.png Binary files differnew file mode 100755 index 0000000..9b3384c --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/exercise1.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/exercise1Hover.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/exercise1Hover.png Binary files differnew file mode 100755 index 0000000..04accd4 --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/exercise1Hover.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/exercise1Title.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/exercise1Title.png Binary files differnew file mode 100755 index 0000000..8d0892b --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/exercise1Title.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/exercise2.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/exercise2.png Binary files differnew file mode 100755 index 0000000..1d2df0a --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/exercise2.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/exercise2Hover.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/exercise2Hover.png Binary files differnew file mode 100755 index 0000000..8215fd7 --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/exercise2Hover.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/exercise3.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/exercise3.png Binary files differnew file mode 100755 index 0000000..d537da7 --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/exercise3.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/exercise3Hover.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/exercise3Hover.png Binary files differnew file mode 100755 index 0000000..156bf30 --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/exercise3Hover.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/exerciseRestTitle.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/exerciseRestTitle.png Binary files differnew file mode 100755 index 0000000..ba49afa --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/exerciseRestTitle.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/exerciseTitle.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/exerciseTitle.png Binary files differnew file mode 100755 index 0000000..9901083 --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/exerciseTitle.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/frog0.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/frog0.png Binary files differnew file mode 100755 index 0000000..8381eaa --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/frog0.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/frog1.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/frog1.png Binary files differnew file mode 100755 index 0000000..7c4cb36 --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/frog1.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/help.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/help.png Binary files differnew file mode 100755 index 0000000..a34ef14 --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/help.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/imgWhatzLCM.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/imgWhatzLCM.png Binary files differnew file mode 100755 index 0000000..bc0c827 --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/imgWhatzLCM.png diff --git a/examples/lessons/6_Maths_romanNumerals/assets/image/incorrect.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/incorrect.png Binary files differindex e60c32d..e60c32d 100755 --- a/examples/lessons/6_Maths_romanNumerals/assets/image/incorrect.png +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/incorrect.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson1ImgDef0.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson1ImgDef0.png Binary files differnew file mode 100755 index 0000000..ee9d038 --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson1ImgDef0.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson1ImgDef1.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson1ImgDef1.png Binary files differnew file mode 100755 index 0000000..643c10a --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson1ImgDef1.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson1ImgDef2.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson1ImgDef2.png Binary files differnew file mode 100755 index 0000000..7de05b7 --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson1ImgDef2.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson1ImgDef3.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson1ImgDef3.png Binary files differnew file mode 100755 index 0000000..fc8d63d --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson1ImgDef3.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson1ImgDef4.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson1ImgDef4.png Binary files differnew file mode 100755 index 0000000..3b99af6 --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson1ImgDef4.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson2ImgDef0.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson2ImgDef0.png Binary files differnew file mode 100755 index 0000000..1d3dc25 --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson2ImgDef0.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson2ImgDef1.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson2ImgDef1.png Binary files differnew file mode 100755 index 0000000..8f39030 --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson2ImgDef1.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson2ImgDef2.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson2ImgDef2.png Binary files differnew file mode 100755 index 0000000..a449225 --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson2ImgDef2.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson2ImgDef3.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson2ImgDef3.png Binary files differnew file mode 100755 index 0000000..cd93e70 --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson2ImgDef3.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson2ImgDef4.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson2ImgDef4.png Binary files differnew file mode 100755 index 0000000..b858473 --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson2ImgDef4.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson2ImgDef5.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson2ImgDef5.png Binary files differnew file mode 100755 index 0000000..9855340 --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson2ImgDef5.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson2ImgDef6.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson2ImgDef6.png Binary files differnew file mode 100755 index 0000000..c28d498 --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson2ImgDef6.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson2ImgDef7.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson2ImgDef7.png Binary files differnew file mode 100755 index 0000000..309d45f --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson2ImgDef7.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson2ImgDef8.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson2ImgDef8.png Binary files differnew file mode 100755 index 0000000..87f4a4a --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson2ImgDef8.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson2ImgDef9.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson2ImgDef9.png Binary files differnew file mode 100755 index 0000000..fbba765 --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson2ImgDef9.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson2ImgSign.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson2ImgSign.png Binary files differnew file mode 100755 index 0000000..566d986 --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson2ImgSign.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson3ImgDef0.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson3ImgDef0.png Binary files differnew file mode 100755 index 0000000..b7abd2e --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson3ImgDef0.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson3ImgDef1.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson3ImgDef1.png Binary files differnew file mode 100755 index 0000000..db8c4ad --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson3ImgDef1.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson3ImgDef2.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson3ImgDef2.png Binary files differnew file mode 100755 index 0000000..1e22959 --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson3ImgDef2.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson3ImgDef3.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson3ImgDef3.png Binary files differnew file mode 100755 index 0000000..16c33b3 --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson3ImgDef3.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson3ImgDef4.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson3ImgDef4.png Binary files differnew file mode 100755 index 0000000..92cf39a --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson3ImgDef4.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson3ImgDef5.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson3ImgDef5.png Binary files differnew file mode 100755 index 0000000..b267c7f --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/lesson3ImgDef5.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/moreQuesBtn.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/moreQuesBtn.png Binary files differnew file mode 100755 index 0000000..03edd47 --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/moreQuesBtn.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/moreQuesBtnHover.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/moreQuesBtnHover.png Binary files differnew file mode 100755 index 0000000..1086d3e --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/moreQuesBtnHover.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/nextBtn.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/nextBtn.png Binary files differnew file mode 100755 index 0000000..081ef58 --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/nextBtn.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/nextBtnHover.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/nextBtnHover.png Binary files differnew file mode 100755 index 0000000..498ce32 --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/nextBtnHover.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/picClock.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/picClock.png Binary files differnew file mode 100755 index 0000000..63e50e2 --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/picClock.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/rabbit0.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/rabbit0.png Binary files differnew file mode 100755 index 0000000..bd9badd --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/rabbit0.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/rabbit1.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/rabbit1.png Binary files differnew file mode 100755 index 0000000..1585637 --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/rabbit1.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/showAnsBtn.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/showAnsBtn.png Binary files differnew file mode 100755 index 0000000..7f3d720 --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/showAnsBtn.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/showAnsBtnHover.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/showAnsBtnHover.png Binary files differnew file mode 100755 index 0000000..3d6907c --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/showAnsBtnHover.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/timeLine.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/timeLine.png Binary files differnew file mode 100755 index 0000000..0891dcd --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/timeLine.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/timeLineIntersect.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/timeLineIntersect.png Binary files differnew file mode 100755 index 0000000..cc7e88b --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/timeLineIntersect.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/timeRing.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/timeRing.png Binary files differnew file mode 100755 index 0000000..64ed218 --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/timeRing.png diff --git a/examples/lessons/6_English_syllables/assets/image/title_block_lt.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/title_block_lt.png Binary files differindex 4696182..4696182 100755 --- a/examples/lessons/6_English_syllables/assets/image/title_block_lt.png +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/title_block_lt.png diff --git a/examples/lessons/6_English_syllables/assets/image/title_block_rt.png b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/title_block_rt.png Binary files differindex 37cc44a..37cc44a 100755 --- a/examples/lessons/6_English_syllables/assets/image/title_block_rt.png +++ b/examples/lessons/6_Maths_lowestCommonMultiple/assets/image/title_block_rt.png diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/css/lesson.css b/examples/lessons/6_Maths_lowestCommonMultiple/css/lesson.css new file mode 100755 index 0000000..0bbcdc6 --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/css/lesson.css @@ -0,0 +1,393 @@ +@CHARSET "UTF-8";
+/****** Page Styles ****/
+
+/* Designed for 1200*900 px screen resolution */
+*{
+ margin:0;
+}
+body {
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ font-size: 10pt;
+ margin: 0px;
+ background-color: #FFFFCC;
+}
+#header {
+ background-image: url(../assets/image/bg_header.png);
+ background-repeat: repeat-x;
+ height: 75px;
+ width: 100%;
+ position: absolute;
+ left: 0px;
+ top: 0px;
+}
+#topbtn_left {
+ float: left;
+ height: 60px;
+ width: 60px;
+ padding-top: 6px;
+ padding-left: 15px;
+}
+
+
+ .linkBack{
+ width: 60px; height: 59px;
+ background:url(../assets/image/btn_back.png);
+ }
+ .linkBack:hover{
+ background:url(../assets/image/btn_back_hover.png);
+ }
+
+#lesson_title {
+ float: left;
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ font-size: 16pt;
+ font-weight: bold;
+ color: #FFFFFF;
+ margin-left: 10px;
+ background-image: url(../assets/image/bg_title_block.png);
+}
+#topbtn_right {
+ float: right;
+ height: 60px;
+ width: 60px;
+ padding-top: 6px;
+ padding-right: 15px;
+}
+ #linkHelp{
+ width: 60px; height: 60px;
+ background:url(../assets/image/btn_help.png);
+ }
+ #linkHelp:hover{
+ background:url(../assets/image/btn_help_hover.png);
+ }
+ #linkOle{
+ width: 60px; height: 60px;
+ background:url(../assets/image/btn_ole.png);
+ }
+ #linkOle:hover{
+ background:url(../assets/image/btn_ole_hover.png);
+ }
+ .linkNext{
+ width: 60px; height: 60px;
+ background:url(../assets/image/btn_next.png);
+ }
+ .linkNext:hover{
+ background:url(../assets/image/btn_next_hover.png);
+ }
+#footer {
+ position:relative;
+ background-image: url(../assets/image/bg_footer.png);
+ background-repeat: repeat-x;
+ height: 75px;
+ width: 100%;
+ left: 0px;
+ bottom: 0px;
+}
+#score_box {
+ float: left;
+ padding-left: 5px;
+ padding-top: 0.7em;
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ color: #FFFF00;
+ font-size: 16pt;
+ font-weight: bold;
+}
+#botbtn_right {
+ float: right;
+ height: 55px;
+ padding-right: 5px;
+ padding-top: 10px;
+}
+
+ #linkStart{
+ width: 251px; height: 55px;
+ background:url(../assets/image/btn_start.png);
+ }
+ #linkStart:hover{
+ background:url(../assets/image/btn_start_hover.png);
+ }
+ #linkStart:active{
+ background:url(../assets/image/btn_start_mouse_down.png);
+ }
+ #linkPlayAgain{
+ width: 251px; height: 55px;
+ background:url(../assets/image/btn_play_again.png);
+ }
+ #linkPlayAgain:hover{
+ background:url(../assets/image/btn_play_again_hover.png);
+ }
+ #linkPlayAgain:active{
+ background:url(../assets/image/btn_play_again_mouse_down.png);
+ }
+
+
+#timerBar {
+ display:none;
+ position: absolute;
+ left: 30%;
+ bottom: 25%;
+ width: 200px;
+ height:35px;
+ padding-left: 10px;
+ padding-top: 0px;
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ color: #FFFF00;
+ font-size: 16pt;
+ font-weight: bold;
+ }
+
+ .timerBoxes{ /* Show the timer running after the game has began.... */
+ float:right;
+ width: 50px;
+ height: 35px;
+ border: 2px dotted green;
+ color: blue;
+ text-align:center;
+ font : bold 25px Arial Black, Times New Roman;
+ background: #ACC;
+ }
+
+#linkNextLesson{
+ position:absolute;
+ bottom: 75px;
+ right: 10px;
+}
+#linkPrevLesson{
+ display:none;
+ position:absolute;
+ bottom: 75px;
+ left: 10px;
+}
+
+/**** End of the page style ****/
+
+/**** Game Styles ****/
+
+a{
+ color:#FFFFCC;
+}
+img{
+ border:none;
+}
+#currentTitle{
+ width: 150px;
+ height: 80px;
+ font:25px/30px "Courier New", Courier, monospace;
+ font-weight: bold;
+ color: red;
+}
+#content{
+ position:relative;
+ margin: 0px auto;
+ margin-top: 80px;
+ width: 1198px;
+ height: 555px;
+}
+.nextBtn{
+ position:absolute;
+ width: 145px;
+ height: 55px;
+ cursor: pointer;
+ background:url(../assets/image/nextBtn.png);
+}
+.nextBtn:hover{
+ background:url(../assets/image/nextBtnHover.png);
+ }
+
+
+
+.showAns{
+ margin: .2em 6em 0 2em;
+ width: 145px;
+ height: 55px;
+ cursor: pointer;
+ background:url(../assets/image/showAnsBtn.png);
+}
+.showAns:hover{
+ background:url(../assets/image/showAnsBtnHover.png);
+}
+.checkAns{
+ margin: .2em 1em;
+ width: 145px;
+ height: 55px;
+ cursor: pointer;
+ background:url(../assets/image/checkAnsBtn.png);
+}
+.checkAns:hover{
+ background:url(../assets/image/checkAnsBtnHover.png);
+ }
+#moreQues{
+ margin: .2em 1em;
+ width: 145px;
+ height: 55px;
+ cursor: pointer;
+ background:url(../assets/image/moreQuesBtn.png);
+}
+#moreQues:hover{
+ background:url(../assets/image/moreQuesBtnHover.png);
+ }
+.exerciseButtons{
+ position:absolute;
+ width: 159px;
+ height: 54px;
+ cursor: pointer;
+}
+
+#exercise1{
+ background:url(../assets/image/exercise1.png);
+}
+#exercise1:hover{
+ background:url(../assets/image/exercise1Hover.png);
+}
+#exercise2{
+ background:url(../assets/image/exercise2.png);
+}
+#exercise2:hover{
+ background:url(../assets/image/exercise2Hover.png);
+}
+#exercise3{
+ background:url(../assets/image/exercise3.png);
+}
+#exercise3:hover{
+ background:url(../assets/image/exercise3Hover.png);
+}
+
+
+ input.inputBox{
+ size:3;
+ font: 25px/30px Verdana, Geneva, Arial, Helvetica, sans-serif;
+ font-weight: bold;
+ height:30px;
+ width: 100px;
+ text-align:center;
+ }
+
+
+
+ input.ansBox{
+ size:4;
+ font: 25px/30px Verdana, Geneva, Arial, Helvetica, sans-serif;
+ font-weight: bold;
+ height:30px;
+ width: 120px;
+ text-align:center;
+ margin-left: 1em;
+ }
+ .default{
+ background-color: #A6E4FE;
+ }
+ .focus {
+ background-color: #FF9900;
+ }
+ .incorrect {
+ background-color: yellow;
+ }
+
+
+/* Exercise */
+#exerciseContainer{
+ margin: 2px auto;
+ width: 80em;
+ height: 40em;
+ text-align:center;
+}
+.exerciseTitle{
+ margin: .5em 10em;
+}
+.questions{
+ margin: 0 auto;
+ padding: .2em;
+ width: 35em;
+ height: 4em;
+ text-align:left;
+}
+ .numbersBox{
+ width: 6em;
+ border: 2px solid #000;
+ float:left;
+ text-align:center;
+ font: 30px Verdana, Geneva, Arial, Helvetica, sans-serif;
+ background-color: #A6E4FE;
+
+ }
+ .inpBox{
+ float:left;
+ }
+.romanNums{
+ float:left;
+ width: 2em;
+ font: 25px/35px bold Verdana, Geneva, Arial, Helvetica, sans-serif;
+}
+.displayBox{
+ margin: .3em 1em;
+ float:left;
+ width: 24px;
+ height: 24px;
+}
+#giveOptions{
+ margin: 3em auto 1em auto;
+ width: 20em;
+ height: 2em;
+ font: 30px Verdana, Geneva, Arial, Helvetica, sans-serif;
+}
+.options{
+ float:left;
+ width: 100px;
+ height: 40px;
+ margin: 0.2em;
+ background-color: #A6E4FE;
+ border: 2px solid black;
+}
+/*Utilities */
+.float-left{ float:left; }
+.float-right{ float:right; }
+.float-center{ margin:0px 10em;}
+.marginMore{margin: 0px 20em;}
+.clear {clear: both;}
+
+
+
+
+
+
+#help{
+ display:none;
+ position:absolute;
+ right: 60px;
+ top: 75px;;
+ width: 256px;
+ height: 600px;
+ background:url(../assets/image/help.png);
+ z-index:40;
+}
+.backOpaque{
+ background-color: #A4A4A4;
+ opacity: 0.2;
+ }
+
+ #gameOver{
+ opacity: 1;
+ display:none;
+ position:absolute;
+ top:45%;
+ left: 35%;
+ color: blue;
+ text-align:center;
+ font : bold 45px/65px Arial Black, Times New Roman;
+ }
+ #gameOverInfo{
+ margin-top: 35px;
+ text-align:center;
+ font: 20px/25px Helvetica, Geneva, Arial, Verdana, sans-serif;
+ font-weight:bold;
+ color:#FF0000;
+
+ }
+ .specialText{
+ margin-top: 1em;
+ font: 20px/25px Helvetica, Geneva, Arial, Verdana, sans-serif;
+ font-weight:bold;
+ color:#FF9900;
+ border-bottom: 2px dotted #CCC;
+
+ }
diff --git a/examples/lessons/6_Maths_goShopping/css/ui.scoreboard.css b/examples/lessons/6_Maths_lowestCommonMultiple/css/ui.scoreboard.css index 11cdbb5..11cdbb5 100755 --- a/examples/lessons/6_Maths_goShopping/css/ui.scoreboard.css +++ b/examples/lessons/6_Maths_lowestCommonMultiple/css/ui.scoreboard.css diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/index.html b/examples/lessons/6_Maths_lowestCommonMultiple/index.html new file mode 100755 index 0000000..6d33843 --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/index.html @@ -0,0 +1,53 @@ +<!DOCTYPE html>
+<html>
+<head>
+ <title>Class 6 Maths Lowest Common Multiple</title>
+ <meta name="keywords" content="karma,javascript,html5,sugar,sugarlabs,gsoc,ole,nepal" />
+ <link type="text/css" rel="stylesheet" href="css/ui.scoreboard.css" />
+ <link type="text/css" rel="stylesheet" href="css/lesson.css" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <link type="image/ico" rel="icon" href="../../assets/default/image/favicon.ico" />
+ <script type="text/javascript" src="js/jquery-1.4.js"></script>
+ <script type="text/javascript" src="js/ui.core.js"></script>
+ <script type="text/javascript" src="js/ui.scoreboard.js"></script>
+ <script type="text/javascript" src="js/karma.js"></script>
+ <script type="text/javascript" src="js/lesson.js"></script>
+</head>
+<body>
+ <div id="header">
+ <div id="topbtn_left"><a href="#"><div id="linkBackLesson" class="linkBack"></div></a></div>
+ <div id="lesson_title">
+ <img src="assets/image/title_block_lt.png" width="33" height="75" align="absmiddle" />
+ Lowest Common Multiple (LCM) || लघुतम समापर्तक (ल.स.)
+ <img src="assets/image/title_block_rt.png" width="33" height="75" align="absmiddle" />
+ </div>
+ <div id="topbtn_right"><a href="#"><div id="linkHelp"></div></a></div>
+ <div id="topbtn_right"><a href="http://olenepal.org"><div id="linkOle"></div></a></div>
+ </div>
+
+ <div id="content"></div>
+ <div id="help"></div>
+ <div id="gameOver"></div>
+ <form name="delayForm">
+ <input type="hidden" name="delayval" size="5">
+ </form>
+
+ <div id="footer">
+ <a href="#"><div id="linkNextLesson" class="linkNext"></div></a>
+ <a href="#"><div id="linkPrevLesson" class="linkBack"></div></a>
+ <div id="score_box"></div>
+ <div id ="timerBar">
+ <img src="assets/image/picClock.png" />
+ <div id="timerBox1" class="timerBoxes"></div>
+ <div id="timerBox2" class="timerBoxes"></div>
+ <div id="timerBox3" class="timerBoxes"></div>
+ </div>
+ <div id="botbtn_right"><a href="#"><div id="linkPlayAgain"></div></a></div>
+ <div id="botbtn_right"><a href="#"><div id="linkStart"></div></a></div>
+ <div id="botbtn_right"><a href="#"><div id="linkShowAns" class="showAns"></div></a></div>
+ <div id="botbtn_right"><a href="#"><div id="linkCheckAns" class="checkAns"></div></a></div>
+
+
+ </div>
+</body>
+</html>
diff --git a/examples/lessons/6_English_VocabularyAnimals/js/jquery-1.4.js b/examples/lessons/6_Maths_lowestCommonMultiple/js/jquery-1.4.js index a448490..a448490 100755 --- a/examples/lessons/6_English_VocabularyAnimals/js/jquery-1.4.js +++ b/examples/lessons/6_Maths_lowestCommonMultiple/js/jquery-1.4.js diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/js/karma.js b/examples/lessons/6_Maths_lowestCommonMultiple/js/karma.js index 03f027b..03f027b 100755 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/js/karma.js +++ b/examples/lessons/6_Maths_lowestCommonMultiple/js/karma.js diff --git a/examples/lessons/6_Maths_lowestCommonMultiple/js/lesson.js b/examples/lessons/6_Maths_lowestCommonMultiple/js/lesson.js new file mode 100755 index 0000000..8af8e32 --- /dev/null +++ b/examples/lessons/6_Maths_lowestCommonMultiple/js/lesson.js @@ -0,0 +1,694 @@ +$(document).ready(function(){ + var k = Karma({ + audio: [{'name':'correct','file':'correct.wav'}, + {'name':'incorrect','file':'incorrect.wav'}, + ]}); + + k.ready(function(){ + var i,j,s,t,x,flag,y,m,h; + var currentLesson; //variable to keep track of the current lesson + var clickCounter; //count the next button clicks for the particular lesson + var cutCounter; + var currentTopButton,currentLeftButton; + var TOTAL_QUES = 5; + var imgFrogCounter,frogJmpCount; + var imgRabbitCounter,rabbitJmpCount; + var timeLineLeft,timeLineInsCount; + var posCounter = []; // array Storing the positions of the frogs 0- frog and 1- rabbit + var scoreboard; + var lcmMethCounter; + var flag_frog; //flag is set if frog reaches the rabbit point + var maxHtFrogTop,maxHtFrogLeft,baseFrogTop,baseFrogLeft; + var maxHtRabbitTop,maxHtRabbitLeft,baseRabbitTop,baseRabbitLeft; + var currentTopButton,currentLeftButton; + var clickCounter; //store the click for the current lesson + var currentExercise; + var romanNums = ['i','ii','iii','iv','v']; + var randNumbers = []; + var numNumbers; //number of numbers in each quesBox + var levelNumbers = [45,50,3,6,7,4,24,18,15,25,24,2,20,16,8,4,11,17,12,6,7,10,18,5,2,16,5,12,9,15, + 13,65,21,49,37,6,28,84,243,27,248,29,95,25,65,15,25,40,105,35,300,125,900,60,76,30,31,310,225,50, + 17,34,51,27,28,36,6,36,216,9,81,243,2,3,4,5,3,90,64,8,1,2,56,14,12,16,18,6,2,98,70,14,49,65,13,26,78,12,9,69,4,30,60,70,40 + ]; + var answers = []; + var currentSection; //var to store the current section inside a particular exercise + var currentInpBox; + var flag_section; //flag to show the section is active + + var checkTime = function(timePara){ + if (timePara<10 ){ + timePara="0" + timePara; + } + return timePara; + }; + + var stopTimer = function(){ + s = 0; + clearTimeout(t); + }; + var startTimer = function(){ + s = 0; + m = 0; + h = 0; + s=checkTime(s); + $('#timerBox1').html(s); + increaseTime(); + }; + + + var increaseTime = function(){ + if(s>59){ + m++; + m=checkTime(m); + $('#timerBox2').html(m); + s = 0; + } + if(m>59){ + h++; + h=checkTime(h); + $('#timerBox3').html(h); + m=0; + } + + s=checkTime(s); + $('#timerBox1').html(s); + s++; + t=setTimeout(function(){increaseTime();},1000); + + + }; + function hcf(text1,text2){ + var gcd=1; + if (text1>text2) {text1=text1+text2; text2=text1-text2; text1=text1-text2;} + if ((text2==(Math.round(text2/text1))*text1)) {gcd=text1}else { + for (var i = Math.round(text1/2) ; i > 1; i=i-1) { + if ((text1==(Math.round(text1/i))*i)) + if ((text2==(Math.round(text2/i))*i)) {gcd=i; i=-1;} + } + } + return gcd; + } + + function lcm(t1,t2){ + var cm=1; + var f=hcf(t1,t2); + cm=t1*t2/f; + return cm; + } + var genRandNumbers=function (level){ + var lowerLimit,upperLimit; + if(level === 0){ + numNumbers = 2; + lowerLimit = 0; + upperLimit = 14; + }else if(level === 1){ + numNumbers = 2; + lowerLimit = 15; + upperLimit = 29; + }else{ + numNumbers = 3; + lowerLimit = 30; + upperLimit = 74; + } + + randNumbers[0] = k.rand(0,14); + + for(i=0; i<= 14; i++){ + do{ + flag = 0; + randNumbers[i] = k.rand(0,14); + for(j=0; j<i; j++){ + if(randNumbers[i] === randNumbers[j]){ + flag++; + } + } + }while(flag != 0 ); //end of do while loop + } + + }; + var delayObject = function(delayId){ + document.delayForm.delayval.value = 1; + //clearTimeout(t); + if(delayId === 0){ + animateFrog(); + }else if(delayId === 1){ + animateRabbit(); + }else if(delayId === 2){ + showLCMmethod(); + } + else{ + animateFrog(); + animateRabbit(); + } + + }; + + + var assignLevelButtons = function(imgId){ + var bottomPos = 0.5; + var leftPos =20+i*15; + var incI = imgId+1; + $('#content').append('<div class="exerciseButtons" id="exercise'+incI+'"></div>'); + var exercisebtncss = { + 'bottom': bottomPos+'em', + 'left': leftPos+'em' + + }; + $('#exercise'+incI).css(exercisebtncss).bind({ + click : function(){ + currentExercise = imgId; + startExercise(); + } + }); + }; + function assignQuestions(quesId){ + $('#exerciseContainer').append('<div id="ques'+quesId+'" class="questions"></div>'); + $('#ques'+quesId).append('<div class="romanNums">'+romanNums[quesId]+' )</div>'); + $('#ques'+quesId).append('<div id="numbers'+quesId+'" class="numbersBox"></div>'); + $('#ques'+quesId).append('<div class="inpBox"><input type="text" id="ans'+quesId+'" class="ansBox" /></div>'); + $('#ques'+quesId).append('<div id="display'+quesId+'" class="displayBox"></div>'); + var numCntr = randNumbers[numCounter]*numNumbers; + for(j = 0; j< numNumbers; j++){ + if(j === numNumbers - 1){ + $('#numbers'+quesId).append(levelNumbers[numCntr]); + }else{ + $('#numbers'+quesId).append(levelNumbers[numCntr]).append(','); + } + numCntr++; + } + + $('#ans'+quesId).addClass('default'); + var ans; + if(currentExercise === 2){ + ans = lcm(lcm(levelNumbers[numCntr-3],levelNumbers[numCntr-2]),levelNumbers[numCntr-1]); + + }else{ + ans = lcm(levelNumbers[numCntr-2],levelNumbers[numCntr-1]); + } + answers[numCounter] = ans; + numCounter++; + } + function nextSection(){ + + $('#content').html('').append('<div id="exerciseContainer"></div>'); + $('#exerciseContainer').append('<img class="exerciseTitle" src="assets/image/exerciseTitle.png" />'); + if(currentExercise === 0){ + $('#exerciseContainer').append('<img class="exerciseTitle" src="assets/image/exercise1Title.png" />'); + }else{ + $('#exerciseContainer').append('<img class="exerciseTitle" src="assets/image/exerciseRestTitle.png" />'); + } + //generate the boxes + + genRandNumbers(currentExercise); + + scoreboard.scoreboard('reset'); + scoreboard.scoreboard('incTotal',5); + + for(var x = 0; x< TOTAL_QUES;x++){ + assignQuestions(x); + } + + focus_blur(); + $('input[type="text"]:first').focus(); + $('#content').append('<div id="checkButton"></div>'); + showText('checkButton','checkAns3',14,29,'<div id="chckAns3" class="checkAns"></div>'); + showText('checkButton','showAns3',18,0,'<div id="showAns3" class="showAns"></div>'); + showText('checkButton','moreQuesBtn',18,38,'<div id="moreQues"></div>'); + $('#chckAns3').hide();$('#showAns3').hide();$('#moreQues').hide(); + check_show(); + if(currentExercise === 0){ + $('#exerciseContainer').append('<div id="giveOptions"></div>'); + for(var y = 0;y<5;y++){ + $('#giveOptions').append('<div id="opt'+y+'" class="options"></div>'); + var section = (5*currentSection)+y; + $('#opt'+y).text(answers[section]); + } + } + if(currentExercise != 0){ + $('#timerBar').show(); + startTimer(); + } + } + function startExercise(){ + flag_section = 1; + $('#score_box').show(); + scoreboard = $('#score_box').scoreboard({'layout':'horizontal', + 'winningScore': TOTAL_QUES}); + currentSection = 0; + numCounter = 0; + + nextSection(); + } + var nextLesson = function(){ + + clearTimeout(t); + flag_section = 0; + $('#score_box').hide(); + $('#linkShowAns').hide(); + $('#linkCheckAns').hide(); + $('#timerBar').hide(); + $('#content').html('').removeClass('backOpaque'); + $('#gameOver').hide() + clickCounter = 0; + + if(currentLesson === 2){ + showPicture('lesson3ImgDef0','lesson3ImgDef0',0,8); + showPicture('lesson3ImgDef1','lesson3ImgDef1',7,25); + currentTopButton = 18; + currentLeftButton = 35; + showNextButton(); + showText('content','exerciseClickTitle',17,16,'Exercise --- अभ्यास ','FF0000'); + showText('exerciseClickTitle','line',-.5,-3.5,'_____________________'); + for( i = 0;i<3;i++){ + assignLevelButtons(i); + } + } + if(currentLesson === 1){ + showPicture('lesson2ImgDef0','lesson2ImgDef0',0,1); + currentTopButton = 5; + currentLeftButton = 80; + showNextButton(); + } + else if(currentLesson === 0){ + $('#linkNextLesson').hide(); + maxHtFrogTop = .1; + baseFrogTop = 2.5; + imgFrogCounter = 0; + frogJmpCount = 0; + + maxHtRabbitTop = 9; + baseRabbitTop = 10; + imgRabbitCounter = 0; + rabbitJmpCount = 0; + + flag_frog = 0; + timeLineInsCount = 0; + showPicture('imgFrogTimeline','timeLine',5,1); + showPicture('imgFrogAnim','frog0',2.5,2.7); + + showPicture('imgRabbitTimeline','timeLine',14.5,1); + showPicture('imgRabbitAnim','rabbit0',10,2.7); + + t=setTimeout(function(){delayObject();},1000); //gives a complete animation + } + }; + + function game(){ + currentLesson = 0; + $('#linkNextLesson').show(); + $('#linkPrevLesson').hide(); + nextLesson(); + } + + //function to display the text and fraction symbols inside a div + function showText(parentDiv,divName,topPos,leftPos,numText,color){ + var textCss = { + 'position':'absolute', + 'top':topPos+'em', + 'left':leftPos+'em', + 'font':'2em arial,verdana,geneva,helvetica', + 'color':'#'+color, + 'z-index':'5', + 'white-space':'pre' + }; + $('#'+parentDiv).append('<div id="'+divName+'"></div>'); + $('#'+divName).css(textCss).html(numText); + } + function makeAnimContainer(divName,topPos,leftPos,width,height,bgColor){ + var fracAnimContainer = { + 'position':'absolute', + 'top': topPos+'em', + 'left': leftPos+'em', + 'width': width+'em', + 'height': height+'em', + 'background-color': '#'+bgColor + }; + $('#content').append('<div id="'+divName+'"></div>'); + $('#'+divName).css(fracAnimContainer); + } + + + //function that keeps the photos at a given place absolute position + function showPicture(divName,imgName,topPos,leftPos){ + var imgCss = { + 'position':'absolute', + 'top':topPos+'em', + 'left':leftPos+'em', + }; + $('#content').append('<div id="'+divName+'"></div>'); + $('#'+divName).css(imgCss).html('<img src="assets/image/'+imgName+'.png" />'); + } + + function showNextButton(){ + $('#content').append('<div class="nextBtn"></div>'); + $('.nextBtn').show(); + var nextbtncss = { + 'top': currentTopButton+'em', + 'left': currentLeftButton+'em' + }; + + $('.nextBtn').css(nextbtncss);//html('<img src="assets/image/nextBtn.png"/>'); + $('.nextBtn').click(function(){ + manageClicks(); + }); + + } + function hideNextButton(){ + $('.nextBtn').hide(); + } + + + function showLCMmethod(){ + if(lcmMethCounter === 0){ + showPicture('lesson2Sign2','lesson2ImgSign',34.1,15); + showText('lesson2Sign2','lesson2Text2',-.1,-.6,'2 2,4'); + }else if(lcmMethCounter === 1){ + showText('lesson2Sign2','lesson2Text3',1,.8,'1,2'); + }else if(lcmMethCounter === 2){ + showPicture('lesson2ImgDef7','lesson2ImgDef7',32,25); + }else if(lcmMethCounter === 3){ + showPicture('lesson2ImgDef8','lesson2ImgDef8',34.5,25); + }else if(lcmMethCounter === 4){ + showPicture('lesson2ImgDef9','lesson2ImgDef9',39,20); + } + lcmMethCounter++; + t=setTimeout(function(){delayObject(2);},1000); //text lcm + + } + function animateFrog(){ + + baseFrogLeft = 2.7 + frogJmpCount*9; + showPicture('imgFrogAnim','frog1',baseFrogTop-2,baseFrogLeft); + baseFrogLeft = 6 + frogJmpCount*9; + imgAnimateFrog('imgFrogAnim',maxHtFrogTop,baseFrogLeft,1000); + + } + function animateRabbit(){ + baseRabbitLeft = 4 + rabbitJmpCount*14; + showPicture('imgRabbitAnim','rabbit1',baseRabbitTop+1,baseRabbitLeft); + baseRabbitLeft = 10 + rabbitJmpCount*14; + imgAnimateRabbit('imgRabbitAnim',maxHtRabbitTop,baseRabbitLeft,1000); + } + function imgAnimateFrog(divName,topPos,leftPos,duration){ + $('#'+divName).animate( + {top:topPos+'em',left:leftPos+'em'},duration, + function(ev){ + if(imgFrogCounter === 0){ + baseFrogLeft = 11.4 + frogJmpCount * 9; + imgFrogCounter++; + imgAnimateFrog('imgFrogAnim',baseFrogTop-2,baseFrogLeft,1000); + + }else if(imgFrogCounter === 1){ + showPicture('imgFrogAnim','frog0',baseFrogTop,baseFrogLeft); + showPicture('frogRing'+frogJmpCount,'timeRing',baseFrogTop+1.5,baseFrogLeft+1.2); + frogJmpCount++; + imgFrogCounter = 0; + if(frogJmpCount != 10){ + if(frogJmpCount%3 != 0){ + flag_frog = 0; + t=setTimeout(function(){delayObject(0);},1000); //frog + } + else{ + flag_frog = 1; + } + if(flag_frog === 1){ + flag_frog = 0; + timeLineLeft = 31.5 + timeLineInsCount*27; + showPicture('imgTimeLineIntersect'+timeLineInsCount,'timeLineIntersect',0,timeLineLeft); + if(frogJmpCount != 9){ + t=setTimeout(function(){delayObject(0);},2000); //frog + t=setTimeout(function(){delayObject(1);},2000); //rabbit + } + else{ + //start the lcm defintion process + currentTopButton = 21; + currentLeftButton = 80; + showNextButton(); + showPicture('imgLesson1ImgDef0','lesson1ImgDef0',21,18); + } + timeLineInsCount++; + } + } + + } + }); + } + + function imgAnimateRabbit(divName,topPos,leftPos,duration){ + $('#'+divName).animate( + {top:topPos+'em',left:leftPos+'em'},duration, + function(ev){ + if(imgRabbitCounter === 0){ + baseRabbitLeft = 15.5 + rabbitJmpCount * 13.5; + imgRabbitCounter++; + imgAnimateRabbit('imgRabbitAnim',baseRabbitTop,baseRabbitLeft,1000); + }else if(imgRabbitCounter === 1){ + showPicture('imgRabbitAnim','rabbit0',baseRabbitTop,baseRabbitLeft); + showPicture('imgRabbitAnim'+rabbitJmpCount,'timeRing',baseRabbitTop+3.5,baseRabbitLeft+1.5); + rabbitJmpCount++; + imgRabbitCounter = 0; + if(rabbitJmpCount%2 != 0 ){ + t=setTimeout(function(){delayObject(1);},1000); //frog + } + } + + }); + } + + function manageClicks(){ + if(currentLesson === 2){ + if(clickCounter === 0){ + showPicture('lesson3ImgDef2','lesson3ImgDef2',9,0); + showText('lesson3ImgDef2','lesson3inputText1',5,0,'<input type="text" id="lesson3input1" class="inputBox" />'); + showText('lesson3ImgDef2','symChecked1',5,4,''); + focus_blur(); + $('#lesson3input1').focus(); + showText('lesson3ImgDef2','checkAns1',6.5,-1,'<div id="chckAns1" class="checkAns"></div>'); + showText('lesson3ImgDef2','shownAns1',6.5,4,'<div id="showAns1" class="showAns"></div>'); + check_show(); + hideNextButton(); + }else if(clickCounter === 1){ + showPicture('lesson3ImgDef3','lesson3ImgDef3',9,65); + showText('lesson3ImgDef3','lesson3inputText2',5,0,'<input type="text" id="lesson3input2" class="inputBox" />'); + showText('lesson3ImgDef3','symChecked2',5,4,''); + focus_blur(); + $('#lesson3input2').focus(); + showText('lesson3ImgDef3','checkAns2',6.5,-1,'<div id="chckAns2" class="checkAns"></div>'); + showText('lesson3ImgDef3','shownAns2',6.5,4,'<div id="showAns2" class="showAns"></div>'); + check_show(); + hideNextButton(); + }else if(clickCounter === 2){ + showPicture('lesson3ImgDef4','lesson3ImgDef4',22,28); + } + else if(clickCounter === 3){ + showPicture('lesson3ImgDef5','lesson3ImgDef5',28,15); + hideNextButton(); + } + } + else if(currentLesson === 1){ + if(clickCounter === 0){ + showPicture('lesson2ImgDef1','lesson2ImgDef1',10,1); + }else if(clickCounter === 1){ + showPicture('lesson2ImgDef2','lesson2ImgDef2',13,1); + }else if(clickCounter === 2){ + showPicture('lesson2ImgDef3','lesson2ImgDef3',15.5,1); + }else if(clickCounter === 3){ + showPicture('lesson2ImgDef4','lesson2ImgDef4',25,1); + }else if(clickCounter === 4){ + showPicture('lesson2ImgDef5','lesson2ImgDef5',27,1); + }else if(clickCounter === 5){ + showPicture('lesson2ImgDef6','lesson2ImgDef6',29.5,10); + }else if(clickCounter === 6){ + lcmMethCounter =0; + showPicture('lesson2Sign1','lesson2ImgSign',32,15); + showText('lesson2Sign1','lesson2Text1',-.1,-.6,'2 4,8'); + t=setTimeout(function(){delayObject(2);},1000); //text lcm + hideNextButton(); + } + } + + else if(currentLesson === 0){ + if(clickCounter === 0){ + $('#linkNextLesson').show(); + showPicture('imgLesson1ImgDef1','lesson1ImgDef1',24.5,18); + }else if(clickCounter === 1){ + showPicture('imgLesson1ImgDef2','lesson1ImgDef2',28,18); + }else if(clickCounter === 2){ + showPicture('imgLesson1ImgDef3','lesson1ImgDef3',31.5,18); + }else if(clickCounter === 3){ + showPicture('imgLesson1ImgDef4','lesson1ImgDef4',36,20); + hideNextButton(); + } + } + clickCounter++; + } + + function check_show(){ + $('.checkAns').click(function(){ + var checkId = $(this).attr('id'); + var checkId = parseInt(checkId.substring(7));; + if(checkId === 1){ + if($('#lesson3input1').val() == '7'){ + k.audio.correct.play(); + $('#symChecked1').html('<img src="assets/image/correct.png" />'); + }else{ + k.audio.incorrect.play(); + $('#symChecked1').html('<img src="assets/image/incorrect.png" />'); + } + }else if(checkId === 2){ + if($('#lesson3input2').val() == '1,3,7'){ + k.audio.correct.play(); + $('#symChecked2').html('<img src="assets/image/correct.png" />'); + }else{ + k.audio.incorrect.play(); + $('#symChecked2').html('<img src="assets/image/incorrect.png" />'); + } + }else if(checkId === 3){ + for( i = 0; i<5;i++){ + var section = (5*currentSection)+i; + var answer = $('#ans'+i).val(); + if(answers[section] == answer){ + $('#display'+i).html('<img src="assets/image/correct.png" />'); + scoreboard.scoreboard('inc'); + }else{ + $('#display'+i).html('<img src="assets/image/incorrect.png" />'); + } + } + $('#chckAns3').hide(); + $('#showAns3').show(); + if(currentSection != 2){ + $('#moreQues').show(); + } + stopTimer(); + } + }); + + + $('.showAns').click(function(){ + var showId = $(this).attr('id'); + var showId = parseInt(showId.substring(7)); + if(showId === 1){ + $('#lesson3input1').val(7) + $('#symChecked1').html('<img src="assets/image/correct.png" />'); + showNextButton(); + }else if(showId === 2){ + $('#lesson3input2').val('1,3,7') + $('#symChecked2').html('<img src="assets/image/correct.png" />'); + showNextButton(); + }else if(showId === 3){ + for( i = 0; i<5;i++){ + var section = (5*currentSection)+i; + $('#ans'+i).val(answers[section]); + $('#display'+i).html('<img src="assets/image/correct.png" />'); + } + $('#showAns3').hide(); + } + + }); + + $('#moreQues').click(function(){ + currentSection++; + nextSection(); + $('#moreQues').hide(); + }); + } + + + function focus_blur(){ + $('input[type="text"]') + .focus(function() { + + $(this).addClass("focus"); + + currentInpBox = $(this).attr("id"); + currentInpBox = parseInt(currentInpBox.substring(3)); + + }) + .blur(function() { + var countBox = 0; + $(this).removeClass("focus"); + for(i = 0;i<5;i++){ + if($('#ans'+i).val() != ''){ + countBox++; + } + } + if(countBox === 5){ + //show check button + $('#chckAns3').show(); + } + }) + .keypress(function(event) { + if(event.which === 13){ + //$(this).removeClass("focus"); + if(currentInpBox != 4){ + $('#ans'+currentInpBox).blur(); + } + var currentInpBoxnext = currentInpBox+1; + $('#ans'+currentInpBoxnext).focus(); + } + }); + + } + $('#linkNextLesson').click(function(){ + currentLesson++; + if(currentLesson === 2){ + $('#linkNextLesson').hide(); + $('#linkPrevLesson').show(); + } + else{ + $('#linkNextLesson').show(); + $('#linkPrevLesson').show(); + } + + nextLesson(); + }); + $('#linkPrevLesson').click(function(){ + + if(currentLesson === 2 && flag_section === 1){ + currentLesson = 2; + nextLesson(); + }else{ + currentLesson--; + if(currentLesson === 0){ + $('#linkPrevLesson').hide(); + } + else{ + $('#linkNextLesson').show(); + $('#linkPrevLesson').show(); + } + nextLesson(); + } + + + }); + + $('#linkStart').click(function(){ + game(); + }); + + $('#linkPlayAgain').click(function(){ + //nextLesson(); + nextLesson(); + }); + + + + $('#linkShowAns').hide(); + $('#linkCheckAns').hide(); + $('#linkNextLesson').hide(); + $('#linkPrevLesson').hide(); + $('#linkHelp').click(function(){ + $('#help').slideDown(2000); + }) + .mouseout(function(){ + $('#help').slideUp(2000); + }); + + + + + + }); //end of k.ready +}); //end of document.read + + diff --git a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/js/ui.core.js b/examples/lessons/6_Maths_lowestCommonMultiple/js/ui.core.js index 5493e0a..5493e0a 100755 --- a/examples/lessons/6_Maths_AddingAndMultiplyingVariable/js/ui.core.js +++ b/examples/lessons/6_Maths_lowestCommonMultiple/js/ui.core.js diff --git a/examples/lessons/6_Maths_goShopping/js/ui.scoreboard.js b/examples/lessons/6_Maths_lowestCommonMultiple/js/ui.scoreboard.js index 53a930a..53a930a 100755 --- a/examples/lessons/6_Maths_goShopping/js/ui.scoreboard.js +++ b/examples/lessons/6_Maths_lowestCommonMultiple/js/ui.scoreboard.js diff --git a/examples/lessons/6_Maths_parallelLines/assets/audio/correct.wav b/examples/lessons/6_Maths_multiplyingFractions/assets/audio/correct.wav Binary files differindex a49ba33..a49ba33 100755 --- a/examples/lessons/6_Maths_parallelLines/assets/audio/correct.wav +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/audio/correct.wav diff --git a/examples/lessons/6_Maths_parallelLines/assets/audio/incorrect.wav b/examples/lessons/6_Maths_multiplyingFractions/assets/audio/incorrect.wav Binary files differindex 906c6a3..906c6a3 100755 --- a/examples/lessons/6_Maths_parallelLines/assets/audio/incorrect.wav +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/audio/incorrect.wav diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/afterSimplify.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/afterSimplify.png Binary files differnew file mode 100755 index 0000000..17408ad --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/afterSimplify.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/beforeSimplify.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/beforeSimplify.png Binary files differnew file mode 100755 index 0000000..5299c50 --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/beforeSimplify.png diff --git a/examples/lessons/6_English_syllables/assets/image/bg_footer.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/bg_footer.png Binary files differindex 8982264..8982264 100755 --- a/examples/lessons/6_English_syllables/assets/image/bg_footer.png +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/bg_footer.png diff --git a/examples/lessons/6_English_syllables/assets/image/bg_header.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/bg_header.png Binary files differindex 98213f7..98213f7 100755 --- a/examples/lessons/6_English_syllables/assets/image/bg_header.png +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/bg_header.png diff --git a/examples/lessons/6_English_syllables/assets/image/bg_title_block.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/bg_title_block.png Binary files differindex 2c9dacf..2c9dacf 100755 --- a/examples/lessons/6_English_syllables/assets/image/bg_title_block.png +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/bg_title_block.png diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/btn_back.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/btn_back.png Binary files differindex d9fbf14..d9fbf14 100755 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/btn_back.png +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/btn_back.png diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/btn_back_hover.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/btn_back_hover.png Binary files differindex 0911fcc..0911fcc 100755 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/btn_back_hover.png +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/btn_back_hover.png diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/btn_help.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/btn_help.png Binary files differindex 6753e9c..6753e9c 100755 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/btn_help.png +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/btn_help.png diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/btn_help_hover.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/btn_help_hover.png Binary files differindex d3ccd92..d3ccd92 100755 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/btn_help_hover.png +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/btn_help_hover.png diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/btn_next.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/btn_next.png Binary files differindex 9d70993..9d70993 100755 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/btn_next.png +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/btn_next.png diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/btn_next_hover.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/btn_next_hover.png Binary files differindex 2cd4d37..2cd4d37 100755 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/btn_next_hover.png +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/btn_next_hover.png diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/btn_ole.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/btn_ole.png Binary files differindex 0e775e9..0e775e9 100755 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/btn_ole.png +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/btn_ole.png diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/btn_ole_hover.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/btn_ole_hover.png Binary files differindex c43c5f7..c43c5f7 100755 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/btn_ole_hover.png +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/btn_ole_hover.png diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/btn_play_again.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/btn_play_again.png Binary files differindex 3594d18..3594d18 100755 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/btn_play_again.png +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/btn_play_again.png diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/btn_play_again_hover.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/btn_play_again_hover.png Binary files differindex ebb8f8c..ebb8f8c 100755 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/btn_play_again_hover.png +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/btn_play_again_hover.png diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/btn_play_again_mouse_down.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/btn_play_again_mouse_down.png Binary files differindex 07d6e45..07d6e45 100755 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/btn_play_again_mouse_down.png +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/btn_play_again_mouse_down.png diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/btn_start.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/btn_start.png Binary files differindex 32e5f20..32e5f20 100755 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/btn_start.png +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/btn_start.png diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/btn_start_hover.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/btn_start_hover.png Binary files differindex 811ce78..811ce78 100755 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/btn_start_hover.png +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/btn_start_hover.png diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/btn_start_mouse_down.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/btn_start_mouse_down.png Binary files differindex 5acd43b..5acd43b 100755 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/assets/image/btn_start_mouse_down.png +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/btn_start_mouse_down.png diff --git a/examples/lessons/6_Maths_variables/assets/image/check.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/check.png Binary files differindex bd0afcb..bd0afcb 100755 --- a/examples/lessons/6_Maths_variables/assets/image/check.png +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/check.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/checkAnsBtn.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/checkAnsBtn.png Binary files differnew file mode 100755 index 0000000..b7c80d3 --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/checkAnsBtn.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/checkAnsBtnHover.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/checkAnsBtnHover.png Binary files differnew file mode 100755 index 0000000..a0e6b6d --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/checkAnsBtnHover.png diff --git a/examples/lessons/6_Maths_romanNumerals/assets/image/correct.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/correct.png Binary files differindex 7e15698..7e15698 100755 --- a/examples/lessons/6_Maths_romanNumerals/assets/image/correct.png +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/correct.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/help.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/help.png Binary files differnew file mode 100755 index 0000000..54e73d4 --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/help.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/img1FractionTotal.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/img1FractionTotal.png Binary files differnew file mode 100755 index 0000000..1e475ec --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/img1FractionTotal.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/img2FractionTotal.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/img2FractionTotal.png Binary files differnew file mode 100755 index 0000000..d8f124b --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/img2FractionTotal.png diff --git a/examples/lessons/6_Maths_romanNumerals/assets/image/incorrect.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/incorrect.png Binary files differindex e60c32d..e60c32d 100755 --- a/examples/lessons/6_Maths_romanNumerals/assets/image/incorrect.png +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/incorrect.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/leso.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/leso.png Binary files differnew file mode 100755 index 0000000..5a095ce --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/leso.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson1ImgDef1.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson1ImgDef1.png Binary files differnew file mode 100755 index 0000000..b9c002d --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson1ImgDef1.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson1ImgDef2.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson1ImgDef2.png Binary files differnew file mode 100755 index 0000000..ff4000d --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson1ImgDef2.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson1ImgDown.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson1ImgDown.png Binary files differnew file mode 100755 index 0000000..fd2935d --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson1ImgDown.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson1ImgFractions.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson1ImgFractions.png Binary files differnew file mode 100755 index 0000000..dab5d3d --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson1ImgFractions.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson1ImgPart1.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson1ImgPart1.png Binary files differnew file mode 100755 index 0000000..2bab07f --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson1ImgPart1.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson1ImgPart2.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson1ImgPart2.png Binary files differnew file mode 100755 index 0000000..9e31413 --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson1ImgPart2.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson1frac1.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson1frac1.png Binary files differnew file mode 100755 index 0000000..ddf44e7 --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson1frac1.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson2ImgDef1.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson2ImgDef1.png Binary files differnew file mode 100755 index 0000000..0a4c488 --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson2ImgDef1.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson2ImgDef2.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson2ImgDef2.png Binary files differnew file mode 100755 index 0000000..b503616 --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson2ImgDef2.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson2ImgDef3.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson2ImgDef3.png Binary files differnew file mode 100755 index 0000000..062c454 --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson2ImgDef3.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson2ImgDef4.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson2ImgDef4.png Binary files differnew file mode 100755 index 0000000..4a7bbc2 --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson2ImgDef4.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson2ImgFractions.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson2ImgFractions.png Binary files differnew file mode 100755 index 0000000..5b16e52 --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson2ImgFractions.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson2ImgPart1.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson2ImgPart1.png Binary files differnew file mode 100755 index 0000000..c61414a --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson2ImgPart1.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson2ImgPart2.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson2ImgPart2.png Binary files differnew file mode 100755 index 0000000..b8848d3 --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson2ImgPart2.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson2frac1.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson2frac1.png Binary files differnew file mode 100755 index 0000000..1a812ce --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson2frac1.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson2frac2.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson2frac2.png Binary files differnew file mode 100755 index 0000000..fe9d37f --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson2frac2.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson2frac3.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson2frac3.png Binary files differnew file mode 100755 index 0000000..e4f1480 --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson2frac3.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson3Img1.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson3Img1.png Binary files differnew file mode 100755 index 0000000..ffba023 --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson3Img1.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson3Img2.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson3Img2.png Binary files differnew file mode 100755 index 0000000..9ef4488 --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson3Img2.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson3Img3.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson3Img3.png Binary files differnew file mode 100755 index 0000000..193ff4f --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson3Img3.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson3ImgPart1.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson3ImgPart1.png Binary files differnew file mode 100755 index 0000000..31233ef --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson3ImgPart1.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson3ImgPart2.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson3ImgPart2.png Binary files differnew file mode 100755 index 0000000..d5f46ab --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson3ImgPart2.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson4Img1.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson4Img1.png Binary files differnew file mode 100755 index 0000000..64a3215 --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson4Img1.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson4Img2.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson4Img2.png Binary files differnew file mode 100755 index 0000000..5b2a042 --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson4Img2.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson4Img3.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson4Img3.png Binary files differnew file mode 100755 index 0000000..0292c9b --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson4Img3.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson4ImgDef1.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson4ImgDef1.png Binary files differnew file mode 100755 index 0000000..8468820 --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson4ImgDef1.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson4ImgDef2.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson4ImgDef2.png Binary files differnew file mode 100755 index 0000000..4712a40 --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson4ImgDef2.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson4ImgDef3.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson4ImgDef3.png Binary files differnew file mode 100755 index 0000000..098c531 --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson4ImgDef3.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson4ImgDef4.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson4ImgDef4.png Binary files differnew file mode 100755 index 0000000..a4d8015 --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson4ImgDef4.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson6Img1.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson6Img1.png Binary files differnew file mode 100755 index 0000000..2cebb8c --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson6Img1.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson6ImgDef1.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson6ImgDef1.png Binary files differnew file mode 100755 index 0000000..0e8bd43 --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson6ImgDef1.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson6ImgDef2.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson6ImgDef2.png Binary files differnew file mode 100755 index 0000000..3e9c971 --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson6ImgDef2.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson6ImgDef3.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson6ImgDef3.png Binary files differnew file mode 100755 index 0000000..2fe8a94 --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson6ImgDef3.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson6ImgDef4.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson6ImgDef4.png Binary files differnew file mode 100755 index 0000000..d3c14aa --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson6ImgDef4.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson6ImgDef5.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson6ImgDef5.png Binary files differnew file mode 100755 index 0000000..cf2deb1 --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/lesson6ImgDef5.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/nextBtn.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/nextBtn.png Binary files differnew file mode 100755 index 0000000..081ef58 --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/nextBtn.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/nextBtnHover.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/nextBtnHover.png Binary files differnew file mode 100755 index 0000000..498ce32 --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/nextBtnHover.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/showAnsBtn.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/showAnsBtn.png Binary files differnew file mode 100755 index 0000000..7f3d720 --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/showAnsBtn.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/assets/image/showAnsBtnHover.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/showAnsBtnHover.png Binary files differnew file mode 100755 index 0000000..3d6907c --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/showAnsBtnHover.png diff --git a/examples/lessons/6_English_syllables/assets/image/title_block_lt.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/title_block_lt.png Binary files differindex 4696182..4696182 100755 --- a/examples/lessons/6_English_syllables/assets/image/title_block_lt.png +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/title_block_lt.png diff --git a/examples/lessons/6_English_syllables/assets/image/title_block_rt.png b/examples/lessons/6_Maths_multiplyingFractions/assets/image/title_block_rt.png Binary files differindex 37cc44a..37cc44a 100755 --- a/examples/lessons/6_English_syllables/assets/image/title_block_rt.png +++ b/examples/lessons/6_Maths_multiplyingFractions/assets/image/title_block_rt.png diff --git a/examples/lessons/6_Maths_multiplyingFractions/css/lesson.css b/examples/lessons/6_Maths_multiplyingFractions/css/lesson.css new file mode 100755 index 0000000..1ed5002 --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/css/lesson.css @@ -0,0 +1,339 @@ +@CHARSET "UTF-8";
+/****** Page Styles ****/
+
+/* Designed for 1200*900 px screen resolution */
+*{
+ margin:0;
+}
+body {
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ font-size: 10pt;
+ margin: 0px;
+ background-color: #FFFFCC;
+}
+#header {
+ background-image: url(../assets/image/bg_header.png);
+ background-repeat: repeat-x;
+ height: 75px;
+ width: 100%;
+ position: absolute;
+ left: 0px;
+ top: 0px;
+}
+#topbtn_left {
+ float: left;
+ height: 60px;
+ width: 60px;
+ padding-top: 6px;
+ padding-left: 15px;
+}
+
+
+ .linkBack{
+ width: 60px; height: 59px;
+ background:url(../assets/image/btn_back.png);
+ }
+ .linkBack:hover{
+ background:url(../assets/image/btn_back_hover.png);
+ }
+
+#lesson_title {
+ float: left;
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ font-size: 16pt;
+ font-weight: bold;
+ color: #FFFFFF;
+ margin-left: 10px;
+ background-image: url(../assets/image/bg_title_block.png);
+}
+#topbtn_right {
+ float: right;
+ height: 60px;
+ width: 60px;
+ padding-top: 6px;
+ padding-right: 15px;
+}
+ #linkHelp{
+ width: 60px; height: 60px;
+ background:url(../assets/image/btn_help.png);
+ }
+ #linkHelp:hover{
+ background:url(../assets/image/btn_help_hover.png);
+ }
+ #linkOle{
+ width: 60px; height: 60px;
+ background:url(../assets/image/btn_ole.png);
+ }
+ #linkOle:hover{
+ background:url(../assets/image/btn_ole_hover.png);
+ }
+ .linkNext{
+ width: 60px; height: 60px;
+ background:url(../assets/image/btn_next.png);
+ }
+ .linkNext:hover{
+ background:url(../assets/image/btn_next_hover.png);
+ }
+#footer {
+ position:relative;
+ background-image: url(../assets/image/bg_footer.png);
+ background-repeat: repeat-x;
+ height: 75px;
+ width: 100%;
+ left: 0px;
+ bottom: 0px;
+}
+#score_box {
+ float: left;
+ padding-left: 5px;
+ padding-top: 0.7em;
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ color: #FFFF00;
+ font-size: 16pt;
+ font-weight: bold;
+}
+#botbtn_right {
+ float: right;
+ height: 55px;
+ padding-right: 5px;
+ padding-top: 10px;
+}
+
+ #linkStart{
+ width: 251px; height: 55px;
+ background:url(../assets/image/btn_start.png);
+ }
+ #linkStart:hover{
+ background:url(../assets/image/btn_start_hover.png);
+ }
+ #linkStart:active{
+ background:url(../assets/image/btn_start_mouse_down.png);
+ }
+ #linkPlayAgain{
+ width: 251px; height: 55px;
+ background:url(../assets/image/btn_play_again.png);
+ }
+ #linkPlayAgain:hover{
+ background:url(../assets/image/btn_play_again_hover.png);
+ }
+ #linkPlayAgain:active{
+ background:url(../assets/image/btn_play_again_mouse_down.png);
+ }
+
+
+#timerBar {
+ position: absolute;
+ left: 30%;
+ bottom: 25%;
+ width: 140px;
+ height:35px;
+ padding-left: 10px;
+ padding-top: 0px;
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ color: #FFFF00;
+ font-size: 16pt;
+ font-weight: bold;
+ }
+
+ .timerBoxes{ /* Show the timer running after the game has began.... */
+ float:right;
+ width: 80px;
+ height: 35px;
+ border: 2px dotted green;
+ padding-left: 0.5em;
+ color: blue;
+ text-align:center;
+ font : bold 25px Arial Black, Times New Roman;
+ background: #ACC;
+ }
+
+#linkNextLesson{
+ position:absolute;
+ bottom: 75px;
+ right: 10px;
+}
+#linkPrevLesson{
+ display:none;
+ position:absolute;
+ bottom: 75px;
+ left: 10px;
+}
+
+/**** End of the page style ****/
+
+/**** Game Styles ****/
+
+a{
+ color:#FFFFCC;
+}
+img{
+ border:none;
+}
+#currentTitle{
+ width: 150px;
+ height: 80px;
+ font:25px/30px "Courier New", Courier, monospace;
+ font-weight: bold;
+ color: red;
+}
+#content{
+ position:relative;
+ margin: 0 auto;
+ margin-top: 80px;
+ width: 1198px;
+ height: 555px;
+}
+.nextBtn{
+ position:absolute;
+ width: 145px;
+ height: 55px;
+ cursor: pointer;
+ background:url(../assets/image/nextBtn.png);
+}
+.nextBtn:hover{
+ background:url(../assets/image/nextBtnHover.png);
+ }
+
+
+
+
+#linkShowAns{
+ margin: .2em 6em 0 2em;
+ width: 145px;
+ height: 55px;
+ cursor: pointer;
+ background:url(../assets/image/showAnsBtn.png);
+}
+#linkShowAns:hover{
+ background:url(../assets/image/showAnsBtnHover.png);
+}
+#linkCheckAns{
+ margin: .2em 1em;
+ width: 145px;
+ height: 55px;
+ cursor: pointer;
+ background:url(../assets/image/checkAnsBtn.png);
+}
+#linkCheckAns:hover{
+ background:url(../assets/image/checkAnsBtnHover.png);
+ }
+
+ /** lesson 1 **/
+ #imgWhole{
+ position:relative; margin-top: 2em; float:left;
+ }
+ .lessonImgFrac{
+ position:relative; float:left; margin-left: -15em; margin-top: 2em;
+ }
+ #lesson1ImgFractionRight{
+ float:right; margin-top: 2em; margin-right: 20em; }
+ #lesson1frac1{
+ position:absolute; bottom: -3em; right: -4em;
+ }
+
+ /*lesson 2*/
+ #lesson2Div1{
+ float:left;
+ margin-top: 4em; margin-left: 11em;
+ }
+ #lesson2frac1{
+ position:absolute; bottom: -3em; right: 2em;
+ }
+ #lesson2ImgFractionRight{
+ float:right; margin-top: 2em; margin-right: 25em; }
+
+ /* Lesson 3 */
+ #imgRoti1{
+ position:absolute;
+ top: 10em;;
+ left: 3em;
+ }
+ #imgRoti2{
+ position:absolute;
+ top: 9.6em;;
+ left: 30em;
+ }
+ #imgRoti3{
+ position:absolute;
+ top: 10em;;
+ left: 60em;
+ }
+ /* Lesson 5 */
+ #lessonContainer{
+ position:absolute;
+ top: 4em;
+ left: 4em;
+ width:auto;
+ height:auto;
+ }
+ .quesContainer{
+ position:relative;
+ float:left;
+ padding: 0 2em;
+ width: 35em;
+ height: 6.5em;
+ }
+ input.inputFraction{
+ size:3;
+ font: 25px/30px Verdana, Geneva, Arial, Helvetica, sans-serif;
+ font-weight: bold;
+ height:30px;
+ width: 100px;
+ text-align:center;
+ }
+ .focus {
+ background-color: #FF9900;
+ }
+/*Utilities */
+.float-left{ float:left; }
+.float-right{ float:right; }
+.float-center{ margin:0px 10em;}
+.marginMore{margin: 0px 20em;}
+.clear {clear: both;}
+
+
+
+
+
+
+#help{
+ display:none;
+ position:absolute;
+ right: 60px;
+ top: 75px;;
+ width: 256px;
+ height: 600px;
+ background:url(../assets/image/help.png);
+ z-index:40;
+}
+.backOpaque{
+ background-color: #A4A4A4;
+ opacity: 0.2;
+ }
+
+ #gameOver{
+ opacity: 1;
+ display:none;
+ position:absolute;
+ top:45%;
+ left: 35%;
+ color: blue;
+ text-align:center;
+ font : bold 45px/65px Arial Black, Times New Roman;
+ }
+ #gameOverInfo{
+ margin-top: 35px;
+ text-align:center;
+ font: 20px/25px Helvetica, Geneva, Arial, Verdana, sans-serif;
+ font-weight:bold;
+ color:#FF0000;
+
+ }
+ .specialText{
+ margin-top: 1em;
+ font: 20px/25px Helvetica, Geneva, Arial, Verdana, sans-serif;
+ font-weight:bold;
+ color:#FF9900;
+ border-bottom: 2px dotted #CCC;
+
+ }
diff --git a/examples/lessons/6_Maths_parallelLines/css/ui.scoreboard.css b/examples/lessons/6_Maths_multiplyingFractions/css/ui.scoreboard.css index 11cdbb5..11cdbb5 100755 --- a/examples/lessons/6_Maths_parallelLines/css/ui.scoreboard.css +++ b/examples/lessons/6_Maths_multiplyingFractions/css/ui.scoreboard.css diff --git a/examples/lessons/6_Maths_multiplyingFractions/index.html b/examples/lessons/6_Maths_multiplyingFractions/index.html new file mode 100755 index 0000000..3bee5c3 --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/index.html @@ -0,0 +1,47 @@ +<!DOCTYPE html>
+<html>
+<head>
+ <title>Class 6 Maths Multiplying Fractions</title>
+ <meta name="keywords" content="karma,javascript,html5,sugar,sugarlabs,gsoc,ole,nepal" />
+ <link type="text/css" rel="stylesheet" href="css/ui.scoreboard.css" />
+ <link type="text/css" rel="stylesheet" href="css/lesson.css" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <link type="image/ico" rel="icon" href="../../assets/default/image/favicon.ico" />
+ <script type="text/javascript" src="js/jquery-1.4.js"></script>
+ <script type="text/javascript" src="js/ui.core.js"></script>
+ <script type="text/javascript" src="js/ui.scoreboard.js"></script>
+ <script type="text/javascript" src="js/karma.js"></script>
+ <script type="text/javascript" src="js/lesson.js"></script>
+</head>
+<body>
+ <div id="header">
+ <div id="topbtn_left"><a href="#"><div id="linkBackLesson" class="linkBack"></div></a></div>
+ <div id="lesson_title">
+ <img src="assets/image/title_block_lt.png" width="33" height="75" align="absmiddle" />
+ Multiplying Fractions || <span id="currentTitle"> </span>
+ <img src="assets/image/title_block_rt.png" width="33" height="75" align="absmiddle" />
+ </div>
+ <div id="topbtn_right"><a href="#"><div id="linkHelp"></div></a></div>
+ <div id="topbtn_right"><a href="http://olenepal.org"><div id="linkOle"></div></a></div>
+ </div>
+
+ <div id="content"></div>
+ <div id="help"></div>
+ <div id="gameOver"></div>
+ <form name="delayForm">
+ <input type="hidden" name="delayval" size="5">
+ </form>
+
+ <div id="footer">
+ <a href="#"><div id="linkNextLesson" class="linkNext"></div></a>
+ <a href="#"><div id="linkPrevLesson" class="linkBack"></div></a>
+ <div id="score_box"></div>
+ <div id="botbtn_right"><a href="#"><div id="linkPlayAgain"></div></a></div>
+ <div id="botbtn_right"><a href="#"><div id="linkStart"></div></a></div>
+ <div id="botbtn_right"><a href="#"><div id="linkShowAns"></div></a></div>
+ <div id="botbtn_right"><a href="#"><div id="linkCheckAns"></div></a></div>
+
+
+ </div>
+</body>
+</html>
diff --git a/examples/lessons/6_English_VocabularyAnimals/js/jquery-1.4.js b/examples/lessons/6_Maths_multiplyingFractions/js/jquery-1.4.js index a448490..a448490 100755 --- a/examples/lessons/6_English_VocabularyAnimals/js/jquery-1.4.js +++ b/examples/lessons/6_Maths_multiplyingFractions/js/jquery-1.4.js diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/js/karma.js b/examples/lessons/6_Maths_multiplyingFractions/js/karma.js index 03f027b..03f027b 100755 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/js/karma.js +++ b/examples/lessons/6_Maths_multiplyingFractions/js/karma.js diff --git a/examples/lessons/6_Maths_multiplyingFractions/js/lesson.js b/examples/lessons/6_Maths_multiplyingFractions/js/lesson.js new file mode 100755 index 0000000..82f77df --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/js/lesson.js @@ -0,0 +1,813 @@ +$(document).ready(function(){ + var k = Karma({ + audio: [{'name':'correct','file':'correct.wav'}, + {'name':'incorrect','file':'incorrect.wav'}, + ]}); + + k.ready(function(){ + var i,j,s,t; + var currentLesson; //variable to keep track of the current lesson + var clickCounter; //count the next button clicks for the particular lesson + var cutCounter; + var currentTopButton,currentLeftButton; + var TOTAL_QUES = 10; + var frac1 = []; //an array to store the fractions + var frac2 = []; + var scoreboard; + var answers = [1311,24,437,8, + 54,2,27,1, + 663,42,221,14, + 13,8,13,8, + 114,48,57,24, + 12,48,1,4, + 1519,132, 1519,132, + 280,30,28,3, + 77,4,77,4, + 300,10,30,1 + ]; // 4 answers for a question + var flag_busy; //flag is set set to 1 if it is busy + var currentAns = []; //array storing the currently set answers + var animCount; //to keep track of counting the anim9ations + + var assignQuestion = function(quesId,frac1,frac2,flagWhole1,flagWhole2){ + var fracInc = 0; + var fracCount = 0; + var symCounter = 0; + symInc = 10*quesId+symCounter; + fracInc = 6*quesId+fracCount; + $('#lessonContainer').append('<div id="ques'+quesId+'" class="quesContainer"></div>'); + if(frac1[fracCount]>9){ + showText('ques'+quesId,'frac1'+fracInc,1,.5,frac1[fracCount]); + }else{ + showText('ques'+quesId,'frac1'+fracInc,1,1,frac1[fracCount]); + } + fracCount++;fracInc = 6*quesId+fracCount; + showText('ques'+quesId,'frac1'+fracInc,.3,1.7,frac1[fracCount]);fracCount++;fracInc = 6*quesId+fracCount; + if(flagWhole1 === 0){ + showText('ques'+quesId,'sym'+symInc,.4,1.7,'_');symCounter++;symInc = 10*quesId+symCounter; + } + if(frac1[fracCount]>9){ + showText('ques'+quesId,'frac1'+fracInc,1.6,1.4,frac1[fracCount]); + } + else{ + showText('ques'+quesId,'frac1'+fracInc,1.6,1.7,frac1[fracCount]); + } + fracCount = 0;fracInc = 6*quesId+fracCount; + showText('ques'+quesId,'sym'+symInc,.9,2.7,'x');symCounter++;symInc = 10*quesId+symCounter; + showText('ques'+quesId,'frac2'+fracInc,1,3.5,frac2[fracCount]); fracCount++;fracInc = 6*quesId+fracCount; + showText('ques'+quesId,'frac2'+fracInc,.3,4.2,frac2[fracCount]);fracCount++;fracInc = 6*quesId+fracCount; + if(flagWhole2 === 0){ + showText('ques'+quesId,'sym'+symInc,.4,4.2,'_');symCounter++;symInc = 10*quesId+symCounter; + } + if(frac2[fracCount]>9){ + showText('ques'+quesId,'frac2'+fracInc,1.6,4,frac2[fracCount]); + } + else{ + showText('ques'+quesId,'frac2'+fracInc,1.6,4.2,frac2[fracCount]); + } + showText('ques'+quesId,'sym'+symInc,.9,5.3,'=');symCounter++;symInc = 10*quesId+symCounter; + showText('ques'+quesId,'sym'+symInc,.4,6.6,'________');symCounter++;symInc = 10*quesId+symCounter; + showText('ques'+quesId,'sym'+symInc,.45,6.6,'________');symCounter++;symInc = 10*quesId+symCounter; + showText('ques'+quesId,'inputTxt1'+quesId,.1,6.8,'<input id="inTxt1'+quesId+'" type="text" class="inputFraction" />'); + showText('ques'+quesId,'inputTxt2'+quesId,1.65,6.8,'<input id="inTxt2'+quesId+'" type="text" class="inputFraction" />'); + showText('ques'+quesId,'sym'+symInc,.9,11.5,'=');symCounter++;symInc =10*quesId+symCounter; + showText('ques'+quesId,'sym'+symInc,.4,12.6,'________');symCounter++;symInc = 10*quesId+symCounter; + showText('ques'+quesId,'sym'+symInc,.45,12.6,'________');symCounter++;symInc =10*quesId+symCounter; + showText('ques'+quesId,'inputTxt3'+quesId,.1,12.8,'<input id="inTxt3'+quesId+'" type="text" class="inputFraction" />'); + showText('ques'+quesId,'inputTxt4'+quesId,1.65,12.8,'<input id="inTxt4'+quesId+'" type="text" class="inputFraction" />'); + showText('ques'+quesId,'symChecked1'+quesId,2,11,''); + showText('ques'+quesId,'symChecked2'+quesId,2,17,''); + + foucs_blur(); + + }; + + var nextLesson = function(){ + $('#linkShowAns').hide(); + $('#linkCheckAns').hide(); + $('#content').removeClass('backOpaque'); + $('#gameOver').hide() + clickCounter = 0; + $('#score_box').hide(); + $('#content').html('').append('<div id="lessonContainer"></div>'); + if(currentLesson === 4){ + $('#linkShowAns').show(); + $('#linkCheckAns').show(); + flag_busy = 0; + $('#currentTitle').html('भिन्नहरुको गुणन'); + $('#score_box').show(); + scoreboard = $('#score_box').scoreboard({'layout':'horizontal', + 'winningScore': TOTAL_QUES}); + scoreboard.scoreboard('reset'); + scoreboard.scoreboard('incTotal',10); + + showPicture('divImgSimplify1','beforeSimplify',1,17); + showPicture('divImgSimplify2','afterSimplify',1,29); + showPicture('divImgSimplify3','beforeSimplify',1,55); + showPicture('divImgSimplify4','afterSimplify',1,68); + + frac1[0] = 7; frac1[1] = 1; frac1[2] = 8; + frac2[0] = 7; frac2[1] = 2; frac2[2] = 3; + assignQuestion(0,frac1,frac2,0,0); + + frac1[0] = 6; frac1[1] = ''; frac1[2] = ''; + frac2[0] = ''; frac2[1] = 9; frac2[2] = 2; + assignQuestion(1,frac1,frac2,1,0); + + frac1[0] = 6; frac1[1] = 3; frac1[2] = 6; + frac2[0] = 2; frac2[1] = 3; frac2[2] = 7; + assignQuestion(2,frac1,frac2,0,0); + + frac1[0] = 6; frac1[1] = 1; frac1[2] = 2; + frac2[0] = ''; frac2[1] = 1; frac2[2] = 4; + assignQuestion(3,frac1,frac2,0,0); + + frac1[0] = ''; frac1[1] =6; frac1[2] = 8; + frac2[0] = 3; frac2[1] = 1; frac2[2] = 6; + assignQuestion(4,frac1,frac2,0,0); + + frac1[0] = ''; frac1[1] =4; frac1[2] = 8; + frac2[0] = ''; frac2[1] = 3; frac2[2] = 6; + assignQuestion(5,frac1,frac2,0,0); + + frac1[0] = 4; frac1[1] =1; frac1[2] = 12; + frac2[0] = 2; frac2[1] = 9; frac2[2] =11; + assignQuestion(6,frac1,frac2,0,0); + + frac1[0] = 2; frac1[1] =4; frac1[2] = 5; + frac2[0] = 3; frac2[1] = 2; frac2[2] =6; + assignQuestion(7,frac1,frac2,0,0); + + frac1[0] = ''; frac1[1] =11; frac1[2] = 2; + frac2[0] = ''; frac2[1] = 7; frac2[2] =2; + assignQuestion(8,frac1,frac2,0,0); + + frac1[0] = 12; frac1[1] =1; frac1[2] = 2; + frac2[0] = 2; frac2[1] = 2; frac2[2] =5; + assignQuestion(9,frac1,frac2,0,0); + } + + else if(currentLesson === 0){ + currentTopButton = 10; + currentLeftButton = 80; + $('#currentTitle').html('भिन्नलाई पूर्ण संख्याले गुणन गर्दा'); + $('#content').append('<div id="imgWhole"></div>'); + $('#imgWhole').append('<img class="float-left" src="assets/image/lesson1ImgPart1.png" />'); + $('#imgWhole').append('<img id="lessonImgAnimate" src="assets/image/lesson1ImgPart2.png" />'); + var lessonImgAnimate = { + 'position':'absolute', + 'top':'1.9em', + 'left': '6.2em' + }; + $('#lessonImgAnimate').css(lessonImgAnimate); + $('#content').append('<img class="float-right" src="assets/image/lesson1ImgDef1.png" />'); + imgAnimate('lessonImgAnimate',1.9,10,1000); + } + if(currentLesson === 1){ + currentTopButton = 5; + currentLeftButton = 80; + $('#currentTitle').html('भिन्नलाई पूर्ण संख्याले गुणन गर्दा'); + $('#content').append('<div id="imgWhole"></div>'); + $('#imgWhole').append('<img class="float-left" src="assets/image/lesson2ImgPart1.png" />'); + $('#imgWhole').append('<img id="lessonImgAnimate" src="assets/image/lesson2ImgPart2.png" />'); + var lessonImgAnimate = { + 'position':'absolute', + 'top':'2.3em', + 'left': '7.4em' + }; + $('#lessonImgAnimate').css(lessonImgAnimate); + $('#content').append('<div id="lesson2Div1"></div>'); + $('#lesson2Div1').append('<img class="float-left" src="assets/image/lesson2ImgDef1.png" />'); + imgAnimate('lessonImgAnimate',2.3,11,1000); + } + if(currentLesson === 2){ + currentTopButton = 35; + currentLeftButton = 38; + showNextButton(); + $('#currentTitle').html('भिन्नलाई भिन्नले गुणन गर्दा'); + $('#content').append('<div id="imgRoti1"></div>'); + $('#imgRoti1').append('<img class="float-left" src="assets/image/lesson3Img1.png" />'); + $('#imgRoti1').append('<img id="lessonImgAnimate1" src="assets/image/lesson3ImgPart1.png" />'); + var lessonImgAnimate = { + 'position':'absolute', + 'top':'15em', + 'left': '1.2em' + }; + $('#lessonImgAnimate1').css(lessonImgAnimate); + + $('#content').append('<div id="imgRoti2"></div>'); + $('#imgRoti2').append('<img class="float-left" src="assets/image/lesson3Img2.png" />'); + $('#imgRoti2').append('<img id="lessonImgAnimate2" src="assets/image/lesson3ImgPart2.png" />'); + var lessonImgAnimate = { + 'position':'absolute', + 'top':'15.1em', + 'left': '6em' + }; + $('#lessonImgAnimate2').css(lessonImgAnimate); + $('#imgRoti2').hide(); + $('#content').append('<div id="imgRoti3"></div>'); + $('#imgRoti3').append('<img class="float-left" src="assets/image/lesson3Img3.png" />'); + $('#imgRoti3').hide(); + showFractions(); + } + if(currentLesson === 3){ + currentTopButton = 20; + currentLeftButton = 38; + showNextButton(); + $('#currentTitle').html('फरक हर / अंश भएको दुई भिन्न को गुणन '); + showPicture('divImgDef1','lesson4ImgDef1',0,-2); + showPicture('divImg1','lesson4Img1',0,70); + showFractions(); + } + if(currentLesson === 5){ + currentTopButton = 10; + currentLeftButton = 60; + showNextButton(); + $('#currentTitle').html('तिमीले बुझ्नु पर्ने कुरा '); + showPicture('divImgDef1','lesson6ImgDef1',0,-2); + showPicture('divImg1','lesson6Img1',15,70); + showFractions(); + + } + + }; + //function to display the text and fraction symbols inside a div + function showText(parentDiv,divName,topPos,leftPos,numText){ //flatTxt o for text 1 for image + var textCss = { + 'position':'absolute', + 'top':topPos+'em', + 'left':leftPos+'em', + 'font':'2em arial,verdana,geneva,helvetica' + }; + $('#'+parentDiv).append('<div id="'+divName+'"></div>'); + $('#'+divName).css(textCss).html(numText); + } + + function makeAnimContainer(divName,topPos,leftPos,width,height,bgColor){ + var fracAnimContainer = { + 'position':'absolute', + 'top': topPos+'em', + 'left': leftPos+'em', + 'width': width+'em', + 'height': height+'em', + 'background-color': '#'+bgColor + }; + $('#content').append('<div id="'+divName+'"></div>'); + $('#'+divName).css(fracAnimContainer); + } + + + //function that keeps the photos at a given place absolute position + function showPicture(divName,imgName,topPos,leftPos){ + var imgCss = { + 'position':'absolute', + 'top':topPos+'em', + 'left':leftPos+'em', + }; + $('#content').append('<div id="'+divName+'"></div>'); + $('#'+divName).css(imgCss).html('<img src="assets/image/'+imgName+'.png" />'); + } + + function game(){ + currentLesson = 0; + $('#linkNextLesson').show(); + $('#linkPrevLesson').hide(); + + nextLesson(); + } + $('#linkNextLesson').hide(); + $('#linkShowAns').hide(); + $('#linkCheckAns').hide(); + $('#linkPrevLesson').hide(); + $('#linkHelp').mouseover(function(){ + $('#help').slideDown(2000); + }) + .mouseout(function(){ + $('#help').slideUp(2000); + }); + + function delayHideAns(){ + document.delayForm.delayval.value = 1; + clearTimeout(t); + for(var i = 0;i<TOTAL_QUES;i++){ + for(var j=0; j< 4; j++){ + var k = j+1; + $('#inTxt'+k+''+i).val(currentAns[i*4+j]); + } + } + flag_busy = 0; + } + $('#linkShowAns').click(function(){ + //alert($('#inTxt10').val()); + + //first store the current texboxes values + if(flag_busy === 0){ + flag_busy = 1; + for(var i = 0;i<TOTAL_QUES;i++){ + for(var j=0; j< 4; j++){ + var k = j+1; + currentAns[4*i+j] = $('#inTxt'+k+''+i).val(); + } + } + + for(var i = 0;i<TOTAL_QUES;i++){ + for(var j=0; j< 4; j++){ + var k = j+1; + $('#inTxt'+k+''+i).val(answers[i*4+j]); + } + } + t=setTimeout(function(){delayHideAns();},5000); //after 5 seconds goes to the same status as user had put input + } + }); + $('#linkCheckAns').click(function(){ + if(flag_busy === 0){ + for(var i = 0;i<TOTAL_QUES;i++){ + for(var j=0; j< 4; j++){ + var k = j+1; + currentAns[4*i+j] = $('#inTxt'+k+''+i).val(); + } + } + var correctCounter = 0; + scoreboard.scoreboard('reset'); + scoreboard.scoreboard('incTotal',10); + for(var i = 0;i<TOTAL_QUES;i++){ + var checkCount = 0; + if(currentAns[4*i+0] == answers[4*i+0] && currentAns[4*i+1] == answers[4*i+1]){ + $('#symChecked1'+i).html('<img src="assets/image/correct.png" />'); + checkCount++; + } + else{ + $('#symChecked1'+i).html('<img src="assets/image/incorrect.png" />'); + } + if(currentAns[4*i+2] == answers[4*i+2] && currentAns[4*i+3] == answers[4*i+3]){ + $('#symChecked2'+i).html('<img src="assets/image/correct.png" />'); + checkCount++; + } + else{ + $('#symChecked2'+i).html('<img src="assets/image/incorrect.png" />'); + } + if(checkCount == 2){ + scoreboard.scoreboard('inc'); + correctCounter++; + if(correctCounter === 10){ + $('#content').addClass('backOpaque'); + $('#gameOver').show().html('Great Job !!!'); + } + } + } + } + + }); + + + //function to be rearranged later + function showNextButton(){ + $('#content').append('<div class="nextBtn"></div>'); + $('.nextBtn').show(); + var nextbtncss = { + 'top': currentTopButton+'em', + 'left': currentLeftButton+'em' + }; + + $('.nextBtn').css(nextbtncss);//html('<img src="assets/image/nextBtn.png"/>'); + + } + function hideNextButton(){ + $('.nextBtn').hide(); + } + + function showLesson1ImgFraction(){ + $('#content').append('<div id="lesson1ImgFraction" class="lessonImgFrac"></div>'); + $('#lesson1ImgFraction').append('<img src="assets/image/lesson1ImgFractions.png" />'); + $('#content').append('<div id="lesson1ImgFractionRight"></div>'); + $('#lesson1ImgFractionRight').append('<img src="assets/image/img1FractionTotal.png" />'); + $('#lesson1ImgFractionRight').hide(); + assignLessonImages(0,8.8,6.8,3); + assignLessonImages(1,8.5,24.4,2); + assignLessonImages(2,8.7,44,1); + assignLessonImages(3,8.7,44,1); + imgAnimateNoNxtBtn('lessonImg0',8.8,58,2000); + imgAnimateNoNxtBtn('lessonImg1',8.8,65,2000); + imgAnimateNoNxtBtn('lessonImg2',6,65,2000); + imgAnimateNoNxtBtn('lessonImg3',10,65,2000); + } + + function imgAnimateNoNxtBtn(divName,topPos,leftPos,duration){ + $('#'+divName).animate( + {top:topPos+'em',left:leftPos+'em'},duration, + function(ev){ + if(divName == 'lessonImg3'){ + for(i = 0;i<4;i++){ + $('#lessonImg'+i).hide(); + } + $('#lesson1ImgFractionRight').show(); + showNextButton(); + $('.nextBtn').click(function(){ + $('#content').append('<img src="assets/image/lesson1ImgDef2.png" />'); + $('.nextBtn').hide(); + }); + } + + }); + + } + + function assignLessonImages(imgId,topPos,leftPos,zIndex){ + if(imgId === 3){ + $('#lesson1ImgFraction').append('<img id="lessonImg'+imgId+'" src="assets/image/lesson1ImgDown.png" />'); + + } + else{ + $('#lesson1ImgFraction').append('<img id="lessonImg'+imgId+'" src="assets/image/lesson1ImgPart2.png" />'); + } + var lessonImgAnimate = { + 'position':'absolute', + 'top':topPos+'em', + 'left':leftPos+'em', + 'z-index':zIndex + }; + $('#lessonImg'+imgId).css(lessonImgAnimate); + + } + + function delayCutNext(){ + document.delayForm.delayval.value = 1; + if(cutCounter === 0){ + showText('divAnim3','textCutSym1',2.9,7.5,'/'); + } + else if(cutCounter === 1){ + showText('divAnim3','textCutSym2',3.3,8.1,1); + } + else if(cutCounter === 2){ + showText('divAnim3','textCutSym3',1.2,10.2,'/'); + } + else if(cutCounter === 3){ + showText('divAnim3','textCutSym4',.6,10.6,2); + } + else if(cutCounter === 4){ + showText('divAnim3','textCutSym5',2.9,10.2,'/'); + } + else if(cutCounter === 5){ + showText('divAnim3','textCutSym6',3.3,10.6,1); + } + else if(cutCounter === 6){ + showText('divAnim3','textCutSym7',1.2,7.5,'/'); + } + else if(cutCounter === 7){ + showText('divAnim3','textCutSym8',.6,8.1,7); + } + else if(cutCounter === 8){ + showText('divAnim3','textSym19',2,12,'='); + + } + else if(cutCounter === 9){ + showText('divAnim3','textSym20',2,13,14); + } + clearTimeout(t); + cutCounter++; + startCuttingProcess(); + + } + + function startCuttingProcess(){ + t=setTimeout(function(){delayCutNext();},500); + } + + function imgAnimate(divName,topPos,leftPos,duration){ + $('#'+divName).animate( + {top:topPos+'em',left:leftPos+'em'},duration, + function(ev){ //callback function after the animation is complete + //alert('animation complete'); + if(currentLesson === 3){ + if(animCount === 0){ + showText('divAnim1','textSym1',.4,4.8,'x'); + imgAnimate('text3Anim',.5,5.5,1000); + } + else if(animCount === 1){ + showText('divAnim1','textSym2',.4,3.5,'('); + showText('divAnim1','textSym3',.4,6.3,')'); + showText('divAnim1','textSym4',.4,6.8,'+'); + imgAnimate('text2Anim',.5,7.4,1500); + } + else if(animCount === 2){ + showText('divAnim1','textSym5',.6,3.3,'_________'); + imgAnimate('text4Anim',1.7,5.4,1500); + } + else if(animCount === 3){ + showText('divAnim1','text5Anim',1.7,5.4,4); + showText('divAnim1','textSym6',1,8.5,'='); + showText('divAnim1','textSym7',.5,9.7,21); + showText('divAnim1','text6',.55,9.6,'__'); + imgAnimate('text5Anim',1.7,9.8,1500); + + } + else if(animCount === 4){ + showText('divAnim1','text2frac1',.5,9.7,21); + showText('divAnim1','text2frac2',.55,9.6,'__'); + showText('divAnim1','text2frac3',1.7,9.8,4); + + showFractions(); + } + else if(animCount === 5){ + showText('divAnim2','textSym8',.4,4.8,'x'); + imgAnimate('text8Anim',.5,5.5,1000); + } + else if(animCount === 6){ + showText('divAnim2','textSym9',.4,3.5,'('); + showText('divAnim2','textSym10',.4,6.3,')'); + showText('divAnim2','textSym11',.4,6.8,'+'); + imgAnimate('text7Anim',.5,7.7,1500); + } + else if(animCount === 7){ + showText('divAnim2','textSym13',.6,3.3,'_________'); + imgAnimate('text9Anim',1.7,5.4,1500); + } + else if(animCount === 8){ + showText('divAnim2','text10Anim',1.7,5.4,3); + showText('divAnim2','textSym14',1,8.5,'='); + showText('divAnim2','textSym15',.5,9.7,8); + showText('divAnim2','text12',.55,9.6,'__'); + imgAnimate('text10Anim',1.7,9.8,1500); + + } + else if(animCount === 9){ + showText('divAnim2','text4frac1',.5,9.7,8); + showText('divAnim2','text4frac2',.55,9.6,'__'); + showText('divAnim2','text4frac3',1.7,9.8,3); + showFractions(); + } + else if(animCount === 13){ + hideNextButton(); + showText('divAnim3','textSym16',2,2.3,'x'); + imgAnimate('text3frac1',8,-12,1000); + imgAnimate('text3frac2',7.3,-11.25,1000); + imgAnimate('text3frac3',7.55,-11.3,1000); + imgAnimate('text3frac4',8.8,-11.25,1000); + } + else if(animCount === 17){ + showText('divAnim3','textSym17',2,5,'='); + imgAnimate('text2frac1',7.3,20,1000); + imgAnimate('text2frac2',7.55,20,1000); + imgAnimate('text2frac3',8.8,20.3,1000); + } + else if(animCount === 20){ + showText('divAnim3','textSym18',2,8.5,'X'); + imgAnimate('text4frac1',7.3,-5,1000); + imgAnimate('text4frac2',7.55,-5.3,1000); + imgAnimate('text4frac3',8.8,-5,1000); + + } + else if(animCount === 23){ + + cutCounter = 0; + startCuttingProcess(); + } + animCount++; + + } + else{ + showNextButton(); + if(currentLesson === 2){ + if(clickCounter === 0){ + clickCounter++; + $('#imgRoti2').show(); + showFractions(); + } + else if(clickCounter === 1){ + clickCounter++; + $('#imgRoti3').show(); + $('.nextBtn').hide(); + + } + + } + + else if(currentLesson === 1){ + if(clickCounter ===0){ + $('#imgWhole').append('<img id="lesson2frac1" src="assets/image/lesson2frac1.png">'); + $('.nextBtn').click(function(){ + $('#lesson2Div1').append('<img src="assets/image/lesson2frac2.png">'); + clickCounter++; + showFractions(); + }); + } + + } + else if(currentLesson === 0) { + $('#imgWhole').append('<img id="lesson1frac1" src="assets/image/lesson1frac1.png">'); + $('.nextBtn').click(function(){ + showLesson1ImgFraction(); + $('.nextBtn').hide(); + }); + } + } + }); + + } + + function showFractions(){ + showNextButton(); + $('.nextBtn').click(function(){ + if(currentLesson === 3){ + if(clickCounter === 0){ + showPicture('divImg2','lesson4Img2',28,-2); + showPicture('divImgDef2','lesson4ImgDef2',4,-2); + clickCounter++; + showFractions(); + } + else if(clickCounter === 1){ + showPicture('divImgDef3','lesson4ImgDef3',8,-2); + clickCounter++; + showFractions(); + } + else if(clickCounter === 2){ + showPicture('divImg4','lesson4Img3',38,10); + clickCounter++; + showFractions(); + } + else if(clickCounter === 3){ + showPicture('divImgDef4','lesson4ImgDef4',12,15); + clickCounter++; + //hideNextButton(); + } + else if(clickCounter === 4){ //next animation stuffs + //animation stuffs of fraction great work needs to be done + hideNextButton(); + makeAnimContainer('divAnim1',18,4,25,7,'8977FE'); + showText('divAnim1','text1',1,.5,5); + showText('divAnim1','text2',.3,1.25,1); + showText('divAnim1','text3',.55,1.3,'_'); + showText('divAnim1','text4',1.8,1.25,4); + showText('divAnim1','text5',1,2.35,'='); + + showText('divAnim1','text1Anim',1,.5,5); + showText('divAnim1','text2Anim',.3,1.25,1); + showText('divAnim1','text3Anim',1.8,1.25,4); + showText('divAnim1','text4Anim',1.8,1.25,4); + // for animating the fractin part + showText('divAnim1','text1frac1',1,.5,5); + showText('divAnim1','text1frac2',.3,1.25,1); + showText('divAnim1','text1frac3',.55,1.3,'_'); + showText('divAnim1','text1frac4',1.8,1.25,4); + + animCount = 0; + imgAnimate('text1Anim',.5,4,1000); + clickCounter++; + + + } + else if(clickCounter === 5){ //next animation stuffs + hideNextButton(); + makeAnimContainer('divAnim2',18,60,25,7,'8977FE'); + + + showText('divAnim2','text7',1,.5,2); + showText('divAnim2','text8',.3,1.25,2); + showText('divAnim2','text9',.55,1.3,'_'); + showText('divAnim2','text10',1.8,1.25,3); + showText('divAnim2','text11',1,2.35,'='); + + showText('divAnim2','text6Anim',1,.5,2); + showText('divAnim2','text7Anim',.3,1.25,2); + showText('divAnim2','text8Anim',1.8,1.25,3); + showText('divAnim2','text9Anim',1.8,1.25,3); + imgAnimate('text6Anim',.5,4,1000); + + showText('divAnim2','text3frac1',1,.5,2); + showText('divAnim2','text3frac2',.3,1.25,2); + showText('divAnim2','text3frac3',.55,1.3,'_'); + showText('divAnim2','text3frac4',1.8,1.25,3); + clickCounter++; + } + else if(clickCounter === 6){ + makeAnimContainer('divAnim3',30,30,30,8); + imgAnimate('text1frac1',8,13.5,1000); + imgAnimate('text1frac2',7.3,14.25,1000); + imgAnimate('text1frac3',7.55,14.3,1000); + imgAnimate('text1frac4',8.8,14.25,1000); + + } + + } + + + else if(currentLesson === 2){ + + if(clickCounter === 0){ + imgAnimate('lessonImgAnimate1',15,32.8,1000); + } + else if(clickCounter === 1){ + imgAnimate('lessonImgAnimate2',15.3,40,1000); + } + + + } + else if(currentLesson === 1){ + + if(clickCounter ===1){ + $('#lesson2Div1').append('<img src="assets/image/lesson2frac3.png">'); + clickCounter++; + showFractions(); + + } + else if(clickCounter ===2){ + $('#content').append('<img class="float-center" src="assets/image/lesson2ImgDef2.png">'); + clickCounter++; + showFractions(); + } + else if(clickCounter ===3){ + $('#content').append('<div id="lesson2ImgFraction" class="lessonImgFrac"></div>'); + $('#lesson2ImgFraction').append('<img src="assets/image/lesson2ImgFractions.png" />'); + clickCounter++; + showFractions(); + } + else if(clickCounter ===4){ + $('#content').append('<div id="lesson2ImgFractionRight"></div>'); + $('#lesson2ImgFractionRight').append('<img src="assets/image/img2FractionTotal.png" />'); + clickCounter++; + showFractions(); + } + else if(clickCounter ===5){ + $('#content').append('<img class="float-left" src="assets/image/lesson2ImgDef3.png" />'); + clickCounter++; + showFractions(); + } + else if(clickCounter ===6){ + $('#content').append('<img class="float-right" src="assets/image/lesson2ImgDef4.png" />'); + clickCounter++; + $('.nextBtn').hide(); + } + + } + else if(currentLesson === 5){ + if(clickCounter === 0){ + showPicture('divImgDef2','lesson6ImgDef2',11,-2); + } + else if(clickCounter === 1){ + showPicture('divImgDef3','lesson6ImgDef3',20,-2); + } + else if(clickCounter === 2){ + showPicture('divImgDef4','lesson6ImgDef4',27,-2); + } + else if(clickCounter === 3){ + showPicture('divImgDef5','lesson6ImgDef5',33,-2); + hideNextButton(); + } + clickCounter++; + } + }); + } + + + function foucs_blur(){ + $('input[type="text"]') + .focus(function() { + $(this).addClass("focus"); + }) + .blur(function() { + $(this).removeClass("focus"); + }) + } + + $('#linkNextLesson').click(function(){ + currentLesson++; + if(currentLesson === 5){ + $('#linkNextLesson').hide(); + $('#linkPrevLesson').show(); + } + else{ + $('#linkNextLesson').show(); + $('#linkPrevLesson').show(); + } + + nextLesson(); + }); + $('#linkPrevLesson').click(function(){ + currentLesson--; + if(currentLesson === 0){ + $('#linkPrevLesson').hide(); + } + else{ + $('#linkNextLesson').show(); + $('#linkPrevLesson').show(); + } + + nextLesson(); + }); + + + $('#linkStart').click(function(){ + game(); + }); + + $('#linkPlayAgain').click(function(){ + nextLesson(); + }); + + + + + }); //end of k.ready +}); //end of document.read + + diff --git a/examples/lessons/6_Maths_multiplyingFractions/js/lesson.js~ b/examples/lessons/6_Maths_multiplyingFractions/js/lesson.js~ new file mode 100755 index 0000000..87b9d9b --- /dev/null +++ b/examples/lessons/6_Maths_multiplyingFractions/js/lesson.js~ @@ -0,0 +1,813 @@ +$(document).ready(function(){ + var k = Karma({ + audio: [{'name':'correct','file':'correct.wav'}, + {'name':'incorrect','file':'incorrect.wav'}, + ]}); + + k.ready(function(){ + var i,j,s,t; + var currentLesson; //variable to keep track of the current lesson + var clickCounter; //count the next button clicks for the particular lesson + var cutCounter; + var currentTopButton,currentLeftButton; + var TOTAL_QUES = 10; + var frac1 = []; //an array to store the fractions + var frac2 = []; + var scoreboard; + var answers = [1311,24,437,8, + 54,2,27,1, + 663,42,221,14, + 13,8,13,8, + 114,48,57,24, + 12,48,1,4, + 1519,132, 1519,132, + 280,30,28,3, + 77,4,77,4, + 300,10,30,1 + ]; // 4 answers for a question + var flag_busy; //flag is set set to 1 if it is busy + var currentAns = []; //array storing the currently set answers + var animCount; //to keep track of counting the anim9ations + + var assignQuestion = function(quesId,frac1,frac2,flagWhole1,flagWhole2){ + var fracInc = 0; + var fracCount = 0; + var symCounter = 0; + symInc = 10*quesId+symCounter; + fracInc = 6*quesId+fracCount; + $('#lessonContainer').append('<div id="ques'+quesId+'" class="quesContainer"></div>'); + if(frac1[fracCount]>9){ + showText('ques'+quesId,'frac1'+fracInc,1,.5,frac1[fracCount]); + }else{ + showText('ques'+quesId,'frac1'+fracInc,1,1,frac1[fracCount]); + } + fracCount++;fracInc = 6*quesId+fracCount; + showText('ques'+quesId,'frac1'+fracInc,.3,1.7,frac1[fracCount]);fracCount++;fracInc = 6*quesId+fracCount; + if(flagWhole1 === 0){ + showText('ques'+quesId,'sym'+symInc,.4,1.7,'_');symCounter++;symInc = 10*quesId+symCounter; + } + if(frac1[fracCount]>9){ + showText('ques'+quesId,'frac1'+fracInc,1.6,1.4,frac1[fracCount]); + } + else{ + showText('ques'+quesId,'frac1'+fracInc,1.6,1.7,frac1[fracCount]); + } + fracCount = 0;fracInc = 6*quesId+fracCount; + showText('ques'+quesId,'sym'+symInc,.9,2.7,'x');symCounter++;symInc = 10*quesId+symCounter; + showText('ques'+quesId,'frac2'+fracInc,1,3.5,frac2[fracCount]); fracCount++;fracInc = 6*quesId+fracCount; + showText('ques'+quesId,'frac2'+fracInc,.3,4.2,frac2[fracCount]);fracCount++;fracInc = 6*quesId+fracCount; + if(flagWhole2 === 0){ + showText('ques'+quesId,'sym'+symInc,.4,4.2,'_');symCounter++;symInc = 10*quesId+symCounter; + } + if(frac2[fracCount]>9){ + showText('ques'+quesId,'frac2'+fracInc,1.6,4,frac2[fracCount]); + } + else{ + showText('ques'+quesId,'frac2'+fracInc,1.6,4.2,frac2[fracCount]); + } + showText('ques'+quesId,'sym'+symInc,.9,5.3,'=');symCounter++;symInc = 10*quesId+symCounter; + showText('ques'+quesId,'sym'+symInc,.4,6.6,'________');symCounter++;symInc = 10*quesId+symCounter; + showText('ques'+quesId,'sym'+symInc,.45,6.6,'________');symCounter++;symInc = 10*quesId+symCounter; + showText('ques'+quesId,'inputTxt1'+quesId,.1,6.8,'<input id="inTxt1'+quesId+'" type="text" class="inputFraction" />'); + showText('ques'+quesId,'inputTxt2'+quesId,1.65,6.8,'<input id="inTxt2'+quesId+'" type="text" class="inputFraction" />'); + showText('ques'+quesId,'sym'+symInc,.9,11.5,'=');symCounter++;symInc =10*quesId+symCounter; + showText('ques'+quesId,'sym'+symInc,.4,12.6,'________');symCounter++;symInc = 10*quesId+symCounter; + showText('ques'+quesId,'sym'+symInc,.45,12.6,'________');symCounter++;symInc =10*quesId+symCounter; + showText('ques'+quesId,'inputTxt3'+quesId,.1,12.8,'<input id="inTxt3'+quesId+'" type="text" class="inputFraction" />'); + showText('ques'+quesId,'inputTxt4'+quesId,1.65,12.8,'<input id="inTxt4'+quesId+'" type="text" class="inputFraction" />'); + showText('ques'+quesId,'symChecked1'+quesId,2,11,''); + showText('ques'+quesId,'symChecked2'+quesId,2,17,''); + + foucs_blur(); + + }; + + var nextLesson = function(){ + $('#linkShowAns').hide(); + $('#linkCheckAns').hide(); + $('#content').removeClass('backOpaque'); + $('#gameOver').hide() + clickCounter = 0; + $('#score_board').hide(); + $('#content').html('').append('<div id="lessonContainer"></div>'); + if(currentLesson === 4){ + $('#linkShowAns').show(); + $('#linkCheckAns').show(); + flag_busy = 0; + $('#currentTitle').html('भिन्नहरुको गुणन'); + $('#score_board').show(); + scoreboard = $('#score_box').scoreboard({'layout':'horizontal', + 'winningScore': TOTAL_QUES}); + scoreboard.scoreboard('reset'); + scoreboard.scoreboard('incTotal',10); + + showPicture('divImgSimplify1','beforeSimplify',1,17); + showPicture('divImgSimplify2','afterSimplify',1,29); + showPicture('divImgSimplify3','beforeSimplify',1,55); + showPicture('divImgSimplify4','afterSimplify',1,68); + + frac1[0] = 7; frac1[1] = 1; frac1[2] = 8; + frac2[0] = 7; frac2[1] = 2; frac2[2] = 3; + assignQuestion(0,frac1,frac2,0,0); + + frac1[0] = 6; frac1[1] = ''; frac1[2] = ''; + frac2[0] = ''; frac2[1] = 9; frac2[2] = 2; + assignQuestion(1,frac1,frac2,1,0); + + frac1[0] = 6; frac1[1] = 3; frac1[2] = 6; + frac2[0] = 2; frac2[1] = 3; frac2[2] = 7; + assignQuestion(2,frac1,frac2,0,0); + + frac1[0] = 6; frac1[1] = 1; frac1[2] = 2; + frac2[0] = ''; frac2[1] = 1; frac2[2] = 4; + assignQuestion(3,frac1,frac2,0,0); + + frac1[0] = ''; frac1[1] =6; frac1[2] = 8; + frac2[0] = 3; frac2[1] = 1; frac2[2] = 6; + assignQuestion(4,frac1,frac2,0,0); + + frac1[0] = ''; frac1[1] =4; frac1[2] = 8; + frac2[0] = ''; frac2[1] = 3; frac2[2] = 6; + assignQuestion(5,frac1,frac2,0,0); + + frac1[0] = 4; frac1[1] =1; frac1[2] = 12; + frac2[0] = 2; frac2[1] = 9; frac2[2] =11; + assignQuestion(6,frac1,frac2,0,0); + + frac1[0] = 2; frac1[1] =4; frac1[2] = 5; + frac2[0] = 3; frac2[1] = 2; frac2[2] =6; + assignQuestion(7,frac1,frac2,0,0); + + frac1[0] = ''; frac1[1] =11; frac1[2] = 2; + frac2[0] = ''; frac2[1] = 7; frac2[2] =2; + assignQuestion(8,frac1,frac2,0,0); + + frac1[0] = 12; frac1[1] =1; frac1[2] = 2; + frac2[0] = 2; frac2[1] = 2; frac2[2] =5; + assignQuestion(9,frac1,frac2,0,0); + } + + else if(currentLesson === 0){ + currentTopButton = 10; + currentLeftButton = 80; + $('#currentTitle').html('भिन्नलाई पूर्ण संख्याले गुणन गर्दा'); + $('#content').append('<div id="imgWhole"></div>'); + $('#imgWhole').append('<img class="float-left" src="assets/image/lesson1ImgPart1.png" />'); + $('#imgWhole').append('<img id="lessonImgAnimate" src="assets/image/lesson1ImgPart2.png" />'); + var lessonImgAnimate = { + 'position':'absolute', + 'top':'1.9em', + 'left': '6.2em' + }; + $('#lessonImgAnimate').css(lessonImgAnimate); + $('#content').append('<img class="float-right" src="assets/image/lesson1ImgDef1.png" />'); + imgAnimate('lessonImgAnimate',1.9,10,1000); + } + if(currentLesson === 1){ + currentTopButton = 5; + currentLeftButton = 80; + $('#currentTitle').html('भिन्नलाई पूर्ण संख्याले गुणन गर्दा'); + $('#content').append('<div id="imgWhole"></div>'); + $('#imgWhole').append('<img class="float-left" src="assets/image/lesson2ImgPart1.png" />'); + $('#imgWhole').append('<img id="lessonImgAnimate" src="assets/image/lesson2ImgPart2.png" />'); + var lessonImgAnimate = { + 'position':'absolute', + 'top':'2.3em', + 'left': '7.4em' + }; + $('#lessonImgAnimate').css(lessonImgAnimate); + $('#content').append('<div id="lesson2Div1"></div>'); + $('#lesson2Div1').append('<img class="float-left" src="assets/image/lesson2ImgDef1.png" />'); + imgAnimate('lessonImgAnimate',2.3,11,1000); + } + if(currentLesson === 2){ + currentTopButton = 35; + currentLeftButton = 38; + showNextButton(); + $('#currentTitle').html('भिन्नलाई भिन्नले गुणन गर्दा'); + $('#content').append('<div id="imgRoti1"></div>'); + $('#imgRoti1').append('<img class="float-left" src="assets/image/lesson3Img1.png" />'); + $('#imgRoti1').append('<img id="lessonImgAnimate1" src="assets/image/lesson3ImgPart1.png" />'); + var lessonImgAnimate = { + 'position':'absolute', + 'top':'15em', + 'left': '1.2em' + }; + $('#lessonImgAnimate1').css(lessonImgAnimate); + + $('#content').append('<div id="imgRoti2"></div>'); + $('#imgRoti2').append('<img class="float-left" src="assets/image/lesson3Img2.png" />'); + $('#imgRoti2').append('<img id="lessonImgAnimate2" src="assets/image/lesson3ImgPart2.png" />'); + var lessonImgAnimate = { + 'position':'absolute', + 'top':'15.1em', + 'left': '6em' + }; + $('#lessonImgAnimate2').css(lessonImgAnimate); + $('#imgRoti2').hide(); + $('#content').append('<div id="imgRoti3"></div>'); + $('#imgRoti3').append('<img class="float-left" src="assets/image/lesson3Img3.png" />'); + $('#imgRoti3').hide(); + showFractions(); + } + if(currentLesson === 3){ + currentTopButton = 20; + currentLeftButton = 38; + showNextButton(); + $('#currentTitle').html('फरक हर / अंश भएको दुई भिन्न को गुणन '); + showPicture('divImgDef1','lesson4ImgDef1',0,-2); + showPicture('divImg1','lesson4Img1',0,70); + showFractions(); + } + if(currentLesson === 5){ + currentTopButton = 10; + currentLeftButton = 60; + showNextButton(); + $('#currentTitle').html('तिमीले बुझ्नु पर्ने कुरा '); + showPicture('divImgDef1','lesson6ImgDef1',0,-2); + showPicture('divImg1','lesson6Img1',15,70); + showFractions(); + + } + + }; + //function to display the text and fraction symbols inside a div + function showText(parentDiv,divName,topPos,leftPos,numText){ //flatTxt o for text 1 for image + var textCss = { + 'position':'absolute', + 'top':topPos+'em', + 'left':leftPos+'em', + 'font':'2em arial,verdana,geneva,helvetica' + }; + $('#'+parentDiv).append('<div id="'+divName+'"></div>'); + $('#'+divName).css(textCss).html(numText); + } + + function makeAnimContainer(divName,topPos,leftPos,width,height,bgColor){ + var fracAnimContainer = { + 'position':'absolute', + 'top': topPos+'em', + 'left': leftPos+'em', + 'width': width+'em', + 'height': height+'em', + 'background-color': '#'+bgColor + }; + $('#content').append('<div id="'+divName+'"></div>'); + $('#'+divName).css(fracAnimContainer); + } + + + //function that keeps the photos at a given place absolute position + function showPicture(divName,imgName,topPos,leftPos){ + var imgCss = { + 'position':'absolute', + 'top':topPos+'em', + 'left':leftPos+'em', + }; + $('#content').append('<div id="'+divName+'"></div>'); + $('#'+divName).css(imgCss).html('<img src="assets/image/'+imgName+'.png" />'); + } + + function game(){ + currentLesson = 0; + $('#linkNextLesson').show(); + $('#linkPrevLesson').hide(); + + nextLesson(); + } + $('#linkNextLesson').hide(); + $('#linkShowAns').hide(); + $('#linkCheckAns').hide(); + $('#linkPrevLesson').hide(); + $('#linkHelp').mouseover(function(){ + $('#help').slideDown(2000); + }) + .mouseout(function(){ + $('#help').slideUp(2000); + }); + + function delayHideAns(){ + document.delayForm.delayval.value = 1; + clearTimeout(t); + for(var i = 0;i<TOTAL_QUES;i++){ + for(var j=0; j< 4; j++){ + var k = j+1; + $('#inTxt'+k+''+i).val(currentAns[i*4+j]); + } + } + flag_busy = 0; + } + $('#linkShowAns').click(function(){ + //alert($('#inTxt10').val()); + + //first store the current texboxes values + if(flag_busy === 0){ + flag_busy = 1; + for(var i = 0;i<TOTAL_QUES;i++){ + for(var j=0; j< 4; j++){ + var k = j+1; + currentAns[4*i+j] = $('#inTxt'+k+''+i).val(); + } + } + + for(var i = 0;i<TOTAL_QUES;i++){ + for(var j=0; j< 4; j++){ + var k = j+1; + $('#inTxt'+k+''+i).val(answers[i*4+j]); + } + } + t=setTimeout(function(){delayHideAns();},5000); //after 5 seconds goes to the same status as user had put input + } + }); + $('#linkCheckAns').click(function(){ + if(flag_busy === 0){ + for(var i = 0;i<TOTAL_QUES;i++){ + for(var j=0; j< 4; j++){ + var k = j+1; + currentAns[4*i+j] = $('#inTxt'+k+''+i).val(); + } + } + var correctCounter = 0; + scoreboard.scoreboard('reset'); + scoreboard.scoreboard('incTotal',10); + for(var i = 0;i<TOTAL_QUES;i++){ + var checkCount = 0; + if(currentAns[4*i+0] == answers[4*i+0] && currentAns[4*i+1] == answers[4*i+1]){ + $('#symChecked1'+i).html('<img src="assets/image/correct.png" />'); + checkCount++; + } + else{ + $('#symChecked1'+i).html('<img src="assets/image/incorrect.png" />'); + } + if(currentAns[4*i+2] == answers[4*i+2] && currentAns[4*i+3] == answers[4*i+3]){ + $('#symChecked2'+i).html('<img src="assets/image/correct.png" />'); + checkCount++; + } + else{ + $('#symChecked2'+i).html('<img src="assets/image/incorrect.png" />'); + } + if(checkCount == 2){ + scoreboard.scoreboard('inc'); + correctCounter++; + if(correctCounter === 10){ + $('#content').addClass('backOpaque'); + $('#gameOver').show().html('Great Job !!!'); + } + } + } + } + + }); + + + //function to be rearranged later + function showNextButton(){ + $('#content').append('<div class="nextBtn"></div>'); + $('.nextBtn').show(); + var nextbtncss = { + 'top': currentTopButton+'em', + 'left': currentLeftButton+'em' + }; + + $('.nextBtn').css(nextbtncss);//html('<img src="assets/image/nextBtn.png"/>'); + + } + function hideNextButton(){ + $('.nextBtn').hide(); + } + + function showLesson1ImgFraction(){ + $('#content').append('<div id="lesson1ImgFraction" class="lessonImgFrac"></div>'); + $('#lesson1ImgFraction').append('<img src="assets/image/lesson1ImgFractions.png" />'); + $('#content').append('<div id="lesson1ImgFractionRight"></div>'); + $('#lesson1ImgFractionRight').append('<img src="assets/image/img1FractionTotal.png" />'); + $('#lesson1ImgFractionRight').hide(); + assignLessonImages(0,8.8,6.8,3); + assignLessonImages(1,8.5,24.4,2); + assignLessonImages(2,8.7,44,1); + assignLessonImages(3,8.7,44,1); + imgAnimateNoNxtBtn('lessonImg0',8.8,58,2000); + imgAnimateNoNxtBtn('lessonImg1',8.8,65,2000); + imgAnimateNoNxtBtn('lessonImg2',6,65,2000); + imgAnimateNoNxtBtn('lessonImg3',10,65,2000); + } + + function imgAnimateNoNxtBtn(divName,topPos,leftPos,duration){ + $('#'+divName).animate( + {top:topPos+'em',left:leftPos+'em'},duration, + function(ev){ + if(divName == 'lessonImg3'){ + for(i = 0;i<4;i++){ + $('#lessonImg'+i).hide(); + } + $('#lesson1ImgFractionRight').show(); + showNextButton(); + $('.nextBtn').click(function(){ + $('#content').append('<img src="assets/image/lesson1ImgDef2.png" />'); + $('.nextBtn').hide(); + }); + } + + }); + + } + + function assignLessonImages(imgId,topPos,leftPos,zIndex){ + if(imgId === 3){ + $('#lesson1ImgFraction').append('<img id="lessonImg'+imgId+'" src="assets/image/lesson1ImgDown.png" />'); + + } + else{ + $('#lesson1ImgFraction').append('<img id="lessonImg'+imgId+'" src="assets/image/lesson1ImgPart2.png" />'); + } + var lessonImgAnimate = { + 'position':'absolute', + 'top':topPos+'em', + 'left':leftPos+'em', + 'z-index':zIndex + }; + $('#lessonImg'+imgId).css(lessonImgAnimate); + + } + + function delayCutNext(){ + document.delayForm.delayval.value = 1; + if(cutCounter === 0){ + showText('divAnim3','textCutSym1',2.9,7.5,'/'); + } + else if(cutCounter === 1){ + showText('divAnim3','textCutSym2',3.3,8.1,1); + } + else if(cutCounter === 2){ + showText('divAnim3','textCutSym3',1.2,10.2,'/'); + } + else if(cutCounter === 3){ + showText('divAnim3','textCutSym4',.6,10.6,2); + } + else if(cutCounter === 4){ + showText('divAnim3','textCutSym5',2.9,10.2,'/'); + } + else if(cutCounter === 5){ + showText('divAnim3','textCutSym6',3.3,10.6,1); + } + else if(cutCounter === 6){ + showText('divAnim3','textCutSym7',1.2,7.5,'/'); + } + else if(cutCounter === 7){ + showText('divAnim3','textCutSym8',.6,8.1,7); + } + else if(cutCounter === 8){ + showText('divAnim3','textSym19',2,12,'='); + + } + else if(cutCounter === 9){ + showText('divAnim3','textSym20',2,13,14); + } + clearTimeout(t); + cutCounter++; + startCuttingProcess(); + + } + + function startCuttingProcess(){ + t=setTimeout(function(){delayCutNext();},500); + } + + function imgAnimate(divName,topPos,leftPos,duration){ + $('#'+divName).animate( + {top:topPos+'em',left:leftPos+'em'},duration, + function(ev){ //callback function after the animation is complete + //alert('animation complete'); + if(currentLesson === 3){ + if(animCount === 0){ + showText('divAnim1','textSym1',.4,4.8,'x'); + imgAnimate('text3Anim',.5,5.5,1000); + } + else if(animCount === 1){ + showText('divAnim1','textSym2',.4,3.5,'('); + showText('divAnim1','textSym3',.4,6.3,')'); + showText('divAnim1','textSym4',.4,6.8,'+'); + imgAnimate('text2Anim',.5,7.4,1500); + } + else if(animCount === 2){ + showText('divAnim1','textSym5',.6,3.3,'_________'); + imgAnimate('text4Anim',1.7,5.4,1500); + } + else if(animCount === 3){ + showText('divAnim1','text5Anim',1.7,5.4,4); + showText('divAnim1','textSym6',1,8.5,'='); + showText('divAnim1','textSym7',.5,9.7,21); + showText('divAnim1','text6',.55,9.6,'__'); + imgAnimate('text5Anim',1.7,9.8,1500); + + } + else if(animCount === 4){ + showText('divAnim1','text2frac1',.5,9.7,21); + showText('divAnim1','text2frac2',.55,9.6,'__'); + showText('divAnim1','text2frac3',1.7,9.8,4); + + showFractions(); + } + else if(animCount === 5){ + showText('divAnim2','textSym8',.4,4.8,'x'); + imgAnimate('text8Anim',.5,5.5,1000); + } + else if(animCount === 6){ + showText('divAnim2','textSym9',.4,3.5,'('); + showText('divAnim2','textSym10',.4,6.3,')'); + showText('divAnim2','textSym11',.4,6.8,'+'); + imgAnimate('text7Anim',.5,7.7,1500); + } + else if(animCount === 7){ + showText('divAnim2','textSym13',.6,3.3,'_________'); + imgAnimate('text9Anim',1.7,5.4,1500); + } + else if(animCount === 8){ + showText('divAnim2','text10Anim',1.7,5.4,3); + showText('divAnim2','textSym14',1,8.5,'='); + showText('divAnim2','textSym15',.5,9.7,8); + showText('divAnim2','text12',.55,9.6,'__'); + imgAnimate('text10Anim',1.7,9.8,1500); + + } + else if(animCount === 9){ + showText('divAnim2','text4frac1',.5,9.7,8); + showText('divAnim2','text4frac2',.55,9.6,'__'); + showText('divAnim2','text4frac3',1.7,9.8,3); + showFractions(); + } + else if(animCount === 13){ + hideNextButton(); + showText('divAnim3','textSym16',2,2.3,'x'); + imgAnimate('text3frac1',8,-12,1000); + imgAnimate('text3frac2',7.3,-11.25,1000); + imgAnimate('text3frac3',7.55,-11.3,1000); + imgAnimate('text3frac4',8.8,-11.25,1000); + } + else if(animCount === 17){ + showText('divAnim3','textSym17',2,5,'='); + imgAnimate('text2frac1',7.3,20,1000); + imgAnimate('text2frac2',7.55,20,1000); + imgAnimate('text2frac3',8.8,20.3,1000); + } + else if(animCount === 20){ + showText('divAnim3','textSym18',2,8.5,'X'); + imgAnimate('text4frac1',7.3,-5,1000); + imgAnimate('text4frac2',7.55,-5.3,1000); + imgAnimate('text4frac3',8.8,-5,1000); + + } + else if(animCount === 23){ + + cutCounter = 0; + startCuttingProcess(); + } + animCount++; + + } + else{ + showNextButton(); + if(currentLesson === 2){ + if(clickCounter === 0){ + clickCounter++; + $('#imgRoti2').show(); + showFractions(); + } + else if(clickCounter === 1){ + clickCounter++; + $('#imgRoti3').show(); + $('.nextBtn').hide(); + + } + + } + + else if(currentLesson === 1){ + if(clickCounter ===0){ + $('#imgWhole').append('<img id="lesson2frac1" src="assets/image/lesson2frac1.png">'); + $('.nextBtn').click(function(){ + $('#lesson2Div1').append('<img src="assets/image/lesson2frac2.png">'); + clickCounter++; + showFractions(); + }); + } + + } + else if(currentLesson === 0) { + $('#imgWhole').append('<img id="lesson1frac1" src="assets/image/lesson1frac1.png">'); + $('.nextBtn').click(function(){ + showLesson1ImgFraction(); + $('.nextBtn').hide(); + }); + } + } + }); + + } + + function showFractions(){ + showNextButton(); + $('.nextBtn').click(function(){ + if(currentLesson === 3){ + if(clickCounter === 0){ + showPicture('divImg2','lesson4Img2',28,-2); + showPicture('divImgDef2','lesson4ImgDef2',4,-2); + clickCounter++; + showFractions(); + } + else if(clickCounter === 1){ + showPicture('divImgDef3','lesson4ImgDef3',8,-2); + clickCounter++; + showFractions(); + } + else if(clickCounter === 2){ + showPicture('divImg4','lesson4Img3',38,10); + clickCounter++; + showFractions(); + } + else if(clickCounter === 3){ + showPicture('divImgDef4','lesson4ImgDef4',12,15); + clickCounter++; + //hideNextButton(); + } + else if(clickCounter === 4){ //next animation stuffs + //animation stuffs of fraction great work needs to be done + hideNextButton(); + makeAnimContainer('divAnim1',18,4,25,7,'8977FE'); + showText('divAnim1','text1',1,.5,5); + showText('divAnim1','text2',.3,1.25,1); + showText('divAnim1','text3',.55,1.3,'_'); + showText('divAnim1','text4',1.8,1.25,4); + showText('divAnim1','text5',1,2.35,'='); + + showText('divAnim1','text1Anim',1,.5,5); + showText('divAnim1','text2Anim',.3,1.25,1); + showText('divAnim1','text3Anim',1.8,1.25,4); + showText('divAnim1','text4Anim',1.8,1.25,4); + // for animating the fractin part + showText('divAnim1','text1frac1',1,.5,5); + showText('divAnim1','text1frac2',.3,1.25,1); + showText('divAnim1','text1frac3',.55,1.3,'_'); + showText('divAnim1','text1frac4',1.8,1.25,4); + + animCount = 0; + imgAnimate('text1Anim',.5,4,1000); + clickCounter++; + + + } + else if(clickCounter === 5){ //next animation stuffs + hideNextButton(); + makeAnimContainer('divAnim2',18,60,25,7,'8977FE'); + + + showText('divAnim2','text7',1,.5,2); + showText('divAnim2','text8',.3,1.25,2); + showText('divAnim2','text9',.55,1.3,'_'); + showText('divAnim2','text10',1.8,1.25,3); + showText('divAnim2','text11',1,2.35,'='); + + showText('divAnim2','text6Anim',1,.5,2); + showText('divAnim2','text7Anim',.3,1.25,2); + showText('divAnim2','text8Anim',1.8,1.25,3); + showText('divAnim2','text9Anim',1.8,1.25,3); + imgAnimate('text6Anim',.5,4,1000); + + showText('divAnim2','text3frac1',1,.5,2); + showText('divAnim2','text3frac2',.3,1.25,2); + showText('divAnim2','text3frac3',.55,1.3,'_'); + showText('divAnim2','text3frac4',1.8,1.25,3); + clickCounter++; + } + else if(clickCounter === 6){ + makeAnimContainer('divAnim3',30,30,30,8); + imgAnimate('text1frac1',8,13.5,1000); + imgAnimate('text1frac2',7.3,14.25,1000); + imgAnimate('text1frac3',7.55,14.3,1000); + imgAnimate('text1frac4',8.8,14.25,1000); + + } + + } + + + else if(currentLesson === 2){ + + if(clickCounter === 0){ + imgAnimate('lessonImgAnimate1',15,32.8,1000); + } + else if(clickCounter === 1){ + imgAnimate('lessonImgAnimate2',15.3,40,1000); + } + + + } + else if(currentLesson === 1){ + + if(clickCounter ===1){ + $('#lesson2Div1').append('<img src="assets/image/lesson2frac3.png">'); + clickCounter++; + showFractions(); + + } + else if(clickCounter ===2){ + $('#content').append('<img class="float-center" src="assets/image/lesson2ImgDef2.png">'); + clickCounter++; + showFractions(); + } + else if(clickCounter ===3){ + $('#content').append('<div id="lesson2ImgFraction" class="lessonImgFrac"></div>'); + $('#lesson2ImgFraction').append('<img src="assets/image/lesson2ImgFractions.png" />'); + clickCounter++; + showFractions(); + } + else if(clickCounter ===4){ + $('#content').append('<div id="lesson2ImgFractionRight"></div>'); + $('#lesson2ImgFractionRight').append('<img src="assets/image/img2FractionTotal.png" />'); + clickCounter++; + showFractions(); + } + else if(clickCounter ===5){ + $('#content').append('<img class="float-left" src="assets/image/lesson2ImgDef3.png" />'); + clickCounter++; + showFractions(); + } + else if(clickCounter ===6){ + $('#content').append('<img class="float-right" src="assets/image/lesson2ImgDef4.png" />'); + clickCounter++; + $('.nextBtn').hide(); + } + + } + else if(currentLesson === 5){ + if(clickCounter === 0){ + showPicture('divImgDef2','lesson6ImgDef2',11,-2); + } + else if(clickCounter === 1){ + showPicture('divImgDef3','lesson6ImgDef3',20,-2); + } + else if(clickCounter === 2){ + showPicture('divImgDef4','lesson6ImgDef4',27,-2); + } + else if(clickCounter === 3){ + showPicture('divImgDef5','lesson6ImgDef5',33,-2); + hideNextButton(); + } + clickCounter++; + } + }); + } + + + function foucs_blur(){ + $('input[type="text"]') + .focus(function() { + $(this).addClass("focus"); + }) + .blur(function() { + $(this).removeClass("focus"); + }) + } + + $('#linkNextLesson').click(function(){ + currentLesson++; + if(currentLesson === 5){ + $('#linkNextLesson').hide(); + $('#linkPrevLesson').show(); + } + else{ + $('#linkNextLesson').show(); + $('#linkPrevLesson').show(); + } + + nextLesson(); + }); + $('#linkPrevLesson').click(function(){ + currentLesson--; + if(currentLesson === 0){ + $('#linkPrevLesson').hide(); + } + else{ + $('#linkNextLesson').show(); + $('#linkPrevLesson').show(); + } + + nextLesson(); + }); + + + $('#linkStart').click(function(){ + game(); + }); + + $('#linkPlayAgain').click(function(){ + nextLesson(); + }); + + + + + }); //end of k.ready +}); //end of document.read + + diff --git a/examples/lessons/6_Maths_AddingAndSubtractingVariables/js/ui.core.js b/examples/lessons/6_Maths_multiplyingFractions/js/ui.core.js index 5493e0a..5493e0a 100755 --- a/examples/lessons/6_Maths_AddingAndSubtractingVariables/js/ui.core.js +++ b/examples/lessons/6_Maths_multiplyingFractions/js/ui.core.js diff --git a/examples/lessons/6_Maths_parallelLines/js/ui.scoreboard.js b/examples/lessons/6_Maths_multiplyingFractions/js/ui.scoreboard.js index 53a930a..53a930a 100755 --- a/examples/lessons/6_Maths_parallelLines/js/ui.scoreboard.js +++ b/examples/lessons/6_Maths_multiplyingFractions/js/ui.scoreboard.js diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/6_Maths_parallelLines_9-003-660@141.png b/examples/lessons/6_Maths_parallelLines/assets/image/6_Maths_parallelLines_9-003-660@141.png Binary files differdeleted file mode 100755 index b42c1a5..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/6_Maths_parallelLines_9-003-660@141.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/6_Maths_parallelLines_9-012-500@152.png b/examples/lessons/6_Maths_parallelLines/assets/image/6_Maths_parallelLines_9-012-500@152.png Binary files differdeleted file mode 100755 index 0765909..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/6_Maths_parallelLines_9-012-500@152.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/btn_back.png b/examples/lessons/6_Maths_parallelLines/assets/image/btn_back.png Binary files differdeleted file mode 100755 index d9fbf14..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/btn_back.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/btn_back_hover.png b/examples/lessons/6_Maths_parallelLines/assets/image/btn_back_hover.png Binary files differdeleted file mode 100755 index 0911fcc..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/btn_back_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/btn_help.png b/examples/lessons/6_Maths_parallelLines/assets/image/btn_help.png Binary files differdeleted file mode 100755 index 6753e9c..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/btn_help.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/btn_help_hover.png b/examples/lessons/6_Maths_parallelLines/assets/image/btn_help_hover.png Binary files differdeleted file mode 100755 index d3ccd92..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/btn_help_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/btn_next.png b/examples/lessons/6_Maths_parallelLines/assets/image/btn_next.png Binary files differdeleted file mode 100755 index 9d70993..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/btn_next.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/btn_next_hover.png b/examples/lessons/6_Maths_parallelLines/assets/image/btn_next_hover.png Binary files differdeleted file mode 100755 index 2cd4d37..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/btn_next_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/btn_ole.png b/examples/lessons/6_Maths_parallelLines/assets/image/btn_ole.png Binary files differdeleted file mode 100755 index 0e775e9..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/btn_ole.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/btn_ole_hover.png b/examples/lessons/6_Maths_parallelLines/assets/image/btn_ole_hover.png Binary files differdeleted file mode 100755 index c43c5f7..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/btn_ole_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/btn_play_again.png b/examples/lessons/6_Maths_parallelLines/assets/image/btn_play_again.png Binary files differdeleted file mode 100755 index 3594d18..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/btn_play_again.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/btn_play_again_hover.png b/examples/lessons/6_Maths_parallelLines/assets/image/btn_play_again_hover.png Binary files differdeleted file mode 100755 index ebb8f8c..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/btn_play_again_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/btn_play_again_mouse_down.png b/examples/lessons/6_Maths_parallelLines/assets/image/btn_play_again_mouse_down.png Binary files differdeleted file mode 100755 index 07d6e45..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/btn_play_again_mouse_down.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/btn_start.png b/examples/lessons/6_Maths_parallelLines/assets/image/btn_start.png Binary files differdeleted file mode 100755 index 32e5f20..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/btn_start.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/btn_start_hover.png b/examples/lessons/6_Maths_parallelLines/assets/image/btn_start_hover.png Binary files differdeleted file mode 100755 index 811ce78..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/btn_start_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/btn_start_mouse_down.png b/examples/lessons/6_Maths_parallelLines/assets/image/btn_start_mouse_down.png Binary files differdeleted file mode 100755 index 5acd43b..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/btn_start_mouse_down.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/correct.png b/examples/lessons/6_Maths_parallelLines/assets/image/correct.png Binary files differdeleted file mode 100755 index fff0b0f..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/correct.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/defIntersectLines.png b/examples/lessons/6_Maths_parallelLines/assets/image/defIntersectLines.png Binary files differdeleted file mode 100755 index 679507d..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/defIntersectLines.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/defParallelLines.png b/examples/lessons/6_Maths_parallelLines/assets/image/defParallelLines.png Binary files differdeleted file mode 100755 index 7509883..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/defParallelLines.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/defParallelNo.png b/examples/lessons/6_Maths_parallelLines/assets/image/defParallelNo.png Binary files differdeleted file mode 100755 index 2192e39..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/defParallelNo.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/defParallelYes.png b/examples/lessons/6_Maths_parallelLines/assets/image/defParallelYes.png Binary files differdeleted file mode 100755 index 789c0c2..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/defParallelYes.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/help.png b/examples/lessons/6_Maths_parallelLines/assets/image/help.png Binary files differdeleted file mode 100755 index 5bbec09..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/help.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/imgIntersectLines.png b/examples/lessons/6_Maths_parallelLines/assets/image/imgIntersectLines.png Binary files differdeleted file mode 100755 index 663bded..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/imgIntersectLines.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/imgNo.png b/examples/lessons/6_Maths_parallelLines/assets/image/imgNo.png Binary files differdeleted file mode 100755 index 1aa8be9..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/imgNo.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/imgParallelLines.png b/examples/lessons/6_Maths_parallelLines/assets/image/imgParallelLines.png Binary files differdeleted file mode 100755 index 1aee838..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/imgParallelLines.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/imgYes.png b/examples/lessons/6_Maths_parallelLines/assets/image/imgYes.png Binary files differdeleted file mode 100755 index 800f3bc..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/imgYes.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/incorrect.png b/examples/lessons/6_Maths_parallelLines/assets/image/incorrect.png Binary files differdeleted file mode 100755 index 4a38e07..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/incorrect.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/infoIntersectLines.png b/examples/lessons/6_Maths_parallelLines/assets/image/infoIntersectLines.png Binary files differdeleted file mode 100755 index a2c4224..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/infoIntersectLines.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/infoParallelLines.png b/examples/lessons/6_Maths_parallelLines/assets/image/infoParallelLines.png Binary files differdeleted file mode 100755 index 15616d7..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/infoParallelLines.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/ques0.png b/examples/lessons/6_Maths_parallelLines/assets/image/ques0.png Binary files differdeleted file mode 100755 index d248d93..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/ques0.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/ques1.png b/examples/lessons/6_Maths_parallelLines/assets/image/ques1.png Binary files differdeleted file mode 100755 index a6cb77b..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/ques1.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/ques2.png b/examples/lessons/6_Maths_parallelLines/assets/image/ques2.png Binary files differdeleted file mode 100755 index 61ec2da..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/ques2.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/ques3.png b/examples/lessons/6_Maths_parallelLines/assets/image/ques3.png Binary files differdeleted file mode 100755 index b7a93a7..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/ques3.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/ques4.png b/examples/lessons/6_Maths_parallelLines/assets/image/ques4.png Binary files differdeleted file mode 100755 index e036aeb..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/ques4.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/ques5.png b/examples/lessons/6_Maths_parallelLines/assets/image/ques5.png Binary files differdeleted file mode 100755 index e1f0e08..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/ques5.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/ques6.png b/examples/lessons/6_Maths_parallelLines/assets/image/ques6.png Binary files differdeleted file mode 100755 index 3d53e8b..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/ques6.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/ques7.png b/examples/lessons/6_Maths_parallelLines/assets/image/ques7.png Binary files differdeleted file mode 100755 index d58a860..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/ques7.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/ques8.png b/examples/lessons/6_Maths_parallelLines/assets/image/ques8.png Binary files differdeleted file mode 100755 index aefe417..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/ques8.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/ques9.png b/examples/lessons/6_Maths_parallelLines/assets/image/ques9.png Binary files differdeleted file mode 100755 index e554090..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/ques9.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/assets/image/topText.png b/examples/lessons/6_Maths_parallelLines/assets/image/topText.png Binary files differdeleted file mode 100755 index 7428709..0000000 --- a/examples/lessons/6_Maths_parallelLines/assets/image/topText.png +++ /dev/null diff --git a/examples/lessons/6_Maths_parallelLines/css/lesson.css b/examples/lessons/6_Maths_parallelLines/css/lesson.css deleted file mode 100755 index 92d8a18..0000000 --- a/examples/lessons/6_Maths_parallelLines/css/lesson.css +++ /dev/null @@ -1,262 +0,0 @@ -@CHARSET "UTF-8";
-/****** Page Styles ****/
-
-/* Designed for 1200*900 px screen resolution */
-
-body {
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 10pt;
- margin: 0px;
- background-color: #FFFFCC;
-}
-#header {
- background-image: url(../assets/image/bg_header.png);
- background-repeat: repeat-x;
- height: 75px;
- width: 100%;
- position: absolute;
- left: 0px;
- top: 0px;
-}
-#topbtn_left {
- float: left;
- height: 60px;
- width: 60px;
- padding-top: 6px;
- padding-left: 15px;
-}
-
-
- .linkBack{
- width: 60px; height: 59px;
- background:url(../assets/image/btn_back.png);
- }
- .linkBack:hover{
- background:url(../assets/image/btn_back_hover.png);
- }
-
-#lesson_title {
- float: left;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 16pt;
- font-weight: bold;
- color: #FFFFFF;
- margin-left: 10px;
- background-image: url(../assets/image/bg_title_block.png);
-}
-#topbtn_right {
- float: right;
- height: 60px;
- width: 60px;
- padding-top: 6px;
- padding-right: 15px;
-}
- #linkHelp{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_help.png);
- }
- #linkHelp:hover{
- background:url(../assets/image/btn_help_hover.png);
- }
- #linkOle{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_ole.png);
- }
- #linkOle:hover{
- background:url(../assets/image/btn_ole_hover.png);
- }
- .linkNext{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_next.png);
- }
- .linkNext:hover{
- background:url(../assets/image/btn_next_hover.png);
- }
-#footer {
- position:relative;
- background-image: url(../assets/image/bg_footer.png);
- background-repeat: repeat-x;
- height: 75px;
- width: 100%;
- left: 0px;
- bottom: 0px;
-}
-#score_box {
- float: left;
- padding-left: 5px;
- padding-top: 0.7em;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- color: #FFFF00;
- font-size: 16pt;
- font-weight: bold;
-}
-#botbtn_right {
- float: right;
- height: 55px;
- padding-right: 5px;
- padding-top: 10px;
-}
- #linkCheck{
- margin: 1em 3em 0 0;
- width: 101px; height: 30px;
- background-image: url(../assets/image/check.png);
- }
-
- #linkStart{
- width: 251px; height: 55px;
- background:url(../assets/image/btn_start.png);
- }
- #linkStart:hover{
- background:url(../assets/image/btn_start_hover.png);
- }
- #linkStart:active{
- background:url(../assets/image/btn_start_mouse_down.png);
- }
- #linkPlayAgain{
- width: 251px; height: 55px;
- background:url(../assets/image/btn_play_again.png);
- }
- #linkPlayAgain:hover{
- background:url(../assets/image/btn_play_again_hover.png);
- }
- #linkPlayAgain:active{
- background:url(../assets/image/btn_play_again_mouse_down.png);
- }
-#linkNextLesson{
- position:absolute;
- bottom: 75px;
- right: 10px;
-}
-#linkPrevLesson{
- position:absolute;
- bottom: 75px;
- left: 10px;
-}
-
-/**** End of the page style ****/
-
-/**** Game Styles ****/
-
-a{
- color:#FFFFCC;
-}
-#currentTitle{
- width: 150px;
- height: 80xp;
- font:25px/30px "Courier New", Courier, monospace;
- font-weight: bold;
- color: red;
-}
-#content{
- margin: 0 auto;
- margin-top: 75px;
- width: 95%;
- height: 550px;
- padding: 0.5em;
-}
- #lesson{
- margin: 5px auto;
- width: 650px;
- height: 600px;
- text-align:center;
-
- }
- #lessonHeader{
- margin-top:10px;
- }
- #lessonImage{
- margin-top: 50px;
- }
- #lessonInfo{
- margin-top: 50px;
- }
-
- #quesDisplay{
- margin: 10% 2% 1% 10% ;
- float:left;
- width: 150px;
- height: 250px;
- text-align:center;
- }
- #questionSection{
- margin: 2% 30% 1% 2% ;
- float:right;
- width: 350px;
- height: 260px;
- }
- #question{
- margin: 0.5em;
- float:right;
- width: 250px;
- height: 30px;
- font: 20px/25px Arial, Helvetica, sans-serif;
- font-weight: bold;
- }
- #optionSection{
- margin-top: 4em;
- width: 300px;
- height: 200px;
- text-align:center;
- }
- .imgOption{
- float:right;
- widht:157px;
- height:49px;
- margin: 1em;
- }
- .checkDisplay{
- float:left;
- width: 64px;
- height: 64px;
- margin: 0 0 0 1em;
- }
- #defSection{
- position:absolute;
- bottom: 0;
- left: 25%;
- width: 526px;
- height: 87px;
- }
-
-
- .backOpaque{
- background-color: #A4A4A4;
- opacity: 0.2;
- }
- #help{
- display:none;
- position:absolute;
- right: 60px;
- top: 75px;;
- width: 256px;
- height: 600px;
- background:url(../assets/image/help.png);
- z-index:40;
- }
-
- #gameOver{
- opacity: 1;
- display:none;
- position:absolute;
- top:45%;
- left: 30%;
- color: blue;
- text-align:center;
- font : bold 45px/65px Arial Black, Times New Roman;
- }
- #gameOverInfo{
- margin-top: 35px;
- text-align:center;
- font: 20px/25px Helvetica, Geneva, Arial, Verdana, sans-serif;
- font-weight:bold;
- color:#FF0000;
-
- }
- .specialText{
- margin-top: 1em;
- font: 20px/25px Helvetica, Geneva, Arial, Verdana, sans-serif;
- font-weight:bold;
- color:#FF9900;
- border-bottom: 2px dotted #CCC;
-
- }
diff --git a/examples/lessons/6_Maths_parallelLines/index.html b/examples/lessons/6_Maths_parallelLines/index.html deleted file mode 100755 index 8ec61b6..0000000 --- a/examples/lessons/6_Maths_parallelLines/index.html +++ /dev/null @@ -1,42 +0,0 @@ -<!DOCTYPE html>
-<head>
- <title>Class 6 Maths Parallel Lines</title>
- <meta name="keywords" content="karma,javascript,html5,sugar,sugarlabs,gsoc,ole,nepal" />
- <link type="text/css" rel="stylesheet" href="css/ui.scoreboard.css" />
- <link type="text/css" rel="stylesheet" href="css/lesson.css" />
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <link type="image/ico" rel="icon" href="../../assets/default/image/favicon.ico" />
- <script type="text/javascript" src="js/jquery-1.3.2.min.js"></script>
- <script type="text/javascript" src="js/ui.core.js"></script>
- <script type="text/javascript" src="js/ui.scoreboard.js"></script>
- <script type="text/javascript" src="js/karma.js"></script>
- <script type="text/javascript" src="js/lesson.js"></script>
-</head>
-<body>
- <div id="header">
- <div id="topbtn_left"><a href="#"><div id="linkBackLesson" class="linkBack"></div></a></div>
- <div id="lesson_title">
- <img src="assets/image/title_block_lt.png" width="33" height="75" align="absmiddle" />
- Parallel Lines || <span id="currentTitle"> समानान्तर रेखाहरु </span>
- <img src="assets/image/title_block_rt.png" width="33" height="75" align="absmiddle" />
- </div>
- <div id="topbtn_right"><a href="#"><div id="linkHelp"></div></a></div>
- <div id="topbtn_right"><a href="http://olenepal.org"><div id="linkOle"></div></a></div>
- </div>
-
- <div id="content"></div>
- <div id="help"></div>
- <div id="gameOver"></div>
- <form name="delayForm">
- <input type="hidden" name="delayval" size="5">
- </form>
-
- <div id="footer">
- <a href="#"><div id="linkNextLesson" class ="linkNext"></div></a>
- <a href="#"><div id="linkPrevLesson" class ="linkBack"></div></a>
- <div id="score_box"></div>
- <div id="botbtn_right"><a href="#"><div id="linkPlayAgain"></div></a></div>
- <div id="botbtn_right"><a href="#"><div id="linkStart"></div></a></div>
- </div>
-</body>
-</html>
diff --git a/examples/lessons/6_Maths_parallelLines/js/jquery-1.3.2.min.js b/examples/lessons/6_Maths_parallelLines/js/jquery-1.3.2.min.js deleted file mode 100755 index b1ae21d..0000000 --- a/examples/lessons/6_Maths_parallelLines/js/jquery-1.3.2.min.js +++ /dev/null @@ -1,19 +0,0 @@ -/* - * jQuery JavaScript Library v1.3.2 - * http://jquery.com/ - * - * Copyright (c) 2009 John Resig - * Dual licensed under the MIT and GPL licenses. - * http://docs.jquery.com/License - * - * Date: 2009-02-19 17:34:21 -0500 (Thu, 19 Feb 2009) - * Revision: 6246 - */ -(function(){var l=this,g,y=l.jQuery,p=l.$,o=l.jQuery=l.$=function(E,F){return new o.fn.init(E,F)},D=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,f=/^.[^:#\[\.,]*$/;o.fn=o.prototype={init:function(E,H){E=E||document;if(E.nodeType){this[0]=E;this.length=1;this.context=E;return this}if(typeof E==="string"){var G=D.exec(E);if(G&&(G[1]||!H)){if(G[1]){E=o.clean([G[1]],H)}else{var I=document.getElementById(G[3]);if(I&&I.id!=G[3]){return o().find(E)}var F=o(I||[]);F.context=document;F.selector=E;return F}}else{return o(H).find(E)}}else{if(o.isFunction(E)){return o(document).ready(E)}}if(E.selector&&E.context){this.selector=E.selector;this.context=E.context}return this.setArray(o.isArray(E)?E:o.makeArray(E))},selector:"",jquery:"1.3.2",size:function(){return this.length},get:function(E){return E===g?Array.prototype.slice.call(this):this[E]},pushStack:function(F,H,E){var G=o(F);G.prevObject=this;G.context=this.context;if(H==="find"){G.selector=this.selector+(this.selector?" ":"")+E}else{if(H){G.selector=this.selector+"."+H+"("+E+")"}}return G},setArray:function(E){this.length=0;Array.prototype.push.apply(this,E);return this},each:function(F,E){return o.each(this,F,E)},index:function(E){return o.inArray(E&&E.jquery?E[0]:E,this)},attr:function(F,H,G){var E=F;if(typeof F==="string"){if(H===g){return this[0]&&o[G||"attr"](this[0],F)}else{E={};E[F]=H}}return this.each(function(I){for(F in E){o.attr(G?this.style:this,F,o.prop(this,E[F],G,I,F))}})},css:function(E,F){if((E=="width"||E=="height")&&parseFloat(F)<0){F=g}return this.attr(E,F,"curCSS")},text:function(F){if(typeof F!=="object"&&F!=null){return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(F))}var E="";o.each(F||this,function(){o.each(this.childNodes,function(){if(this.nodeType!=8){E+=this.nodeType!=1?this.nodeValue:o.fn.text([this])}})});return E},wrapAll:function(E){if(this[0]){var F=o(E,this[0].ownerDocument).clone();if(this[0].parentNode){F.insertBefore(this[0])}F.map(function(){var G=this;while(G.firstChild){G=G.firstChild}return G}).append(this)}return this},wrapInner:function(E){return this.each(function(){o(this).contents().wrapAll(E)})},wrap:function(E){return this.each(function(){o(this).wrapAll(E)})},append:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.appendChild(E)}})},prepend:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.insertBefore(E,this.firstChild)}})},before:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this)})},after:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this.nextSibling)})},end:function(){return this.prevObject||o([])},push:[].push,sort:[].sort,splice:[].splice,find:function(E){if(this.length===1){var F=this.pushStack([],"find",E);F.length=0;o.find(E,this[0],F);return F}else{return this.pushStack(o.unique(o.map(this,function(G){return o.find(E,G)})),"find",E)}},clone:function(G){var E=this.map(function(){if(!o.support.noCloneEvent&&!o.isXMLDoc(this)){var I=this.outerHTML;if(!I){var J=this.ownerDocument.createElement("div");J.appendChild(this.cloneNode(true));I=J.innerHTML}return o.clean([I.replace(/ jQuery\d+="(?:\d+|null)"/g,"").replace(/^\s*/,"")])[0]}else{return this.cloneNode(true)}});if(G===true){var H=this.find("*").andSelf(),F=0;E.find("*").andSelf().each(function(){if(this.nodeName!==H[F].nodeName){return}var I=o.data(H[F],"events");for(var K in I){for(var J in I[K]){o.event.add(this,K,I[K][J],I[K][J].data)}}F++})}return E},filter:function(E){return this.pushStack(o.isFunction(E)&&o.grep(this,function(G,F){return E.call(G,F)})||o.multiFilter(E,o.grep(this,function(F){return F.nodeType===1})),"filter",E)},closest:function(E){var G=o.expr.match.POS.test(E)?o(E):null,F=0;return this.map(function(){var H=this;while(H&&H.ownerDocument){if(G?G.index(H)>-1:o(H).is(E)){o.data(H,"closest",F);return H}H=H.parentNode;F++}})},not:function(E){if(typeof E==="string"){if(f.test(E)){return this.pushStack(o.multiFilter(E,this,true),"not",E)}else{E=o.multiFilter(E,this)}}var F=E.length&&E[E.length-1]!==g&&!E.nodeType;return this.filter(function(){return F?o.inArray(this,E)<0:this!=E})},add:function(E){return this.pushStack(o.unique(o.merge(this.get(),typeof E==="string"?o(E):o.makeArray(E))))},is:function(E){return !!E&&o.multiFilter(E,this).length>0},hasClass:function(E){return !!E&&this.is("."+E)},val:function(K){if(K===g){var E=this[0];if(E){if(o.nodeName(E,"option")){return(E.attributes.value||{}).specified?E.value:E.text}if(o.nodeName(E,"select")){var I=E.selectedIndex,L=[],M=E.options,H=E.type=="select-one";if(I<0){return null}for(var F=H?I:0,J=H?I+1:M.length;F<J;F++){var G=M[F];if(G.selected){K=o(G).val();if(H){return K}L.push(K)}}return L}return(E.value||"").replace(/\r/g,"")}return g}if(typeof K==="number"){K+=""}return this.each(function(){if(this.nodeType!=1){return}if(o.isArray(K)&&/radio|checkbox/.test(this.type)){this.checked=(o.inArray(this.value,K)>=0||o.inArray(this.name,K)>=0)}else{if(o.nodeName(this,"select")){var N=o.makeArray(K);o("option",this).each(function(){this.selected=(o.inArray(this.value,N)>=0||o.inArray(this.text,N)>=0)});if(!N.length){this.selectedIndex=-1}}else{this.value=K}}})},html:function(E){return E===g?(this[0]?this[0].innerHTML.replace(/ jQuery\d+="(?:\d+|null)"/g,""):null):this.empty().append(E)},replaceWith:function(E){return this.after(E).remove()},eq:function(E){return this.slice(E,+E+1)},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","))},map:function(E){return this.pushStack(o.map(this,function(G,F){return E.call(G,F,G)}))},andSelf:function(){return this.add(this.prevObject)},domManip:function(J,M,L){if(this[0]){var I=(this[0].ownerDocument||this[0]).createDocumentFragment(),F=o.clean(J,(this[0].ownerDocument||this[0]),I),H=I.firstChild;if(H){for(var G=0,E=this.length;G<E;G++){L.call(K(this[G],H),this.length>1||G>0?I.cloneNode(true):I)}}if(F){o.each(F,z)}}return this;function K(N,O){return M&&o.nodeName(N,"table")&&o.nodeName(O,"tr")?(N.getElementsByTagName("tbody")[0]||N.appendChild(N.ownerDocument.createElement("tbody"))):N}}};o.fn.init.prototype=o.fn;function z(E,F){if(F.src){o.ajax({url:F.src,async:false,dataType:"script"})}else{o.globalEval(F.text||F.textContent||F.innerHTML||"")}if(F.parentNode){F.parentNode.removeChild(F)}}function e(){return +new Date}o.extend=o.fn.extend=function(){var J=arguments[0]||{},H=1,I=arguments.length,E=false,G;if(typeof J==="boolean"){E=J;J=arguments[1]||{};H=2}if(typeof J!=="object"&&!o.isFunction(J)){J={}}if(I==H){J=this;--H}for(;H<I;H++){if((G=arguments[H])!=null){for(var F in G){var K=J[F],L=G[F];if(J===L){continue}if(E&&L&&typeof L==="object"&&!L.nodeType){J[F]=o.extend(E,K||(L.length!=null?[]:{}),L)}else{if(L!==g){J[F]=L}}}}}return J};var b=/z-?index|font-?weight|opacity|zoom|line-?height/i,q=document.defaultView||{},s=Object.prototype.toString;o.extend({noConflict:function(E){l.$=p;if(E){l.jQuery=y}return o},isFunction:function(E){return s.call(E)==="[object Function]"},isArray:function(E){return s.call(E)==="[object Array]"},isXMLDoc:function(E){return E.nodeType===9&&E.documentElement.nodeName!=="HTML"||!!E.ownerDocument&&o.isXMLDoc(E.ownerDocument)},globalEval:function(G){if(G&&/\S/.test(G)){var F=document.getElementsByTagName("head")[0]||document.documentElement,E=document.createElement("script");E.type="text/javascript";if(o.support.scriptEval){E.appendChild(document.createTextNode(G))}else{E.text=G}F.insertBefore(E,F.firstChild);F.removeChild(E)}},nodeName:function(F,E){return F.nodeName&&F.nodeName.toUpperCase()==E.toUpperCase()},each:function(G,K,F){var E,H=0,I=G.length;if(F){if(I===g){for(E in G){if(K.apply(G[E],F)===false){break}}}else{for(;H<I;){if(K.apply(G[H++],F)===false){break}}}}else{if(I===g){for(E in G){if(K.call(G[E],E,G[E])===false){break}}}else{for(var J=G[0];H<I&&K.call(J,H,J)!==false;J=G[++H]){}}}return G},prop:function(H,I,G,F,E){if(o.isFunction(I)){I=I.call(H,F)}return typeof I==="number"&&G=="curCSS"&&!b.test(E)?I+"px":I},className:{add:function(E,F){o.each((F||"").split(/\s+/),function(G,H){if(E.nodeType==1&&!o.className.has(E.className,H)){E.className+=(E.className?" ":"")+H}})},remove:function(E,F){if(E.nodeType==1){E.className=F!==g?o.grep(E.className.split(/\s+/),function(G){return !o.className.has(F,G)}).join(" "):""}},has:function(F,E){return F&&o.inArray(E,(F.className||F).toString().split(/\s+/))>-1}},swap:function(H,G,I){var E={};for(var F in G){E[F]=H.style[F];H.style[F]=G[F]}I.call(H);for(var F in G){H.style[F]=E[F]}},css:function(H,F,J,E){if(F=="width"||F=="height"){var L,G={position:"absolute",visibility:"hidden",display:"block"},K=F=="width"?["Left","Right"]:["Top","Bottom"];function I(){L=F=="width"?H.offsetWidth:H.offsetHeight;if(E==="border"){return}o.each(K,function(){if(!E){L-=parseFloat(o.curCSS(H,"padding"+this,true))||0}if(E==="margin"){L+=parseFloat(o.curCSS(H,"margin"+this,true))||0}else{L-=parseFloat(o.curCSS(H,"border"+this+"Width",true))||0}})}if(H.offsetWidth!==0){I()}else{o.swap(H,G,I)}return Math.max(0,Math.round(L))}return o.curCSS(H,F,J)},curCSS:function(I,F,G){var L,E=I.style;if(F=="opacity"&&!o.support.opacity){L=o.attr(E,"opacity");return L==""?"1":L}if(F.match(/float/i)){F=w}if(!G&&E&&E[F]){L=E[F]}else{if(q.getComputedStyle){if(F.match(/float/i)){F="float"}F=F.replace(/([A-Z])/g,"-$1").toLowerCase();var M=q.getComputedStyle(I,null);if(M){L=M.getPropertyValue(F)}if(F=="opacity"&&L==""){L="1"}}else{if(I.currentStyle){var J=F.replace(/\-(\w)/g,function(N,O){return O.toUpperCase()});L=I.currentStyle[F]||I.currentStyle[J];if(!/^\d+(px)?$/i.test(L)&&/^\d/.test(L)){var H=E.left,K=I.runtimeStyle.left;I.runtimeStyle.left=I.currentStyle.left;E.left=L||0;L=E.pixelLeft+"px";E.left=H;I.runtimeStyle.left=K}}}}return L},clean:function(F,K,I){K=K||document;if(typeof K.createElement==="undefined"){K=K.ownerDocument||K[0]&&K[0].ownerDocument||document}if(!I&&F.length===1&&typeof F[0]==="string"){var H=/^<(\w+)\s*\/?>$/.exec(F[0]);if(H){return[K.createElement(H[1])]}}var G=[],E=[],L=K.createElement("div");o.each(F,function(P,S){if(typeof S==="number"){S+=""}if(!S){return}if(typeof S==="string"){S=S.replace(/(<(\w+)[^>]*?)\/>/g,function(U,V,T){return T.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?U:V+"></"+T+">"});var O=S.replace(/^\s+/,"").substring(0,10).toLowerCase();var Q=!O.indexOf("<opt")&&[1,"<select multiple='multiple'>","</select>"]||!O.indexOf("<leg")&&[1,"<fieldset>","</fieldset>"]||O.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"<table>","</table>"]||!O.indexOf("<tr")&&[2,"<table><tbody>","</tbody></table>"]||(!O.indexOf("<td")||!O.indexOf("<th"))&&[3,"<table><tbody><tr>","</tr></tbody></table>"]||!O.indexOf("<col")&&[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"]||!o.support.htmlSerialize&&[1,"div<div>","</div>"]||[0,"",""];L.innerHTML=Q[1]+S+Q[2];while(Q[0]--){L=L.lastChild}if(!o.support.tbody){var R=/<tbody/i.test(S),N=!O.indexOf("<table")&&!R?L.firstChild&&L.firstChild.childNodes:Q[1]=="<table>"&&!R?L.childNodes:[];for(var M=N.length-1;M>=0;--M){if(o.nodeName(N[M],"tbody")&&!N[M].childNodes.length){N[M].parentNode.removeChild(N[M])}}}if(!o.support.leadingWhitespace&&/^\s/.test(S)){L.insertBefore(K.createTextNode(S.match(/^\s*/)[0]),L.firstChild)}S=o.makeArray(L.childNodes)}if(S.nodeType){G.push(S)}else{G=o.merge(G,S)}});if(I){for(var J=0;G[J];J++){if(o.nodeName(G[J],"script")&&(!G[J].type||G[J].type.toLowerCase()==="text/javascript")){E.push(G[J].parentNode?G[J].parentNode.removeChild(G[J]):G[J])}else{if(G[J].nodeType===1){G.splice.apply(G,[J+1,0].concat(o.makeArray(G[J].getElementsByTagName("script"))))}I.appendChild(G[J])}}return E}return G},attr:function(J,G,K){if(!J||J.nodeType==3||J.nodeType==8){return g}var H=!o.isXMLDoc(J),L=K!==g;G=H&&o.props[G]||G;if(J.tagName){var F=/href|src|style/.test(G);if(G=="selected"&&J.parentNode){J.parentNode.selectedIndex}if(G in J&&H&&!F){if(L){if(G=="type"&&o.nodeName(J,"input")&&J.parentNode){throw"type property can't be changed"}J[G]=K}if(o.nodeName(J,"form")&&J.getAttributeNode(G)){return J.getAttributeNode(G).nodeValue}if(G=="tabIndex"){var I=J.getAttributeNode("tabIndex");return I&&I.specified?I.value:J.nodeName.match(/(button|input|object|select|textarea)/i)?0:J.nodeName.match(/^(a|area)$/i)&&J.href?0:g}return J[G]}if(!o.support.style&&H&&G=="style"){return o.attr(J.style,"cssText",K)}if(L){J.setAttribute(G,""+K)}var E=!o.support.hrefNormalized&&H&&F?J.getAttribute(G,2):J.getAttribute(G);return E===null?g:E}if(!o.support.opacity&&G=="opacity"){if(L){J.zoom=1;J.filter=(J.filter||"").replace(/alpha\([^)]*\)/,"")+(parseInt(K)+""=="NaN"?"":"alpha(opacity="+K*100+")")}return J.filter&&J.filter.indexOf("opacity=")>=0?(parseFloat(J.filter.match(/opacity=([^)]*)/)[1])/100)+"":""}G=G.replace(/-([a-z])/ig,function(M,N){return N.toUpperCase()});if(L){J[G]=K}return J[G]},trim:function(E){return(E||"").replace(/^\s+|\s+$/g,"")},makeArray:function(G){var E=[];if(G!=null){var F=G.length;if(F==null||typeof G==="string"||o.isFunction(G)||G.setInterval){E[0]=G}else{while(F){E[--F]=G[F]}}}return E},inArray:function(G,H){for(var E=0,F=H.length;E<F;E++){if(H[E]===G){return E}}return -1},merge:function(H,E){var F=0,G,I=H.length;if(!o.support.getAll){while((G=E[F++])!=null){if(G.nodeType!=8){H[I++]=G}}}else{while((G=E[F++])!=null){H[I++]=G}}return H},unique:function(K){var F=[],E={};try{for(var G=0,H=K.length;G<H;G++){var J=o.data(K[G]);if(!E[J]){E[J]=true;F.push(K[G])}}}catch(I){F=K}return F},grep:function(F,J,E){var G=[];for(var H=0,I=F.length;H<I;H++){if(!E!=!J(F[H],H)){G.push(F[H])}}return G},map:function(E,J){var F=[];for(var G=0,H=E.length;G<H;G++){var I=J(E[G],G);if(I!=null){F[F.length]=I}}return F.concat.apply([],F)}});var C=navigator.userAgent.toLowerCase();o.browser={version:(C.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)||[0,"0"])[1],safari:/webkit/.test(C),opera:/opera/.test(C),msie:/msie/.test(C)&&!/opera/.test(C),mozilla:/mozilla/.test(C)&&!/(compatible|webkit)/.test(C)};o.each({parent:function(E){return E.parentNode},parents:function(E){return o.dir(E,"parentNode")},next:function(E){return o.nth(E,2,"nextSibling")},prev:function(E){return o.nth(E,2,"previousSibling")},nextAll:function(E){return o.dir(E,"nextSibling")},prevAll:function(E){return o.dir(E,"previousSibling")},siblings:function(E){return o.sibling(E.parentNode.firstChild,E)},children:function(E){return o.sibling(E.firstChild)},contents:function(E){return o.nodeName(E,"iframe")?E.contentDocument||E.contentWindow.document:o.makeArray(E.childNodes)}},function(E,F){o.fn[E]=function(G){var H=o.map(this,F);if(G&&typeof G=="string"){H=o.multiFilter(G,H)}return this.pushStack(o.unique(H),E,G)}});o.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(E,F){o.fn[E]=function(G){var J=[],L=o(G);for(var K=0,H=L.length;K<H;K++){var I=(K>0?this.clone(true):this).get();o.fn[F].apply(o(L[K]),I);J=J.concat(I)}return this.pushStack(J,E,G)}});o.each({removeAttr:function(E){o.attr(this,E,"");if(this.nodeType==1){this.removeAttribute(E)}},addClass:function(E){o.className.add(this,E)},removeClass:function(E){o.className.remove(this,E)},toggleClass:function(F,E){if(typeof E!=="boolean"){E=!o.className.has(this,F)}o.className[E?"add":"remove"](this,F)},remove:function(E){if(!E||o.filter(E,[this]).length){o("*",this).add([this]).each(function(){o.event.remove(this);o.removeData(this)});if(this.parentNode){this.parentNode.removeChild(this)}}},empty:function(){o(this).children().remove();while(this.firstChild){this.removeChild(this.firstChild)}}},function(E,F){o.fn[E]=function(){return this.each(F,arguments)}});function j(E,F){return E[0]&&parseInt(o.curCSS(E[0],F,true),10)||0}var h="jQuery"+e(),v=0,A={};o.extend({cache:{},data:function(F,E,G){F=F==l?A:F;var H=F[h];if(!H){H=F[h]=++v}if(E&&!o.cache[H]){o.cache[H]={}}if(G!==g){o.cache[H][E]=G}return E?o.cache[H][E]:H},removeData:function(F,E){F=F==l?A:F;var H=F[h];if(E){if(o.cache[H]){delete o.cache[H][E];E="";for(E in o.cache[H]){break}if(!E){o.removeData(F)}}}else{try{delete F[h]}catch(G){if(F.removeAttribute){F.removeAttribute(h)}}delete o.cache[H]}},queue:function(F,E,H){if(F){E=(E||"fx")+"queue";var G=o.data(F,E);if(!G||o.isArray(H)){G=o.data(F,E,o.makeArray(H))}else{if(H){G.push(H)}}}return G},dequeue:function(H,G){var E=o.queue(H,G),F=E.shift();if(!G||G==="fx"){F=E[0]}if(F!==g){F.call(H)}}});o.fn.extend({data:function(E,G){var H=E.split(".");H[1]=H[1]?"."+H[1]:"";if(G===g){var F=this.triggerHandler("getData"+H[1]+"!",[H[0]]);if(F===g&&this.length){F=o.data(this[0],E)}return F===g&&H[1]?this.data(H[0]):F}else{return this.trigger("setData"+H[1]+"!",[H[0],G]).each(function(){o.data(this,E,G)})}},removeData:function(E){return this.each(function(){o.removeData(this,E)})},queue:function(E,F){if(typeof E!=="string"){F=E;E="fx"}if(F===g){return o.queue(this[0],E)}return this.each(function(){var G=o.queue(this,E,F);if(E=="fx"&&G.length==1){G[0].call(this)}})},dequeue:function(E){return this.each(function(){o.dequeue(this,E)})}}); -/* - * Sizzle CSS Selector Engine - v0.9.3 - * Copyright 2009, The Dojo Foundation - * Released under the MIT, BSD, and GPL Licenses. - * More information: http://sizzlejs.com/ - */ -(function(){var R=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?/g,L=0,H=Object.prototype.toString;var F=function(Y,U,ab,ac){ab=ab||[];U=U||document;if(U.nodeType!==1&&U.nodeType!==9){return[]}if(!Y||typeof Y!=="string"){return ab}var Z=[],W,af,ai,T,ad,V,X=true;R.lastIndex=0;while((W=R.exec(Y))!==null){Z.push(W[1]);if(W[2]){V=RegExp.rightContext;break}}if(Z.length>1&&M.exec(Y)){if(Z.length===2&&I.relative[Z[0]]){af=J(Z[0]+Z[1],U)}else{af=I.relative[Z[0]]?[U]:F(Z.shift(),U);while(Z.length){Y=Z.shift();if(I.relative[Y]){Y+=Z.shift()}af=J(Y,af)}}}else{var ae=ac?{expr:Z.pop(),set:E(ac)}:F.find(Z.pop(),Z.length===1&&U.parentNode?U.parentNode:U,Q(U));af=F.filter(ae.expr,ae.set);if(Z.length>0){ai=E(af)}else{X=false}while(Z.length){var ah=Z.pop(),ag=ah;if(!I.relative[ah]){ah=""}else{ag=Z.pop()}if(ag==null){ag=U}I.relative[ah](ai,ag,Q(U))}}if(!ai){ai=af}if(!ai){throw"Syntax error, unrecognized expression: "+(ah||Y)}if(H.call(ai)==="[object Array]"){if(!X){ab.push.apply(ab,ai)}else{if(U.nodeType===1){for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&(ai[aa]===true||ai[aa].nodeType===1&&K(U,ai[aa]))){ab.push(af[aa])}}}else{for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&ai[aa].nodeType===1){ab.push(af[aa])}}}}}else{E(ai,ab)}if(V){F(V,U,ab,ac);if(G){hasDuplicate=false;ab.sort(G);if(hasDuplicate){for(var aa=1;aa<ab.length;aa++){if(ab[aa]===ab[aa-1]){ab.splice(aa--,1)}}}}}return ab};F.matches=function(T,U){return F(T,null,null,U)};F.find=function(aa,T,ab){var Z,X;if(!aa){return[]}for(var W=0,V=I.order.length;W<V;W++){var Y=I.order[W],X;if((X=I.match[Y].exec(aa))){var U=RegExp.leftContext;if(U.substr(U.length-1)!=="\\"){X[1]=(X[1]||"").replace(/\\/g,"");Z=I.find[Y](X,T,ab);if(Z!=null){aa=aa.replace(I.match[Y],"");break}}}}if(!Z){Z=T.getElementsByTagName("*")}return{set:Z,expr:aa}};F.filter=function(ad,ac,ag,W){var V=ad,ai=[],aa=ac,Y,T,Z=ac&&ac[0]&&Q(ac[0]);while(ad&&ac.length){for(var ab in I.filter){if((Y=I.match[ab].exec(ad))!=null){var U=I.filter[ab],ah,af;T=false;if(aa==ai){ai=[]}if(I.preFilter[ab]){Y=I.preFilter[ab](Y,aa,ag,ai,W,Z);if(!Y){T=ah=true}else{if(Y===true){continue}}}if(Y){for(var X=0;(af=aa[X])!=null;X++){if(af){ah=U(af,Y,X,aa);var ae=W^!!ah;if(ag&&ah!=null){if(ae){T=true}else{aa[X]=false}}else{if(ae){ai.push(af);T=true}}}}}if(ah!==g){if(!ag){aa=ai}ad=ad.replace(I.match[ab],"");if(!T){return[]}break}}}if(ad==V){if(T==null){throw"Syntax error, unrecognized expression: "+ad}else{break}}V=ad}return aa};var I=F.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF_-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF_-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*_-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+-]*)\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF_-]|\\.)+)(?:\((['"]*)((?:\([^\)]+\)|[^\2\(\)]*)+)\2\))?/},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(T){return T.getAttribute("href")}},relative:{"+":function(aa,T,Z){var X=typeof T==="string",ab=X&&!/\W/.test(T),Y=X&&!ab;if(ab&&!Z){T=T.toUpperCase()}for(var W=0,V=aa.length,U;W<V;W++){if((U=aa[W])){while((U=U.previousSibling)&&U.nodeType!==1){}aa[W]=Y||U&&U.nodeName===T?U||false:U===T}}if(Y){F.filter(T,aa,true)}},">":function(Z,U,aa){var X=typeof U==="string";if(X&&!/\W/.test(U)){U=aa?U:U.toUpperCase();for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){var W=Y.parentNode;Z[V]=W.nodeName===U?W:false}}}else{for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){Z[V]=X?Y.parentNode:Y.parentNode===U}}if(X){F.filter(U,Z,true)}}},"":function(W,U,Y){var V=L++,T=S;if(!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("parentNode",U,V,W,X,Y)},"~":function(W,U,Y){var V=L++,T=S;if(typeof U==="string"&&!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("previousSibling",U,V,W,X,Y)}},find:{ID:function(U,V,W){if(typeof V.getElementById!=="undefined"&&!W){var T=V.getElementById(U[1]);return T?[T]:[]}},NAME:function(V,Y,Z){if(typeof Y.getElementsByName!=="undefined"){var U=[],X=Y.getElementsByName(V[1]);for(var W=0,T=X.length;W<T;W++){if(X[W].getAttribute("name")===V[1]){U.push(X[W])}}return U.length===0?null:U}},TAG:function(T,U){return U.getElementsByTagName(T[1])}},preFilter:{CLASS:function(W,U,V,T,Z,aa){W=" "+W[1].replace(/\\/g,"")+" ";if(aa){return W}for(var X=0,Y;(Y=U[X])!=null;X++){if(Y){if(Z^(Y.className&&(" "+Y.className+" ").indexOf(W)>=0)){if(!V){T.push(Y)}}else{if(V){U[X]=false}}}}return false},ID:function(T){return T[1].replace(/\\/g,"")},TAG:function(U,T){for(var V=0;T[V]===false;V++){}return T[V]&&Q(T[V])?U[1]:U[1].toUpperCase()},CHILD:function(T){if(T[1]=="nth"){var U=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(T[2]=="even"&&"2n"||T[2]=="odd"&&"2n+1"||!/\D/.test(T[2])&&"0n+"+T[2]||T[2]);T[2]=(U[1]+(U[2]||1))-0;T[3]=U[3]-0}T[0]=L++;return T},ATTR:function(X,U,V,T,Y,Z){var W=X[1].replace(/\\/g,"");if(!Z&&I.attrMap[W]){X[1]=I.attrMap[W]}if(X[2]==="~="){X[4]=" "+X[4]+" "}return X},PSEUDO:function(X,U,V,T,Y){if(X[1]==="not"){if(X[3].match(R).length>1||/^\w/.test(X[3])){X[3]=F(X[3],null,null,U)}else{var W=F.filter(X[3],U,V,true^Y);if(!V){T.push.apply(T,W)}return false}}else{if(I.match.POS.test(X[0])||I.match.CHILD.test(X[0])){return true}}return X},POS:function(T){T.unshift(true);return T}},filters:{enabled:function(T){return T.disabled===false&&T.type!=="hidden"},disabled:function(T){return T.disabled===true},checked:function(T){return T.checked===true},selected:function(T){T.parentNode.selectedIndex;return T.selected===true},parent:function(T){return !!T.firstChild},empty:function(T){return !T.firstChild},has:function(V,U,T){return !!F(T[3],V).length},header:function(T){return/h\d/i.test(T.nodeName)},text:function(T){return"text"===T.type},radio:function(T){return"radio"===T.type},checkbox:function(T){return"checkbox"===T.type},file:function(T){return"file"===T.type},password:function(T){return"password"===T.type},submit:function(T){return"submit"===T.type},image:function(T){return"image"===T.type},reset:function(T){return"reset"===T.type},button:function(T){return"button"===T.type||T.nodeName.toUpperCase()==="BUTTON"},input:function(T){return/input|select|textarea|button/i.test(T.nodeName)}},setFilters:{first:function(U,T){return T===0},last:function(V,U,T,W){return U===W.length-1},even:function(U,T){return T%2===0},odd:function(U,T){return T%2===1},lt:function(V,U,T){return U<T[3]-0},gt:function(V,U,T){return U>T[3]-0},nth:function(V,U,T){return T[3]-0==U},eq:function(V,U,T){return T[3]-0==U}},filter:{PSEUDO:function(Z,V,W,aa){var U=V[1],X=I.filters[U];if(X){return X(Z,W,V,aa)}else{if(U==="contains"){return(Z.textContent||Z.innerText||"").indexOf(V[3])>=0}else{if(U==="not"){var Y=V[3];for(var W=0,T=Y.length;W<T;W++){if(Y[W]===Z){return false}}return true}}}},CHILD:function(T,W){var Z=W[1],U=T;switch(Z){case"only":case"first":while(U=U.previousSibling){if(U.nodeType===1){return false}}if(Z=="first"){return true}U=T;case"last":while(U=U.nextSibling){if(U.nodeType===1){return false}}return true;case"nth":var V=W[2],ac=W[3];if(V==1&&ac==0){return true}var Y=W[0],ab=T.parentNode;if(ab&&(ab.sizcache!==Y||!T.nodeIndex)){var X=0;for(U=ab.firstChild;U;U=U.nextSibling){if(U.nodeType===1){U.nodeIndex=++X}}ab.sizcache=Y}var aa=T.nodeIndex-ac;if(V==0){return aa==0}else{return(aa%V==0&&aa/V>=0)}}},ID:function(U,T){return U.nodeType===1&&U.getAttribute("id")===T},TAG:function(U,T){return(T==="*"&&U.nodeType===1)||U.nodeName===T},CLASS:function(U,T){return(" "+(U.className||U.getAttribute("class"))+" ").indexOf(T)>-1},ATTR:function(Y,W){var V=W[1],T=I.attrHandle[V]?I.attrHandle[V](Y):Y[V]!=null?Y[V]:Y.getAttribute(V),Z=T+"",X=W[2],U=W[4];return T==null?X==="!=":X==="="?Z===U:X==="*="?Z.indexOf(U)>=0:X==="~="?(" "+Z+" ").indexOf(U)>=0:!U?Z&&T!==false:X==="!="?Z!=U:X==="^="?Z.indexOf(U)===0:X==="$="?Z.substr(Z.length-U.length)===U:X==="|="?Z===U||Z.substr(0,U.length+1)===U+"-":false},POS:function(X,U,V,Y){var T=U[2],W=I.setFilters[T];if(W){return W(X,V,U,Y)}}}};var M=I.match.POS;for(var O in I.match){I.match[O]=RegExp(I.match[O].source+/(?![^\[]*\])(?![^\(]*\))/.source)}var E=function(U,T){U=Array.prototype.slice.call(U);if(T){T.push.apply(T,U);return T}return U};try{Array.prototype.slice.call(document.documentElement.childNodes)}catch(N){E=function(X,W){var U=W||[];if(H.call(X)==="[object Array]"){Array.prototype.push.apply(U,X)}else{if(typeof X.length==="number"){for(var V=0,T=X.length;V<T;V++){U.push(X[V])}}else{for(var V=0;X[V];V++){U.push(X[V])}}}return U}}var G;if(document.documentElement.compareDocumentPosition){G=function(U,T){var V=U.compareDocumentPosition(T)&4?-1:U===T?0:1;if(V===0){hasDuplicate=true}return V}}else{if("sourceIndex" in document.documentElement){G=function(U,T){var V=U.sourceIndex-T.sourceIndex;if(V===0){hasDuplicate=true}return V}}else{if(document.createRange){G=function(W,U){var V=W.ownerDocument.createRange(),T=U.ownerDocument.createRange();V.selectNode(W);V.collapse(true);T.selectNode(U);T.collapse(true);var X=V.compareBoundaryPoints(Range.START_TO_END,T);if(X===0){hasDuplicate=true}return X}}}}(function(){var U=document.createElement("form"),V="script"+(new Date).getTime();U.innerHTML="<input name='"+V+"'/>";var T=document.documentElement;T.insertBefore(U,T.firstChild);if(!!document.getElementById(V)){I.find.ID=function(X,Y,Z){if(typeof Y.getElementById!=="undefined"&&!Z){var W=Y.getElementById(X[1]);return W?W.id===X[1]||typeof W.getAttributeNode!=="undefined"&&W.getAttributeNode("id").nodeValue===X[1]?[W]:g:[]}};I.filter.ID=function(Y,W){var X=typeof Y.getAttributeNode!=="undefined"&&Y.getAttributeNode("id");return Y.nodeType===1&&X&&X.nodeValue===W}}T.removeChild(U)})();(function(){var T=document.createElement("div");T.appendChild(document.createComment(""));if(T.getElementsByTagName("*").length>0){I.find.TAG=function(U,Y){var X=Y.getElementsByTagName(U[1]);if(U[1]==="*"){var W=[];for(var V=0;X[V];V++){if(X[V].nodeType===1){W.push(X[V])}}X=W}return X}}T.innerHTML="<a href='#'></a>";if(T.firstChild&&typeof T.firstChild.getAttribute!=="undefined"&&T.firstChild.getAttribute("href")!=="#"){I.attrHandle.href=function(U){return U.getAttribute("href",2)}}})();if(document.querySelectorAll){(function(){var T=F,U=document.createElement("div");U.innerHTML="<p class='TEST'></p>";if(U.querySelectorAll&&U.querySelectorAll(".TEST").length===0){return}F=function(Y,X,V,W){X=X||document;if(!W&&X.nodeType===9&&!Q(X)){try{return E(X.querySelectorAll(Y),V)}catch(Z){}}return T(Y,X,V,W)};F.find=T.find;F.filter=T.filter;F.selectors=T.selectors;F.matches=T.matches})()}if(document.getElementsByClassName&&document.documentElement.getElementsByClassName){(function(){var T=document.createElement("div");T.innerHTML="<div class='test e'></div><div class='test'></div>";if(T.getElementsByClassName("e").length===0){return}T.lastChild.className="e";if(T.getElementsByClassName("e").length===1){return}I.order.splice(1,0,"CLASS");I.find.CLASS=function(U,V,W){if(typeof V.getElementsByClassName!=="undefined"&&!W){return V.getElementsByClassName(U[1])}}})()}function P(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1&&!ac){T.sizcache=Y;T.sizset=W}if(T.nodeName===Z){X=T;break}T=T[U]}ad[W]=X}}}function S(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1){if(!ac){T.sizcache=Y;T.sizset=W}if(typeof Z!=="string"){if(T===Z){X=true;break}}else{if(F.filter(Z,[T]).length>0){X=T;break}}}T=T[U]}ad[W]=X}}}var K=document.compareDocumentPosition?function(U,T){return U.compareDocumentPosition(T)&16}:function(U,T){return U!==T&&(U.contains?U.contains(T):true)};var Q=function(T){return T.nodeType===9&&T.documentElement.nodeName!=="HTML"||!!T.ownerDocument&&Q(T.ownerDocument)};var J=function(T,aa){var W=[],X="",Y,V=aa.nodeType?[aa]:aa;while((Y=I.match.PSEUDO.exec(T))){X+=Y[0];T=T.replace(I.match.PSEUDO,"")}T=I.relative[T]?T+"*":T;for(var Z=0,U=V.length;Z<U;Z++){F(T,V[Z],W)}return F.filter(X,W)};o.find=F;o.filter=F.filter;o.expr=F.selectors;o.expr[":"]=o.expr.filters;F.selectors.filters.hidden=function(T){return T.offsetWidth===0||T.offsetHeight===0};F.selectors.filters.visible=function(T){return T.offsetWidth>0||T.offsetHeight>0};F.selectors.filters.animated=function(T){return o.grep(o.timers,function(U){return T===U.elem}).length};o.multiFilter=function(V,T,U){if(U){V=":not("+V+")"}return F.matches(V,T)};o.dir=function(V,U){var T=[],W=V[U];while(W&&W!=document){if(W.nodeType==1){T.push(W)}W=W[U]}return T};o.nth=function(X,T,V,W){T=T||1;var U=0;for(;X;X=X[V]){if(X.nodeType==1&&++U==T){break}}return X};o.sibling=function(V,U){var T=[];for(;V;V=V.nextSibling){if(V.nodeType==1&&V!=U){T.push(V)}}return T};return;l.Sizzle=F})();o.event={add:function(I,F,H,K){if(I.nodeType==3||I.nodeType==8){return}if(I.setInterval&&I!=l){I=l}if(!H.guid){H.guid=this.guid++}if(K!==g){var G=H;H=this.proxy(G);H.data=K}var E=o.data(I,"events")||o.data(I,"events",{}),J=o.data(I,"handle")||o.data(I,"handle",function(){return typeof o!=="undefined"&&!o.event.triggered?o.event.handle.apply(arguments.callee.elem,arguments):g});J.elem=I;o.each(F.split(/\s+/),function(M,N){var O=N.split(".");N=O.shift();H.type=O.slice().sort().join(".");var L=E[N];if(o.event.specialAll[N]){o.event.specialAll[N].setup.call(I,K,O)}if(!L){L=E[N]={};if(!o.event.special[N]||o.event.special[N].setup.call(I,K,O)===false){if(I.addEventListener){I.addEventListener(N,J,false)}else{if(I.attachEvent){I.attachEvent("on"+N,J)}}}}L[H.guid]=H;o.event.global[N]=true});I=null},guid:1,global:{},remove:function(K,H,J){if(K.nodeType==3||K.nodeType==8){return}var G=o.data(K,"events"),F,E;if(G){if(H===g||(typeof H==="string"&&H.charAt(0)==".")){for(var I in G){this.remove(K,I+(H||""))}}else{if(H.type){J=H.handler;H=H.type}o.each(H.split(/\s+/),function(M,O){var Q=O.split(".");O=Q.shift();var N=RegExp("(^|\\.)"+Q.slice().sort().join(".*\\.")+"(\\.|$)");if(G[O]){if(J){delete G[O][J.guid]}else{for(var P in G[O]){if(N.test(G[O][P].type)){delete G[O][P]}}}if(o.event.specialAll[O]){o.event.specialAll[O].teardown.call(K,Q)}for(F in G[O]){break}if(!F){if(!o.event.special[O]||o.event.special[O].teardown.call(K,Q)===false){if(K.removeEventListener){K.removeEventListener(O,o.data(K,"handle"),false)}else{if(K.detachEvent){K.detachEvent("on"+O,o.data(K,"handle"))}}}F=null;delete G[O]}}})}for(F in G){break}if(!F){var L=o.data(K,"handle");if(L){L.elem=null}o.removeData(K,"events");o.removeData(K,"handle")}}},trigger:function(I,K,H,E){var G=I.type||I;if(!E){I=typeof I==="object"?I[h]?I:o.extend(o.Event(G),I):o.Event(G);if(G.indexOf("!")>=0){I.type=G=G.slice(0,-1);I.exclusive=true}if(!H){I.stopPropagation();if(this.global[G]){o.each(o.cache,function(){if(this.events&&this.events[G]){o.event.trigger(I,K,this.handle.elem)}})}}if(!H||H.nodeType==3||H.nodeType==8){return g}I.result=g;I.target=H;K=o.makeArray(K);K.unshift(I)}I.currentTarget=H;var J=o.data(H,"handle");if(J){J.apply(H,K)}if((!H[G]||(o.nodeName(H,"a")&&G=="click"))&&H["on"+G]&&H["on"+G].apply(H,K)===false){I.result=false}if(!E&&H[G]&&!I.isDefaultPrevented()&&!(o.nodeName(H,"a")&&G=="click")){this.triggered=true;try{H[G]()}catch(L){}}this.triggered=false;if(!I.isPropagationStopped()){var F=H.parentNode||H.ownerDocument;if(F){o.event.trigger(I,K,F,true)}}},handle:function(K){var J,E;K=arguments[0]=o.event.fix(K||l.event);K.currentTarget=this;var L=K.type.split(".");K.type=L.shift();J=!L.length&&!K.exclusive;var I=RegExp("(^|\\.)"+L.slice().sort().join(".*\\.")+"(\\.|$)");E=(o.data(this,"events")||{})[K.type];for(var G in E){var H=E[G];if(J||I.test(H.type)){K.handler=H;K.data=H.data;var F=H.apply(this,arguments);if(F!==g){K.result=F;if(F===false){K.preventDefault();K.stopPropagation()}}if(K.isImmediatePropagationStopped()){break}}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(H){if(H[h]){return H}var F=H;H=o.Event(F);for(var G=this.props.length,J;G;){J=this.props[--G];H[J]=F[J]}if(!H.target){H.target=H.srcElement||document}if(H.target.nodeType==3){H.target=H.target.parentNode}if(!H.relatedTarget&&H.fromElement){H.relatedTarget=H.fromElement==H.target?H.toElement:H.fromElement}if(H.pageX==null&&H.clientX!=null){var I=document.documentElement,E=document.body;H.pageX=H.clientX+(I&&I.scrollLeft||E&&E.scrollLeft||0)-(I.clientLeft||0);H.pageY=H.clientY+(I&&I.scrollTop||E&&E.scrollTop||0)-(I.clientTop||0)}if(!H.which&&((H.charCode||H.charCode===0)?H.charCode:H.keyCode)){H.which=H.charCode||H.keyCode}if(!H.metaKey&&H.ctrlKey){H.metaKey=H.ctrlKey}if(!H.which&&H.button){H.which=(H.button&1?1:(H.button&2?3:(H.button&4?2:0)))}return H},proxy:function(F,E){E=E||function(){return F.apply(this,arguments)};E.guid=F.guid=F.guid||E.guid||this.guid++;return E},special:{ready:{setup:B,teardown:function(){}}},specialAll:{live:{setup:function(E,F){o.event.add(this,F[0],c)},teardown:function(G){if(G.length){var E=0,F=RegExp("(^|\\.)"+G[0]+"(\\.|$)");o.each((o.data(this,"events").live||{}),function(){if(F.test(this.type)){E++}});if(E<1){o.event.remove(this,G[0],c)}}}}}};o.Event=function(E){if(!this.preventDefault){return new o.Event(E)}if(E&&E.type){this.originalEvent=E;this.type=E.type}else{this.type=E}this.timeStamp=e();this[h]=true};function k(){return false}function u(){return true}o.Event.prototype={preventDefault:function(){this.isDefaultPrevented=u;var E=this.originalEvent;if(!E){return}if(E.preventDefault){E.preventDefault()}E.returnValue=false},stopPropagation:function(){this.isPropagationStopped=u;var E=this.originalEvent;if(!E){return}if(E.stopPropagation){E.stopPropagation()}E.cancelBubble=true},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=u;this.stopPropagation()},isDefaultPrevented:k,isPropagationStopped:k,isImmediatePropagationStopped:k};var a=function(F){var E=F.relatedTarget;while(E&&E!=this){try{E=E.parentNode}catch(G){E=this}}if(E!=this){F.type=F.data;o.event.handle.apply(this,arguments)}};o.each({mouseover:"mouseenter",mouseout:"mouseleave"},function(F,E){o.event.special[E]={setup:function(){o.event.add(this,F,a,E)},teardown:function(){o.event.remove(this,F,a)}}});o.fn.extend({bind:function(F,G,E){return F=="unload"?this.one(F,G,E):this.each(function(){o.event.add(this,F,E||G,E&&G)})},one:function(G,H,F){var E=o.event.proxy(F||H,function(I){o(this).unbind(I,E);return(F||H).apply(this,arguments)});return this.each(function(){o.event.add(this,G,E,F&&H)})},unbind:function(F,E){return this.each(function(){o.event.remove(this,F,E)})},trigger:function(E,F){return this.each(function(){o.event.trigger(E,F,this)})},triggerHandler:function(E,G){if(this[0]){var F=o.Event(E);F.preventDefault();F.stopPropagation();o.event.trigger(F,G,this[0]);return F.result}},toggle:function(G){var E=arguments,F=1;while(F<E.length){o.event.proxy(G,E[F++])}return this.click(o.event.proxy(G,function(H){this.lastToggle=(this.lastToggle||0)%F;H.preventDefault();return E[this.lastToggle++].apply(this,arguments)||false}))},hover:function(E,F){return this.mouseenter(E).mouseleave(F)},ready:function(E){B();if(o.isReady){E.call(document,o)}else{o.readyList.push(E)}return this},live:function(G,F){var E=o.event.proxy(F);E.guid+=this.selector+G;o(document).bind(i(G,this.selector),this.selector,E);return this},die:function(F,E){o(document).unbind(i(F,this.selector),E?{guid:E.guid+this.selector+F}:null);return this}});function c(H){var E=RegExp("(^|\\.)"+H.type+"(\\.|$)"),G=true,F=[];o.each(o.data(this,"events").live||[],function(I,J){if(E.test(J.type)){var K=o(H.target).closest(J.data)[0];if(K){F.push({elem:K,fn:J})}}});F.sort(function(J,I){return o.data(J.elem,"closest")-o.data(I.elem,"closest")});o.each(F,function(){if(this.fn.call(this.elem,H,this.fn.data)===false){return(G=false)}});return G}function i(F,E){return["live",F,E.replace(/\./g,"`").replace(/ /g,"|")].join(".")}o.extend({isReady:false,readyList:[],ready:function(){if(!o.isReady){o.isReady=true;if(o.readyList){o.each(o.readyList,function(){this.call(document,o)});o.readyList=null}o(document).triggerHandler("ready")}}});var x=false;function B(){if(x){return}x=true;if(document.addEventListener){document.addEventListener("DOMContentLoaded",function(){document.removeEventListener("DOMContentLoaded",arguments.callee,false);o.ready()},false)}else{if(document.attachEvent){document.attachEvent("onreadystatechange",function(){if(document.readyState==="complete"){document.detachEvent("onreadystatechange",arguments.callee);o.ready()}});if(document.documentElement.doScroll&&l==l.top){(function(){if(o.isReady){return}try{document.documentElement.doScroll("left")}catch(E){setTimeout(arguments.callee,0);return}o.ready()})()}}}o.event.add(l,"load",o.ready)}o.each(("blur,focus,load,resize,scroll,unload,click,dblclick,mousedown,mouseup,mousemove,mouseover,mouseout,mouseenter,mouseleave,change,select,submit,keydown,keypress,keyup,error").split(","),function(F,E){o.fn[E]=function(G){return G?this.bind(E,G):this.trigger(E)}});o(l).bind("unload",function(){for(var E in o.cache){if(E!=1&&o.cache[E].handle){o.event.remove(o.cache[E].handle.elem)}}});(function(){o.support={};var F=document.documentElement,G=document.createElement("script"),K=document.createElement("div"),J="script"+(new Date).getTime();K.style.display="none";K.innerHTML=' <link/><table></table><a href="/a" style="color:red;float:left;opacity:.5;">a</a><select><option>text</option></select><object><param/></object>';var H=K.getElementsByTagName("*"),E=K.getElementsByTagName("a")[0];if(!H||!H.length||!E){return}o.support={leadingWhitespace:K.firstChild.nodeType==3,tbody:!K.getElementsByTagName("tbody").length,objectAll:!!K.getElementsByTagName("object")[0].getElementsByTagName("*").length,htmlSerialize:!!K.getElementsByTagName("link").length,style:/red/.test(E.getAttribute("style")),hrefNormalized:E.getAttribute("href")==="/a",opacity:E.style.opacity==="0.5",cssFloat:!!E.style.cssFloat,scriptEval:false,noCloneEvent:true,boxModel:null};G.type="text/javascript";try{G.appendChild(document.createTextNode("window."+J+"=1;"))}catch(I){}F.insertBefore(G,F.firstChild);if(l[J]){o.support.scriptEval=true;delete l[J]}F.removeChild(G);if(K.attachEvent&&K.fireEvent){K.attachEvent("onclick",function(){o.support.noCloneEvent=false;K.detachEvent("onclick",arguments.callee)});K.cloneNode(true).fireEvent("onclick")}o(function(){var L=document.createElement("div");L.style.width=L.style.paddingLeft="1px";document.body.appendChild(L);o.boxModel=o.support.boxModel=L.offsetWidth===2;document.body.removeChild(L).style.display="none"})})();var w=o.support.cssFloat?"cssFloat":"styleFloat";o.props={"for":"htmlFor","class":"className","float":w,cssFloat:w,styleFloat:w,readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",tabindex:"tabIndex"};o.fn.extend({_load:o.fn.load,load:function(G,J,K){if(typeof G!=="string"){return this._load(G)}var I=G.indexOf(" ");if(I>=0){var E=G.slice(I,G.length);G=G.slice(0,I)}var H="GET";if(J){if(o.isFunction(J)){K=J;J=null}else{if(typeof J==="object"){J=o.param(J);H="POST"}}}var F=this;o.ajax({url:G,type:H,dataType:"html",data:J,complete:function(M,L){if(L=="success"||L=="notmodified"){F.html(E?o("<div/>").append(M.responseText.replace(/<script(.|\s)*?\/script>/g,"")).find(E):M.responseText)}if(K){F.each(K,[M.responseText,L,M])}}});return this},serialize:function(){return o.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?o.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password|search/i.test(this.type))}).map(function(E,F){var G=o(this).val();return G==null?null:o.isArray(G)?o.map(G,function(I,H){return{name:F.name,value:I}}):{name:F.name,value:G}}).get()}});o.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(E,F){o.fn[F]=function(G){return this.bind(F,G)}});var r=e();o.extend({get:function(E,G,H,F){if(o.isFunction(G)){H=G;G=null}return o.ajax({type:"GET",url:E,data:G,success:H,dataType:F})},getScript:function(E,F){return o.get(E,null,F,"script")},getJSON:function(E,F,G){return o.get(E,F,G,"json")},post:function(E,G,H,F){if(o.isFunction(G)){H=G;G={}}return o.ajax({type:"POST",url:E,data:G,success:H,dataType:F})},ajaxSetup:function(E){o.extend(o.ajaxSettings,E)},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return l.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest()},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(M){M=o.extend(true,M,o.extend(true,{},o.ajaxSettings,M));var W,F=/=\?(&|$)/g,R,V,G=M.type.toUpperCase();if(M.data&&M.processData&&typeof M.data!=="string"){M.data=o.param(M.data)}if(M.dataType=="jsonp"){if(G=="GET"){if(!M.url.match(F)){M.url+=(M.url.match(/\?/)?"&":"?")+(M.jsonp||"callback")+"=?"}}else{if(!M.data||!M.data.match(F)){M.data=(M.data?M.data+"&":"")+(M.jsonp||"callback")+"=?"}}M.dataType="json"}if(M.dataType=="json"&&(M.data&&M.data.match(F)||M.url.match(F))){W="jsonp"+r++;if(M.data){M.data=(M.data+"").replace(F,"="+W+"$1")}M.url=M.url.replace(F,"="+W+"$1");M.dataType="script";l[W]=function(X){V=X;I();L();l[W]=g;try{delete l[W]}catch(Y){}if(H){H.removeChild(T)}}}if(M.dataType=="script"&&M.cache==null){M.cache=false}if(M.cache===false&&G=="GET"){var E=e();var U=M.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+E+"$2");M.url=U+((U==M.url)?(M.url.match(/\?/)?"&":"?")+"_="+E:"")}if(M.data&&G=="GET"){M.url+=(M.url.match(/\?/)?"&":"?")+M.data;M.data=null}if(M.global&&!o.active++){o.event.trigger("ajaxStart")}var Q=/^(\w+:)?\/\/([^\/?#]+)/.exec(M.url);if(M.dataType=="script"&&G=="GET"&&Q&&(Q[1]&&Q[1]!=location.protocol||Q[2]!=location.host)){var H=document.getElementsByTagName("head")[0];var T=document.createElement("script");T.src=M.url;if(M.scriptCharset){T.charset=M.scriptCharset}if(!W){var O=false;T.onload=T.onreadystatechange=function(){if(!O&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){O=true;I();L();T.onload=T.onreadystatechange=null;H.removeChild(T)}}}H.appendChild(T);return g}var K=false;var J=M.xhr();if(M.username){J.open(G,M.url,M.async,M.username,M.password)}else{J.open(G,M.url,M.async)}try{if(M.data){J.setRequestHeader("Content-Type",M.contentType)}if(M.ifModified){J.setRequestHeader("If-Modified-Since",o.lastModified[M.url]||"Thu, 01 Jan 1970 00:00:00 GMT")}J.setRequestHeader("X-Requested-With","XMLHttpRequest");J.setRequestHeader("Accept",M.dataType&&M.accepts[M.dataType]?M.accepts[M.dataType]+", */*":M.accepts._default)}catch(S){}if(M.beforeSend&&M.beforeSend(J,M)===false){if(M.global&&!--o.active){o.event.trigger("ajaxStop")}J.abort();return false}if(M.global){o.event.trigger("ajaxSend",[J,M])}var N=function(X){if(J.readyState==0){if(P){clearInterval(P);P=null;if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}}else{if(!K&&J&&(J.readyState==4||X=="timeout")){K=true;if(P){clearInterval(P);P=null}R=X=="timeout"?"timeout":!o.httpSuccess(J)?"error":M.ifModified&&o.httpNotModified(J,M.url)?"notmodified":"success";if(R=="success"){try{V=o.httpData(J,M.dataType,M)}catch(Z){R="parsererror"}}if(R=="success"){var Y;try{Y=J.getResponseHeader("Last-Modified")}catch(Z){}if(M.ifModified&&Y){o.lastModified[M.url]=Y}if(!W){I()}}else{o.handleError(M,J,R)}L();if(X){J.abort()}if(M.async){J=null}}}};if(M.async){var P=setInterval(N,13);if(M.timeout>0){setTimeout(function(){if(J&&!K){N("timeout")}},M.timeout)}}try{J.send(M.data)}catch(S){o.handleError(M,J,null,S)}if(!M.async){N()}function I(){if(M.success){M.success(V,R)}if(M.global){o.event.trigger("ajaxSuccess",[J,M])}}function L(){if(M.complete){M.complete(J,R)}if(M.global){o.event.trigger("ajaxComplete",[J,M])}if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}return J},handleError:function(F,H,E,G){if(F.error){F.error(H,E,G)}if(F.global){o.event.trigger("ajaxError",[H,F,G])}},active:0,httpSuccess:function(F){try{return !F.status&&location.protocol=="file:"||(F.status>=200&&F.status<300)||F.status==304||F.status==1223}catch(E){}return false},httpNotModified:function(G,E){try{var H=G.getResponseHeader("Last-Modified");return G.status==304||H==o.lastModified[E]}catch(F){}return false},httpData:function(J,H,G){var F=J.getResponseHeader("content-type"),E=H=="xml"||!H&&F&&F.indexOf("xml")>=0,I=E?J.responseXML:J.responseText;if(E&&I.documentElement.tagName=="parsererror"){throw"parsererror"}if(G&&G.dataFilter){I=G.dataFilter(I,H)}if(typeof I==="string"){if(H=="script"){o.globalEval(I)}if(H=="json"){I=l["eval"]("("+I+")")}}return I},param:function(E){var G=[];function H(I,J){G[G.length]=encodeURIComponent(I)+"="+encodeURIComponent(J)}if(o.isArray(E)||E.jquery){o.each(E,function(){H(this.name,this.value)})}else{for(var F in E){if(o.isArray(E[F])){o.each(E[F],function(){H(F,this)})}else{H(F,o.isFunction(E[F])?E[F]():E[F])}}}return G.join("&").replace(/%20/g,"+")}});var m={},n,d=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];function t(F,E){var G={};o.each(d.concat.apply([],d.slice(0,E)),function(){G[this]=F});return G}o.fn.extend({show:function(J,L){if(J){return this.animate(t("show",3),J,L)}else{for(var H=0,F=this.length;H<F;H++){var E=o.data(this[H],"olddisplay");this[H].style.display=E||"";if(o.css(this[H],"display")==="none"){var G=this[H].tagName,K;if(m[G]){K=m[G]}else{var I=o("<"+G+" />").appendTo("body");K=I.css("display");if(K==="none"){K="block"}I.remove();m[G]=K}o.data(this[H],"olddisplay",K)}}for(var H=0,F=this.length;H<F;H++){this[H].style.display=o.data(this[H],"olddisplay")||""}return this}},hide:function(H,I){if(H){return this.animate(t("hide",3),H,I)}else{for(var G=0,F=this.length;G<F;G++){var E=o.data(this[G],"olddisplay");if(!E&&E!=="none"){o.data(this[G],"olddisplay",o.css(this[G],"display"))}}for(var G=0,F=this.length;G<F;G++){this[G].style.display="none"}return this}},_toggle:o.fn.toggle,toggle:function(G,F){var E=typeof G==="boolean";return o.isFunction(G)&&o.isFunction(F)?this._toggle.apply(this,arguments):G==null||E?this.each(function(){var H=E?G:o(this).is(":hidden");o(this)[H?"show":"hide"]()}):this.animate(t("toggle",3),G,F)},fadeTo:function(E,G,F){return this.animate({opacity:G},E,F)},animate:function(I,F,H,G){var E=o.speed(F,H,G);return this[E.queue===false?"each":"queue"](function(){var K=o.extend({},E),M,L=this.nodeType==1&&o(this).is(":hidden"),J=this;for(M in I){if(I[M]=="hide"&&L||I[M]=="show"&&!L){return K.complete.call(this)}if((M=="height"||M=="width")&&this.style){K.display=o.css(this,"display");K.overflow=this.style.overflow}}if(K.overflow!=null){this.style.overflow="hidden"}K.curAnim=o.extend({},I);o.each(I,function(O,S){var R=new o.fx(J,K,O);if(/toggle|show|hide/.test(S)){R[S=="toggle"?L?"show":"hide":S](I)}else{var Q=S.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),T=R.cur(true)||0;if(Q){var N=parseFloat(Q[2]),P=Q[3]||"px";if(P!="px"){J.style[O]=(N||1)+P;T=((N||1)/R.cur(true))*T;J.style[O]=T+P}if(Q[1]){N=((Q[1]=="-="?-1:1)*N)+T}R.custom(T,N,P)}else{R.custom(T,S,"")}}});return true})},stop:function(F,E){var G=o.timers;if(F){this.queue([])}this.each(function(){for(var H=G.length-1;H>=0;H--){if(G[H].elem==this){if(E){G[H](true)}G.splice(H,1)}}});if(!E){this.dequeue()}return this}});o.each({slideDown:t("show",1),slideUp:t("hide",1),slideToggle:t("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(E,F){o.fn[E]=function(G,H){return this.animate(F,G,H)}});o.extend({speed:function(G,H,F){var E=typeof G==="object"?G:{complete:F||!F&&H||o.isFunction(G)&&G,duration:G,easing:F&&H||H&&!o.isFunction(H)&&H};E.duration=o.fx.off?0:typeof E.duration==="number"?E.duration:o.fx.speeds[E.duration]||o.fx.speeds._default;E.old=E.complete;E.complete=function(){if(E.queue!==false){o(this).dequeue()}if(o.isFunction(E.old)){E.old.call(this)}};return E},easing:{linear:function(G,H,E,F){return E+F*G},swing:function(G,H,E,F){return((-Math.cos(G*Math.PI)/2)+0.5)*F+E}},timers:[],fx:function(F,E,G){this.options=E;this.elem=F;this.prop=G;if(!E.orig){E.orig={}}}});o.fx.prototype={update:function(){if(this.options.step){this.options.step.call(this.elem,this.now,this)}(o.fx.step[this.prop]||o.fx.step._default)(this);if((this.prop=="height"||this.prop=="width")&&this.elem.style){this.elem.style.display="block"}},cur:function(F){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)){return this.elem[this.prop]}var E=parseFloat(o.css(this.elem,this.prop,F));return E&&E>-10000?E:parseFloat(o.curCSS(this.elem,this.prop))||0},custom:function(I,H,G){this.startTime=e();this.start=I;this.end=H;this.unit=G||this.unit||"px";this.now=this.start;this.pos=this.state=0;var E=this;function F(J){return E.step(J)}F.elem=this.elem;if(F()&&o.timers.push(F)&&!n){n=setInterval(function(){var K=o.timers;for(var J=0;J<K.length;J++){if(!K[J]()){K.splice(J--,1)}}if(!K.length){clearInterval(n);n=g}},13)}},show:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.show=true;this.custom(this.prop=="width"||this.prop=="height"?1:0,this.cur());o(this.elem).show()},hide:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.hide=true;this.custom(this.cur(),0)},step:function(H){var G=e();if(H||G>=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var E=true;for(var F in this.options.curAnim){if(this.options.curAnim[F]!==true){E=false}}if(E){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(o.css(this.elem,"display")=="none"){this.elem.style.display="block"}}if(this.options.hide){o(this.elem).hide()}if(this.options.hide||this.options.show){for(var I in this.options.curAnim){o.attr(this.elem.style,I,this.options.orig[I])}}this.options.complete.call(this.elem)}return false}else{var J=G-this.startTime;this.state=J/this.options.duration;this.pos=o.easing[this.options.easing||(o.easing.swing?"swing":"linear")](this.state,J,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update()}return true}};o.extend(o.fx,{speeds:{slow:600,fast:200,_default:400},step:{opacity:function(E){o.attr(E.elem.style,"opacity",E.now)},_default:function(E){if(E.elem.style&&E.elem.style[E.prop]!=null){E.elem.style[E.prop]=E.now+E.unit}else{E.elem[E.prop]=E.now}}}});if(document.documentElement.getBoundingClientRect){o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}var G=this[0].getBoundingClientRect(),J=this[0].ownerDocument,F=J.body,E=J.documentElement,L=E.clientTop||F.clientTop||0,K=E.clientLeft||F.clientLeft||0,I=G.top+(self.pageYOffset||o.boxModel&&E.scrollTop||F.scrollTop)-L,H=G.left+(self.pageXOffset||o.boxModel&&E.scrollLeft||F.scrollLeft)-K;return{top:I,left:H}}}else{o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}o.offset.initialized||o.offset.initialize();var J=this[0],G=J.offsetParent,F=J,O=J.ownerDocument,M,H=O.documentElement,K=O.body,L=O.defaultView,E=L.getComputedStyle(J,null),N=J.offsetTop,I=J.offsetLeft;while((J=J.parentNode)&&J!==K&&J!==H){M=L.getComputedStyle(J,null);N-=J.scrollTop,I-=J.scrollLeft;if(J===G){N+=J.offsetTop,I+=J.offsetLeft;if(o.offset.doesNotAddBorder&&!(o.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(J.tagName))){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}F=G,G=J.offsetParent}if(o.offset.subtractsBorderForOverflowNotVisible&&M.overflow!=="visible"){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}E=M}if(E.position==="relative"||E.position==="static"){N+=K.offsetTop,I+=K.offsetLeft}if(E.position==="fixed"){N+=Math.max(H.scrollTop,K.scrollTop),I+=Math.max(H.scrollLeft,K.scrollLeft)}return{top:N,left:I}}}o.offset={initialize:function(){if(this.initialized){return}var L=document.body,F=document.createElement("div"),H,G,N,I,M,E,J=L.style.marginTop,K='<div style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;"><div></div></div><table style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;" cellpadding="0" cellspacing="0"><tr><td></td></tr></table>';M={position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"};for(E in M){F.style[E]=M[E]}F.innerHTML=K;L.insertBefore(F,L.firstChild);H=F.firstChild,G=H.firstChild,I=H.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(G.offsetTop!==5);this.doesAddBorderForTableAndCells=(I.offsetTop===5);H.style.overflow="hidden",H.style.position="relative";this.subtractsBorderForOverflowNotVisible=(G.offsetTop===-5);L.style.marginTop="1px";this.doesNotIncludeMarginInBodyOffset=(L.offsetTop===0);L.style.marginTop=J;L.removeChild(F);this.initialized=true},bodyOffset:function(E){o.offset.initialized||o.offset.initialize();var G=E.offsetTop,F=E.offsetLeft;if(o.offset.doesNotIncludeMarginInBodyOffset){G+=parseInt(o.curCSS(E,"marginTop",true),10)||0,F+=parseInt(o.curCSS(E,"marginLeft",true),10)||0}return{top:G,left:F}}};o.fn.extend({position:function(){var I=0,H=0,F;if(this[0]){var G=this.offsetParent(),J=this.offset(),E=/^body|html$/i.test(G[0].tagName)?{top:0,left:0}:G.offset();J.top-=j(this,"marginTop");J.left-=j(this,"marginLeft");E.top+=j(G,"borderTopWidth");E.left+=j(G,"borderLeftWidth");F={top:J.top-E.top,left:J.left-E.left}}return F},offsetParent:function(){var E=this[0].offsetParent||document.body;while(E&&(!/^body|html$/i.test(E.tagName)&&o.css(E,"position")=="static")){E=E.offsetParent}return o(E)}});o.each(["Left","Top"],function(F,E){var G="scroll"+E;o.fn[G]=function(H){if(!this[0]){return null}return H!==g?this.each(function(){this==l||this==document?l.scrollTo(!F?H:o(l).scrollLeft(),F?H:o(l).scrollTop()):this[G]=H}):this[0]==l||this[0]==document?self[F?"pageYOffset":"pageXOffset"]||o.boxModel&&document.documentElement[G]||document.body[G]:this[0][G]}});o.each(["Height","Width"],function(I,G){var E=I?"Left":"Top",H=I?"Right":"Bottom",F=G.toLowerCase();o.fn["inner"+G]=function(){return this[0]?o.css(this[0],F,false,"padding"):null};o.fn["outer"+G]=function(K){return this[0]?o.css(this[0],F,false,K?"margin":"border"):null};var J=G.toLowerCase();o.fn[J]=function(K){return this[0]==l?document.compatMode=="CSS1Compat"&&document.documentElement["client"+G]||document.body["client"+G]:this[0]==document?Math.max(document.documentElement["client"+G],document.body["scroll"+G],document.documentElement["scroll"+G],document.body["offset"+G],document.documentElement["offset"+G]):K===g?(this.length?o.css(this[0],J):null):this.css(J,typeof K==="string"?K:K+"px")}})})();
\ No newline at end of file diff --git a/examples/lessons/6_Maths_parallelLines/js/karma.js b/examples/lessons/6_Maths_parallelLines/js/karma.js deleted file mode 100755 index 03f027b..0000000 --- a/examples/lessons/6_Maths_parallelLines/js/karma.js +++ /dev/null @@ -1,1018 +0,0 @@ -/* Documentation Note: - * Public methods and properties are commented with /** some text *\/ - * and private methods and properties are commented with // - * - * Please leave it that way to keep this documentation sane - */ - - -/* -* Karma Framework -* http://karmaeducation.org -* -* Copyright (c) 2009 -* Bryan W Berry bryan@olenepal.org -* Felipe López Toledo zer.subzero@gmail.com -* -* Under MIT License: -* Permission is hereby granted, free of charge, to any person -* obtaining a copy of this software and associated documentation -* files (the "Software"), to deal in the Software without -* restriction, including without limitation the rights to use, -* copy, modify, merge, publish, distribute, sublicense, and/or sell -* copies of the Software, and to permit persons to whom the -* Software is furnished to do so, subject to the following -* conditions: -* -* The above copyright notice and this permission notice shall be -* included in all copies or substantial portions of the Software. -* -* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -* OTHER DEALINGS IN THE SOFTWARE. -*/ - -/** -* @fileOverview Contains karma library -* @author Bryan Berry <bryan@olenepal.org> -* @author Felipe Lopez Toledo <zer.subzero@gmail.com> -*/ - - -//common.js modules use exports object -if(!this.exports) { - exports = {}; -} - - - -/** Checks if the current document type is set to HTML 5, throws - * an error otherwise, then initializes the karma object and returns - * a reference to that object. - * @namespace Global namespace for Karma library - * @param {Object} [options={}] options for intializing Karma library - * @param {String} [options.locale=''] sets current locale Not Yet Implemented - * @param {Array} [options.image=[]] array of images to be converted into a collection - * @param {Array} [options.audio=[]] array of audio to be converted into a collection - * @param {Array} [options.video=[]] array of videos to be converted into a collection - * @param {Array} [options.svg=[]] array of SVG elements to be - * converted into a collection. Each SVG element must already exist in the html document - * @param {Array} [options.canvas=[]] array of canvas elements - * to be converted into a collection. Each canvas element must already exist in the - * html document and width and height of each element must be set as attributes - * @throws {Error} if the document type declaration is not set to HTML 5, e.g. - * <!DOCTYPE html> - * @throws {Error} If any of the initialization parameters are invalid values - * @returns {Object} Karma.karma -- reference to the initialized Karma library - * @example - * - * var k = Karma({ - * image: [ - * {name: "ninja", file: "ninja.png"}, - * {name: "cowboy", file: "cowboy.png"} - * ], - * audio: [ - * {name: "woosh", file: "woosh.ogg"}, - * {name: "yeehaw", file: "yeehaw.ogg"} - * ], - * video: [ - * {name: "attack", file: "attack.ogv"}, - * {name: "ride", file: "ride.ogv"} - * ] - * canvas: [ - * {name: "ninja", domId: "ninjaCanvas"}, - * {name: "cowboy", domId: "cowboyCanvas"} - * ], - * svg: [ - * {name: "ninja", domId: "ninjaSvg"}, - * {name: "cowboy", domId: "cowboySvg"} - * ], - * }); - * Next, call the ready function with a callback to your program code - * - * k.ready(function () { ... your application code . . . } - * - * after that you can access each asset like so - * k.image.ninja; - * k.svg.cowboy; - * k.audio.yeehaw.play(); - * k.canvas.ninja.drawImage(k.image.ninja, 0, 0); - * - */ -var Karma = exports.Karma = function (options) { - Karma._isHtml5(document.doctype.nodeName); - - if ( Karma.karma._initialized === true ) { - return Karma.karma; - } else { - return Karma.karma._init(options); - } -}; - - -//helper functions - -/**This emulates the Object.create method in ecmascript 5 spec - * This isn't a full implementation as it doesn't support - * This has the same functionality as Crockford's beget method - * and this primary building block for prototypal inheritance in - * this library - * @param {Object} target that the new object's prototype should point to - * @returns {Object} object whose prototype points to target - * @example - * - * var ninja = { weapon : "sword" }; - * var ninja1 = Karma.create(ninja); - * ninja1.sword === "sword" - */ -Karma.create = function (target){ - function F () {}; - F.prototype = target; - return new F(); -}; - -/** Returns a shallow copy of the passed in object - * @param {Object} target to be copied - * @returns {Object} a shallow copy of target - */ -Karma.clone = function (target){ - var copy = {}; - for ( var i in target ) { - if(target.hasOwnProperty(i)){ - copy[i] = target[i]; - } - } - return copy; -}; - -/** Extends properties of the target object with those of - * the source object - * @param {Object} target object to be extended - * @param {Object} source whose properties will extend target - * @returns {Object} target extended by source - */ -Karma.objectPlus = function (target, source){ - for ( var i in source){ - if (source.hasOwnProperty(i)){ - target[i] = source[i]; - } - } - return target; -}; - -/** Creates a new object that is a prototype of the first argument - * then extends it with the properties of the second argument - * @param {Object} parent1 will be prototype of returned object - * @param {Object} parent2 will extend properties of returned object - * @returns {Object} object that whose prototype is parent1 and has - * been extended with properties of parent2 - */ -Karma.copyObjectPlus = function (parent1, parent2){ - function F () {}; - F.prototype = parent1; - var G = new F(); - return Karma.objectPlus(G, parent2); -}; - -//Enables function chaining for a specified list of function names -//IMPORTANT: use of closures here with "this" and "that" is __very__ -//complicated here -Karma._makeChain = function (chainingFunctions) { - var that = this; - var _chainFunction = function ( name ){ - that[ name ] = function ( ){ - var type = typeof this.ctx[name]; - if ( type === "function") { - this.ctx[ name ].apply( this.ctx, arguments ); - }else if ( type === "string" ){ - this.ctx[ name ] = arguments[0]; - }else { - throw ("wtf?!: impossible to chain " + name + "!"); - } - return this; - }; - }; - - for (var i = 0; i < chainingFunctions.length; i++){ - _chainFunction( chainingFunctions[ i ] ); - } -}; - -//Throws big ugly error if doctype isn't html5 -Karma._isHtml5 = function (doctype){ - var regex = new RegExp('^html$', 'i'); - if(!regex.test(doctype)){ - var errorMsg = "ERROR: The doctype must be set to <!DOCTYPE html> " + - "in order to use Karma. Karma require you use html5"; - var errorElem = document.createElement('div'); - errorElem.setAttribute('id', 'errorDoctype'); - errorElem.innerText = errorMsg; - document.body.appendChild(errorElem); - throw new Error(errorMsg); - } -}; - - -/** Stores global settings for the Karma library - * @class This object stores the global settings for the Karma library - */ -Karma.karma = { - /** This is the global locale as passed to Karma(), - * such as "en", "es_SP" - * @type string - * @default undefined - */ - locale : undefined, - /** Collection of images with special helper - * methods added to each reference - * @type object - * @default empty object - */ - image : {}, - /** Collection of audio with special helper - * methods added to each reference - * @type object - * @default empty object - */ - audio : {}, - /** Collection of canvas with special helper - * methods added to each reference - * @type object - * @default empty object - */ - canvas : {}, - /** Collection of svgs with special helper - * methods added to each reference - * @type object - * @default empty object - */ - svg : {}, - /** Collection of videos with special helper - * methods added to each reference - * @type object - * @default empty object - */ - video : {}, - _localized : false, - _assetPath : "assets/", - _localePath : "", - _initialized : false, - _statusDiv: undefined, - _loaderDiv : undefined, - _counters : { total : 0, errors : 0, loaded : 0}, - - //init initializes all the assets passed to Karma, that's it - //it returns 'this' so it can be used for function chaining - _init: function(options) { - this._initialized = true; - - //set up message that show count of assets loaded - //and has an ordered list to append error messages to - var _statusDiv = this._statusDiv = document.createElement('div'); - this._loaderDiv = this._loaderDiv = document.createElement('div'); - var errorList = document.createElement('ol'); - - _statusDiv.setAttribute('id', 'karma-status'); - _statusDiv.setAttribute('style', 'position:absolute;'); - _statusDiv.innerHTML = 'Karma is loading ...'; - this._loaderDiv.setAttribute('id', 'karma-loader'); - this._loaderDiv.setAttribute('class', 'status'); - errorList.setAttribute('id', 'errorList'); - - _statusDiv.appendChild(this._loaderDiv); - this._statusDiv.appendChild(errorList); - document.body.appendChild(_statusDiv); - - - //chain the functions for kCanvas and kSvg - Karma._makeChain.call(Karma.kCanvas, - Karma.kCanvas._chainingFunctions); - //Karma._makeChain.apply(Karma.kSvg, Karma.kSvg._chainingFunctions); - - - - //regular expression that matches the name of aprivate property - // the karma object - var regexPrivate = new RegExp('^_.*'); - - for ( var option in options ) { - if (options.hasOwnProperty(option)){ - if (option === "image" || option === "audio" || option === - "svg" || option === "video" || option === "canvas"){ - - if(!(options[option] instanceof Array)){ - throw new Error("" + option + " must be an array"); - } else if (options[option].length === 0){ - continue; - } - } else if (regexPrivate.test(option)){ - //don't overwrite a private property of karma object - continue; - } - - switch (option){ - case "locale": - - if (this._isValidLocale(options[option])){ - this.locale = this._normalizeLocale(options[option]); - this._localized = true; - this._localePath = Karma._computeLocalePath(this.locale); - } else { - throw new Error("locale provided to karma._init() is invalid"); - } - - break; - case "image": - options[option]._type = 'image'; - Karma._makeImages(options[option]); - break; - case "audio": - options[option]._type = 'audio'; - Karma._makeAudio(options[option]); - break; - case "video": - options[option]._type = 'video'; - Karma._makeVideos(options[option]); - break; - case "svg": - options[option]._type = 'svg'; - Karma._makeSvgs(options[option]); - break; - case "canvas": - options[option]._type = 'canvas'; - Karma._makeCanvases(options[option]); - break; - } - } - } - - - - return this; - }, - - /** Waits until all assets loaded, i.e. ready, then calls callback - * @param {Function} [cb] callback function - * @returns this - * @throws {Error} if Karma.karma is not initialized with the - * Karma({ options }) function - * @example - * - * var k = Karma({ . . . your assets here . . . }); - * k.ready(function(){ .. your code here . . .}); - * - * your code will not be called until all assets have been loaded - * - */ - ready : function( cb ) { - var that = this; - if (Karma.karma._initialized !== true){ - throw new Error("Karma.karma not initialized"); - } - - if (this._counters.loaded !== this._counters.total){ - setTimeout(function(){ that.ready(cb);}, 5); - } else if (cb) { - //hide the "Karma is loading..." message - this._statusDiv.setAttribute('style', 'display:none;'); - - cb(); - } else if (!cb) { - //hide the "Karma is loading..." message - this._statusDiv.setAttribute('style', 'display:none;'); - - //if no options passed, show it works message - this._showStarterMessage(); - } - - - - - return this; - }, - - //Display Apache-like "It works" message if no options - _showStarterMessage : function (){ - var starterMsg = document.createElement('div'); - starterMsg.setAttribute('id', 'starterMsg'); - starterMsg.innerHTML = "<h1>It Works</h1>"; - document.body.appendChild(starterMsg); - }, - - //Updates visible counter of how many assets are loaded - _updateStatus : function (errorMsg) { - var loaded = this._counters.loaded; - var total = this._counters.total; - var errors = this._counters.errors; - this._loaderDiv.innerHTML = "Loaded " + loaded + " / " + total + - "" + (errors > 0 ? " Errors [ " + errors +" ]" : ''); - if (errorMsg) { - var liError = document.createElement('li'); - liError.innerHTML = errorMsg; - var errorList = document.getElementById('errorList'); - errorList.appendChild(liError); - } - }, - - //matches 2 letter country code then optionally - //a dash or underscore followed by a country or language identifier - //i currently only allow a language identifier 2-3 chars long - _isValidLocale : function (locale) { - var localeRegex = new RegExp('^[a-zA-Z][a-zA-Z]([-_][a-zA-z]{2,3})?$'); - return localeRegex.test(locale); - }, - - _normalizeLocale : function(locale) { - var lang = ""; - var country = ""; - var divider = ""; - - lang = locale.slice(0, 2).toLowerCase(); - divider = "_"; - country = locale.slice(3, 6).toUpperCase(); - - return locale.length > 2 ? "" + lang + divider + country : lang; - }, - - // Below are geometry and math helper methods - - /** - * Converts a value from degrees to radians. - * @param {Number} angle The angle in degrees - * @returns {Number} The angle in radians - */ - radians : function( angle ){ - return ( angle / 180 ) * Math.PI; - }, - /** - * Gets the square of the Euclidian (ordinary) distance between 2 points. - * @param {Object} Point No. 0 - * @param {Number} Point0.x - * @param {Number} Point0.y - * @param {Object} Point No. 1 - * @param {Number} Point1.x - * @param {Number} Point1.y - * @returns {Number} The square of the Euclidian distance - * @example - * - * p0 = {x:0, y:1}; - * p1 = {x:50, y:70}; - * var d = distance2(p0, p1); - * - */ - distance2 : function ( p0, p1 ) { - return (p1.x - p0.x) * (p1.x - p0.x) + (p1.y - p1.y) * (p1.y - p1.y); - }, - /** - * Gets the Euclidian (ordinary) distance between 2 points.<br> - * <b>Warning:</b> It's slower than distance2 function - * @param {Object} Point No. 0 - * @param {Number} Point0.x - * @param {Number} Point0.y - * @param {Object} Point No. 1 - * @param {Number} Point1.x - * @param {Number} Point1.y - * @returns {Number} The Euclidian distance - * @example - * - * p0 = {x:0, y:1}; - * p1 = {x:50, y:70}; - * var d = distance2(p0, p1); - * - */ - distance : function ( p0, p1 ) { - return Math.sqrt( this.distance2( p0, p1 ) ); - }, - /** Returns a random number within the range provided - * @param {Number} lower limit of the range, lowest number that can be returned - * @param {Number} upper limit of the range, highest number that can be returned - * @returns {Number} number that is >= lower and <= upper - * @example - * - * var num = rand(0, 10); - * - * num could be 0, 1, 2, 3 ... or 10 - * - */ - rand : function ( lower, upper ){ - return Math.round( Math.random() * (upper - lower) + lower ); - } - -}; - -/** Prototypal object for images, videos, and audio files but - * does not include svg or canvas elements - * @class This object is the prototype for images, videos, and audio files but - * does not include svg or canvas elements - * @ throws {Error} if the individual asset is set to be localized but - * the globale locale is not set on the Karma.karma object - * @ throws {Error} if the name and file properties are not supplied - * @example - * kMedia is the prototype object for images, audio, and videos. - * These 'media' assets are loaded in a distinctly different way - * from the canvas or svg assets. They also have distinctly different - * helper methods - * - * You initialize the kMedia assets by passing an array of objects - */ -Karma.kMedia = { - /** file location of asset - * @type String - * @default "" - */ - file : "", - /** media object - * @type Audio|Image|Video - * @default undefined - */ - media : undefined, - //actual path to the file - _path : "", - //if using localized version of this asset - _localized : false, - //audio, image, or video - _type : "", - //initializes kMedia instance with values provided by user - _init : function (asset) { - asset._localized = asset._localized || false; - Karma.karma._counters.total++; - - if (asset.name === undefined || asset.file === undefined){ - throw new Error("properties name and file have to be defined"); - } else { - this.name = asset.name; - this.file = asset.file; - } - - //_type is a private variable used internally - if (asset._type === undefined){ - throw new Error("the _type property must be set. " + - "Blame the karma library authors as this is an internal value"); - } else { - if (Karma._isValidType(asset._type)){ - this._type = asset._type; - switch ( this._type ) { - case "image": this.media = new Image(); - break; - case "audio": this.media = new Audio(); - break; - //case "video": - //NYI - //this.media = new Video(); - break; - default: throw new Error("Media type not supported"); - } - - } else { - throw new Error("the _type property supplied is invalid. " + - "Blame the karma library authors as this is an internal value"); - } - } - - if(Karma._isLocalized(asset._localized)){ - this._localized = asset._localized; - this._path = Karma.karma._localePath + - this._type + "/"; - } else { - this._path = Karma.karma._assetPath + - this._type + "/"; - } - - - //IMPORTANT: This one magic line loads the file - this.media.src = this.src = this._path + this.file; - - //add event handlers - this._addEventHandlers(); - - if (this._type === "audio"){ - this.media.autobuffer = true; - this.media.load(); - } - - - return this; - }, - //Adds event handlers to update the counters when - //the asset is successfully or unsuccessfully loaded - _addEventHandlers : function () { - var that = this; - var loadEvent = "load"; - //Browser Hack recommended by chromium devs - //http://code.google.com/p/chromium/issues/detail?id=20251&q=loading%20audio&colspec=ID%20Stars%20Pri%20Area%20Type%20Status%20Summary%20Modified%20Owner%20Mstone%20OS#c4 - if (this._type === "audio" || this._type === "video"){ - loadEvent = "canplaythrough"; - } - - that.media.addEventListener( - loadEvent, - function (e) { - Karma.karma._counters.loaded++; - Karma.karma._updateStatus(); - that.status = "loaded";}, false); - - that.media.addEventListener( - "error", - function (e) { - Karma.karma._counters.errors++; - that.status = "error"; - var errorMsg = "Error: " + that._type.toUpperCase() + - " " + that.name + " cannot be loaded."; - Karma.karma._updateStatus(errorMsg); - }, - false); - that.media.addEventListener( - "abort", - function (e) { - Karma.karma._counters.total++; - that.status = "aborted"; - var errorMsg = "ABORT: " + that._type.toUpperCase() + - " " + that.name + " loading was aborted."; - Karma.karma._updateStatus(errorMsg); - - }, false); - - } - -}; - -//determine if it is a valid type of asset -Karma._isValidType = function (type){ - return type === "image" || - type === "svg" || - type === "audio" || - type === "video" || - type === "canvas"; -}; - -Karma._isLocalized = function (boolLocalized) { - if (typeof boolLocalized === "boolean" ) { - if(boolLocalized === true && - Karma.karma.locale === undefined){ - throw new Error("You cannot localize a media asset" + - " if the global locale for Karma isn't set"); - } else { - return boolLocalized; - } - } else if (typeof boolLocalized === undefined){ - return false; - } else{ - throw new Error("This is not a valid value for the localized option"); - } -}; - -Karma._computeLocalePath = function(locale) { - return Karma.karma._assetPath + locale + "/"; -}; - -Karma._makeImages = function (imgConfigs){ - var makeImage = function (imgConfig){ - var image = undefined; - imgConfig._type = "image"; - image = Karma.create(Karma.kMedia)._init(imgConfig); - Karma.karma.image[imgConfig.name] = image; - }; - - imgConfigs.forEach(function(imgConfig){ makeImage(imgConfig);}); - -}; - -Karma._makeAudio = function (audioConfigs){ - var makeAudio = function (audioConfig){ - var audio = undefined; - audioConfig._type = "audio"; - audio = Karma.create(Karma.kMedia)._init(audioConfig); - audio.play = function () { - //hack to fix the audio "stuttering" problem - //more info: https://bugs.launchpad.net/karma/+bug/426108 - this.media.currentTime = 0.1; - this.media.play(); - }; - Karma.karma.audio[audioConfig.name] = audio; - }; - - audioConfigs.forEach(function(audioConfig){ makeAudio(audioConfig);}); - -}; - - -Karma._makeCanvases = function (canvasConfigs){ - var makeCanvas = function (canvasConfig){ - var canvas = undefined; - canvas = Karma.create(Karma.kCanvas)._init(canvasConfig); - Karma.karma.canvas[canvasConfig.name] = canvas; - }; - - canvasConfigs.forEach(function(canvasConfig){ makeCanvas(canvasConfig);}); - -}; - -/** Prototypal object for each canvas element submitted to Karma in the - * Karma() method - * @throws {Error} if the name and domId for the canvas element are not specified - * @thows {Error} if the supplied domId does not match an element in the DOM - * @class This object is the prototype for each canvas element submitted to Karma in the - * Karma() method - */ -Karma.kCanvas = { - /** Name of the canvas, used internally by karma.js - * @type String - * @default '' - */ - name : '', - /** Width of canvas element - * @type Number - * @default 0 - */ - width: 0, - /** Height of canvas element - * @type Number - * @default 0 - */ - height: 0, - /** Whether canvas is visible - * @type boolean - * @default true - */ - visible: true, - /** Element ID for canvas element in html document - * @type String - * @default undefined - */ - domId: undefined, - /** Reference to the DOM element - * @type DOMElement - * @default undefined - */ - node: undefined, - /** The 2 Dimensional Rendering context property for this canvas - * @type 2DRenderingContext - * @default undefined - */ - ctx: undefined, - /** Frames Per Second, I don't know what the purpose of this is, - * Felipe made it up - * @type Number - * @default 24 - */ - fps: 24, - - //initializes object with values provides by user - _init: function (config) { - for (var option in config){ - if (config.hasOwnProperty(option)){ - switch (option){ - case "name": - this.name = config[option]; - break; - case "domId": - this.domId = config[option]; - break; - case "width": - if(!this.height){ - throw new Error("If you specify a width you must also" + - "specify a height"); - } - this.width = config[option]; - break; - case "height": - if(!this.width){ - throw new Error("If you specify a height you must also" + - "specify a width"); - } - this.height = parseInt(config.option, 10); - break; - case "fps": - this.fps = parseInt(config.option, 10); - break; - } - } - } - - if(this.domId && document.getElementById(this.domId)){ - this.node = document.getElementById(this.domId); - this.ctx = this.node.getContext('2d'); - } else { - throw new Error('you must specify a valid domId that' + - 'is in your html page'); - } - - if(!config.height && !config.width){ - this.width = parseInt(this.node.getAttribute('width'), 10); - this.height = parseInt(this.node.getAttribute('height'), 10); - } - - return this; - }, - /** Clear area of canvas element specified by parameters, if no - * parameters supplied, clears entire canvas - * @param {Number} [x=0] x coordinate, defaults to zero if left blank - * @param {Number} [y=0] y coordinate, defaults to zero if left blank - * @param {Number} [width=0] width of area to be cleared, defaults - * entire width of canvas - * @param {Number} [height=0] height of area to be cleared, defaults - * entire height of canvas - * @returns this - * @example - * - * k.canvas.ninja.clear(); - * // clears the entire ninja canvas - * - * k.canvas.ninja.clear(0, 10, 20, 30); - * //clears a specific portion of the ninja canvas - * - */ - clear : function ( x, y, width, height ) { - var that = this; - that.ctx.clearRect( - x || 0, - y || 0, - width || that.width, - height || that.height - ); - return that; - }, - - //These are all properties or methods of the canvas element's - //2 dimensional context - _chainingFunctions : [ - "globalAlpha", "globalCompositeOperation", "lineWidth", "lineCap", - "lineJoin", "miterLimit", "font", "textAlign", "textBaseline", "save", - "restore", "scale", "rotate", "translate", "transform", "setTransform", - "clearRect", "fillRect", "strokeRect", "beginPath", "closePath", - "moveTo", "lineTo", "quadraticCurveTo", "bezierCurveTo", "arcTo", - "arc", "rect", "fill", "stroke", "clip", "fillText", "strokeText", - "measureText", "isPointInPath", "strokeStyle", "fillStyle", - "createLinearGradient", "createRadialGradient", "createPattern", - "shadowOffsetX", "shadowOffsetY", "shadowBlur", "shadowColor", - //"mozTextStyle", "mozDrawText", "mozMeasureText", "mozPathText", - "mozTextAlongPath", "drawImage", "getImageData", "putImageData", - "createImageData", "drawWindow" - ] -}; - - - -Karma._makeSvgs = function (svgConfigs){ - var makeSvg = function (svgConfig){ - var svg = undefined; - svg = Karma.create(Karma.kSvg)._init(svgConfig); - Karma.karma.svg[svgConfig.name] = svg; - }; - - svgConfigs.forEach(function(svgConfig){ makeSvg(svgConfig);}); - -}; - -/** Prototypal object for each svg element submitted to Karma in the - * Karma() method - * @throws {Error} if the name and domId for the svg element are not specified - * @thows {Error} if the supplied domId does not match an element in the DOM - * @class This object is the prototype for each svg element submitted to Karma in the - * Karma() method - */ -Karma.kSvg = { - /** name of instance, used internally - * @typeof string - * @default "" - */ - name : "", - /** width of element - * @type number - * @default 0 - */ - width: 0, - /** height of element - * @type number - * @default 0 - */ - height: 0, - /** Status of element, either "loaded" or "error" - * @type string - * @default "" - */ - status: "", - /** Whether canvas is visible - * @type boolean - * @default true - */ - visible: true, - /** Element ID for canvas element in html document - * @type String - * @default undefined - */ - domId: undefined, - /** Reference to the DOM element - * @type DOMElement - * @default undefined - */ - node: undefined, - /** Reference to the SVGDocument - * @type SVGDocument - * @default undefined - */ - doc: undefined, - /** Reference to the root element of the SVG Document - * @type DocumentElement - * @default undefined - */ - root: undefined, - _localized : undefined, - _chainingFunctions: [], - _init: function (config) { - Karma.karma._counters.total++; - - for (var option in config){ - if (config.hasOwnProperty(option)){ - switch (option){ - case "name": - this.name = config[option]; - break; - case "domId": - this.domId = config[option]; - break; - case "width": - if(!this.height){ - throw new Error("If you specify a width you must also" + - "specify a height"); - } - this.width = parseInt(config[option], 10); - break; - case "height": - if(!this.width){ - throw new Error("If you specify a height you must also" + - "specify a width"); - } - this.height = config[option]; - break; - case "fps": - this.fps = config[option]; - break; - } - } - } - - if(this.domId && document.getElementById(this.domId)){ - this.node = document.getElementById(this.domId); - } else { - throw new Error('you must specify a valid domId that' + - 'is in your html page'); - } - - if(!config.height && !config.width){ - this.width = parseInt(this.node.getAttribute('width'), 10); - this.height = parseInt(this.node.getAttribute('height'), 10); - } - - var that = this; - that._addEventHandlers(); - - return this; - - - }, - _addEventHandlers : function () { - var that = this; - that.doc = that.node.getSVGDocument(); - that.node.addEventListener( - "load", - function (e) { - that.doc = that.node.getSVGDocument(); - that.root = that.doc.documentElement; - Karma.karma._counters.loaded++; - Karma.karma._updateStatus(); - that.status = "loaded"; - }, false); - - that.node.addEventListener( - "error", - function (e) { - Karma.karma._counters.loaded--; - Karma.karma._counters.errors++; - that.status = "error"; - var errorMsg = "Error: " + that._type.toUpperCase() + - " " + that.name + " cannot be loaded."; - Karma.karma._updateStatus(errorMsg); - }, - false); - that.node.addEventListener( - "abort", - function (e) { - that.status = "aborted"; - var errorMsg = "ABORT: " + that._type.toUpperCase() + - " " + that.name + " loading was aborted."; - Karma.karma._updateStatus(errorMsg); - - }, false); - - } -}; - -Karma._makeVideos = function (video){ - -}; diff --git a/examples/lessons/6_Maths_parallelLines/js/lesson.js b/examples/lessons/6_Maths_parallelLines/js/lesson.js deleted file mode 100755 index a0c4a9f..0000000 --- a/examples/lessons/6_Maths_parallelLines/js/lesson.js +++ /dev/null @@ -1,163 +0,0 @@ -$(document).ready(function(){ - var k = Karma({ - audio: [{'name':'correct','file':'correct.wav'}, - {'name':'incorrect','file':'incorrect.wav'} - ]}); - - k.ready(function(){ - var currentLesson; - var i,j; - var flag_correct; - var TOTAL_QUES = 10; - var currentQuestion; - var correctCounter; - var totalCounter; - var imgVal; - var checked; - var question = new Array('AB र CB समानान्तर रेखा','MN र PQ समानान्तर रेखा','XY र RS समानान्तर रेखा', - 'AB र CD समानान्तर रेखा','AB र CD समानान्तर रेखा','AB र BC समानान्तर रेखा','AB र CD समानान्तर रेखा', - 'XAY र BC समानान्तर रेखा','AB र BC समानान्तर रेखा','ABC र DE एक आपसमा समानान्तर रेखा' - ); - var answers = new Array(1,0,0,0,1,1,0,0,1,1); //0 for yes and 1 for 1 - var definitions = new Array('Yes','No'); - var scoreboard = $('#score_box').scoreboard({'layout':'horizontal', - 'winningScore': TOTAL_QUES}); - - var displayLessons = function(){ - $('#content').html('').append('<div id="lesson"></div>'); - if(currentLesson === 0){ - var imgDef = "defParallelLines"; - var imgLesson = "imgParallelLines"; - var imgInfo = "infoParallelLines"; - } - else{ - var imgDef = "defIntersectLines"; - var imgLesson = "imgIntersectLines"; - var imgInfo = "infoIntersectLines"; - } - $('#lesson').append('<img id="lessonHeader" src="assets/image/'+imgDef+'.png" />'); - $('#lesson').append('<img id="lessonImage" src="assets/image/'+imgLesson+'.png" />'); - $('#lesson').append('<img id="lessonInfo" src="assets/image/'+imgInfo+'.png" />'); - }; - - var assignOptions = function(imgId){ - $('#optionSection').append('<div id="check'+imgId+'" class="checkDisplay"></div><img id="opt'+imgId+'" class="imgOption" src="assets/image/img'+definitions[imgId]+'.png" />'); - $('#opt'+imgId).click(function(){ - checkAnswer(imgId); - }); - }; - - var nextQuestions = function(){ - currentQuestion = totalCounter; - flag_correct = 1; - $('#content').html('').append('<img src="assets/image/topText.png" />'); - $('#content').append('<div id="quesDisplay"></div>'); - $('#content').append('<div id="questionSection"></div>'); - $('#questionSection').append('<div id="question"></div>'); - $('#questionSection').append('<div id="optionSection"></div>'); - $('#content').append('<div id="defSection"></div>'); - - $('#quesDisplay').html('<img src="assets/image/ques'+currentQuestion+'.png />'); - $('#question').html(question[currentQuestion]); - $('#optionSection').html(''); - for(i = 0; i<2; i++){ - assignOptions(i); - } - }; - - var displayGameOver = function(){ - $('#content').addClass('backOpaque'); - $('#gameOver').show(); - if(correctCounter === totalCounter){ - $('#gameOver').html('बधाई छ !!! सबै उत्तर सहि भए !!! '); - } - else{ - $('#gameOver').html('<div id="gameOverInfo">किन गलत भयो पत्ता लगाउ र अर्को पटक सहि बनाउने कोशिश गर । <br /> You Got <span class="specialText">'+correctCounter+ - '</span> correct out of <span class="specialText">'+totalCounter+'</span> questions .</div>'); - } - }; - - var delayCorrectShow = function(){ - document.delayForm.delayval.value = 1; - if(checked === 1){ - if(totalCounter === 10){ - displayGameOver(); - } - else{ - nextQuestions(); - } - } - $('.checkDisplay').html(''); - }; - - var checkAnswer = function(optId){ - if(optId == answers[currentQuestion]){ - checked = 1; - k.audio.correct.play(); - if(flag_correct === 1){ - correctCounter++; - scoreboard.scoreboard('inc'); - } - totalCounter++; - scoreboard.scoreboard('incTotal'); - $('#check'+optId).html('<img src="assets/image/correct.png" />'); - - } - else{ - flag_correct = 0; - checked = 0; - k.audio.incorrect.play(); - $('#check'+optId).html('<img src="assets/image/incorrect.png" />'); - $('#defSection').html('<img src="assets/image/defParallel'+definitions[answers[currentQuestion]]+'.png" />'); - } - t=setTimeout(function(){delayCorrectShow();},1000); - }; - - function gameStart(){ - $('#linkNextLesson').hide(); - $('#linkPrevLesson').hide(); - totalCounter = 0; - correctCounter = 0; - nextQuestions(); - } - - function game(){ - $('#linkPrevLesson').hide(); - $('#content').removeClass('backOpaque'); - $('#gameOver').hide(); - currentLesson = 0; - displayLessons(); - } - - game(); - - $('#linkNextLesson').click(function(){ - $('#linkNextLesson').hide(); - $('#linkPrevLesson').show(); - currentLesson = 1; - displayLessons(); - }); - $('#linkPrevLesson').click(function(){ - $('#linkNextLesson').show(); - $('#linkPrevLesson').hide(); - currentLesson = 0; - displayLessons(); - }); - $('#linkStart').click(function(){ - gameStart(); - }); - - $('#linkPlayAgain').click(function(){ - game(); - }); - $('#linkHelp').mouseover(function(){ - $('#help').slideDown(2000); - }) - .mouseout(function(){ - $('#help').slideUp(2000); - - }); - }); //end of k.ready - }); //end of document.read - - diff --git a/examples/lessons/6_Maths_parallelLines/js/ui.core.js b/examples/lessons/6_Maths_parallelLines/js/ui.core.js deleted file mode 100755 index 5493e0a..0000000 --- a/examples/lessons/6_Maths_parallelLines/js/ui.core.js +++ /dev/null @@ -1,519 +0,0 @@ -/* - * jQuery UI 1.7.2 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI - */ -;jQuery.ui || (function($) { - -var _remove = $.fn.remove, - isFF2 = $.browser.mozilla && (parseFloat($.browser.version) < 1.9); - -//Helper functions and ui object -$.ui = { - version: "1.7.2", - - // $.ui.plugin is deprecated. Use the proxy pattern instead. - plugin: { - add: function(module, option, set) { - var proto = $.ui[module].prototype; - for(var i in set) { - proto.plugins[i] = proto.plugins[i] || []; - proto.plugins[i].push([option, set[i]]); - } - }, - call: function(instance, name, args) { - var set = instance.plugins[name]; - if(!set || !instance.element[0].parentNode) { return; } - - for (var i = 0; i < set.length; i++) { - if (instance.options[set[i][0]]) { - set[i][1].apply(instance.element, args); - } - } - } - }, - - contains: function(a, b) { - return document.compareDocumentPosition - ? a.compareDocumentPosition(b) & 16 - : a !== b && a.contains(b); - }, - - hasScroll: function(el, a) { - - //If overflow is hidden, the element might have extra content, but the user wants to hide it - if ($(el).css('overflow') == 'hidden') { return false; } - - var scroll = (a && a == 'left') ? 'scrollLeft' : 'scrollTop', - has = false; - - if (el[scroll] > 0) { return true; } - - // TODO: determine which cases actually cause this to happen - // if the element doesn't have the scroll set, see if it's possible to - // set the scroll - el[scroll] = 1; - has = (el[scroll] > 0); - el[scroll] = 0; - return has; - }, - - isOverAxis: function(x, reference, size) { - //Determines when x coordinate is over "b" element axis - return (x > reference) && (x < (reference + size)); - }, - - isOver: function(y, x, top, left, height, width) { - //Determines when x, y coordinates is over "b" element - return $.ui.isOverAxis(y, top, height) && $.ui.isOverAxis(x, left, width); - }, - - keyCode: { - BACKSPACE: 8, - CAPS_LOCK: 20, - COMMA: 188, - CONTROL: 17, - DELETE: 46, - DOWN: 40, - END: 35, - ENTER: 13, - ESCAPE: 27, - HOME: 36, - INSERT: 45, - LEFT: 37, - NUMPAD_ADD: 107, - NUMPAD_DECIMAL: 110, - NUMPAD_DIVIDE: 111, - NUMPAD_ENTER: 108, - NUMPAD_MULTIPLY: 106, - NUMPAD_SUBTRACT: 109, - PAGE_DOWN: 34, - PAGE_UP: 33, - PERIOD: 190, - RIGHT: 39, - SHIFT: 16, - SPACE: 32, - TAB: 9, - UP: 38 - } -}; - -// WAI-ARIA normalization -if (isFF2) { - var attr = $.attr, - removeAttr = $.fn.removeAttr, - ariaNS = "http://www.w3.org/2005/07/aaa", - ariaState = /^aria-/, - ariaRole = /^wairole:/; - - $.attr = function(elem, name, value) { - var set = value !== undefined; - - return (name == 'role' - ? (set - ? attr.call(this, elem, name, "wairole:" + value) - : (attr.apply(this, arguments) || "").replace(ariaRole, "")) - : (ariaState.test(name) - ? (set - ? elem.setAttributeNS(ariaNS, - name.replace(ariaState, "aaa:"), value) - : attr.call(this, elem, name.replace(ariaState, "aaa:"))) - : attr.apply(this, arguments))); - }; - - $.fn.removeAttr = function(name) { - return (ariaState.test(name) - ? this.each(function() { - this.removeAttributeNS(ariaNS, name.replace(ariaState, "")); - }) : removeAttr.call(this, name)); - }; -} - -//jQuery plugins -$.fn.extend({ - remove: function() { - // Safari has a native remove event which actually removes DOM elements, - // so we have to use triggerHandler instead of trigger (#3037). - $("*", this).add(this).each(function() { - $(this).triggerHandler("remove"); - }); - return _remove.apply(this, arguments ); - }, - - enableSelection: function() { - return this - .attr('unselectable', 'off') - .css('MozUserSelect', '') - .unbind('selectstart.ui'); - }, - - disableSelection: function() { - return this - .attr('unselectable', 'on') - .css('MozUserSelect', 'none') - .bind('selectstart.ui', function() { return false; }); - }, - - scrollParent: function() { - var scrollParent; - if(($.browser.msie && (/(static|relative)/).test(this.css('position'))) || (/absolute/).test(this.css('position'))) { - scrollParent = this.parents().filter(function() { - return (/(relative|absolute|fixed)/).test($.curCSS(this,'position',1)) && (/(auto|scroll)/).test($.curCSS(this,'overflow',1)+$.curCSS(this,'overflow-y',1)+$.curCSS(this,'overflow-x',1)); - }).eq(0); - } else { - scrollParent = this.parents().filter(function() { - return (/(auto|scroll)/).test($.curCSS(this,'overflow',1)+$.curCSS(this,'overflow-y',1)+$.curCSS(this,'overflow-x',1)); - }).eq(0); - } - - return (/fixed/).test(this.css('position')) || !scrollParent.length ? $(document) : scrollParent; - } -}); - - -//Additional selectors -$.extend($.expr[':'], { - data: function(elem, i, match) { - return !!$.data(elem, match[3]); - }, - - focusable: function(element) { - var nodeName = element.nodeName.toLowerCase(), - tabIndex = $.attr(element, 'tabindex'); - return (/input|select|textarea|button|object/.test(nodeName) - ? !element.disabled - : 'a' == nodeName || 'area' == nodeName - ? element.href || !isNaN(tabIndex) - : !isNaN(tabIndex)) - // the element and all of its ancestors must be visible - // the browser may report that the area is hidden - && !$(element)['area' == nodeName ? 'parents' : 'closest'](':hidden').length; - }, - - tabbable: function(element) { - var tabIndex = $.attr(element, 'tabindex'); - return (isNaN(tabIndex) || tabIndex >= 0) && $(element).is(':focusable'); - } -}); - - -// $.widget is a factory to create jQuery plugins -// taking some boilerplate code out of the plugin code -function getter(namespace, plugin, method, args) { - function getMethods(type) { - var methods = $[namespace][plugin][type] || []; - return (typeof methods == 'string' ? methods.split(/,?\s+/) : methods); - } - - var methods = getMethods('getter'); - if (args.length == 1 && typeof args[0] == 'string') { - methods = methods.concat(getMethods('getterSetter')); - } - return ($.inArray(method, methods) != -1); -} - -$.widget = function(name, prototype) { - var namespace = name.split(".")[0]; - name = name.split(".")[1]; - - // create plugin method - $.fn[name] = function(options) { - var isMethodCall = (typeof options == 'string'), - args = Array.prototype.slice.call(arguments, 1); - - // prevent calls to internal methods - if (isMethodCall && options.substring(0, 1) == '_') { - return this; - } - - // handle getter methods - if (isMethodCall && getter(namespace, name, options, args)) { - var instance = $.data(this[0], name); - return (instance ? instance[options].apply(instance, args) - : undefined); - } - - // handle initialization and non-getter methods - return this.each(function() { - var instance = $.data(this, name); - - // constructor - (!instance && !isMethodCall && - $.data(this, name, new $[namespace][name](this, options))._init()); - - // method call - (instance && isMethodCall && $.isFunction(instance[options]) && - instance[options].apply(instance, args)); - }); - }; - - // create widget constructor - $[namespace] = $[namespace] || {}; - $[namespace][name] = function(element, options) { - var self = this; - - this.namespace = namespace; - this.widgetName = name; - this.widgetEventPrefix = $[namespace][name].eventPrefix || name; - this.widgetBaseClass = namespace + '-' + name; - - this.options = $.extend({}, - $.widget.defaults, - $[namespace][name].defaults, - $.metadata && $.metadata.get(element)[name], - options); - - this.element = $(element) - .bind('setData.' + name, function(event, key, value) { - if (event.target == element) { - return self._setData(key, value); - } - }) - .bind('getData.' + name, function(event, key) { - if (event.target == element) { - return self._getData(key); - } - }) - .bind('remove', function() { - return self.destroy(); - }); - }; - - // add widget prototype - $[namespace][name].prototype = $.extend({}, $.widget.prototype, prototype); - - // TODO: merge getter and getterSetter properties from widget prototype - // and plugin prototype - $[namespace][name].getterSetter = 'option'; -}; - -$.widget.prototype = { - _init: function() {}, - destroy: function() { - this.element.removeData(this.widgetName) - .removeClass(this.widgetBaseClass + '-disabled' + ' ' + this.namespace + '-state-disabled') - .removeAttr('aria-disabled'); - }, - - option: function(key, value) { - var options = key, - self = this; - - if (typeof key == "string") { - if (value === undefined) { - return this._getData(key); - } - options = {}; - options[key] = value; - } - - $.each(options, function(key, value) { - self._setData(key, value); - }); - }, - _getData: function(key) { - return this.options[key]; - }, - _setData: function(key, value) { - this.options[key] = value; - - if (key == 'disabled') { - this.element - [value ? 'addClass' : 'removeClass']( - this.widgetBaseClass + '-disabled' + ' ' + - this.namespace + '-state-disabled') - .attr("aria-disabled", value); - } - }, - - enable: function() { - this._setData('disabled', false); - }, - disable: function() { - this._setData('disabled', true); - }, - - _trigger: function(type, event, data) { - var callback = this.options[type], - eventName = (type == this.widgetEventPrefix - ? type : this.widgetEventPrefix + type); - - event = $.Event(event); - event.type = eventName; - - // copy original event properties over to the new event - // this would happen if we could call $.event.fix instead of $.Event - // but we don't have a way to force an event to be fixed multiple times - if (event.originalEvent) { - for (var i = $.event.props.length, prop; i;) { - prop = $.event.props[--i]; - event[prop] = event.originalEvent[prop]; - } - } - - this.element.trigger(event, data); - - return !($.isFunction(callback) && callback.call(this.element[0], event, data) === false - || event.isDefaultPrevented()); - } -}; - -$.widget.defaults = { - disabled: false -}; - - -/** Mouse Interaction Plugin **/ - -$.ui.mouse = { - _mouseInit: function() { - var self = this; - - this.element - .bind('mousedown.'+this.widgetName, function(event) { - return self._mouseDown(event); - }) - .bind('click.'+this.widgetName, function(event) { - if(self._preventClickEvent) { - self._preventClickEvent = false; - event.stopImmediatePropagation(); - return false; - } - }); - - // Prevent text selection in IE - if ($.browser.msie) { - this._mouseUnselectable = this.element.attr('unselectable'); - this.element.attr('unselectable', 'on'); - } - - this.started = false; - }, - - // TODO: make sure destroying one instance of mouse doesn't mess with - // other instances of mouse - _mouseDestroy: function() { - this.element.unbind('.'+this.widgetName); - - // Restore text selection in IE - ($.browser.msie - && this.element.attr('unselectable', this._mouseUnselectable)); - }, - - _mouseDown: function(event) { - // don't let more than one widget handle mouseStart - // TODO: figure out why we have to use originalEvent - event.originalEvent = event.originalEvent || {}; - if (event.originalEvent.mouseHandled) { return; } - - // we may have missed mouseup (out of window) - (this._mouseStarted && this._mouseUp(event)); - - this._mouseDownEvent = event; - - var self = this, - btnIsLeft = (event.which == 1), - elIsCancel = (typeof this.options.cancel == "string" ? $(event.target).parents().add(event.target).filter(this.options.cancel).length : false); - if (!btnIsLeft || elIsCancel || !this._mouseCapture(event)) { - return true; - } - - this.mouseDelayMet = !this.options.delay; - if (!this.mouseDelayMet) { - this._mouseDelayTimer = setTimeout(function() { - self.mouseDelayMet = true; - }, this.options.delay); - } - - if (this._mouseDistanceMet(event) && this._mouseDelayMet(event)) { - this._mouseStarted = (this._mouseStart(event) !== false); - if (!this._mouseStarted) { - event.preventDefault(); - return true; - } - } - - // these delegates are required to keep context - this._mouseMoveDelegate = function(event) { - return self._mouseMove(event); - }; - this._mouseUpDelegate = function(event) { - return self._mouseUp(event); - }; - $(document) - .bind('mousemove.'+this.widgetName, this._mouseMoveDelegate) - .bind('mouseup.'+this.widgetName, this._mouseUpDelegate); - - // preventDefault() is used to prevent the selection of text here - - // however, in Safari, this causes select boxes not to be selectable - // anymore, so this fix is needed - ($.browser.safari || event.preventDefault()); - - event.originalEvent.mouseHandled = true; - return true; - }, - - _mouseMove: function(event) { - // IE mouseup check - mouseup happened when mouse was out of window - if ($.browser.msie && !event.button) { - return this._mouseUp(event); - } - - if (this._mouseStarted) { - this._mouseDrag(event); - return event.preventDefault(); - } - - if (this._mouseDistanceMet(event) && this._mouseDelayMet(event)) { - this._mouseStarted = - (this._mouseStart(this._mouseDownEvent, event) !== false); - (this._mouseStarted ? this._mouseDrag(event) : this._mouseUp(event)); - } - - return !this._mouseStarted; - }, - - _mouseUp: function(event) { - $(document) - .unbind('mousemove.'+this.widgetName, this._mouseMoveDelegate) - .unbind('mouseup.'+this.widgetName, this._mouseUpDelegate); - - if (this._mouseStarted) { - this._mouseStarted = false; - this._preventClickEvent = (event.target == this._mouseDownEvent.target); - this._mouseStop(event); - } - - return false; - }, - - _mouseDistanceMet: function(event) { - return (Math.max( - Math.abs(this._mouseDownEvent.pageX - event.pageX), - Math.abs(this._mouseDownEvent.pageY - event.pageY) - ) >= this.options.distance - ); - }, - - _mouseDelayMet: function(event) { - return this.mouseDelayMet; - }, - - // These are placeholder methods, to be overriden by extending plugin - _mouseStart: function(event) {}, - _mouseDrag: function(event) {}, - _mouseStop: function(event) {}, - _mouseCapture: function(event) { return true; } -}; - -$.ui.mouse.defaults = { - cancel: null, - distance: 1, - delay: 0 -}; - -})(jQuery); diff --git a/examples/lessons/6_Maths_quickAddition/assets/audio/correct.wav b/examples/lessons/6_Maths_quickAddition/assets/audio/correct.wav Binary files differdeleted file mode 100755 index a49ba33..0000000 --- a/examples/lessons/6_Maths_quickAddition/assets/audio/correct.wav +++ /dev/null diff --git a/examples/lessons/6_Maths_quickAddition/assets/audio/incorrect.wav b/examples/lessons/6_Maths_quickAddition/assets/audio/incorrect.wav Binary files differdeleted file mode 100755 index 906c6a3..0000000 --- a/examples/lessons/6_Maths_quickAddition/assets/audio/incorrect.wav +++ /dev/null diff --git a/examples/lessons/6_Maths_quickAddition/assets/image/bg_footer.png b/examples/lessons/6_Maths_quickAddition/assets/image/bg_footer.png Binary files differdeleted file mode 100755 index 4bd44fa..0000000 --- a/examples/lessons/6_Maths_quickAddition/assets/image/bg_footer.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickAddition/assets/image/bg_header.png b/examples/lessons/6_Maths_quickAddition/assets/image/bg_header.png Binary files differdeleted file mode 100755 index f421817..0000000 --- a/examples/lessons/6_Maths_quickAddition/assets/image/bg_header.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickAddition/assets/image/bg_title_block.png b/examples/lessons/6_Maths_quickAddition/assets/image/bg_title_block.png Binary files differdeleted file mode 100755 index 7311891..0000000 --- a/examples/lessons/6_Maths_quickAddition/assets/image/bg_title_block.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickAddition/assets/image/borderWall.png b/examples/lessons/6_Maths_quickAddition/assets/image/borderWall.png Binary files differdeleted file mode 100755 index adbacdc..0000000 --- a/examples/lessons/6_Maths_quickAddition/assets/image/borderWall.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickAddition/assets/image/btn_back.png b/examples/lessons/6_Maths_quickAddition/assets/image/btn_back.png Binary files differdeleted file mode 100755 index d9fbf14..0000000 --- a/examples/lessons/6_Maths_quickAddition/assets/image/btn_back.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickAddition/assets/image/btn_back_hover.png b/examples/lessons/6_Maths_quickAddition/assets/image/btn_back_hover.png Binary files differdeleted file mode 100755 index 0911fcc..0000000 --- a/examples/lessons/6_Maths_quickAddition/assets/image/btn_back_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickAddition/assets/image/btn_help.png b/examples/lessons/6_Maths_quickAddition/assets/image/btn_help.png Binary files differdeleted file mode 100755 index 6753e9c..0000000 --- a/examples/lessons/6_Maths_quickAddition/assets/image/btn_help.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickAddition/assets/image/btn_help_hover.png b/examples/lessons/6_Maths_quickAddition/assets/image/btn_help_hover.png Binary files differdeleted file mode 100755 index d3ccd92..0000000 --- a/examples/lessons/6_Maths_quickAddition/assets/image/btn_help_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickAddition/assets/image/btn_next.png b/examples/lessons/6_Maths_quickAddition/assets/image/btn_next.png Binary files differdeleted file mode 100755 index 9d70993..0000000 --- a/examples/lessons/6_Maths_quickAddition/assets/image/btn_next.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickAddition/assets/image/btn_next_hover.png b/examples/lessons/6_Maths_quickAddition/assets/image/btn_next_hover.png Binary files differdeleted file mode 100755 index 2cd4d37..0000000 --- a/examples/lessons/6_Maths_quickAddition/assets/image/btn_next_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickAddition/assets/image/btn_ole.png b/examples/lessons/6_Maths_quickAddition/assets/image/btn_ole.png Binary files differdeleted file mode 100755 index 0e775e9..0000000 --- a/examples/lessons/6_Maths_quickAddition/assets/image/btn_ole.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickAddition/assets/image/btn_ole_hover.png b/examples/lessons/6_Maths_quickAddition/assets/image/btn_ole_hover.png Binary files differdeleted file mode 100755 index c43c5f7..0000000 --- a/examples/lessons/6_Maths_quickAddition/assets/image/btn_ole_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickAddition/assets/image/btn_play_again.png b/examples/lessons/6_Maths_quickAddition/assets/image/btn_play_again.png Binary files differdeleted file mode 100755 index 3594d18..0000000 --- a/examples/lessons/6_Maths_quickAddition/assets/image/btn_play_again.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickAddition/assets/image/btn_play_again_hover.png b/examples/lessons/6_Maths_quickAddition/assets/image/btn_play_again_hover.png Binary files differdeleted file mode 100755 index ebb8f8c..0000000 --- a/examples/lessons/6_Maths_quickAddition/assets/image/btn_play_again_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickAddition/assets/image/btn_play_again_mouse_down.png b/examples/lessons/6_Maths_quickAddition/assets/image/btn_play_again_mouse_down.png Binary files differdeleted file mode 100755 index 07d6e45..0000000 --- a/examples/lessons/6_Maths_quickAddition/assets/image/btn_play_again_mouse_down.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickAddition/assets/image/btn_start.png b/examples/lessons/6_Maths_quickAddition/assets/image/btn_start.png Binary files differdeleted file mode 100755 index 32e5f20..0000000 --- a/examples/lessons/6_Maths_quickAddition/assets/image/btn_start.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickAddition/assets/image/btn_start_hover.png b/examples/lessons/6_Maths_quickAddition/assets/image/btn_start_hover.png Binary files differdeleted file mode 100755 index 811ce78..0000000 --- a/examples/lessons/6_Maths_quickAddition/assets/image/btn_start_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickAddition/assets/image/btn_start_mouse_down.png b/examples/lessons/6_Maths_quickAddition/assets/image/btn_start_mouse_down.png Binary files differdeleted file mode 100755 index 5acd43b..0000000 --- a/examples/lessons/6_Maths_quickAddition/assets/image/btn_start_mouse_down.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickAddition/assets/image/cupBoard.png b/examples/lessons/6_Maths_quickAddition/assets/image/cupBoard.png Binary files differdeleted file mode 100755 index 98e9985..0000000 --- a/examples/lessons/6_Maths_quickAddition/assets/image/cupBoard.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickAddition/assets/image/help.png b/examples/lessons/6_Maths_quickAddition/assets/image/help.png Binary files differdeleted file mode 100755 index 769ee27..0000000 --- a/examples/lessons/6_Maths_quickAddition/assets/image/help.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickAddition/assets/image/title_block_lt.png b/examples/lessons/6_Maths_quickAddition/assets/image/title_block_lt.png Binary files differdeleted file mode 100755 index b1c0e90..0000000 --- a/examples/lessons/6_Maths_quickAddition/assets/image/title_block_lt.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickAddition/assets/image/title_block_rt.png b/examples/lessons/6_Maths_quickAddition/assets/image/title_block_rt.png Binary files differdeleted file mode 100755 index 275daaf..0000000 --- a/examples/lessons/6_Maths_quickAddition/assets/image/title_block_rt.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickAddition/assets/image/tv.png b/examples/lessons/6_Maths_quickAddition/assets/image/tv.png Binary files differdeleted file mode 100755 index cbaa755..0000000 --- a/examples/lessons/6_Maths_quickAddition/assets/image/tv.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickAddition/css/lesson.css b/examples/lessons/6_Maths_quickAddition/css/lesson.css deleted file mode 100755 index e649943..0000000 --- a/examples/lessons/6_Maths_quickAddition/css/lesson.css +++ /dev/null @@ -1,300 +0,0 @@ -@CHARSET "UTF-8";
-/****** Page Styles ****/
-
-body {
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 10pt;
- margin: 0px;
- background-color: #FFFFCC;
-}
-#header {
- background-image: url(../assets/image/bg_header.png);
- background-repeat: repeat-x;
- height: 89px;
- width: 100%;
- position: absolute;
- left: 0px;
- top: 0px;
-}
-#topbtn_left {
- float: left;
- height: 60px;
- width: 60px;
- padding-top: 13px;
- padding-left: 5px;
-}
-
-
- #linkBack{
- width: 60px; height: 59px;
- background:url(../assets/image/btn_back.png);
- }
- #linkBack:hover{
- background:url(../assets/image/btn_back_hover.png);
- }
-
-#lesson_title {
- float: left;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 16pt;
- font-weight: bold;
- color: #FFFFFF;
- margin-left: 10px;
- background-image: url(../assets/image/bg_title_block.png);
-}
-#topbtn_right {
- float: right;
- height: 60px;
- width: 60px;
- padding-top: 13px;
- padding-right: 5px;
-}
- #linkHelp{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_help.png);
- }bgCalculation
- #linkHelp:hover{
- background:url(../assets/image/btn_help_hover.png);
- }
- #linkOle{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_ole.png);
- }
- #linkOle:hover{
- background:url(../assets/image/btn_ole_hover.png);
- }
- #linkNext{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_next.png);
- }
- #linkNext:hover{
- background:url(../assets/image/btn_next_hover.png);
- }
-#footer {
- background-image: url(../assets/image/bg_footer.png);
- background-repeat: repeat-x;
- position: abbgCalculationsolute;
- height: 69px;
- width: 100%;
- left: 0px;
- bottom: 0px;
-}
-#score_box {
- float: left;
- padding-left: 5px;
- padding-top: 10px;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- color: #FFFF00;
- font-size: 16pt;
- font-weight: bold;
-}
-#botbtn_right {
- float: right;
- height: 55px;
- /*width: 25bgCalculation1px;*/
- padding-right: 5px;
- padding-top: 5px;
-}
- #linkCheck{
- margin: 1em 3em 0 0;
- width: 101px; height: 30px;
- background-image: url(../assets/image/check.png);
- }
-
- #linkStart{
- width: 251px; height: 55px;
- background:url(../assets/image/btn_start.png);
- }
- #linkStart:hover{
- background:url(../assets/image/btn_start_hover.png);
- }
- #linkStart:active{
- background:url(../assets/image/btn_start_mouse_down.png);
- }
- #linkPlayAgain{
- width: 251px; height: 55px;
- background:url(../assets/image/btn_play_again.png);
- }
- #linkPlayAgain:hover{
- background:url(../assets/image/btn_play_again_hover.png);
- }
- #linkPlayAgain:active{
- background:url(../assets/image/btn_play_again_mouse_down.png);
- }
-
-/**** End of the page style ****/
-
-/**** Game Styles ****/
-
-a{
- color:#FFFFCC;
-}
-#currentTitle{
- width: 150px;
- height: 80xp;
- font:25px/30px "Courier New", Courier, monospace;
- font-weight: bold;
- color: red;
-}
-#content{
- margin: 0 auto;
- margin-top: 85px;
- width: 98%;
- padding: 0.5em;
- height: 375px;
- background-color: #FCFFA4;
-}
- #section{
- width: 900px;
- height: 375px;
- margin: 0 auto;
- z-index: 1;
- }
-
- #left-side{
- float:left;
- width: 360px;
- height: 360px;
- z-index: 2;
- }
- #tv{
- position:relative;
- margin-left: 12px;
- width: 215px;
- height: 191px;
- background-image: url(../assets/image/tv.png);
- z-index:5;
- }
- #tvLayer{
- position:absolute;
- top: 17px;
- left: 16px;
- width: 179px;
- height: 128px;
- font: 40px/60px Verdana, Geneva, Arial, Helvetica, sans-serif;
- color: #FFF;
- text-align:center;
- font-weight:bold;
- -moz-border-radius : 10px;
- -webkit-border-radius : 10px;
- border-radius : 10px;
- z-index: 1;
- }
- .tvOff{
- background-color: #78040E;
- border: 2px solid #78040E;
-
- }
- .tvOn{
- background-color: #0000FF;
- border: 2px solid #0000FF;
- }
-
- #cupBoard{
- width: 280px;
- height: 259px;
- background: url(../assets/image/cupBoard.png) no-repeat;
- }
-
- #right-side{
- float:right;
- width: 420px;
- height: 365px;
- }
- #borderWall{
- position:relative;
- width: 420px;
- height: 320px;
- background: url(../assets/image/borderWall.png) no-repeat;
- }
- #imgDisplay{
- position:absolute;
- top: 53px;
- left: 62px;
- width: 294px;
- height:210px;
- }
- .default{
- float:left;
- width: 69px;
- height: 48px;
- background-color:#FCFFA4;
- border: 2px solid #FCFFA4;
- }
- .correct{
- float:left;
- width: 69px;
- height: 48px;
- background-color:#A6E4FE;
- border: 2px solid #F9F900;
- }
- #calcSection{
- margin-top: 10px;
- width: 420px;
- height: 35px;
- text-align:center;
- font: 30px/35px Verdana, Geneva, Arial, Helvetica, sans-serif;
- color: #000;
- font-weight: bold;
- }
-
- input.textBox{
- size:3;
- font: 30px/35px Verdana, Geneva, Arial, Helvetica, sans-serif;
- font-weight: bold;
- height:35px;
- width: 60px;
- text-align:center;
- }
- .focus {
- background-color: #FF9900;
- }
- .incorrect{
- background-color: #FFFF00;
- }
-
- #help{
- display:none;
- position:absolute;
- right: 20%;
- top: 1%;
- width: 224px;
- height: 525px;
- background:url(../assets/image/help.png);
- z-index:40;
- }
- .backOpaque{
- background-color: #A4A4A4;
- opacity: 0.2;
- }
- #timerBar {
- float: left;
- margin-left: 300px;
- width: 150px;
- height:35px;
- padding-left: 10px;
- padding-top: 0px;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- color: #FFFF00;
- font-size: 16pt;
- font-weight: bold;
- }
- #timerTitle{
- float: left;
- margin-top: 20px;
- width: 50px;
- height: 35px;
- }
-
- .timerBoxes{ /* Show the timer running after the game has began.... */
- float:right;
- margin: 0.5em 0 0 0.1em;
- width: 80px;
- height: 30px;
- border: 2px dotted green;
- padding: 3px;
- color: blue;
- text-align:center;
- font : bold 25px Arial Black, Times New Roman;
- background: #ACC;
- }
diff --git a/examples/lessons/6_Maths_quickAddition/index.html b/examples/lessons/6_Maths_quickAddition/index.html deleted file mode 100755 index f5f5afc..0000000 --- a/examples/lessons/6_Maths_quickAddition/index.html +++ /dev/null @@ -1,41 +0,0 @@ -<!DOCTYPE html>
-<head>
- <title>Class 6 Maths Quick Addition</title>
- <meta name="keywords" content="karma,javascript,html5,sugar,sugarlabs,gsoc,ole,nepal" />
- <link type="text/css" rel="stylesheet" href="css/lesson.css" />
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <link type="image/ico" rel="icon" href="../../assets/default/image/favicon.ico" />
- <script type="text/javascript" src="js/jquery-1.3.2.min.js"></script>
- <script type="text/javascript" src="js/karma.js"></script>
- <script type="text/javascript" src="js/lesson.js"></script>
-</head>
-<body>
- <div id="header">
- <div id="topbtn_left"><a href="http://olenepal.org"><div id="linkOle"></div></a></div>
- <div id="lesson_title">
- <img src="assets/image/title_block_lt.png" width="33" height="89" align="absmiddle" />
- Quick Addition<span id="currentTitle"></span>
- <img src="assets/image/title_block_rt.png" width="33" height="89" align="absmiddle" />
- </div>
- <div id="topbtn_right"><a href="#"><div id="linkHelp"></div></a></div>
- <div id="topbtn_right"><a href="http://olenepal.org"><div id="linkOle"></div></a></div>
- </div>
-
- <div id="content">
- <div id="section"></div>
- <div id="help"></div>
- </div>
- <form name="delayForm">
- <input type="hidden" name="delayval" size="5">
- </form>
-
- <div id="footer">
- <div id ="timerBar">
- <div id="timerTitle">Timer:</div>
- <div id="timerBox1" class="timerBoxes"></div>
- </div>
- <div id="botbtn_right"><a href="#"><div id="linkStart"></div></a></div>
- <div id="botbtn_right"><a href="#"><div id="linkPlayAgain"></div></a></div>
- </div>
-</body>
-</html>
diff --git a/examples/lessons/6_Maths_quickAddition/js/jquery-1.3.2.min.js b/examples/lessons/6_Maths_quickAddition/js/jquery-1.3.2.min.js deleted file mode 100755 index b1ae21d..0000000 --- a/examples/lessons/6_Maths_quickAddition/js/jquery-1.3.2.min.js +++ /dev/null @@ -1,19 +0,0 @@ -/* - * jQuery JavaScript Library v1.3.2 - * http://jquery.com/ - * - * Copyright (c) 2009 John Resig - * Dual licensed under the MIT and GPL licenses. - * http://docs.jquery.com/License - * - * Date: 2009-02-19 17:34:21 -0500 (Thu, 19 Feb 2009) - * Revision: 6246 - */ -(function(){var l=this,g,y=l.jQuery,p=l.$,o=l.jQuery=l.$=function(E,F){return new o.fn.init(E,F)},D=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,f=/^.[^:#\[\.,]*$/;o.fn=o.prototype={init:function(E,H){E=E||document;if(E.nodeType){this[0]=E;this.length=1;this.context=E;return this}if(typeof E==="string"){var G=D.exec(E);if(G&&(G[1]||!H)){if(G[1]){E=o.clean([G[1]],H)}else{var I=document.getElementById(G[3]);if(I&&I.id!=G[3]){return o().find(E)}var F=o(I||[]);F.context=document;F.selector=E;return F}}else{return o(H).find(E)}}else{if(o.isFunction(E)){return o(document).ready(E)}}if(E.selector&&E.context){this.selector=E.selector;this.context=E.context}return this.setArray(o.isArray(E)?E:o.makeArray(E))},selector:"",jquery:"1.3.2",size:function(){return this.length},get:function(E){return E===g?Array.prototype.slice.call(this):this[E]},pushStack:function(F,H,E){var G=o(F);G.prevObject=this;G.context=this.context;if(H==="find"){G.selector=this.selector+(this.selector?" ":"")+E}else{if(H){G.selector=this.selector+"."+H+"("+E+")"}}return G},setArray:function(E){this.length=0;Array.prototype.push.apply(this,E);return this},each:function(F,E){return o.each(this,F,E)},index:function(E){return o.inArray(E&&E.jquery?E[0]:E,this)},attr:function(F,H,G){var E=F;if(typeof F==="string"){if(H===g){return this[0]&&o[G||"attr"](this[0],F)}else{E={};E[F]=H}}return this.each(function(I){for(F in E){o.attr(G?this.style:this,F,o.prop(this,E[F],G,I,F))}})},css:function(E,F){if((E=="width"||E=="height")&&parseFloat(F)<0){F=g}return this.attr(E,F,"curCSS")},text:function(F){if(typeof F!=="object"&&F!=null){return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(F))}var E="";o.each(F||this,function(){o.each(this.childNodes,function(){if(this.nodeType!=8){E+=this.nodeType!=1?this.nodeValue:o.fn.text([this])}})});return E},wrapAll:function(E){if(this[0]){var F=o(E,this[0].ownerDocument).clone();if(this[0].parentNode){F.insertBefore(this[0])}F.map(function(){var G=this;while(G.firstChild){G=G.firstChild}return G}).append(this)}return this},wrapInner:function(E){return this.each(function(){o(this).contents().wrapAll(E)})},wrap:function(E){return this.each(function(){o(this).wrapAll(E)})},append:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.appendChild(E)}})},prepend:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.insertBefore(E,this.firstChild)}})},before:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this)})},after:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this.nextSibling)})},end:function(){return this.prevObject||o([])},push:[].push,sort:[].sort,splice:[].splice,find:function(E){if(this.length===1){var F=this.pushStack([],"find",E);F.length=0;o.find(E,this[0],F);return F}else{return this.pushStack(o.unique(o.map(this,function(G){return o.find(E,G)})),"find",E)}},clone:function(G){var E=this.map(function(){if(!o.support.noCloneEvent&&!o.isXMLDoc(this)){var I=this.outerHTML;if(!I){var J=this.ownerDocument.createElement("div");J.appendChild(this.cloneNode(true));I=J.innerHTML}return o.clean([I.replace(/ jQuery\d+="(?:\d+|null)"/g,"").replace(/^\s*/,"")])[0]}else{return this.cloneNode(true)}});if(G===true){var H=this.find("*").andSelf(),F=0;E.find("*").andSelf().each(function(){if(this.nodeName!==H[F].nodeName){return}var I=o.data(H[F],"events");for(var K in I){for(var J in I[K]){o.event.add(this,K,I[K][J],I[K][J].data)}}F++})}return E},filter:function(E){return this.pushStack(o.isFunction(E)&&o.grep(this,function(G,F){return E.call(G,F)})||o.multiFilter(E,o.grep(this,function(F){return F.nodeType===1})),"filter",E)},closest:function(E){var G=o.expr.match.POS.test(E)?o(E):null,F=0;return this.map(function(){var H=this;while(H&&H.ownerDocument){if(G?G.index(H)>-1:o(H).is(E)){o.data(H,"closest",F);return H}H=H.parentNode;F++}})},not:function(E){if(typeof E==="string"){if(f.test(E)){return this.pushStack(o.multiFilter(E,this,true),"not",E)}else{E=o.multiFilter(E,this)}}var F=E.length&&E[E.length-1]!==g&&!E.nodeType;return this.filter(function(){return F?o.inArray(this,E)<0:this!=E})},add:function(E){return this.pushStack(o.unique(o.merge(this.get(),typeof E==="string"?o(E):o.makeArray(E))))},is:function(E){return !!E&&o.multiFilter(E,this).length>0},hasClass:function(E){return !!E&&this.is("."+E)},val:function(K){if(K===g){var E=this[0];if(E){if(o.nodeName(E,"option")){return(E.attributes.value||{}).specified?E.value:E.text}if(o.nodeName(E,"select")){var I=E.selectedIndex,L=[],M=E.options,H=E.type=="select-one";if(I<0){return null}for(var F=H?I:0,J=H?I+1:M.length;F<J;F++){var G=M[F];if(G.selected){K=o(G).val();if(H){return K}L.push(K)}}return L}return(E.value||"").replace(/\r/g,"")}return g}if(typeof K==="number"){K+=""}return this.each(function(){if(this.nodeType!=1){return}if(o.isArray(K)&&/radio|checkbox/.test(this.type)){this.checked=(o.inArray(this.value,K)>=0||o.inArray(this.name,K)>=0)}else{if(o.nodeName(this,"select")){var N=o.makeArray(K);o("option",this).each(function(){this.selected=(o.inArray(this.value,N)>=0||o.inArray(this.text,N)>=0)});if(!N.length){this.selectedIndex=-1}}else{this.value=K}}})},html:function(E){return E===g?(this[0]?this[0].innerHTML.replace(/ jQuery\d+="(?:\d+|null)"/g,""):null):this.empty().append(E)},replaceWith:function(E){return this.after(E).remove()},eq:function(E){return this.slice(E,+E+1)},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","))},map:function(E){return this.pushStack(o.map(this,function(G,F){return E.call(G,F,G)}))},andSelf:function(){return this.add(this.prevObject)},domManip:function(J,M,L){if(this[0]){var I=(this[0].ownerDocument||this[0]).createDocumentFragment(),F=o.clean(J,(this[0].ownerDocument||this[0]),I),H=I.firstChild;if(H){for(var G=0,E=this.length;G<E;G++){L.call(K(this[G],H),this.length>1||G>0?I.cloneNode(true):I)}}if(F){o.each(F,z)}}return this;function K(N,O){return M&&o.nodeName(N,"table")&&o.nodeName(O,"tr")?(N.getElementsByTagName("tbody")[0]||N.appendChild(N.ownerDocument.createElement("tbody"))):N}}};o.fn.init.prototype=o.fn;function z(E,F){if(F.src){o.ajax({url:F.src,async:false,dataType:"script"})}else{o.globalEval(F.text||F.textContent||F.innerHTML||"")}if(F.parentNode){F.parentNode.removeChild(F)}}function e(){return +new Date}o.extend=o.fn.extend=function(){var J=arguments[0]||{},H=1,I=arguments.length,E=false,G;if(typeof J==="boolean"){E=J;J=arguments[1]||{};H=2}if(typeof J!=="object"&&!o.isFunction(J)){J={}}if(I==H){J=this;--H}for(;H<I;H++){if((G=arguments[H])!=null){for(var F in G){var K=J[F],L=G[F];if(J===L){continue}if(E&&L&&typeof L==="object"&&!L.nodeType){J[F]=o.extend(E,K||(L.length!=null?[]:{}),L)}else{if(L!==g){J[F]=L}}}}}return J};var b=/z-?index|font-?weight|opacity|zoom|line-?height/i,q=document.defaultView||{},s=Object.prototype.toString;o.extend({noConflict:function(E){l.$=p;if(E){l.jQuery=y}return o},isFunction:function(E){return s.call(E)==="[object Function]"},isArray:function(E){return s.call(E)==="[object Array]"},isXMLDoc:function(E){return E.nodeType===9&&E.documentElement.nodeName!=="HTML"||!!E.ownerDocument&&o.isXMLDoc(E.ownerDocument)},globalEval:function(G){if(G&&/\S/.test(G)){var F=document.getElementsByTagName("head")[0]||document.documentElement,E=document.createElement("script");E.type="text/javascript";if(o.support.scriptEval){E.appendChild(document.createTextNode(G))}else{E.text=G}F.insertBefore(E,F.firstChild);F.removeChild(E)}},nodeName:function(F,E){return F.nodeName&&F.nodeName.toUpperCase()==E.toUpperCase()},each:function(G,K,F){var E,H=0,I=G.length;if(F){if(I===g){for(E in G){if(K.apply(G[E],F)===false){break}}}else{for(;H<I;){if(K.apply(G[H++],F)===false){break}}}}else{if(I===g){for(E in G){if(K.call(G[E],E,G[E])===false){break}}}else{for(var J=G[0];H<I&&K.call(J,H,J)!==false;J=G[++H]){}}}return G},prop:function(H,I,G,F,E){if(o.isFunction(I)){I=I.call(H,F)}return typeof I==="number"&&G=="curCSS"&&!b.test(E)?I+"px":I},className:{add:function(E,F){o.each((F||"").split(/\s+/),function(G,H){if(E.nodeType==1&&!o.className.has(E.className,H)){E.className+=(E.className?" ":"")+H}})},remove:function(E,F){if(E.nodeType==1){E.className=F!==g?o.grep(E.className.split(/\s+/),function(G){return !o.className.has(F,G)}).join(" "):""}},has:function(F,E){return F&&o.inArray(E,(F.className||F).toString().split(/\s+/))>-1}},swap:function(H,G,I){var E={};for(var F in G){E[F]=H.style[F];H.style[F]=G[F]}I.call(H);for(var F in G){H.style[F]=E[F]}},css:function(H,F,J,E){if(F=="width"||F=="height"){var L,G={position:"absolute",visibility:"hidden",display:"block"},K=F=="width"?["Left","Right"]:["Top","Bottom"];function I(){L=F=="width"?H.offsetWidth:H.offsetHeight;if(E==="border"){return}o.each(K,function(){if(!E){L-=parseFloat(o.curCSS(H,"padding"+this,true))||0}if(E==="margin"){L+=parseFloat(o.curCSS(H,"margin"+this,true))||0}else{L-=parseFloat(o.curCSS(H,"border"+this+"Width",true))||0}})}if(H.offsetWidth!==0){I()}else{o.swap(H,G,I)}return Math.max(0,Math.round(L))}return o.curCSS(H,F,J)},curCSS:function(I,F,G){var L,E=I.style;if(F=="opacity"&&!o.support.opacity){L=o.attr(E,"opacity");return L==""?"1":L}if(F.match(/float/i)){F=w}if(!G&&E&&E[F]){L=E[F]}else{if(q.getComputedStyle){if(F.match(/float/i)){F="float"}F=F.replace(/([A-Z])/g,"-$1").toLowerCase();var M=q.getComputedStyle(I,null);if(M){L=M.getPropertyValue(F)}if(F=="opacity"&&L==""){L="1"}}else{if(I.currentStyle){var J=F.replace(/\-(\w)/g,function(N,O){return O.toUpperCase()});L=I.currentStyle[F]||I.currentStyle[J];if(!/^\d+(px)?$/i.test(L)&&/^\d/.test(L)){var H=E.left,K=I.runtimeStyle.left;I.runtimeStyle.left=I.currentStyle.left;E.left=L||0;L=E.pixelLeft+"px";E.left=H;I.runtimeStyle.left=K}}}}return L},clean:function(F,K,I){K=K||document;if(typeof K.createElement==="undefined"){K=K.ownerDocument||K[0]&&K[0].ownerDocument||document}if(!I&&F.length===1&&typeof F[0]==="string"){var H=/^<(\w+)\s*\/?>$/.exec(F[0]);if(H){return[K.createElement(H[1])]}}var G=[],E=[],L=K.createElement("div");o.each(F,function(P,S){if(typeof S==="number"){S+=""}if(!S){return}if(typeof S==="string"){S=S.replace(/(<(\w+)[^>]*?)\/>/g,function(U,V,T){return T.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?U:V+"></"+T+">"});var O=S.replace(/^\s+/,"").substring(0,10).toLowerCase();var Q=!O.indexOf("<opt")&&[1,"<select multiple='multiple'>","</select>"]||!O.indexOf("<leg")&&[1,"<fieldset>","</fieldset>"]||O.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"<table>","</table>"]||!O.indexOf("<tr")&&[2,"<table><tbody>","</tbody></table>"]||(!O.indexOf("<td")||!O.indexOf("<th"))&&[3,"<table><tbody><tr>","</tr></tbody></table>"]||!O.indexOf("<col")&&[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"]||!o.support.htmlSerialize&&[1,"div<div>","</div>"]||[0,"",""];L.innerHTML=Q[1]+S+Q[2];while(Q[0]--){L=L.lastChild}if(!o.support.tbody){var R=/<tbody/i.test(S),N=!O.indexOf("<table")&&!R?L.firstChild&&L.firstChild.childNodes:Q[1]=="<table>"&&!R?L.childNodes:[];for(var M=N.length-1;M>=0;--M){if(o.nodeName(N[M],"tbody")&&!N[M].childNodes.length){N[M].parentNode.removeChild(N[M])}}}if(!o.support.leadingWhitespace&&/^\s/.test(S)){L.insertBefore(K.createTextNode(S.match(/^\s*/)[0]),L.firstChild)}S=o.makeArray(L.childNodes)}if(S.nodeType){G.push(S)}else{G=o.merge(G,S)}});if(I){for(var J=0;G[J];J++){if(o.nodeName(G[J],"script")&&(!G[J].type||G[J].type.toLowerCase()==="text/javascript")){E.push(G[J].parentNode?G[J].parentNode.removeChild(G[J]):G[J])}else{if(G[J].nodeType===1){G.splice.apply(G,[J+1,0].concat(o.makeArray(G[J].getElementsByTagName("script"))))}I.appendChild(G[J])}}return E}return G},attr:function(J,G,K){if(!J||J.nodeType==3||J.nodeType==8){return g}var H=!o.isXMLDoc(J),L=K!==g;G=H&&o.props[G]||G;if(J.tagName){var F=/href|src|style/.test(G);if(G=="selected"&&J.parentNode){J.parentNode.selectedIndex}if(G in J&&H&&!F){if(L){if(G=="type"&&o.nodeName(J,"input")&&J.parentNode){throw"type property can't be changed"}J[G]=K}if(o.nodeName(J,"form")&&J.getAttributeNode(G)){return J.getAttributeNode(G).nodeValue}if(G=="tabIndex"){var I=J.getAttributeNode("tabIndex");return I&&I.specified?I.value:J.nodeName.match(/(button|input|object|select|textarea)/i)?0:J.nodeName.match(/^(a|area)$/i)&&J.href?0:g}return J[G]}if(!o.support.style&&H&&G=="style"){return o.attr(J.style,"cssText",K)}if(L){J.setAttribute(G,""+K)}var E=!o.support.hrefNormalized&&H&&F?J.getAttribute(G,2):J.getAttribute(G);return E===null?g:E}if(!o.support.opacity&&G=="opacity"){if(L){J.zoom=1;J.filter=(J.filter||"").replace(/alpha\([^)]*\)/,"")+(parseInt(K)+""=="NaN"?"":"alpha(opacity="+K*100+")")}return J.filter&&J.filter.indexOf("opacity=")>=0?(parseFloat(J.filter.match(/opacity=([^)]*)/)[1])/100)+"":""}G=G.replace(/-([a-z])/ig,function(M,N){return N.toUpperCase()});if(L){J[G]=K}return J[G]},trim:function(E){return(E||"").replace(/^\s+|\s+$/g,"")},makeArray:function(G){var E=[];if(G!=null){var F=G.length;if(F==null||typeof G==="string"||o.isFunction(G)||G.setInterval){E[0]=G}else{while(F){E[--F]=G[F]}}}return E},inArray:function(G,H){for(var E=0,F=H.length;E<F;E++){if(H[E]===G){return E}}return -1},merge:function(H,E){var F=0,G,I=H.length;if(!o.support.getAll){while((G=E[F++])!=null){if(G.nodeType!=8){H[I++]=G}}}else{while((G=E[F++])!=null){H[I++]=G}}return H},unique:function(K){var F=[],E={};try{for(var G=0,H=K.length;G<H;G++){var J=o.data(K[G]);if(!E[J]){E[J]=true;F.push(K[G])}}}catch(I){F=K}return F},grep:function(F,J,E){var G=[];for(var H=0,I=F.length;H<I;H++){if(!E!=!J(F[H],H)){G.push(F[H])}}return G},map:function(E,J){var F=[];for(var G=0,H=E.length;G<H;G++){var I=J(E[G],G);if(I!=null){F[F.length]=I}}return F.concat.apply([],F)}});var C=navigator.userAgent.toLowerCase();o.browser={version:(C.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)||[0,"0"])[1],safari:/webkit/.test(C),opera:/opera/.test(C),msie:/msie/.test(C)&&!/opera/.test(C),mozilla:/mozilla/.test(C)&&!/(compatible|webkit)/.test(C)};o.each({parent:function(E){return E.parentNode},parents:function(E){return o.dir(E,"parentNode")},next:function(E){return o.nth(E,2,"nextSibling")},prev:function(E){return o.nth(E,2,"previousSibling")},nextAll:function(E){return o.dir(E,"nextSibling")},prevAll:function(E){return o.dir(E,"previousSibling")},siblings:function(E){return o.sibling(E.parentNode.firstChild,E)},children:function(E){return o.sibling(E.firstChild)},contents:function(E){return o.nodeName(E,"iframe")?E.contentDocument||E.contentWindow.document:o.makeArray(E.childNodes)}},function(E,F){o.fn[E]=function(G){var H=o.map(this,F);if(G&&typeof G=="string"){H=o.multiFilter(G,H)}return this.pushStack(o.unique(H),E,G)}});o.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(E,F){o.fn[E]=function(G){var J=[],L=o(G);for(var K=0,H=L.length;K<H;K++){var I=(K>0?this.clone(true):this).get();o.fn[F].apply(o(L[K]),I);J=J.concat(I)}return this.pushStack(J,E,G)}});o.each({removeAttr:function(E){o.attr(this,E,"");if(this.nodeType==1){this.removeAttribute(E)}},addClass:function(E){o.className.add(this,E)},removeClass:function(E){o.className.remove(this,E)},toggleClass:function(F,E){if(typeof E!=="boolean"){E=!o.className.has(this,F)}o.className[E?"add":"remove"](this,F)},remove:function(E){if(!E||o.filter(E,[this]).length){o("*",this).add([this]).each(function(){o.event.remove(this);o.removeData(this)});if(this.parentNode){this.parentNode.removeChild(this)}}},empty:function(){o(this).children().remove();while(this.firstChild){this.removeChild(this.firstChild)}}},function(E,F){o.fn[E]=function(){return this.each(F,arguments)}});function j(E,F){return E[0]&&parseInt(o.curCSS(E[0],F,true),10)||0}var h="jQuery"+e(),v=0,A={};o.extend({cache:{},data:function(F,E,G){F=F==l?A:F;var H=F[h];if(!H){H=F[h]=++v}if(E&&!o.cache[H]){o.cache[H]={}}if(G!==g){o.cache[H][E]=G}return E?o.cache[H][E]:H},removeData:function(F,E){F=F==l?A:F;var H=F[h];if(E){if(o.cache[H]){delete o.cache[H][E];E="";for(E in o.cache[H]){break}if(!E){o.removeData(F)}}}else{try{delete F[h]}catch(G){if(F.removeAttribute){F.removeAttribute(h)}}delete o.cache[H]}},queue:function(F,E,H){if(F){E=(E||"fx")+"queue";var G=o.data(F,E);if(!G||o.isArray(H)){G=o.data(F,E,o.makeArray(H))}else{if(H){G.push(H)}}}return G},dequeue:function(H,G){var E=o.queue(H,G),F=E.shift();if(!G||G==="fx"){F=E[0]}if(F!==g){F.call(H)}}});o.fn.extend({data:function(E,G){var H=E.split(".");H[1]=H[1]?"."+H[1]:"";if(G===g){var F=this.triggerHandler("getData"+H[1]+"!",[H[0]]);if(F===g&&this.length){F=o.data(this[0],E)}return F===g&&H[1]?this.data(H[0]):F}else{return this.trigger("setData"+H[1]+"!",[H[0],G]).each(function(){o.data(this,E,G)})}},removeData:function(E){return this.each(function(){o.removeData(this,E)})},queue:function(E,F){if(typeof E!=="string"){F=E;E="fx"}if(F===g){return o.queue(this[0],E)}return this.each(function(){var G=o.queue(this,E,F);if(E=="fx"&&G.length==1){G[0].call(this)}})},dequeue:function(E){return this.each(function(){o.dequeue(this,E)})}}); -/* - * Sizzle CSS Selector Engine - v0.9.3 - * Copyright 2009, The Dojo Foundation - * Released under the MIT, BSD, and GPL Licenses. - * More information: http://sizzlejs.com/ - */ -(function(){var R=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?/g,L=0,H=Object.prototype.toString;var F=function(Y,U,ab,ac){ab=ab||[];U=U||document;if(U.nodeType!==1&&U.nodeType!==9){return[]}if(!Y||typeof Y!=="string"){return ab}var Z=[],W,af,ai,T,ad,V,X=true;R.lastIndex=0;while((W=R.exec(Y))!==null){Z.push(W[1]);if(W[2]){V=RegExp.rightContext;break}}if(Z.length>1&&M.exec(Y)){if(Z.length===2&&I.relative[Z[0]]){af=J(Z[0]+Z[1],U)}else{af=I.relative[Z[0]]?[U]:F(Z.shift(),U);while(Z.length){Y=Z.shift();if(I.relative[Y]){Y+=Z.shift()}af=J(Y,af)}}}else{var ae=ac?{expr:Z.pop(),set:E(ac)}:F.find(Z.pop(),Z.length===1&&U.parentNode?U.parentNode:U,Q(U));af=F.filter(ae.expr,ae.set);if(Z.length>0){ai=E(af)}else{X=false}while(Z.length){var ah=Z.pop(),ag=ah;if(!I.relative[ah]){ah=""}else{ag=Z.pop()}if(ag==null){ag=U}I.relative[ah](ai,ag,Q(U))}}if(!ai){ai=af}if(!ai){throw"Syntax error, unrecognized expression: "+(ah||Y)}if(H.call(ai)==="[object Array]"){if(!X){ab.push.apply(ab,ai)}else{if(U.nodeType===1){for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&(ai[aa]===true||ai[aa].nodeType===1&&K(U,ai[aa]))){ab.push(af[aa])}}}else{for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&ai[aa].nodeType===1){ab.push(af[aa])}}}}}else{E(ai,ab)}if(V){F(V,U,ab,ac);if(G){hasDuplicate=false;ab.sort(G);if(hasDuplicate){for(var aa=1;aa<ab.length;aa++){if(ab[aa]===ab[aa-1]){ab.splice(aa--,1)}}}}}return ab};F.matches=function(T,U){return F(T,null,null,U)};F.find=function(aa,T,ab){var Z,X;if(!aa){return[]}for(var W=0,V=I.order.length;W<V;W++){var Y=I.order[W],X;if((X=I.match[Y].exec(aa))){var U=RegExp.leftContext;if(U.substr(U.length-1)!=="\\"){X[1]=(X[1]||"").replace(/\\/g,"");Z=I.find[Y](X,T,ab);if(Z!=null){aa=aa.replace(I.match[Y],"");break}}}}if(!Z){Z=T.getElementsByTagName("*")}return{set:Z,expr:aa}};F.filter=function(ad,ac,ag,W){var V=ad,ai=[],aa=ac,Y,T,Z=ac&&ac[0]&&Q(ac[0]);while(ad&&ac.length){for(var ab in I.filter){if((Y=I.match[ab].exec(ad))!=null){var U=I.filter[ab],ah,af;T=false;if(aa==ai){ai=[]}if(I.preFilter[ab]){Y=I.preFilter[ab](Y,aa,ag,ai,W,Z);if(!Y){T=ah=true}else{if(Y===true){continue}}}if(Y){for(var X=0;(af=aa[X])!=null;X++){if(af){ah=U(af,Y,X,aa);var ae=W^!!ah;if(ag&&ah!=null){if(ae){T=true}else{aa[X]=false}}else{if(ae){ai.push(af);T=true}}}}}if(ah!==g){if(!ag){aa=ai}ad=ad.replace(I.match[ab],"");if(!T){return[]}break}}}if(ad==V){if(T==null){throw"Syntax error, unrecognized expression: "+ad}else{break}}V=ad}return aa};var I=F.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF_-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF_-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*_-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+-]*)\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF_-]|\\.)+)(?:\((['"]*)((?:\([^\)]+\)|[^\2\(\)]*)+)\2\))?/},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(T){return T.getAttribute("href")}},relative:{"+":function(aa,T,Z){var X=typeof T==="string",ab=X&&!/\W/.test(T),Y=X&&!ab;if(ab&&!Z){T=T.toUpperCase()}for(var W=0,V=aa.length,U;W<V;W++){if((U=aa[W])){while((U=U.previousSibling)&&U.nodeType!==1){}aa[W]=Y||U&&U.nodeName===T?U||false:U===T}}if(Y){F.filter(T,aa,true)}},">":function(Z,U,aa){var X=typeof U==="string";if(X&&!/\W/.test(U)){U=aa?U:U.toUpperCase();for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){var W=Y.parentNode;Z[V]=W.nodeName===U?W:false}}}else{for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){Z[V]=X?Y.parentNode:Y.parentNode===U}}if(X){F.filter(U,Z,true)}}},"":function(W,U,Y){var V=L++,T=S;if(!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("parentNode",U,V,W,X,Y)},"~":function(W,U,Y){var V=L++,T=S;if(typeof U==="string"&&!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("previousSibling",U,V,W,X,Y)}},find:{ID:function(U,V,W){if(typeof V.getElementById!=="undefined"&&!W){var T=V.getElementById(U[1]);return T?[T]:[]}},NAME:function(V,Y,Z){if(typeof Y.getElementsByName!=="undefined"){var U=[],X=Y.getElementsByName(V[1]);for(var W=0,T=X.length;W<T;W++){if(X[W].getAttribute("name")===V[1]){U.push(X[W])}}return U.length===0?null:U}},TAG:function(T,U){return U.getElementsByTagName(T[1])}},preFilter:{CLASS:function(W,U,V,T,Z,aa){W=" "+W[1].replace(/\\/g,"")+" ";if(aa){return W}for(var X=0,Y;(Y=U[X])!=null;X++){if(Y){if(Z^(Y.className&&(" "+Y.className+" ").indexOf(W)>=0)){if(!V){T.push(Y)}}else{if(V){U[X]=false}}}}return false},ID:function(T){return T[1].replace(/\\/g,"")},TAG:function(U,T){for(var V=0;T[V]===false;V++){}return T[V]&&Q(T[V])?U[1]:U[1].toUpperCase()},CHILD:function(T){if(T[1]=="nth"){var U=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(T[2]=="even"&&"2n"||T[2]=="odd"&&"2n+1"||!/\D/.test(T[2])&&"0n+"+T[2]||T[2]);T[2]=(U[1]+(U[2]||1))-0;T[3]=U[3]-0}T[0]=L++;return T},ATTR:function(X,U,V,T,Y,Z){var W=X[1].replace(/\\/g,"");if(!Z&&I.attrMap[W]){X[1]=I.attrMap[W]}if(X[2]==="~="){X[4]=" "+X[4]+" "}return X},PSEUDO:function(X,U,V,T,Y){if(X[1]==="not"){if(X[3].match(R).length>1||/^\w/.test(X[3])){X[3]=F(X[3],null,null,U)}else{var W=F.filter(X[3],U,V,true^Y);if(!V){T.push.apply(T,W)}return false}}else{if(I.match.POS.test(X[0])||I.match.CHILD.test(X[0])){return true}}return X},POS:function(T){T.unshift(true);return T}},filters:{enabled:function(T){return T.disabled===false&&T.type!=="hidden"},disabled:function(T){return T.disabled===true},checked:function(T){return T.checked===true},selected:function(T){T.parentNode.selectedIndex;return T.selected===true},parent:function(T){return !!T.firstChild},empty:function(T){return !T.firstChild},has:function(V,U,T){return !!F(T[3],V).length},header:function(T){return/h\d/i.test(T.nodeName)},text:function(T){return"text"===T.type},radio:function(T){return"radio"===T.type},checkbox:function(T){return"checkbox"===T.type},file:function(T){return"file"===T.type},password:function(T){return"password"===T.type},submit:function(T){return"submit"===T.type},image:function(T){return"image"===T.type},reset:function(T){return"reset"===T.type},button:function(T){return"button"===T.type||T.nodeName.toUpperCase()==="BUTTON"},input:function(T){return/input|select|textarea|button/i.test(T.nodeName)}},setFilters:{first:function(U,T){return T===0},last:function(V,U,T,W){return U===W.length-1},even:function(U,T){return T%2===0},odd:function(U,T){return T%2===1},lt:function(V,U,T){return U<T[3]-0},gt:function(V,U,T){return U>T[3]-0},nth:function(V,U,T){return T[3]-0==U},eq:function(V,U,T){return T[3]-0==U}},filter:{PSEUDO:function(Z,V,W,aa){var U=V[1],X=I.filters[U];if(X){return X(Z,W,V,aa)}else{if(U==="contains"){return(Z.textContent||Z.innerText||"").indexOf(V[3])>=0}else{if(U==="not"){var Y=V[3];for(var W=0,T=Y.length;W<T;W++){if(Y[W]===Z){return false}}return true}}}},CHILD:function(T,W){var Z=W[1],U=T;switch(Z){case"only":case"first":while(U=U.previousSibling){if(U.nodeType===1){return false}}if(Z=="first"){return true}U=T;case"last":while(U=U.nextSibling){if(U.nodeType===1){return false}}return true;case"nth":var V=W[2],ac=W[3];if(V==1&&ac==0){return true}var Y=W[0],ab=T.parentNode;if(ab&&(ab.sizcache!==Y||!T.nodeIndex)){var X=0;for(U=ab.firstChild;U;U=U.nextSibling){if(U.nodeType===1){U.nodeIndex=++X}}ab.sizcache=Y}var aa=T.nodeIndex-ac;if(V==0){return aa==0}else{return(aa%V==0&&aa/V>=0)}}},ID:function(U,T){return U.nodeType===1&&U.getAttribute("id")===T},TAG:function(U,T){return(T==="*"&&U.nodeType===1)||U.nodeName===T},CLASS:function(U,T){return(" "+(U.className||U.getAttribute("class"))+" ").indexOf(T)>-1},ATTR:function(Y,W){var V=W[1],T=I.attrHandle[V]?I.attrHandle[V](Y):Y[V]!=null?Y[V]:Y.getAttribute(V),Z=T+"",X=W[2],U=W[4];return T==null?X==="!=":X==="="?Z===U:X==="*="?Z.indexOf(U)>=0:X==="~="?(" "+Z+" ").indexOf(U)>=0:!U?Z&&T!==false:X==="!="?Z!=U:X==="^="?Z.indexOf(U)===0:X==="$="?Z.substr(Z.length-U.length)===U:X==="|="?Z===U||Z.substr(0,U.length+1)===U+"-":false},POS:function(X,U,V,Y){var T=U[2],W=I.setFilters[T];if(W){return W(X,V,U,Y)}}}};var M=I.match.POS;for(var O in I.match){I.match[O]=RegExp(I.match[O].source+/(?![^\[]*\])(?![^\(]*\))/.source)}var E=function(U,T){U=Array.prototype.slice.call(U);if(T){T.push.apply(T,U);return T}return U};try{Array.prototype.slice.call(document.documentElement.childNodes)}catch(N){E=function(X,W){var U=W||[];if(H.call(X)==="[object Array]"){Array.prototype.push.apply(U,X)}else{if(typeof X.length==="number"){for(var V=0,T=X.length;V<T;V++){U.push(X[V])}}else{for(var V=0;X[V];V++){U.push(X[V])}}}return U}}var G;if(document.documentElement.compareDocumentPosition){G=function(U,T){var V=U.compareDocumentPosition(T)&4?-1:U===T?0:1;if(V===0){hasDuplicate=true}return V}}else{if("sourceIndex" in document.documentElement){G=function(U,T){var V=U.sourceIndex-T.sourceIndex;if(V===0){hasDuplicate=true}return V}}else{if(document.createRange){G=function(W,U){var V=W.ownerDocument.createRange(),T=U.ownerDocument.createRange();V.selectNode(W);V.collapse(true);T.selectNode(U);T.collapse(true);var X=V.compareBoundaryPoints(Range.START_TO_END,T);if(X===0){hasDuplicate=true}return X}}}}(function(){var U=document.createElement("form"),V="script"+(new Date).getTime();U.innerHTML="<input name='"+V+"'/>";var T=document.documentElement;T.insertBefore(U,T.firstChild);if(!!document.getElementById(V)){I.find.ID=function(X,Y,Z){if(typeof Y.getElementById!=="undefined"&&!Z){var W=Y.getElementById(X[1]);return W?W.id===X[1]||typeof W.getAttributeNode!=="undefined"&&W.getAttributeNode("id").nodeValue===X[1]?[W]:g:[]}};I.filter.ID=function(Y,W){var X=typeof Y.getAttributeNode!=="undefined"&&Y.getAttributeNode("id");return Y.nodeType===1&&X&&X.nodeValue===W}}T.removeChild(U)})();(function(){var T=document.createElement("div");T.appendChild(document.createComment(""));if(T.getElementsByTagName("*").length>0){I.find.TAG=function(U,Y){var X=Y.getElementsByTagName(U[1]);if(U[1]==="*"){var W=[];for(var V=0;X[V];V++){if(X[V].nodeType===1){W.push(X[V])}}X=W}return X}}T.innerHTML="<a href='#'></a>";if(T.firstChild&&typeof T.firstChild.getAttribute!=="undefined"&&T.firstChild.getAttribute("href")!=="#"){I.attrHandle.href=function(U){return U.getAttribute("href",2)}}})();if(document.querySelectorAll){(function(){var T=F,U=document.createElement("div");U.innerHTML="<p class='TEST'></p>";if(U.querySelectorAll&&U.querySelectorAll(".TEST").length===0){return}F=function(Y,X,V,W){X=X||document;if(!W&&X.nodeType===9&&!Q(X)){try{return E(X.querySelectorAll(Y),V)}catch(Z){}}return T(Y,X,V,W)};F.find=T.find;F.filter=T.filter;F.selectors=T.selectors;F.matches=T.matches})()}if(document.getElementsByClassName&&document.documentElement.getElementsByClassName){(function(){var T=document.createElement("div");T.innerHTML="<div class='test e'></div><div class='test'></div>";if(T.getElementsByClassName("e").length===0){return}T.lastChild.className="e";if(T.getElementsByClassName("e").length===1){return}I.order.splice(1,0,"CLASS");I.find.CLASS=function(U,V,W){if(typeof V.getElementsByClassName!=="undefined"&&!W){return V.getElementsByClassName(U[1])}}})()}function P(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1&&!ac){T.sizcache=Y;T.sizset=W}if(T.nodeName===Z){X=T;break}T=T[U]}ad[W]=X}}}function S(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1){if(!ac){T.sizcache=Y;T.sizset=W}if(typeof Z!=="string"){if(T===Z){X=true;break}}else{if(F.filter(Z,[T]).length>0){X=T;break}}}T=T[U]}ad[W]=X}}}var K=document.compareDocumentPosition?function(U,T){return U.compareDocumentPosition(T)&16}:function(U,T){return U!==T&&(U.contains?U.contains(T):true)};var Q=function(T){return T.nodeType===9&&T.documentElement.nodeName!=="HTML"||!!T.ownerDocument&&Q(T.ownerDocument)};var J=function(T,aa){var W=[],X="",Y,V=aa.nodeType?[aa]:aa;while((Y=I.match.PSEUDO.exec(T))){X+=Y[0];T=T.replace(I.match.PSEUDO,"")}T=I.relative[T]?T+"*":T;for(var Z=0,U=V.length;Z<U;Z++){F(T,V[Z],W)}return F.filter(X,W)};o.find=F;o.filter=F.filter;o.expr=F.selectors;o.expr[":"]=o.expr.filters;F.selectors.filters.hidden=function(T){return T.offsetWidth===0||T.offsetHeight===0};F.selectors.filters.visible=function(T){return T.offsetWidth>0||T.offsetHeight>0};F.selectors.filters.animated=function(T){return o.grep(o.timers,function(U){return T===U.elem}).length};o.multiFilter=function(V,T,U){if(U){V=":not("+V+")"}return F.matches(V,T)};o.dir=function(V,U){var T=[],W=V[U];while(W&&W!=document){if(W.nodeType==1){T.push(W)}W=W[U]}return T};o.nth=function(X,T,V,W){T=T||1;var U=0;for(;X;X=X[V]){if(X.nodeType==1&&++U==T){break}}return X};o.sibling=function(V,U){var T=[];for(;V;V=V.nextSibling){if(V.nodeType==1&&V!=U){T.push(V)}}return T};return;l.Sizzle=F})();o.event={add:function(I,F,H,K){if(I.nodeType==3||I.nodeType==8){return}if(I.setInterval&&I!=l){I=l}if(!H.guid){H.guid=this.guid++}if(K!==g){var G=H;H=this.proxy(G);H.data=K}var E=o.data(I,"events")||o.data(I,"events",{}),J=o.data(I,"handle")||o.data(I,"handle",function(){return typeof o!=="undefined"&&!o.event.triggered?o.event.handle.apply(arguments.callee.elem,arguments):g});J.elem=I;o.each(F.split(/\s+/),function(M,N){var O=N.split(".");N=O.shift();H.type=O.slice().sort().join(".");var L=E[N];if(o.event.specialAll[N]){o.event.specialAll[N].setup.call(I,K,O)}if(!L){L=E[N]={};if(!o.event.special[N]||o.event.special[N].setup.call(I,K,O)===false){if(I.addEventListener){I.addEventListener(N,J,false)}else{if(I.attachEvent){I.attachEvent("on"+N,J)}}}}L[H.guid]=H;o.event.global[N]=true});I=null},guid:1,global:{},remove:function(K,H,J){if(K.nodeType==3||K.nodeType==8){return}var G=o.data(K,"events"),F,E;if(G){if(H===g||(typeof H==="string"&&H.charAt(0)==".")){for(var I in G){this.remove(K,I+(H||""))}}else{if(H.type){J=H.handler;H=H.type}o.each(H.split(/\s+/),function(M,O){var Q=O.split(".");O=Q.shift();var N=RegExp("(^|\\.)"+Q.slice().sort().join(".*\\.")+"(\\.|$)");if(G[O]){if(J){delete G[O][J.guid]}else{for(var P in G[O]){if(N.test(G[O][P].type)){delete G[O][P]}}}if(o.event.specialAll[O]){o.event.specialAll[O].teardown.call(K,Q)}for(F in G[O]){break}if(!F){if(!o.event.special[O]||o.event.special[O].teardown.call(K,Q)===false){if(K.removeEventListener){K.removeEventListener(O,o.data(K,"handle"),false)}else{if(K.detachEvent){K.detachEvent("on"+O,o.data(K,"handle"))}}}F=null;delete G[O]}}})}for(F in G){break}if(!F){var L=o.data(K,"handle");if(L){L.elem=null}o.removeData(K,"events");o.removeData(K,"handle")}}},trigger:function(I,K,H,E){var G=I.type||I;if(!E){I=typeof I==="object"?I[h]?I:o.extend(o.Event(G),I):o.Event(G);if(G.indexOf("!")>=0){I.type=G=G.slice(0,-1);I.exclusive=true}if(!H){I.stopPropagation();if(this.global[G]){o.each(o.cache,function(){if(this.events&&this.events[G]){o.event.trigger(I,K,this.handle.elem)}})}}if(!H||H.nodeType==3||H.nodeType==8){return g}I.result=g;I.target=H;K=o.makeArray(K);K.unshift(I)}I.currentTarget=H;var J=o.data(H,"handle");if(J){J.apply(H,K)}if((!H[G]||(o.nodeName(H,"a")&&G=="click"))&&H["on"+G]&&H["on"+G].apply(H,K)===false){I.result=false}if(!E&&H[G]&&!I.isDefaultPrevented()&&!(o.nodeName(H,"a")&&G=="click")){this.triggered=true;try{H[G]()}catch(L){}}this.triggered=false;if(!I.isPropagationStopped()){var F=H.parentNode||H.ownerDocument;if(F){o.event.trigger(I,K,F,true)}}},handle:function(K){var J,E;K=arguments[0]=o.event.fix(K||l.event);K.currentTarget=this;var L=K.type.split(".");K.type=L.shift();J=!L.length&&!K.exclusive;var I=RegExp("(^|\\.)"+L.slice().sort().join(".*\\.")+"(\\.|$)");E=(o.data(this,"events")||{})[K.type];for(var G in E){var H=E[G];if(J||I.test(H.type)){K.handler=H;K.data=H.data;var F=H.apply(this,arguments);if(F!==g){K.result=F;if(F===false){K.preventDefault();K.stopPropagation()}}if(K.isImmediatePropagationStopped()){break}}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(H){if(H[h]){return H}var F=H;H=o.Event(F);for(var G=this.props.length,J;G;){J=this.props[--G];H[J]=F[J]}if(!H.target){H.target=H.srcElement||document}if(H.target.nodeType==3){H.target=H.target.parentNode}if(!H.relatedTarget&&H.fromElement){H.relatedTarget=H.fromElement==H.target?H.toElement:H.fromElement}if(H.pageX==null&&H.clientX!=null){var I=document.documentElement,E=document.body;H.pageX=H.clientX+(I&&I.scrollLeft||E&&E.scrollLeft||0)-(I.clientLeft||0);H.pageY=H.clientY+(I&&I.scrollTop||E&&E.scrollTop||0)-(I.clientTop||0)}if(!H.which&&((H.charCode||H.charCode===0)?H.charCode:H.keyCode)){H.which=H.charCode||H.keyCode}if(!H.metaKey&&H.ctrlKey){H.metaKey=H.ctrlKey}if(!H.which&&H.button){H.which=(H.button&1?1:(H.button&2?3:(H.button&4?2:0)))}return H},proxy:function(F,E){E=E||function(){return F.apply(this,arguments)};E.guid=F.guid=F.guid||E.guid||this.guid++;return E},special:{ready:{setup:B,teardown:function(){}}},specialAll:{live:{setup:function(E,F){o.event.add(this,F[0],c)},teardown:function(G){if(G.length){var E=0,F=RegExp("(^|\\.)"+G[0]+"(\\.|$)");o.each((o.data(this,"events").live||{}),function(){if(F.test(this.type)){E++}});if(E<1){o.event.remove(this,G[0],c)}}}}}};o.Event=function(E){if(!this.preventDefault){return new o.Event(E)}if(E&&E.type){this.originalEvent=E;this.type=E.type}else{this.type=E}this.timeStamp=e();this[h]=true};function k(){return false}function u(){return true}o.Event.prototype={preventDefault:function(){this.isDefaultPrevented=u;var E=this.originalEvent;if(!E){return}if(E.preventDefault){E.preventDefault()}E.returnValue=false},stopPropagation:function(){this.isPropagationStopped=u;var E=this.originalEvent;if(!E){return}if(E.stopPropagation){E.stopPropagation()}E.cancelBubble=true},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=u;this.stopPropagation()},isDefaultPrevented:k,isPropagationStopped:k,isImmediatePropagationStopped:k};var a=function(F){var E=F.relatedTarget;while(E&&E!=this){try{E=E.parentNode}catch(G){E=this}}if(E!=this){F.type=F.data;o.event.handle.apply(this,arguments)}};o.each({mouseover:"mouseenter",mouseout:"mouseleave"},function(F,E){o.event.special[E]={setup:function(){o.event.add(this,F,a,E)},teardown:function(){o.event.remove(this,F,a)}}});o.fn.extend({bind:function(F,G,E){return F=="unload"?this.one(F,G,E):this.each(function(){o.event.add(this,F,E||G,E&&G)})},one:function(G,H,F){var E=o.event.proxy(F||H,function(I){o(this).unbind(I,E);return(F||H).apply(this,arguments)});return this.each(function(){o.event.add(this,G,E,F&&H)})},unbind:function(F,E){return this.each(function(){o.event.remove(this,F,E)})},trigger:function(E,F){return this.each(function(){o.event.trigger(E,F,this)})},triggerHandler:function(E,G){if(this[0]){var F=o.Event(E);F.preventDefault();F.stopPropagation();o.event.trigger(F,G,this[0]);return F.result}},toggle:function(G){var E=arguments,F=1;while(F<E.length){o.event.proxy(G,E[F++])}return this.click(o.event.proxy(G,function(H){this.lastToggle=(this.lastToggle||0)%F;H.preventDefault();return E[this.lastToggle++].apply(this,arguments)||false}))},hover:function(E,F){return this.mouseenter(E).mouseleave(F)},ready:function(E){B();if(o.isReady){E.call(document,o)}else{o.readyList.push(E)}return this},live:function(G,F){var E=o.event.proxy(F);E.guid+=this.selector+G;o(document).bind(i(G,this.selector),this.selector,E);return this},die:function(F,E){o(document).unbind(i(F,this.selector),E?{guid:E.guid+this.selector+F}:null);return this}});function c(H){var E=RegExp("(^|\\.)"+H.type+"(\\.|$)"),G=true,F=[];o.each(o.data(this,"events").live||[],function(I,J){if(E.test(J.type)){var K=o(H.target).closest(J.data)[0];if(K){F.push({elem:K,fn:J})}}});F.sort(function(J,I){return o.data(J.elem,"closest")-o.data(I.elem,"closest")});o.each(F,function(){if(this.fn.call(this.elem,H,this.fn.data)===false){return(G=false)}});return G}function i(F,E){return["live",F,E.replace(/\./g,"`").replace(/ /g,"|")].join(".")}o.extend({isReady:false,readyList:[],ready:function(){if(!o.isReady){o.isReady=true;if(o.readyList){o.each(o.readyList,function(){this.call(document,o)});o.readyList=null}o(document).triggerHandler("ready")}}});var x=false;function B(){if(x){return}x=true;if(document.addEventListener){document.addEventListener("DOMContentLoaded",function(){document.removeEventListener("DOMContentLoaded",arguments.callee,false);o.ready()},false)}else{if(document.attachEvent){document.attachEvent("onreadystatechange",function(){if(document.readyState==="complete"){document.detachEvent("onreadystatechange",arguments.callee);o.ready()}});if(document.documentElement.doScroll&&l==l.top){(function(){if(o.isReady){return}try{document.documentElement.doScroll("left")}catch(E){setTimeout(arguments.callee,0);return}o.ready()})()}}}o.event.add(l,"load",o.ready)}o.each(("blur,focus,load,resize,scroll,unload,click,dblclick,mousedown,mouseup,mousemove,mouseover,mouseout,mouseenter,mouseleave,change,select,submit,keydown,keypress,keyup,error").split(","),function(F,E){o.fn[E]=function(G){return G?this.bind(E,G):this.trigger(E)}});o(l).bind("unload",function(){for(var E in o.cache){if(E!=1&&o.cache[E].handle){o.event.remove(o.cache[E].handle.elem)}}});(function(){o.support={};var F=document.documentElement,G=document.createElement("script"),K=document.createElement("div"),J="script"+(new Date).getTime();K.style.display="none";K.innerHTML=' <link/><table></table><a href="/a" style="color:red;float:left;opacity:.5;">a</a><select><option>text</option></select><object><param/></object>';var H=K.getElementsByTagName("*"),E=K.getElementsByTagName("a")[0];if(!H||!H.length||!E){return}o.support={leadingWhitespace:K.firstChild.nodeType==3,tbody:!K.getElementsByTagName("tbody").length,objectAll:!!K.getElementsByTagName("object")[0].getElementsByTagName("*").length,htmlSerialize:!!K.getElementsByTagName("link").length,style:/red/.test(E.getAttribute("style")),hrefNormalized:E.getAttribute("href")==="/a",opacity:E.style.opacity==="0.5",cssFloat:!!E.style.cssFloat,scriptEval:false,noCloneEvent:true,boxModel:null};G.type="text/javascript";try{G.appendChild(document.createTextNode("window."+J+"=1;"))}catch(I){}F.insertBefore(G,F.firstChild);if(l[J]){o.support.scriptEval=true;delete l[J]}F.removeChild(G);if(K.attachEvent&&K.fireEvent){K.attachEvent("onclick",function(){o.support.noCloneEvent=false;K.detachEvent("onclick",arguments.callee)});K.cloneNode(true).fireEvent("onclick")}o(function(){var L=document.createElement("div");L.style.width=L.style.paddingLeft="1px";document.body.appendChild(L);o.boxModel=o.support.boxModel=L.offsetWidth===2;document.body.removeChild(L).style.display="none"})})();var w=o.support.cssFloat?"cssFloat":"styleFloat";o.props={"for":"htmlFor","class":"className","float":w,cssFloat:w,styleFloat:w,readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",tabindex:"tabIndex"};o.fn.extend({_load:o.fn.load,load:function(G,J,K){if(typeof G!=="string"){return this._load(G)}var I=G.indexOf(" ");if(I>=0){var E=G.slice(I,G.length);G=G.slice(0,I)}var H="GET";if(J){if(o.isFunction(J)){K=J;J=null}else{if(typeof J==="object"){J=o.param(J);H="POST"}}}var F=this;o.ajax({url:G,type:H,dataType:"html",data:J,complete:function(M,L){if(L=="success"||L=="notmodified"){F.html(E?o("<div/>").append(M.responseText.replace(/<script(.|\s)*?\/script>/g,"")).find(E):M.responseText)}if(K){F.each(K,[M.responseText,L,M])}}});return this},serialize:function(){return o.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?o.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password|search/i.test(this.type))}).map(function(E,F){var G=o(this).val();return G==null?null:o.isArray(G)?o.map(G,function(I,H){return{name:F.name,value:I}}):{name:F.name,value:G}}).get()}});o.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(E,F){o.fn[F]=function(G){return this.bind(F,G)}});var r=e();o.extend({get:function(E,G,H,F){if(o.isFunction(G)){H=G;G=null}return o.ajax({type:"GET",url:E,data:G,success:H,dataType:F})},getScript:function(E,F){return o.get(E,null,F,"script")},getJSON:function(E,F,G){return o.get(E,F,G,"json")},post:function(E,G,H,F){if(o.isFunction(G)){H=G;G={}}return o.ajax({type:"POST",url:E,data:G,success:H,dataType:F})},ajaxSetup:function(E){o.extend(o.ajaxSettings,E)},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return l.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest()},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(M){M=o.extend(true,M,o.extend(true,{},o.ajaxSettings,M));var W,F=/=\?(&|$)/g,R,V,G=M.type.toUpperCase();if(M.data&&M.processData&&typeof M.data!=="string"){M.data=o.param(M.data)}if(M.dataType=="jsonp"){if(G=="GET"){if(!M.url.match(F)){M.url+=(M.url.match(/\?/)?"&":"?")+(M.jsonp||"callback")+"=?"}}else{if(!M.data||!M.data.match(F)){M.data=(M.data?M.data+"&":"")+(M.jsonp||"callback")+"=?"}}M.dataType="json"}if(M.dataType=="json"&&(M.data&&M.data.match(F)||M.url.match(F))){W="jsonp"+r++;if(M.data){M.data=(M.data+"").replace(F,"="+W+"$1")}M.url=M.url.replace(F,"="+W+"$1");M.dataType="script";l[W]=function(X){V=X;I();L();l[W]=g;try{delete l[W]}catch(Y){}if(H){H.removeChild(T)}}}if(M.dataType=="script"&&M.cache==null){M.cache=false}if(M.cache===false&&G=="GET"){var E=e();var U=M.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+E+"$2");M.url=U+((U==M.url)?(M.url.match(/\?/)?"&":"?")+"_="+E:"")}if(M.data&&G=="GET"){M.url+=(M.url.match(/\?/)?"&":"?")+M.data;M.data=null}if(M.global&&!o.active++){o.event.trigger("ajaxStart")}var Q=/^(\w+:)?\/\/([^\/?#]+)/.exec(M.url);if(M.dataType=="script"&&G=="GET"&&Q&&(Q[1]&&Q[1]!=location.protocol||Q[2]!=location.host)){var H=document.getElementsByTagName("head")[0];var T=document.createElement("script");T.src=M.url;if(M.scriptCharset){T.charset=M.scriptCharset}if(!W){var O=false;T.onload=T.onreadystatechange=function(){if(!O&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){O=true;I();L();T.onload=T.onreadystatechange=null;H.removeChild(T)}}}H.appendChild(T);return g}var K=false;var J=M.xhr();if(M.username){J.open(G,M.url,M.async,M.username,M.password)}else{J.open(G,M.url,M.async)}try{if(M.data){J.setRequestHeader("Content-Type",M.contentType)}if(M.ifModified){J.setRequestHeader("If-Modified-Since",o.lastModified[M.url]||"Thu, 01 Jan 1970 00:00:00 GMT")}J.setRequestHeader("X-Requested-With","XMLHttpRequest");J.setRequestHeader("Accept",M.dataType&&M.accepts[M.dataType]?M.accepts[M.dataType]+", */*":M.accepts._default)}catch(S){}if(M.beforeSend&&M.beforeSend(J,M)===false){if(M.global&&!--o.active){o.event.trigger("ajaxStop")}J.abort();return false}if(M.global){o.event.trigger("ajaxSend",[J,M])}var N=function(X){if(J.readyState==0){if(P){clearInterval(P);P=null;if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}}else{if(!K&&J&&(J.readyState==4||X=="timeout")){K=true;if(P){clearInterval(P);P=null}R=X=="timeout"?"timeout":!o.httpSuccess(J)?"error":M.ifModified&&o.httpNotModified(J,M.url)?"notmodified":"success";if(R=="success"){try{V=o.httpData(J,M.dataType,M)}catch(Z){R="parsererror"}}if(R=="success"){var Y;try{Y=J.getResponseHeader("Last-Modified")}catch(Z){}if(M.ifModified&&Y){o.lastModified[M.url]=Y}if(!W){I()}}else{o.handleError(M,J,R)}L();if(X){J.abort()}if(M.async){J=null}}}};if(M.async){var P=setInterval(N,13);if(M.timeout>0){setTimeout(function(){if(J&&!K){N("timeout")}},M.timeout)}}try{J.send(M.data)}catch(S){o.handleError(M,J,null,S)}if(!M.async){N()}function I(){if(M.success){M.success(V,R)}if(M.global){o.event.trigger("ajaxSuccess",[J,M])}}function L(){if(M.complete){M.complete(J,R)}if(M.global){o.event.trigger("ajaxComplete",[J,M])}if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}return J},handleError:function(F,H,E,G){if(F.error){F.error(H,E,G)}if(F.global){o.event.trigger("ajaxError",[H,F,G])}},active:0,httpSuccess:function(F){try{return !F.status&&location.protocol=="file:"||(F.status>=200&&F.status<300)||F.status==304||F.status==1223}catch(E){}return false},httpNotModified:function(G,E){try{var H=G.getResponseHeader("Last-Modified");return G.status==304||H==o.lastModified[E]}catch(F){}return false},httpData:function(J,H,G){var F=J.getResponseHeader("content-type"),E=H=="xml"||!H&&F&&F.indexOf("xml")>=0,I=E?J.responseXML:J.responseText;if(E&&I.documentElement.tagName=="parsererror"){throw"parsererror"}if(G&&G.dataFilter){I=G.dataFilter(I,H)}if(typeof I==="string"){if(H=="script"){o.globalEval(I)}if(H=="json"){I=l["eval"]("("+I+")")}}return I},param:function(E){var G=[];function H(I,J){G[G.length]=encodeURIComponent(I)+"="+encodeURIComponent(J)}if(o.isArray(E)||E.jquery){o.each(E,function(){H(this.name,this.value)})}else{for(var F in E){if(o.isArray(E[F])){o.each(E[F],function(){H(F,this)})}else{H(F,o.isFunction(E[F])?E[F]():E[F])}}}return G.join("&").replace(/%20/g,"+")}});var m={},n,d=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];function t(F,E){var G={};o.each(d.concat.apply([],d.slice(0,E)),function(){G[this]=F});return G}o.fn.extend({show:function(J,L){if(J){return this.animate(t("show",3),J,L)}else{for(var H=0,F=this.length;H<F;H++){var E=o.data(this[H],"olddisplay");this[H].style.display=E||"";if(o.css(this[H],"display")==="none"){var G=this[H].tagName,K;if(m[G]){K=m[G]}else{var I=o("<"+G+" />").appendTo("body");K=I.css("display");if(K==="none"){K="block"}I.remove();m[G]=K}o.data(this[H],"olddisplay",K)}}for(var H=0,F=this.length;H<F;H++){this[H].style.display=o.data(this[H],"olddisplay")||""}return this}},hide:function(H,I){if(H){return this.animate(t("hide",3),H,I)}else{for(var G=0,F=this.length;G<F;G++){var E=o.data(this[G],"olddisplay");if(!E&&E!=="none"){o.data(this[G],"olddisplay",o.css(this[G],"display"))}}for(var G=0,F=this.length;G<F;G++){this[G].style.display="none"}return this}},_toggle:o.fn.toggle,toggle:function(G,F){var E=typeof G==="boolean";return o.isFunction(G)&&o.isFunction(F)?this._toggle.apply(this,arguments):G==null||E?this.each(function(){var H=E?G:o(this).is(":hidden");o(this)[H?"show":"hide"]()}):this.animate(t("toggle",3),G,F)},fadeTo:function(E,G,F){return this.animate({opacity:G},E,F)},animate:function(I,F,H,G){var E=o.speed(F,H,G);return this[E.queue===false?"each":"queue"](function(){var K=o.extend({},E),M,L=this.nodeType==1&&o(this).is(":hidden"),J=this;for(M in I){if(I[M]=="hide"&&L||I[M]=="show"&&!L){return K.complete.call(this)}if((M=="height"||M=="width")&&this.style){K.display=o.css(this,"display");K.overflow=this.style.overflow}}if(K.overflow!=null){this.style.overflow="hidden"}K.curAnim=o.extend({},I);o.each(I,function(O,S){var R=new o.fx(J,K,O);if(/toggle|show|hide/.test(S)){R[S=="toggle"?L?"show":"hide":S](I)}else{var Q=S.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),T=R.cur(true)||0;if(Q){var N=parseFloat(Q[2]),P=Q[3]||"px";if(P!="px"){J.style[O]=(N||1)+P;T=((N||1)/R.cur(true))*T;J.style[O]=T+P}if(Q[1]){N=((Q[1]=="-="?-1:1)*N)+T}R.custom(T,N,P)}else{R.custom(T,S,"")}}});return true})},stop:function(F,E){var G=o.timers;if(F){this.queue([])}this.each(function(){for(var H=G.length-1;H>=0;H--){if(G[H].elem==this){if(E){G[H](true)}G.splice(H,1)}}});if(!E){this.dequeue()}return this}});o.each({slideDown:t("show",1),slideUp:t("hide",1),slideToggle:t("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(E,F){o.fn[E]=function(G,H){return this.animate(F,G,H)}});o.extend({speed:function(G,H,F){var E=typeof G==="object"?G:{complete:F||!F&&H||o.isFunction(G)&&G,duration:G,easing:F&&H||H&&!o.isFunction(H)&&H};E.duration=o.fx.off?0:typeof E.duration==="number"?E.duration:o.fx.speeds[E.duration]||o.fx.speeds._default;E.old=E.complete;E.complete=function(){if(E.queue!==false){o(this).dequeue()}if(o.isFunction(E.old)){E.old.call(this)}};return E},easing:{linear:function(G,H,E,F){return E+F*G},swing:function(G,H,E,F){return((-Math.cos(G*Math.PI)/2)+0.5)*F+E}},timers:[],fx:function(F,E,G){this.options=E;this.elem=F;this.prop=G;if(!E.orig){E.orig={}}}});o.fx.prototype={update:function(){if(this.options.step){this.options.step.call(this.elem,this.now,this)}(o.fx.step[this.prop]||o.fx.step._default)(this);if((this.prop=="height"||this.prop=="width")&&this.elem.style){this.elem.style.display="block"}},cur:function(F){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)){return this.elem[this.prop]}var E=parseFloat(o.css(this.elem,this.prop,F));return E&&E>-10000?E:parseFloat(o.curCSS(this.elem,this.prop))||0},custom:function(I,H,G){this.startTime=e();this.start=I;this.end=H;this.unit=G||this.unit||"px";this.now=this.start;this.pos=this.state=0;var E=this;function F(J){return E.step(J)}F.elem=this.elem;if(F()&&o.timers.push(F)&&!n){n=setInterval(function(){var K=o.timers;for(var J=0;J<K.length;J++){if(!K[J]()){K.splice(J--,1)}}if(!K.length){clearInterval(n);n=g}},13)}},show:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.show=true;this.custom(this.prop=="width"||this.prop=="height"?1:0,this.cur());o(this.elem).show()},hide:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.hide=true;this.custom(this.cur(),0)},step:function(H){var G=e();if(H||G>=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var E=true;for(var F in this.options.curAnim){if(this.options.curAnim[F]!==true){E=false}}if(E){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(o.css(this.elem,"display")=="none"){this.elem.style.display="block"}}if(this.options.hide){o(this.elem).hide()}if(this.options.hide||this.options.show){for(var I in this.options.curAnim){o.attr(this.elem.style,I,this.options.orig[I])}}this.options.complete.call(this.elem)}return false}else{var J=G-this.startTime;this.state=J/this.options.duration;this.pos=o.easing[this.options.easing||(o.easing.swing?"swing":"linear")](this.state,J,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update()}return true}};o.extend(o.fx,{speeds:{slow:600,fast:200,_default:400},step:{opacity:function(E){o.attr(E.elem.style,"opacity",E.now)},_default:function(E){if(E.elem.style&&E.elem.style[E.prop]!=null){E.elem.style[E.prop]=E.now+E.unit}else{E.elem[E.prop]=E.now}}}});if(document.documentElement.getBoundingClientRect){o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}var G=this[0].getBoundingClientRect(),J=this[0].ownerDocument,F=J.body,E=J.documentElement,L=E.clientTop||F.clientTop||0,K=E.clientLeft||F.clientLeft||0,I=G.top+(self.pageYOffset||o.boxModel&&E.scrollTop||F.scrollTop)-L,H=G.left+(self.pageXOffset||o.boxModel&&E.scrollLeft||F.scrollLeft)-K;return{top:I,left:H}}}else{o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}o.offset.initialized||o.offset.initialize();var J=this[0],G=J.offsetParent,F=J,O=J.ownerDocument,M,H=O.documentElement,K=O.body,L=O.defaultView,E=L.getComputedStyle(J,null),N=J.offsetTop,I=J.offsetLeft;while((J=J.parentNode)&&J!==K&&J!==H){M=L.getComputedStyle(J,null);N-=J.scrollTop,I-=J.scrollLeft;if(J===G){N+=J.offsetTop,I+=J.offsetLeft;if(o.offset.doesNotAddBorder&&!(o.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(J.tagName))){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}F=G,G=J.offsetParent}if(o.offset.subtractsBorderForOverflowNotVisible&&M.overflow!=="visible"){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}E=M}if(E.position==="relative"||E.position==="static"){N+=K.offsetTop,I+=K.offsetLeft}if(E.position==="fixed"){N+=Math.max(H.scrollTop,K.scrollTop),I+=Math.max(H.scrollLeft,K.scrollLeft)}return{top:N,left:I}}}o.offset={initialize:function(){if(this.initialized){return}var L=document.body,F=document.createElement("div"),H,G,N,I,M,E,J=L.style.marginTop,K='<div style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;"><div></div></div><table style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;" cellpadding="0" cellspacing="0"><tr><td></td></tr></table>';M={position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"};for(E in M){F.style[E]=M[E]}F.innerHTML=K;L.insertBefore(F,L.firstChild);H=F.firstChild,G=H.firstChild,I=H.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(G.offsetTop!==5);this.doesAddBorderForTableAndCells=(I.offsetTop===5);H.style.overflow="hidden",H.style.position="relative";this.subtractsBorderForOverflowNotVisible=(G.offsetTop===-5);L.style.marginTop="1px";this.doesNotIncludeMarginInBodyOffset=(L.offsetTop===0);L.style.marginTop=J;L.removeChild(F);this.initialized=true},bodyOffset:function(E){o.offset.initialized||o.offset.initialize();var G=E.offsetTop,F=E.offsetLeft;if(o.offset.doesNotIncludeMarginInBodyOffset){G+=parseInt(o.curCSS(E,"marginTop",true),10)||0,F+=parseInt(o.curCSS(E,"marginLeft",true),10)||0}return{top:G,left:F}}};o.fn.extend({position:function(){var I=0,H=0,F;if(this[0]){var G=this.offsetParent(),J=this.offset(),E=/^body|html$/i.test(G[0].tagName)?{top:0,left:0}:G.offset();J.top-=j(this,"marginTop");J.left-=j(this,"marginLeft");E.top+=j(G,"borderTopWidth");E.left+=j(G,"borderLeftWidth");F={top:J.top-E.top,left:J.left-E.left}}return F},offsetParent:function(){var E=this[0].offsetParent||document.body;while(E&&(!/^body|html$/i.test(E.tagName)&&o.css(E,"position")=="static")){E=E.offsetParent}return o(E)}});o.each(["Left","Top"],function(F,E){var G="scroll"+E;o.fn[G]=function(H){if(!this[0]){return null}return H!==g?this.each(function(){this==l||this==document?l.scrollTo(!F?H:o(l).scrollLeft(),F?H:o(l).scrollTop()):this[G]=H}):this[0]==l||this[0]==document?self[F?"pageYOffset":"pageXOffset"]||o.boxModel&&document.documentElement[G]||document.body[G]:this[0][G]}});o.each(["Height","Width"],function(I,G){var E=I?"Left":"Top",H=I?"Right":"Bottom",F=G.toLowerCase();o.fn["inner"+G]=function(){return this[0]?o.css(this[0],F,false,"padding"):null};o.fn["outer"+G]=function(K){return this[0]?o.css(this[0],F,false,K?"margin":"border"):null};var J=G.toLowerCase();o.fn[J]=function(K){return this[0]==l?document.compatMode=="CSS1Compat"&&document.documentElement["client"+G]||document.body["client"+G]:this[0]==document?Math.max(document.documentElement["client"+G],document.body["scroll"+G],document.documentElement["scroll"+G],document.body["offset"+G],document.documentElement["offset"+G]):K===g?(this.length?o.css(this[0],J):null):this.css(J,typeof K==="string"?K:K+"px")}})})();
\ No newline at end of file diff --git a/examples/lessons/6_Maths_quickAddition/js/karma.js b/examples/lessons/6_Maths_quickAddition/js/karma.js deleted file mode 100755 index 03f027b..0000000 --- a/examples/lessons/6_Maths_quickAddition/js/karma.js +++ /dev/null @@ -1,1018 +0,0 @@ -/* Documentation Note: - * Public methods and properties are commented with /** some text *\/ - * and private methods and properties are commented with // - * - * Please leave it that way to keep this documentation sane - */ - - -/* -* Karma Framework -* http://karmaeducation.org -* -* Copyright (c) 2009 -* Bryan W Berry bryan@olenepal.org -* Felipe López Toledo zer.subzero@gmail.com -* -* Under MIT License: -* Permission is hereby granted, free of charge, to any person -* obtaining a copy of this software and associated documentation -* files (the "Software"), to deal in the Software without -* restriction, including without limitation the rights to use, -* copy, modify, merge, publish, distribute, sublicense, and/or sell -* copies of the Software, and to permit persons to whom the -* Software is furnished to do so, subject to the following -* conditions: -* -* The above copyright notice and this permission notice shall be -* included in all copies or substantial portions of the Software. -* -* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -* OTHER DEALINGS IN THE SOFTWARE. -*/ - -/** -* @fileOverview Contains karma library -* @author Bryan Berry <bryan@olenepal.org> -* @author Felipe Lopez Toledo <zer.subzero@gmail.com> -*/ - - -//common.js modules use exports object -if(!this.exports) { - exports = {}; -} - - - -/** Checks if the current document type is set to HTML 5, throws - * an error otherwise, then initializes the karma object and returns - * a reference to that object. - * @namespace Global namespace for Karma library - * @param {Object} [options={}] options for intializing Karma library - * @param {String} [options.locale=''] sets current locale Not Yet Implemented - * @param {Array} [options.image=[]] array of images to be converted into a collection - * @param {Array} [options.audio=[]] array of audio to be converted into a collection - * @param {Array} [options.video=[]] array of videos to be converted into a collection - * @param {Array} [options.svg=[]] array of SVG elements to be - * converted into a collection. Each SVG element must already exist in the html document - * @param {Array} [options.canvas=[]] array of canvas elements - * to be converted into a collection. Each canvas element must already exist in the - * html document and width and height of each element must be set as attributes - * @throws {Error} if the document type declaration is not set to HTML 5, e.g. - * <!DOCTYPE html> - * @throws {Error} If any of the initialization parameters are invalid values - * @returns {Object} Karma.karma -- reference to the initialized Karma library - * @example - * - * var k = Karma({ - * image: [ - * {name: "ninja", file: "ninja.png"}, - * {name: "cowboy", file: "cowboy.png"} - * ], - * audio: [ - * {name: "woosh", file: "woosh.ogg"}, - * {name: "yeehaw", file: "yeehaw.ogg"} - * ], - * video: [ - * {name: "attack", file: "attack.ogv"}, - * {name: "ride", file: "ride.ogv"} - * ] - * canvas: [ - * {name: "ninja", domId: "ninjaCanvas"}, - * {name: "cowboy", domId: "cowboyCanvas"} - * ], - * svg: [ - * {name: "ninja", domId: "ninjaSvg"}, - * {name: "cowboy", domId: "cowboySvg"} - * ], - * }); - * Next, call the ready function with a callback to your program code - * - * k.ready(function () { ... your application code . . . } - * - * after that you can access each asset like so - * k.image.ninja; - * k.svg.cowboy; - * k.audio.yeehaw.play(); - * k.canvas.ninja.drawImage(k.image.ninja, 0, 0); - * - */ -var Karma = exports.Karma = function (options) { - Karma._isHtml5(document.doctype.nodeName); - - if ( Karma.karma._initialized === true ) { - return Karma.karma; - } else { - return Karma.karma._init(options); - } -}; - - -//helper functions - -/**This emulates the Object.create method in ecmascript 5 spec - * This isn't a full implementation as it doesn't support - * This has the same functionality as Crockford's beget method - * and this primary building block for prototypal inheritance in - * this library - * @param {Object} target that the new object's prototype should point to - * @returns {Object} object whose prototype points to target - * @example - * - * var ninja = { weapon : "sword" }; - * var ninja1 = Karma.create(ninja); - * ninja1.sword === "sword" - */ -Karma.create = function (target){ - function F () {}; - F.prototype = target; - return new F(); -}; - -/** Returns a shallow copy of the passed in object - * @param {Object} target to be copied - * @returns {Object} a shallow copy of target - */ -Karma.clone = function (target){ - var copy = {}; - for ( var i in target ) { - if(target.hasOwnProperty(i)){ - copy[i] = target[i]; - } - } - return copy; -}; - -/** Extends properties of the target object with those of - * the source object - * @param {Object} target object to be extended - * @param {Object} source whose properties will extend target - * @returns {Object} target extended by source - */ -Karma.objectPlus = function (target, source){ - for ( var i in source){ - if (source.hasOwnProperty(i)){ - target[i] = source[i]; - } - } - return target; -}; - -/** Creates a new object that is a prototype of the first argument - * then extends it with the properties of the second argument - * @param {Object} parent1 will be prototype of returned object - * @param {Object} parent2 will extend properties of returned object - * @returns {Object} object that whose prototype is parent1 and has - * been extended with properties of parent2 - */ -Karma.copyObjectPlus = function (parent1, parent2){ - function F () {}; - F.prototype = parent1; - var G = new F(); - return Karma.objectPlus(G, parent2); -}; - -//Enables function chaining for a specified list of function names -//IMPORTANT: use of closures here with "this" and "that" is __very__ -//complicated here -Karma._makeChain = function (chainingFunctions) { - var that = this; - var _chainFunction = function ( name ){ - that[ name ] = function ( ){ - var type = typeof this.ctx[name]; - if ( type === "function") { - this.ctx[ name ].apply( this.ctx, arguments ); - }else if ( type === "string" ){ - this.ctx[ name ] = arguments[0]; - }else { - throw ("wtf?!: impossible to chain " + name + "!"); - } - return this; - }; - }; - - for (var i = 0; i < chainingFunctions.length; i++){ - _chainFunction( chainingFunctions[ i ] ); - } -}; - -//Throws big ugly error if doctype isn't html5 -Karma._isHtml5 = function (doctype){ - var regex = new RegExp('^html$', 'i'); - if(!regex.test(doctype)){ - var errorMsg = "ERROR: The doctype must be set to <!DOCTYPE html> " + - "in order to use Karma. Karma require you use html5"; - var errorElem = document.createElement('div'); - errorElem.setAttribute('id', 'errorDoctype'); - errorElem.innerText = errorMsg; - document.body.appendChild(errorElem); - throw new Error(errorMsg); - } -}; - - -/** Stores global settings for the Karma library - * @class This object stores the global settings for the Karma library - */ -Karma.karma = { - /** This is the global locale as passed to Karma(), - * such as "en", "es_SP" - * @type string - * @default undefined - */ - locale : undefined, - /** Collection of images with special helper - * methods added to each reference - * @type object - * @default empty object - */ - image : {}, - /** Collection of audio with special helper - * methods added to each reference - * @type object - * @default empty object - */ - audio : {}, - /** Collection of canvas with special helper - * methods added to each reference - * @type object - * @default empty object - */ - canvas : {}, - /** Collection of svgs with special helper - * methods added to each reference - * @type object - * @default empty object - */ - svg : {}, - /** Collection of videos with special helper - * methods added to each reference - * @type object - * @default empty object - */ - video : {}, - _localized : false, - _assetPath : "assets/", - _localePath : "", - _initialized : false, - _statusDiv: undefined, - _loaderDiv : undefined, - _counters : { total : 0, errors : 0, loaded : 0}, - - //init initializes all the assets passed to Karma, that's it - //it returns 'this' so it can be used for function chaining - _init: function(options) { - this._initialized = true; - - //set up message that show count of assets loaded - //and has an ordered list to append error messages to - var _statusDiv = this._statusDiv = document.createElement('div'); - this._loaderDiv = this._loaderDiv = document.createElement('div'); - var errorList = document.createElement('ol'); - - _statusDiv.setAttribute('id', 'karma-status'); - _statusDiv.setAttribute('style', 'position:absolute;'); - _statusDiv.innerHTML = 'Karma is loading ...'; - this._loaderDiv.setAttribute('id', 'karma-loader'); - this._loaderDiv.setAttribute('class', 'status'); - errorList.setAttribute('id', 'errorList'); - - _statusDiv.appendChild(this._loaderDiv); - this._statusDiv.appendChild(errorList); - document.body.appendChild(_statusDiv); - - - //chain the functions for kCanvas and kSvg - Karma._makeChain.call(Karma.kCanvas, - Karma.kCanvas._chainingFunctions); - //Karma._makeChain.apply(Karma.kSvg, Karma.kSvg._chainingFunctions); - - - - //regular expression that matches the name of aprivate property - // the karma object - var regexPrivate = new RegExp('^_.*'); - - for ( var option in options ) { - if (options.hasOwnProperty(option)){ - if (option === "image" || option === "audio" || option === - "svg" || option === "video" || option === "canvas"){ - - if(!(options[option] instanceof Array)){ - throw new Error("" + option + " must be an array"); - } else if (options[option].length === 0){ - continue; - } - } else if (regexPrivate.test(option)){ - //don't overwrite a private property of karma object - continue; - } - - switch (option){ - case "locale": - - if (this._isValidLocale(options[option])){ - this.locale = this._normalizeLocale(options[option]); - this._localized = true; - this._localePath = Karma._computeLocalePath(this.locale); - } else { - throw new Error("locale provided to karma._init() is invalid"); - } - - break; - case "image": - options[option]._type = 'image'; - Karma._makeImages(options[option]); - break; - case "audio": - options[option]._type = 'audio'; - Karma._makeAudio(options[option]); - break; - case "video": - options[option]._type = 'video'; - Karma._makeVideos(options[option]); - break; - case "svg": - options[option]._type = 'svg'; - Karma._makeSvgs(options[option]); - break; - case "canvas": - options[option]._type = 'canvas'; - Karma._makeCanvases(options[option]); - break; - } - } - } - - - - return this; - }, - - /** Waits until all assets loaded, i.e. ready, then calls callback - * @param {Function} [cb] callback function - * @returns this - * @throws {Error} if Karma.karma is not initialized with the - * Karma({ options }) function - * @example - * - * var k = Karma({ . . . your assets here . . . }); - * k.ready(function(){ .. your code here . . .}); - * - * your code will not be called until all assets have been loaded - * - */ - ready : function( cb ) { - var that = this; - if (Karma.karma._initialized !== true){ - throw new Error("Karma.karma not initialized"); - } - - if (this._counters.loaded !== this._counters.total){ - setTimeout(function(){ that.ready(cb);}, 5); - } else if (cb) { - //hide the "Karma is loading..." message - this._statusDiv.setAttribute('style', 'display:none;'); - - cb(); - } else if (!cb) { - //hide the "Karma is loading..." message - this._statusDiv.setAttribute('style', 'display:none;'); - - //if no options passed, show it works message - this._showStarterMessage(); - } - - - - - return this; - }, - - //Display Apache-like "It works" message if no options - _showStarterMessage : function (){ - var starterMsg = document.createElement('div'); - starterMsg.setAttribute('id', 'starterMsg'); - starterMsg.innerHTML = "<h1>It Works</h1>"; - document.body.appendChild(starterMsg); - }, - - //Updates visible counter of how many assets are loaded - _updateStatus : function (errorMsg) { - var loaded = this._counters.loaded; - var total = this._counters.total; - var errors = this._counters.errors; - this._loaderDiv.innerHTML = "Loaded " + loaded + " / " + total + - "" + (errors > 0 ? " Errors [ " + errors +" ]" : ''); - if (errorMsg) { - var liError = document.createElement('li'); - liError.innerHTML = errorMsg; - var errorList = document.getElementById('errorList'); - errorList.appendChild(liError); - } - }, - - //matches 2 letter country code then optionally - //a dash or underscore followed by a country or language identifier - //i currently only allow a language identifier 2-3 chars long - _isValidLocale : function (locale) { - var localeRegex = new RegExp('^[a-zA-Z][a-zA-Z]([-_][a-zA-z]{2,3})?$'); - return localeRegex.test(locale); - }, - - _normalizeLocale : function(locale) { - var lang = ""; - var country = ""; - var divider = ""; - - lang = locale.slice(0, 2).toLowerCase(); - divider = "_"; - country = locale.slice(3, 6).toUpperCase(); - - return locale.length > 2 ? "" + lang + divider + country : lang; - }, - - // Below are geometry and math helper methods - - /** - * Converts a value from degrees to radians. - * @param {Number} angle The angle in degrees - * @returns {Number} The angle in radians - */ - radians : function( angle ){ - return ( angle / 180 ) * Math.PI; - }, - /** - * Gets the square of the Euclidian (ordinary) distance between 2 points. - * @param {Object} Point No. 0 - * @param {Number} Point0.x - * @param {Number} Point0.y - * @param {Object} Point No. 1 - * @param {Number} Point1.x - * @param {Number} Point1.y - * @returns {Number} The square of the Euclidian distance - * @example - * - * p0 = {x:0, y:1}; - * p1 = {x:50, y:70}; - * var d = distance2(p0, p1); - * - */ - distance2 : function ( p0, p1 ) { - return (p1.x - p0.x) * (p1.x - p0.x) + (p1.y - p1.y) * (p1.y - p1.y); - }, - /** - * Gets the Euclidian (ordinary) distance between 2 points.<br> - * <b>Warning:</b> It's slower than distance2 function - * @param {Object} Point No. 0 - * @param {Number} Point0.x - * @param {Number} Point0.y - * @param {Object} Point No. 1 - * @param {Number} Point1.x - * @param {Number} Point1.y - * @returns {Number} The Euclidian distance - * @example - * - * p0 = {x:0, y:1}; - * p1 = {x:50, y:70}; - * var d = distance2(p0, p1); - * - */ - distance : function ( p0, p1 ) { - return Math.sqrt( this.distance2( p0, p1 ) ); - }, - /** Returns a random number within the range provided - * @param {Number} lower limit of the range, lowest number that can be returned - * @param {Number} upper limit of the range, highest number that can be returned - * @returns {Number} number that is >= lower and <= upper - * @example - * - * var num = rand(0, 10); - * - * num could be 0, 1, 2, 3 ... or 10 - * - */ - rand : function ( lower, upper ){ - return Math.round( Math.random() * (upper - lower) + lower ); - } - -}; - -/** Prototypal object for images, videos, and audio files but - * does not include svg or canvas elements - * @class This object is the prototype for images, videos, and audio files but - * does not include svg or canvas elements - * @ throws {Error} if the individual asset is set to be localized but - * the globale locale is not set on the Karma.karma object - * @ throws {Error} if the name and file properties are not supplied - * @example - * kMedia is the prototype object for images, audio, and videos. - * These 'media' assets are loaded in a distinctly different way - * from the canvas or svg assets. They also have distinctly different - * helper methods - * - * You initialize the kMedia assets by passing an array of objects - */ -Karma.kMedia = { - /** file location of asset - * @type String - * @default "" - */ - file : "", - /** media object - * @type Audio|Image|Video - * @default undefined - */ - media : undefined, - //actual path to the file - _path : "", - //if using localized version of this asset - _localized : false, - //audio, image, or video - _type : "", - //initializes kMedia instance with values provided by user - _init : function (asset) { - asset._localized = asset._localized || false; - Karma.karma._counters.total++; - - if (asset.name === undefined || asset.file === undefined){ - throw new Error("properties name and file have to be defined"); - } else { - this.name = asset.name; - this.file = asset.file; - } - - //_type is a private variable used internally - if (asset._type === undefined){ - throw new Error("the _type property must be set. " + - "Blame the karma library authors as this is an internal value"); - } else { - if (Karma._isValidType(asset._type)){ - this._type = asset._type; - switch ( this._type ) { - case "image": this.media = new Image(); - break; - case "audio": this.media = new Audio(); - break; - //case "video": - //NYI - //this.media = new Video(); - break; - default: throw new Error("Media type not supported"); - } - - } else { - throw new Error("the _type property supplied is invalid. " + - "Blame the karma library authors as this is an internal value"); - } - } - - if(Karma._isLocalized(asset._localized)){ - this._localized = asset._localized; - this._path = Karma.karma._localePath + - this._type + "/"; - } else { - this._path = Karma.karma._assetPath + - this._type + "/"; - } - - - //IMPORTANT: This one magic line loads the file - this.media.src = this.src = this._path + this.file; - - //add event handlers - this._addEventHandlers(); - - if (this._type === "audio"){ - this.media.autobuffer = true; - this.media.load(); - } - - - return this; - }, - //Adds event handlers to update the counters when - //the asset is successfully or unsuccessfully loaded - _addEventHandlers : function () { - var that = this; - var loadEvent = "load"; - //Browser Hack recommended by chromium devs - //http://code.google.com/p/chromium/issues/detail?id=20251&q=loading%20audio&colspec=ID%20Stars%20Pri%20Area%20Type%20Status%20Summary%20Modified%20Owner%20Mstone%20OS#c4 - if (this._type === "audio" || this._type === "video"){ - loadEvent = "canplaythrough"; - } - - that.media.addEventListener( - loadEvent, - function (e) { - Karma.karma._counters.loaded++; - Karma.karma._updateStatus(); - that.status = "loaded";}, false); - - that.media.addEventListener( - "error", - function (e) { - Karma.karma._counters.errors++; - that.status = "error"; - var errorMsg = "Error: " + that._type.toUpperCase() + - " " + that.name + " cannot be loaded."; - Karma.karma._updateStatus(errorMsg); - }, - false); - that.media.addEventListener( - "abort", - function (e) { - Karma.karma._counters.total++; - that.status = "aborted"; - var errorMsg = "ABORT: " + that._type.toUpperCase() + - " " + that.name + " loading was aborted."; - Karma.karma._updateStatus(errorMsg); - - }, false); - - } - -}; - -//determine if it is a valid type of asset -Karma._isValidType = function (type){ - return type === "image" || - type === "svg" || - type === "audio" || - type === "video" || - type === "canvas"; -}; - -Karma._isLocalized = function (boolLocalized) { - if (typeof boolLocalized === "boolean" ) { - if(boolLocalized === true && - Karma.karma.locale === undefined){ - throw new Error("You cannot localize a media asset" + - " if the global locale for Karma isn't set"); - } else { - return boolLocalized; - } - } else if (typeof boolLocalized === undefined){ - return false; - } else{ - throw new Error("This is not a valid value for the localized option"); - } -}; - -Karma._computeLocalePath = function(locale) { - return Karma.karma._assetPath + locale + "/"; -}; - -Karma._makeImages = function (imgConfigs){ - var makeImage = function (imgConfig){ - var image = undefined; - imgConfig._type = "image"; - image = Karma.create(Karma.kMedia)._init(imgConfig); - Karma.karma.image[imgConfig.name] = image; - }; - - imgConfigs.forEach(function(imgConfig){ makeImage(imgConfig);}); - -}; - -Karma._makeAudio = function (audioConfigs){ - var makeAudio = function (audioConfig){ - var audio = undefined; - audioConfig._type = "audio"; - audio = Karma.create(Karma.kMedia)._init(audioConfig); - audio.play = function () { - //hack to fix the audio "stuttering" problem - //more info: https://bugs.launchpad.net/karma/+bug/426108 - this.media.currentTime = 0.1; - this.media.play(); - }; - Karma.karma.audio[audioConfig.name] = audio; - }; - - audioConfigs.forEach(function(audioConfig){ makeAudio(audioConfig);}); - -}; - - -Karma._makeCanvases = function (canvasConfigs){ - var makeCanvas = function (canvasConfig){ - var canvas = undefined; - canvas = Karma.create(Karma.kCanvas)._init(canvasConfig); - Karma.karma.canvas[canvasConfig.name] = canvas; - }; - - canvasConfigs.forEach(function(canvasConfig){ makeCanvas(canvasConfig);}); - -}; - -/** Prototypal object for each canvas element submitted to Karma in the - * Karma() method - * @throws {Error} if the name and domId for the canvas element are not specified - * @thows {Error} if the supplied domId does not match an element in the DOM - * @class This object is the prototype for each canvas element submitted to Karma in the - * Karma() method - */ -Karma.kCanvas = { - /** Name of the canvas, used internally by karma.js - * @type String - * @default '' - */ - name : '', - /** Width of canvas element - * @type Number - * @default 0 - */ - width: 0, - /** Height of canvas element - * @type Number - * @default 0 - */ - height: 0, - /** Whether canvas is visible - * @type boolean - * @default true - */ - visible: true, - /** Element ID for canvas element in html document - * @type String - * @default undefined - */ - domId: undefined, - /** Reference to the DOM element - * @type DOMElement - * @default undefined - */ - node: undefined, - /** The 2 Dimensional Rendering context property for this canvas - * @type 2DRenderingContext - * @default undefined - */ - ctx: undefined, - /** Frames Per Second, I don't know what the purpose of this is, - * Felipe made it up - * @type Number - * @default 24 - */ - fps: 24, - - //initializes object with values provides by user - _init: function (config) { - for (var option in config){ - if (config.hasOwnProperty(option)){ - switch (option){ - case "name": - this.name = config[option]; - break; - case "domId": - this.domId = config[option]; - break; - case "width": - if(!this.height){ - throw new Error("If you specify a width you must also" + - "specify a height"); - } - this.width = config[option]; - break; - case "height": - if(!this.width){ - throw new Error("If you specify a height you must also" + - "specify a width"); - } - this.height = parseInt(config.option, 10); - break; - case "fps": - this.fps = parseInt(config.option, 10); - break; - } - } - } - - if(this.domId && document.getElementById(this.domId)){ - this.node = document.getElementById(this.domId); - this.ctx = this.node.getContext('2d'); - } else { - throw new Error('you must specify a valid domId that' + - 'is in your html page'); - } - - if(!config.height && !config.width){ - this.width = parseInt(this.node.getAttribute('width'), 10); - this.height = parseInt(this.node.getAttribute('height'), 10); - } - - return this; - }, - /** Clear area of canvas element specified by parameters, if no - * parameters supplied, clears entire canvas - * @param {Number} [x=0] x coordinate, defaults to zero if left blank - * @param {Number} [y=0] y coordinate, defaults to zero if left blank - * @param {Number} [width=0] width of area to be cleared, defaults - * entire width of canvas - * @param {Number} [height=0] height of area to be cleared, defaults - * entire height of canvas - * @returns this - * @example - * - * k.canvas.ninja.clear(); - * // clears the entire ninja canvas - * - * k.canvas.ninja.clear(0, 10, 20, 30); - * //clears a specific portion of the ninja canvas - * - */ - clear : function ( x, y, width, height ) { - var that = this; - that.ctx.clearRect( - x || 0, - y || 0, - width || that.width, - height || that.height - ); - return that; - }, - - //These are all properties or methods of the canvas element's - //2 dimensional context - _chainingFunctions : [ - "globalAlpha", "globalCompositeOperation", "lineWidth", "lineCap", - "lineJoin", "miterLimit", "font", "textAlign", "textBaseline", "save", - "restore", "scale", "rotate", "translate", "transform", "setTransform", - "clearRect", "fillRect", "strokeRect", "beginPath", "closePath", - "moveTo", "lineTo", "quadraticCurveTo", "bezierCurveTo", "arcTo", - "arc", "rect", "fill", "stroke", "clip", "fillText", "strokeText", - "measureText", "isPointInPath", "strokeStyle", "fillStyle", - "createLinearGradient", "createRadialGradient", "createPattern", - "shadowOffsetX", "shadowOffsetY", "shadowBlur", "shadowColor", - //"mozTextStyle", "mozDrawText", "mozMeasureText", "mozPathText", - "mozTextAlongPath", "drawImage", "getImageData", "putImageData", - "createImageData", "drawWindow" - ] -}; - - - -Karma._makeSvgs = function (svgConfigs){ - var makeSvg = function (svgConfig){ - var svg = undefined; - svg = Karma.create(Karma.kSvg)._init(svgConfig); - Karma.karma.svg[svgConfig.name] = svg; - }; - - svgConfigs.forEach(function(svgConfig){ makeSvg(svgConfig);}); - -}; - -/** Prototypal object for each svg element submitted to Karma in the - * Karma() method - * @throws {Error} if the name and domId for the svg element are not specified - * @thows {Error} if the supplied domId does not match an element in the DOM - * @class This object is the prototype for each svg element submitted to Karma in the - * Karma() method - */ -Karma.kSvg = { - /** name of instance, used internally - * @typeof string - * @default "" - */ - name : "", - /** width of element - * @type number - * @default 0 - */ - width: 0, - /** height of element - * @type number - * @default 0 - */ - height: 0, - /** Status of element, either "loaded" or "error" - * @type string - * @default "" - */ - status: "", - /** Whether canvas is visible - * @type boolean - * @default true - */ - visible: true, - /** Element ID for canvas element in html document - * @type String - * @default undefined - */ - domId: undefined, - /** Reference to the DOM element - * @type DOMElement - * @default undefined - */ - node: undefined, - /** Reference to the SVGDocument - * @type SVGDocument - * @default undefined - */ - doc: undefined, - /** Reference to the root element of the SVG Document - * @type DocumentElement - * @default undefined - */ - root: undefined, - _localized : undefined, - _chainingFunctions: [], - _init: function (config) { - Karma.karma._counters.total++; - - for (var option in config){ - if (config.hasOwnProperty(option)){ - switch (option){ - case "name": - this.name = config[option]; - break; - case "domId": - this.domId = config[option]; - break; - case "width": - if(!this.height){ - throw new Error("If you specify a width you must also" + - "specify a height"); - } - this.width = parseInt(config[option], 10); - break; - case "height": - if(!this.width){ - throw new Error("If you specify a height you must also" + - "specify a width"); - } - this.height = config[option]; - break; - case "fps": - this.fps = config[option]; - break; - } - } - } - - if(this.domId && document.getElementById(this.domId)){ - this.node = document.getElementById(this.domId); - } else { - throw new Error('you must specify a valid domId that' + - 'is in your html page'); - } - - if(!config.height && !config.width){ - this.width = parseInt(this.node.getAttribute('width'), 10); - this.height = parseInt(this.node.getAttribute('height'), 10); - } - - var that = this; - that._addEventHandlers(); - - return this; - - - }, - _addEventHandlers : function () { - var that = this; - that.doc = that.node.getSVGDocument(); - that.node.addEventListener( - "load", - function (e) { - that.doc = that.node.getSVGDocument(); - that.root = that.doc.documentElement; - Karma.karma._counters.loaded++; - Karma.karma._updateStatus(); - that.status = "loaded"; - }, false); - - that.node.addEventListener( - "error", - function (e) { - Karma.karma._counters.loaded--; - Karma.karma._counters.errors++; - that.status = "error"; - var errorMsg = "Error: " + that._type.toUpperCase() + - " " + that.name + " cannot be loaded."; - Karma.karma._updateStatus(errorMsg); - }, - false); - that.node.addEventListener( - "abort", - function (e) { - that.status = "aborted"; - var errorMsg = "ABORT: " + that._type.toUpperCase() + - " " + that.name + " loading was aborted."; - Karma.karma._updateStatus(errorMsg); - - }, false); - - } -}; - -Karma._makeVideos = function (video){ - -}; diff --git a/examples/lessons/6_Maths_quickAddition/js/lesson.js b/examples/lessons/6_Maths_quickAddition/js/lesson.js deleted file mode 100755 index 84fe327..0000000 --- a/examples/lessons/6_Maths_quickAddition/js/lesson.js +++ /dev/null @@ -1,162 +0,0 @@ -$(document).ready(function(){ - var k = Karma({ - audio: [{'name':'correct','file':'correct.wav'}, - {'name':'incorrect','file':'incorrect.wav'} - ]}); - - k.ready(function(){ - var i,j; - var totalCounter; - var currentQuestion; - var TOTAL_QUES = 16; - var randPositions = []; - var numFst; - var num2nd; - var s = 0; var play = 0; var restart = 0; - - var checkTime = function(timePara){ - if (timePara<10 ) - { - timePara="0" + timePara; - } - return timePara; - }; - - - var startTimer = function(){ - s=checkTime(s); - $('#timerBox1').html(s); - increaseTime(); - }; - - var increaseTime = function(){ - if(play == 1){ - if(restart == 1){ - s = 0; - } - s++; - s=checkTime(s); - $('#timerBox1').html(s); - var t=setTimeout(function(){increaseTime();},1000); - } - }; - - var genRandPosition=function (){correctCounter = 0; - randPositions[0] = k.rand(0,TOTAL_QUES-1); - for(i=1; i<TOTAL_QUES; i++){ - do{ - flag = 0; - randPositions[i] = k.rand(0,TOTAL_QUES-1); - for(j=0; j<i; j++){ - if(randPositions[i] === randPositions[j]){ - flag++; - } - } - }while(flag != 0 ); //end of do while loop - } - }; - - var next_question = function (){ - numFst = k.rand(10,99); - num2nd = k.rand(10,99); - $('#calcSection').html('').append(numFst +' + '+num2nd+' = '); - $('#calcSection').append('<input type="text" class="textBox" maxlength="3" />'); - foucs_blur(); - $('.textBox').focus(); correctCounter = 0; - }; - correctCounter = 0; - function game_start(){ - genRandPosition(); - play = 1; - startTimer(); - next_question(); - } - - function game() { - totalCounter = 0; - s = 0; play = 0; restart = 0; - $('#section').html('').append('<div id="left-side"></div>'); - $('#left-side').append('<div id="tv"></div>'); - $('#tv').append('<div id="tvLayer"></div>'); - $('#tvLayer').addClass('tvOff'); - $('#left-side').append('<div id="cupBoard"></div>'); - $('#section').append('<div id="right-side"></div>'); - $('#right-side').append('<div id="borderWall"></div>'); - $('#borderWall').append('<div id="imgDisplay"></div>'); - for(var i = 0; i< TOTAL_QUES; i++){ - $('#imgDisplay').append('<div id="img'+i+'></div>'); - $('#img'+i).addClass('default'); - } - $('#right-side').append('<div id="calcSection"></div>'); - - $('#help').hide(); - - } - game(); - var delay_nextQues = function(){ - document.delayForm.delayval.value = 1; - next_question(); - }; - - var delay_gameOver = function(){ - document.delayForm.delayval.value = 1; - $('#calcSection').html(''); - play = 0; - for(var i = 0; i< TOTAL_QUES; i++){ - $('#imgDisplay').append('<div id="img'+i+'></div>'); - $('#img'+i).removeClass('correct').addClass('default'); - } - $('#tvLayer').addClass('tvOn').append('खेल खत्तम।'); - - }; - - var check_answer = function(){ - textVal = $('.textBox').val(); - if((numFst+num2nd) == textVal){ - totalCounter++; - k.audio.correct.play(); - $('#img'+randPositions[totalCounter]).removeClass('default').addClass('correct'); - if(totalCounter === TOTAL_QUES){ - t=setTimeout(function(){delay_gameOver();},1000); - } - else{ - t=setTimeout(function(){delay_nextQues();},1000); - } - } - else{ - k.audio.incorrect.play(); - } - }; - - function foucs_blur(){ - $('input[type="text"]') - .focus(function() { - $(this).removeClass('incorrect').addClass("focus"); - }) - .blur(function() { - $(this).removeClass("focus"); - }) - .keypress(function(event) { - if(event.which === 13){ - check_answer(); - } - - }); - - } - - $('#linkStart').click(function(){ - game_start(); - }); - - $('#linkPlayAgain').click(function(){ - game_start(); - }); - $('#linkHelp').click(function(){ - $('#help').slideDown(2000); - }) - .mouseout(function(){ - $('#help').slideUp(2000); - }); - }); //end of k.ready -}); //end of document.ready
\ No newline at end of file diff --git a/examples/lessons/6_Maths_quickDivision/assets/audio/correct.wav b/examples/lessons/6_Maths_quickDivision/assets/audio/correct.wav Binary files differdeleted file mode 100755 index a49ba33..0000000 --- a/examples/lessons/6_Maths_quickDivision/assets/audio/correct.wav +++ /dev/null diff --git a/examples/lessons/6_Maths_quickDivision/assets/audio/incorrect.wav b/examples/lessons/6_Maths_quickDivision/assets/audio/incorrect.wav Binary files differdeleted file mode 100755 index 906c6a3..0000000 --- a/examples/lessons/6_Maths_quickDivision/assets/audio/incorrect.wav +++ /dev/null diff --git a/examples/lessons/6_Maths_quickDivision/assets/image/bg_footer.png b/examples/lessons/6_Maths_quickDivision/assets/image/bg_footer.png Binary files differdeleted file mode 100755 index 4bd44fa..0000000 --- a/examples/lessons/6_Maths_quickDivision/assets/image/bg_footer.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickDivision/assets/image/bg_header.png b/examples/lessons/6_Maths_quickDivision/assets/image/bg_header.png Binary files differdeleted file mode 100755 index f421817..0000000 --- a/examples/lessons/6_Maths_quickDivision/assets/image/bg_header.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickDivision/assets/image/bg_title_block.png b/examples/lessons/6_Maths_quickDivision/assets/image/bg_title_block.png Binary files differdeleted file mode 100755 index 7311891..0000000 --- a/examples/lessons/6_Maths_quickDivision/assets/image/bg_title_block.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickDivision/assets/image/borderWall.png b/examples/lessons/6_Maths_quickDivision/assets/image/borderWall.png Binary files differdeleted file mode 100755 index adbacdc..0000000 --- a/examples/lessons/6_Maths_quickDivision/assets/image/borderWall.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickDivision/assets/image/btn_back.png b/examples/lessons/6_Maths_quickDivision/assets/image/btn_back.png Binary files differdeleted file mode 100755 index d9fbf14..0000000 --- a/examples/lessons/6_Maths_quickDivision/assets/image/btn_back.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickDivision/assets/image/btn_back_hover.png b/examples/lessons/6_Maths_quickDivision/assets/image/btn_back_hover.png Binary files differdeleted file mode 100755 index 0911fcc..0000000 --- a/examples/lessons/6_Maths_quickDivision/assets/image/btn_back_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickDivision/assets/image/btn_help.png b/examples/lessons/6_Maths_quickDivision/assets/image/btn_help.png Binary files differdeleted file mode 100755 index 6753e9c..0000000 --- a/examples/lessons/6_Maths_quickDivision/assets/image/btn_help.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickDivision/assets/image/btn_help_hover.png b/examples/lessons/6_Maths_quickDivision/assets/image/btn_help_hover.png Binary files differdeleted file mode 100755 index d3ccd92..0000000 --- a/examples/lessons/6_Maths_quickDivision/assets/image/btn_help_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickDivision/assets/image/btn_next.png b/examples/lessons/6_Maths_quickDivision/assets/image/btn_next.png Binary files differdeleted file mode 100755 index 9d70993..0000000 --- a/examples/lessons/6_Maths_quickDivision/assets/image/btn_next.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickDivision/assets/image/btn_next_hover.png b/examples/lessons/6_Maths_quickDivision/assets/image/btn_next_hover.png Binary files differdeleted file mode 100755 index 2cd4d37..0000000 --- a/examples/lessons/6_Maths_quickDivision/assets/image/btn_next_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickDivision/assets/image/btn_ole.png b/examples/lessons/6_Maths_quickDivision/assets/image/btn_ole.png Binary files differdeleted file mode 100755 index 0e775e9..0000000 --- a/examples/lessons/6_Maths_quickDivision/assets/image/btn_ole.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickDivision/assets/image/btn_ole_hover.png b/examples/lessons/6_Maths_quickDivision/assets/image/btn_ole_hover.png Binary files differdeleted file mode 100755 index c43c5f7..0000000 --- a/examples/lessons/6_Maths_quickDivision/assets/image/btn_ole_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickDivision/assets/image/btn_play_again.png b/examples/lessons/6_Maths_quickDivision/assets/image/btn_play_again.png Binary files differdeleted file mode 100755 index 3594d18..0000000 --- a/examples/lessons/6_Maths_quickDivision/assets/image/btn_play_again.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickDivision/assets/image/btn_play_again_hover.png b/examples/lessons/6_Maths_quickDivision/assets/image/btn_play_again_hover.png Binary files differdeleted file mode 100755 index ebb8f8c..0000000 --- a/examples/lessons/6_Maths_quickDivision/assets/image/btn_play_again_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickDivision/assets/image/btn_play_again_mouse_down.png b/examples/lessons/6_Maths_quickDivision/assets/image/btn_play_again_mouse_down.png Binary files differdeleted file mode 100755 index 07d6e45..0000000 --- a/examples/lessons/6_Maths_quickDivision/assets/image/btn_play_again_mouse_down.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickDivision/assets/image/btn_start.png b/examples/lessons/6_Maths_quickDivision/assets/image/btn_start.png Binary files differdeleted file mode 100755 index 32e5f20..0000000 --- a/examples/lessons/6_Maths_quickDivision/assets/image/btn_start.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickDivision/assets/image/btn_start_hover.png b/examples/lessons/6_Maths_quickDivision/assets/image/btn_start_hover.png Binary files differdeleted file mode 100755 index 811ce78..0000000 --- a/examples/lessons/6_Maths_quickDivision/assets/image/btn_start_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickDivision/assets/image/btn_start_mouse_down.png b/examples/lessons/6_Maths_quickDivision/assets/image/btn_start_mouse_down.png Binary files differdeleted file mode 100755 index 5acd43b..0000000 --- a/examples/lessons/6_Maths_quickDivision/assets/image/btn_start_mouse_down.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickDivision/assets/image/cupBoard.png b/examples/lessons/6_Maths_quickDivision/assets/image/cupBoard.png Binary files differdeleted file mode 100755 index 98e9985..0000000 --- a/examples/lessons/6_Maths_quickDivision/assets/image/cupBoard.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickDivision/assets/image/help.png b/examples/lessons/6_Maths_quickDivision/assets/image/help.png Binary files differdeleted file mode 100755 index 0b22aa4..0000000 --- a/examples/lessons/6_Maths_quickDivision/assets/image/help.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickDivision/assets/image/title_block_lt.png b/examples/lessons/6_Maths_quickDivision/assets/image/title_block_lt.png Binary files differdeleted file mode 100755 index b1c0e90..0000000 --- a/examples/lessons/6_Maths_quickDivision/assets/image/title_block_lt.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickDivision/assets/image/title_block_rt.png b/examples/lessons/6_Maths_quickDivision/assets/image/title_block_rt.png Binary files differdeleted file mode 100755 index 275daaf..0000000 --- a/examples/lessons/6_Maths_quickDivision/assets/image/title_block_rt.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickDivision/assets/image/tv.png b/examples/lessons/6_Maths_quickDivision/assets/image/tv.png Binary files differdeleted file mode 100755 index cbaa755..0000000 --- a/examples/lessons/6_Maths_quickDivision/assets/image/tv.png +++ /dev/null diff --git a/examples/lessons/6_Maths_quickDivision/css/lesson.css b/examples/lessons/6_Maths_quickDivision/css/lesson.css deleted file mode 100755 index e649943..0000000 --- a/examples/lessons/6_Maths_quickDivision/css/lesson.css +++ /dev/null @@ -1,300 +0,0 @@ -@CHARSET "UTF-8";
-/****** Page Styles ****/
-
-body {
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 10pt;
- margin: 0px;
- background-color: #FFFFCC;
-}
-#header {
- background-image: url(../assets/image/bg_header.png);
- background-repeat: repeat-x;
- height: 89px;
- width: 100%;
- position: absolute;
- left: 0px;
- top: 0px;
-}
-#topbtn_left {
- float: left;
- height: 60px;
- width: 60px;
- padding-top: 13px;
- padding-left: 5px;
-}
-
-
- #linkBack{
- width: 60px; height: 59px;
- background:url(../assets/image/btn_back.png);
- }
- #linkBack:hover{
- background:url(../assets/image/btn_back_hover.png);
- }
-
-#lesson_title {
- float: left;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 16pt;
- font-weight: bold;
- color: #FFFFFF;
- margin-left: 10px;
- background-image: url(../assets/image/bg_title_block.png);
-}
-#topbtn_right {
- float: right;
- height: 60px;
- width: 60px;
- padding-top: 13px;
- padding-right: 5px;
-}
- #linkHelp{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_help.png);
- }bgCalculation
- #linkHelp:hover{
- background:url(../assets/image/btn_help_hover.png);
- }
- #linkOle{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_ole.png);
- }
- #linkOle:hover{
- background:url(../assets/image/btn_ole_hover.png);
- }
- #linkNext{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_next.png);
- }
- #linkNext:hover{
- background:url(../assets/image/btn_next_hover.png);
- }
-#footer {
- background-image: url(../assets/image/bg_footer.png);
- background-repeat: repeat-x;
- position: abbgCalculationsolute;
- height: 69px;
- width: 100%;
- left: 0px;
- bottom: 0px;
-}
-#score_box {
- float: left;
- padding-left: 5px;
- padding-top: 10px;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- color: #FFFF00;
- font-size: 16pt;
- font-weight: bold;
-}
-#botbtn_right {
- float: right;
- height: 55px;
- /*width: 25bgCalculation1px;*/
- padding-right: 5px;
- padding-top: 5px;
-}
- #linkCheck{
- margin: 1em 3em 0 0;
- width: 101px; height: 30px;
- background-image: url(../assets/image/check.png);
- }
-
- #linkStart{
- width: 251px; height: 55px;
- background:url(../assets/image/btn_start.png);
- }
- #linkStart:hover{
- background:url(../assets/image/btn_start_hover.png);
- }
- #linkStart:active{
- background:url(../assets/image/btn_start_mouse_down.png);
- }
- #linkPlayAgain{
- width: 251px; height: 55px;
- background:url(../assets/image/btn_play_again.png);
- }
- #linkPlayAgain:hover{
- background:url(../assets/image/btn_play_again_hover.png);
- }
- #linkPlayAgain:active{
- background:url(../assets/image/btn_play_again_mouse_down.png);
- }
-
-/**** End of the page style ****/
-
-/**** Game Styles ****/
-
-a{
- color:#FFFFCC;
-}
-#currentTitle{
- width: 150px;
- height: 80xp;
- font:25px/30px "Courier New", Courier, monospace;
- font-weight: bold;
- color: red;
-}
-#content{
- margin: 0 auto;
- margin-top: 85px;
- width: 98%;
- padding: 0.5em;
- height: 375px;
- background-color: #FCFFA4;
-}
- #section{
- width: 900px;
- height: 375px;
- margin: 0 auto;
- z-index: 1;
- }
-
- #left-side{
- float:left;
- width: 360px;
- height: 360px;
- z-index: 2;
- }
- #tv{
- position:relative;
- margin-left: 12px;
- width: 215px;
- height: 191px;
- background-image: url(../assets/image/tv.png);
- z-index:5;
- }
- #tvLayer{
- position:absolute;
- top: 17px;
- left: 16px;
- width: 179px;
- height: 128px;
- font: 40px/60px Verdana, Geneva, Arial, Helvetica, sans-serif;
- color: #FFF;
- text-align:center;
- font-weight:bold;
- -moz-border-radius : 10px;
- -webkit-border-radius : 10px;
- border-radius : 10px;
- z-index: 1;
- }
- .tvOff{
- background-color: #78040E;
- border: 2px solid #78040E;
-
- }
- .tvOn{
- background-color: #0000FF;
- border: 2px solid #0000FF;
- }
-
- #cupBoard{
- width: 280px;
- height: 259px;
- background: url(../assets/image/cupBoard.png) no-repeat;
- }
-
- #right-side{
- float:right;
- width: 420px;
- height: 365px;
- }
- #borderWall{
- position:relative;
- width: 420px;
- height: 320px;
- background: url(../assets/image/borderWall.png) no-repeat;
- }
- #imgDisplay{
- position:absolute;
- top: 53px;
- left: 62px;
- width: 294px;
- height:210px;
- }
- .default{
- float:left;
- width: 69px;
- height: 48px;
- background-color:#FCFFA4;
- border: 2px solid #FCFFA4;
- }
- .correct{
- float:left;
- width: 69px;
- height: 48px;
- background-color:#A6E4FE;
- border: 2px solid #F9F900;
- }
- #calcSection{
- margin-top: 10px;
- width: 420px;
- height: 35px;
- text-align:center;
- font: 30px/35px Verdana, Geneva, Arial, Helvetica, sans-serif;
- color: #000;
- font-weight: bold;
- }
-
- input.textBox{
- size:3;
- font: 30px/35px Verdana, Geneva, Arial, Helvetica, sans-serif;
- font-weight: bold;
- height:35px;
- width: 60px;
- text-align:center;
- }
- .focus {
- background-color: #FF9900;
- }
- .incorrect{
- background-color: #FFFF00;
- }
-
- #help{
- display:none;
- position:absolute;
- right: 20%;
- top: 1%;
- width: 224px;
- height: 525px;
- background:url(../assets/image/help.png);
- z-index:40;
- }
- .backOpaque{
- background-color: #A4A4A4;
- opacity: 0.2;
- }
- #timerBar {
- float: left;
- margin-left: 300px;
- width: 150px;
- height:35px;
- padding-left: 10px;
- padding-top: 0px;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- color: #FFFF00;
- font-size: 16pt;
- font-weight: bold;
- }
- #timerTitle{
- float: left;
- margin-top: 20px;
- width: 50px;
- height: 35px;
- }
-
- .timerBoxes{ /* Show the timer running after the game has began.... */
- float:right;
- margin: 0.5em 0 0 0.1em;
- width: 80px;
- height: 30px;
- border: 2px dotted green;
- padding: 3px;
- color: blue;
- text-align:center;
- font : bold 25px Arial Black, Times New Roman;
- background: #ACC;
- }
diff --git a/examples/lessons/6_Maths_quickDivision/index.html b/examples/lessons/6_Maths_quickDivision/index.html deleted file mode 100755 index f7e030f..0000000 --- a/examples/lessons/6_Maths_quickDivision/index.html +++ /dev/null @@ -1,41 +0,0 @@ -<!DOCTYPE html>
-<head>
- <title>Class 6 Maths Quick Division</title>
- <meta name="keywords" content="karma,javascript,html5,sugar,sugarlabs,gsoc,ole,nepal" />
- <link type="text/css" rel="stylesheet" href="css/lesson.css" />
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <link type="image/ico" rel="icon" href="../../assets/default/image/favicon.ico" />
- <script type="text/javascript" src="js/jquery-1.3.2.min.js"></script>
- <script type="text/javascript" src="js/karma.js"></script>
- <script type="text/javascript" src="js/lesson.js"></script>
-</head>
-<body>
- <div id="header">
- <div id="topbtn_left"><a href="http://olenepal.org"><div id="linkOle"></div></a></div>
- <div id="lesson_title">
- <img src="assets/image/title_block_lt.png" width="33" height="89" align="absmiddle" />
- Quick Division<span id="currentTitle"></span>
- <img src="assets/image/title_block_rt.png" width="33" height="89" align="absmiddle" />
- </div>
- <div id="topbtn_right"><a href="#"><div id="linkHelp"></div></a></div>
- <div id="topbtn_right"><a href="http://olenepal.org"><div id="linkOle"></div></a></div>
- </div>
-
- <div id="content">
- <div id="section"></div>
- <div id="help"></div>
- </div>
- <form name="delayForm">
- <input type="hidden" name="delayval" size="5">
- </form>
-
- <div id="footer">
- <div id ="timerBar">
- <div id="timerTitle">Timer:</div>
- <div id="timerBox1" class="timerBoxes"></div>
- </div>
- <div id="botbtn_right"><a href="#"><div id="linkStart"></div></a></div>
- <div id="botbtn_right"><a href="#"><div id="linkPlayAgain"></div></a></div>
- </div>
-</body>
-</html>
diff --git a/examples/lessons/6_Maths_quickDivision/js/jquery-1.3.2.min.js b/examples/lessons/6_Maths_quickDivision/js/jquery-1.3.2.min.js deleted file mode 100755 index b1ae21d..0000000 --- a/examples/lessons/6_Maths_quickDivision/js/jquery-1.3.2.min.js +++ /dev/null @@ -1,19 +0,0 @@ -/* - * jQuery JavaScript Library v1.3.2 - * http://jquery.com/ - * - * Copyright (c) 2009 John Resig - * Dual licensed under the MIT and GPL licenses. - * http://docs.jquery.com/License - * - * Date: 2009-02-19 17:34:21 -0500 (Thu, 19 Feb 2009) - * Revision: 6246 - */ -(function(){var l=this,g,y=l.jQuery,p=l.$,o=l.jQuery=l.$=function(E,F){return new o.fn.init(E,F)},D=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,f=/^.[^:#\[\.,]*$/;o.fn=o.prototype={init:function(E,H){E=E||document;if(E.nodeType){this[0]=E;this.length=1;this.context=E;return this}if(typeof E==="string"){var G=D.exec(E);if(G&&(G[1]||!H)){if(G[1]){E=o.clean([G[1]],H)}else{var I=document.getElementById(G[3]);if(I&&I.id!=G[3]){return o().find(E)}var F=o(I||[]);F.context=document;F.selector=E;return F}}else{return o(H).find(E)}}else{if(o.isFunction(E)){return o(document).ready(E)}}if(E.selector&&E.context){this.selector=E.selector;this.context=E.context}return this.setArray(o.isArray(E)?E:o.makeArray(E))},selector:"",jquery:"1.3.2",size:function(){return this.length},get:function(E){return E===g?Array.prototype.slice.call(this):this[E]},pushStack:function(F,H,E){var G=o(F);G.prevObject=this;G.context=this.context;if(H==="find"){G.selector=this.selector+(this.selector?" ":"")+E}else{if(H){G.selector=this.selector+"."+H+"("+E+")"}}return G},setArray:function(E){this.length=0;Array.prototype.push.apply(this,E);return this},each:function(F,E){return o.each(this,F,E)},index:function(E){return o.inArray(E&&E.jquery?E[0]:E,this)},attr:function(F,H,G){var E=F;if(typeof F==="string"){if(H===g){return this[0]&&o[G||"attr"](this[0],F)}else{E={};E[F]=H}}return this.each(function(I){for(F in E){o.attr(G?this.style:this,F,o.prop(this,E[F],G,I,F))}})},css:function(E,F){if((E=="width"||E=="height")&&parseFloat(F)<0){F=g}return this.attr(E,F,"curCSS")},text:function(F){if(typeof F!=="object"&&F!=null){return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(F))}var E="";o.each(F||this,function(){o.each(this.childNodes,function(){if(this.nodeType!=8){E+=this.nodeType!=1?this.nodeValue:o.fn.text([this])}})});return E},wrapAll:function(E){if(this[0]){var F=o(E,this[0].ownerDocument).clone();if(this[0].parentNode){F.insertBefore(this[0])}F.map(function(){var G=this;while(G.firstChild){G=G.firstChild}return G}).append(this)}return this},wrapInner:function(E){return this.each(function(){o(this).contents().wrapAll(E)})},wrap:function(E){return this.each(function(){o(this).wrapAll(E)})},append:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.appendChild(E)}})},prepend:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.insertBefore(E,this.firstChild)}})},before:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this)})},after:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this.nextSibling)})},end:function(){return this.prevObject||o([])},push:[].push,sort:[].sort,splice:[].splice,find:function(E){if(this.length===1){var F=this.pushStack([],"find",E);F.length=0;o.find(E,this[0],F);return F}else{return this.pushStack(o.unique(o.map(this,function(G){return o.find(E,G)})),"find",E)}},clone:function(G){var E=this.map(function(){if(!o.support.noCloneEvent&&!o.isXMLDoc(this)){var I=this.outerHTML;if(!I){var J=this.ownerDocument.createElement("div");J.appendChild(this.cloneNode(true));I=J.innerHTML}return o.clean([I.replace(/ jQuery\d+="(?:\d+|null)"/g,"").replace(/^\s*/,"")])[0]}else{return this.cloneNode(true)}});if(G===true){var H=this.find("*").andSelf(),F=0;E.find("*").andSelf().each(function(){if(this.nodeName!==H[F].nodeName){return}var I=o.data(H[F],"events");for(var K in I){for(var J in I[K]){o.event.add(this,K,I[K][J],I[K][J].data)}}F++})}return E},filter:function(E){return this.pushStack(o.isFunction(E)&&o.grep(this,function(G,F){return E.call(G,F)})||o.multiFilter(E,o.grep(this,function(F){return F.nodeType===1})),"filter",E)},closest:function(E){var G=o.expr.match.POS.test(E)?o(E):null,F=0;return this.map(function(){var H=this;while(H&&H.ownerDocument){if(G?G.index(H)>-1:o(H).is(E)){o.data(H,"closest",F);return H}H=H.parentNode;F++}})},not:function(E){if(typeof E==="string"){if(f.test(E)){return this.pushStack(o.multiFilter(E,this,true),"not",E)}else{E=o.multiFilter(E,this)}}var F=E.length&&E[E.length-1]!==g&&!E.nodeType;return this.filter(function(){return F?o.inArray(this,E)<0:this!=E})},add:function(E){return this.pushStack(o.unique(o.merge(this.get(),typeof E==="string"?o(E):o.makeArray(E))))},is:function(E){return !!E&&o.multiFilter(E,this).length>0},hasClass:function(E){return !!E&&this.is("."+E)},val:function(K){if(K===g){var E=this[0];if(E){if(o.nodeName(E,"option")){return(E.attributes.value||{}).specified?E.value:E.text}if(o.nodeName(E,"select")){var I=E.selectedIndex,L=[],M=E.options,H=E.type=="select-one";if(I<0){return null}for(var F=H?I:0,J=H?I+1:M.length;F<J;F++){var G=M[F];if(G.selected){K=o(G).val();if(H){return K}L.push(K)}}return L}return(E.value||"").replace(/\r/g,"")}return g}if(typeof K==="number"){K+=""}return this.each(function(){if(this.nodeType!=1){return}if(o.isArray(K)&&/radio|checkbox/.test(this.type)){this.checked=(o.inArray(this.value,K)>=0||o.inArray(this.name,K)>=0)}else{if(o.nodeName(this,"select")){var N=o.makeArray(K);o("option",this).each(function(){this.selected=(o.inArray(this.value,N)>=0||o.inArray(this.text,N)>=0)});if(!N.length){this.selectedIndex=-1}}else{this.value=K}}})},html:function(E){return E===g?(this[0]?this[0].innerHTML.replace(/ jQuery\d+="(?:\d+|null)"/g,""):null):this.empty().append(E)},replaceWith:function(E){return this.after(E).remove()},eq:function(E){return this.slice(E,+E+1)},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","))},map:function(E){return this.pushStack(o.map(this,function(G,F){return E.call(G,F,G)}))},andSelf:function(){return this.add(this.prevObject)},domManip:function(J,M,L){if(this[0]){var I=(this[0].ownerDocument||this[0]).createDocumentFragment(),F=o.clean(J,(this[0].ownerDocument||this[0]),I),H=I.firstChild;if(H){for(var G=0,E=this.length;G<E;G++){L.call(K(this[G],H),this.length>1||G>0?I.cloneNode(true):I)}}if(F){o.each(F,z)}}return this;function K(N,O){return M&&o.nodeName(N,"table")&&o.nodeName(O,"tr")?(N.getElementsByTagName("tbody")[0]||N.appendChild(N.ownerDocument.createElement("tbody"))):N}}};o.fn.init.prototype=o.fn;function z(E,F){if(F.src){o.ajax({url:F.src,async:false,dataType:"script"})}else{o.globalEval(F.text||F.textContent||F.innerHTML||"")}if(F.parentNode){F.parentNode.removeChild(F)}}function e(){return +new Date}o.extend=o.fn.extend=function(){var J=arguments[0]||{},H=1,I=arguments.length,E=false,G;if(typeof J==="boolean"){E=J;J=arguments[1]||{};H=2}if(typeof J!=="object"&&!o.isFunction(J)){J={}}if(I==H){J=this;--H}for(;H<I;H++){if((G=arguments[H])!=null){for(var F in G){var K=J[F],L=G[F];if(J===L){continue}if(E&&L&&typeof L==="object"&&!L.nodeType){J[F]=o.extend(E,K||(L.length!=null?[]:{}),L)}else{if(L!==g){J[F]=L}}}}}return J};var b=/z-?index|font-?weight|opacity|zoom|line-?height/i,q=document.defaultView||{},s=Object.prototype.toString;o.extend({noConflict:function(E){l.$=p;if(E){l.jQuery=y}return o},isFunction:function(E){return s.call(E)==="[object Function]"},isArray:function(E){return s.call(E)==="[object Array]"},isXMLDoc:function(E){return E.nodeType===9&&E.documentElement.nodeName!=="HTML"||!!E.ownerDocument&&o.isXMLDoc(E.ownerDocument)},globalEval:function(G){if(G&&/\S/.test(G)){var F=document.getElementsByTagName("head")[0]||document.documentElement,E=document.createElement("script");E.type="text/javascript";if(o.support.scriptEval){E.appendChild(document.createTextNode(G))}else{E.text=G}F.insertBefore(E,F.firstChild);F.removeChild(E)}},nodeName:function(F,E){return F.nodeName&&F.nodeName.toUpperCase()==E.toUpperCase()},each:function(G,K,F){var E,H=0,I=G.length;if(F){if(I===g){for(E in G){if(K.apply(G[E],F)===false){break}}}else{for(;H<I;){if(K.apply(G[H++],F)===false){break}}}}else{if(I===g){for(E in G){if(K.call(G[E],E,G[E])===false){break}}}else{for(var J=G[0];H<I&&K.call(J,H,J)!==false;J=G[++H]){}}}return G},prop:function(H,I,G,F,E){if(o.isFunction(I)){I=I.call(H,F)}return typeof I==="number"&&G=="curCSS"&&!b.test(E)?I+"px":I},className:{add:function(E,F){o.each((F||"").split(/\s+/),function(G,H){if(E.nodeType==1&&!o.className.has(E.className,H)){E.className+=(E.className?" ":"")+H}})},remove:function(E,F){if(E.nodeType==1){E.className=F!==g?o.grep(E.className.split(/\s+/),function(G){return !o.className.has(F,G)}).join(" "):""}},has:function(F,E){return F&&o.inArray(E,(F.className||F).toString().split(/\s+/))>-1}},swap:function(H,G,I){var E={};for(var F in G){E[F]=H.style[F];H.style[F]=G[F]}I.call(H);for(var F in G){H.style[F]=E[F]}},css:function(H,F,J,E){if(F=="width"||F=="height"){var L,G={position:"absolute",visibility:"hidden",display:"block"},K=F=="width"?["Left","Right"]:["Top","Bottom"];function I(){L=F=="width"?H.offsetWidth:H.offsetHeight;if(E==="border"){return}o.each(K,function(){if(!E){L-=parseFloat(o.curCSS(H,"padding"+this,true))||0}if(E==="margin"){L+=parseFloat(o.curCSS(H,"margin"+this,true))||0}else{L-=parseFloat(o.curCSS(H,"border"+this+"Width",true))||0}})}if(H.offsetWidth!==0){I()}else{o.swap(H,G,I)}return Math.max(0,Math.round(L))}return o.curCSS(H,F,J)},curCSS:function(I,F,G){var L,E=I.style;if(F=="opacity"&&!o.support.opacity){L=o.attr(E,"opacity");return L==""?"1":L}if(F.match(/float/i)){F=w}if(!G&&E&&E[F]){L=E[F]}else{if(q.getComputedStyle){if(F.match(/float/i)){F="float"}F=F.replace(/([A-Z])/g,"-$1").toLowerCase();var M=q.getComputedStyle(I,null);if(M){L=M.getPropertyValue(F)}if(F=="opacity"&&L==""){L="1"}}else{if(I.currentStyle){var J=F.replace(/\-(\w)/g,function(N,O){return O.toUpperCase()});L=I.currentStyle[F]||I.currentStyle[J];if(!/^\d+(px)?$/i.test(L)&&/^\d/.test(L)){var H=E.left,K=I.runtimeStyle.left;I.runtimeStyle.left=I.currentStyle.left;E.left=L||0;L=E.pixelLeft+"px";E.left=H;I.runtimeStyle.left=K}}}}return L},clean:function(F,K,I){K=K||document;if(typeof K.createElement==="undefined"){K=K.ownerDocument||K[0]&&K[0].ownerDocument||document}if(!I&&F.length===1&&typeof F[0]==="string"){var H=/^<(\w+)\s*\/?>$/.exec(F[0]);if(H){return[K.createElement(H[1])]}}var G=[],E=[],L=K.createElement("div");o.each(F,function(P,S){if(typeof S==="number"){S+=""}if(!S){return}if(typeof S==="string"){S=S.replace(/(<(\w+)[^>]*?)\/>/g,function(U,V,T){return T.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?U:V+"></"+T+">"});var O=S.replace(/^\s+/,"").substring(0,10).toLowerCase();var Q=!O.indexOf("<opt")&&[1,"<select multiple='multiple'>","</select>"]||!O.indexOf("<leg")&&[1,"<fieldset>","</fieldset>"]||O.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"<table>","</table>"]||!O.indexOf("<tr")&&[2,"<table><tbody>","</tbody></table>"]||(!O.indexOf("<td")||!O.indexOf("<th"))&&[3,"<table><tbody><tr>","</tr></tbody></table>"]||!O.indexOf("<col")&&[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"]||!o.support.htmlSerialize&&[1,"div<div>","</div>"]||[0,"",""];L.innerHTML=Q[1]+S+Q[2];while(Q[0]--){L=L.lastChild}if(!o.support.tbody){var R=/<tbody/i.test(S),N=!O.indexOf("<table")&&!R?L.firstChild&&L.firstChild.childNodes:Q[1]=="<table>"&&!R?L.childNodes:[];for(var M=N.length-1;M>=0;--M){if(o.nodeName(N[M],"tbody")&&!N[M].childNodes.length){N[M].parentNode.removeChild(N[M])}}}if(!o.support.leadingWhitespace&&/^\s/.test(S)){L.insertBefore(K.createTextNode(S.match(/^\s*/)[0]),L.firstChild)}S=o.makeArray(L.childNodes)}if(S.nodeType){G.push(S)}else{G=o.merge(G,S)}});if(I){for(var J=0;G[J];J++){if(o.nodeName(G[J],"script")&&(!G[J].type||G[J].type.toLowerCase()==="text/javascript")){E.push(G[J].parentNode?G[J].parentNode.removeChild(G[J]):G[J])}else{if(G[J].nodeType===1){G.splice.apply(G,[J+1,0].concat(o.makeArray(G[J].getElementsByTagName("script"))))}I.appendChild(G[J])}}return E}return G},attr:function(J,G,K){if(!J||J.nodeType==3||J.nodeType==8){return g}var H=!o.isXMLDoc(J),L=K!==g;G=H&&o.props[G]||G;if(J.tagName){var F=/href|src|style/.test(G);if(G=="selected"&&J.parentNode){J.parentNode.selectedIndex}if(G in J&&H&&!F){if(L){if(G=="type"&&o.nodeName(J,"input")&&J.parentNode){throw"type property can't be changed"}J[G]=K}if(o.nodeName(J,"form")&&J.getAttributeNode(G)){return J.getAttributeNode(G).nodeValue}if(G=="tabIndex"){var I=J.getAttributeNode("tabIndex");return I&&I.specified?I.value:J.nodeName.match(/(button|input|object|select|textarea)/i)?0:J.nodeName.match(/^(a|area)$/i)&&J.href?0:g}return J[G]}if(!o.support.style&&H&&G=="style"){return o.attr(J.style,"cssText",K)}if(L){J.setAttribute(G,""+K)}var E=!o.support.hrefNormalized&&H&&F?J.getAttribute(G,2):J.getAttribute(G);return E===null?g:E}if(!o.support.opacity&&G=="opacity"){if(L){J.zoom=1;J.filter=(J.filter||"").replace(/alpha\([^)]*\)/,"")+(parseInt(K)+""=="NaN"?"":"alpha(opacity="+K*100+")")}return J.filter&&J.filter.indexOf("opacity=")>=0?(parseFloat(J.filter.match(/opacity=([^)]*)/)[1])/100)+"":""}G=G.replace(/-([a-z])/ig,function(M,N){return N.toUpperCase()});if(L){J[G]=K}return J[G]},trim:function(E){return(E||"").replace(/^\s+|\s+$/g,"")},makeArray:function(G){var E=[];if(G!=null){var F=G.length;if(F==null||typeof G==="string"||o.isFunction(G)||G.setInterval){E[0]=G}else{while(F){E[--F]=G[F]}}}return E},inArray:function(G,H){for(var E=0,F=H.length;E<F;E++){if(H[E]===G){return E}}return -1},merge:function(H,E){var F=0,G,I=H.length;if(!o.support.getAll){while((G=E[F++])!=null){if(G.nodeType!=8){H[I++]=G}}}else{while((G=E[F++])!=null){H[I++]=G}}return H},unique:function(K){var F=[],E={};try{for(var G=0,H=K.length;G<H;G++){var J=o.data(K[G]);if(!E[J]){E[J]=true;F.push(K[G])}}}catch(I){F=K}return F},grep:function(F,J,E){var G=[];for(var H=0,I=F.length;H<I;H++){if(!E!=!J(F[H],H)){G.push(F[H])}}return G},map:function(E,J){var F=[];for(var G=0,H=E.length;G<H;G++){var I=J(E[G],G);if(I!=null){F[F.length]=I}}return F.concat.apply([],F)}});var C=navigator.userAgent.toLowerCase();o.browser={version:(C.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)||[0,"0"])[1],safari:/webkit/.test(C),opera:/opera/.test(C),msie:/msie/.test(C)&&!/opera/.test(C),mozilla:/mozilla/.test(C)&&!/(compatible|webkit)/.test(C)};o.each({parent:function(E){return E.parentNode},parents:function(E){return o.dir(E,"parentNode")},next:function(E){return o.nth(E,2,"nextSibling")},prev:function(E){return o.nth(E,2,"previousSibling")},nextAll:function(E){return o.dir(E,"nextSibling")},prevAll:function(E){return o.dir(E,"previousSibling")},siblings:function(E){return o.sibling(E.parentNode.firstChild,E)},children:function(E){return o.sibling(E.firstChild)},contents:function(E){return o.nodeName(E,"iframe")?E.contentDocument||E.contentWindow.document:o.makeArray(E.childNodes)}},function(E,F){o.fn[E]=function(G){var H=o.map(this,F);if(G&&typeof G=="string"){H=o.multiFilter(G,H)}return this.pushStack(o.unique(H),E,G)}});o.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(E,F){o.fn[E]=function(G){var J=[],L=o(G);for(var K=0,H=L.length;K<H;K++){var I=(K>0?this.clone(true):this).get();o.fn[F].apply(o(L[K]),I);J=J.concat(I)}return this.pushStack(J,E,G)}});o.each({removeAttr:function(E){o.attr(this,E,"");if(this.nodeType==1){this.removeAttribute(E)}},addClass:function(E){o.className.add(this,E)},removeClass:function(E){o.className.remove(this,E)},toggleClass:function(F,E){if(typeof E!=="boolean"){E=!o.className.has(this,F)}o.className[E?"add":"remove"](this,F)},remove:function(E){if(!E||o.filter(E,[this]).length){o("*",this).add([this]).each(function(){o.event.remove(this);o.removeData(this)});if(this.parentNode){this.parentNode.removeChild(this)}}},empty:function(){o(this).children().remove();while(this.firstChild){this.removeChild(this.firstChild)}}},function(E,F){o.fn[E]=function(){return this.each(F,arguments)}});function j(E,F){return E[0]&&parseInt(o.curCSS(E[0],F,true),10)||0}var h="jQuery"+e(),v=0,A={};o.extend({cache:{},data:function(F,E,G){F=F==l?A:F;var H=F[h];if(!H){H=F[h]=++v}if(E&&!o.cache[H]){o.cache[H]={}}if(G!==g){o.cache[H][E]=G}return E?o.cache[H][E]:H},removeData:function(F,E){F=F==l?A:F;var H=F[h];if(E){if(o.cache[H]){delete o.cache[H][E];E="";for(E in o.cache[H]){break}if(!E){o.removeData(F)}}}else{try{delete F[h]}catch(G){if(F.removeAttribute){F.removeAttribute(h)}}delete o.cache[H]}},queue:function(F,E,H){if(F){E=(E||"fx")+"queue";var G=o.data(F,E);if(!G||o.isArray(H)){G=o.data(F,E,o.makeArray(H))}else{if(H){G.push(H)}}}return G},dequeue:function(H,G){var E=o.queue(H,G),F=E.shift();if(!G||G==="fx"){F=E[0]}if(F!==g){F.call(H)}}});o.fn.extend({data:function(E,G){var H=E.split(".");H[1]=H[1]?"."+H[1]:"";if(G===g){var F=this.triggerHandler("getData"+H[1]+"!",[H[0]]);if(F===g&&this.length){F=o.data(this[0],E)}return F===g&&H[1]?this.data(H[0]):F}else{return this.trigger("setData"+H[1]+"!",[H[0],G]).each(function(){o.data(this,E,G)})}},removeData:function(E){return this.each(function(){o.removeData(this,E)})},queue:function(E,F){if(typeof E!=="string"){F=E;E="fx"}if(F===g){return o.queue(this[0],E)}return this.each(function(){var G=o.queue(this,E,F);if(E=="fx"&&G.length==1){G[0].call(this)}})},dequeue:function(E){return this.each(function(){o.dequeue(this,E)})}}); -/* - * Sizzle CSS Selector Engine - v0.9.3 - * Copyright 2009, The Dojo Foundation - * Released under the MIT, BSD, and GPL Licenses. - * More information: http://sizzlejs.com/ - */ -(function(){var R=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?/g,L=0,H=Object.prototype.toString;var F=function(Y,U,ab,ac){ab=ab||[];U=U||document;if(U.nodeType!==1&&U.nodeType!==9){return[]}if(!Y||typeof Y!=="string"){return ab}var Z=[],W,af,ai,T,ad,V,X=true;R.lastIndex=0;while((W=R.exec(Y))!==null){Z.push(W[1]);if(W[2]){V=RegExp.rightContext;break}}if(Z.length>1&&M.exec(Y)){if(Z.length===2&&I.relative[Z[0]]){af=J(Z[0]+Z[1],U)}else{af=I.relative[Z[0]]?[U]:F(Z.shift(),U);while(Z.length){Y=Z.shift();if(I.relative[Y]){Y+=Z.shift()}af=J(Y,af)}}}else{var ae=ac?{expr:Z.pop(),set:E(ac)}:F.find(Z.pop(),Z.length===1&&U.parentNode?U.parentNode:U,Q(U));af=F.filter(ae.expr,ae.set);if(Z.length>0){ai=E(af)}else{X=false}while(Z.length){var ah=Z.pop(),ag=ah;if(!I.relative[ah]){ah=""}else{ag=Z.pop()}if(ag==null){ag=U}I.relative[ah](ai,ag,Q(U))}}if(!ai){ai=af}if(!ai){throw"Syntax error, unrecognized expression: "+(ah||Y)}if(H.call(ai)==="[object Array]"){if(!X){ab.push.apply(ab,ai)}else{if(U.nodeType===1){for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&(ai[aa]===true||ai[aa].nodeType===1&&K(U,ai[aa]))){ab.push(af[aa])}}}else{for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&ai[aa].nodeType===1){ab.push(af[aa])}}}}}else{E(ai,ab)}if(V){F(V,U,ab,ac);if(G){hasDuplicate=false;ab.sort(G);if(hasDuplicate){for(var aa=1;aa<ab.length;aa++){if(ab[aa]===ab[aa-1]){ab.splice(aa--,1)}}}}}return ab};F.matches=function(T,U){return F(T,null,null,U)};F.find=function(aa,T,ab){var Z,X;if(!aa){return[]}for(var W=0,V=I.order.length;W<V;W++){var Y=I.order[W],X;if((X=I.match[Y].exec(aa))){var U=RegExp.leftContext;if(U.substr(U.length-1)!=="\\"){X[1]=(X[1]||"").replace(/\\/g,"");Z=I.find[Y](X,T,ab);if(Z!=null){aa=aa.replace(I.match[Y],"");break}}}}if(!Z){Z=T.getElementsByTagName("*")}return{set:Z,expr:aa}};F.filter=function(ad,ac,ag,W){var V=ad,ai=[],aa=ac,Y,T,Z=ac&&ac[0]&&Q(ac[0]);while(ad&&ac.length){for(var ab in I.filter){if((Y=I.match[ab].exec(ad))!=null){var U=I.filter[ab],ah,af;T=false;if(aa==ai){ai=[]}if(I.preFilter[ab]){Y=I.preFilter[ab](Y,aa,ag,ai,W,Z);if(!Y){T=ah=true}else{if(Y===true){continue}}}if(Y){for(var X=0;(af=aa[X])!=null;X++){if(af){ah=U(af,Y,X,aa);var ae=W^!!ah;if(ag&&ah!=null){if(ae){T=true}else{aa[X]=false}}else{if(ae){ai.push(af);T=true}}}}}if(ah!==g){if(!ag){aa=ai}ad=ad.replace(I.match[ab],"");if(!T){return[]}break}}}if(ad==V){if(T==null){throw"Syntax error, unrecognized expression: "+ad}else{break}}V=ad}return aa};var I=F.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF_-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF_-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*_-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+-]*)\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF_-]|\\.)+)(?:\((['"]*)((?:\([^\)]+\)|[^\2\(\)]*)+)\2\))?/},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(T){return T.getAttribute("href")}},relative:{"+":function(aa,T,Z){var X=typeof T==="string",ab=X&&!/\W/.test(T),Y=X&&!ab;if(ab&&!Z){T=T.toUpperCase()}for(var W=0,V=aa.length,U;W<V;W++){if((U=aa[W])){while((U=U.previousSibling)&&U.nodeType!==1){}aa[W]=Y||U&&U.nodeName===T?U||false:U===T}}if(Y){F.filter(T,aa,true)}},">":function(Z,U,aa){var X=typeof U==="string";if(X&&!/\W/.test(U)){U=aa?U:U.toUpperCase();for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){var W=Y.parentNode;Z[V]=W.nodeName===U?W:false}}}else{for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){Z[V]=X?Y.parentNode:Y.parentNode===U}}if(X){F.filter(U,Z,true)}}},"":function(W,U,Y){var V=L++,T=S;if(!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("parentNode",U,V,W,X,Y)},"~":function(W,U,Y){var V=L++,T=S;if(typeof U==="string"&&!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("previousSibling",U,V,W,X,Y)}},find:{ID:function(U,V,W){if(typeof V.getElementById!=="undefined"&&!W){var T=V.getElementById(U[1]);return T?[T]:[]}},NAME:function(V,Y,Z){if(typeof Y.getElementsByName!=="undefined"){var U=[],X=Y.getElementsByName(V[1]);for(var W=0,T=X.length;W<T;W++){if(X[W].getAttribute("name")===V[1]){U.push(X[W])}}return U.length===0?null:U}},TAG:function(T,U){return U.getElementsByTagName(T[1])}},preFilter:{CLASS:function(W,U,V,T,Z,aa){W=" "+W[1].replace(/\\/g,"")+" ";if(aa){return W}for(var X=0,Y;(Y=U[X])!=null;X++){if(Y){if(Z^(Y.className&&(" "+Y.className+" ").indexOf(W)>=0)){if(!V){T.push(Y)}}else{if(V){U[X]=false}}}}return false},ID:function(T){return T[1].replace(/\\/g,"")},TAG:function(U,T){for(var V=0;T[V]===false;V++){}return T[V]&&Q(T[V])?U[1]:U[1].toUpperCase()},CHILD:function(T){if(T[1]=="nth"){var U=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(T[2]=="even"&&"2n"||T[2]=="odd"&&"2n+1"||!/\D/.test(T[2])&&"0n+"+T[2]||T[2]);T[2]=(U[1]+(U[2]||1))-0;T[3]=U[3]-0}T[0]=L++;return T},ATTR:function(X,U,V,T,Y,Z){var W=X[1].replace(/\\/g,"");if(!Z&&I.attrMap[W]){X[1]=I.attrMap[W]}if(X[2]==="~="){X[4]=" "+X[4]+" "}return X},PSEUDO:function(X,U,V,T,Y){if(X[1]==="not"){if(X[3].match(R).length>1||/^\w/.test(X[3])){X[3]=F(X[3],null,null,U)}else{var W=F.filter(X[3],U,V,true^Y);if(!V){T.push.apply(T,W)}return false}}else{if(I.match.POS.test(X[0])||I.match.CHILD.test(X[0])){return true}}return X},POS:function(T){T.unshift(true);return T}},filters:{enabled:function(T){return T.disabled===false&&T.type!=="hidden"},disabled:function(T){return T.disabled===true},checked:function(T){return T.checked===true},selected:function(T){T.parentNode.selectedIndex;return T.selected===true},parent:function(T){return !!T.firstChild},empty:function(T){return !T.firstChild},has:function(V,U,T){return !!F(T[3],V).length},header:function(T){return/h\d/i.test(T.nodeName)},text:function(T){return"text"===T.type},radio:function(T){return"radio"===T.type},checkbox:function(T){return"checkbox"===T.type},file:function(T){return"file"===T.type},password:function(T){return"password"===T.type},submit:function(T){return"submit"===T.type},image:function(T){return"image"===T.type},reset:function(T){return"reset"===T.type},button:function(T){return"button"===T.type||T.nodeName.toUpperCase()==="BUTTON"},input:function(T){return/input|select|textarea|button/i.test(T.nodeName)}},setFilters:{first:function(U,T){return T===0},last:function(V,U,T,W){return U===W.length-1},even:function(U,T){return T%2===0},odd:function(U,T){return T%2===1},lt:function(V,U,T){return U<T[3]-0},gt:function(V,U,T){return U>T[3]-0},nth:function(V,U,T){return T[3]-0==U},eq:function(V,U,T){return T[3]-0==U}},filter:{PSEUDO:function(Z,V,W,aa){var U=V[1],X=I.filters[U];if(X){return X(Z,W,V,aa)}else{if(U==="contains"){return(Z.textContent||Z.innerText||"").indexOf(V[3])>=0}else{if(U==="not"){var Y=V[3];for(var W=0,T=Y.length;W<T;W++){if(Y[W]===Z){return false}}return true}}}},CHILD:function(T,W){var Z=W[1],U=T;switch(Z){case"only":case"first":while(U=U.previousSibling){if(U.nodeType===1){return false}}if(Z=="first"){return true}U=T;case"last":while(U=U.nextSibling){if(U.nodeType===1){return false}}return true;case"nth":var V=W[2],ac=W[3];if(V==1&&ac==0){return true}var Y=W[0],ab=T.parentNode;if(ab&&(ab.sizcache!==Y||!T.nodeIndex)){var X=0;for(U=ab.firstChild;U;U=U.nextSibling){if(U.nodeType===1){U.nodeIndex=++X}}ab.sizcache=Y}var aa=T.nodeIndex-ac;if(V==0){return aa==0}else{return(aa%V==0&&aa/V>=0)}}},ID:function(U,T){return U.nodeType===1&&U.getAttribute("id")===T},TAG:function(U,T){return(T==="*"&&U.nodeType===1)||U.nodeName===T},CLASS:function(U,T){return(" "+(U.className||U.getAttribute("class"))+" ").indexOf(T)>-1},ATTR:function(Y,W){var V=W[1],T=I.attrHandle[V]?I.attrHandle[V](Y):Y[V]!=null?Y[V]:Y.getAttribute(V),Z=T+"",X=W[2],U=W[4];return T==null?X==="!=":X==="="?Z===U:X==="*="?Z.indexOf(U)>=0:X==="~="?(" "+Z+" ").indexOf(U)>=0:!U?Z&&T!==false:X==="!="?Z!=U:X==="^="?Z.indexOf(U)===0:X==="$="?Z.substr(Z.length-U.length)===U:X==="|="?Z===U||Z.substr(0,U.length+1)===U+"-":false},POS:function(X,U,V,Y){var T=U[2],W=I.setFilters[T];if(W){return W(X,V,U,Y)}}}};var M=I.match.POS;for(var O in I.match){I.match[O]=RegExp(I.match[O].source+/(?![^\[]*\])(?![^\(]*\))/.source)}var E=function(U,T){U=Array.prototype.slice.call(U);if(T){T.push.apply(T,U);return T}return U};try{Array.prototype.slice.call(document.documentElement.childNodes)}catch(N){E=function(X,W){var U=W||[];if(H.call(X)==="[object Array]"){Array.prototype.push.apply(U,X)}else{if(typeof X.length==="number"){for(var V=0,T=X.length;V<T;V++){U.push(X[V])}}else{for(var V=0;X[V];V++){U.push(X[V])}}}return U}}var G;if(document.documentElement.compareDocumentPosition){G=function(U,T){var V=U.compareDocumentPosition(T)&4?-1:U===T?0:1;if(V===0){hasDuplicate=true}return V}}else{if("sourceIndex" in document.documentElement){G=function(U,T){var V=U.sourceIndex-T.sourceIndex;if(V===0){hasDuplicate=true}return V}}else{if(document.createRange){G=function(W,U){var V=W.ownerDocument.createRange(),T=U.ownerDocument.createRange();V.selectNode(W);V.collapse(true);T.selectNode(U);T.collapse(true);var X=V.compareBoundaryPoints(Range.START_TO_END,T);if(X===0){hasDuplicate=true}return X}}}}(function(){var U=document.createElement("form"),V="script"+(new Date).getTime();U.innerHTML="<input name='"+V+"'/>";var T=document.documentElement;T.insertBefore(U,T.firstChild);if(!!document.getElementById(V)){I.find.ID=function(X,Y,Z){if(typeof Y.getElementById!=="undefined"&&!Z){var W=Y.getElementById(X[1]);return W?W.id===X[1]||typeof W.getAttributeNode!=="undefined"&&W.getAttributeNode("id").nodeValue===X[1]?[W]:g:[]}};I.filter.ID=function(Y,W){var X=typeof Y.getAttributeNode!=="undefined"&&Y.getAttributeNode("id");return Y.nodeType===1&&X&&X.nodeValue===W}}T.removeChild(U)})();(function(){var T=document.createElement("div");T.appendChild(document.createComment(""));if(T.getElementsByTagName("*").length>0){I.find.TAG=function(U,Y){var X=Y.getElementsByTagName(U[1]);if(U[1]==="*"){var W=[];for(var V=0;X[V];V++){if(X[V].nodeType===1){W.push(X[V])}}X=W}return X}}T.innerHTML="<a href='#'></a>";if(T.firstChild&&typeof T.firstChild.getAttribute!=="undefined"&&T.firstChild.getAttribute("href")!=="#"){I.attrHandle.href=function(U){return U.getAttribute("href",2)}}})();if(document.querySelectorAll){(function(){var T=F,U=document.createElement("div");U.innerHTML="<p class='TEST'></p>";if(U.querySelectorAll&&U.querySelectorAll(".TEST").length===0){return}F=function(Y,X,V,W){X=X||document;if(!W&&X.nodeType===9&&!Q(X)){try{return E(X.querySelectorAll(Y),V)}catch(Z){}}return T(Y,X,V,W)};F.find=T.find;F.filter=T.filter;F.selectors=T.selectors;F.matches=T.matches})()}if(document.getElementsByClassName&&document.documentElement.getElementsByClassName){(function(){var T=document.createElement("div");T.innerHTML="<div class='test e'></div><div class='test'></div>";if(T.getElementsByClassName("e").length===0){return}T.lastChild.className="e";if(T.getElementsByClassName("e").length===1){return}I.order.splice(1,0,"CLASS");I.find.CLASS=function(U,V,W){if(typeof V.getElementsByClassName!=="undefined"&&!W){return V.getElementsByClassName(U[1])}}})()}function P(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1&&!ac){T.sizcache=Y;T.sizset=W}if(T.nodeName===Z){X=T;break}T=T[U]}ad[W]=X}}}function S(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1){if(!ac){T.sizcache=Y;T.sizset=W}if(typeof Z!=="string"){if(T===Z){X=true;break}}else{if(F.filter(Z,[T]).length>0){X=T;break}}}T=T[U]}ad[W]=X}}}var K=document.compareDocumentPosition?function(U,T){return U.compareDocumentPosition(T)&16}:function(U,T){return U!==T&&(U.contains?U.contains(T):true)};var Q=function(T){return T.nodeType===9&&T.documentElement.nodeName!=="HTML"||!!T.ownerDocument&&Q(T.ownerDocument)};var J=function(T,aa){var W=[],X="",Y,V=aa.nodeType?[aa]:aa;while((Y=I.match.PSEUDO.exec(T))){X+=Y[0];T=T.replace(I.match.PSEUDO,"")}T=I.relative[T]?T+"*":T;for(var Z=0,U=V.length;Z<U;Z++){F(T,V[Z],W)}return F.filter(X,W)};o.find=F;o.filter=F.filter;o.expr=F.selectors;o.expr[":"]=o.expr.filters;F.selectors.filters.hidden=function(T){return T.offsetWidth===0||T.offsetHeight===0};F.selectors.filters.visible=function(T){return T.offsetWidth>0||T.offsetHeight>0};F.selectors.filters.animated=function(T){return o.grep(o.timers,function(U){return T===U.elem}).length};o.multiFilter=function(V,T,U){if(U){V=":not("+V+")"}return F.matches(V,T)};o.dir=function(V,U){var T=[],W=V[U];while(W&&W!=document){if(W.nodeType==1){T.push(W)}W=W[U]}return T};o.nth=function(X,T,V,W){T=T||1;var U=0;for(;X;X=X[V]){if(X.nodeType==1&&++U==T){break}}return X};o.sibling=function(V,U){var T=[];for(;V;V=V.nextSibling){if(V.nodeType==1&&V!=U){T.push(V)}}return T};return;l.Sizzle=F})();o.event={add:function(I,F,H,K){if(I.nodeType==3||I.nodeType==8){return}if(I.setInterval&&I!=l){I=l}if(!H.guid){H.guid=this.guid++}if(K!==g){var G=H;H=this.proxy(G);H.data=K}var E=o.data(I,"events")||o.data(I,"events",{}),J=o.data(I,"handle")||o.data(I,"handle",function(){return typeof o!=="undefined"&&!o.event.triggered?o.event.handle.apply(arguments.callee.elem,arguments):g});J.elem=I;o.each(F.split(/\s+/),function(M,N){var O=N.split(".");N=O.shift();H.type=O.slice().sort().join(".");var L=E[N];if(o.event.specialAll[N]){o.event.specialAll[N].setup.call(I,K,O)}if(!L){L=E[N]={};if(!o.event.special[N]||o.event.special[N].setup.call(I,K,O)===false){if(I.addEventListener){I.addEventListener(N,J,false)}else{if(I.attachEvent){I.attachEvent("on"+N,J)}}}}L[H.guid]=H;o.event.global[N]=true});I=null},guid:1,global:{},remove:function(K,H,J){if(K.nodeType==3||K.nodeType==8){return}var G=o.data(K,"events"),F,E;if(G){if(H===g||(typeof H==="string"&&H.charAt(0)==".")){for(var I in G){this.remove(K,I+(H||""))}}else{if(H.type){J=H.handler;H=H.type}o.each(H.split(/\s+/),function(M,O){var Q=O.split(".");O=Q.shift();var N=RegExp("(^|\\.)"+Q.slice().sort().join(".*\\.")+"(\\.|$)");if(G[O]){if(J){delete G[O][J.guid]}else{for(var P in G[O]){if(N.test(G[O][P].type)){delete G[O][P]}}}if(o.event.specialAll[O]){o.event.specialAll[O].teardown.call(K,Q)}for(F in G[O]){break}if(!F){if(!o.event.special[O]||o.event.special[O].teardown.call(K,Q)===false){if(K.removeEventListener){K.removeEventListener(O,o.data(K,"handle"),false)}else{if(K.detachEvent){K.detachEvent("on"+O,o.data(K,"handle"))}}}F=null;delete G[O]}}})}for(F in G){break}if(!F){var L=o.data(K,"handle");if(L){L.elem=null}o.removeData(K,"events");o.removeData(K,"handle")}}},trigger:function(I,K,H,E){var G=I.type||I;if(!E){I=typeof I==="object"?I[h]?I:o.extend(o.Event(G),I):o.Event(G);if(G.indexOf("!")>=0){I.type=G=G.slice(0,-1);I.exclusive=true}if(!H){I.stopPropagation();if(this.global[G]){o.each(o.cache,function(){if(this.events&&this.events[G]){o.event.trigger(I,K,this.handle.elem)}})}}if(!H||H.nodeType==3||H.nodeType==8){return g}I.result=g;I.target=H;K=o.makeArray(K);K.unshift(I)}I.currentTarget=H;var J=o.data(H,"handle");if(J){J.apply(H,K)}if((!H[G]||(o.nodeName(H,"a")&&G=="click"))&&H["on"+G]&&H["on"+G].apply(H,K)===false){I.result=false}if(!E&&H[G]&&!I.isDefaultPrevented()&&!(o.nodeName(H,"a")&&G=="click")){this.triggered=true;try{H[G]()}catch(L){}}this.triggered=false;if(!I.isPropagationStopped()){var F=H.parentNode||H.ownerDocument;if(F){o.event.trigger(I,K,F,true)}}},handle:function(K){var J,E;K=arguments[0]=o.event.fix(K||l.event);K.currentTarget=this;var L=K.type.split(".");K.type=L.shift();J=!L.length&&!K.exclusive;var I=RegExp("(^|\\.)"+L.slice().sort().join(".*\\.")+"(\\.|$)");E=(o.data(this,"events")||{})[K.type];for(var G in E){var H=E[G];if(J||I.test(H.type)){K.handler=H;K.data=H.data;var F=H.apply(this,arguments);if(F!==g){K.result=F;if(F===false){K.preventDefault();K.stopPropagation()}}if(K.isImmediatePropagationStopped()){break}}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(H){if(H[h]){return H}var F=H;H=o.Event(F);for(var G=this.props.length,J;G;){J=this.props[--G];H[J]=F[J]}if(!H.target){H.target=H.srcElement||document}if(H.target.nodeType==3){H.target=H.target.parentNode}if(!H.relatedTarget&&H.fromElement){H.relatedTarget=H.fromElement==H.target?H.toElement:H.fromElement}if(H.pageX==null&&H.clientX!=null){var I=document.documentElement,E=document.body;H.pageX=H.clientX+(I&&I.scrollLeft||E&&E.scrollLeft||0)-(I.clientLeft||0);H.pageY=H.clientY+(I&&I.scrollTop||E&&E.scrollTop||0)-(I.clientTop||0)}if(!H.which&&((H.charCode||H.charCode===0)?H.charCode:H.keyCode)){H.which=H.charCode||H.keyCode}if(!H.metaKey&&H.ctrlKey){H.metaKey=H.ctrlKey}if(!H.which&&H.button){H.which=(H.button&1?1:(H.button&2?3:(H.button&4?2:0)))}return H},proxy:function(F,E){E=E||function(){return F.apply(this,arguments)};E.guid=F.guid=F.guid||E.guid||this.guid++;return E},special:{ready:{setup:B,teardown:function(){}}},specialAll:{live:{setup:function(E,F){o.event.add(this,F[0],c)},teardown:function(G){if(G.length){var E=0,F=RegExp("(^|\\.)"+G[0]+"(\\.|$)");o.each((o.data(this,"events").live||{}),function(){if(F.test(this.type)){E++}});if(E<1){o.event.remove(this,G[0],c)}}}}}};o.Event=function(E){if(!this.preventDefault){return new o.Event(E)}if(E&&E.type){this.originalEvent=E;this.type=E.type}else{this.type=E}this.timeStamp=e();this[h]=true};function k(){return false}function u(){return true}o.Event.prototype={preventDefault:function(){this.isDefaultPrevented=u;var E=this.originalEvent;if(!E){return}if(E.preventDefault){E.preventDefault()}E.returnValue=false},stopPropagation:function(){this.isPropagationStopped=u;var E=this.originalEvent;if(!E){return}if(E.stopPropagation){E.stopPropagation()}E.cancelBubble=true},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=u;this.stopPropagation()},isDefaultPrevented:k,isPropagationStopped:k,isImmediatePropagationStopped:k};var a=function(F){var E=F.relatedTarget;while(E&&E!=this){try{E=E.parentNode}catch(G){E=this}}if(E!=this){F.type=F.data;o.event.handle.apply(this,arguments)}};o.each({mouseover:"mouseenter",mouseout:"mouseleave"},function(F,E){o.event.special[E]={setup:function(){o.event.add(this,F,a,E)},teardown:function(){o.event.remove(this,F,a)}}});o.fn.extend({bind:function(F,G,E){return F=="unload"?this.one(F,G,E):this.each(function(){o.event.add(this,F,E||G,E&&G)})},one:function(G,H,F){var E=o.event.proxy(F||H,function(I){o(this).unbind(I,E);return(F||H).apply(this,arguments)});return this.each(function(){o.event.add(this,G,E,F&&H)})},unbind:function(F,E){return this.each(function(){o.event.remove(this,F,E)})},trigger:function(E,F){return this.each(function(){o.event.trigger(E,F,this)})},triggerHandler:function(E,G){if(this[0]){var F=o.Event(E);F.preventDefault();F.stopPropagation();o.event.trigger(F,G,this[0]);return F.result}},toggle:function(G){var E=arguments,F=1;while(F<E.length){o.event.proxy(G,E[F++])}return this.click(o.event.proxy(G,function(H){this.lastToggle=(this.lastToggle||0)%F;H.preventDefault();return E[this.lastToggle++].apply(this,arguments)||false}))},hover:function(E,F){return this.mouseenter(E).mouseleave(F)},ready:function(E){B();if(o.isReady){E.call(document,o)}else{o.readyList.push(E)}return this},live:function(G,F){var E=o.event.proxy(F);E.guid+=this.selector+G;o(document).bind(i(G,this.selector),this.selector,E);return this},die:function(F,E){o(document).unbind(i(F,this.selector),E?{guid:E.guid+this.selector+F}:null);return this}});function c(H){var E=RegExp("(^|\\.)"+H.type+"(\\.|$)"),G=true,F=[];o.each(o.data(this,"events").live||[],function(I,J){if(E.test(J.type)){var K=o(H.target).closest(J.data)[0];if(K){F.push({elem:K,fn:J})}}});F.sort(function(J,I){return o.data(J.elem,"closest")-o.data(I.elem,"closest")});o.each(F,function(){if(this.fn.call(this.elem,H,this.fn.data)===false){return(G=false)}});return G}function i(F,E){return["live",F,E.replace(/\./g,"`").replace(/ /g,"|")].join(".")}o.extend({isReady:false,readyList:[],ready:function(){if(!o.isReady){o.isReady=true;if(o.readyList){o.each(o.readyList,function(){this.call(document,o)});o.readyList=null}o(document).triggerHandler("ready")}}});var x=false;function B(){if(x){return}x=true;if(document.addEventListener){document.addEventListener("DOMContentLoaded",function(){document.removeEventListener("DOMContentLoaded",arguments.callee,false);o.ready()},false)}else{if(document.attachEvent){document.attachEvent("onreadystatechange",function(){if(document.readyState==="complete"){document.detachEvent("onreadystatechange",arguments.callee);o.ready()}});if(document.documentElement.doScroll&&l==l.top){(function(){if(o.isReady){return}try{document.documentElement.doScroll("left")}catch(E){setTimeout(arguments.callee,0);return}o.ready()})()}}}o.event.add(l,"load",o.ready)}o.each(("blur,focus,load,resize,scroll,unload,click,dblclick,mousedown,mouseup,mousemove,mouseover,mouseout,mouseenter,mouseleave,change,select,submit,keydown,keypress,keyup,error").split(","),function(F,E){o.fn[E]=function(G){return G?this.bind(E,G):this.trigger(E)}});o(l).bind("unload",function(){for(var E in o.cache){if(E!=1&&o.cache[E].handle){o.event.remove(o.cache[E].handle.elem)}}});(function(){o.support={};var F=document.documentElement,G=document.createElement("script"),K=document.createElement("div"),J="script"+(new Date).getTime();K.style.display="none";K.innerHTML=' <link/><table></table><a href="/a" style="color:red;float:left;opacity:.5;">a</a><select><option>text</option></select><object><param/></object>';var H=K.getElementsByTagName("*"),E=K.getElementsByTagName("a")[0];if(!H||!H.length||!E){return}o.support={leadingWhitespace:K.firstChild.nodeType==3,tbody:!K.getElementsByTagName("tbody").length,objectAll:!!K.getElementsByTagName("object")[0].getElementsByTagName("*").length,htmlSerialize:!!K.getElementsByTagName("link").length,style:/red/.test(E.getAttribute("style")),hrefNormalized:E.getAttribute("href")==="/a",opacity:E.style.opacity==="0.5",cssFloat:!!E.style.cssFloat,scriptEval:false,noCloneEvent:true,boxModel:null};G.type="text/javascript";try{G.appendChild(document.createTextNode("window."+J+"=1;"))}catch(I){}F.insertBefore(G,F.firstChild);if(l[J]){o.support.scriptEval=true;delete l[J]}F.removeChild(G);if(K.attachEvent&&K.fireEvent){K.attachEvent("onclick",function(){o.support.noCloneEvent=false;K.detachEvent("onclick",arguments.callee)});K.cloneNode(true).fireEvent("onclick")}o(function(){var L=document.createElement("div");L.style.width=L.style.paddingLeft="1px";document.body.appendChild(L);o.boxModel=o.support.boxModel=L.offsetWidth===2;document.body.removeChild(L).style.display="none"})})();var w=o.support.cssFloat?"cssFloat":"styleFloat";o.props={"for":"htmlFor","class":"className","float":w,cssFloat:w,styleFloat:w,readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",tabindex:"tabIndex"};o.fn.extend({_load:o.fn.load,load:function(G,J,K){if(typeof G!=="string"){return this._load(G)}var I=G.indexOf(" ");if(I>=0){var E=G.slice(I,G.length);G=G.slice(0,I)}var H="GET";if(J){if(o.isFunction(J)){K=J;J=null}else{if(typeof J==="object"){J=o.param(J);H="POST"}}}var F=this;o.ajax({url:G,type:H,dataType:"html",data:J,complete:function(M,L){if(L=="success"||L=="notmodified"){F.html(E?o("<div/>").append(M.responseText.replace(/<script(.|\s)*?\/script>/g,"")).find(E):M.responseText)}if(K){F.each(K,[M.responseText,L,M])}}});return this},serialize:function(){return o.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?o.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password|search/i.test(this.type))}).map(function(E,F){var G=o(this).val();return G==null?null:o.isArray(G)?o.map(G,function(I,H){return{name:F.name,value:I}}):{name:F.name,value:G}}).get()}});o.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(E,F){o.fn[F]=function(G){return this.bind(F,G)}});var r=e();o.extend({get:function(E,G,H,F){if(o.isFunction(G)){H=G;G=null}return o.ajax({type:"GET",url:E,data:G,success:H,dataType:F})},getScript:function(E,F){return o.get(E,null,F,"script")},getJSON:function(E,F,G){return o.get(E,F,G,"json")},post:function(E,G,H,F){if(o.isFunction(G)){H=G;G={}}return o.ajax({type:"POST",url:E,data:G,success:H,dataType:F})},ajaxSetup:function(E){o.extend(o.ajaxSettings,E)},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return l.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest()},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(M){M=o.extend(true,M,o.extend(true,{},o.ajaxSettings,M));var W,F=/=\?(&|$)/g,R,V,G=M.type.toUpperCase();if(M.data&&M.processData&&typeof M.data!=="string"){M.data=o.param(M.data)}if(M.dataType=="jsonp"){if(G=="GET"){if(!M.url.match(F)){M.url+=(M.url.match(/\?/)?"&":"?")+(M.jsonp||"callback")+"=?"}}else{if(!M.data||!M.data.match(F)){M.data=(M.data?M.data+"&":"")+(M.jsonp||"callback")+"=?"}}M.dataType="json"}if(M.dataType=="json"&&(M.data&&M.data.match(F)||M.url.match(F))){W="jsonp"+r++;if(M.data){M.data=(M.data+"").replace(F,"="+W+"$1")}M.url=M.url.replace(F,"="+W+"$1");M.dataType="script";l[W]=function(X){V=X;I();L();l[W]=g;try{delete l[W]}catch(Y){}if(H){H.removeChild(T)}}}if(M.dataType=="script"&&M.cache==null){M.cache=false}if(M.cache===false&&G=="GET"){var E=e();var U=M.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+E+"$2");M.url=U+((U==M.url)?(M.url.match(/\?/)?"&":"?")+"_="+E:"")}if(M.data&&G=="GET"){M.url+=(M.url.match(/\?/)?"&":"?")+M.data;M.data=null}if(M.global&&!o.active++){o.event.trigger("ajaxStart")}var Q=/^(\w+:)?\/\/([^\/?#]+)/.exec(M.url);if(M.dataType=="script"&&G=="GET"&&Q&&(Q[1]&&Q[1]!=location.protocol||Q[2]!=location.host)){var H=document.getElementsByTagName("head")[0];var T=document.createElement("script");T.src=M.url;if(M.scriptCharset){T.charset=M.scriptCharset}if(!W){var O=false;T.onload=T.onreadystatechange=function(){if(!O&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){O=true;I();L();T.onload=T.onreadystatechange=null;H.removeChild(T)}}}H.appendChild(T);return g}var K=false;var J=M.xhr();if(M.username){J.open(G,M.url,M.async,M.username,M.password)}else{J.open(G,M.url,M.async)}try{if(M.data){J.setRequestHeader("Content-Type",M.contentType)}if(M.ifModified){J.setRequestHeader("If-Modified-Since",o.lastModified[M.url]||"Thu, 01 Jan 1970 00:00:00 GMT")}J.setRequestHeader("X-Requested-With","XMLHttpRequest");J.setRequestHeader("Accept",M.dataType&&M.accepts[M.dataType]?M.accepts[M.dataType]+", */*":M.accepts._default)}catch(S){}if(M.beforeSend&&M.beforeSend(J,M)===false){if(M.global&&!--o.active){o.event.trigger("ajaxStop")}J.abort();return false}if(M.global){o.event.trigger("ajaxSend",[J,M])}var N=function(X){if(J.readyState==0){if(P){clearInterval(P);P=null;if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}}else{if(!K&&J&&(J.readyState==4||X=="timeout")){K=true;if(P){clearInterval(P);P=null}R=X=="timeout"?"timeout":!o.httpSuccess(J)?"error":M.ifModified&&o.httpNotModified(J,M.url)?"notmodified":"success";if(R=="success"){try{V=o.httpData(J,M.dataType,M)}catch(Z){R="parsererror"}}if(R=="success"){var Y;try{Y=J.getResponseHeader("Last-Modified")}catch(Z){}if(M.ifModified&&Y){o.lastModified[M.url]=Y}if(!W){I()}}else{o.handleError(M,J,R)}L();if(X){J.abort()}if(M.async){J=null}}}};if(M.async){var P=setInterval(N,13);if(M.timeout>0){setTimeout(function(){if(J&&!K){N("timeout")}},M.timeout)}}try{J.send(M.data)}catch(S){o.handleError(M,J,null,S)}if(!M.async){N()}function I(){if(M.success){M.success(V,R)}if(M.global){o.event.trigger("ajaxSuccess",[J,M])}}function L(){if(M.complete){M.complete(J,R)}if(M.global){o.event.trigger("ajaxComplete",[J,M])}if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}return J},handleError:function(F,H,E,G){if(F.error){F.error(H,E,G)}if(F.global){o.event.trigger("ajaxError",[H,F,G])}},active:0,httpSuccess:function(F){try{return !F.status&&location.protocol=="file:"||(F.status>=200&&F.status<300)||F.status==304||F.status==1223}catch(E){}return false},httpNotModified:function(G,E){try{var H=G.getResponseHeader("Last-Modified");return G.status==304||H==o.lastModified[E]}catch(F){}return false},httpData:function(J,H,G){var F=J.getResponseHeader("content-type"),E=H=="xml"||!H&&F&&F.indexOf("xml")>=0,I=E?J.responseXML:J.responseText;if(E&&I.documentElement.tagName=="parsererror"){throw"parsererror"}if(G&&G.dataFilter){I=G.dataFilter(I,H)}if(typeof I==="string"){if(H=="script"){o.globalEval(I)}if(H=="json"){I=l["eval"]("("+I+")")}}return I},param:function(E){var G=[];function H(I,J){G[G.length]=encodeURIComponent(I)+"="+encodeURIComponent(J)}if(o.isArray(E)||E.jquery){o.each(E,function(){H(this.name,this.value)})}else{for(var F in E){if(o.isArray(E[F])){o.each(E[F],function(){H(F,this)})}else{H(F,o.isFunction(E[F])?E[F]():E[F])}}}return G.join("&").replace(/%20/g,"+")}});var m={},n,d=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];function t(F,E){var G={};o.each(d.concat.apply([],d.slice(0,E)),function(){G[this]=F});return G}o.fn.extend({show:function(J,L){if(J){return this.animate(t("show",3),J,L)}else{for(var H=0,F=this.length;H<F;H++){var E=o.data(this[H],"olddisplay");this[H].style.display=E||"";if(o.css(this[H],"display")==="none"){var G=this[H].tagName,K;if(m[G]){K=m[G]}else{var I=o("<"+G+" />").appendTo("body");K=I.css("display");if(K==="none"){K="block"}I.remove();m[G]=K}o.data(this[H],"olddisplay",K)}}for(var H=0,F=this.length;H<F;H++){this[H].style.display=o.data(this[H],"olddisplay")||""}return this}},hide:function(H,I){if(H){return this.animate(t("hide",3),H,I)}else{for(var G=0,F=this.length;G<F;G++){var E=o.data(this[G],"olddisplay");if(!E&&E!=="none"){o.data(this[G],"olddisplay",o.css(this[G],"display"))}}for(var G=0,F=this.length;G<F;G++){this[G].style.display="none"}return this}},_toggle:o.fn.toggle,toggle:function(G,F){var E=typeof G==="boolean";return o.isFunction(G)&&o.isFunction(F)?this._toggle.apply(this,arguments):G==null||E?this.each(function(){var H=E?G:o(this).is(":hidden");o(this)[H?"show":"hide"]()}):this.animate(t("toggle",3),G,F)},fadeTo:function(E,G,F){return this.animate({opacity:G},E,F)},animate:function(I,F,H,G){var E=o.speed(F,H,G);return this[E.queue===false?"each":"queue"](function(){var K=o.extend({},E),M,L=this.nodeType==1&&o(this).is(":hidden"),J=this;for(M in I){if(I[M]=="hide"&&L||I[M]=="show"&&!L){return K.complete.call(this)}if((M=="height"||M=="width")&&this.style){K.display=o.css(this,"display");K.overflow=this.style.overflow}}if(K.overflow!=null){this.style.overflow="hidden"}K.curAnim=o.extend({},I);o.each(I,function(O,S){var R=new o.fx(J,K,O);if(/toggle|show|hide/.test(S)){R[S=="toggle"?L?"show":"hide":S](I)}else{var Q=S.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),T=R.cur(true)||0;if(Q){var N=parseFloat(Q[2]),P=Q[3]||"px";if(P!="px"){J.style[O]=(N||1)+P;T=((N||1)/R.cur(true))*T;J.style[O]=T+P}if(Q[1]){N=((Q[1]=="-="?-1:1)*N)+T}R.custom(T,N,P)}else{R.custom(T,S,"")}}});return true})},stop:function(F,E){var G=o.timers;if(F){this.queue([])}this.each(function(){for(var H=G.length-1;H>=0;H--){if(G[H].elem==this){if(E){G[H](true)}G.splice(H,1)}}});if(!E){this.dequeue()}return this}});o.each({slideDown:t("show",1),slideUp:t("hide",1),slideToggle:t("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(E,F){o.fn[E]=function(G,H){return this.animate(F,G,H)}});o.extend({speed:function(G,H,F){var E=typeof G==="object"?G:{complete:F||!F&&H||o.isFunction(G)&&G,duration:G,easing:F&&H||H&&!o.isFunction(H)&&H};E.duration=o.fx.off?0:typeof E.duration==="number"?E.duration:o.fx.speeds[E.duration]||o.fx.speeds._default;E.old=E.complete;E.complete=function(){if(E.queue!==false){o(this).dequeue()}if(o.isFunction(E.old)){E.old.call(this)}};return E},easing:{linear:function(G,H,E,F){return E+F*G},swing:function(G,H,E,F){return((-Math.cos(G*Math.PI)/2)+0.5)*F+E}},timers:[],fx:function(F,E,G){this.options=E;this.elem=F;this.prop=G;if(!E.orig){E.orig={}}}});o.fx.prototype={update:function(){if(this.options.step){this.options.step.call(this.elem,this.now,this)}(o.fx.step[this.prop]||o.fx.step._default)(this);if((this.prop=="height"||this.prop=="width")&&this.elem.style){this.elem.style.display="block"}},cur:function(F){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)){return this.elem[this.prop]}var E=parseFloat(o.css(this.elem,this.prop,F));return E&&E>-10000?E:parseFloat(o.curCSS(this.elem,this.prop))||0},custom:function(I,H,G){this.startTime=e();this.start=I;this.end=H;this.unit=G||this.unit||"px";this.now=this.start;this.pos=this.state=0;var E=this;function F(J){return E.step(J)}F.elem=this.elem;if(F()&&o.timers.push(F)&&!n){n=setInterval(function(){var K=o.timers;for(var J=0;J<K.length;J++){if(!K[J]()){K.splice(J--,1)}}if(!K.length){clearInterval(n);n=g}},13)}},show:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.show=true;this.custom(this.prop=="width"||this.prop=="height"?1:0,this.cur());o(this.elem).show()},hide:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.hide=true;this.custom(this.cur(),0)},step:function(H){var G=e();if(H||G>=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var E=true;for(var F in this.options.curAnim){if(this.options.curAnim[F]!==true){E=false}}if(E){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(o.css(this.elem,"display")=="none"){this.elem.style.display="block"}}if(this.options.hide){o(this.elem).hide()}if(this.options.hide||this.options.show){for(var I in this.options.curAnim){o.attr(this.elem.style,I,this.options.orig[I])}}this.options.complete.call(this.elem)}return false}else{var J=G-this.startTime;this.state=J/this.options.duration;this.pos=o.easing[this.options.easing||(o.easing.swing?"swing":"linear")](this.state,J,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update()}return true}};o.extend(o.fx,{speeds:{slow:600,fast:200,_default:400},step:{opacity:function(E){o.attr(E.elem.style,"opacity",E.now)},_default:function(E){if(E.elem.style&&E.elem.style[E.prop]!=null){E.elem.style[E.prop]=E.now+E.unit}else{E.elem[E.prop]=E.now}}}});if(document.documentElement.getBoundingClientRect){o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}var G=this[0].getBoundingClientRect(),J=this[0].ownerDocument,F=J.body,E=J.documentElement,L=E.clientTop||F.clientTop||0,K=E.clientLeft||F.clientLeft||0,I=G.top+(self.pageYOffset||o.boxModel&&E.scrollTop||F.scrollTop)-L,H=G.left+(self.pageXOffset||o.boxModel&&E.scrollLeft||F.scrollLeft)-K;return{top:I,left:H}}}else{o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}o.offset.initialized||o.offset.initialize();var J=this[0],G=J.offsetParent,F=J,O=J.ownerDocument,M,H=O.documentElement,K=O.body,L=O.defaultView,E=L.getComputedStyle(J,null),N=J.offsetTop,I=J.offsetLeft;while((J=J.parentNode)&&J!==K&&J!==H){M=L.getComputedStyle(J,null);N-=J.scrollTop,I-=J.scrollLeft;if(J===G){N+=J.offsetTop,I+=J.offsetLeft;if(o.offset.doesNotAddBorder&&!(o.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(J.tagName))){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}F=G,G=J.offsetParent}if(o.offset.subtractsBorderForOverflowNotVisible&&M.overflow!=="visible"){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}E=M}if(E.position==="relative"||E.position==="static"){N+=K.offsetTop,I+=K.offsetLeft}if(E.position==="fixed"){N+=Math.max(H.scrollTop,K.scrollTop),I+=Math.max(H.scrollLeft,K.scrollLeft)}return{top:N,left:I}}}o.offset={initialize:function(){if(this.initialized){return}var L=document.body,F=document.createElement("div"),H,G,N,I,M,E,J=L.style.marginTop,K='<div style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;"><div></div></div><table style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;" cellpadding="0" cellspacing="0"><tr><td></td></tr></table>';M={position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"};for(E in M){F.style[E]=M[E]}F.innerHTML=K;L.insertBefore(F,L.firstChild);H=F.firstChild,G=H.firstChild,I=H.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(G.offsetTop!==5);this.doesAddBorderForTableAndCells=(I.offsetTop===5);H.style.overflow="hidden",H.style.position="relative";this.subtractsBorderForOverflowNotVisible=(G.offsetTop===-5);L.style.marginTop="1px";this.doesNotIncludeMarginInBodyOffset=(L.offsetTop===0);L.style.marginTop=J;L.removeChild(F);this.initialized=true},bodyOffset:function(E){o.offset.initialized||o.offset.initialize();var G=E.offsetTop,F=E.offsetLeft;if(o.offset.doesNotIncludeMarginInBodyOffset){G+=parseInt(o.curCSS(E,"marginTop",true),10)||0,F+=parseInt(o.curCSS(E,"marginLeft",true),10)||0}return{top:G,left:F}}};o.fn.extend({position:function(){var I=0,H=0,F;if(this[0]){var G=this.offsetParent(),J=this.offset(),E=/^body|html$/i.test(G[0].tagName)?{top:0,left:0}:G.offset();J.top-=j(this,"marginTop");J.left-=j(this,"marginLeft");E.top+=j(G,"borderTopWidth");E.left+=j(G,"borderLeftWidth");F={top:J.top-E.top,left:J.left-E.left}}return F},offsetParent:function(){var E=this[0].offsetParent||document.body;while(E&&(!/^body|html$/i.test(E.tagName)&&o.css(E,"position")=="static")){E=E.offsetParent}return o(E)}});o.each(["Left","Top"],function(F,E){var G="scroll"+E;o.fn[G]=function(H){if(!this[0]){return null}return H!==g?this.each(function(){this==l||this==document?l.scrollTo(!F?H:o(l).scrollLeft(),F?H:o(l).scrollTop()):this[G]=H}):this[0]==l||this[0]==document?self[F?"pageYOffset":"pageXOffset"]||o.boxModel&&document.documentElement[G]||document.body[G]:this[0][G]}});o.each(["Height","Width"],function(I,G){var E=I?"Left":"Top",H=I?"Right":"Bottom",F=G.toLowerCase();o.fn["inner"+G]=function(){return this[0]?o.css(this[0],F,false,"padding"):null};o.fn["outer"+G]=function(K){return this[0]?o.css(this[0],F,false,K?"margin":"border"):null};var J=G.toLowerCase();o.fn[J]=function(K){return this[0]==l?document.compatMode=="CSS1Compat"&&document.documentElement["client"+G]||document.body["client"+G]:this[0]==document?Math.max(document.documentElement["client"+G],document.body["scroll"+G],document.documentElement["scroll"+G],document.body["offset"+G],document.documentElement["offset"+G]):K===g?(this.length?o.css(this[0],J):null):this.css(J,typeof K==="string"?K:K+"px")}})})();
\ No newline at end of file diff --git a/examples/lessons/6_Maths_quickDivision/js/karma.js b/examples/lessons/6_Maths_quickDivision/js/karma.js deleted file mode 100755 index 03f027b..0000000 --- a/examples/lessons/6_Maths_quickDivision/js/karma.js +++ /dev/null @@ -1,1018 +0,0 @@ -/* Documentation Note: - * Public methods and properties are commented with /** some text *\/ - * and private methods and properties are commented with // - * - * Please leave it that way to keep this documentation sane - */ - - -/* -* Karma Framework -* http://karmaeducation.org -* -* Copyright (c) 2009 -* Bryan W Berry bryan@olenepal.org -* Felipe López Toledo zer.subzero@gmail.com -* -* Under MIT License: -* Permission is hereby granted, free of charge, to any person -* obtaining a copy of this software and associated documentation -* files (the "Software"), to deal in the Software without -* restriction, including without limitation the rights to use, -* copy, modify, merge, publish, distribute, sublicense, and/or sell -* copies of the Software, and to permit persons to whom the -* Software is furnished to do so, subject to the following -* conditions: -* -* The above copyright notice and this permission notice shall be -* included in all copies or substantial portions of the Software. -* -* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -* OTHER DEALINGS IN THE SOFTWARE. -*/ - -/** -* @fileOverview Contains karma library -* @author Bryan Berry <bryan@olenepal.org> -* @author Felipe Lopez Toledo <zer.subzero@gmail.com> -*/ - - -//common.js modules use exports object -if(!this.exports) { - exports = {}; -} - - - -/** Checks if the current document type is set to HTML 5, throws - * an error otherwise, then initializes the karma object and returns - * a reference to that object. - * @namespace Global namespace for Karma library - * @param {Object} [options={}] options for intializing Karma library - * @param {String} [options.locale=''] sets current locale Not Yet Implemented - * @param {Array} [options.image=[]] array of images to be converted into a collection - * @param {Array} [options.audio=[]] array of audio to be converted into a collection - * @param {Array} [options.video=[]] array of videos to be converted into a collection - * @param {Array} [options.svg=[]] array of SVG elements to be - * converted into a collection. Each SVG element must already exist in the html document - * @param {Array} [options.canvas=[]] array of canvas elements - * to be converted into a collection. Each canvas element must already exist in the - * html document and width and height of each element must be set as attributes - * @throws {Error} if the document type declaration is not set to HTML 5, e.g. - * <!DOCTYPE html> - * @throws {Error} If any of the initialization parameters are invalid values - * @returns {Object} Karma.karma -- reference to the initialized Karma library - * @example - * - * var k = Karma({ - * image: [ - * {name: "ninja", file: "ninja.png"}, - * {name: "cowboy", file: "cowboy.png"} - * ], - * audio: [ - * {name: "woosh", file: "woosh.ogg"}, - * {name: "yeehaw", file: "yeehaw.ogg"} - * ], - * video: [ - * {name: "attack", file: "attack.ogv"}, - * {name: "ride", file: "ride.ogv"} - * ] - * canvas: [ - * {name: "ninja", domId: "ninjaCanvas"}, - * {name: "cowboy", domId: "cowboyCanvas"} - * ], - * svg: [ - * {name: "ninja", domId: "ninjaSvg"}, - * {name: "cowboy", domId: "cowboySvg"} - * ], - * }); - * Next, call the ready function with a callback to your program code - * - * k.ready(function () { ... your application code . . . } - * - * after that you can access each asset like so - * k.image.ninja; - * k.svg.cowboy; - * k.audio.yeehaw.play(); - * k.canvas.ninja.drawImage(k.image.ninja, 0, 0); - * - */ -var Karma = exports.Karma = function (options) { - Karma._isHtml5(document.doctype.nodeName); - - if ( Karma.karma._initialized === true ) { - return Karma.karma; - } else { - return Karma.karma._init(options); - } -}; - - -//helper functions - -/**This emulates the Object.create method in ecmascript 5 spec - * This isn't a full implementation as it doesn't support - * This has the same functionality as Crockford's beget method - * and this primary building block for prototypal inheritance in - * this library - * @param {Object} target that the new object's prototype should point to - * @returns {Object} object whose prototype points to target - * @example - * - * var ninja = { weapon : "sword" }; - * var ninja1 = Karma.create(ninja); - * ninja1.sword === "sword" - */ -Karma.create = function (target){ - function F () {}; - F.prototype = target; - return new F(); -}; - -/** Returns a shallow copy of the passed in object - * @param {Object} target to be copied - * @returns {Object} a shallow copy of target - */ -Karma.clone = function (target){ - var copy = {}; - for ( var i in target ) { - if(target.hasOwnProperty(i)){ - copy[i] = target[i]; - } - } - return copy; -}; - -/** Extends properties of the target object with those of - * the source object - * @param {Object} target object to be extended - * @param {Object} source whose properties will extend target - * @returns {Object} target extended by source - */ -Karma.objectPlus = function (target, source){ - for ( var i in source){ - if (source.hasOwnProperty(i)){ - target[i] = source[i]; - } - } - return target; -}; - -/** Creates a new object that is a prototype of the first argument - * then extends it with the properties of the second argument - * @param {Object} parent1 will be prototype of returned object - * @param {Object} parent2 will extend properties of returned object - * @returns {Object} object that whose prototype is parent1 and has - * been extended with properties of parent2 - */ -Karma.copyObjectPlus = function (parent1, parent2){ - function F () {}; - F.prototype = parent1; - var G = new F(); - return Karma.objectPlus(G, parent2); -}; - -//Enables function chaining for a specified list of function names -//IMPORTANT: use of closures here with "this" and "that" is __very__ -//complicated here -Karma._makeChain = function (chainingFunctions) { - var that = this; - var _chainFunction = function ( name ){ - that[ name ] = function ( ){ - var type = typeof this.ctx[name]; - if ( type === "function") { - this.ctx[ name ].apply( this.ctx, arguments ); - }else if ( type === "string" ){ - this.ctx[ name ] = arguments[0]; - }else { - throw ("wtf?!: impossible to chain " + name + "!"); - } - return this; - }; - }; - - for (var i = 0; i < chainingFunctions.length; i++){ - _chainFunction( chainingFunctions[ i ] ); - } -}; - -//Throws big ugly error if doctype isn't html5 -Karma._isHtml5 = function (doctype){ - var regex = new RegExp('^html$', 'i'); - if(!regex.test(doctype)){ - var errorMsg = "ERROR: The doctype must be set to <!DOCTYPE html> " + - "in order to use Karma. Karma require you use html5"; - var errorElem = document.createElement('div'); - errorElem.setAttribute('id', 'errorDoctype'); - errorElem.innerText = errorMsg; - document.body.appendChild(errorElem); - throw new Error(errorMsg); - } -}; - - -/** Stores global settings for the Karma library - * @class This object stores the global settings for the Karma library - */ -Karma.karma = { - /** This is the global locale as passed to Karma(), - * such as "en", "es_SP" - * @type string - * @default undefined - */ - locale : undefined, - /** Collection of images with special helper - * methods added to each reference - * @type object - * @default empty object - */ - image : {}, - /** Collection of audio with special helper - * methods added to each reference - * @type object - * @default empty object - */ - audio : {}, - /** Collection of canvas with special helper - * methods added to each reference - * @type object - * @default empty object - */ - canvas : {}, - /** Collection of svgs with special helper - * methods added to each reference - * @type object - * @default empty object - */ - svg : {}, - /** Collection of videos with special helper - * methods added to each reference - * @type object - * @default empty object - */ - video : {}, - _localized : false, - _assetPath : "assets/", - _localePath : "", - _initialized : false, - _statusDiv: undefined, - _loaderDiv : undefined, - _counters : { total : 0, errors : 0, loaded : 0}, - - //init initializes all the assets passed to Karma, that's it - //it returns 'this' so it can be used for function chaining - _init: function(options) { - this._initialized = true; - - //set up message that show count of assets loaded - //and has an ordered list to append error messages to - var _statusDiv = this._statusDiv = document.createElement('div'); - this._loaderDiv = this._loaderDiv = document.createElement('div'); - var errorList = document.createElement('ol'); - - _statusDiv.setAttribute('id', 'karma-status'); - _statusDiv.setAttribute('style', 'position:absolute;'); - _statusDiv.innerHTML = 'Karma is loading ...'; - this._loaderDiv.setAttribute('id', 'karma-loader'); - this._loaderDiv.setAttribute('class', 'status'); - errorList.setAttribute('id', 'errorList'); - - _statusDiv.appendChild(this._loaderDiv); - this._statusDiv.appendChild(errorList); - document.body.appendChild(_statusDiv); - - - //chain the functions for kCanvas and kSvg - Karma._makeChain.call(Karma.kCanvas, - Karma.kCanvas._chainingFunctions); - //Karma._makeChain.apply(Karma.kSvg, Karma.kSvg._chainingFunctions); - - - - //regular expression that matches the name of aprivate property - // the karma object - var regexPrivate = new RegExp('^_.*'); - - for ( var option in options ) { - if (options.hasOwnProperty(option)){ - if (option === "image" || option === "audio" || option === - "svg" || option === "video" || option === "canvas"){ - - if(!(options[option] instanceof Array)){ - throw new Error("" + option + " must be an array"); - } else if (options[option].length === 0){ - continue; - } - } else if (regexPrivate.test(option)){ - //don't overwrite a private property of karma object - continue; - } - - switch (option){ - case "locale": - - if (this._isValidLocale(options[option])){ - this.locale = this._normalizeLocale(options[option]); - this._localized = true; - this._localePath = Karma._computeLocalePath(this.locale); - } else { - throw new Error("locale provided to karma._init() is invalid"); - } - - break; - case "image": - options[option]._type = 'image'; - Karma._makeImages(options[option]); - break; - case "audio": - options[option]._type = 'audio'; - Karma._makeAudio(options[option]); - break; - case "video": - options[option]._type = 'video'; - Karma._makeVideos(options[option]); - break; - case "svg": - options[option]._type = 'svg'; - Karma._makeSvgs(options[option]); - break; - case "canvas": - options[option]._type = 'canvas'; - Karma._makeCanvases(options[option]); - break; - } - } - } - - - - return this; - }, - - /** Waits until all assets loaded, i.e. ready, then calls callback - * @param {Function} [cb] callback function - * @returns this - * @throws {Error} if Karma.karma is not initialized with the - * Karma({ options }) function - * @example - * - * var k = Karma({ . . . your assets here . . . }); - * k.ready(function(){ .. your code here . . .}); - * - * your code will not be called until all assets have been loaded - * - */ - ready : function( cb ) { - var that = this; - if (Karma.karma._initialized !== true){ - throw new Error("Karma.karma not initialized"); - } - - if (this._counters.loaded !== this._counters.total){ - setTimeout(function(){ that.ready(cb);}, 5); - } else if (cb) { - //hide the "Karma is loading..." message - this._statusDiv.setAttribute('style', 'display:none;'); - - cb(); - } else if (!cb) { - //hide the "Karma is loading..." message - this._statusDiv.setAttribute('style', 'display:none;'); - - //if no options passed, show it works message - this._showStarterMessage(); - } - - - - - return this; - }, - - //Display Apache-like "It works" message if no options - _showStarterMessage : function (){ - var starterMsg = document.createElement('div'); - starterMsg.setAttribute('id', 'starterMsg'); - starterMsg.innerHTML = "<h1>It Works</h1>"; - document.body.appendChild(starterMsg); - }, - - //Updates visible counter of how many assets are loaded - _updateStatus : function (errorMsg) { - var loaded = this._counters.loaded; - var total = this._counters.total; - var errors = this._counters.errors; - this._loaderDiv.innerHTML = "Loaded " + loaded + " / " + total + - "" + (errors > 0 ? " Errors [ " + errors +" ]" : ''); - if (errorMsg) { - var liError = document.createElement('li'); - liError.innerHTML = errorMsg; - var errorList = document.getElementById('errorList'); - errorList.appendChild(liError); - } - }, - - //matches 2 letter country code then optionally - //a dash or underscore followed by a country or language identifier - //i currently only allow a language identifier 2-3 chars long - _isValidLocale : function (locale) { - var localeRegex = new RegExp('^[a-zA-Z][a-zA-Z]([-_][a-zA-z]{2,3})?$'); - return localeRegex.test(locale); - }, - - _normalizeLocale : function(locale) { - var lang = ""; - var country = ""; - var divider = ""; - - lang = locale.slice(0, 2).toLowerCase(); - divider = "_"; - country = locale.slice(3, 6).toUpperCase(); - - return locale.length > 2 ? "" + lang + divider + country : lang; - }, - - // Below are geometry and math helper methods - - /** - * Converts a value from degrees to radians. - * @param {Number} angle The angle in degrees - * @returns {Number} The angle in radians - */ - radians : function( angle ){ - return ( angle / 180 ) * Math.PI; - }, - /** - * Gets the square of the Euclidian (ordinary) distance between 2 points. - * @param {Object} Point No. 0 - * @param {Number} Point0.x - * @param {Number} Point0.y - * @param {Object} Point No. 1 - * @param {Number} Point1.x - * @param {Number} Point1.y - * @returns {Number} The square of the Euclidian distance - * @example - * - * p0 = {x:0, y:1}; - * p1 = {x:50, y:70}; - * var d = distance2(p0, p1); - * - */ - distance2 : function ( p0, p1 ) { - return (p1.x - p0.x) * (p1.x - p0.x) + (p1.y - p1.y) * (p1.y - p1.y); - }, - /** - * Gets the Euclidian (ordinary) distance between 2 points.<br> - * <b>Warning:</b> It's slower than distance2 function - * @param {Object} Point No. 0 - * @param {Number} Point0.x - * @param {Number} Point0.y - * @param {Object} Point No. 1 - * @param {Number} Point1.x - * @param {Number} Point1.y - * @returns {Number} The Euclidian distance - * @example - * - * p0 = {x:0, y:1}; - * p1 = {x:50, y:70}; - * var d = distance2(p0, p1); - * - */ - distance : function ( p0, p1 ) { - return Math.sqrt( this.distance2( p0, p1 ) ); - }, - /** Returns a random number within the range provided - * @param {Number} lower limit of the range, lowest number that can be returned - * @param {Number} upper limit of the range, highest number that can be returned - * @returns {Number} number that is >= lower and <= upper - * @example - * - * var num = rand(0, 10); - * - * num could be 0, 1, 2, 3 ... or 10 - * - */ - rand : function ( lower, upper ){ - return Math.round( Math.random() * (upper - lower) + lower ); - } - -}; - -/** Prototypal object for images, videos, and audio files but - * does not include svg or canvas elements - * @class This object is the prototype for images, videos, and audio files but - * does not include svg or canvas elements - * @ throws {Error} if the individual asset is set to be localized but - * the globale locale is not set on the Karma.karma object - * @ throws {Error} if the name and file properties are not supplied - * @example - * kMedia is the prototype object for images, audio, and videos. - * These 'media' assets are loaded in a distinctly different way - * from the canvas or svg assets. They also have distinctly different - * helper methods - * - * You initialize the kMedia assets by passing an array of objects - */ -Karma.kMedia = { - /** file location of asset - * @type String - * @default "" - */ - file : "", - /** media object - * @type Audio|Image|Video - * @default undefined - */ - media : undefined, - //actual path to the file - _path : "", - //if using localized version of this asset - _localized : false, - //audio, image, or video - _type : "", - //initializes kMedia instance with values provided by user - _init : function (asset) { - asset._localized = asset._localized || false; - Karma.karma._counters.total++; - - if (asset.name === undefined || asset.file === undefined){ - throw new Error("properties name and file have to be defined"); - } else { - this.name = asset.name; - this.file = asset.file; - } - - //_type is a private variable used internally - if (asset._type === undefined){ - throw new Error("the _type property must be set. " + - "Blame the karma library authors as this is an internal value"); - } else { - if (Karma._isValidType(asset._type)){ - this._type = asset._type; - switch ( this._type ) { - case "image": this.media = new Image(); - break; - case "audio": this.media = new Audio(); - break; - //case "video": - //NYI - //this.media = new Video(); - break; - default: throw new Error("Media type not supported"); - } - - } else { - throw new Error("the _type property supplied is invalid. " + - "Blame the karma library authors as this is an internal value"); - } - } - - if(Karma._isLocalized(asset._localized)){ - this._localized = asset._localized; - this._path = Karma.karma._localePath + - this._type + "/"; - } else { - this._path = Karma.karma._assetPath + - this._type + "/"; - } - - - //IMPORTANT: This one magic line loads the file - this.media.src = this.src = this._path + this.file; - - //add event handlers - this._addEventHandlers(); - - if (this._type === "audio"){ - this.media.autobuffer = true; - this.media.load(); - } - - - return this; - }, - //Adds event handlers to update the counters when - //the asset is successfully or unsuccessfully loaded - _addEventHandlers : function () { - var that = this; - var loadEvent = "load"; - //Browser Hack recommended by chromium devs - //http://code.google.com/p/chromium/issues/detail?id=20251&q=loading%20audio&colspec=ID%20Stars%20Pri%20Area%20Type%20Status%20Summary%20Modified%20Owner%20Mstone%20OS#c4 - if (this._type === "audio" || this._type === "video"){ - loadEvent = "canplaythrough"; - } - - that.media.addEventListener( - loadEvent, - function (e) { - Karma.karma._counters.loaded++; - Karma.karma._updateStatus(); - that.status = "loaded";}, false); - - that.media.addEventListener( - "error", - function (e) { - Karma.karma._counters.errors++; - that.status = "error"; - var errorMsg = "Error: " + that._type.toUpperCase() + - " " + that.name + " cannot be loaded."; - Karma.karma._updateStatus(errorMsg); - }, - false); - that.media.addEventListener( - "abort", - function (e) { - Karma.karma._counters.total++; - that.status = "aborted"; - var errorMsg = "ABORT: " + that._type.toUpperCase() + - " " + that.name + " loading was aborted."; - Karma.karma._updateStatus(errorMsg); - - }, false); - - } - -}; - -//determine if it is a valid type of asset -Karma._isValidType = function (type){ - return type === "image" || - type === "svg" || - type === "audio" || - type === "video" || - type === "canvas"; -}; - -Karma._isLocalized = function (boolLocalized) { - if (typeof boolLocalized === "boolean" ) { - if(boolLocalized === true && - Karma.karma.locale === undefined){ - throw new Error("You cannot localize a media asset" + - " if the global locale for Karma isn't set"); - } else { - return boolLocalized; - } - } else if (typeof boolLocalized === undefined){ - return false; - } else{ - throw new Error("This is not a valid value for the localized option"); - } -}; - -Karma._computeLocalePath = function(locale) { - return Karma.karma._assetPath + locale + "/"; -}; - -Karma._makeImages = function (imgConfigs){ - var makeImage = function (imgConfig){ - var image = undefined; - imgConfig._type = "image"; - image = Karma.create(Karma.kMedia)._init(imgConfig); - Karma.karma.image[imgConfig.name] = image; - }; - - imgConfigs.forEach(function(imgConfig){ makeImage(imgConfig);}); - -}; - -Karma._makeAudio = function (audioConfigs){ - var makeAudio = function (audioConfig){ - var audio = undefined; - audioConfig._type = "audio"; - audio = Karma.create(Karma.kMedia)._init(audioConfig); - audio.play = function () { - //hack to fix the audio "stuttering" problem - //more info: https://bugs.launchpad.net/karma/+bug/426108 - this.media.currentTime = 0.1; - this.media.play(); - }; - Karma.karma.audio[audioConfig.name] = audio; - }; - - audioConfigs.forEach(function(audioConfig){ makeAudio(audioConfig);}); - -}; - - -Karma._makeCanvases = function (canvasConfigs){ - var makeCanvas = function (canvasConfig){ - var canvas = undefined; - canvas = Karma.create(Karma.kCanvas)._init(canvasConfig); - Karma.karma.canvas[canvasConfig.name] = canvas; - }; - - canvasConfigs.forEach(function(canvasConfig){ makeCanvas(canvasConfig);}); - -}; - -/** Prototypal object for each canvas element submitted to Karma in the - * Karma() method - * @throws {Error} if the name and domId for the canvas element are not specified - * @thows {Error} if the supplied domId does not match an element in the DOM - * @class This object is the prototype for each canvas element submitted to Karma in the - * Karma() method - */ -Karma.kCanvas = { - /** Name of the canvas, used internally by karma.js - * @type String - * @default '' - */ - name : '', - /** Width of canvas element - * @type Number - * @default 0 - */ - width: 0, - /** Height of canvas element - * @type Number - * @default 0 - */ - height: 0, - /** Whether canvas is visible - * @type boolean - * @default true - */ - visible: true, - /** Element ID for canvas element in html document - * @type String - * @default undefined - */ - domId: undefined, - /** Reference to the DOM element - * @type DOMElement - * @default undefined - */ - node: undefined, - /** The 2 Dimensional Rendering context property for this canvas - * @type 2DRenderingContext - * @default undefined - */ - ctx: undefined, - /** Frames Per Second, I don't know what the purpose of this is, - * Felipe made it up - * @type Number - * @default 24 - */ - fps: 24, - - //initializes object with values provides by user - _init: function (config) { - for (var option in config){ - if (config.hasOwnProperty(option)){ - switch (option){ - case "name": - this.name = config[option]; - break; - case "domId": - this.domId = config[option]; - break; - case "width": - if(!this.height){ - throw new Error("If you specify a width you must also" + - "specify a height"); - } - this.width = config[option]; - break; - case "height": - if(!this.width){ - throw new Error("If you specify a height you must also" + - "specify a width"); - } - this.height = parseInt(config.option, 10); - break; - case "fps": - this.fps = parseInt(config.option, 10); - break; - } - } - } - - if(this.domId && document.getElementById(this.domId)){ - this.node = document.getElementById(this.domId); - this.ctx = this.node.getContext('2d'); - } else { - throw new Error('you must specify a valid domId that' + - 'is in your html page'); - } - - if(!config.height && !config.width){ - this.width = parseInt(this.node.getAttribute('width'), 10); - this.height = parseInt(this.node.getAttribute('height'), 10); - } - - return this; - }, - /** Clear area of canvas element specified by parameters, if no - * parameters supplied, clears entire canvas - * @param {Number} [x=0] x coordinate, defaults to zero if left blank - * @param {Number} [y=0] y coordinate, defaults to zero if left blank - * @param {Number} [width=0] width of area to be cleared, defaults - * entire width of canvas - * @param {Number} [height=0] height of area to be cleared, defaults - * entire height of canvas - * @returns this - * @example - * - * k.canvas.ninja.clear(); - * // clears the entire ninja canvas - * - * k.canvas.ninja.clear(0, 10, 20, 30); - * //clears a specific portion of the ninja canvas - * - */ - clear : function ( x, y, width, height ) { - var that = this; - that.ctx.clearRect( - x || 0, - y || 0, - width || that.width, - height || that.height - ); - return that; - }, - - //These are all properties or methods of the canvas element's - //2 dimensional context - _chainingFunctions : [ - "globalAlpha", "globalCompositeOperation", "lineWidth", "lineCap", - "lineJoin", "miterLimit", "font", "textAlign", "textBaseline", "save", - "restore", "scale", "rotate", "translate", "transform", "setTransform", - "clearRect", "fillRect", "strokeRect", "beginPath", "closePath", - "moveTo", "lineTo", "quadraticCurveTo", "bezierCurveTo", "arcTo", - "arc", "rect", "fill", "stroke", "clip", "fillText", "strokeText", - "measureText", "isPointInPath", "strokeStyle", "fillStyle", - "createLinearGradient", "createRadialGradient", "createPattern", - "shadowOffsetX", "shadowOffsetY", "shadowBlur", "shadowColor", - //"mozTextStyle", "mozDrawText", "mozMeasureText", "mozPathText", - "mozTextAlongPath", "drawImage", "getImageData", "putImageData", - "createImageData", "drawWindow" - ] -}; - - - -Karma._makeSvgs = function (svgConfigs){ - var makeSvg = function (svgConfig){ - var svg = undefined; - svg = Karma.create(Karma.kSvg)._init(svgConfig); - Karma.karma.svg[svgConfig.name] = svg; - }; - - svgConfigs.forEach(function(svgConfig){ makeSvg(svgConfig);}); - -}; - -/** Prototypal object for each svg element submitted to Karma in the - * Karma() method - * @throws {Error} if the name and domId for the svg element are not specified - * @thows {Error} if the supplied domId does not match an element in the DOM - * @class This object is the prototype for each svg element submitted to Karma in the - * Karma() method - */ -Karma.kSvg = { - /** name of instance, used internally - * @typeof string - * @default "" - */ - name : "", - /** width of element - * @type number - * @default 0 - */ - width: 0, - /** height of element - * @type number - * @default 0 - */ - height: 0, - /** Status of element, either "loaded" or "error" - * @type string - * @default "" - */ - status: "", - /** Whether canvas is visible - * @type boolean - * @default true - */ - visible: true, - /** Element ID for canvas element in html document - * @type String - * @default undefined - */ - domId: undefined, - /** Reference to the DOM element - * @type DOMElement - * @default undefined - */ - node: undefined, - /** Reference to the SVGDocument - * @type SVGDocument - * @default undefined - */ - doc: undefined, - /** Reference to the root element of the SVG Document - * @type DocumentElement - * @default undefined - */ - root: undefined, - _localized : undefined, - _chainingFunctions: [], - _init: function (config) { - Karma.karma._counters.total++; - - for (var option in config){ - if (config.hasOwnProperty(option)){ - switch (option){ - case "name": - this.name = config[option]; - break; - case "domId": - this.domId = config[option]; - break; - case "width": - if(!this.height){ - throw new Error("If you specify a width you must also" + - "specify a height"); - } - this.width = parseInt(config[option], 10); - break; - case "height": - if(!this.width){ - throw new Error("If you specify a height you must also" + - "specify a width"); - } - this.height = config[option]; - break; - case "fps": - this.fps = config[option]; - break; - } - } - } - - if(this.domId && document.getElementById(this.domId)){ - this.node = document.getElementById(this.domId); - } else { - throw new Error('you must specify a valid domId that' + - 'is in your html page'); - } - - if(!config.height && !config.width){ - this.width = parseInt(this.node.getAttribute('width'), 10); - this.height = parseInt(this.node.getAttribute('height'), 10); - } - - var that = this; - that._addEventHandlers(); - - return this; - - - }, - _addEventHandlers : function () { - var that = this; - that.doc = that.node.getSVGDocument(); - that.node.addEventListener( - "load", - function (e) { - that.doc = that.node.getSVGDocument(); - that.root = that.doc.documentElement; - Karma.karma._counters.loaded++; - Karma.karma._updateStatus(); - that.status = "loaded"; - }, false); - - that.node.addEventListener( - "error", - function (e) { - Karma.karma._counters.loaded--; - Karma.karma._counters.errors++; - that.status = "error"; - var errorMsg = "Error: " + that._type.toUpperCase() + - " " + that.name + " cannot be loaded."; - Karma.karma._updateStatus(errorMsg); - }, - false); - that.node.addEventListener( - "abort", - function (e) { - that.status = "aborted"; - var errorMsg = "ABORT: " + that._type.toUpperCase() + - " " + that.name + " loading was aborted."; - Karma.karma._updateStatus(errorMsg); - - }, false); - - } -}; - -Karma._makeVideos = function (video){ - -}; diff --git a/examples/lessons/6_Maths_quickDivision/js/lesson.js b/examples/lessons/6_Maths_quickDivision/js/lesson.js deleted file mode 100755 index 6bbc937..0000000 --- a/examples/lessons/6_Maths_quickDivision/js/lesson.js +++ /dev/null @@ -1,185 +0,0 @@ -$(document).ready(function(){ - var k = Karma({ - audio: [{'name':'correct','file':'correct.wav'}, - {'name':'incorrect','file':'incorrect.wav'} - ]}); - - k.ready(function(){ - var i,j; - var totalCounter; - var currentQuestion; - var TOTAL_QUES = 16; - var randPositions = []; - var numFst; - var num2nd; - var s = 0; var play = 0; var restart = 0; - - var checkTime = function(timePara){ - if (timePara<10 ) - { - timePara="0" + timePara; - } - return timePara; - }; - - var startTimer = function(){ - s=checkTime(s); - $('#timerBox1').html(s); - increaseTime(); - }; - - var increaseTime = function(){ - if(play == 1){ - if(restart == 1){ - s = 0; - } - s++; - s=checkTime(s); - $('#timerBox1').html(s); - var t=setTimeout(function(){increaseTime();},1000); - } - }; - - var genRandPosition=function (){correctCounter = 0; - randPositions[0] = k.rand(0,TOTAL_QUES-1); - for(i=1; i<TOTAL_QUES; i++){ - do{ - flag = 0; - randPositions[i] = k.rand(0,TOTAL_QUES-1); - for(j=0; j<i; j++){ - if(randPositions[i] === randPositions[j]){ - flag++; - } - } - }while(flag != 0 ); //end of do while loop - } - }; - var isInteger = function(s) - { - var i; - s = s.toString(); - for (i = 0; i < s.length; i++) - { - var c = s.charAt(i); - if (isNaN(c)) - { - - return false; - } - } - return true; - }; - - var next_question = function (){ - - var flag_done = 0; - numFst = k.rand(12,99); - num2nd = k.rand(2,12); - do{ - numFst = k.rand(20,99); - if(isInteger(numFst/num2nd)){ - flag_done = 1; - } - }while(flag_done!=1); - $('#calcSection').html('').append(numFst +' ÷ '+num2nd+' = '); - $('#calcSection').append('<input type="text" class="textBox" maxlength="3" />'); - foucs_blur(); - $('.textBox').focus(); - - }; - - function game_start(){ - genRandPosition(); - play = 1; - startTimer(); - next_question(); - } - - function game() { - totalCounter = 0; - s = 0; play = 0; restart = 0; - $('#section').html('').append('<div id="left-side"></div>'); - $('#left-side').append('<div id="tv"></div>'); - $('#tv').append('<div id="tvLayer"></div>'); - $('#tvLayer').addClass('tvOff'); - $('#left-side').append('<div id="cupBoard"></div>'); - $('#section').append('<div id="right-side"></div>'); - $('#right-side').append('<div id="borderWall"></div>'); - $('#borderWall').append('<div id="imgDisplay"></div>'); - for(var i = 0; i< TOTAL_QUES; i++){ - $('#imgDisplay').append('<div id="img'+i+'></div>'); - $('#img'+i).addClass('default'); - } - $('#right-side').append('<div id="calcSection"></div>'); - - $('#help').hide(); - - } - game(); - var delay_nextQues = function(){ - document.delayForm.delayval.value = 1; - next_question(); - }; - - var delay_gameOver = function(){ - document.delayForm.delayval.value = 1; - $('#calcSection').html(''); - play = 0; - for(var i = 0; i< TOTAL_QUES; i++){ - $('#imgDisplay').append('<div id="img'+i+'></div>'); - $('#img'+i).removeClass('correct').addClass('default'); - } - $('#tvLayer').addClass('tvOn').append('खेल खत्तम।'); - - }; - - var check_answer = function(){ - textVal = $('.textBox').val(); - if((numFst/num2nd) == textVal){ - totalCounter++; - k.audio.correct.play(); - $('#img'+randPositions[totalCounter]).removeClass('default').addClass('correct'); - if(totalCounter === TOTAL_QUES){ - t=setTimeout(function(){delay_gameOver();},1000); - } - else{ - t=setTimeout(function(){delay_nextQues();},1000); - } - } - else{ - k.audio.incorrect.play(); - } - }; - - function foucs_blur(){ - $('input[type="text"]') - .focus(function() { - $(this).removeClass('incorrect').addClass("focus"); - }) - .blur(function() { - $(this).removeClass("focus"); - }) - .keypress(function(event) { - if(event.which === 13){ - check_answer(); - } - - }); - - } - - $('#linkStart').click(function(){ - game_start(); - }); - - $('#linkPlayAgain').click(function(){ - game_start(); - }); - $('#linkHelp').click(function(){ - $('#help').slideDown(2000); - }) - .mouseout(function(){ - $('#help').slideUp(2000); - }); - }); //end of k.ready -}); //end of document.ready
\ No newline at end of file diff --git a/examples/lessons/6_Maths_romanNumerals/assets/audio/correct.ogg b/examples/lessons/6_Maths_romanNumerals/assets/audio/correct.ogg Binary files differdeleted file mode 100755 index a0d9e3a..0000000 --- a/examples/lessons/6_Maths_romanNumerals/assets/audio/correct.ogg +++ /dev/null diff --git a/examples/lessons/6_Maths_romanNumerals/assets/audio/incorrect.ogg b/examples/lessons/6_Maths_romanNumerals/assets/audio/incorrect.ogg Binary files differdeleted file mode 100755 index 4805e55..0000000 --- a/examples/lessons/6_Maths_romanNumerals/assets/audio/incorrect.ogg +++ /dev/null diff --git a/examples/lessons/6_Maths_romanNumerals/assets/image/bg_footer.png b/examples/lessons/6_Maths_romanNumerals/assets/image/bg_footer.png Binary files differdeleted file mode 100755 index 4bd44fa..0000000 --- a/examples/lessons/6_Maths_romanNumerals/assets/image/bg_footer.png +++ /dev/null diff --git a/examples/lessons/6_Maths_romanNumerals/assets/image/bg_header.png b/examples/lessons/6_Maths_romanNumerals/assets/image/bg_header.png Binary files differdeleted file mode 100755 index f421817..0000000 --- a/examples/lessons/6_Maths_romanNumerals/assets/image/bg_header.png +++ /dev/null diff --git a/examples/lessons/6_Maths_romanNumerals/assets/image/bg_title_block.png b/examples/lessons/6_Maths_romanNumerals/assets/image/bg_title_block.png Binary files differdeleted file mode 100755 index 7311891..0000000 --- a/examples/lessons/6_Maths_romanNumerals/assets/image/bg_title_block.png +++ /dev/null diff --git a/examples/lessons/6_Maths_romanNumerals/assets/image/btn_back.png b/examples/lessons/6_Maths_romanNumerals/assets/image/btn_back.png Binary files differdeleted file mode 100755 index d9fbf14..0000000 --- a/examples/lessons/6_Maths_romanNumerals/assets/image/btn_back.png +++ /dev/null diff --git a/examples/lessons/6_Maths_romanNumerals/assets/image/btn_back_hover.png b/examples/lessons/6_Maths_romanNumerals/assets/image/btn_back_hover.png Binary files differdeleted file mode 100755 index 0911fcc..0000000 --- a/examples/lessons/6_Maths_romanNumerals/assets/image/btn_back_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_romanNumerals/assets/image/btn_help.png b/examples/lessons/6_Maths_romanNumerals/assets/image/btn_help.png Binary files differdeleted file mode 100755 index 6753e9c..0000000 --- a/examples/lessons/6_Maths_romanNumerals/assets/image/btn_help.png +++ /dev/null diff --git a/examples/lessons/6_Maths_romanNumerals/assets/image/btn_help_hover.png b/examples/lessons/6_Maths_romanNumerals/assets/image/btn_help_hover.png Binary files differdeleted file mode 100755 index d3ccd92..0000000 --- a/examples/lessons/6_Maths_romanNumerals/assets/image/btn_help_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_romanNumerals/assets/image/btn_next.png b/examples/lessons/6_Maths_romanNumerals/assets/image/btn_next.png Binary files differdeleted file mode 100755 index 9d70993..0000000 --- a/examples/lessons/6_Maths_romanNumerals/assets/image/btn_next.png +++ /dev/null diff --git a/examples/lessons/6_Maths_romanNumerals/assets/image/btn_next_hover.png b/examples/lessons/6_Maths_romanNumerals/assets/image/btn_next_hover.png Binary files differdeleted file mode 100755 index 2cd4d37..0000000 --- a/examples/lessons/6_Maths_romanNumerals/assets/image/btn_next_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_romanNumerals/assets/image/btn_ole.png b/examples/lessons/6_Maths_romanNumerals/assets/image/btn_ole.png Binary files differdeleted file mode 100755 index 0e775e9..0000000 --- a/examples/lessons/6_Maths_romanNumerals/assets/image/btn_ole.png +++ /dev/null diff --git a/examples/lessons/6_Maths_romanNumerals/assets/image/btn_ole_hover.png b/examples/lessons/6_Maths_romanNumerals/assets/image/btn_ole_hover.png Binary files differdeleted file mode 100755 index c43c5f7..0000000 --- a/examples/lessons/6_Maths_romanNumerals/assets/image/btn_ole_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_romanNumerals/assets/image/btn_play_again.png b/examples/lessons/6_Maths_romanNumerals/assets/image/btn_play_again.png Binary files differdeleted file mode 100755 index 3594d18..0000000 --- a/examples/lessons/6_Maths_romanNumerals/assets/image/btn_play_again.png +++ /dev/null diff --git a/examples/lessons/6_Maths_romanNumerals/assets/image/btn_play_again_hover.png b/examples/lessons/6_Maths_romanNumerals/assets/image/btn_play_again_hover.png Binary files differdeleted file mode 100755 index ebb8f8c..0000000 --- a/examples/lessons/6_Maths_romanNumerals/assets/image/btn_play_again_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_romanNumerals/assets/image/btn_play_again_mouse_down.png b/examples/lessons/6_Maths_romanNumerals/assets/image/btn_play_again_mouse_down.png Binary files differdeleted file mode 100755 index 07d6e45..0000000 --- a/examples/lessons/6_Maths_romanNumerals/assets/image/btn_play_again_mouse_down.png +++ /dev/null diff --git a/examples/lessons/6_Maths_romanNumerals/assets/image/btn_start.png b/examples/lessons/6_Maths_romanNumerals/assets/image/btn_start.png Binary files differdeleted file mode 100755 index 32e5f20..0000000 --- a/examples/lessons/6_Maths_romanNumerals/assets/image/btn_start.png +++ /dev/null diff --git a/examples/lessons/6_Maths_romanNumerals/assets/image/btn_start_hover.png b/examples/lessons/6_Maths_romanNumerals/assets/image/btn_start_hover.png Binary files differdeleted file mode 100755 index 811ce78..0000000 --- a/examples/lessons/6_Maths_romanNumerals/assets/image/btn_start_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_romanNumerals/assets/image/btn_start_mouse_down.png b/examples/lessons/6_Maths_romanNumerals/assets/image/btn_start_mouse_down.png Binary files differdeleted file mode 100755 index 5acd43b..0000000 --- a/examples/lessons/6_Maths_romanNumerals/assets/image/btn_start_mouse_down.png +++ /dev/null diff --git a/examples/lessons/6_Maths_romanNumerals/assets/image/confirm.png b/examples/lessons/6_Maths_romanNumerals/assets/image/confirm.png Binary files differdeleted file mode 100755 index bd0afcb..0000000 --- a/examples/lessons/6_Maths_romanNumerals/assets/image/confirm.png +++ /dev/null diff --git a/examples/lessons/6_Maths_romanNumerals/assets/image/gameOver.png b/examples/lessons/6_Maths_romanNumerals/assets/image/gameOver.png Binary files differdeleted file mode 100755 index 81c403b..0000000 --- a/examples/lessons/6_Maths_romanNumerals/assets/image/gameOver.png +++ /dev/null diff --git a/examples/lessons/6_Maths_romanNumerals/assets/image/image1.png b/examples/lessons/6_Maths_romanNumerals/assets/image/image1.png Binary files differdeleted file mode 100755 index 5a4adc7..0000000 --- a/examples/lessons/6_Maths_romanNumerals/assets/image/image1.png +++ /dev/null diff --git a/examples/lessons/6_Maths_romanNumerals/assets/image/img2title.png b/examples/lessons/6_Maths_romanNumerals/assets/image/img2title.png Binary files differdeleted file mode 100755 index 31b1761..0000000 --- a/examples/lessons/6_Maths_romanNumerals/assets/image/img2title.png +++ /dev/null diff --git a/examples/lessons/6_Maths_romanNumerals/assets/image/img_think.png b/examples/lessons/6_Maths_romanNumerals/assets/image/img_think.png Binary files differdeleted file mode 100755 index b212b67..0000000 --- a/examples/lessons/6_Maths_romanNumerals/assets/image/img_think.png +++ /dev/null diff --git a/examples/lessons/6_Maths_romanNumerals/assets/image/quesBox.png b/examples/lessons/6_Maths_romanNumerals/assets/image/quesBox.png Binary files differdeleted file mode 100755 index 913c836..0000000 --- a/examples/lessons/6_Maths_romanNumerals/assets/image/quesBox.png +++ /dev/null diff --git a/examples/lessons/6_Maths_romanNumerals/assets/image/title_block_lt.png b/examples/lessons/6_Maths_romanNumerals/assets/image/title_block_lt.png Binary files differdeleted file mode 100755 index b1c0e90..0000000 --- a/examples/lessons/6_Maths_romanNumerals/assets/image/title_block_lt.png +++ /dev/null diff --git a/examples/lessons/6_Maths_romanNumerals/assets/image/title_block_rt.png b/examples/lessons/6_Maths_romanNumerals/assets/image/title_block_rt.png Binary files differdeleted file mode 100755 index 275daaf..0000000 --- a/examples/lessons/6_Maths_romanNumerals/assets/image/title_block_rt.png +++ /dev/null diff --git a/examples/lessons/6_Maths_romanNumerals/assets/image/volume.png b/examples/lessons/6_Maths_romanNumerals/assets/image/volume.png Binary files differdeleted file mode 100755 index 4cf5397..0000000 --- a/examples/lessons/6_Maths_romanNumerals/assets/image/volume.png +++ /dev/null diff --git a/examples/lessons/6_Maths_romanNumerals/css/lesson.css b/examples/lessons/6_Maths_romanNumerals/css/lesson.css deleted file mode 100755 index 6cbe206..0000000 --- a/examples/lessons/6_Maths_romanNumerals/css/lesson.css +++ /dev/null @@ -1,302 +0,0 @@ -@CHARSET "UTF-8";
-/****** Page Styles ****/
-
-body {
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 10pt;
- margin: 0px;
- background-color: #FFFFCC;
-}
-#header {
- background-image: url(../assets/image/bg_header.png);
- background-repeat: repeat-x;
- height: 89px;
- width: 100%;
- position: absolute;
- left: 0px;
- top: 0px;
-}
-#topbtn_left {
- float: left;
- height: 60px;
- width: 60px;
- padding-top: 13px;
- padding-left: 5px;
-}
-
-
- #linkBack{
- width: 60px; height: 59px;
- background:url(../assets/image/btn_back.png);
- }
- #linkBack:hover{
- background:url(../assets/image/btn_back_hover.png);
- }
-
-#lesson_title {
- float: left;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 16pt;
- font-weight: bold;
- color: #FFFFFF;
- margin-left: 10px;
- background-image: url(../assets/image/bg_title_block.png);
-}
-#topbtn_right {
- float: right;
- height: 60px;
- width: 60px;
- padding-top: 13px;
- padding-right: 5px;
-}
- #linkHelp{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_help.png);
- }
- #linkHelp:hover{
- background:url(../assets/image/btn_help_hover.png);
- }
- #linkOle{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_ole.png);
- }
- #linkOle:hover{
- background:url(../assets/image/btn_ole_hover.png);
- }
- #linkNext{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_next.png);
- }
- #linkNext:hover{
- background:url(../assets/image/btn_next_hover.png);
- }
-#footer {
- background-image: url(../assets/image/bg_footer.png);
- background-repeat: repeat-x;
- position: absolute;
- height: 69px;
- width: 100%;
- left: 0px;
- bottom: 0px;
-}
-#score_box {
- float: left;
- padding-left: 10px;
- padding-top: 10px;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- color: #FFFF00;
- font-size: 16pt;
- font-weight: bold;
-}
-#botbtn_right {
- float: right;
- height: 55px;
- width: 251px;
- padding-right: 5px;
- padding-top: 5px;
-}
- #linkStart{
- width: 251px; height: 55px;
- background:url(../assets/image/btn_start.png);
- }
- #linkStart:hover{
- background:url(../assets/image/btn_start_hover.png);
- }
- #linkStart:active{
- background:url(../assets/image/btn_start_mouse_down.png);
- }
- #linkPlayAgain{
- width: 251px; height: 55px;
- background:url(../assets/image/btn_play_again.png);
- }
- #linkPlayAgain:hover{
- background:url(../assets/image/btn_play_again_hover.png);
- }
- #linkPlayAgain:active{
- background:url(../assets/image/btn_play_again_mouse_down.png);
- }
-
-/**** End of the page style ****/
-
-/**** Game Styles ****/
-
-a{
- color:#FFFFCC;
-}
-#currentTitle{
- width: 150px;
- height: 80xp;
- font:25px/30px "Courier New", Courier, monospace;
- font-weight: bold;
- color: red;
-}
-#content{
- margin: 0px auto;
- margin-top: 90px;
- width: 95%;
- height: 375px;
-
-}
-#frontDisplay{
- width: 736px;
- heigth: 350px;
- margin: 0px auto;
-
-}
-#section{
- display:none;
- margin: 0px auto;
-}
-
- #topText{
- text-align:center;
- margin: 2px auto;
- width: 444px;
- height:50px;
- font: 25px/30px Arial, Helvetica, sans-serif;
- background:url(../assets/image/img2title.png) no-repeat;
- color: #D70123;
- font-weight:bold;
- }
- #gameArea{
- width:900px;
- height: 400px;
- }
-
- .imgArea{
- float:left;
- margin-left: 15px;
- margin-top: 10px;
- margin-bottom: 10px;
- padding: 2px;
- width: 150px;
- height: 135px;
- }
- .quesBox{
- width: 125px;
- height: 70px;
- text-align:center;
- background: url(../assets/image/quesBox.png);
- font: 25px/70px Arial, Helvetica, sans-serif;
- font-weight:bold;
- }
- .textBox{
- margin-top:0.1em;
- width: 120px;
- height: 25px;
- text-align:center;
- font: 20px/25px Arial, Helvetica, sans-serif;
- background-color:#64CAFF;
- border: 2px solid black;
- color: black;
- }
-
- #confirmBtn{
-
- position:absolute;
- bottom: 100px;
- right: 30px;
- width: 101px;
- height: 30px;
- background: url(../assets/image/confirm.png) no-repeat;
- cursor: hand;
- }
- .check{
- float:right;
- width: 24px;
- height: 24px;
- }
- #imgStory{
- position:absolute;
- right: 5px;
- bottom:200px;
- width: 136px;
- height:175px;
- margin:0.5em;
- background: url(../assets/image/img_think.png) no-repeat;
- }
-
- #answer{
- margin-left: 100px;
- padding:5px;
- height:30px;
- font: 20px/25px Arial, Helvetica, sans-serif;
- color: #000000;
- }
- #answerCheck{
- position:absolute;
- top: 60%;
- right: 20%;
- width: 132px;
- height: 122px;
- }
-
-
-
- .focus {
- border: 2px solid #AA88FF;
- background-color: #FFEEAA;
-
- }
-
-
-#gameOver{
- display:none;
- position:absolute;
- top: 40%;
- left: 25%;
- width: 500px;
- text-align:center;
- font: 30px/35px Verdana, Geneva, Arial, Helvetica, sans-serif;
- font-weight:bold;
- color:red;
-}
-#gameOverInfo{
- text-align:center;
- font: 20px/25px Helvetica, Geneva, Arial, Verdana, sans-serif;
- font-weight:bold;
- color:#000000;
-
-}
-.gameOverShow{
- background-color: #AFF0FF;
- opacity: 0.2;
-}
-.specialText{
- font: 20px/25px Helvetica, Geneva, Arial, Verdana, sans-serif;
- font-weight:bold;
- color:#FF9900;
- border: 2px dotted #CCC;
-
-}
-#timerBar {
- float: left;
- width: 215px;
- height:35px;
- padding-left: 10px;
- padding-top: 0px;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- color: #FFFF00;
- font-size: 16pt;
- font-weight: bold;
-}
-#timerTitle{
- float: left;
- margin-top: 20px;
- width: 50px;
- height: 35px;
-}
-
-.timerBoxes{ /* Show the timer running after the game has began.... */
-float:right;
-margin: 0.5em 0 0 0.1em;
-width: 35px;
-height: 30px;
-border: 2px dotted green;
-padding: 3px;
-color: blue;
-font : bold 25px Arial Black, Times New Roman;
-background: #ACC;
-}
-
-
diff --git a/examples/lessons/6_Maths_romanNumerals/index.html b/examples/lessons/6_Maths_romanNumerals/index.html deleted file mode 100755 index e5e8951..0000000 --- a/examples/lessons/6_Maths_romanNumerals/index.html +++ /dev/null @@ -1,57 +0,0 @@ -<!DOCTYPE html>
-<head>
- <title>Class 6 Maths Roman Numerals</title>
- <meta name="keywords" content="karma,javascript,html5,sugar,sugarlabs,gsoc,ole,nepal" />
- <link type="text/css" rel="stylesheet" href="css/lesson.css" />
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <link type="image/ico" rel="icon" href="../../assets/default/image/favicon.ico" />
- <script type="text/javascript" src="js/jquery-1.3.2.min.js"></script>
- <script type="text/javascript" src="js/lesson.js"></script>
-
-</head>
-<body>
- <div id="header">
- <div id="topbtn_left"><a href="http://olenepal.org"><div id="linkOle"></div></a></div>
- <div id="topbtn_left"><a href="#"><div id="linkBack"></div></a></div>
- <div id="lesson_title">
- <img src="assets/image/title_block_lt.png" width="33" height="89" align="absmiddle" />
- <span id="currentTitle">हिन्दु अरेबिक संख्या र रोमन संख्या </span>
- <img src="assets/image/title_block_rt.png" width="33" height="89" align="absmiddle" />
- </div>
-
- <div id="topbtn_right"><a href="#"><div id="linkHelp"></div></a></div>
- <div id="topbtn_right"><a href="http://olenepal.org"><div id="linkOle"></div></a></div>
- <div id="topbtn_right"><a href="#"><div id="linkNext"></div></a></div>
-
- </div>
-
- <div id="content">
- <div id="frontDisplay">
- <img src="assets/image/image1.png">
- </div>
- <div id="section">
- <div id="gameArea"></div>
- </div>
- <div id="confirmBtn"></div>
- <div id="imgStory"></div>
- <div id="gameOver"></div>
- <div id="help"></div>
- </div>
- <form name="delayForm">
- <input type="hidden" name="delayval" size="5">
- </form>
-
-
- <div id="footer">
- <!-- Timer Section -->
- <div id ="timerBar">
- <div id="timerTitle">Timer:</div>
- <div id="timerBox1" class="timerBoxes"></div>
- <div id="timerBox2" class="timerBoxes"></div>
- <div id="timerBox3" class="timerBoxes"></div>
- </div>
- <div id="botbtn_right"><a href="#"><div id="linkStart"></div></a></div>
- <div id="botbtn_right"><a href="#"><div id="linkPlayAgain"></div></a></div>
- </div>
-</body>
-</html>
diff --git a/examples/lessons/6_Maths_romanNumerals/js/jquery-1.3.2.min.js b/examples/lessons/6_Maths_romanNumerals/js/jquery-1.3.2.min.js deleted file mode 100755 index b1ae21d..0000000 --- a/examples/lessons/6_Maths_romanNumerals/js/jquery-1.3.2.min.js +++ /dev/null @@ -1,19 +0,0 @@ -/* - * jQuery JavaScript Library v1.3.2 - * http://jquery.com/ - * - * Copyright (c) 2009 John Resig - * Dual licensed under the MIT and GPL licenses. - * http://docs.jquery.com/License - * - * Date: 2009-02-19 17:34:21 -0500 (Thu, 19 Feb 2009) - * Revision: 6246 - */ -(function(){var l=this,g,y=l.jQuery,p=l.$,o=l.jQuery=l.$=function(E,F){return new o.fn.init(E,F)},D=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,f=/^.[^:#\[\.,]*$/;o.fn=o.prototype={init:function(E,H){E=E||document;if(E.nodeType){this[0]=E;this.length=1;this.context=E;return this}if(typeof E==="string"){var G=D.exec(E);if(G&&(G[1]||!H)){if(G[1]){E=o.clean([G[1]],H)}else{var I=document.getElementById(G[3]);if(I&&I.id!=G[3]){return o().find(E)}var F=o(I||[]);F.context=document;F.selector=E;return F}}else{return o(H).find(E)}}else{if(o.isFunction(E)){return o(document).ready(E)}}if(E.selector&&E.context){this.selector=E.selector;this.context=E.context}return this.setArray(o.isArray(E)?E:o.makeArray(E))},selector:"",jquery:"1.3.2",size:function(){return this.length},get:function(E){return E===g?Array.prototype.slice.call(this):this[E]},pushStack:function(F,H,E){var G=o(F);G.prevObject=this;G.context=this.context;if(H==="find"){G.selector=this.selector+(this.selector?" ":"")+E}else{if(H){G.selector=this.selector+"."+H+"("+E+")"}}return G},setArray:function(E){this.length=0;Array.prototype.push.apply(this,E);return this},each:function(F,E){return o.each(this,F,E)},index:function(E){return o.inArray(E&&E.jquery?E[0]:E,this)},attr:function(F,H,G){var E=F;if(typeof F==="string"){if(H===g){return this[0]&&o[G||"attr"](this[0],F)}else{E={};E[F]=H}}return this.each(function(I){for(F in E){o.attr(G?this.style:this,F,o.prop(this,E[F],G,I,F))}})},css:function(E,F){if((E=="width"||E=="height")&&parseFloat(F)<0){F=g}return this.attr(E,F,"curCSS")},text:function(F){if(typeof F!=="object"&&F!=null){return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(F))}var E="";o.each(F||this,function(){o.each(this.childNodes,function(){if(this.nodeType!=8){E+=this.nodeType!=1?this.nodeValue:o.fn.text([this])}})});return E},wrapAll:function(E){if(this[0]){var F=o(E,this[0].ownerDocument).clone();if(this[0].parentNode){F.insertBefore(this[0])}F.map(function(){var G=this;while(G.firstChild){G=G.firstChild}return G}).append(this)}return this},wrapInner:function(E){return this.each(function(){o(this).contents().wrapAll(E)})},wrap:function(E){return this.each(function(){o(this).wrapAll(E)})},append:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.appendChild(E)}})},prepend:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.insertBefore(E,this.firstChild)}})},before:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this)})},after:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this.nextSibling)})},end:function(){return this.prevObject||o([])},push:[].push,sort:[].sort,splice:[].splice,find:function(E){if(this.length===1){var F=this.pushStack([],"find",E);F.length=0;o.find(E,this[0],F);return F}else{return this.pushStack(o.unique(o.map(this,function(G){return o.find(E,G)})),"find",E)}},clone:function(G){var E=this.map(function(){if(!o.support.noCloneEvent&&!o.isXMLDoc(this)){var I=this.outerHTML;if(!I){var J=this.ownerDocument.createElement("div");J.appendChild(this.cloneNode(true));I=J.innerHTML}return o.clean([I.replace(/ jQuery\d+="(?:\d+|null)"/g,"").replace(/^\s*/,"")])[0]}else{return this.cloneNode(true)}});if(G===true){var H=this.find("*").andSelf(),F=0;E.find("*").andSelf().each(function(){if(this.nodeName!==H[F].nodeName){return}var I=o.data(H[F],"events");for(var K in I){for(var J in I[K]){o.event.add(this,K,I[K][J],I[K][J].data)}}F++})}return E},filter:function(E){return this.pushStack(o.isFunction(E)&&o.grep(this,function(G,F){return E.call(G,F)})||o.multiFilter(E,o.grep(this,function(F){return F.nodeType===1})),"filter",E)},closest:function(E){var G=o.expr.match.POS.test(E)?o(E):null,F=0;return this.map(function(){var H=this;while(H&&H.ownerDocument){if(G?G.index(H)>-1:o(H).is(E)){o.data(H,"closest",F);return H}H=H.parentNode;F++}})},not:function(E){if(typeof E==="string"){if(f.test(E)){return this.pushStack(o.multiFilter(E,this,true),"not",E)}else{E=o.multiFilter(E,this)}}var F=E.length&&E[E.length-1]!==g&&!E.nodeType;return this.filter(function(){return F?o.inArray(this,E)<0:this!=E})},add:function(E){return this.pushStack(o.unique(o.merge(this.get(),typeof E==="string"?o(E):o.makeArray(E))))},is:function(E){return !!E&&o.multiFilter(E,this).length>0},hasClass:function(E){return !!E&&this.is("."+E)},val:function(K){if(K===g){var E=this[0];if(E){if(o.nodeName(E,"option")){return(E.attributes.value||{}).specified?E.value:E.text}if(o.nodeName(E,"select")){var I=E.selectedIndex,L=[],M=E.options,H=E.type=="select-one";if(I<0){return null}for(var F=H?I:0,J=H?I+1:M.length;F<J;F++){var G=M[F];if(G.selected){K=o(G).val();if(H){return K}L.push(K)}}return L}return(E.value||"").replace(/\r/g,"")}return g}if(typeof K==="number"){K+=""}return this.each(function(){if(this.nodeType!=1){return}if(o.isArray(K)&&/radio|checkbox/.test(this.type)){this.checked=(o.inArray(this.value,K)>=0||o.inArray(this.name,K)>=0)}else{if(o.nodeName(this,"select")){var N=o.makeArray(K);o("option",this).each(function(){this.selected=(o.inArray(this.value,N)>=0||o.inArray(this.text,N)>=0)});if(!N.length){this.selectedIndex=-1}}else{this.value=K}}})},html:function(E){return E===g?(this[0]?this[0].innerHTML.replace(/ jQuery\d+="(?:\d+|null)"/g,""):null):this.empty().append(E)},replaceWith:function(E){return this.after(E).remove()},eq:function(E){return this.slice(E,+E+1)},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","))},map:function(E){return this.pushStack(o.map(this,function(G,F){return E.call(G,F,G)}))},andSelf:function(){return this.add(this.prevObject)},domManip:function(J,M,L){if(this[0]){var I=(this[0].ownerDocument||this[0]).createDocumentFragment(),F=o.clean(J,(this[0].ownerDocument||this[0]),I),H=I.firstChild;if(H){for(var G=0,E=this.length;G<E;G++){L.call(K(this[G],H),this.length>1||G>0?I.cloneNode(true):I)}}if(F){o.each(F,z)}}return this;function K(N,O){return M&&o.nodeName(N,"table")&&o.nodeName(O,"tr")?(N.getElementsByTagName("tbody")[0]||N.appendChild(N.ownerDocument.createElement("tbody"))):N}}};o.fn.init.prototype=o.fn;function z(E,F){if(F.src){o.ajax({url:F.src,async:false,dataType:"script"})}else{o.globalEval(F.text||F.textContent||F.innerHTML||"")}if(F.parentNode){F.parentNode.removeChild(F)}}function e(){return +new Date}o.extend=o.fn.extend=function(){var J=arguments[0]||{},H=1,I=arguments.length,E=false,G;if(typeof J==="boolean"){E=J;J=arguments[1]||{};H=2}if(typeof J!=="object"&&!o.isFunction(J)){J={}}if(I==H){J=this;--H}for(;H<I;H++){if((G=arguments[H])!=null){for(var F in G){var K=J[F],L=G[F];if(J===L){continue}if(E&&L&&typeof L==="object"&&!L.nodeType){J[F]=o.extend(E,K||(L.length!=null?[]:{}),L)}else{if(L!==g){J[F]=L}}}}}return J};var b=/z-?index|font-?weight|opacity|zoom|line-?height/i,q=document.defaultView||{},s=Object.prototype.toString;o.extend({noConflict:function(E){l.$=p;if(E){l.jQuery=y}return o},isFunction:function(E){return s.call(E)==="[object Function]"},isArray:function(E){return s.call(E)==="[object Array]"},isXMLDoc:function(E){return E.nodeType===9&&E.documentElement.nodeName!=="HTML"||!!E.ownerDocument&&o.isXMLDoc(E.ownerDocument)},globalEval:function(G){if(G&&/\S/.test(G)){var F=document.getElementsByTagName("head")[0]||document.documentElement,E=document.createElement("script");E.type="text/javascript";if(o.support.scriptEval){E.appendChild(document.createTextNode(G))}else{E.text=G}F.insertBefore(E,F.firstChild);F.removeChild(E)}},nodeName:function(F,E){return F.nodeName&&F.nodeName.toUpperCase()==E.toUpperCase()},each:function(G,K,F){var E,H=0,I=G.length;if(F){if(I===g){for(E in G){if(K.apply(G[E],F)===false){break}}}else{for(;H<I;){if(K.apply(G[H++],F)===false){break}}}}else{if(I===g){for(E in G){if(K.call(G[E],E,G[E])===false){break}}}else{for(var J=G[0];H<I&&K.call(J,H,J)!==false;J=G[++H]){}}}return G},prop:function(H,I,G,F,E){if(o.isFunction(I)){I=I.call(H,F)}return typeof I==="number"&&G=="curCSS"&&!b.test(E)?I+"px":I},className:{add:function(E,F){o.each((F||"").split(/\s+/),function(G,H){if(E.nodeType==1&&!o.className.has(E.className,H)){E.className+=(E.className?" ":"")+H}})},remove:function(E,F){if(E.nodeType==1){E.className=F!==g?o.grep(E.className.split(/\s+/),function(G){return !o.className.has(F,G)}).join(" "):""}},has:function(F,E){return F&&o.inArray(E,(F.className||F).toString().split(/\s+/))>-1}},swap:function(H,G,I){var E={};for(var F in G){E[F]=H.style[F];H.style[F]=G[F]}I.call(H);for(var F in G){H.style[F]=E[F]}},css:function(H,F,J,E){if(F=="width"||F=="height"){var L,G={position:"absolute",visibility:"hidden",display:"block"},K=F=="width"?["Left","Right"]:["Top","Bottom"];function I(){L=F=="width"?H.offsetWidth:H.offsetHeight;if(E==="border"){return}o.each(K,function(){if(!E){L-=parseFloat(o.curCSS(H,"padding"+this,true))||0}if(E==="margin"){L+=parseFloat(o.curCSS(H,"margin"+this,true))||0}else{L-=parseFloat(o.curCSS(H,"border"+this+"Width",true))||0}})}if(H.offsetWidth!==0){I()}else{o.swap(H,G,I)}return Math.max(0,Math.round(L))}return o.curCSS(H,F,J)},curCSS:function(I,F,G){var L,E=I.style;if(F=="opacity"&&!o.support.opacity){L=o.attr(E,"opacity");return L==""?"1":L}if(F.match(/float/i)){F=w}if(!G&&E&&E[F]){L=E[F]}else{if(q.getComputedStyle){if(F.match(/float/i)){F="float"}F=F.replace(/([A-Z])/g,"-$1").toLowerCase();var M=q.getComputedStyle(I,null);if(M){L=M.getPropertyValue(F)}if(F=="opacity"&&L==""){L="1"}}else{if(I.currentStyle){var J=F.replace(/\-(\w)/g,function(N,O){return O.toUpperCase()});L=I.currentStyle[F]||I.currentStyle[J];if(!/^\d+(px)?$/i.test(L)&&/^\d/.test(L)){var H=E.left,K=I.runtimeStyle.left;I.runtimeStyle.left=I.currentStyle.left;E.left=L||0;L=E.pixelLeft+"px";E.left=H;I.runtimeStyle.left=K}}}}return L},clean:function(F,K,I){K=K||document;if(typeof K.createElement==="undefined"){K=K.ownerDocument||K[0]&&K[0].ownerDocument||document}if(!I&&F.length===1&&typeof F[0]==="string"){var H=/^<(\w+)\s*\/?>$/.exec(F[0]);if(H){return[K.createElement(H[1])]}}var G=[],E=[],L=K.createElement("div");o.each(F,function(P,S){if(typeof S==="number"){S+=""}if(!S){return}if(typeof S==="string"){S=S.replace(/(<(\w+)[^>]*?)\/>/g,function(U,V,T){return T.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?U:V+"></"+T+">"});var O=S.replace(/^\s+/,"").substring(0,10).toLowerCase();var Q=!O.indexOf("<opt")&&[1,"<select multiple='multiple'>","</select>"]||!O.indexOf("<leg")&&[1,"<fieldset>","</fieldset>"]||O.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"<table>","</table>"]||!O.indexOf("<tr")&&[2,"<table><tbody>","</tbody></table>"]||(!O.indexOf("<td")||!O.indexOf("<th"))&&[3,"<table><tbody><tr>","</tr></tbody></table>"]||!O.indexOf("<col")&&[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"]||!o.support.htmlSerialize&&[1,"div<div>","</div>"]||[0,"",""];L.innerHTML=Q[1]+S+Q[2];while(Q[0]--){L=L.lastChild}if(!o.support.tbody){var R=/<tbody/i.test(S),N=!O.indexOf("<table")&&!R?L.firstChild&&L.firstChild.childNodes:Q[1]=="<table>"&&!R?L.childNodes:[];for(var M=N.length-1;M>=0;--M){if(o.nodeName(N[M],"tbody")&&!N[M].childNodes.length){N[M].parentNode.removeChild(N[M])}}}if(!o.support.leadingWhitespace&&/^\s/.test(S)){L.insertBefore(K.createTextNode(S.match(/^\s*/)[0]),L.firstChild)}S=o.makeArray(L.childNodes)}if(S.nodeType){G.push(S)}else{G=o.merge(G,S)}});if(I){for(var J=0;G[J];J++){if(o.nodeName(G[J],"script")&&(!G[J].type||G[J].type.toLowerCase()==="text/javascript")){E.push(G[J].parentNode?G[J].parentNode.removeChild(G[J]):G[J])}else{if(G[J].nodeType===1){G.splice.apply(G,[J+1,0].concat(o.makeArray(G[J].getElementsByTagName("script"))))}I.appendChild(G[J])}}return E}return G},attr:function(J,G,K){if(!J||J.nodeType==3||J.nodeType==8){return g}var H=!o.isXMLDoc(J),L=K!==g;G=H&&o.props[G]||G;if(J.tagName){var F=/href|src|style/.test(G);if(G=="selected"&&J.parentNode){J.parentNode.selectedIndex}if(G in J&&H&&!F){if(L){if(G=="type"&&o.nodeName(J,"input")&&J.parentNode){throw"type property can't be changed"}J[G]=K}if(o.nodeName(J,"form")&&J.getAttributeNode(G)){return J.getAttributeNode(G).nodeValue}if(G=="tabIndex"){var I=J.getAttributeNode("tabIndex");return I&&I.specified?I.value:J.nodeName.match(/(button|input|object|select|textarea)/i)?0:J.nodeName.match(/^(a|area)$/i)&&J.href?0:g}return J[G]}if(!o.support.style&&H&&G=="style"){return o.attr(J.style,"cssText",K)}if(L){J.setAttribute(G,""+K)}var E=!o.support.hrefNormalized&&H&&F?J.getAttribute(G,2):J.getAttribute(G);return E===null?g:E}if(!o.support.opacity&&G=="opacity"){if(L){J.zoom=1;J.filter=(J.filter||"").replace(/alpha\([^)]*\)/,"")+(parseInt(K)+""=="NaN"?"":"alpha(opacity="+K*100+")")}return J.filter&&J.filter.indexOf("opacity=")>=0?(parseFloat(J.filter.match(/opacity=([^)]*)/)[1])/100)+"":""}G=G.replace(/-([a-z])/ig,function(M,N){return N.toUpperCase()});if(L){J[G]=K}return J[G]},trim:function(E){return(E||"").replace(/^\s+|\s+$/g,"")},makeArray:function(G){var E=[];if(G!=null){var F=G.length;if(F==null||typeof G==="string"||o.isFunction(G)||G.setInterval){E[0]=G}else{while(F){E[--F]=G[F]}}}return E},inArray:function(G,H){for(var E=0,F=H.length;E<F;E++){if(H[E]===G){return E}}return -1},merge:function(H,E){var F=0,G,I=H.length;if(!o.support.getAll){while((G=E[F++])!=null){if(G.nodeType!=8){H[I++]=G}}}else{while((G=E[F++])!=null){H[I++]=G}}return H},unique:function(K){var F=[],E={};try{for(var G=0,H=K.length;G<H;G++){var J=o.data(K[G]);if(!E[J]){E[J]=true;F.push(K[G])}}}catch(I){F=K}return F},grep:function(F,J,E){var G=[];for(var H=0,I=F.length;H<I;H++){if(!E!=!J(F[H],H)){G.push(F[H])}}return G},map:function(E,J){var F=[];for(var G=0,H=E.length;G<H;G++){var I=J(E[G],G);if(I!=null){F[F.length]=I}}return F.concat.apply([],F)}});var C=navigator.userAgent.toLowerCase();o.browser={version:(C.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)||[0,"0"])[1],safari:/webkit/.test(C),opera:/opera/.test(C),msie:/msie/.test(C)&&!/opera/.test(C),mozilla:/mozilla/.test(C)&&!/(compatible|webkit)/.test(C)};o.each({parent:function(E){return E.parentNode},parents:function(E){return o.dir(E,"parentNode")},next:function(E){return o.nth(E,2,"nextSibling")},prev:function(E){return o.nth(E,2,"previousSibling")},nextAll:function(E){return o.dir(E,"nextSibling")},prevAll:function(E){return o.dir(E,"previousSibling")},siblings:function(E){return o.sibling(E.parentNode.firstChild,E)},children:function(E){return o.sibling(E.firstChild)},contents:function(E){return o.nodeName(E,"iframe")?E.contentDocument||E.contentWindow.document:o.makeArray(E.childNodes)}},function(E,F){o.fn[E]=function(G){var H=o.map(this,F);if(G&&typeof G=="string"){H=o.multiFilter(G,H)}return this.pushStack(o.unique(H),E,G)}});o.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(E,F){o.fn[E]=function(G){var J=[],L=o(G);for(var K=0,H=L.length;K<H;K++){var I=(K>0?this.clone(true):this).get();o.fn[F].apply(o(L[K]),I);J=J.concat(I)}return this.pushStack(J,E,G)}});o.each({removeAttr:function(E){o.attr(this,E,"");if(this.nodeType==1){this.removeAttribute(E)}},addClass:function(E){o.className.add(this,E)},removeClass:function(E){o.className.remove(this,E)},toggleClass:function(F,E){if(typeof E!=="boolean"){E=!o.className.has(this,F)}o.className[E?"add":"remove"](this,F)},remove:function(E){if(!E||o.filter(E,[this]).length){o("*",this).add([this]).each(function(){o.event.remove(this);o.removeData(this)});if(this.parentNode){this.parentNode.removeChild(this)}}},empty:function(){o(this).children().remove();while(this.firstChild){this.removeChild(this.firstChild)}}},function(E,F){o.fn[E]=function(){return this.each(F,arguments)}});function j(E,F){return E[0]&&parseInt(o.curCSS(E[0],F,true),10)||0}var h="jQuery"+e(),v=0,A={};o.extend({cache:{},data:function(F,E,G){F=F==l?A:F;var H=F[h];if(!H){H=F[h]=++v}if(E&&!o.cache[H]){o.cache[H]={}}if(G!==g){o.cache[H][E]=G}return E?o.cache[H][E]:H},removeData:function(F,E){F=F==l?A:F;var H=F[h];if(E){if(o.cache[H]){delete o.cache[H][E];E="";for(E in o.cache[H]){break}if(!E){o.removeData(F)}}}else{try{delete F[h]}catch(G){if(F.removeAttribute){F.removeAttribute(h)}}delete o.cache[H]}},queue:function(F,E,H){if(F){E=(E||"fx")+"queue";var G=o.data(F,E);if(!G||o.isArray(H)){G=o.data(F,E,o.makeArray(H))}else{if(H){G.push(H)}}}return G},dequeue:function(H,G){var E=o.queue(H,G),F=E.shift();if(!G||G==="fx"){F=E[0]}if(F!==g){F.call(H)}}});o.fn.extend({data:function(E,G){var H=E.split(".");H[1]=H[1]?"."+H[1]:"";if(G===g){var F=this.triggerHandler("getData"+H[1]+"!",[H[0]]);if(F===g&&this.length){F=o.data(this[0],E)}return F===g&&H[1]?this.data(H[0]):F}else{return this.trigger("setData"+H[1]+"!",[H[0],G]).each(function(){o.data(this,E,G)})}},removeData:function(E){return this.each(function(){o.removeData(this,E)})},queue:function(E,F){if(typeof E!=="string"){F=E;E="fx"}if(F===g){return o.queue(this[0],E)}return this.each(function(){var G=o.queue(this,E,F);if(E=="fx"&&G.length==1){G[0].call(this)}})},dequeue:function(E){return this.each(function(){o.dequeue(this,E)})}}); -/* - * Sizzle CSS Selector Engine - v0.9.3 - * Copyright 2009, The Dojo Foundation - * Released under the MIT, BSD, and GPL Licenses. - * More information: http://sizzlejs.com/ - */ -(function(){var R=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?/g,L=0,H=Object.prototype.toString;var F=function(Y,U,ab,ac){ab=ab||[];U=U||document;if(U.nodeType!==1&&U.nodeType!==9){return[]}if(!Y||typeof Y!=="string"){return ab}var Z=[],W,af,ai,T,ad,V,X=true;R.lastIndex=0;while((W=R.exec(Y))!==null){Z.push(W[1]);if(W[2]){V=RegExp.rightContext;break}}if(Z.length>1&&M.exec(Y)){if(Z.length===2&&I.relative[Z[0]]){af=J(Z[0]+Z[1],U)}else{af=I.relative[Z[0]]?[U]:F(Z.shift(),U);while(Z.length){Y=Z.shift();if(I.relative[Y]){Y+=Z.shift()}af=J(Y,af)}}}else{var ae=ac?{expr:Z.pop(),set:E(ac)}:F.find(Z.pop(),Z.length===1&&U.parentNode?U.parentNode:U,Q(U));af=F.filter(ae.expr,ae.set);if(Z.length>0){ai=E(af)}else{X=false}while(Z.length){var ah=Z.pop(),ag=ah;if(!I.relative[ah]){ah=""}else{ag=Z.pop()}if(ag==null){ag=U}I.relative[ah](ai,ag,Q(U))}}if(!ai){ai=af}if(!ai){throw"Syntax error, unrecognized expression: "+(ah||Y)}if(H.call(ai)==="[object Array]"){if(!X){ab.push.apply(ab,ai)}else{if(U.nodeType===1){for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&(ai[aa]===true||ai[aa].nodeType===1&&K(U,ai[aa]))){ab.push(af[aa])}}}else{for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&ai[aa].nodeType===1){ab.push(af[aa])}}}}}else{E(ai,ab)}if(V){F(V,U,ab,ac);if(G){hasDuplicate=false;ab.sort(G);if(hasDuplicate){for(var aa=1;aa<ab.length;aa++){if(ab[aa]===ab[aa-1]){ab.splice(aa--,1)}}}}}return ab};F.matches=function(T,U){return F(T,null,null,U)};F.find=function(aa,T,ab){var Z,X;if(!aa){return[]}for(var W=0,V=I.order.length;W<V;W++){var Y=I.order[W],X;if((X=I.match[Y].exec(aa))){var U=RegExp.leftContext;if(U.substr(U.length-1)!=="\\"){X[1]=(X[1]||"").replace(/\\/g,"");Z=I.find[Y](X,T,ab);if(Z!=null){aa=aa.replace(I.match[Y],"");break}}}}if(!Z){Z=T.getElementsByTagName("*")}return{set:Z,expr:aa}};F.filter=function(ad,ac,ag,W){var V=ad,ai=[],aa=ac,Y,T,Z=ac&&ac[0]&&Q(ac[0]);while(ad&&ac.length){for(var ab in I.filter){if((Y=I.match[ab].exec(ad))!=null){var U=I.filter[ab],ah,af;T=false;if(aa==ai){ai=[]}if(I.preFilter[ab]){Y=I.preFilter[ab](Y,aa,ag,ai,W,Z);if(!Y){T=ah=true}else{if(Y===true){continue}}}if(Y){for(var X=0;(af=aa[X])!=null;X++){if(af){ah=U(af,Y,X,aa);var ae=W^!!ah;if(ag&&ah!=null){if(ae){T=true}else{aa[X]=false}}else{if(ae){ai.push(af);T=true}}}}}if(ah!==g){if(!ag){aa=ai}ad=ad.replace(I.match[ab],"");if(!T){return[]}break}}}if(ad==V){if(T==null){throw"Syntax error, unrecognized expression: "+ad}else{break}}V=ad}return aa};var I=F.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF_-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF_-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*_-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+-]*)\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF_-]|\\.)+)(?:\((['"]*)((?:\([^\)]+\)|[^\2\(\)]*)+)\2\))?/},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(T){return T.getAttribute("href")}},relative:{"+":function(aa,T,Z){var X=typeof T==="string",ab=X&&!/\W/.test(T),Y=X&&!ab;if(ab&&!Z){T=T.toUpperCase()}for(var W=0,V=aa.length,U;W<V;W++){if((U=aa[W])){while((U=U.previousSibling)&&U.nodeType!==1){}aa[W]=Y||U&&U.nodeName===T?U||false:U===T}}if(Y){F.filter(T,aa,true)}},">":function(Z,U,aa){var X=typeof U==="string";if(X&&!/\W/.test(U)){U=aa?U:U.toUpperCase();for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){var W=Y.parentNode;Z[V]=W.nodeName===U?W:false}}}else{for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){Z[V]=X?Y.parentNode:Y.parentNode===U}}if(X){F.filter(U,Z,true)}}},"":function(W,U,Y){var V=L++,T=S;if(!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("parentNode",U,V,W,X,Y)},"~":function(W,U,Y){var V=L++,T=S;if(typeof U==="string"&&!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("previousSibling",U,V,W,X,Y)}},find:{ID:function(U,V,W){if(typeof V.getElementById!=="undefined"&&!W){var T=V.getElementById(U[1]);return T?[T]:[]}},NAME:function(V,Y,Z){if(typeof Y.getElementsByName!=="undefined"){var U=[],X=Y.getElementsByName(V[1]);for(var W=0,T=X.length;W<T;W++){if(X[W].getAttribute("name")===V[1]){U.push(X[W])}}return U.length===0?null:U}},TAG:function(T,U){return U.getElementsByTagName(T[1])}},preFilter:{CLASS:function(W,U,V,T,Z,aa){W=" "+W[1].replace(/\\/g,"")+" ";if(aa){return W}for(var X=0,Y;(Y=U[X])!=null;X++){if(Y){if(Z^(Y.className&&(" "+Y.className+" ").indexOf(W)>=0)){if(!V){T.push(Y)}}else{if(V){U[X]=false}}}}return false},ID:function(T){return T[1].replace(/\\/g,"")},TAG:function(U,T){for(var V=0;T[V]===false;V++){}return T[V]&&Q(T[V])?U[1]:U[1].toUpperCase()},CHILD:function(T){if(T[1]=="nth"){var U=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(T[2]=="even"&&"2n"||T[2]=="odd"&&"2n+1"||!/\D/.test(T[2])&&"0n+"+T[2]||T[2]);T[2]=(U[1]+(U[2]||1))-0;T[3]=U[3]-0}T[0]=L++;return T},ATTR:function(X,U,V,T,Y,Z){var W=X[1].replace(/\\/g,"");if(!Z&&I.attrMap[W]){X[1]=I.attrMap[W]}if(X[2]==="~="){X[4]=" "+X[4]+" "}return X},PSEUDO:function(X,U,V,T,Y){if(X[1]==="not"){if(X[3].match(R).length>1||/^\w/.test(X[3])){X[3]=F(X[3],null,null,U)}else{var W=F.filter(X[3],U,V,true^Y);if(!V){T.push.apply(T,W)}return false}}else{if(I.match.POS.test(X[0])||I.match.CHILD.test(X[0])){return true}}return X},POS:function(T){T.unshift(true);return T}},filters:{enabled:function(T){return T.disabled===false&&T.type!=="hidden"},disabled:function(T){return T.disabled===true},checked:function(T){return T.checked===true},selected:function(T){T.parentNode.selectedIndex;return T.selected===true},parent:function(T){return !!T.firstChild},empty:function(T){return !T.firstChild},has:function(V,U,T){return !!F(T[3],V).length},header:function(T){return/h\d/i.test(T.nodeName)},text:function(T){return"text"===T.type},radio:function(T){return"radio"===T.type},checkbox:function(T){return"checkbox"===T.type},file:function(T){return"file"===T.type},password:function(T){return"password"===T.type},submit:function(T){return"submit"===T.type},image:function(T){return"image"===T.type},reset:function(T){return"reset"===T.type},button:function(T){return"button"===T.type||T.nodeName.toUpperCase()==="BUTTON"},input:function(T){return/input|select|textarea|button/i.test(T.nodeName)}},setFilters:{first:function(U,T){return T===0},last:function(V,U,T,W){return U===W.length-1},even:function(U,T){return T%2===0},odd:function(U,T){return T%2===1},lt:function(V,U,T){return U<T[3]-0},gt:function(V,U,T){return U>T[3]-0},nth:function(V,U,T){return T[3]-0==U},eq:function(V,U,T){return T[3]-0==U}},filter:{PSEUDO:function(Z,V,W,aa){var U=V[1],X=I.filters[U];if(X){return X(Z,W,V,aa)}else{if(U==="contains"){return(Z.textContent||Z.innerText||"").indexOf(V[3])>=0}else{if(U==="not"){var Y=V[3];for(var W=0,T=Y.length;W<T;W++){if(Y[W]===Z){return false}}return true}}}},CHILD:function(T,W){var Z=W[1],U=T;switch(Z){case"only":case"first":while(U=U.previousSibling){if(U.nodeType===1){return false}}if(Z=="first"){return true}U=T;case"last":while(U=U.nextSibling){if(U.nodeType===1){return false}}return true;case"nth":var V=W[2],ac=W[3];if(V==1&&ac==0){return true}var Y=W[0],ab=T.parentNode;if(ab&&(ab.sizcache!==Y||!T.nodeIndex)){var X=0;for(U=ab.firstChild;U;U=U.nextSibling){if(U.nodeType===1){U.nodeIndex=++X}}ab.sizcache=Y}var aa=T.nodeIndex-ac;if(V==0){return aa==0}else{return(aa%V==0&&aa/V>=0)}}},ID:function(U,T){return U.nodeType===1&&U.getAttribute("id")===T},TAG:function(U,T){return(T==="*"&&U.nodeType===1)||U.nodeName===T},CLASS:function(U,T){return(" "+(U.className||U.getAttribute("class"))+" ").indexOf(T)>-1},ATTR:function(Y,W){var V=W[1],T=I.attrHandle[V]?I.attrHandle[V](Y):Y[V]!=null?Y[V]:Y.getAttribute(V),Z=T+"",X=W[2],U=W[4];return T==null?X==="!=":X==="="?Z===U:X==="*="?Z.indexOf(U)>=0:X==="~="?(" "+Z+" ").indexOf(U)>=0:!U?Z&&T!==false:X==="!="?Z!=U:X==="^="?Z.indexOf(U)===0:X==="$="?Z.substr(Z.length-U.length)===U:X==="|="?Z===U||Z.substr(0,U.length+1)===U+"-":false},POS:function(X,U,V,Y){var T=U[2],W=I.setFilters[T];if(W){return W(X,V,U,Y)}}}};var M=I.match.POS;for(var O in I.match){I.match[O]=RegExp(I.match[O].source+/(?![^\[]*\])(?![^\(]*\))/.source)}var E=function(U,T){U=Array.prototype.slice.call(U);if(T){T.push.apply(T,U);return T}return U};try{Array.prototype.slice.call(document.documentElement.childNodes)}catch(N){E=function(X,W){var U=W||[];if(H.call(X)==="[object Array]"){Array.prototype.push.apply(U,X)}else{if(typeof X.length==="number"){for(var V=0,T=X.length;V<T;V++){U.push(X[V])}}else{for(var V=0;X[V];V++){U.push(X[V])}}}return U}}var G;if(document.documentElement.compareDocumentPosition){G=function(U,T){var V=U.compareDocumentPosition(T)&4?-1:U===T?0:1;if(V===0){hasDuplicate=true}return V}}else{if("sourceIndex" in document.documentElement){G=function(U,T){var V=U.sourceIndex-T.sourceIndex;if(V===0){hasDuplicate=true}return V}}else{if(document.createRange){G=function(W,U){var V=W.ownerDocument.createRange(),T=U.ownerDocument.createRange();V.selectNode(W);V.collapse(true);T.selectNode(U);T.collapse(true);var X=V.compareBoundaryPoints(Range.START_TO_END,T);if(X===0){hasDuplicate=true}return X}}}}(function(){var U=document.createElement("form"),V="script"+(new Date).getTime();U.innerHTML="<input name='"+V+"'/>";var T=document.documentElement;T.insertBefore(U,T.firstChild);if(!!document.getElementById(V)){I.find.ID=function(X,Y,Z){if(typeof Y.getElementById!=="undefined"&&!Z){var W=Y.getElementById(X[1]);return W?W.id===X[1]||typeof W.getAttributeNode!=="undefined"&&W.getAttributeNode("id").nodeValue===X[1]?[W]:g:[]}};I.filter.ID=function(Y,W){var X=typeof Y.getAttributeNode!=="undefined"&&Y.getAttributeNode("id");return Y.nodeType===1&&X&&X.nodeValue===W}}T.removeChild(U)})();(function(){var T=document.createElement("div");T.appendChild(document.createComment(""));if(T.getElementsByTagName("*").length>0){I.find.TAG=function(U,Y){var X=Y.getElementsByTagName(U[1]);if(U[1]==="*"){var W=[];for(var V=0;X[V];V++){if(X[V].nodeType===1){W.push(X[V])}}X=W}return X}}T.innerHTML="<a href='#'></a>";if(T.firstChild&&typeof T.firstChild.getAttribute!=="undefined"&&T.firstChild.getAttribute("href")!=="#"){I.attrHandle.href=function(U){return U.getAttribute("href",2)}}})();if(document.querySelectorAll){(function(){var T=F,U=document.createElement("div");U.innerHTML="<p class='TEST'></p>";if(U.querySelectorAll&&U.querySelectorAll(".TEST").length===0){return}F=function(Y,X,V,W){X=X||document;if(!W&&X.nodeType===9&&!Q(X)){try{return E(X.querySelectorAll(Y),V)}catch(Z){}}return T(Y,X,V,W)};F.find=T.find;F.filter=T.filter;F.selectors=T.selectors;F.matches=T.matches})()}if(document.getElementsByClassName&&document.documentElement.getElementsByClassName){(function(){var T=document.createElement("div");T.innerHTML="<div class='test e'></div><div class='test'></div>";if(T.getElementsByClassName("e").length===0){return}T.lastChild.className="e";if(T.getElementsByClassName("e").length===1){return}I.order.splice(1,0,"CLASS");I.find.CLASS=function(U,V,W){if(typeof V.getElementsByClassName!=="undefined"&&!W){return V.getElementsByClassName(U[1])}}})()}function P(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1&&!ac){T.sizcache=Y;T.sizset=W}if(T.nodeName===Z){X=T;break}T=T[U]}ad[W]=X}}}function S(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1){if(!ac){T.sizcache=Y;T.sizset=W}if(typeof Z!=="string"){if(T===Z){X=true;break}}else{if(F.filter(Z,[T]).length>0){X=T;break}}}T=T[U]}ad[W]=X}}}var K=document.compareDocumentPosition?function(U,T){return U.compareDocumentPosition(T)&16}:function(U,T){return U!==T&&(U.contains?U.contains(T):true)};var Q=function(T){return T.nodeType===9&&T.documentElement.nodeName!=="HTML"||!!T.ownerDocument&&Q(T.ownerDocument)};var J=function(T,aa){var W=[],X="",Y,V=aa.nodeType?[aa]:aa;while((Y=I.match.PSEUDO.exec(T))){X+=Y[0];T=T.replace(I.match.PSEUDO,"")}T=I.relative[T]?T+"*":T;for(var Z=0,U=V.length;Z<U;Z++){F(T,V[Z],W)}return F.filter(X,W)};o.find=F;o.filter=F.filter;o.expr=F.selectors;o.expr[":"]=o.expr.filters;F.selectors.filters.hidden=function(T){return T.offsetWidth===0||T.offsetHeight===0};F.selectors.filters.visible=function(T){return T.offsetWidth>0||T.offsetHeight>0};F.selectors.filters.animated=function(T){return o.grep(o.timers,function(U){return T===U.elem}).length};o.multiFilter=function(V,T,U){if(U){V=":not("+V+")"}return F.matches(V,T)};o.dir=function(V,U){var T=[],W=V[U];while(W&&W!=document){if(W.nodeType==1){T.push(W)}W=W[U]}return T};o.nth=function(X,T,V,W){T=T||1;var U=0;for(;X;X=X[V]){if(X.nodeType==1&&++U==T){break}}return X};o.sibling=function(V,U){var T=[];for(;V;V=V.nextSibling){if(V.nodeType==1&&V!=U){T.push(V)}}return T};return;l.Sizzle=F})();o.event={add:function(I,F,H,K){if(I.nodeType==3||I.nodeType==8){return}if(I.setInterval&&I!=l){I=l}if(!H.guid){H.guid=this.guid++}if(K!==g){var G=H;H=this.proxy(G);H.data=K}var E=o.data(I,"events")||o.data(I,"events",{}),J=o.data(I,"handle")||o.data(I,"handle",function(){return typeof o!=="undefined"&&!o.event.triggered?o.event.handle.apply(arguments.callee.elem,arguments):g});J.elem=I;o.each(F.split(/\s+/),function(M,N){var O=N.split(".");N=O.shift();H.type=O.slice().sort().join(".");var L=E[N];if(o.event.specialAll[N]){o.event.specialAll[N].setup.call(I,K,O)}if(!L){L=E[N]={};if(!o.event.special[N]||o.event.special[N].setup.call(I,K,O)===false){if(I.addEventListener){I.addEventListener(N,J,false)}else{if(I.attachEvent){I.attachEvent("on"+N,J)}}}}L[H.guid]=H;o.event.global[N]=true});I=null},guid:1,global:{},remove:function(K,H,J){if(K.nodeType==3||K.nodeType==8){return}var G=o.data(K,"events"),F,E;if(G){if(H===g||(typeof H==="string"&&H.charAt(0)==".")){for(var I in G){this.remove(K,I+(H||""))}}else{if(H.type){J=H.handler;H=H.type}o.each(H.split(/\s+/),function(M,O){var Q=O.split(".");O=Q.shift();var N=RegExp("(^|\\.)"+Q.slice().sort().join(".*\\.")+"(\\.|$)");if(G[O]){if(J){delete G[O][J.guid]}else{for(var P in G[O]){if(N.test(G[O][P].type)){delete G[O][P]}}}if(o.event.specialAll[O]){o.event.specialAll[O].teardown.call(K,Q)}for(F in G[O]){break}if(!F){if(!o.event.special[O]||o.event.special[O].teardown.call(K,Q)===false){if(K.removeEventListener){K.removeEventListener(O,o.data(K,"handle"),false)}else{if(K.detachEvent){K.detachEvent("on"+O,o.data(K,"handle"))}}}F=null;delete G[O]}}})}for(F in G){break}if(!F){var L=o.data(K,"handle");if(L){L.elem=null}o.removeData(K,"events");o.removeData(K,"handle")}}},trigger:function(I,K,H,E){var G=I.type||I;if(!E){I=typeof I==="object"?I[h]?I:o.extend(o.Event(G),I):o.Event(G);if(G.indexOf("!")>=0){I.type=G=G.slice(0,-1);I.exclusive=true}if(!H){I.stopPropagation();if(this.global[G]){o.each(o.cache,function(){if(this.events&&this.events[G]){o.event.trigger(I,K,this.handle.elem)}})}}if(!H||H.nodeType==3||H.nodeType==8){return g}I.result=g;I.target=H;K=o.makeArray(K);K.unshift(I)}I.currentTarget=H;var J=o.data(H,"handle");if(J){J.apply(H,K)}if((!H[G]||(o.nodeName(H,"a")&&G=="click"))&&H["on"+G]&&H["on"+G].apply(H,K)===false){I.result=false}if(!E&&H[G]&&!I.isDefaultPrevented()&&!(o.nodeName(H,"a")&&G=="click")){this.triggered=true;try{H[G]()}catch(L){}}this.triggered=false;if(!I.isPropagationStopped()){var F=H.parentNode||H.ownerDocument;if(F){o.event.trigger(I,K,F,true)}}},handle:function(K){var J,E;K=arguments[0]=o.event.fix(K||l.event);K.currentTarget=this;var L=K.type.split(".");K.type=L.shift();J=!L.length&&!K.exclusive;var I=RegExp("(^|\\.)"+L.slice().sort().join(".*\\.")+"(\\.|$)");E=(o.data(this,"events")||{})[K.type];for(var G in E){var H=E[G];if(J||I.test(H.type)){K.handler=H;K.data=H.data;var F=H.apply(this,arguments);if(F!==g){K.result=F;if(F===false){K.preventDefault();K.stopPropagation()}}if(K.isImmediatePropagationStopped()){break}}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(H){if(H[h]){return H}var F=H;H=o.Event(F);for(var G=this.props.length,J;G;){J=this.props[--G];H[J]=F[J]}if(!H.target){H.target=H.srcElement||document}if(H.target.nodeType==3){H.target=H.target.parentNode}if(!H.relatedTarget&&H.fromElement){H.relatedTarget=H.fromElement==H.target?H.toElement:H.fromElement}if(H.pageX==null&&H.clientX!=null){var I=document.documentElement,E=document.body;H.pageX=H.clientX+(I&&I.scrollLeft||E&&E.scrollLeft||0)-(I.clientLeft||0);H.pageY=H.clientY+(I&&I.scrollTop||E&&E.scrollTop||0)-(I.clientTop||0)}if(!H.which&&((H.charCode||H.charCode===0)?H.charCode:H.keyCode)){H.which=H.charCode||H.keyCode}if(!H.metaKey&&H.ctrlKey){H.metaKey=H.ctrlKey}if(!H.which&&H.button){H.which=(H.button&1?1:(H.button&2?3:(H.button&4?2:0)))}return H},proxy:function(F,E){E=E||function(){return F.apply(this,arguments)};E.guid=F.guid=F.guid||E.guid||this.guid++;return E},special:{ready:{setup:B,teardown:function(){}}},specialAll:{live:{setup:function(E,F){o.event.add(this,F[0],c)},teardown:function(G){if(G.length){var E=0,F=RegExp("(^|\\.)"+G[0]+"(\\.|$)");o.each((o.data(this,"events").live||{}),function(){if(F.test(this.type)){E++}});if(E<1){o.event.remove(this,G[0],c)}}}}}};o.Event=function(E){if(!this.preventDefault){return new o.Event(E)}if(E&&E.type){this.originalEvent=E;this.type=E.type}else{this.type=E}this.timeStamp=e();this[h]=true};function k(){return false}function u(){return true}o.Event.prototype={preventDefault:function(){this.isDefaultPrevented=u;var E=this.originalEvent;if(!E){return}if(E.preventDefault){E.preventDefault()}E.returnValue=false},stopPropagation:function(){this.isPropagationStopped=u;var E=this.originalEvent;if(!E){return}if(E.stopPropagation){E.stopPropagation()}E.cancelBubble=true},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=u;this.stopPropagation()},isDefaultPrevented:k,isPropagationStopped:k,isImmediatePropagationStopped:k};var a=function(F){var E=F.relatedTarget;while(E&&E!=this){try{E=E.parentNode}catch(G){E=this}}if(E!=this){F.type=F.data;o.event.handle.apply(this,arguments)}};o.each({mouseover:"mouseenter",mouseout:"mouseleave"},function(F,E){o.event.special[E]={setup:function(){o.event.add(this,F,a,E)},teardown:function(){o.event.remove(this,F,a)}}});o.fn.extend({bind:function(F,G,E){return F=="unload"?this.one(F,G,E):this.each(function(){o.event.add(this,F,E||G,E&&G)})},one:function(G,H,F){var E=o.event.proxy(F||H,function(I){o(this).unbind(I,E);return(F||H).apply(this,arguments)});return this.each(function(){o.event.add(this,G,E,F&&H)})},unbind:function(F,E){return this.each(function(){o.event.remove(this,F,E)})},trigger:function(E,F){return this.each(function(){o.event.trigger(E,F,this)})},triggerHandler:function(E,G){if(this[0]){var F=o.Event(E);F.preventDefault();F.stopPropagation();o.event.trigger(F,G,this[0]);return F.result}},toggle:function(G){var E=arguments,F=1;while(F<E.length){o.event.proxy(G,E[F++])}return this.click(o.event.proxy(G,function(H){this.lastToggle=(this.lastToggle||0)%F;H.preventDefault();return E[this.lastToggle++].apply(this,arguments)||false}))},hover:function(E,F){return this.mouseenter(E).mouseleave(F)},ready:function(E){B();if(o.isReady){E.call(document,o)}else{o.readyList.push(E)}return this},live:function(G,F){var E=o.event.proxy(F);E.guid+=this.selector+G;o(document).bind(i(G,this.selector),this.selector,E);return this},die:function(F,E){o(document).unbind(i(F,this.selector),E?{guid:E.guid+this.selector+F}:null);return this}});function c(H){var E=RegExp("(^|\\.)"+H.type+"(\\.|$)"),G=true,F=[];o.each(o.data(this,"events").live||[],function(I,J){if(E.test(J.type)){var K=o(H.target).closest(J.data)[0];if(K){F.push({elem:K,fn:J})}}});F.sort(function(J,I){return o.data(J.elem,"closest")-o.data(I.elem,"closest")});o.each(F,function(){if(this.fn.call(this.elem,H,this.fn.data)===false){return(G=false)}});return G}function i(F,E){return["live",F,E.replace(/\./g,"`").replace(/ /g,"|")].join(".")}o.extend({isReady:false,readyList:[],ready:function(){if(!o.isReady){o.isReady=true;if(o.readyList){o.each(o.readyList,function(){this.call(document,o)});o.readyList=null}o(document).triggerHandler("ready")}}});var x=false;function B(){if(x){return}x=true;if(document.addEventListener){document.addEventListener("DOMContentLoaded",function(){document.removeEventListener("DOMContentLoaded",arguments.callee,false);o.ready()},false)}else{if(document.attachEvent){document.attachEvent("onreadystatechange",function(){if(document.readyState==="complete"){document.detachEvent("onreadystatechange",arguments.callee);o.ready()}});if(document.documentElement.doScroll&&l==l.top){(function(){if(o.isReady){return}try{document.documentElement.doScroll("left")}catch(E){setTimeout(arguments.callee,0);return}o.ready()})()}}}o.event.add(l,"load",o.ready)}o.each(("blur,focus,load,resize,scroll,unload,click,dblclick,mousedown,mouseup,mousemove,mouseover,mouseout,mouseenter,mouseleave,change,select,submit,keydown,keypress,keyup,error").split(","),function(F,E){o.fn[E]=function(G){return G?this.bind(E,G):this.trigger(E)}});o(l).bind("unload",function(){for(var E in o.cache){if(E!=1&&o.cache[E].handle){o.event.remove(o.cache[E].handle.elem)}}});(function(){o.support={};var F=document.documentElement,G=document.createElement("script"),K=document.createElement("div"),J="script"+(new Date).getTime();K.style.display="none";K.innerHTML=' <link/><table></table><a href="/a" style="color:red;float:left;opacity:.5;">a</a><select><option>text</option></select><object><param/></object>';var H=K.getElementsByTagName("*"),E=K.getElementsByTagName("a")[0];if(!H||!H.length||!E){return}o.support={leadingWhitespace:K.firstChild.nodeType==3,tbody:!K.getElementsByTagName("tbody").length,objectAll:!!K.getElementsByTagName("object")[0].getElementsByTagName("*").length,htmlSerialize:!!K.getElementsByTagName("link").length,style:/red/.test(E.getAttribute("style")),hrefNormalized:E.getAttribute("href")==="/a",opacity:E.style.opacity==="0.5",cssFloat:!!E.style.cssFloat,scriptEval:false,noCloneEvent:true,boxModel:null};G.type="text/javascript";try{G.appendChild(document.createTextNode("window."+J+"=1;"))}catch(I){}F.insertBefore(G,F.firstChild);if(l[J]){o.support.scriptEval=true;delete l[J]}F.removeChild(G);if(K.attachEvent&&K.fireEvent){K.attachEvent("onclick",function(){o.support.noCloneEvent=false;K.detachEvent("onclick",arguments.callee)});K.cloneNode(true).fireEvent("onclick")}o(function(){var L=document.createElement("div");L.style.width=L.style.paddingLeft="1px";document.body.appendChild(L);o.boxModel=o.support.boxModel=L.offsetWidth===2;document.body.removeChild(L).style.display="none"})})();var w=o.support.cssFloat?"cssFloat":"styleFloat";o.props={"for":"htmlFor","class":"className","float":w,cssFloat:w,styleFloat:w,readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",tabindex:"tabIndex"};o.fn.extend({_load:o.fn.load,load:function(G,J,K){if(typeof G!=="string"){return this._load(G)}var I=G.indexOf(" ");if(I>=0){var E=G.slice(I,G.length);G=G.slice(0,I)}var H="GET";if(J){if(o.isFunction(J)){K=J;J=null}else{if(typeof J==="object"){J=o.param(J);H="POST"}}}var F=this;o.ajax({url:G,type:H,dataType:"html",data:J,complete:function(M,L){if(L=="success"||L=="notmodified"){F.html(E?o("<div/>").append(M.responseText.replace(/<script(.|\s)*?\/script>/g,"")).find(E):M.responseText)}if(K){F.each(K,[M.responseText,L,M])}}});return this},serialize:function(){return o.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?o.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password|search/i.test(this.type))}).map(function(E,F){var G=o(this).val();return G==null?null:o.isArray(G)?o.map(G,function(I,H){return{name:F.name,value:I}}):{name:F.name,value:G}}).get()}});o.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(E,F){o.fn[F]=function(G){return this.bind(F,G)}});var r=e();o.extend({get:function(E,G,H,F){if(o.isFunction(G)){H=G;G=null}return o.ajax({type:"GET",url:E,data:G,success:H,dataType:F})},getScript:function(E,F){return o.get(E,null,F,"script")},getJSON:function(E,F,G){return o.get(E,F,G,"json")},post:function(E,G,H,F){if(o.isFunction(G)){H=G;G={}}return o.ajax({type:"POST",url:E,data:G,success:H,dataType:F})},ajaxSetup:function(E){o.extend(o.ajaxSettings,E)},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return l.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest()},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(M){M=o.extend(true,M,o.extend(true,{},o.ajaxSettings,M));var W,F=/=\?(&|$)/g,R,V,G=M.type.toUpperCase();if(M.data&&M.processData&&typeof M.data!=="string"){M.data=o.param(M.data)}if(M.dataType=="jsonp"){if(G=="GET"){if(!M.url.match(F)){M.url+=(M.url.match(/\?/)?"&":"?")+(M.jsonp||"callback")+"=?"}}else{if(!M.data||!M.data.match(F)){M.data=(M.data?M.data+"&":"")+(M.jsonp||"callback")+"=?"}}M.dataType="json"}if(M.dataType=="json"&&(M.data&&M.data.match(F)||M.url.match(F))){W="jsonp"+r++;if(M.data){M.data=(M.data+"").replace(F,"="+W+"$1")}M.url=M.url.replace(F,"="+W+"$1");M.dataType="script";l[W]=function(X){V=X;I();L();l[W]=g;try{delete l[W]}catch(Y){}if(H){H.removeChild(T)}}}if(M.dataType=="script"&&M.cache==null){M.cache=false}if(M.cache===false&&G=="GET"){var E=e();var U=M.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+E+"$2");M.url=U+((U==M.url)?(M.url.match(/\?/)?"&":"?")+"_="+E:"")}if(M.data&&G=="GET"){M.url+=(M.url.match(/\?/)?"&":"?")+M.data;M.data=null}if(M.global&&!o.active++){o.event.trigger("ajaxStart")}var Q=/^(\w+:)?\/\/([^\/?#]+)/.exec(M.url);if(M.dataType=="script"&&G=="GET"&&Q&&(Q[1]&&Q[1]!=location.protocol||Q[2]!=location.host)){var H=document.getElementsByTagName("head")[0];var T=document.createElement("script");T.src=M.url;if(M.scriptCharset){T.charset=M.scriptCharset}if(!W){var O=false;T.onload=T.onreadystatechange=function(){if(!O&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){O=true;I();L();T.onload=T.onreadystatechange=null;H.removeChild(T)}}}H.appendChild(T);return g}var K=false;var J=M.xhr();if(M.username){J.open(G,M.url,M.async,M.username,M.password)}else{J.open(G,M.url,M.async)}try{if(M.data){J.setRequestHeader("Content-Type",M.contentType)}if(M.ifModified){J.setRequestHeader("If-Modified-Since",o.lastModified[M.url]||"Thu, 01 Jan 1970 00:00:00 GMT")}J.setRequestHeader("X-Requested-With","XMLHttpRequest");J.setRequestHeader("Accept",M.dataType&&M.accepts[M.dataType]?M.accepts[M.dataType]+", */*":M.accepts._default)}catch(S){}if(M.beforeSend&&M.beforeSend(J,M)===false){if(M.global&&!--o.active){o.event.trigger("ajaxStop")}J.abort();return false}if(M.global){o.event.trigger("ajaxSend",[J,M])}var N=function(X){if(J.readyState==0){if(P){clearInterval(P);P=null;if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}}else{if(!K&&J&&(J.readyState==4||X=="timeout")){K=true;if(P){clearInterval(P);P=null}R=X=="timeout"?"timeout":!o.httpSuccess(J)?"error":M.ifModified&&o.httpNotModified(J,M.url)?"notmodified":"success";if(R=="success"){try{V=o.httpData(J,M.dataType,M)}catch(Z){R="parsererror"}}if(R=="success"){var Y;try{Y=J.getResponseHeader("Last-Modified")}catch(Z){}if(M.ifModified&&Y){o.lastModified[M.url]=Y}if(!W){I()}}else{o.handleError(M,J,R)}L();if(X){J.abort()}if(M.async){J=null}}}};if(M.async){var P=setInterval(N,13);if(M.timeout>0){setTimeout(function(){if(J&&!K){N("timeout")}},M.timeout)}}try{J.send(M.data)}catch(S){o.handleError(M,J,null,S)}if(!M.async){N()}function I(){if(M.success){M.success(V,R)}if(M.global){o.event.trigger("ajaxSuccess",[J,M])}}function L(){if(M.complete){M.complete(J,R)}if(M.global){o.event.trigger("ajaxComplete",[J,M])}if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}return J},handleError:function(F,H,E,G){if(F.error){F.error(H,E,G)}if(F.global){o.event.trigger("ajaxError",[H,F,G])}},active:0,httpSuccess:function(F){try{return !F.status&&location.protocol=="file:"||(F.status>=200&&F.status<300)||F.status==304||F.status==1223}catch(E){}return false},httpNotModified:function(G,E){try{var H=G.getResponseHeader("Last-Modified");return G.status==304||H==o.lastModified[E]}catch(F){}return false},httpData:function(J,H,G){var F=J.getResponseHeader("content-type"),E=H=="xml"||!H&&F&&F.indexOf("xml")>=0,I=E?J.responseXML:J.responseText;if(E&&I.documentElement.tagName=="parsererror"){throw"parsererror"}if(G&&G.dataFilter){I=G.dataFilter(I,H)}if(typeof I==="string"){if(H=="script"){o.globalEval(I)}if(H=="json"){I=l["eval"]("("+I+")")}}return I},param:function(E){var G=[];function H(I,J){G[G.length]=encodeURIComponent(I)+"="+encodeURIComponent(J)}if(o.isArray(E)||E.jquery){o.each(E,function(){H(this.name,this.value)})}else{for(var F in E){if(o.isArray(E[F])){o.each(E[F],function(){H(F,this)})}else{H(F,o.isFunction(E[F])?E[F]():E[F])}}}return G.join("&").replace(/%20/g,"+")}});var m={},n,d=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];function t(F,E){var G={};o.each(d.concat.apply([],d.slice(0,E)),function(){G[this]=F});return G}o.fn.extend({show:function(J,L){if(J){return this.animate(t("show",3),J,L)}else{for(var H=0,F=this.length;H<F;H++){var E=o.data(this[H],"olddisplay");this[H].style.display=E||"";if(o.css(this[H],"display")==="none"){var G=this[H].tagName,K;if(m[G]){K=m[G]}else{var I=o("<"+G+" />").appendTo("body");K=I.css("display");if(K==="none"){K="block"}I.remove();m[G]=K}o.data(this[H],"olddisplay",K)}}for(var H=0,F=this.length;H<F;H++){this[H].style.display=o.data(this[H],"olddisplay")||""}return this}},hide:function(H,I){if(H){return this.animate(t("hide",3),H,I)}else{for(var G=0,F=this.length;G<F;G++){var E=o.data(this[G],"olddisplay");if(!E&&E!=="none"){o.data(this[G],"olddisplay",o.css(this[G],"display"))}}for(var G=0,F=this.length;G<F;G++){this[G].style.display="none"}return this}},_toggle:o.fn.toggle,toggle:function(G,F){var E=typeof G==="boolean";return o.isFunction(G)&&o.isFunction(F)?this._toggle.apply(this,arguments):G==null||E?this.each(function(){var H=E?G:o(this).is(":hidden");o(this)[H?"show":"hide"]()}):this.animate(t("toggle",3),G,F)},fadeTo:function(E,G,F){return this.animate({opacity:G},E,F)},animate:function(I,F,H,G){var E=o.speed(F,H,G);return this[E.queue===false?"each":"queue"](function(){var K=o.extend({},E),M,L=this.nodeType==1&&o(this).is(":hidden"),J=this;for(M in I){if(I[M]=="hide"&&L||I[M]=="show"&&!L){return K.complete.call(this)}if((M=="height"||M=="width")&&this.style){K.display=o.css(this,"display");K.overflow=this.style.overflow}}if(K.overflow!=null){this.style.overflow="hidden"}K.curAnim=o.extend({},I);o.each(I,function(O,S){var R=new o.fx(J,K,O);if(/toggle|show|hide/.test(S)){R[S=="toggle"?L?"show":"hide":S](I)}else{var Q=S.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),T=R.cur(true)||0;if(Q){var N=parseFloat(Q[2]),P=Q[3]||"px";if(P!="px"){J.style[O]=(N||1)+P;T=((N||1)/R.cur(true))*T;J.style[O]=T+P}if(Q[1]){N=((Q[1]=="-="?-1:1)*N)+T}R.custom(T,N,P)}else{R.custom(T,S,"")}}});return true})},stop:function(F,E){var G=o.timers;if(F){this.queue([])}this.each(function(){for(var H=G.length-1;H>=0;H--){if(G[H].elem==this){if(E){G[H](true)}G.splice(H,1)}}});if(!E){this.dequeue()}return this}});o.each({slideDown:t("show",1),slideUp:t("hide",1),slideToggle:t("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(E,F){o.fn[E]=function(G,H){return this.animate(F,G,H)}});o.extend({speed:function(G,H,F){var E=typeof G==="object"?G:{complete:F||!F&&H||o.isFunction(G)&&G,duration:G,easing:F&&H||H&&!o.isFunction(H)&&H};E.duration=o.fx.off?0:typeof E.duration==="number"?E.duration:o.fx.speeds[E.duration]||o.fx.speeds._default;E.old=E.complete;E.complete=function(){if(E.queue!==false){o(this).dequeue()}if(o.isFunction(E.old)){E.old.call(this)}};return E},easing:{linear:function(G,H,E,F){return E+F*G},swing:function(G,H,E,F){return((-Math.cos(G*Math.PI)/2)+0.5)*F+E}},timers:[],fx:function(F,E,G){this.options=E;this.elem=F;this.prop=G;if(!E.orig){E.orig={}}}});o.fx.prototype={update:function(){if(this.options.step){this.options.step.call(this.elem,this.now,this)}(o.fx.step[this.prop]||o.fx.step._default)(this);if((this.prop=="height"||this.prop=="width")&&this.elem.style){this.elem.style.display="block"}},cur:function(F){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)){return this.elem[this.prop]}var E=parseFloat(o.css(this.elem,this.prop,F));return E&&E>-10000?E:parseFloat(o.curCSS(this.elem,this.prop))||0},custom:function(I,H,G){this.startTime=e();this.start=I;this.end=H;this.unit=G||this.unit||"px";this.now=this.start;this.pos=this.state=0;var E=this;function F(J){return E.step(J)}F.elem=this.elem;if(F()&&o.timers.push(F)&&!n){n=setInterval(function(){var K=o.timers;for(var J=0;J<K.length;J++){if(!K[J]()){K.splice(J--,1)}}if(!K.length){clearInterval(n);n=g}},13)}},show:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.show=true;this.custom(this.prop=="width"||this.prop=="height"?1:0,this.cur());o(this.elem).show()},hide:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.hide=true;this.custom(this.cur(),0)},step:function(H){var G=e();if(H||G>=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var E=true;for(var F in this.options.curAnim){if(this.options.curAnim[F]!==true){E=false}}if(E){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(o.css(this.elem,"display")=="none"){this.elem.style.display="block"}}if(this.options.hide){o(this.elem).hide()}if(this.options.hide||this.options.show){for(var I in this.options.curAnim){o.attr(this.elem.style,I,this.options.orig[I])}}this.options.complete.call(this.elem)}return false}else{var J=G-this.startTime;this.state=J/this.options.duration;this.pos=o.easing[this.options.easing||(o.easing.swing?"swing":"linear")](this.state,J,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update()}return true}};o.extend(o.fx,{speeds:{slow:600,fast:200,_default:400},step:{opacity:function(E){o.attr(E.elem.style,"opacity",E.now)},_default:function(E){if(E.elem.style&&E.elem.style[E.prop]!=null){E.elem.style[E.prop]=E.now+E.unit}else{E.elem[E.prop]=E.now}}}});if(document.documentElement.getBoundingClientRect){o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}var G=this[0].getBoundingClientRect(),J=this[0].ownerDocument,F=J.body,E=J.documentElement,L=E.clientTop||F.clientTop||0,K=E.clientLeft||F.clientLeft||0,I=G.top+(self.pageYOffset||o.boxModel&&E.scrollTop||F.scrollTop)-L,H=G.left+(self.pageXOffset||o.boxModel&&E.scrollLeft||F.scrollLeft)-K;return{top:I,left:H}}}else{o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}o.offset.initialized||o.offset.initialize();var J=this[0],G=J.offsetParent,F=J,O=J.ownerDocument,M,H=O.documentElement,K=O.body,L=O.defaultView,E=L.getComputedStyle(J,null),N=J.offsetTop,I=J.offsetLeft;while((J=J.parentNode)&&J!==K&&J!==H){M=L.getComputedStyle(J,null);N-=J.scrollTop,I-=J.scrollLeft;if(J===G){N+=J.offsetTop,I+=J.offsetLeft;if(o.offset.doesNotAddBorder&&!(o.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(J.tagName))){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}F=G,G=J.offsetParent}if(o.offset.subtractsBorderForOverflowNotVisible&&M.overflow!=="visible"){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}E=M}if(E.position==="relative"||E.position==="static"){N+=K.offsetTop,I+=K.offsetLeft}if(E.position==="fixed"){N+=Math.max(H.scrollTop,K.scrollTop),I+=Math.max(H.scrollLeft,K.scrollLeft)}return{top:N,left:I}}}o.offset={initialize:function(){if(this.initialized){return}var L=document.body,F=document.createElement("div"),H,G,N,I,M,E,J=L.style.marginTop,K='<div style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;"><div></div></div><table style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;" cellpadding="0" cellspacing="0"><tr><td></td></tr></table>';M={position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"};for(E in M){F.style[E]=M[E]}F.innerHTML=K;L.insertBefore(F,L.firstChild);H=F.firstChild,G=H.firstChild,I=H.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(G.offsetTop!==5);this.doesAddBorderForTableAndCells=(I.offsetTop===5);H.style.overflow="hidden",H.style.position="relative";this.subtractsBorderForOverflowNotVisible=(G.offsetTop===-5);L.style.marginTop="1px";this.doesNotIncludeMarginInBodyOffset=(L.offsetTop===0);L.style.marginTop=J;L.removeChild(F);this.initialized=true},bodyOffset:function(E){o.offset.initialized||o.offset.initialize();var G=E.offsetTop,F=E.offsetLeft;if(o.offset.doesNotIncludeMarginInBodyOffset){G+=parseInt(o.curCSS(E,"marginTop",true),10)||0,F+=parseInt(o.curCSS(E,"marginLeft",true),10)||0}return{top:G,left:F}}};o.fn.extend({position:function(){var I=0,H=0,F;if(this[0]){var G=this.offsetParent(),J=this.offset(),E=/^body|html$/i.test(G[0].tagName)?{top:0,left:0}:G.offset();J.top-=j(this,"marginTop");J.left-=j(this,"marginLeft");E.top+=j(G,"borderTopWidth");E.left+=j(G,"borderLeftWidth");F={top:J.top-E.top,left:J.left-E.left}}return F},offsetParent:function(){var E=this[0].offsetParent||document.body;while(E&&(!/^body|html$/i.test(E.tagName)&&o.css(E,"position")=="static")){E=E.offsetParent}return o(E)}});o.each(["Left","Top"],function(F,E){var G="scroll"+E;o.fn[G]=function(H){if(!this[0]){return null}return H!==g?this.each(function(){this==l||this==document?l.scrollTo(!F?H:o(l).scrollLeft(),F?H:o(l).scrollTop()):this[G]=H}):this[0]==l||this[0]==document?self[F?"pageYOffset":"pageXOffset"]||o.boxModel&&document.documentElement[G]||document.body[G]:this[0][G]}});o.each(["Height","Width"],function(I,G){var E=I?"Left":"Top",H=I?"Right":"Bottom",F=G.toLowerCase();o.fn["inner"+G]=function(){return this[0]?o.css(this[0],F,false,"padding"):null};o.fn["outer"+G]=function(K){return this[0]?o.css(this[0],F,false,K?"margin":"border"):null};var J=G.toLowerCase();o.fn[J]=function(K){return this[0]==l?document.compatMode=="CSS1Compat"&&document.documentElement["client"+G]||document.body["client"+G]:this[0]==document?Math.max(document.documentElement["client"+G],document.body["scroll"+G],document.documentElement["scroll"+G],document.body["offset"+G],document.documentElement["offset"+G]):K===g?(this.length?o.css(this[0],J):null):this.css(J,typeof K==="string"?K:K+"px")}})})();
\ No newline at end of file diff --git a/examples/lessons/6_Maths_romanNumerals/js/lesson.js b/examples/lessons/6_Maths_romanNumerals/js/lesson.js deleted file mode 100755 index 0baa99a..0000000 --- a/examples/lessons/6_Maths_romanNumerals/js/lesson.js +++ /dev/null @@ -1,288 +0,0 @@ -$(document).ready(function() { - var i,j,flag; - var clickedObject; //store the clicked image id - var correctCounter = 0; - var totalCounter = 0; - var randQues = []; - var currentQuestion; - var TOTAL_QUES = 10; - var flag_correct; - var sectionNum = 0; //store the current section of game - var firstClickObj; - var flag_questionClick; //if set to 0, question is clicked so disable click in image - var imgCurrent; - var play = 0; - var restart = 0;//pause the timer - var s,h,m; - var t; - - var questions1 = new Array(3,16,62,59,127,355,400,757,935,1205); - var questions2 = new Array(10,2,150,50,500,1500,12,120,250,40); - - var startTimer = function(){ - s=checkTime(s); - m=checkTime(m); - h=checkTime(h); - $('#timerBox1').html(s); - $('#timerBox2').html(m); - $('#timerBox3').html(h); - }; - - var increaseTime = function(){ - if(play === 1){ - if(restart === 1){ - s = 0; - m = 0; - h = 0; - restart = 0; - } - clearTimeout(t); - s++; - if(s>60){ - m++; - m=checkTime(m); - $('#timerBox2').html(m); - s = 0; - } - if(m>60){ - h++; - h=checkTime(h); - $('#timerBox3').html(h); - m=0; - - } - s=checkTime(s); - $('#timerBox1').html(s); - var t=setTimeout(function(){increaseTime();},1000); - - } - }; - - function checkTime(timePara){ - if (timePara<10 ){ - timePara="0" + timePara; - } - return timePara; - }; - - var hide_textboxAnswers = function(){ - for(var i=0; i< TOTAL_QUES;i++){ - $('#checkFirst'+i).html(''); - $('#checkSecond'+i).html(''); - $('#ansBoxCorrect'+i).hide(); - } - }; - - function delay(){ - document.delayForm.delayval.value = 1; - hide_textboxAnswers(); - } - - - var randNumber = function(limit){ //generate random number between any two ranges - var rand_no = Math.floor(limit*Math.random()); - return rand_no; - }; - - var generate_random_questions = function(){ - randQues[0] = randNumber(TOTAL_QUES); - for(i=1; i<TOTAL_QUES; i++){ - do{ - flag = 0; - randQues[i] = randNumber(TOTAL_QUES); - for(j=0; j<i; j++){ - if(randQues[i]===randQues[j]){ - flag++; - } - } - }while(flag != 0 ); //end of do while loop - } - }; - - - // Convert from Roman Numerals - function deromanize( roman ) { - var roman = roman.toUpperCase(), - lookup = {I:1,V:5,X:10,L:50,C:100,D:500,M:1000}, - arabic = 0, - i = roman.length; - while (i--) { - if ( lookup[roman[i]] < lookup[roman[i+1]] ) - arabic -= lookup[roman[i]]; - else - arabic += lookup[roman[i]]; - } - return arabic; - } - - //Convert to roman numerals - function romanize(num) { - var lookup = {M:1000,CM:900,D:500,CD:400,C:100,XC:90,L:50,XL:40,X:10,IX:9,V:5,IV:4,I:1}, - roman = '', - i; - for ( i in lookup ) { - while ( num >= lookup[i] ) { - roman += i; - num -= lookup[i]; - } - } - return roman; - } - - - - var display_game_over = function(){ - $('#section').show(); - $('#section').addClass('gameOverShow'); - $('#gameOver').show(); - $('#gameOver').html('<img src="assets/image/gameOver.png'); - $('#gameOver').append('<div class="specialText">Click Play Again to play the game again or next/back to different game.</div>'); - }; - - - var check_answers = function(){ - var counter = 0; - var ques; - var flag_correct = 0; - for(var i = 0; i< TOTAL_QUES;i++){ - if(sectionNum === 1){ - ques = questions1[i]; - } - else{ - ques = questions2[i]; - } - var x = $('#ansBox'+i).val(); - $('#checkFirst'+i).html(''); - $('#checkSecond'+i).html(''); - $('#ansBoxCorrect'+i).hide(); - if(ques === deromanize(x) && x!= ""){ - $('#checkFirst'+i).append('<img src = "assets/image/correct.png">'); - counter++; - flag_correct = 1; - } - else{ - flag_correct = 0; - $('#checkFirst'+i).append('<img src = "assets/image/incorrect.png">'); - } - if(flag_correct === 0){ - $('#ansBoxCorrect'+i).show(); - $('#checkSecond'+i).html('<img src = "assets/image/correct.png">'); - $('input#ansBoxCorrect'+i).val(romanize(ques)); - } - } - if(counter != TOTAL_QUES){ - t=setTimeout(function(){delay();},3000); //give chance to see for 3 sec if incorrect - } - else{ - play = 0; - display_game_over(); - } - - }; - - var assignQuestions = function (square){ - //var question = randQues[square]; - var ques; - - if(sectionNum === 1){ - ques = questions1[square]; - } - else{ - ques = questions2[square]; - } - - $('#gameArea').append('<div id="imageArea'+square+'" class="imgArea"></div>'); - $('#imageArea'+square).append('<div id="ques'+square+'" class="quesBox"></div>'); - $('#ques'+square).html(ques); - $('#imageArea'+square).append('<input id="ansBox'+square+'" type="text" class="textBox" maxlength="10" size="10">'); - $('#imageArea'+square).append('<div id="checkFirst'+square+'" class="check"></div>'); - $('#imageArea'+square).append('<input id="ansBoxCorrect'+square+'" type="text" style="display:none" class="textBox" maxlength="10" size="10">'); - $('#imageArea'+square).append('<div id="checkSecond'+square+'" class="check"></div>'); - }; - - function game(){ - - $('#frontDisplay').show(); - $('#imgStory').hide(); - $('#topText').hide(); - $('#gameOver').hide(); - $('#section').hide(); - $('#linkBack').hide(); - $('#confirmBtn').hide(); - $('#linkNext').show(); - $('#timerBar').hide(); - sectionNum = 0; - } - function game_start(){ - clearTimeout(t); - if(sectionNum === 1){ - $('#linkNext').show(); - $('#linkBack').show(); - } - else{ - $('#linkNext').hide(); - $('#linkBack').show(); - } - //alert(sectionNum); - play = 1; - s = 0; h = 0; m = 0; - startTimer(); - increaseTime(); - $('#imgStory').show(); - $('#frontDisplay').hide(); - $('#gameOver').hide(); - $('#confirmBtn').show(); - $('#timerBar').show(); - $('#currentTitle').html('').append('तिम्रो सम्झने शक्ति को जाँच'); - $('#section').show(); - $('#section').removeClass('gameOverShow'); - $('#gameArea').html('').append('<div id="topText"></div>'); - - for(var i = 0; i < TOTAL_QUES; i++){ - assignQuestions(i); - } - focus_blur(); - } - $('#confirmBtn').click(function(){ - check_answers(); - }); - $('#linkStart').click(function(){ - sectionNum = 1; - game_start(); - - }); - - $('#linkPlayAgain').click(function(){ - restart = 0; - game_start(); - - }); - $('#linkBack').click(function(){ - if(sectionNum === 1){ - game(); - } - else if(sectionNum === 2){ - sectionNum = 1; - game_start(); - } - - }); - $('#linkNext').click(function(){ - sectionNum += 1; - game_start(); - - }); - function focus_blur(){ - $('input[type="text"]').focus(function() { - $(this).addClass("focus"); - }); - $('input[type="text"]').blur(function() { - $(this).removeClass("focus"); - }); - } - - game(); - - - -});//end of DOM diff --git a/examples/lessons/6_Maths_variables/assets/audio/correct.wav b/examples/lessons/6_Maths_variables/assets/audio/correct.wav Binary files differdeleted file mode 100755 index a49ba33..0000000 --- a/examples/lessons/6_Maths_variables/assets/audio/correct.wav +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/audio/incorrect.wav b/examples/lessons/6_Maths_variables/assets/audio/incorrect.wav Binary files differdeleted file mode 100755 index 906c6a3..0000000 --- a/examples/lessons/6_Maths_variables/assets/audio/incorrect.wav +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/bgAns.png b/examples/lessons/6_Maths_variables/assets/image/bgAns.png Binary files differdeleted file mode 100755 index 9ff65f4..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/bgAns.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/bgMessage.png b/examples/lessons/6_Maths_variables/assets/image/bgMessage.png Binary files differdeleted file mode 100755 index b56f2c0..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/bgMessage.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/bgQues.png b/examples/lessons/6_Maths_variables/assets/image/bgQues.png Binary files differdeleted file mode 100755 index c4624d3..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/bgQues.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/bgQuestion.png b/examples/lessons/6_Maths_variables/assets/image/bgQuestion.png Binary files differdeleted file mode 100755 index a0552f3..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/bgQuestion.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/bg_footer.png b/examples/lessons/6_Maths_variables/assets/image/bg_footer.png Binary files differdeleted file mode 100755 index 4bd44fa..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/bg_footer.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/bg_header.png b/examples/lessons/6_Maths_variables/assets/image/bg_header.png Binary files differdeleted file mode 100755 index f421817..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/bg_header.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/bg_title_block.png b/examples/lessons/6_Maths_variables/assets/image/bg_title_block.png Binary files differdeleted file mode 100755 index 7311891..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/bg_title_block.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/btn_back.png b/examples/lessons/6_Maths_variables/assets/image/btn_back.png Binary files differdeleted file mode 100755 index d9fbf14..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/btn_back.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/btn_back_hover.png b/examples/lessons/6_Maths_variables/assets/image/btn_back_hover.png Binary files differdeleted file mode 100755 index 0911fcc..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/btn_back_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/btn_help.png b/examples/lessons/6_Maths_variables/assets/image/btn_help.png Binary files differdeleted file mode 100755 index 6753e9c..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/btn_help.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/btn_help_hover.png b/examples/lessons/6_Maths_variables/assets/image/btn_help_hover.png Binary files differdeleted file mode 100755 index d3ccd92..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/btn_help_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/btn_next.png b/examples/lessons/6_Maths_variables/assets/image/btn_next.png Binary files differdeleted file mode 100755 index 9d70993..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/btn_next.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/btn_next_hover.png b/examples/lessons/6_Maths_variables/assets/image/btn_next_hover.png Binary files differdeleted file mode 100755 index 2cd4d37..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/btn_next_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/btn_ole.png b/examples/lessons/6_Maths_variables/assets/image/btn_ole.png Binary files differdeleted file mode 100755 index 0e775e9..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/btn_ole.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/btn_ole_hover.png b/examples/lessons/6_Maths_variables/assets/image/btn_ole_hover.png Binary files differdeleted file mode 100755 index c43c5f7..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/btn_ole_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/btn_play_again.png b/examples/lessons/6_Maths_variables/assets/image/btn_play_again.png Binary files differdeleted file mode 100755 index 3594d18..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/btn_play_again.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/btn_play_again_hover.png b/examples/lessons/6_Maths_variables/assets/image/btn_play_again_hover.png Binary files differdeleted file mode 100755 index ebb8f8c..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/btn_play_again_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/btn_play_again_mouse_down.png b/examples/lessons/6_Maths_variables/assets/image/btn_play_again_mouse_down.png Binary files differdeleted file mode 100755 index 07d6e45..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/btn_play_again_mouse_down.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/btn_start.png b/examples/lessons/6_Maths_variables/assets/image/btn_start.png Binary files differdeleted file mode 100755 index 32e5f20..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/btn_start.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/btn_start_hover.png b/examples/lessons/6_Maths_variables/assets/image/btn_start_hover.png Binary files differdeleted file mode 100755 index 811ce78..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/btn_start_hover.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/btn_start_mouse_down.png b/examples/lessons/6_Maths_variables/assets/image/btn_start_mouse_down.png Binary files differdeleted file mode 100755 index 5acd43b..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/btn_start_mouse_down.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/correct.png b/examples/lessons/6_Maths_variables/assets/image/correct.png Binary files differdeleted file mode 100755 index ca9b9db..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/correct.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/gameOver.png b/examples/lessons/6_Maths_variables/assets/image/gameOver.png Binary files differdeleted file mode 100755 index 81c403b..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/gameOver.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/help.png b/examples/lessons/6_Maths_variables/assets/image/help.png Binary files differdeleted file mode 100755 index b9b5607..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/help.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/img0.png b/examples/lessons/6_Maths_variables/assets/image/img0.png Binary files differdeleted file mode 100755 index eaa4be6..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/img0.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/img0Clicked.png b/examples/lessons/6_Maths_variables/assets/image/img0Clicked.png Binary files differdeleted file mode 100755 index 2914e3e..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/img0Clicked.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/img1.png b/examples/lessons/6_Maths_variables/assets/image/img1.png Binary files differdeleted file mode 100755 index 1cff36f..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/img1.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/img1Clicked.png b/examples/lessons/6_Maths_variables/assets/image/img1Clicked.png Binary files differdeleted file mode 100755 index 4ad6fa9..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/img1Clicked.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/img2.png b/examples/lessons/6_Maths_variables/assets/image/img2.png Binary files differdeleted file mode 100755 index 290b0a9..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/img2.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/img2Clicked.png b/examples/lessons/6_Maths_variables/assets/image/img2Clicked.png Binary files differdeleted file mode 100755 index 967ee3d..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/img2Clicked.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/img3.png b/examples/lessons/6_Maths_variables/assets/image/img3.png Binary files differdeleted file mode 100755 index 933ce84..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/img3.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/img3Clicked.png b/examples/lessons/6_Maths_variables/assets/image/img3Clicked.png Binary files differdeleted file mode 100755 index 59aebbc..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/img3Clicked.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/img4.png b/examples/lessons/6_Maths_variables/assets/image/img4.png Binary files differdeleted file mode 100755 index 7f52375..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/img4.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/img4Clicked.png b/examples/lessons/6_Maths_variables/assets/image/img4Clicked.png Binary files differdeleted file mode 100755 index 279e50a..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/img4Clicked.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/img5.png b/examples/lessons/6_Maths_variables/assets/image/img5.png Binary files differdeleted file mode 100755 index 9131ce0..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/img5.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/img5Clicked.png b/examples/lessons/6_Maths_variables/assets/image/img5Clicked.png Binary files differdeleted file mode 100755 index 7db2250..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/img5Clicked.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/img6.png b/examples/lessons/6_Maths_variables/assets/image/img6.png Binary files differdeleted file mode 100755 index 9131ce0..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/img6.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/img6Clicked.png b/examples/lessons/6_Maths_variables/assets/image/img6Clicked.png Binary files differdeleted file mode 100755 index 48eddc4..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/img6Clicked.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/img7.png b/examples/lessons/6_Maths_variables/assets/image/img7.png Binary files differdeleted file mode 100755 index 7543550..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/img7.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/img7Clicked.png b/examples/lessons/6_Maths_variables/assets/image/img7Clicked.png Binary files differdeleted file mode 100755 index 6f754a8..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/img7Clicked.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/incorrect.png b/examples/lessons/6_Maths_variables/assets/image/incorrect.png Binary files differdeleted file mode 100755 index 49ee2a2..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/incorrect.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/title_block_lt.png b/examples/lessons/6_Maths_variables/assets/image/title_block_lt.png Binary files differdeleted file mode 100755 index b1c0e90..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/title_block_lt.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/assets/image/title_block_rt.png b/examples/lessons/6_Maths_variables/assets/image/title_block_rt.png Binary files differdeleted file mode 100755 index 275daaf..0000000 --- a/examples/lessons/6_Maths_variables/assets/image/title_block_rt.png +++ /dev/null diff --git a/examples/lessons/6_Maths_variables/css/lesson.css b/examples/lessons/6_Maths_variables/css/lesson.css deleted file mode 100755 index 98c9a00..0000000 --- a/examples/lessons/6_Maths_variables/css/lesson.css +++ /dev/null @@ -1,248 +0,0 @@ -@CHARSET "UTF-8";
-/****** Page Styles ****/
-
-body {
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 10pt;
- margin: 0px;
- background-color: #FFFFCC;
-}
-#header {
- background-image: url(../assets/image/bg_header.png);
- background-repeat: repeat-x;
- height: 89px;
- width: 100%;
- position: absolute;
- left: 0px;
- top: 0px;
-}
-#topbtn_left {
- float: left;
- height: 60px;
- width: 60px;
- padding-top: 13px;
- padding-left: 5px;
-}
-
-
- #linkBack{
- width: 60px; height: 59px;
- background:url(../assets/image/btn_back.png);
- }
- #linkBack:hover{
- background:url(../assets/image/btn_back_hover.png);
- }
-
-#lesson_title {
- float: left;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- font-size: 16pt;
- font-weight: bold;
- color: #FFFFFF;
- margin-left: 10px;
- background-image: url(../assets/image/bg_title_block.png);
-}
-#topbtn_right {
- float: right;
- height: 60px;
- width: 60px;
- padding-top: 13px;
- padding-right: 5px;
-}
- #linkHelp{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_help.png);
- }
- #linkHelp:hover{
- background:url(../assets/image/btn_help_hover.png);
- }
- #linkOle{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_ole.png);
- }
- #linkOle:hover{
- background:url(../assets/image/btn_ole_hover.png);
- }
- #linkNext{
- width: 60px; height: 60px;
- background:url(../assets/image/btn_next.png);
- }
- #linkNext:hover{
- background:url(../assets/image/btn_next_hover.png);
- }
-#footer {
- background-image: url(../assets/image/bg_footer.png);
- background-repeat: repeat-x;
- position: absolute;
- height: 69px;
- width: 100%;
- left: 0px;
- bottom: 0px;
-}
-#score_box {
- float: left;
- padding-left: 5px;
- padding-top: 10px;
- font-family: Verdana, Arial, Helvetica, sans-serif;
- color: #FFFF00;
- font-size: 16pt;
- font-weight: bold;
-}
-#botbtn_right {
- float: right;
- height: 55px;
- /*width: 251px;*/
- padding-right: 5px;
- padding-top: 5px;
-}
- #linkCheck{
- margin: 1em 3em 0 0;
- width: 101px; height: 30px;
- background-image: url(../assets/image/check.png);
- }
-
- #linkStart{
- width: 251px; height: 55px;
- background:url(../assets/image/btn_start.png);
- }
- #linkStart:hover{
- background:url(../assets/image/btn_start_hover.png);
- }
- #linkStart:active{
- background:url(../assets/image/btn_start_mouse_down.png);
- }
- #linkPlayAgain{
- width: 251px; height: 55px;
- background:url(../assets/image/btn_play_again.png);
- }
- #linkPlayAgain:hover{
- background:url(../assets/image/btn_play_again_hover.png);
- }
- #linkPlayAgain:active{
- background:url(../assets/image/btn_play_again_mouse_down.png);
- }
-
-/**** End of the page style ****/
-
-/**** Game Styles ****/
-
-a{
- color:#FFFFCC;
-}
-#currentTitle{
- width: 150px;
- height: 80xp;
- font:25px/30px "Courier New", Courier, monospace;
- font-weight: bold;
- color: red;
-}
-#content{
- margin: 0 auto;
- margin-top: 85px;
- width: 95%;
- padding: 1em;
- height: 380px;
-
-}
- #section{
- width: 900px;
- height: 400px;
- margin: 0 auto;
- }
-
- #left-side{
- float:left;
- width: 350px;
- height: 360px;
- }
- #topText{
- width: 350px;
- height: 30px;
- font: 25px/30px Verdana, Geneva, Arial, Helvetica, sans-serif;
- color: #0000FF;
- }
- .bgQues{
- margin: 0.5em auto;
-
- width: 295px;
- height: 225px;
- background: url(../assets/image/bgQues.png) no-repeat;
- padding-top: 1.5em;
- text-align:center;
- }
- .bgAns{
- margin: 1em 0 0 0;
- width: 350px;
- height: 74px;
- background: url(../assets/image/bgAns.png) no-repeat;
- text-align:center;
- padding-top: 1em;
- }
- #right-side{
- float:right;
- width: 350px;
- height: 360px;
- }
-
- .bgQuestion{
- margin: 0.1em auto;
- width: 325px;
- height: 105px;
- background: url(../assets/image/bgQuestion.png) no-repeat;
- text-align:center;
- padding-top: 1em;
- }
- .bgInfo{
- margin: 0.1em auto;
- width: 325px;
- height: 105px;
- background: url(../assets/image/bgMessage.png) no-repeat;
- text-align:center;
- padding-top: 1em;
- }
- .quesText{
-
- font: 20px/25px Verdana, Geneva, Arial, Helvetica, sans-serif;
- color: #000000;
- }
- input.textBox{
- size:2;
- font: 15px/20px Verdana, Geneva, Arial, Helvetica, sans-serif;
- font-weight: bold;
- height:20px;
- width: 25px;
- text-align:center;
- }
- .focus {
- background-color: #FFEEAA;
- }
- .correct{
- background-color: #C0F9F3;
- }
- .incorrect{
- background-color: #FFFF00;
- }
-
- #help{
- display:none;
- position:absolute;
- right: 20%;
- top: 1%;
- width: 224px;
- height: 525px;
- background:url(../assets/image/help.png);
- z-index:40;
- }
- .backOpaque{
- background-color: #A4A4A4;
- opacity: 0.2;
- }
- #gameOver{
- display:none;
- position:absolute;
- top: 40%;
- left: 25%;
- width: 432px;
- height: 68px;
- background: url('../assets/image/gameOver.png');
- }
\ No newline at end of file diff --git a/examples/lessons/6_Maths_variables/css/ui.scoreboard.css b/examples/lessons/6_Maths_variables/css/ui.scoreboard.css deleted file mode 100755 index 11cdbb5..0000000 --- a/examples/lessons/6_Maths_variables/css/ui.scoreboard.css +++ /dev/null @@ -1,62 +0,0 @@ -.ui-scoreboard-container-h{ -max-width: 800em; -max-height: 200px; -float:left; -padding-top:0.4em; -padding-bottom:0.4em; -} - -.ui-scoreboard-spacing-h{ -max-width: 200em; -max-height: 300em; -display:inline; -margin-left:0.2em; -margin-right:0.4em; -} - -.ui-scoreboard-text{ -font-size:larger; -text-align: center; -} - -.ui-scoreboard-number-h { -background-color:black; -color: white; -padding-left:0.4em; -padding-right:0.4em; -font-size:larger; -} - -.ui-scoreboard-button{ -float:right; -cursor:pointer; -} - -button .ui-scoreboard-icon{ -float: left; -margin-right:0.3em; -} -.ui-scoreboard-container-v{ -max-width: 200px; -max-height: 400px; -float:left; -padding-top:0.4em; -padding-bottom:0.4em; -} -.ui-scoreboard-spacing-v{ -display:block; -margin: 0.4em; -} - -.ui-scoreboard-number-v{ -background-color:black; -color: white; -width: 1em; -text-align:center; -margin-left:auto; -margin-right: auto; -padding:0.4em; -font-size:larger; -} - - diff --git a/examples/lessons/6_Maths_variables/index.html b/examples/lessons/6_Maths_variables/index.html deleted file mode 100755 index d8510c0..0000000 --- a/examples/lessons/6_Maths_variables/index.html +++ /dev/null @@ -1,47 +0,0 @@ -<!DOCTYPE html>
-<head>
- <title>Class 6 Maths Variables</title>
- <meta name="keywords" content="karma,javascript,html5,sugar,sugarlabs,gsoc,ole,nepal" />
- <link type="text/css" rel="stylesheet" href="css/lesson.css" />
- <link type="text/css" rel="stylesheet" href="css/ui.scoreboard.css" />
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <link type="image/ico" rel="icon" href="../../assets/default/image/favicon.ico" />
- <script type="text/javascript" src="js/jquery-1.3.2.min.js"></script>
- <script type="text/javascript" src="js/ui.core.js"></script>
- <script type="text/javascript" src="js/ui.draggable.js"></script>
- <script type="text/javascript" src="js/ui.droppable.js"></script>
- <script type="text/javascript" src="js/karma.js"></script>
- <script type="text/javascript" src="js/ui.scoreboard.js"></script>
- <script type="text/javascript" src="js/lesson.js"></script>
-</head>
-<body>
- <div id="header">
- <div id="topbtn_left"><a href="http://olenepal.org"><div id="linkOle"></div></a></div>
- <div id="lesson_title">
- <img src="assets/image/title_block_lt.png" width="33" height="89" align="absmiddle" />
- <span id="currentTitle"> चल (Variables)</span>
- <img src="assets/image/title_block_rt.png" width="33" height="89" align="absmiddle" />
- </div>
- <div id="topbtn_right"><a href="#"><div id="linkHelp"></div></a></div>
- <div id="topbtn_right"><a href="http://olenepal.org"><div id="linkOle"></div></a></div>
- </div>
-
- <div id="content">
- <div id="section"></div>
- <div id="checkAnswer"></div>
- <div id="displayImgArea"></div>
- <div id="gameOver"></div>
- <div id="help"></div>
- </div>
- <form name="delayForm">
- <input type="hidden" name="delayval" size="5">
- </form>
-
- <div id="footer">
- <div id="score_box"></div>
- <div id="botbtn_right"><a href="#"><div id="linkStart"></div></a></div>
- <div id="botbtn_right"><a href="#"><div id="linkPlayAgain"></div></a></div>
- <div id="botbtn_right"><a href="#"><div id="linkCheck"></div></a></div>
- </div>
-</body>
-</html>
diff --git a/examples/lessons/6_Maths_variables/js/jquery-1.3.2.min.js b/examples/lessons/6_Maths_variables/js/jquery-1.3.2.min.js deleted file mode 100755 index b1ae21d..0000000 --- a/examples/lessons/6_Maths_variables/js/jquery-1.3.2.min.js +++ /dev/null @@ -1,19 +0,0 @@ -/* - * jQuery JavaScript Library v1.3.2 - * http://jquery.com/ - * - * Copyright (c) 2009 John Resig - * Dual licensed under the MIT and GPL licenses. - * http://docs.jquery.com/License - * - * Date: 2009-02-19 17:34:21 -0500 (Thu, 19 Feb 2009) - * Revision: 6246 - */ -(function(){var l=this,g,y=l.jQuery,p=l.$,o=l.jQuery=l.$=function(E,F){return new o.fn.init(E,F)},D=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,f=/^.[^:#\[\.,]*$/;o.fn=o.prototype={init:function(E,H){E=E||document;if(E.nodeType){this[0]=E;this.length=1;this.context=E;return this}if(typeof E==="string"){var G=D.exec(E);if(G&&(G[1]||!H)){if(G[1]){E=o.clean([G[1]],H)}else{var I=document.getElementById(G[3]);if(I&&I.id!=G[3]){return o().find(E)}var F=o(I||[]);F.context=document;F.selector=E;return F}}else{return o(H).find(E)}}else{if(o.isFunction(E)){return o(document).ready(E)}}if(E.selector&&E.context){this.selector=E.selector;this.context=E.context}return this.setArray(o.isArray(E)?E:o.makeArray(E))},selector:"",jquery:"1.3.2",size:function(){return this.length},get:function(E){return E===g?Array.prototype.slice.call(this):this[E]},pushStack:function(F,H,E){var G=o(F);G.prevObject=this;G.context=this.context;if(H==="find"){G.selector=this.selector+(this.selector?" ":"")+E}else{if(H){G.selector=this.selector+"."+H+"("+E+")"}}return G},setArray:function(E){this.length=0;Array.prototype.push.apply(this,E);return this},each:function(F,E){return o.each(this,F,E)},index:function(E){return o.inArray(E&&E.jquery?E[0]:E,this)},attr:function(F,H,G){var E=F;if(typeof F==="string"){if(H===g){return this[0]&&o[G||"attr"](this[0],F)}else{E={};E[F]=H}}return this.each(function(I){for(F in E){o.attr(G?this.style:this,F,o.prop(this,E[F],G,I,F))}})},css:function(E,F){if((E=="width"||E=="height")&&parseFloat(F)<0){F=g}return this.attr(E,F,"curCSS")},text:function(F){if(typeof F!=="object"&&F!=null){return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(F))}var E="";o.each(F||this,function(){o.each(this.childNodes,function(){if(this.nodeType!=8){E+=this.nodeType!=1?this.nodeValue:o.fn.text([this])}})});return E},wrapAll:function(E){if(this[0]){var F=o(E,this[0].ownerDocument).clone();if(this[0].parentNode){F.insertBefore(this[0])}F.map(function(){var G=this;while(G.firstChild){G=G.firstChild}return G}).append(this)}return this},wrapInner:function(E){return this.each(function(){o(this).contents().wrapAll(E)})},wrap:function(E){return this.each(function(){o(this).wrapAll(E)})},append:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.appendChild(E)}})},prepend:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.insertBefore(E,this.firstChild)}})},before:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this)})},after:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this.nextSibling)})},end:function(){return this.prevObject||o([])},push:[].push,sort:[].sort,splice:[].splice,find:function(E){if(this.length===1){var F=this.pushStack([],"find",E);F.length=0;o.find(E,this[0],F);return F}else{return this.pushStack(o.unique(o.map(this,function(G){return o.find(E,G)})),"find",E)}},clone:function(G){var E=this.map(function(){if(!o.support.noCloneEvent&&!o.isXMLDoc(this)){var I=this.outerHTML;if(!I){var J=this.ownerDocument.createElement("div");J.appendChild(this.cloneNode(true));I=J.innerHTML}return o.clean([I.replace(/ jQuery\d+="(?:\d+|null)"/g,"").replace(/^\s*/,"")])[0]}else{return this.cloneNode(true)}});if(G===true){var H=this.find("*").andSelf(),F=0;E.find("*").andSelf().each(function(){if(this.nodeName!==H[F].nodeName){return}var I=o.data(H[F],"events");for(var K in I){for(var J in I[K]){o.event.add(this,K,I[K][J],I[K][J].data)}}F++})}return E},filter:function(E){return this.pushStack(o.isFunction(E)&&o.grep(this,function(G,F){return E.call(G,F)})||o.multiFilter(E,o.grep(this,function(F){return F.nodeType===1})),"filter",E)},closest:function(E){var G=o.expr.match.POS.test(E)?o(E):null,F=0;return this.map(function(){var H=this;while(H&&H.ownerDocument){if(G?G.index(H)>-1:o(H).is(E)){o.data(H,"closest",F);return H}H=H.parentNode;F++}})},not:function(E){if(typeof E==="string"){if(f.test(E)){return this.pushStack(o.multiFilter(E,this,true),"not",E)}else{E=o.multiFilter(E,this)}}var F=E.length&&E[E.length-1]!==g&&!E.nodeType;return this.filter(function(){return F?o.inArray(this,E)<0:this!=E})},add:function(E){return this.pushStack(o.unique(o.merge(this.get(),typeof E==="string"?o(E):o.makeArray(E))))},is:function(E){return !!E&&o.multiFilter(E,this).length>0},hasClass:function(E){return !!E&&this.is("."+E)},val:function(K){if(K===g){var E=this[0];if(E){if(o.nodeName(E,"option")){return(E.attributes.value||{}).specified?E.value:E.text}if(o.nodeName(E,"select")){var I=E.selectedIndex,L=[],M=E.options,H=E.type=="select-one";if(I<0){return null}for(var F=H?I:0,J=H?I+1:M.length;F<J;F++){var G=M[F];if(G.selected){K=o(G).val();if(H){return K}L.push(K)}}return L}return(E.value||"").replace(/\r/g,"")}return g}if(typeof K==="number"){K+=""}return this.each(function(){if(this.nodeType!=1){return}if(o.isArray(K)&&/radio|checkbox/.test(this.type)){this.checked=(o.inArray(this.value,K)>=0||o.inArray(this.name,K)>=0)}else{if(o.nodeName(this,"select")){var N=o.makeArray(K);o("option",this).each(function(){this.selected=(o.inArray(this.value,N)>=0||o.inArray(this.text,N)>=0)});if(!N.length){this.selectedIndex=-1}}else{this.value=K}}})},html:function(E){return E===g?(this[0]?this[0].innerHTML.replace(/ jQuery\d+="(?:\d+|null)"/g,""):null):this.empty().append(E)},replaceWith:function(E){return this.after(E).remove()},eq:function(E){return this.slice(E,+E+1)},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","))},map:function(E){return this.pushStack(o.map(this,function(G,F){return E.call(G,F,G)}))},andSelf:function(){return this.add(this.prevObject)},domManip:function(J,M,L){if(this[0]){var I=(this[0].ownerDocument||this[0]).createDocumentFragment(),F=o.clean(J,(this[0].ownerDocument||this[0]),I),H=I.firstChild;if(H){for(var G=0,E=this.length;G<E;G++){L.call(K(this[G],H),this.length>1||G>0?I.cloneNode(true):I)}}if(F){o.each(F,z)}}return this;function K(N,O){return M&&o.nodeName(N,"table")&&o.nodeName(O,"tr")?(N.getElementsByTagName("tbody")[0]||N.appendChild(N.ownerDocument.createElement("tbody"))):N}}};o.fn.init.prototype=o.fn;function z(E,F){if(F.src){o.ajax({url:F.src,async:false,dataType:"script"})}else{o.globalEval(F.text||F.textContent||F.innerHTML||"")}if(F.parentNode){F.parentNode.removeChild(F)}}function e(){return +new Date}o.extend=o.fn.extend=function(){var J=arguments[0]||{},H=1,I=arguments.length,E=false,G;if(typeof J==="boolean"){E=J;J=arguments[1]||{};H=2}if(typeof J!=="object"&&!o.isFunction(J)){J={}}if(I==H){J=this;--H}for(;H<I;H++){if((G=arguments[H])!=null){for(var F in G){var K=J[F],L=G[F];if(J===L){continue}if(E&&L&&typeof L==="object"&&!L.nodeType){J[F]=o.extend(E,K||(L.length!=null?[]:{}),L)}else{if(L!==g){J[F]=L}}}}}return J};var b=/z-?index|font-?weight|opacity|zoom|line-?height/i,q=document.defaultView||{},s=Object.prototype.toString;o.extend({noConflict:function(E){l.$=p;if(E){l.jQuery=y}return o},isFunction:function(E){return s.call(E)==="[object Function]"},isArray:function(E){return s.call(E)==="[object Array]"},isXMLDoc:function(E){return E.nodeType===9&&E.documentElement.nodeName!=="HTML"||!!E.ownerDocument&&o.isXMLDoc(E.ownerDocument)},globalEval:function(G){if(G&&/\S/.test(G)){var F=document.getElementsByTagName("head")[0]||document.documentElement,E=document.createElement("script");E.type="text/javascript";if(o.support.scriptEval){E.appendChild(document.createTextNode(G))}else{E.text=G}F.insertBefore(E,F.firstChild);F.removeChild(E)}},nodeName:function(F,E){return F.nodeName&&F.nodeName.toUpperCase()==E.toUpperCase()},each:function(G,K,F){var E,H=0,I=G.length;if(F){if(I===g){for(E in G){if(K.apply(G[E],F)===false){break}}}else{for(;H<I;){if(K.apply(G[H++],F)===false){break}}}}else{if(I===g){for(E in G){if(K.call(G[E],E,G[E])===false){break}}}else{for(var J=G[0];H<I&&K.call(J,H,J)!==false;J=G[++H]){}}}return G},prop:function(H,I,G,F,E){if(o.isFunction(I)){I=I.call(H,F)}return typeof I==="number"&&G=="curCSS"&&!b.test(E)?I+"px":I},className:{add:function(E,F){o.each((F||"").split(/\s+/),function(G,H){if(E.nodeType==1&&!o.className.has(E.className,H)){E.className+=(E.className?" ":"")+H}})},remove:function(E,F){if(E.nodeType==1){E.className=F!==g?o.grep(E.className.split(/\s+/),function(G){return !o.className.has(F,G)}).join(" "):""}},has:function(F,E){return F&&o.inArray(E,(F.className||F).toString().split(/\s+/))>-1}},swap:function(H,G,I){var E={};for(var F in G){E[F]=H.style[F];H.style[F]=G[F]}I.call(H);for(var F in G){H.style[F]=E[F]}},css:function(H,F,J,E){if(F=="width"||F=="height"){var L,G={position:"absolute",visibility:"hidden",display:"block"},K=F=="width"?["Left","Right"]:["Top","Bottom"];function I(){L=F=="width"?H.offsetWidth:H.offsetHeight;if(E==="border"){return}o.each(K,function(){if(!E){L-=parseFloat(o.curCSS(H,"padding"+this,true))||0}if(E==="margin"){L+=parseFloat(o.curCSS(H,"margin"+this,true))||0}else{L-=parseFloat(o.curCSS(H,"border"+this+"Width",true))||0}})}if(H.offsetWidth!==0){I()}else{o.swap(H,G,I)}return Math.max(0,Math.round(L))}return o.curCSS(H,F,J)},curCSS:function(I,F,G){var L,E=I.style;if(F=="opacity"&&!o.support.opacity){L=o.attr(E,"opacity");return L==""?"1":L}if(F.match(/float/i)){F=w}if(!G&&E&&E[F]){L=E[F]}else{if(q.getComputedStyle){if(F.match(/float/i)){F="float"}F=F.replace(/([A-Z])/g,"-$1").toLowerCase();var M=q.getComputedStyle(I,null);if(M){L=M.getPropertyValue(F)}if(F=="opacity"&&L==""){L="1"}}else{if(I.currentStyle){var J=F.replace(/\-(\w)/g,function(N,O){return O.toUpperCase()});L=I.currentStyle[F]||I.currentStyle[J];if(!/^\d+(px)?$/i.test(L)&&/^\d/.test(L)){var H=E.left,K=I.runtimeStyle.left;I.runtimeStyle.left=I.currentStyle.left;E.left=L||0;L=E.pixelLeft+"px";E.left=H;I.runtimeStyle.left=K}}}}return L},clean:function(F,K,I){K=K||document;if(typeof K.createElement==="undefined"){K=K.ownerDocument||K[0]&&K[0].ownerDocument||document}if(!I&&F.length===1&&typeof F[0]==="string"){var H=/^<(\w+)\s*\/?>$/.exec(F[0]);if(H){return[K.createElement(H[1])]}}var G=[],E=[],L=K.createElement("div");o.each(F,function(P,S){if(typeof S==="number"){S+=""}if(!S){return}if(typeof S==="string"){S=S.replace(/(<(\w+)[^>]*?)\/>/g,function(U,V,T){return T.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?U:V+"></"+T+">"});var O=S.replace(/^\s+/,"").substring(0,10).toLowerCase();var Q=!O.indexOf("<opt")&&[1,"<select multiple='multiple'>","</select>"]||!O.indexOf("<leg")&&[1,"<fieldset>","</fieldset>"]||O.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"<table>","</table>"]||!O.indexOf("<tr")&&[2,"<table><tbody>","</tbody></table>"]||(!O.indexOf("<td")||!O.indexOf("<th"))&&[3,"<table><tbody><tr>","</tr></tbody></table>"]||!O.indexOf("<col")&&[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"]||!o.support.htmlSerialize&&[1,"div<div>","</div>"]||[0,"",""];L.innerHTML=Q[1]+S+Q[2];while(Q[0]--){L=L.lastChild}if(!o.support.tbody){var R=/<tbody/i.test(S),N=!O.indexOf("<table")&&!R?L.firstChild&&L.firstChild.childNodes:Q[1]=="<table>"&&!R?L.childNodes:[];for(var M=N.length-1;M>=0;--M){if(o.nodeName(N[M],"tbody")&&!N[M].childNodes.length){N[M].parentNode.removeChild(N[M])}}}if(!o.support.leadingWhitespace&&/^\s/.test(S)){L.insertBefore(K.createTextNode(S.match(/^\s*/)[0]),L.firstChild)}S=o.makeArray(L.childNodes)}if(S.nodeType){G.push(S)}else{G=o.merge(G,S)}});if(I){for(var J=0;G[J];J++){if(o.nodeName(G[J],"script")&&(!G[J].type||G[J].type.toLowerCase()==="text/javascript")){E.push(G[J].parentNode?G[J].parentNode.removeChild(G[J]):G[J])}else{if(G[J].nodeType===1){G.splice.apply(G,[J+1,0].concat(o.makeArray(G[J].getElementsByTagName("script"))))}I.appendChild(G[J])}}return E}return G},attr:function(J,G,K){if(!J||J.nodeType==3||J.nodeType==8){return g}var H=!o.isXMLDoc(J),L=K!==g;G=H&&o.props[G]||G;if(J.tagName){var F=/href|src|style/.test(G);if(G=="selected"&&J.parentNode){J.parentNode.selectedIndex}if(G in J&&H&&!F){if(L){if(G=="type"&&o.nodeName(J,"input")&&J.parentNode){throw"type property can't be changed"}J[G]=K}if(o.nodeName(J,"form")&&J.getAttributeNode(G)){return J.getAttributeNode(G).nodeValue}if(G=="tabIndex"){var I=J.getAttributeNode("tabIndex");return I&&I.specified?I.value:J.nodeName.match(/(button|input|object|select|textarea)/i)?0:J.nodeName.match(/^(a|area)$/i)&&J.href?0:g}return J[G]}if(!o.support.style&&H&&G=="style"){return o.attr(J.style,"cssText",K)}if(L){J.setAttribute(G,""+K)}var E=!o.support.hrefNormalized&&H&&F?J.getAttribute(G,2):J.getAttribute(G);return E===null?g:E}if(!o.support.opacity&&G=="opacity"){if(L){J.zoom=1;J.filter=(J.filter||"").replace(/alpha\([^)]*\)/,"")+(parseInt(K)+""=="NaN"?"":"alpha(opacity="+K*100+")")}return J.filter&&J.filter.indexOf("opacity=")>=0?(parseFloat(J.filter.match(/opacity=([^)]*)/)[1])/100)+"":""}G=G.replace(/-([a-z])/ig,function(M,N){return N.toUpperCase()});if(L){J[G]=K}return J[G]},trim:function(E){return(E||"").replace(/^\s+|\s+$/g,"")},makeArray:function(G){var E=[];if(G!=null){var F=G.length;if(F==null||typeof G==="string"||o.isFunction(G)||G.setInterval){E[0]=G}else{while(F){E[--F]=G[F]}}}return E},inArray:function(G,H){for(var E=0,F=H.length;E<F;E++){if(H[E]===G){return E}}return -1},merge:function(H,E){var F=0,G,I=H.length;if(!o.support.getAll){while((G=E[F++])!=null){if(G.nodeType!=8){H[I++]=G}}}else{while((G=E[F++])!=null){H[I++]=G}}return H},unique:function(K){var F=[],E={};try{for(var G=0,H=K.length;G<H;G++){var J=o.data(K[G]);if(!E[J]){E[J]=true;F.push(K[G])}}}catch(I){F=K}return F},grep:function(F,J,E){var G=[];for(var H=0,I=F.length;H<I;H++){if(!E!=!J(F[H],H)){G.push(F[H])}}return G},map:function(E,J){var F=[];for(var G=0,H=E.length;G<H;G++){var I=J(E[G],G);if(I!=null){F[F.length]=I}}return F.concat.apply([],F)}});var C=navigator.userAgent.toLowerCase();o.browser={version:(C.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)||[0,"0"])[1],safari:/webkit/.test(C),opera:/opera/.test(C),msie:/msie/.test(C)&&!/opera/.test(C),mozilla:/mozilla/.test(C)&&!/(compatible|webkit)/.test(C)};o.each({parent:function(E){return E.parentNode},parents:function(E){return o.dir(E,"parentNode")},next:function(E){return o.nth(E,2,"nextSibling")},prev:function(E){return o.nth(E,2,"previousSibling")},nextAll:function(E){return o.dir(E,"nextSibling")},prevAll:function(E){return o.dir(E,"previousSibling")},siblings:function(E){return o.sibling(E.parentNode.firstChild,E)},children:function(E){return o.sibling(E.firstChild)},contents:function(E){return o.nodeName(E,"iframe")?E.contentDocument||E.contentWindow.document:o.makeArray(E.childNodes)}},function(E,F){o.fn[E]=function(G){var H=o.map(this,F);if(G&&typeof G=="string"){H=o.multiFilter(G,H)}return this.pushStack(o.unique(H),E,G)}});o.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(E,F){o.fn[E]=function(G){var J=[],L=o(G);for(var K=0,H=L.length;K<H;K++){var I=(K>0?this.clone(true):this).get();o.fn[F].apply(o(L[K]),I);J=J.concat(I)}return this.pushStack(J,E,G)}});o.each({removeAttr:function(E){o.attr(this,E,"");if(this.nodeType==1){this.removeAttribute(E)}},addClass:function(E){o.className.add(this,E)},removeClass:function(E){o.className.remove(this,E)},toggleClass:function(F,E){if(typeof E!=="boolean"){E=!o.className.has(this,F)}o.className[E?"add":"remove"](this,F)},remove:function(E){if(!E||o.filter(E,[this]).length){o("*",this).add([this]).each(function(){o.event.remove(this);o.removeData(this)});if(this.parentNode){this.parentNode.removeChild(this)}}},empty:function(){o(this).children().remove();while(this.firstChild){this.removeChild(this.firstChild)}}},function(E,F){o.fn[E]=function(){return this.each(F,arguments)}});function j(E,F){return E[0]&&parseInt(o.curCSS(E[0],F,true),10)||0}var h="jQuery"+e(),v=0,A={};o.extend({cache:{},data:function(F,E,G){F=F==l?A:F;var H=F[h];if(!H){H=F[h]=++v}if(E&&!o.cache[H]){o.cache[H]={}}if(G!==g){o.cache[H][E]=G}return E?o.cache[H][E]:H},removeData:function(F,E){F=F==l?A:F;var H=F[h];if(E){if(o.cache[H]){delete o.cache[H][E];E="";for(E in o.cache[H]){break}if(!E){o.removeData(F)}}}else{try{delete F[h]}catch(G){if(F.removeAttribute){F.removeAttribute(h)}}delete o.cache[H]}},queue:function(F,E,H){if(F){E=(E||"fx")+"queue";var G=o.data(F,E);if(!G||o.isArray(H)){G=o.data(F,E,o.makeArray(H))}else{if(H){G.push(H)}}}return G},dequeue:function(H,G){var E=o.queue(H,G),F=E.shift();if(!G||G==="fx"){F=E[0]}if(F!==g){F.call(H)}}});o.fn.extend({data:function(E,G){var H=E.split(".");H[1]=H[1]?"."+H[1]:"";if(G===g){var F=this.triggerHandler("getData"+H[1]+"!",[H[0]]);if(F===g&&this.length){F=o.data(this[0],E)}return F===g&&H[1]?this.data(H[0]):F}else{return this.trigger("setData"+H[1]+"!",[H[0],G]).each(function(){o.data(this,E,G)})}},removeData:function(E){return this.each(function(){o.removeData(this,E)})},queue:function(E,F){if(typeof E!=="string"){F=E;E="fx"}if(F===g){return o.queue(this[0],E)}return this.each(function(){var G=o.queue(this,E,F);if(E=="fx"&&G.length==1){G[0].call(this)}})},dequeue:function(E){return this.each(function(){o.dequeue(this,E)})}}); -/* - * Sizzle CSS Selector Engine - v0.9.3 - * Copyright 2009, The Dojo Foundation - * Released under the MIT, BSD, and GPL Licenses. - * More information: http://sizzlejs.com/ - */ -(function(){var R=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?/g,L=0,H=Object.prototype.toString;var F=function(Y,U,ab,ac){ab=ab||[];U=U||document;if(U.nodeType!==1&&U.nodeType!==9){return[]}if(!Y||typeof Y!=="string"){return ab}var Z=[],W,af,ai,T,ad,V,X=true;R.lastIndex=0;while((W=R.exec(Y))!==null){Z.push(W[1]);if(W[2]){V=RegExp.rightContext;break}}if(Z.length>1&&M.exec(Y)){if(Z.length===2&&I.relative[Z[0]]){af=J(Z[0]+Z[1],U)}else{af=I.relative[Z[0]]?[U]:F(Z.shift(),U);while(Z.length){Y=Z.shift();if(I.relative[Y]){Y+=Z.shift()}af=J(Y,af)}}}else{var ae=ac?{expr:Z.pop(),set:E(ac)}:F.find(Z.pop(),Z.length===1&&U.parentNode?U.parentNode:U,Q(U));af=F.filter(ae.expr,ae.set);if(Z.length>0){ai=E(af)}else{X=false}while(Z.length){var ah=Z.pop(),ag=ah;if(!I.relative[ah]){ah=""}else{ag=Z.pop()}if(ag==null){ag=U}I.relative[ah](ai,ag,Q(U))}}if(!ai){ai=af}if(!ai){throw"Syntax error, unrecognized expression: "+(ah||Y)}if(H.call(ai)==="[object Array]"){if(!X){ab.push.apply(ab,ai)}else{if(U.nodeType===1){for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&(ai[aa]===true||ai[aa].nodeType===1&&K(U,ai[aa]))){ab.push(af[aa])}}}else{for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&ai[aa].nodeType===1){ab.push(af[aa])}}}}}else{E(ai,ab)}if(V){F(V,U,ab,ac);if(G){hasDuplicate=false;ab.sort(G);if(hasDuplicate){for(var aa=1;aa<ab.length;aa++){if(ab[aa]===ab[aa-1]){ab.splice(aa--,1)}}}}}return ab};F.matches=function(T,U){return F(T,null,null,U)};F.find=function(aa,T,ab){var Z,X;if(!aa){return[]}for(var W=0,V=I.order.length;W<V;W++){var Y=I.order[W],X;if((X=I.match[Y].exec(aa))){var U=RegExp.leftContext;if(U.substr(U.length-1)!=="\\"){X[1]=(X[1]||"").replace(/\\/g,"");Z=I.find[Y](X,T,ab);if(Z!=null){aa=aa.replace(I.match[Y],"");break}}}}if(!Z){Z=T.getElementsByTagName("*")}return{set:Z,expr:aa}};F.filter=function(ad,ac,ag,W){var V=ad,ai=[],aa=ac,Y,T,Z=ac&&ac[0]&&Q(ac[0]);while(ad&&ac.length){for(var ab in I.filter){if((Y=I.match[ab].exec(ad))!=null){var U=I.filter[ab],ah,af;T=false;if(aa==ai){ai=[]}if(I.preFilter[ab]){Y=I.preFilter[ab](Y,aa,ag,ai,W,Z);if(!Y){T=ah=true}else{if(Y===true){continue}}}if(Y){for(var X=0;(af=aa[X])!=null;X++){if(af){ah=U(af,Y,X,aa);var ae=W^!!ah;if(ag&&ah!=null){if(ae){T=true}else{aa[X]=false}}else{if(ae){ai.push(af);T=true}}}}}if(ah!==g){if(!ag){aa=ai}ad=ad.replace(I.match[ab],"");if(!T){return[]}break}}}if(ad==V){if(T==null){throw"Syntax error, unrecognized expression: "+ad}else{break}}V=ad}return aa};var I=F.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF_-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF_-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*_-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+-]*)\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF_-]|\\.)+)(?:\((['"]*)((?:\([^\)]+\)|[^\2\(\)]*)+)\2\))?/},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(T){return T.getAttribute("href")}},relative:{"+":function(aa,T,Z){var X=typeof T==="string",ab=X&&!/\W/.test(T),Y=X&&!ab;if(ab&&!Z){T=T.toUpperCase()}for(var W=0,V=aa.length,U;W<V;W++){if((U=aa[W])){while((U=U.previousSibling)&&U.nodeType!==1){}aa[W]=Y||U&&U.nodeName===T?U||false:U===T}}if(Y){F.filter(T,aa,true)}},">":function(Z,U,aa){var X=typeof U==="string";if(X&&!/\W/.test(U)){U=aa?U:U.toUpperCase();for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){var W=Y.parentNode;Z[V]=W.nodeName===U?W:false}}}else{for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){Z[V]=X?Y.parentNode:Y.parentNode===U}}if(X){F.filter(U,Z,true)}}},"":function(W,U,Y){var V=L++,T=S;if(!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("parentNode",U,V,W,X,Y)},"~":function(W,U,Y){var V=L++,T=S;if(typeof U==="string"&&!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("previousSibling",U,V,W,X,Y)}},find:{ID:function(U,V,W){if(typeof V.getElementById!=="undefined"&&!W){var T=V.getElementById(U[1]);return T?[T]:[]}},NAME:function(V,Y,Z){if(typeof Y.getElementsByName!=="undefined"){var U=[],X=Y.getElementsByName(V[1]);for(var W=0,T=X.length;W<T;W++){if(X[W].getAttribute("name")===V[1]){U.push(X[W])}}return U.length===0?null:U}},TAG:function(T,U){return U.getElementsByTagName(T[1])}},preFilter:{CLASS:function(W,U,V,T,Z,aa){W=" "+W[1].replace(/\\/g,"")+" ";if(aa){return W}for(var X=0,Y;(Y=U[X])!=null;X++){if(Y){if(Z^(Y.className&&(" "+Y.className+" ").indexOf(W)>=0)){if(!V){T.push(Y)}}else{if(V){U[X]=false}}}}return false},ID:function(T){return T[1].replace(/\\/g,"")},TAG:function(U,T){for(var V=0;T[V]===false;V++){}return T[V]&&Q(T[V])?U[1]:U[1].toUpperCase()},CHILD:function(T){if(T[1]=="nth"){var U=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(T[2]=="even"&&"2n"||T[2]=="odd"&&"2n+1"||!/\D/.test(T[2])&&"0n+"+T[2]||T[2]);T[2]=(U[1]+(U[2]||1))-0;T[3]=U[3]-0}T[0]=L++;return T},ATTR:function(X,U,V,T,Y,Z){var W=X[1].replace(/\\/g,"");if(!Z&&I.attrMap[W]){X[1]=I.attrMap[W]}if(X[2]==="~="){X[4]=" "+X[4]+" "}return X},PSEUDO:function(X,U,V,T,Y){if(X[1]==="not"){if(X[3].match(R).length>1||/^\w/.test(X[3])){X[3]=F(X[3],null,null,U)}else{var W=F.filter(X[3],U,V,true^Y);if(!V){T.push.apply(T,W)}return false}}else{if(I.match.POS.test(X[0])||I.match.CHILD.test(X[0])){return true}}return X},POS:function(T){T.unshift(true);return T}},filters:{enabled:function(T){return T.disabled===false&&T.type!=="hidden"},disabled:function(T){return T.disabled===true},checked:function(T){return T.checked===true},selected:function(T){T.parentNode.selectedIndex;return T.selected===true},parent:function(T){return !!T.firstChild},empty:function(T){return !T.firstChild},has:function(V,U,T){return !!F(T[3],V).length},header:function(T){return/h\d/i.test(T.nodeName)},text:function(T){return"text"===T.type},radio:function(T){return"radio"===T.type},checkbox:function(T){return"checkbox"===T.type},file:function(T){return"file"===T.type},password:function(T){return"password"===T.type},submit:function(T){return"submit"===T.type},image:function(T){return"image"===T.type},reset:function(T){return"reset"===T.type},button:function(T){return"button"===T.type||T.nodeName.toUpperCase()==="BUTTON"},input:function(T){return/input|select|textarea|button/i.test(T.nodeName)}},setFilters:{first:function(U,T){return T===0},last:function(V,U,T,W){return U===W.length-1},even:function(U,T){return T%2===0},odd:function(U,T){return T%2===1},lt:function(V,U,T){return U<T[3]-0},gt:function(V,U,T){return U>T[3]-0},nth:function(V,U,T){return T[3]-0==U},eq:function(V,U,T){return T[3]-0==U}},filter:{PSEUDO:function(Z,V,W,aa){var U=V[1],X=I.filters[U];if(X){return X(Z,W,V,aa)}else{if(U==="contains"){return(Z.textContent||Z.innerText||"").indexOf(V[3])>=0}else{if(U==="not"){var Y=V[3];for(var W=0,T=Y.length;W<T;W++){if(Y[W]===Z){return false}}return true}}}},CHILD:function(T,W){var Z=W[1],U=T;switch(Z){case"only":case"first":while(U=U.previousSibling){if(U.nodeType===1){return false}}if(Z=="first"){return true}U=T;case"last":while(U=U.nextSibling){if(U.nodeType===1){return false}}return true;case"nth":var V=W[2],ac=W[3];if(V==1&&ac==0){return true}var Y=W[0],ab=T.parentNode;if(ab&&(ab.sizcache!==Y||!T.nodeIndex)){var X=0;for(U=ab.firstChild;U;U=U.nextSibling){if(U.nodeType===1){U.nodeIndex=++X}}ab.sizcache=Y}var aa=T.nodeIndex-ac;if(V==0){return aa==0}else{return(aa%V==0&&aa/V>=0)}}},ID:function(U,T){return U.nodeType===1&&U.getAttribute("id")===T},TAG:function(U,T){return(T==="*"&&U.nodeType===1)||U.nodeName===T},CLASS:function(U,T){return(" "+(U.className||U.getAttribute("class"))+" ").indexOf(T)>-1},ATTR:function(Y,W){var V=W[1],T=I.attrHandle[V]?I.attrHandle[V](Y):Y[V]!=null?Y[V]:Y.getAttribute(V),Z=T+"",X=W[2],U=W[4];return T==null?X==="!=":X==="="?Z===U:X==="*="?Z.indexOf(U)>=0:X==="~="?(" "+Z+" ").indexOf(U)>=0:!U?Z&&T!==false:X==="!="?Z!=U:X==="^="?Z.indexOf(U)===0:X==="$="?Z.substr(Z.length-U.length)===U:X==="|="?Z===U||Z.substr(0,U.length+1)===U+"-":false},POS:function(X,U,V,Y){var T=U[2],W=I.setFilters[T];if(W){return W(X,V,U,Y)}}}};var M=I.match.POS;for(var O in I.match){I.match[O]=RegExp(I.match[O].source+/(?![^\[]*\])(?![^\(]*\))/.source)}var E=function(U,T){U=Array.prototype.slice.call(U);if(T){T.push.apply(T,U);return T}return U};try{Array.prototype.slice.call(document.documentElement.childNodes)}catch(N){E=function(X,W){var U=W||[];if(H.call(X)==="[object Array]"){Array.prototype.push.apply(U,X)}else{if(typeof X.length==="number"){for(var V=0,T=X.length;V<T;V++){U.push(X[V])}}else{for(var V=0;X[V];V++){U.push(X[V])}}}return U}}var G;if(document.documentElement.compareDocumentPosition){G=function(U,T){var V=U.compareDocumentPosition(T)&4?-1:U===T?0:1;if(V===0){hasDuplicate=true}return V}}else{if("sourceIndex" in document.documentElement){G=function(U,T){var V=U.sourceIndex-T.sourceIndex;if(V===0){hasDuplicate=true}return V}}else{if(document.createRange){G=function(W,U){var V=W.ownerDocument.createRange(),T=U.ownerDocument.createRange();V.selectNode(W);V.collapse(true);T.selectNode(U);T.collapse(true);var X=V.compareBoundaryPoints(Range.START_TO_END,T);if(X===0){hasDuplicate=true}return X}}}}(function(){var U=document.createElement("form"),V="script"+(new Date).getTime();U.innerHTML="<input name='"+V+"'/>";var T=document.documentElement;T.insertBefore(U,T.firstChild);if(!!document.getElementById(V)){I.find.ID=function(X,Y,Z){if(typeof Y.getElementById!=="undefined"&&!Z){var W=Y.getElementById(X[1]);return W?W.id===X[1]||typeof W.getAttributeNode!=="undefined"&&W.getAttributeNode("id").nodeValue===X[1]?[W]:g:[]}};I.filter.ID=function(Y,W){var X=typeof Y.getAttributeNode!=="undefined"&&Y.getAttributeNode("id");return Y.nodeType===1&&X&&X.nodeValue===W}}T.removeChild(U)})();(function(){var T=document.createElement("div");T.appendChild(document.createComment(""));if(T.getElementsByTagName("*").length>0){I.find.TAG=function(U,Y){var X=Y.getElementsByTagName(U[1]);if(U[1]==="*"){var W=[];for(var V=0;X[V];V++){if(X[V].nodeType===1){W.push(X[V])}}X=W}return X}}T.innerHTML="<a href='#'></a>";if(T.firstChild&&typeof T.firstChild.getAttribute!=="undefined"&&T.firstChild.getAttribute("href")!=="#"){I.attrHandle.href=function(U){return U.getAttribute("href",2)}}})();if(document.querySelectorAll){(function(){var T=F,U=document.createElement("div");U.innerHTML="<p class='TEST'></p>";if(U.querySelectorAll&&U.querySelectorAll(".TEST").length===0){return}F=function(Y,X,V,W){X=X||document;if(!W&&X.nodeType===9&&!Q(X)){try{return E(X.querySelectorAll(Y),V)}catch(Z){}}return T(Y,X,V,W)};F.find=T.find;F.filter=T.filter;F.selectors=T.selectors;F.matches=T.matches})()}if(document.getElementsByClassName&&document.documentElement.getElementsByClassName){(function(){var T=document.createElement("div");T.innerHTML="<div class='test e'></div><div class='test'></div>";if(T.getElementsByClassName("e").length===0){return}T.lastChild.className="e";if(T.getElementsByClassName("e").length===1){return}I.order.splice(1,0,"CLASS");I.find.CLASS=function(U,V,W){if(typeof V.getElementsByClassName!=="undefined"&&!W){return V.getElementsByClassName(U[1])}}})()}function P(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1&&!ac){T.sizcache=Y;T.sizset=W}if(T.nodeName===Z){X=T;break}T=T[U]}ad[W]=X}}}function S(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1){if(!ac){T.sizcache=Y;T.sizset=W}if(typeof Z!=="string"){if(T===Z){X=true;break}}else{if(F.filter(Z,[T]).length>0){X=T;break}}}T=T[U]}ad[W]=X}}}var K=document.compareDocumentPosition?function(U,T){return U.compareDocumentPosition(T)&16}:function(U,T){return U!==T&&(U.contains?U.contains(T):true)};var Q=function(T){return T.nodeType===9&&T.documentElement.nodeName!=="HTML"||!!T.ownerDocument&&Q(T.ownerDocument)};var J=function(T,aa){var W=[],X="",Y,V=aa.nodeType?[aa]:aa;while((Y=I.match.PSEUDO.exec(T))){X+=Y[0];T=T.replace(I.match.PSEUDO,"")}T=I.relative[T]?T+"*":T;for(var Z=0,U=V.length;Z<U;Z++){F(T,V[Z],W)}return F.filter(X,W)};o.find=F;o.filter=F.filter;o.expr=F.selectors;o.expr[":"]=o.expr.filters;F.selectors.filters.hidden=function(T){return T.offsetWidth===0||T.offsetHeight===0};F.selectors.filters.visible=function(T){return T.offsetWidth>0||T.offsetHeight>0};F.selectors.filters.animated=function(T){return o.grep(o.timers,function(U){return T===U.elem}).length};o.multiFilter=function(V,T,U){if(U){V=":not("+V+")"}return F.matches(V,T)};o.dir=function(V,U){var T=[],W=V[U];while(W&&W!=document){if(W.nodeType==1){T.push(W)}W=W[U]}return T};o.nth=function(X,T,V,W){T=T||1;var U=0;for(;X;X=X[V]){if(X.nodeType==1&&++U==T){break}}return X};o.sibling=function(V,U){var T=[];for(;V;V=V.nextSibling){if(V.nodeType==1&&V!=U){T.push(V)}}return T};return;l.Sizzle=F})();o.event={add:function(I,F,H,K){if(I.nodeType==3||I.nodeType==8){return}if(I.setInterval&&I!=l){I=l}if(!H.guid){H.guid=this.guid++}if(K!==g){var G=H;H=this.proxy(G);H.data=K}var E=o.data(I,"events")||o.data(I,"events",{}),J=o.data(I,"handle")||o.data(I,"handle",function(){return typeof o!=="undefined"&&!o.event.triggered?o.event.handle.apply(arguments.callee.elem,arguments):g});J.elem=I;o.each(F.split(/\s+/),function(M,N){var O=N.split(".");N=O.shift();H.type=O.slice().sort().join(".");var L=E[N];if(o.event.specialAll[N]){o.event.specialAll[N].setup.call(I,K,O)}if(!L){L=E[N]={};if(!o.event.special[N]||o.event.special[N].setup.call(I,K,O)===false){if(I.addEventListener){I.addEventListener(N,J,false)}else{if(I.attachEvent){I.attachEvent("on"+N,J)}}}}L[H.guid]=H;o.event.global[N]=true});I=null},guid:1,global:{},remove:function(K,H,J){if(K.nodeType==3||K.nodeType==8){return}var G=o.data(K,"events"),F,E;if(G){if(H===g||(typeof H==="string"&&H.charAt(0)==".")){for(var I in G){this.remove(K,I+(H||""))}}else{if(H.type){J=H.handler;H=H.type}o.each(H.split(/\s+/),function(M,O){var Q=O.split(".");O=Q.shift();var N=RegExp("(^|\\.)"+Q.slice().sort().join(".*\\.")+"(\\.|$)");if(G[O]){if(J){delete G[O][J.guid]}else{for(var P in G[O]){if(N.test(G[O][P].type)){delete G[O][P]}}}if(o.event.specialAll[O]){o.event.specialAll[O].teardown.call(K,Q)}for(F in G[O]){break}if(!F){if(!o.event.special[O]||o.event.special[O].teardown.call(K,Q)===false){if(K.removeEventListener){K.removeEventListener(O,o.data(K,"handle"),false)}else{if(K.detachEvent){K.detachEvent("on"+O,o.data(K,"handle"))}}}F=null;delete G[O]}}})}for(F in G){break}if(!F){var L=o.data(K,"handle");if(L){L.elem=null}o.removeData(K,"events");o.removeData(K,"handle")}}},trigger:function(I,K,H,E){var G=I.type||I;if(!E){I=typeof I==="object"?I[h]?I:o.extend(o.Event(G),I):o.Event(G);if(G.indexOf("!")>=0){I.type=G=G.slice(0,-1);I.exclusive=true}if(!H){I.stopPropagation();if(this.global[G]){o.each(o.cache,function(){if(this.events&&this.events[G]){o.event.trigger(I,K,this.handle.elem)}})}}if(!H||H.nodeType==3||H.nodeType==8){return g}I.result=g;I.target=H;K=o.makeArray(K);K.unshift(I)}I.currentTarget=H;var J=o.data(H,"handle");if(J){J.apply(H,K)}if((!H[G]||(o.nodeName(H,"a")&&G=="click"))&&H["on"+G]&&H["on"+G].apply(H,K)===false){I.result=false}if(!E&&H[G]&&!I.isDefaultPrevented()&&!(o.nodeName(H,"a")&&G=="click")){this.triggered=true;try{H[G]()}catch(L){}}this.triggered=false;if(!I.isPropagationStopped()){var F=H.parentNode||H.ownerDocument;if(F){o.event.trigger(I,K,F,true)}}},handle:function(K){var J,E;K=arguments[0]=o.event.fix(K||l.event);K.currentTarget=this;var L=K.type.split(".");K.type=L.shift();J=!L.length&&!K.exclusive;var I=RegExp("(^|\\.)"+L.slice().sort().join(".*\\.")+"(\\.|$)");E=(o.data(this,"events")||{})[K.type];for(var G in E){var H=E[G];if(J||I.test(H.type)){K.handler=H;K.data=H.data;var F=H.apply(this,arguments);if(F!==g){K.result=F;if(F===false){K.preventDefault();K.stopPropagation()}}if(K.isImmediatePropagationStopped()){break}}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(H){if(H[h]){return H}var F=H;H=o.Event(F);for(var G=this.props.length,J;G;){J=this.props[--G];H[J]=F[J]}if(!H.target){H.target=H.srcElement||document}if(H.target.nodeType==3){H.target=H.target.parentNode}if(!H.relatedTarget&&H.fromElement){H.relatedTarget=H.fromElement==H.target?H.toElement:H.fromElement}if(H.pageX==null&&H.clientX!=null){var I=document.documentElement,E=document.body;H.pageX=H.clientX+(I&&I.scrollLeft||E&&E.scrollLeft||0)-(I.clientLeft||0);H.pageY=H.clientY+(I&&I.scrollTop||E&&E.scrollTop||0)-(I.clientTop||0)}if(!H.which&&((H.charCode||H.charCode===0)?H.charCode:H.keyCode)){H.which=H.charCode||H.keyCode}if(!H.metaKey&&H.ctrlKey){H.metaKey=H.ctrlKey}if(!H.which&&H.button){H.which=(H.button&1?1:(H.button&2?3:(H.button&4?2:0)))}return H},proxy:function(F,E){E=E||function(){return F.apply(this,arguments)};E.guid=F.guid=F.guid||E.guid||this.guid++;return E},special:{ready:{setup:B,teardown:function(){}}},specialAll:{live:{setup:function(E,F){o.event.add(this,F[0],c)},teardown:function(G){if(G.length){var E=0,F=RegExp("(^|\\.)"+G[0]+"(\\.|$)");o.each((o.data(this,"events").live||{}),function(){if(F.test(this.type)){E++}});if(E<1){o.event.remove(this,G[0],c)}}}}}};o.Event=function(E){if(!this.preventDefault){return new o.Event(E)}if(E&&E.type){this.originalEvent=E;this.type=E.type}else{this.type=E}this.timeStamp=e();this[h]=true};function k(){return false}function u(){return true}o.Event.prototype={preventDefault:function(){this.isDefaultPrevented=u;var E=this.originalEvent;if(!E){return}if(E.preventDefault){E.preventDefault()}E.returnValue=false},stopPropagation:function(){this.isPropagationStopped=u;var E=this.originalEvent;if(!E){return}if(E.stopPropagation){E.stopPropagation()}E.cancelBubble=true},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=u;this.stopPropagation()},isDefaultPrevented:k,isPropagationStopped:k,isImmediatePropagationStopped:k};var a=function(F){var E=F.relatedTarget;while(E&&E!=this){try{E=E.parentNode}catch(G){E=this}}if(E!=this){F.type=F.data;o.event.handle.apply(this,arguments)}};o.each({mouseover:"mouseenter",mouseout:"mouseleave"},function(F,E){o.event.special[E]={setup:function(){o.event.add(this,F,a,E)},teardown:function(){o.event.remove(this,F,a)}}});o.fn.extend({bind:function(F,G,E){return F=="unload"?this.one(F,G,E):this.each(function(){o.event.add(this,F,E||G,E&&G)})},one:function(G,H,F){var E=o.event.proxy(F||H,function(I){o(this).unbind(I,E);return(F||H).apply(this,arguments)});return this.each(function(){o.event.add(this,G,E,F&&H)})},unbind:function(F,E){return this.each(function(){o.event.remove(this,F,E)})},trigger:function(E,F){return this.each(function(){o.event.trigger(E,F,this)})},triggerHandler:function(E,G){if(this[0]){var F=o.Event(E);F.preventDefault();F.stopPropagation();o.event.trigger(F,G,this[0]);return F.result}},toggle:function(G){var E=arguments,F=1;while(F<E.length){o.event.proxy(G,E[F++])}return this.click(o.event.proxy(G,function(H){this.lastToggle=(this.lastToggle||0)%F;H.preventDefault();return E[this.lastToggle++].apply(this,arguments)||false}))},hover:function(E,F){return this.mouseenter(E).mouseleave(F)},ready:function(E){B();if(o.isReady){E.call(document,o)}else{o.readyList.push(E)}return this},live:function(G,F){var E=o.event.proxy(F);E.guid+=this.selector+G;o(document).bind(i(G,this.selector),this.selector,E);return this},die:function(F,E){o(document).unbind(i(F,this.selector),E?{guid:E.guid+this.selector+F}:null);return this}});function c(H){var E=RegExp("(^|\\.)"+H.type+"(\\.|$)"),G=true,F=[];o.each(o.data(this,"events").live||[],function(I,J){if(E.test(J.type)){var K=o(H.target).closest(J.data)[0];if(K){F.push({elem:K,fn:J})}}});F.sort(function(J,I){return o.data(J.elem,"closest")-o.data(I.elem,"closest")});o.each(F,function(){if(this.fn.call(this.elem,H,this.fn.data)===false){return(G=false)}});return G}function i(F,E){return["live",F,E.replace(/\./g,"`").replace(/ /g,"|")].join(".")}o.extend({isReady:false,readyList:[],ready:function(){if(!o.isReady){o.isReady=true;if(o.readyList){o.each(o.readyList,function(){this.call(document,o)});o.readyList=null}o(document).triggerHandler("ready")}}});var x=false;function B(){if(x){return}x=true;if(document.addEventListener){document.addEventListener("DOMContentLoaded",function(){document.removeEventListener("DOMContentLoaded",arguments.callee,false);o.ready()},false)}else{if(document.attachEvent){document.attachEvent("onreadystatechange",function(){if(document.readyState==="complete"){document.detachEvent("onreadystatechange",arguments.callee);o.ready()}});if(document.documentElement.doScroll&&l==l.top){(function(){if(o.isReady){return}try{document.documentElement.doScroll("left")}catch(E){setTimeout(arguments.callee,0);return}o.ready()})()}}}o.event.add(l,"load",o.ready)}o.each(("blur,focus,load,resize,scroll,unload,click,dblclick,mousedown,mouseup,mousemove,mouseover,mouseout,mouseenter,mouseleave,change,select,submit,keydown,keypress,keyup,error").split(","),function(F,E){o.fn[E]=function(G){return G?this.bind(E,G):this.trigger(E)}});o(l).bind("unload",function(){for(var E in o.cache){if(E!=1&&o.cache[E].handle){o.event.remove(o.cache[E].handle.elem)}}});(function(){o.support={};var F=document.documentElement,G=document.createElement("script"),K=document.createElement("div"),J="script"+(new Date).getTime();K.style.display="none";K.innerHTML=' <link/><table></table><a href="/a" style="color:red;float:left;opacity:.5;">a</a><select><option>text</option></select><object><param/></object>';var H=K.getElementsByTagName("*"),E=K.getElementsByTagName("a")[0];if(!H||!H.length||!E){return}o.support={leadingWhitespace:K.firstChild.nodeType==3,tbody:!K.getElementsByTagName("tbody").length,objectAll:!!K.getElementsByTagName("object")[0].getElementsByTagName("*").length,htmlSerialize:!!K.getElementsByTagName("link").length,style:/red/.test(E.getAttribute("style")),hrefNormalized:E.getAttribute("href")==="/a",opacity:E.style.opacity==="0.5",cssFloat:!!E.style.cssFloat,scriptEval:false,noCloneEvent:true,boxModel:null};G.type="text/javascript";try{G.appendChild(document.createTextNode("window."+J+"=1;"))}catch(I){}F.insertBefore(G,F.firstChild);if(l[J]){o.support.scriptEval=true;delete l[J]}F.removeChild(G);if(K.attachEvent&&K.fireEvent){K.attachEvent("onclick",function(){o.support.noCloneEvent=false;K.detachEvent("onclick",arguments.callee)});K.cloneNode(true).fireEvent("onclick")}o(function(){var L=document.createElement("div");L.style.width=L.style.paddingLeft="1px";document.body.appendChild(L);o.boxModel=o.support.boxModel=L.offsetWidth===2;document.body.removeChild(L).style.display="none"})})();var w=o.support.cssFloat?"cssFloat":"styleFloat";o.props={"for":"htmlFor","class":"className","float":w,cssFloat:w,styleFloat:w,readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",tabindex:"tabIndex"};o.fn.extend({_load:o.fn.load,load:function(G,J,K){if(typeof G!=="string"){return this._load(G)}var I=G.indexOf(" ");if(I>=0){var E=G.slice(I,G.length);G=G.slice(0,I)}var H="GET";if(J){if(o.isFunction(J)){K=J;J=null}else{if(typeof J==="object"){J=o.param(J);H="POST"}}}var F=this;o.ajax({url:G,type:H,dataType:"html",data:J,complete:function(M,L){if(L=="success"||L=="notmodified"){F.html(E?o("<div/>").append(M.responseText.replace(/<script(.|\s)*?\/script>/g,"")).find(E):M.responseText)}if(K){F.each(K,[M.responseText,L,M])}}});return this},serialize:function(){return o.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?o.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password|search/i.test(this.type))}).map(function(E,F){var G=o(this).val();return G==null?null:o.isArray(G)?o.map(G,function(I,H){return{name:F.name,value:I}}):{name:F.name,value:G}}).get()}});o.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(E,F){o.fn[F]=function(G){return this.bind(F,G)}});var r=e();o.extend({get:function(E,G,H,F){if(o.isFunction(G)){H=G;G=null}return o.ajax({type:"GET",url:E,data:G,success:H,dataType:F})},getScript:function(E,F){return o.get(E,null,F,"script")},getJSON:function(E,F,G){return o.get(E,F,G,"json")},post:function(E,G,H,F){if(o.isFunction(G)){H=G;G={}}return o.ajax({type:"POST",url:E,data:G,success:H,dataType:F})},ajaxSetup:function(E){o.extend(o.ajaxSettings,E)},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return l.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest()},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(M){M=o.extend(true,M,o.extend(true,{},o.ajaxSettings,M));var W,F=/=\?(&|$)/g,R,V,G=M.type.toUpperCase();if(M.data&&M.processData&&typeof M.data!=="string"){M.data=o.param(M.data)}if(M.dataType=="jsonp"){if(G=="GET"){if(!M.url.match(F)){M.url+=(M.url.match(/\?/)?"&":"?")+(M.jsonp||"callback")+"=?"}}else{if(!M.data||!M.data.match(F)){M.data=(M.data?M.data+"&":"")+(M.jsonp||"callback")+"=?"}}M.dataType="json"}if(M.dataType=="json"&&(M.data&&M.data.match(F)||M.url.match(F))){W="jsonp"+r++;if(M.data){M.data=(M.data+"").replace(F,"="+W+"$1")}M.url=M.url.replace(F,"="+W+"$1");M.dataType="script";l[W]=function(X){V=X;I();L();l[W]=g;try{delete l[W]}catch(Y){}if(H){H.removeChild(T)}}}if(M.dataType=="script"&&M.cache==null){M.cache=false}if(M.cache===false&&G=="GET"){var E=e();var U=M.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+E+"$2");M.url=U+((U==M.url)?(M.url.match(/\?/)?"&":"?")+"_="+E:"")}if(M.data&&G=="GET"){M.url+=(M.url.match(/\?/)?"&":"?")+M.data;M.data=null}if(M.global&&!o.active++){o.event.trigger("ajaxStart")}var Q=/^(\w+:)?\/\/([^\/?#]+)/.exec(M.url);if(M.dataType=="script"&&G=="GET"&&Q&&(Q[1]&&Q[1]!=location.protocol||Q[2]!=location.host)){var H=document.getElementsByTagName("head")[0];var T=document.createElement("script");T.src=M.url;if(M.scriptCharset){T.charset=M.scriptCharset}if(!W){var O=false;T.onload=T.onreadystatechange=function(){if(!O&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){O=true;I();L();T.onload=T.onreadystatechange=null;H.removeChild(T)}}}H.appendChild(T);return g}var K=false;var J=M.xhr();if(M.username){J.open(G,M.url,M.async,M.username,M.password)}else{J.open(G,M.url,M.async)}try{if(M.data){J.setRequestHeader("Content-Type",M.contentType)}if(M.ifModified){J.setRequestHeader("If-Modified-Since",o.lastModified[M.url]||"Thu, 01 Jan 1970 00:00:00 GMT")}J.setRequestHeader("X-Requested-With","XMLHttpRequest");J.setRequestHeader("Accept",M.dataType&&M.accepts[M.dataType]?M.accepts[M.dataType]+", */*":M.accepts._default)}catch(S){}if(M.beforeSend&&M.beforeSend(J,M)===false){if(M.global&&!--o.active){o.event.trigger("ajaxStop")}J.abort();return false}if(M.global){o.event.trigger("ajaxSend",[J,M])}var N=function(X){if(J.readyState==0){if(P){clearInterval(P);P=null;if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}}else{if(!K&&J&&(J.readyState==4||X=="timeout")){K=true;if(P){clearInterval(P);P=null}R=X=="timeout"?"timeout":!o.httpSuccess(J)?"error":M.ifModified&&o.httpNotModified(J,M.url)?"notmodified":"success";if(R=="success"){try{V=o.httpData(J,M.dataType,M)}catch(Z){R="parsererror"}}if(R=="success"){var Y;try{Y=J.getResponseHeader("Last-Modified")}catch(Z){}if(M.ifModified&&Y){o.lastModified[M.url]=Y}if(!W){I()}}else{o.handleError(M,J,R)}L();if(X){J.abort()}if(M.async){J=null}}}};if(M.async){var P=setInterval(N,13);if(M.timeout>0){setTimeout(function(){if(J&&!K){N("timeout")}},M.timeout)}}try{J.send(M.data)}catch(S){o.handleError(M,J,null,S)}if(!M.async){N()}function I(){if(M.success){M.success(V,R)}if(M.global){o.event.trigger("ajaxSuccess",[J,M])}}function L(){if(M.complete){M.complete(J,R)}if(M.global){o.event.trigger("ajaxComplete",[J,M])}if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}return J},handleError:function(F,H,E,G){if(F.error){F.error(H,E,G)}if(F.global){o.event.trigger("ajaxError",[H,F,G])}},active:0,httpSuccess:function(F){try{return !F.status&&location.protocol=="file:"||(F.status>=200&&F.status<300)||F.status==304||F.status==1223}catch(E){}return false},httpNotModified:function(G,E){try{var H=G.getResponseHeader("Last-Modified");return G.status==304||H==o.lastModified[E]}catch(F){}return false},httpData:function(J,H,G){var F=J.getResponseHeader("content-type"),E=H=="xml"||!H&&F&&F.indexOf("xml")>=0,I=E?J.responseXML:J.responseText;if(E&&I.documentElement.tagName=="parsererror"){throw"parsererror"}if(G&&G.dataFilter){I=G.dataFilter(I,H)}if(typeof I==="string"){if(H=="script"){o.globalEval(I)}if(H=="json"){I=l["eval"]("("+I+")")}}return I},param:function(E){var G=[];function H(I,J){G[G.length]=encodeURIComponent(I)+"="+encodeURIComponent(J)}if(o.isArray(E)||E.jquery){o.each(E,function(){H(this.name,this.value)})}else{for(var F in E){if(o.isArray(E[F])){o.each(E[F],function(){H(F,this)})}else{H(F,o.isFunction(E[F])?E[F]():E[F])}}}return G.join("&").replace(/%20/g,"+")}});var m={},n,d=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];function t(F,E){var G={};o.each(d.concat.apply([],d.slice(0,E)),function(){G[this]=F});return G}o.fn.extend({show:function(J,L){if(J){return this.animate(t("show",3),J,L)}else{for(var H=0,F=this.length;H<F;H++){var E=o.data(this[H],"olddisplay");this[H].style.display=E||"";if(o.css(this[H],"display")==="none"){var G=this[H].tagName,K;if(m[G]){K=m[G]}else{var I=o("<"+G+" />").appendTo("body");K=I.css("display");if(K==="none"){K="block"}I.remove();m[G]=K}o.data(this[H],"olddisplay",K)}}for(var H=0,F=this.length;H<F;H++){this[H].style.display=o.data(this[H],"olddisplay")||""}return this}},hide:function(H,I){if(H){return this.animate(t("hide",3),H,I)}else{for(var G=0,F=this.length;G<F;G++){var E=o.data(this[G],"olddisplay");if(!E&&E!=="none"){o.data(this[G],"olddisplay",o.css(this[G],"display"))}}for(var G=0,F=this.length;G<F;G++){this[G].style.display="none"}return this}},_toggle:o.fn.toggle,toggle:function(G,F){var E=typeof G==="boolean";return o.isFunction(G)&&o.isFunction(F)?this._toggle.apply(this,arguments):G==null||E?this.each(function(){var H=E?G:o(this).is(":hidden");o(this)[H?"show":"hide"]()}):this.animate(t("toggle",3),G,F)},fadeTo:function(E,G,F){return this.animate({opacity:G},E,F)},animate:function(I,F,H,G){var E=o.speed(F,H,G);return this[E.queue===false?"each":"queue"](function(){var K=o.extend({},E),M,L=this.nodeType==1&&o(this).is(":hidden"),J=this;for(M in I){if(I[M]=="hide"&&L||I[M]=="show"&&!L){return K.complete.call(this)}if((M=="height"||M=="width")&&this.style){K.display=o.css(this,"display");K.overflow=this.style.overflow}}if(K.overflow!=null){this.style.overflow="hidden"}K.curAnim=o.extend({},I);o.each(I,function(O,S){var R=new o.fx(J,K,O);if(/toggle|show|hide/.test(S)){R[S=="toggle"?L?"show":"hide":S](I)}else{var Q=S.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),T=R.cur(true)||0;if(Q){var N=parseFloat(Q[2]),P=Q[3]||"px";if(P!="px"){J.style[O]=(N||1)+P;T=((N||1)/R.cur(true))*T;J.style[O]=T+P}if(Q[1]){N=((Q[1]=="-="?-1:1)*N)+T}R.custom(T,N,P)}else{R.custom(T,S,"")}}});return true})},stop:function(F,E){var G=o.timers;if(F){this.queue([])}this.each(function(){for(var H=G.length-1;H>=0;H--){if(G[H].elem==this){if(E){G[H](true)}G.splice(H,1)}}});if(!E){this.dequeue()}return this}});o.each({slideDown:t("show",1),slideUp:t("hide",1),slideToggle:t("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(E,F){o.fn[E]=function(G,H){return this.animate(F,G,H)}});o.extend({speed:function(G,H,F){var E=typeof G==="object"?G:{complete:F||!F&&H||o.isFunction(G)&&G,duration:G,easing:F&&H||H&&!o.isFunction(H)&&H};E.duration=o.fx.off?0:typeof E.duration==="number"?E.duration:o.fx.speeds[E.duration]||o.fx.speeds._default;E.old=E.complete;E.complete=function(){if(E.queue!==false){o(this).dequeue()}if(o.isFunction(E.old)){E.old.call(this)}};return E},easing:{linear:function(G,H,E,F){return E+F*G},swing:function(G,H,E,F){return((-Math.cos(G*Math.PI)/2)+0.5)*F+E}},timers:[],fx:function(F,E,G){this.options=E;this.elem=F;this.prop=G;if(!E.orig){E.orig={}}}});o.fx.prototype={update:function(){if(this.options.step){this.options.step.call(this.elem,this.now,this)}(o.fx.step[this.prop]||o.fx.step._default)(this);if((this.prop=="height"||this.prop=="width")&&this.elem.style){this.elem.style.display="block"}},cur:function(F){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)){return this.elem[this.prop]}var E=parseFloat(o.css(this.elem,this.prop,F));return E&&E>-10000?E:parseFloat(o.curCSS(this.elem,this.prop))||0},custom:function(I,H,G){this.startTime=e();this.start=I;this.end=H;this.unit=G||this.unit||"px";this.now=this.start;this.pos=this.state=0;var E=this;function F(J){return E.step(J)}F.elem=this.elem;if(F()&&o.timers.push(F)&&!n){n=setInterval(function(){var K=o.timers;for(var J=0;J<K.length;J++){if(!K[J]()){K.splice(J--,1)}}if(!K.length){clearInterval(n);n=g}},13)}},show:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.show=true;this.custom(this.prop=="width"||this.prop=="height"?1:0,this.cur());o(this.elem).show()},hide:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.hide=true;this.custom(this.cur(),0)},step:function(H){var G=e();if(H||G>=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var E=true;for(var F in this.options.curAnim){if(this.options.curAnim[F]!==true){E=false}}if(E){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(o.css(this.elem,"display")=="none"){this.elem.style.display="block"}}if(this.options.hide){o(this.elem).hide()}if(this.options.hide||this.options.show){for(var I in this.options.curAnim){o.attr(this.elem.style,I,this.options.orig[I])}}this.options.complete.call(this.elem)}return false}else{var J=G-this.startTime;this.state=J/this.options.duration;this.pos=o.easing[this.options.easing||(o.easing.swing?"swing":"linear")](this.state,J,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update()}return true}};o.extend(o.fx,{speeds:{slow:600,fast:200,_default:400},step:{opacity:function(E){o.attr(E.elem.style,"opacity",E.now)},_default:function(E){if(E.elem.style&&E.elem.style[E.prop]!=null){E.elem.style[E.prop]=E.now+E.unit}else{E.elem[E.prop]=E.now}}}});if(document.documentElement.getBoundingClientRect){o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}var G=this[0].getBoundingClientRect(),J=this[0].ownerDocument,F=J.body,E=J.documentElement,L=E.clientTop||F.clientTop||0,K=E.clientLeft||F.clientLeft||0,I=G.top+(self.pageYOffset||o.boxModel&&E.scrollTop||F.scrollTop)-L,H=G.left+(self.pageXOffset||o.boxModel&&E.scrollLeft||F.scrollLeft)-K;return{top:I,left:H}}}else{o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}o.offset.initialized||o.offset.initialize();var J=this[0],G=J.offsetParent,F=J,O=J.ownerDocument,M,H=O.documentElement,K=O.body,L=O.defaultView,E=L.getComputedStyle(J,null),N=J.offsetTop,I=J.offsetLeft;while((J=J.parentNode)&&J!==K&&J!==H){M=L.getComputedStyle(J,null);N-=J.scrollTop,I-=J.scrollLeft;if(J===G){N+=J.offsetTop,I+=J.offsetLeft;if(o.offset.doesNotAddBorder&&!(o.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(J.tagName))){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}F=G,G=J.offsetParent}if(o.offset.subtractsBorderForOverflowNotVisible&&M.overflow!=="visible"){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}E=M}if(E.position==="relative"||E.position==="static"){N+=K.offsetTop,I+=K.offsetLeft}if(E.position==="fixed"){N+=Math.max(H.scrollTop,K.scrollTop),I+=Math.max(H.scrollLeft,K.scrollLeft)}return{top:N,left:I}}}o.offset={initialize:function(){if(this.initialized){return}var L=document.body,F=document.createElement("div"),H,G,N,I,M,E,J=L.style.marginTop,K='<div style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;"><div></div></div><table style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;" cellpadding="0" cellspacing="0"><tr><td></td></tr></table>';M={position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"};for(E in M){F.style[E]=M[E]}F.innerHTML=K;L.insertBefore(F,L.firstChild);H=F.firstChild,G=H.firstChild,I=H.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(G.offsetTop!==5);this.doesAddBorderForTableAndCells=(I.offsetTop===5);H.style.overflow="hidden",H.style.position="relative";this.subtractsBorderForOverflowNotVisible=(G.offsetTop===-5);L.style.marginTop="1px";this.doesNotIncludeMarginInBodyOffset=(L.offsetTop===0);L.style.marginTop=J;L.removeChild(F);this.initialized=true},bodyOffset:function(E){o.offset.initialized||o.offset.initialize();var G=E.offsetTop,F=E.offsetLeft;if(o.offset.doesNotIncludeMarginInBodyOffset){G+=parseInt(o.curCSS(E,"marginTop",true),10)||0,F+=parseInt(o.curCSS(E,"marginLeft",true),10)||0}return{top:G,left:F}}};o.fn.extend({position:function(){var I=0,H=0,F;if(this[0]){var G=this.offsetParent(),J=this.offset(),E=/^body|html$/i.test(G[0].tagName)?{top:0,left:0}:G.offset();J.top-=j(this,"marginTop");J.left-=j(this,"marginLeft");E.top+=j(G,"borderTopWidth");E.left+=j(G,"borderLeftWidth");F={top:J.top-E.top,left:J.left-E.left}}return F},offsetParent:function(){var E=this[0].offsetParent||document.body;while(E&&(!/^body|html$/i.test(E.tagName)&&o.css(E,"position")=="static")){E=E.offsetParent}return o(E)}});o.each(["Left","Top"],function(F,E){var G="scroll"+E;o.fn[G]=function(H){if(!this[0]){return null}return H!==g?this.each(function(){this==l||this==document?l.scrollTo(!F?H:o(l).scrollLeft(),F?H:o(l).scrollTop()):this[G]=H}):this[0]==l||this[0]==document?self[F?"pageYOffset":"pageXOffset"]||o.boxModel&&document.documentElement[G]||document.body[G]:this[0][G]}});o.each(["Height","Width"],function(I,G){var E=I?"Left":"Top",H=I?"Right":"Bottom",F=G.toLowerCase();o.fn["inner"+G]=function(){return this[0]?o.css(this[0],F,false,"padding"):null};o.fn["outer"+G]=function(K){return this[0]?o.css(this[0],F,false,K?"margin":"border"):null};var J=G.toLowerCase();o.fn[J]=function(K){return this[0]==l?document.compatMode=="CSS1Compat"&&document.documentElement["client"+G]||document.body["client"+G]:this[0]==document?Math.max(document.documentElement["client"+G],document.body["scroll"+G],document.documentElement["scroll"+G],document.body["offset"+G],document.documentElement["offset"+G]):K===g?(this.length?o.css(this[0],J):null):this.css(J,typeof K==="string"?K:K+"px")}})})();
\ No newline at end of file diff --git a/examples/lessons/6_Maths_variables/js/karma.js b/examples/lessons/6_Maths_variables/js/karma.js deleted file mode 100755 index 03f027b..0000000 --- a/examples/lessons/6_Maths_variables/js/karma.js +++ /dev/null @@ -1,1018 +0,0 @@ -/* Documentation Note: - * Public methods and properties are commented with /** some text *\/ - * and private methods and properties are commented with // - * - * Please leave it that way to keep this documentation sane - */ - - -/* -* Karma Framework -* http://karmaeducation.org -* -* Copyright (c) 2009 -* Bryan W Berry bryan@olenepal.org -* Felipe López Toledo zer.subzero@gmail.com -* -* Under MIT License: -* Permission is hereby granted, free of charge, to any person -* obtaining a copy of this software and associated documentation -* files (the "Software"), to deal in the Software without -* restriction, including without limitation the rights to use, -* copy, modify, merge, publish, distribute, sublicense, and/or sell -* copies of the Software, and to permit persons to whom the -* Software is furnished to do so, subject to the following -* conditions: -* -* The above copyright notice and this permission notice shall be -* included in all copies or substantial portions of the Software. -* -* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -* OTHER DEALINGS IN THE SOFTWARE. -*/ - -/** -* @fileOverview Contains karma library -* @author Bryan Berry <bryan@olenepal.org> -* @author Felipe Lopez Toledo <zer.subzero@gmail.com> -*/ - - -//common.js modules use exports object -if(!this.exports) { - exports = {}; -} - - - -/** Checks if the current document type is set to HTML 5, throws - * an error otherwise, then initializes the karma object and returns - * a reference to that object. - * @namespace Global namespace for Karma library - * @param {Object} [options={}] options for intializing Karma library - * @param {String} [options.locale=''] sets current locale Not Yet Implemented - * @param {Array} [options.image=[]] array of images to be converted into a collection - * @param {Array} [options.audio=[]] array of audio to be converted into a collection - * @param {Array} [options.video=[]] array of videos to be converted into a collection - * @param {Array} [options.svg=[]] array of SVG elements to be - * converted into a collection. Each SVG element must already exist in the html document - * @param {Array} [options.canvas=[]] array of canvas elements - * to be converted into a collection. Each canvas element must already exist in the - * html document and width and height of each element must be set as attributes - * @throws {Error} if the document type declaration is not set to HTML 5, e.g. - * <!DOCTYPE html> - * @throws {Error} If any of the initialization parameters are invalid values - * @returns {Object} Karma.karma -- reference to the initialized Karma library - * @example - * - * var k = Karma({ - * image: [ - * {name: "ninja", file: "ninja.png"}, - * {name: "cowboy", file: "cowboy.png"} - * ], - * audio: [ - * {name: "woosh", file: "woosh.ogg"}, - * {name: "yeehaw", file: "yeehaw.ogg"} - * ], - * video: [ - * {name: "attack", file: "attack.ogv"}, - * {name: "ride", file: "ride.ogv"} - * ] - * canvas: [ - * {name: "ninja", domId: "ninjaCanvas"}, - * {name: "cowboy", domId: "cowboyCanvas"} - * ], - * svg: [ - * {name: "ninja", domId: "ninjaSvg"}, - * {name: "cowboy", domId: "cowboySvg"} - * ], - * }); - * Next, call the ready function with a callback to your program code - * - * k.ready(function () { ... your application code . . . } - * - * after that you can access each asset like so - * k.image.ninja; - * k.svg.cowboy; - * k.audio.yeehaw.play(); - * k.canvas.ninja.drawImage(k.image.ninja, 0, 0); - * - */ -var Karma = exports.Karma = function (options) { - Karma._isHtml5(document.doctype.nodeName); - - if ( Karma.karma._initialized === true ) { - return Karma.karma; - } else { - return Karma.karma._init(options); - } -}; - - -//helper functions - -/**This emulates the Object.create method in ecmascript 5 spec - * This isn't a full implementation as it doesn't support - * This has the same functionality as Crockford's beget method - * and this primary building block for prototypal inheritance in - * this library - * @param {Object} target that the new object's prototype should point to - * @returns {Object} object whose prototype points to target - * @example - * - * var ninja = { weapon : "sword" }; - * var ninja1 = Karma.create(ninja); - * ninja1.sword === "sword" - */ -Karma.create = function (target){ - function F () {}; - F.prototype = target; - return new F(); -}; - -/** Returns a shallow copy of the passed in object - * @param {Object} target to be copied - * @returns {Object} a shallow copy of target - */ -Karma.clone = function (target){ - var copy = {}; - for ( var i in target ) { - if(target.hasOwnProperty(i)){ - copy[i] = target[i]; - } - } - return copy; -}; - -/** Extends properties of the target object with those of - * the source object - * @param {Object} target object to be extended - * @param {Object} source whose properties will extend target - * @returns {Object} target extended by source - */ -Karma.objectPlus = function (target, source){ - for ( var i in source){ - if (source.hasOwnProperty(i)){ - target[i] = source[i]; - } - } - return target; -}; - -/** Creates a new object that is a prototype of the first argument - * then extends it with the properties of the second argument - * @param {Object} parent1 will be prototype of returned object - * @param {Object} parent2 will extend properties of returned object - * @returns {Object} object that whose prototype is parent1 and has - * been extended with properties of parent2 - */ -Karma.copyObjectPlus = function (parent1, parent2){ - function F () {}; - F.prototype = parent1; - var G = new F(); - return Karma.objectPlus(G, parent2); -}; - -//Enables function chaining for a specified list of function names -//IMPORTANT: use of closures here with "this" and "that" is __very__ -//complicated here -Karma._makeChain = function (chainingFunctions) { - var that = this; - var _chainFunction = function ( name ){ - that[ name ] = function ( ){ - var type = typeof this.ctx[name]; - if ( type === "function") { - this.ctx[ name ].apply( this.ctx, arguments ); - }else if ( type === "string" ){ - this.ctx[ name ] = arguments[0]; - }else { - throw ("wtf?!: impossible to chain " + name + "!"); - } - return this; - }; - }; - - for (var i = 0; i < chainingFunctions.length; i++){ - _chainFunction( chainingFunctions[ i ] ); - } -}; - -//Throws big ugly error if doctype isn't html5 -Karma._isHtml5 = function (doctype){ - var regex = new RegExp('^html$', 'i'); - if(!regex.test(doctype)){ - var errorMsg = "ERROR: The doctype must be set to <!DOCTYPE html> " + - "in order to use Karma. Karma require you use html5"; - var errorElem = document.createElement('div'); - errorElem.setAttribute('id', 'errorDoctype'); - errorElem.innerText = errorMsg; - document.body.appendChild(errorElem); - throw new Error(errorMsg); - } -}; - - -/** Stores global settings for the Karma library - * @class This object stores the global settings for the Karma library - */ -Karma.karma = { - /** This is the global locale as passed to Karma(), - * such as "en", "es_SP" - * @type string - * @default undefined - */ - locale : undefined, - /** Collection of images with special helper - * methods added to each reference - * @type object - * @default empty object - */ - image : {}, - /** Collection of audio with special helper - * methods added to each reference - * @type object - * @default empty object - */ - audio : {}, - /** Collection of canvas with special helper - * methods added to each reference - * @type object - * @default empty object - */ - canvas : {}, - /** Collection of svgs with special helper - * methods added to each reference - * @type object - * @default empty object - */ - svg : {}, - /** Collection of videos with special helper - * methods added to each reference - * @type object - * @default empty object - */ - video : {}, - _localized : false, - _assetPath : "assets/", - _localePath : "", - _initialized : false, - _statusDiv: undefined, - _loaderDiv : undefined, - _counters : { total : 0, errors : 0, loaded : 0}, - - //init initializes all the assets passed to Karma, that's it - //it returns 'this' so it can be used for function chaining - _init: function(options) { - this._initialized = true; - - //set up message that show count of assets loaded - //and has an ordered list to append error messages to - var _statusDiv = this._statusDiv = document.createElement('div'); - this._loaderDiv = this._loaderDiv = document.createElement('div'); - var errorList = document.createElement('ol'); - - _statusDiv.setAttribute('id', 'karma-status'); - _statusDiv.setAttribute('style', 'position:absolute;'); - _statusDiv.innerHTML = 'Karma is loading ...'; - this._loaderDiv.setAttribute('id', 'karma-loader'); - this._loaderDiv.setAttribute('class', 'status'); - errorList.setAttribute('id', 'errorList'); - - _statusDiv.appendChild(this._loaderDiv); - this._statusDiv.appendChild(errorList); - document.body.appendChild(_statusDiv); - - - //chain the functions for kCanvas and kSvg - Karma._makeChain.call(Karma.kCanvas, - Karma.kCanvas._chainingFunctions); - //Karma._makeChain.apply(Karma.kSvg, Karma.kSvg._chainingFunctions); - - - - //regular expression that matches the name of aprivate property - // the karma object - var regexPrivate = new RegExp('^_.*'); - - for ( var option in options ) { - if (options.hasOwnProperty(option)){ - if (option === "image" || option === "audio" || option === - "svg" || option === "video" || option === "canvas"){ - - if(!(options[option] instanceof Array)){ - throw new Error("" + option + " must be an array"); - } else if (options[option].length === 0){ - continue; - } - } else if (regexPrivate.test(option)){ - //don't overwrite a private property of karma object - continue; - } - - switch (option){ - case "locale": - - if (this._isValidLocale(options[option])){ - this.locale = this._normalizeLocale(options[option]); - this._localized = true; - this._localePath = Karma._computeLocalePath(this.locale); - } else { - throw new Error("locale provided to karma._init() is invalid"); - } - - break; - case "image": - options[option]._type = 'image'; - Karma._makeImages(options[option]); - break; - case "audio": - options[option]._type = 'audio'; - Karma._makeAudio(options[option]); - break; - case "video": - options[option]._type = 'video'; - Karma._makeVideos(options[option]); - break; - case "svg": - options[option]._type = 'svg'; - Karma._makeSvgs(options[option]); - break; - case "canvas": - options[option]._type = 'canvas'; - Karma._makeCanvases(options[option]); - break; - } - } - } - - - - return this; - }, - - /** Waits until all assets loaded, i.e. ready, then calls callback - * @param {Function} [cb] callback function - * @returns this - * @throws {Error} if Karma.karma is not initialized with the - * Karma({ options }) function - * @example - * - * var k = Karma({ . . . your assets here . . . }); - * k.ready(function(){ .. your code here . . .}); - * - * your code will not be called until all assets have been loaded - * - */ - ready : function( cb ) { - var that = this; - if (Karma.karma._initialized !== true){ - throw new Error("Karma.karma not initialized"); - } - - if (this._counters.loaded !== this._counters.total){ - setTimeout(function(){ that.ready(cb);}, 5); - } else if (cb) { - //hide the "Karma is loading..." message - this._statusDiv.setAttribute('style', 'display:none;'); - - cb(); - } else if (!cb) { - //hide the "Karma is loading..." message - this._statusDiv.setAttribute('style', 'display:none;'); - - //if no options passed, show it works message - this._showStarterMessage(); - } - - - - - return this; - }, - - //Display Apache-like "It works" message if no options - _showStarterMessage : function (){ - var starterMsg = document.createElement('div'); - starterMsg.setAttribute('id', 'starterMsg'); - starterMsg.innerHTML = "<h1>It Works</h1>"; - document.body.appendChild(starterMsg); - }, - - //Updates visible counter of how many assets are loaded - _updateStatus : function (errorMsg) { - var loaded = this._counters.loaded; - var total = this._counters.total; - var errors = this._counters.errors; - this._loaderDiv.innerHTML = "Loaded " + loaded + " / " + total + - "" + (errors > 0 ? " Errors [ " + errors +" ]" : ''); - if (errorMsg) { - var liError = document.createElement('li'); - liError.innerHTML = errorMsg; - var errorList = document.getElementById('errorList'); - errorList.appendChild(liError); - } - }, - - //matches 2 letter country code then optionally - //a dash or underscore followed by a country or language identifier - //i currently only allow a language identifier 2-3 chars long - _isValidLocale : function (locale) { - var localeRegex = new RegExp('^[a-zA-Z][a-zA-Z]([-_][a-zA-z]{2,3})?$'); - return localeRegex.test(locale); - }, - - _normalizeLocale : function(locale) { - var lang = ""; - var country = ""; - var divider = ""; - - lang = locale.slice(0, 2).toLowerCase(); - divider = "_"; - country = locale.slice(3, 6).toUpperCase(); - - return locale.length > 2 ? "" + lang + divider + country : lang; - }, - - // Below are geometry and math helper methods - - /** - * Converts a value from degrees to radians. - * @param {Number} angle The angle in degrees - * @returns {Number} The angle in radians - */ - radians : function( angle ){ - return ( angle / 180 ) * Math.PI; - }, - /** - * Gets the square of the Euclidian (ordinary) distance between 2 points. - * @param {Object} Point No. 0 - * @param {Number} Point0.x - * @param {Number} Point0.y - * @param {Object} Point No. 1 - * @param {Number} Point1.x - * @param {Number} Point1.y - * @returns {Number} The square of the Euclidian distance - * @example - * - * p0 = {x:0, y:1}; - * p1 = {x:50, y:70}; - * var d = distance2(p0, p1); - * - */ - distance2 : function ( p0, p1 ) { - return (p1.x - p0.x) * (p1.x - p0.x) + (p1.y - p1.y) * (p1.y - p1.y); - }, - /** - * Gets the Euclidian (ordinary) distance between 2 points.<br> - * <b>Warning:</b> It's slower than distance2 function - * @param {Object} Point No. 0 - * @param {Number} Point0.x - * @param {Number} Point0.y - * @param {Object} Point No. 1 - * @param {Number} Point1.x - * @param {Number} Point1.y - * @returns {Number} The Euclidian distance - * @example - * - * p0 = {x:0, y:1}; - * p1 = {x:50, y:70}; - * var d = distance2(p0, p1); - * - */ - distance : function ( p0, p1 ) { - return Math.sqrt( this.distance2( p0, p1 ) ); - }, - /** Returns a random number within the range provided - * @param {Number} lower limit of the range, lowest number that can be returned - * @param {Number} upper limit of the range, highest number that can be returned - * @returns {Number} number that is >= lower and <= upper - * @example - * - * var num = rand(0, 10); - * - * num could be 0, 1, 2, 3 ... or 10 - * - */ - rand : function ( lower, upper ){ - return Math.round( Math.random() * (upper - lower) + lower ); - } - -}; - -/** Prototypal object for images, videos, and audio files but - * does not include svg or canvas elements - * @class This object is the prototype for images, videos, and audio files but - * does not include svg or canvas elements - * @ throws {Error} if the individual asset is set to be localized but - * the globale locale is not set on the Karma.karma object - * @ throws {Error} if the name and file properties are not supplied - * @example - * kMedia is the prototype object for images, audio, and videos. - * These 'media' assets are loaded in a distinctly different way - * from the canvas or svg assets. They also have distinctly different - * helper methods - * - * You initialize the kMedia assets by passing an array of objects - */ -Karma.kMedia = { - /** file location of asset - * @type String - * @default "" - */ - file : "", - /** media object - * @type Audio|Image|Video - * @default undefined - */ - media : undefined, - //actual path to the file - _path : "", - //if using localized version of this asset - _localized : false, - //audio, image, or video - _type : "", - //initializes kMedia instance with values provided by user - _init : function (asset) { - asset._localized = asset._localized || false; - Karma.karma._counters.total++; - - if (asset.name === undefined || asset.file === undefined){ - throw new Error("properties name and file have to be defined"); - } else { - this.name = asset.name; - this.file = asset.file; - } - - //_type is a private variable used internally - if (asset._type === undefined){ - throw new Error("the _type property must be set. " + - "Blame the karma library authors as this is an internal value"); - } else { - if (Karma._isValidType(asset._type)){ - this._type = asset._type; - switch ( this._type ) { - case "image": this.media = new Image(); - break; - case "audio": this.media = new Audio(); - break; - //case "video": - //NYI - //this.media = new Video(); - break; - default: throw new Error("Media type not supported"); - } - - } else { - throw new Error("the _type property supplied is invalid. " + - "Blame the karma library authors as this is an internal value"); - } - } - - if(Karma._isLocalized(asset._localized)){ - this._localized = asset._localized; - this._path = Karma.karma._localePath + - this._type + "/"; - } else { - this._path = Karma.karma._assetPath + - this._type + "/"; - } - - - //IMPORTANT: This one magic line loads the file - this.media.src = this.src = this._path + this.file; - - //add event handlers - this._addEventHandlers(); - - if (this._type === "audio"){ - this.media.autobuffer = true; - this.media.load(); - } - - - return this; - }, - //Adds event handlers to update the counters when - //the asset is successfully or unsuccessfully loaded - _addEventHandlers : function () { - var that = this; - var loadEvent = "load"; - //Browser Hack recommended by chromium devs - //http://code.google.com/p/chromium/issues/detail?id=20251&q=loading%20audio&colspec=ID%20Stars%20Pri%20Area%20Type%20Status%20Summary%20Modified%20Owner%20Mstone%20OS#c4 - if (this._type === "audio" || this._type === "video"){ - loadEvent = "canplaythrough"; - } - - that.media.addEventListener( - loadEvent, - function (e) { - Karma.karma._counters.loaded++; - Karma.karma._updateStatus(); - that.status = "loaded";}, false); - - that.media.addEventListener( - "error", - function (e) { - Karma.karma._counters.errors++; - that.status = "error"; - var errorMsg = "Error: " + that._type.toUpperCase() + - " " + that.name + " cannot be loaded."; - Karma.karma._updateStatus(errorMsg); - }, - false); - that.media.addEventListener( - "abort", - function (e) { - Karma.karma._counters.total++; - that.status = "aborted"; - var errorMsg = "ABORT: " + that._type.toUpperCase() + - " " + that.name + " loading was aborted."; - Karma.karma._updateStatus(errorMsg); - - }, false); - - } - -}; - -//determine if it is a valid type of asset -Karma._isValidType = function (type){ - return type === "image" || - type === "svg" || - type === "audio" || - type === "video" || - type === "canvas"; -}; - -Karma._isLocalized = function (boolLocalized) { - if (typeof boolLocalized === "boolean" ) { - if(boolLocalized === true && - Karma.karma.locale === undefined){ - throw new Error("You cannot localize a media asset" + - " if the global locale for Karma isn't set"); - } else { - return boolLocalized; - } - } else if (typeof boolLocalized === undefined){ - return false; - } else{ - throw new Error("This is not a valid value for the localized option"); - } -}; - -Karma._computeLocalePath = function(locale) { - return Karma.karma._assetPath + locale + "/"; -}; - -Karma._makeImages = function (imgConfigs){ - var makeImage = function (imgConfig){ - var image = undefined; - imgConfig._type = "image"; - image = Karma.create(Karma.kMedia)._init(imgConfig); - Karma.karma.image[imgConfig.name] = image; - }; - - imgConfigs.forEach(function(imgConfig){ makeImage(imgConfig);}); - -}; - -Karma._makeAudio = function (audioConfigs){ - var makeAudio = function (audioConfig){ - var audio = undefined; - audioConfig._type = "audio"; - audio = Karma.create(Karma.kMedia)._init(audioConfig); - audio.play = function () { - //hack to fix the audio "stuttering" problem - //more info: https://bugs.launchpad.net/karma/+bug/426108 - this.media.currentTime = 0.1; - this.media.play(); - }; - Karma.karma.audio[audioConfig.name] = audio; - }; - - audioConfigs.forEach(function(audioConfig){ makeAudio(audioConfig);}); - -}; - - -Karma._makeCanvases = function (canvasConfigs){ - var makeCanvas = function (canvasConfig){ - var canvas = undefined; - canvas = Karma.create(Karma.kCanvas)._init(canvasConfig); - Karma.karma.canvas[canvasConfig.name] = canvas; - }; - - canvasConfigs.forEach(function(canvasConfig){ makeCanvas(canvasConfig);}); - -}; - -/** Prototypal object for each canvas element submitted to Karma in the - * Karma() method - * @throws {Error} if the name and domId for the canvas element are not specified - * @thows {Error} if the supplied domId does not match an element in the DOM - * @class This object is the prototype for each canvas element submitted to Karma in the - * Karma() method - */ -Karma.kCanvas = { - /** Name of the canvas, used internally by karma.js - * @type String - * @default '' - */ - name : '', - /** Width of canvas element - * @type Number - * @default 0 - */ - width: 0, - /** Height of canvas element - * @type Number - * @default 0 - */ - height: 0, - /** Whether canvas is visible - * @type boolean - * @default true - */ - visible: true, - /** Element ID for canvas element in html document - * @type String - * @default undefined - */ - domId: undefined, - /** Reference to the DOM element - * @type DOMElement - * @default undefined - */ - node: undefined, - /** The 2 Dimensional Rendering context property for this canvas - * @type 2DRenderingContext - * @default undefined - */ - ctx: undefined, - /** Frames Per Second, I don't know what the purpose of this is, - * Felipe made it up - * @type Number - * @default 24 - */ - fps: 24, - - //initializes object with values provides by user - _init: function (config) { - for (var option in config){ - if (config.hasOwnProperty(option)){ - switch (option){ - case "name": - this.name = config[option]; - break; - case "domId": - this.domId = config[option]; - break; - case "width": - if(!this.height){ - throw new Error("If you specify a width you must also" + - "specify a height"); - } - this.width = config[option]; - break; - case "height": - if(!this.width){ - throw new Error("If you specify a height you must also" + - "specify a width"); - } - this.height = parseInt(config.option, 10); - break; - case "fps": - this.fps = parseInt(config.option, 10); - break; - } - } - } - - if(this.domId && document.getElementById(this.domId)){ - this.node = document.getElementById(this.domId); - this.ctx = this.node.getContext('2d'); - } else { - throw new Error('you must specify a valid domId that' + - 'is in your html page'); - } - - if(!config.height && !config.width){ - this.width = parseInt(this.node.getAttribute('width'), 10); - this.height = parseInt(this.node.getAttribute('height'), 10); - } - - return this; - }, - /** Clear area of canvas element specified by parameters, if no - * parameters supplied, clears entire canvas - * @param {Number} [x=0] x coordinate, defaults to zero if left blank - * @param {Number} [y=0] y coordinate, defaults to zero if left blank - * @param {Number} [width=0] width of area to be cleared, defaults - * entire width of canvas - * @param {Number} [height=0] height of area to be cleared, defaults - * entire height of canvas - * @returns this - * @example - * - * k.canvas.ninja.clear(); - * // clears the entire ninja canvas - * - * k.canvas.ninja.clear(0, 10, 20, 30); - * //clears a specific portion of the ninja canvas - * - */ - clear : function ( x, y, width, height ) { - var that = this; - that.ctx.clearRect( - x || 0, - y || 0, - width || that.width, - height || that.height - ); - return that; - }, - - //These are all properties or methods of the canvas element's - //2 dimensional context - _chainingFunctions : [ - "globalAlpha", "globalCompositeOperation", "lineWidth", "lineCap", - "lineJoin", "miterLimit", "font", "textAlign", "textBaseline", "save", - "restore", "scale", "rotate", "translate", "transform", "setTransform", - "clearRect", "fillRect", "strokeRect", "beginPath", "closePath", - "moveTo", "lineTo", "quadraticCurveTo", "bezierCurveTo", "arcTo", - "arc", "rect", "fill", "stroke", "clip", "fillText", "strokeText", - "measureText", "isPointInPath", "strokeStyle", "fillStyle", - "createLinearGradient", "createRadialGradient", "createPattern", - "shadowOffsetX", "shadowOffsetY", "shadowBlur", "shadowColor", - //"mozTextStyle", "mozDrawText", "mozMeasureText", "mozPathText", - "mozTextAlongPath", "drawImage", "getImageData", "putImageData", - "createImageData", "drawWindow" - ] -}; - - - -Karma._makeSvgs = function (svgConfigs){ - var makeSvg = function (svgConfig){ - var svg = undefined; - svg = Karma.create(Karma.kSvg)._init(svgConfig); - Karma.karma.svg[svgConfig.name] = svg; - }; - - svgConfigs.forEach(function(svgConfig){ makeSvg(svgConfig);}); - -}; - -/** Prototypal object for each svg element submitted to Karma in the - * Karma() method - * @throws {Error} if the name and domId for the svg element are not specified - * @thows {Error} if the supplied domId does not match an element in the DOM - * @class This object is the prototype for each svg element submitted to Karma in the - * Karma() method - */ -Karma.kSvg = { - /** name of instance, used internally - * @typeof string - * @default "" - */ - name : "", - /** width of element - * @type number - * @default 0 - */ - width: 0, - /** height of element - * @type number - * @default 0 - */ - height: 0, - /** Status of element, either "loaded" or "error" - * @type string - * @default "" - */ - status: "", - /** Whether canvas is visible - * @type boolean - * @default true - */ - visible: true, - /** Element ID for canvas element in html document - * @type String - * @default undefined - */ - domId: undefined, - /** Reference to the DOM element - * @type DOMElement - * @default undefined - */ - node: undefined, - /** Reference to the SVGDocument - * @type SVGDocument - * @default undefined - */ - doc: undefined, - /** Reference to the root element of the SVG Document - * @type DocumentElement - * @default undefined - */ - root: undefined, - _localized : undefined, - _chainingFunctions: [], - _init: function (config) { - Karma.karma._counters.total++; - - for (var option in config){ - if (config.hasOwnProperty(option)){ - switch (option){ - case "name": - this.name = config[option]; - break; - case "domId": - this.domId = config[option]; - break; - case "width": - if(!this.height){ - throw new Error("If you specify a width you must also" + - "specify a height"); - } - this.width = parseInt(config[option], 10); - break; - case "height": - if(!this.width){ - throw new Error("If you specify a height you must also" + - "specify a width"); - } - this.height = config[option]; - break; - case "fps": - this.fps = config[option]; - break; - } - } - } - - if(this.domId && document.getElementById(this.domId)){ - this.node = document.getElementById(this.domId); - } else { - throw new Error('you must specify a valid domId that' + - 'is in your html page'); - } - - if(!config.height && !config.width){ - this.width = parseInt(this.node.getAttribute('width'), 10); - this.height = parseInt(this.node.getAttribute('height'), 10); - } - - var that = this; - that._addEventHandlers(); - - return this; - - - }, - _addEventHandlers : function () { - var that = this; - that.doc = that.node.getSVGDocument(); - that.node.addEventListener( - "load", - function (e) { - that.doc = that.node.getSVGDocument(); - that.root = that.doc.documentElement; - Karma.karma._counters.loaded++; - Karma.karma._updateStatus(); - that.status = "loaded"; - }, false); - - that.node.addEventListener( - "error", - function (e) { - Karma.karma._counters.loaded--; - Karma.karma._counters.errors++; - that.status = "error"; - var errorMsg = "Error: " + that._type.toUpperCase() + - " " + that.name + " cannot be loaded."; - Karma.karma._updateStatus(errorMsg); - }, - false); - that.node.addEventListener( - "abort", - function (e) { - that.status = "aborted"; - var errorMsg = "ABORT: " + that._type.toUpperCase() + - " " + that.name + " loading was aborted."; - Karma.karma._updateStatus(errorMsg); - - }, false); - - } -}; - -Karma._makeVideos = function (video){ - -}; diff --git a/examples/lessons/6_Maths_variables/js/lesson.js b/examples/lessons/6_Maths_variables/js/lesson.js deleted file mode 100755 index dd84b83..0000000 --- a/examples/lessons/6_Maths_variables/js/lesson.js +++ /dev/null @@ -1,191 +0,0 @@ -$(document).ready(function(){ - var k = Karma({ - audio: [{'name':'correct','file':'correct.wav'}, - {'name':'incorrect','file':'incorrect.wav'} - ]}); - - k.ready(function(){ - var i,j; - var totalCounter; - var correctCounter; - var currentQuestion; - var TOTAL_QUES = 8; - var flag_correct; - var randPositions = []; - - var question1 = new Array('एउटा झोलामा x ओटा आपहरु छन ', - 'एउटा बिस्कुटको प्याकेटमा x ओटा बिस्कुटहरु छन', - 'एउटा प्याकेटमा z ओटा कलमहरु छन', - 'एउटा झोलामा y ओटा आपहरु छन', - 'एउटा डालोमा y ओटा आपहरु छन', - 'एउटा बिस्कुटको प्याकेटमा x ओटा बिस्कुटहरु छन', - 'एउटा बिस्कुटको प्याकेटमा x ओटा बिस्कुटहरु छन', - 'एउटा बट्टामा z ओटा कलमहरु छन' - ); - var question2 = new Array('x भनेको कति हो खनाएर हेर्दा थाहा हुन्छ', - 'x भनेको कति हो प्याकेट खोलेर हेर्दा थाहा हुन्छ', - 'z भनेको कति हो प्याकेट खोलेर हेर्दा थाहा हुन्छ', - 'y भनेको कति हो खनाएर हेर्दा थाहा हुन्छ', - 'y भनेको कति हो खनाएर हेर्दा थाहा हुन्छ', - 'x भनेको कति हो प्याकेट खोलेर हेर्दा थाहा हुन्छ', - 'x भनेको कति हो प्याकेट खोलेर हेर्दा थाहा हुन्छ', - 'z भनेको कति हो बट्टा खोलेर हेर्दा थाहा हुन्छ' - ); - var infoQues = new Array('आप खन्याउन झोलामा क्लिक गर्नुहोस', - 'प्याकेट खोल्न प्याकेटमा क्लिक गर्नुहोस', - 'प्याकेट खोल्न प्याकेटमा क्लिक गर्नुहोस', - 'आप खन्याउन झोलामा क्लिक गर्नुहोस', - 'आप खन्याउन डालोमा क्लिक गर्नुहोस', - 'प्याकेट खोल्न प्याकेटमा क्लिक गर्नुहोस', - 'प्याकेट खोल्न प्याकेटमा क्लिक गर्नुहोस', - 'बट्टा खोल्न बट्टामा क्लिक गर्नुहोस' - ); - var infoQuesClicked = new Array('एउटा झोलामा 12 ओटा आपहरु रहेछन', - 'एउटा प्याकेटमा 10 ओटा बिस्कुटहरु रहेछन', - 'एउटा प्याकेटमा 10 ओटा कलमहरु रहेछन', - 'एउटा झोलामा 9 ओटा आपहरु रहेछन', - 'एउटा डालोमा 10 ओटा आपहरु रहेछन', - 'एउटा प्याकेटमा 15 ओटा बिस्कुटहरु रहेछन', - 'एउटा प्याकेटमा 20 ओटा बिस्कुटहरु रहेछन', - 'एक बट्टामा 4 ओटा कलमहरु छन' - ); - - var answers = new Array('12','10','10','9','10','15','20','4'); - - var scoreboard = $('#score_box').scoreboard({'layout':'horizontal', - 'winningScore': TOTAL_QUES}); - - var genRandPosition=function (){ - randPositions[0] = k.rand(0,TOTAL_QUES-1); - for(i=1; i<TOTAL_QUES; i++){ - do{ - flag = 0; - randPositions[i] = k.rand(0,TOTAL_QUES-1); - for(j=0; j<i; j++){ - if(randPositions[i] === randPositions[j]){ - flag++; - } - } - }while(flag != 0 ); //end of do while loop - } - }; - - var next_question = function (){ - currentQuestion = randPositions[totalCounter]; - flag_correct = 1; - $('.bgAns').hide(); - $('#linkCheck').hide(); - $('.bgQues').html('<img id="img'+currentQuestion+'" src="assets/image/img'+currentQuestion+'.png" />'); - $('#question1').addClass('quesText').html(question1[currentQuestion]+' ।'); - $('#question2').addClass('quesText').html(question2[currentQuestion]+' ।'); - $('.bgInfo').addClass('quesText').html(infoQues[currentQuestion]+' ।'); - - $('#img'+currentQuestion).click(function(){ - $('#linkCheck').show(); - $('.bgQues').html('<img id="img'+currentQuestion+'" src="assets/image/img'+currentQuestion+'Clicked.png" />'); - $('.bgAns').show(); - $('.bgAns').html('').append('<div id="ans'+currentQuestion+'" class="quesText">तेसो भए यहा x = </div>'); - $('#ans'+currentQuestion).append('<input type="text" class="textBox" maxlength = "2" />'); - $('#ans'+currentQuestion).append(' हुन्छ ।'); - $('.bgInfo').addClass('quesText').html(infoQuesClicked[currentQuestion]+' ।'); - foucs_blur(); - }); - - }; - - function game_start(){ - $('#gameOver').hide(); - $('#linkCheck').show(); - $('#section').removeClass('backOpaque'); - genRandPosition(); - next_question(); - } - - function game() { - totalCounter = 0; - $('#section').html('').append('<div id="left-side"></div>'); - $('#left-side').append('<div id="topText">चलको मान पत्ता लगाउ </div>'); - $('#left-side').append('<div class="bgQues"></div>'); - $('#left-side').append('<div class="bgAns"></div>'); - $('#section').append('<div id="right-side"></div>'); - $('#right-side').append('<div id="question1" class="bgQuestion"></div>'); - $('#right-side').append('<div id="question2" class="bgQuestion"></div>'); - $('#right-side').append('<div class="bgInfo"></div>'); - $('#help').hide(); - $('.bgAns').hide(); - $('#linkCheck').hide(); - $('#gameOver').hide(); - } - - game(); - - var delay_nextQues = function(){ - document.delayForm.delayval.value = 1; - next_question(); - } - - var delay_gameOver = function(){ - document.delayForm.delayval.value = 1; - $('#section').addClass('backOpaque'); - $('#linkCheck').hide(); - $('#gameOver').show(); - - }; - var check_answer = function(){ - var textVal = $('.textBox').val(); - if(answers[currentQuestion] === textVal){ - if(flag_correct === 1){ - correctCounter++; - scoreboard.scoreboard('inc'); - } - k.audio.correct.play(); - totalCounter++; - scoreboard.scoreboard('incTotal'); - if(totalCounter != TOTAL_QUES){ - t=setTimeout(function(){delay_nextQues();},1000); - } - else{ - t=setTimeout(function(){delay_gameOver();},1000); - } - } - else{ - flag_correct = 0; - k.audio.incorrect.play(); - } - }; - - function foucs_blur(){ - $('input[type="text"]') - .focus(function() { - $(this).removeClass('incorrect').addClass("focus"); - }) - .blur(function() { - $(this).removeClass("focus"); - }) - .keypress(function(event) { - if(event.which === 13){ - check_answer(); - } - }); - - $('#linkCheck').click(function(){ - check_answer(); - }); - } - - $('#linkStart').click(function(){ - game_start(); - }); - - $('#linkPlayAgain').click(function(){ - scoreboard.scoreboard('reset'); - game_start(); - }); - $('#linkHelp').click(function(){ - $('#help').slideDown(2000); - }) - .mouseout(function(){ - $('#help').slideUp(2000); - }); - }); //end of k.ready -}); //end of document.ready
\ No newline at end of file diff --git a/examples/lessons/6_Maths_variables/js/ui.core.js b/examples/lessons/6_Maths_variables/js/ui.core.js deleted file mode 100755 index 5493e0a..0000000 --- a/examples/lessons/6_Maths_variables/js/ui.core.js +++ /dev/null @@ -1,519 +0,0 @@ -/* - * jQuery UI 1.7.2 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI - */ -;jQuery.ui || (function($) { - -var _remove = $.fn.remove, - isFF2 = $.browser.mozilla && (parseFloat($.browser.version) < 1.9); - -//Helper functions and ui object -$.ui = { - version: "1.7.2", - - // $.ui.plugin is deprecated. Use the proxy pattern instead. - plugin: { - add: function(module, option, set) { - var proto = $.ui[module].prototype; - for(var i in set) { - proto.plugins[i] = proto.plugins[i] || []; - proto.plugins[i].push([option, set[i]]); - } - }, - call: function(instance, name, args) { - var set = instance.plugins[name]; - if(!set || !instance.element[0].parentNode) { return; } - - for (var i = 0; i < set.length; i++) { - if (instance.options[set[i][0]]) { - set[i][1].apply(instance.element, args); - } - } - } - }, - - contains: function(a, b) { - return document.compareDocumentPosition - ? a.compareDocumentPosition(b) & 16 - : a !== b && a.contains(b); - }, - - hasScroll: function(el, a) { - - //If overflow is hidden, the element might have extra content, but the user wants to hide it - if ($(el).css('overflow') == 'hidden') { return false; } - - var scroll = (a && a == 'left') ? 'scrollLeft' : 'scrollTop', - has = false; - - if (el[scroll] > 0) { return true; } - - // TODO: determine which cases actually cause this to happen - // if the element doesn't have the scroll set, see if it's possible to - // set the scroll - el[scroll] = 1; - has = (el[scroll] > 0); - el[scroll] = 0; - return has; - }, - - isOverAxis: function(x, reference, size) { - //Determines when x coordinate is over "b" element axis - return (x > reference) && (x < (reference + size)); - }, - - isOver: function(y, x, top, left, height, width) { - //Determines when x, y coordinates is over "b" element - return $.ui.isOverAxis(y, top, height) && $.ui.isOverAxis(x, left, width); - }, - - keyCode: { - BACKSPACE: 8, - CAPS_LOCK: 20, - COMMA: 188, - CONTROL: 17, - DELETE: 46, - DOWN: 40, - END: 35, - ENTER: 13, - ESCAPE: 27, - HOME: 36, - INSERT: 45, - LEFT: 37, - NUMPAD_ADD: 107, - NUMPAD_DECIMAL: 110, - NUMPAD_DIVIDE: 111, - NUMPAD_ENTER: 108, - NUMPAD_MULTIPLY: 106, - NUMPAD_SUBTRACT: 109, - PAGE_DOWN: 34, - PAGE_UP: 33, - PERIOD: 190, - RIGHT: 39, - SHIFT: 16, - SPACE: 32, - TAB: 9, - UP: 38 - } -}; - -// WAI-ARIA normalization -if (isFF2) { - var attr = $.attr, - removeAttr = $.fn.removeAttr, - ariaNS = "http://www.w3.org/2005/07/aaa", - ariaState = /^aria-/, - ariaRole = /^wairole:/; - - $.attr = function(elem, name, value) { - var set = value !== undefined; - - return (name == 'role' - ? (set - ? attr.call(this, elem, name, "wairole:" + value) - : (attr.apply(this, arguments) || "").replace(ariaRole, "")) - : (ariaState.test(name) - ? (set - ? elem.setAttributeNS(ariaNS, - name.replace(ariaState, "aaa:"), value) - : attr.call(this, elem, name.replace(ariaState, "aaa:"))) - : attr.apply(this, arguments))); - }; - - $.fn.removeAttr = function(name) { - return (ariaState.test(name) - ? this.each(function() { - this.removeAttributeNS(ariaNS, name.replace(ariaState, "")); - }) : removeAttr.call(this, name)); - }; -} - -//jQuery plugins -$.fn.extend({ - remove: function() { - // Safari has a native remove event which actually removes DOM elements, - // so we have to use triggerHandler instead of trigger (#3037). - $("*", this).add(this).each(function() { - $(this).triggerHandler("remove"); - }); - return _remove.apply(this, arguments ); - }, - - enableSelection: function() { - return this - .attr('unselectable', 'off') - .css('MozUserSelect', '') - .unbind('selectstart.ui'); - }, - - disableSelection: function() { - return this - .attr('unselectable', 'on') - .css('MozUserSelect', 'none') - .bind('selectstart.ui', function() { return false; }); - }, - - scrollParent: function() { - var scrollParent; - if(($.browser.msie && (/(static|relative)/).test(this.css('position'))) || (/absolute/).test(this.css('position'))) { - scrollParent = this.parents().filter(function() { - return (/(relative|absolute|fixed)/).test($.curCSS(this,'position',1)) && (/(auto|scroll)/).test($.curCSS(this,'overflow',1)+$.curCSS(this,'overflow-y',1)+$.curCSS(this,'overflow-x',1)); - }).eq(0); - } else { - scrollParent = this.parents().filter(function() { - return (/(auto|scroll)/).test($.curCSS(this,'overflow',1)+$.curCSS(this,'overflow-y',1)+$.curCSS(this,'overflow-x',1)); - }).eq(0); - } - - return (/fixed/).test(this.css('position')) || !scrollParent.length ? $(document) : scrollParent; - } -}); - - -//Additional selectors -$.extend($.expr[':'], { - data: function(elem, i, match) { - return !!$.data(elem, match[3]); - }, - - focusable: function(element) { - var nodeName = element.nodeName.toLowerCase(), - tabIndex = $.attr(element, 'tabindex'); - return (/input|select|textarea|button|object/.test(nodeName) - ? !element.disabled - : 'a' == nodeName || 'area' == nodeName - ? element.href || !isNaN(tabIndex) - : !isNaN(tabIndex)) - // the element and all of its ancestors must be visible - // the browser may report that the area is hidden - && !$(element)['area' == nodeName ? 'parents' : 'closest'](':hidden').length; - }, - - tabbable: function(element) { - var tabIndex = $.attr(element, 'tabindex'); - return (isNaN(tabIndex) || tabIndex >= 0) && $(element).is(':focusable'); - } -}); - - -// $.widget is a factory to create jQuery plugins -// taking some boilerplate code out of the plugin code -function getter(namespace, plugin, method, args) { - function getMethods(type) { - var methods = $[namespace][plugin][type] || []; - return (typeof methods == 'string' ? methods.split(/,?\s+/) : methods); - } - - var methods = getMethods('getter'); - if (args.length == 1 && typeof args[0] == 'string') { - methods = methods.concat(getMethods('getterSetter')); - } - return ($.inArray(method, methods) != -1); -} - -$.widget = function(name, prototype) { - var namespace = name.split(".")[0]; - name = name.split(".")[1]; - - // create plugin method - $.fn[name] = function(options) { - var isMethodCall = (typeof options == 'string'), - args = Array.prototype.slice.call(arguments, 1); - - // prevent calls to internal methods - if (isMethodCall && options.substring(0, 1) == '_') { - return this; - } - - // handle getter methods - if (isMethodCall && getter(namespace, name, options, args)) { - var instance = $.data(this[0], name); - return (instance ? instance[options].apply(instance, args) - : undefined); - } - - // handle initialization and non-getter methods - return this.each(function() { - var instance = $.data(this, name); - - // constructor - (!instance && !isMethodCall && - $.data(this, name, new $[namespace][name](this, options))._init()); - - // method call - (instance && isMethodCall && $.isFunction(instance[options]) && - instance[options].apply(instance, args)); - }); - }; - - // create widget constructor - $[namespace] = $[namespace] || {}; - $[namespace][name] = function(element, options) { - var self = this; - - this.namespace = namespace; - this.widgetName = name; - this.widgetEventPrefix = $[namespace][name].eventPrefix || name; - this.widgetBaseClass = namespace + '-' + name; - - this.options = $.extend({}, - $.widget.defaults, - $[namespace][name].defaults, - $.metadata && $.metadata.get(element)[name], - options); - - this.element = $(element) - .bind('setData.' + name, function(event, key, value) { - if (event.target == element) { - return self._setData(key, value); - } - }) - .bind('getData.' + name, function(event, key) { - if (event.target == element) { - return self._getData(key); - } - }) - .bind('remove', function() { - return self.destroy(); - }); - }; - - // add widget prototype - $[namespace][name].prototype = $.extend({}, $.widget.prototype, prototype); - - // TODO: merge getter and getterSetter properties from widget prototype - // and plugin prototype - $[namespace][name].getterSetter = 'option'; -}; - -$.widget.prototype = { - _init: function() {}, - destroy: function() { - this.element.removeData(this.widgetName) - .removeClass(this.widgetBaseClass + '-disabled' + ' ' + this.namespace + '-state-disabled') - .removeAttr('aria-disabled'); - }, - - option: function(key, value) { - var options = key, - self = this; - - if (typeof key == "string") { - if (value === undefined) { - return this._getData(key); - } - options = {}; - options[key] = value; - } - - $.each(options, function(key, value) { - self._setData(key, value); - }); - }, - _getData: function(key) { - return this.options[key]; - }, - _setData: function(key, value) { - this.options[key] = value; - - if (key == 'disabled') { - this.element - [value ? 'addClass' : 'removeClass']( - this.widgetBaseClass + '-disabled' + ' ' + - this.namespace + '-state-disabled') - .attr("aria-disabled", value); - } - }, - - enable: function() { - this._setData('disabled', false); - }, - disable: function() { - this._setData('disabled', true); - }, - - _trigger: function(type, event, data) { - var callback = this.options[type], - eventName = (type == this.widgetEventPrefix - ? type : this.widgetEventPrefix + type); - - event = $.Event(event); - event.type = eventName; - - // copy original event properties over to the new event - // this would happen if we could call $.event.fix instead of $.Event - // but we don't have a way to force an event to be fixed multiple times - if (event.originalEvent) { - for (var i = $.event.props.length, prop; i;) { - prop = $.event.props[--i]; - event[prop] = event.originalEvent[prop]; - } - } - - this.element.trigger(event, data); - - return !($.isFunction(callback) && callback.call(this.element[0], event, data) === false - || event.isDefaultPrevented()); - } -}; - -$.widget.defaults = { - disabled: false -}; - - -/** Mouse Interaction Plugin **/ - -$.ui.mouse = { - _mouseInit: function() { - var self = this; - - this.element - .bind('mousedown.'+this.widgetName, function(event) { - return self._mouseDown(event); - }) - .bind('click.'+this.widgetName, function(event) { - if(self._preventClickEvent) { - self._preventClickEvent = false; - event.stopImmediatePropagation(); - return false; - } - }); - - // Prevent text selection in IE - if ($.browser.msie) { - this._mouseUnselectable = this.element.attr('unselectable'); - this.element.attr('unselectable', 'on'); - } - - this.started = false; - }, - - // TODO: make sure destroying one instance of mouse doesn't mess with - // other instances of mouse - _mouseDestroy: function() { - this.element.unbind('.'+this.widgetName); - - // Restore text selection in IE - ($.browser.msie - && this.element.attr('unselectable', this._mouseUnselectable)); - }, - - _mouseDown: function(event) { - // don't let more than one widget handle mouseStart - // TODO: figure out why we have to use originalEvent - event.originalEvent = event.originalEvent || {}; - if (event.originalEvent.mouseHandled) { return; } - - // we may have missed mouseup (out of window) - (this._mouseStarted && this._mouseUp(event)); - - this._mouseDownEvent = event; - - var self = this, - btnIsLeft = (event.which == 1), - elIsCancel = (typeof this.options.cancel == "string" ? $(event.target).parents().add(event.target).filter(this.options.cancel).length : false); - if (!btnIsLeft || elIsCancel || !this._mouseCapture(event)) { - return true; - } - - this.mouseDelayMet = !this.options.delay; - if (!this.mouseDelayMet) { - this._mouseDelayTimer = setTimeout(function() { - self.mouseDelayMet = true; - }, this.options.delay); - } - - if (this._mouseDistanceMet(event) && this._mouseDelayMet(event)) { - this._mouseStarted = (this._mouseStart(event) !== false); - if (!this._mouseStarted) { - event.preventDefault(); - return true; - } - } - - // these delegates are required to keep context - this._mouseMoveDelegate = function(event) { - return self._mouseMove(event); - }; - this._mouseUpDelegate = function(event) { - return self._mouseUp(event); - }; - $(document) - .bind('mousemove.'+this.widgetName, this._mouseMoveDelegate) - .bind('mouseup.'+this.widgetName, this._mouseUpDelegate); - - // preventDefault() is used to prevent the selection of text here - - // however, in Safari, this causes select boxes not to be selectable - // anymore, so this fix is needed - ($.browser.safari || event.preventDefault()); - - event.originalEvent.mouseHandled = true; - return true; - }, - - _mouseMove: function(event) { - // IE mouseup check - mouseup happened when mouse was out of window - if ($.browser.msie && !event.button) { - return this._mouseUp(event); - } - - if (this._mouseStarted) { - this._mouseDrag(event); - return event.preventDefault(); - } - - if (this._mouseDistanceMet(event) && this._mouseDelayMet(event)) { - this._mouseStarted = - (this._mouseStart(this._mouseDownEvent, event) !== false); - (this._mouseStarted ? this._mouseDrag(event) : this._mouseUp(event)); - } - - return !this._mouseStarted; - }, - - _mouseUp: function(event) { - $(document) - .unbind('mousemove.'+this.widgetName, this._mouseMoveDelegate) - .unbind('mouseup.'+this.widgetName, this._mouseUpDelegate); - - if (this._mouseStarted) { - this._mouseStarted = false; - this._preventClickEvent = (event.target == this._mouseDownEvent.target); - this._mouseStop(event); - } - - return false; - }, - - _mouseDistanceMet: function(event) { - return (Math.max( - Math.abs(this._mouseDownEvent.pageX - event.pageX), - Math.abs(this._mouseDownEvent.pageY - event.pageY) - ) >= this.options.distance - ); - }, - - _mouseDelayMet: function(event) { - return this.mouseDelayMet; - }, - - // These are placeholder methods, to be overriden by extending plugin - _mouseStart: function(event) {}, - _mouseDrag: function(event) {}, - _mouseStop: function(event) {}, - _mouseCapture: function(event) { return true; } -}; - -$.ui.mouse.defaults = { - cancel: null, - distance: 1, - delay: 0 -}; - -})(jQuery); diff --git a/examples/lessons/6_Maths_variables/js/ui.draggable.js b/examples/lessons/6_Maths_variables/js/ui.draggable.js deleted file mode 100755 index 0402f0e..0000000 --- a/examples/lessons/6_Maths_variables/js/ui.draggable.js +++ /dev/null @@ -1,766 +0,0 @@ -/* - * jQuery UI Draggable 1.7.2 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Draggables - * - * Depends: - * ui.core.js - */ -(function($) { - -$.widget("ui.draggable", $.extend({}, $.ui.mouse, { - - _init: function() { - - if (this.options.helper == 'original' && !(/^(?:r|a|f)/).test(this.element.css("position"))) - this.element[0].style.position = 'relative'; - - (this.options.addClasses && this.element.addClass("ui-draggable")); - (this.options.disabled && this.element.addClass("ui-draggable-disabled")); - - this._mouseInit(); - - }, - - destroy: function() { - if(!this.element.data('draggable')) return; - this.element - .removeData("draggable") - .unbind(".draggable") - .removeClass("ui-draggable" - + " ui-draggable-dragging" - + " ui-draggable-disabled"); - this._mouseDestroy(); - }, - - _mouseCapture: function(event) { - - var o = this.options; - - if (this.helper || o.disabled || $(event.target).is('.ui-resizable-handle')) - return false; - - //Quit if we're not on a valid handle - this.handle = this._getHandle(event); - if (!this.handle) - return false; - - return true; - - }, - - _mouseStart: function(event) { - - var o = this.options; - - //Create and append the visible helper - this.helper = this._createHelper(event); - - //Cache the helper size - this._cacheHelperProportions(); - - //If ddmanager is used for droppables, set the global draggable - if($.ui.ddmanager) - $.ui.ddmanager.current = this; - - /* - * - Position generation - - * This block generates everything position related - it's the core of draggables. - */ - - //Cache the margins of the original element - this._cacheMargins(); - - //Store the helper's css position - this.cssPosition = this.helper.css("position"); - this.scrollParent = this.helper.scrollParent(); - - //The element's absolute position on the page minus margins - this.offset = this.element.offset(); - this.offset = { - top: this.offset.top - this.margins.top, - left: this.offset.left - this.margins.left - }; - - $.extend(this.offset, { - click: { //Where the click happened, relative to the element - left: event.pageX - this.offset.left, - top: event.pageY - this.offset.top - }, - parent: this._getParentOffset(), - relative: this._getRelativeOffset() //This is a relative to absolute position minus the actual position calculation - only used for relative positioned helper - }); - - //Generate the original position - this.originalPosition = this._generatePosition(event); - this.originalPageX = event.pageX; - this.originalPageY = event.pageY; - - //Adjust the mouse offset relative to the helper if 'cursorAt' is supplied - if(o.cursorAt) - this._adjustOffsetFromHelper(o.cursorAt); - - //Set a containment if given in the options - if(o.containment) - this._setContainment(); - - //Call plugins and callbacks - this._trigger("start", event); - - //Recache the helper size - this._cacheHelperProportions(); - - //Prepare the droppable offsets - if ($.ui.ddmanager && !o.dropBehaviour) - $.ui.ddmanager.prepareOffsets(this, event); - - this.helper.addClass("ui-draggable-dragging"); - this._mouseDrag(event, true); //Execute the drag once - this causes the helper not to be visible before getting its correct position - return true; - }, - - _mouseDrag: function(event, noPropagation) { - - //Compute the helpers position - this.position = this._generatePosition(event); - this.positionAbs = this._convertPositionTo("absolute"); - - //Call plugins and callbacks and use the resulting position if something is returned - if (!noPropagation) { - var ui = this._uiHash(); - this._trigger('drag', event, ui); - this.position = ui.position; - } - - if(!this.options.axis || this.options.axis != "y") this.helper[0].style.left = this.position.left+'px'; - if(!this.options.axis || this.options.axis != "x") this.helper[0].style.top = this.position.top+'px'; - if($.ui.ddmanager) $.ui.ddmanager.drag(this, event); - - return false; - }, - - _mouseStop: function(event) { - - //If we are using droppables, inform the manager about the drop - var dropped = false; - if ($.ui.ddmanager && !this.options.dropBehaviour) - dropped = $.ui.ddmanager.drop(this, event); - - //if a drop comes from outside (a sortable) - if(this.dropped) { - dropped = this.dropped; - this.dropped = false; - } - - if((this.options.revert == "invalid" && !dropped) || (this.options.revert == "valid" && dropped) || this.options.revert === true || ($.isFunction(this.options.revert) && this.options.revert.call(this.element, dropped))) { - var self = this; - $(this.helper).animate(this.originalPosition, parseInt(this.options.revertDuration, 10), function() { - self._trigger("stop", event); - self._clear(); - }); - } else { - this._trigger("stop", event); - this._clear(); - } - - return false; - }, - - _getHandle: function(event) { - - var handle = !this.options.handle || !$(this.options.handle, this.element).length ? true : false; - $(this.options.handle, this.element) - .find("*") - .andSelf() - .each(function() { - if(this == event.target) handle = true; - }); - - return handle; - - }, - - _createHelper: function(event) { - - var o = this.options; - var helper = $.isFunction(o.helper) ? $(o.helper.apply(this.element[0], [event])) : (o.helper == 'clone' ? this.element.clone() : this.element); - - if(!helper.parents('body').length) - helper.appendTo((o.appendTo == 'parent' ? this.element[0].parentNode : o.appendTo)); - - if(helper[0] != this.element[0] && !(/(fixed|absolute)/).test(helper.css("position"))) - helper.css("position", "absolute"); - - return helper; - - }, - - _adjustOffsetFromHelper: function(obj) { - if(obj.left != undefined) this.offset.click.left = obj.left + this.margins.left; - if(obj.right != undefined) this.offset.click.left = this.helperProportions.width - obj.right + this.margins.left; - if(obj.top != undefined) this.offset.click.top = obj.top + this.margins.top; - if(obj.bottom != undefined) this.offset.click.top = this.helperProportions.height - obj.bottom + this.margins.top; - }, - - _getParentOffset: function() { - - //Get the offsetParent and cache its position - this.offsetParent = this.helper.offsetParent(); - var po = this.offsetParent.offset(); - - // This is a special case where we need to modify a offset calculated on start, since the following happened: - // 1. The position of the helper is absolute, so it's position is calculated based on the next positioned parent - // 2. The actual offset parent is a child of the scroll parent, and the scroll parent isn't the document, which means that - // the scroll is included in the initial calculation of the offset of the parent, and never recalculated upon drag - if(this.cssPosition == 'absolute' && this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) { - po.left += this.scrollParent.scrollLeft(); - po.top += this.scrollParent.scrollTop(); - } - - if((this.offsetParent[0] == document.body) //This needs to be actually done for all browsers, since pageX/pageY includes this information - || (this.offsetParent[0].tagName && this.offsetParent[0].tagName.toLowerCase() == 'html' && $.browser.msie)) //Ugly IE fix - po = { top: 0, left: 0 }; - - return { - top: po.top + (parseInt(this.offsetParent.css("borderTopWidth"),10) || 0), - left: po.left + (parseInt(this.offsetParent.css("borderLeftWidth"),10) || 0) - }; - - }, - - _getRelativeOffset: function() { - - if(this.cssPosition == "relative") { - var p = this.element.position(); - return { - top: p.top - (parseInt(this.helper.css("top"),10) || 0) + this.scrollParent.scrollTop(), - left: p.left - (parseInt(this.helper.css("left"),10) || 0) + this.scrollParent.scrollLeft() - }; - } else { - return { top: 0, left: 0 }; - } - - }, - - _cacheMargins: function() { - this.margins = { - left: (parseInt(this.element.css("marginLeft"),10) || 0), - top: (parseInt(this.element.css("marginTop"),10) || 0) - }; - }, - - _cacheHelperProportions: function() { - this.helperProportions = { - width: this.helper.outerWidth(), - height: this.helper.outerHeight() - }; - }, - - _setContainment: function() { - - var o = this.options; - if(o.containment == 'parent') o.containment = this.helper[0].parentNode; - if(o.containment == 'document' || o.containment == 'window') this.containment = [ - 0 - this.offset.relative.left - this.offset.parent.left, - 0 - this.offset.relative.top - this.offset.parent.top, - $(o.containment == 'document' ? document : window).width() - this.helperProportions.width - this.margins.left, - ($(o.containment == 'document' ? document : window).height() || document.body.parentNode.scrollHeight) - this.helperProportions.height - this.margins.top - ]; - - if(!(/^(document|window|parent)$/).test(o.containment) && o.containment.constructor != Array) { - var ce = $(o.containment)[0]; if(!ce) return; - var co = $(o.containment).offset(); - var over = ($(ce).css("overflow") != 'hidden'); - - this.containment = [ - co.left + (parseInt($(ce).css("borderLeftWidth"),10) || 0) + (parseInt($(ce).css("paddingLeft"),10) || 0) - this.margins.left, - co.top + (parseInt($(ce).css("borderTopWidth"),10) || 0) + (parseInt($(ce).css("paddingTop"),10) || 0) - this.margins.top, - co.left+(over ? Math.max(ce.scrollWidth,ce.offsetWidth) : ce.offsetWidth) - (parseInt($(ce).css("borderLeftWidth"),10) || 0) - (parseInt($(ce).css("paddingRight"),10) || 0) - this.helperProportions.width - this.margins.left, - co.top+(over ? Math.max(ce.scrollHeight,ce.offsetHeight) : ce.offsetHeight) - (parseInt($(ce).css("borderTopWidth"),10) || 0) - (parseInt($(ce).css("paddingBottom"),10) || 0) - this.helperProportions.height - this.margins.top - ]; - } else if(o.containment.constructor == Array) { - this.containment = o.containment; - } - - }, - - _convertPositionTo: function(d, pos) { - - if(!pos) pos = this.position; - var mod = d == "absolute" ? 1 : -1; - var o = this.options, scroll = this.cssPosition == 'absolute' && !(this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent, scrollIsRootNode = (/(html|body)/i).test(scroll[0].tagName); - - return { - top: ( - pos.top // The absolute mouse position - + this.offset.relative.top * mod // Only for relative positioned nodes: Relative offset from element to offset parent - + this.offset.parent.top * mod // The offsetParent's offset without borders (offset + border) - - ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollTop() : ( scrollIsRootNode ? 0 : scroll.scrollTop() ) ) * mod) - ), - left: ( - pos.left // The absolute mouse position - + this.offset.relative.left * mod // Only for relative positioned nodes: Relative offset from element to offset parent - + this.offset.parent.left * mod // The offsetParent's offset without borders (offset + border) - - ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollLeft() : scrollIsRootNode ? 0 : scroll.scrollLeft() ) * mod) - ) - }; - - }, - - _generatePosition: function(event) { - - var o = this.options, scroll = this.cssPosition == 'absolute' && !(this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent, scrollIsRootNode = (/(html|body)/i).test(scroll[0].tagName); - - // This is another very weird special case that only happens for relative elements: - // 1. If the css position is relative - // 2. and the scroll parent is the document or similar to the offset parent - // we have to refresh the relative offset during the scroll so there are no jumps - if(this.cssPosition == 'relative' && !(this.scrollParent[0] != document && this.scrollParent[0] != this.offsetParent[0])) { - this.offset.relative = this._getRelativeOffset(); - } - - var pageX = event.pageX; - var pageY = event.pageY; - - /* - * - Position constraining - - * Constrain the position to a mix of grid, containment. - */ - - if(this.originalPosition) { //If we are not dragging yet, we won't check for options - - if(this.containment) { - if(event.pageX - this.offset.click.left < this.containment[0]) pageX = this.containment[0] + this.offset.click.left; - if(event.pageY - this.offset.click.top < this.containment[1]) pageY = this.containment[1] + this.offset.click.top; - if(event.pageX - this.offset.click.left > this.containment[2]) pageX = this.containment[2] + this.offset.click.left; - if(event.pageY - this.offset.click.top > this.containment[3]) pageY = this.containment[3] + this.offset.click.top; - } - - if(o.grid) { - var top = this.originalPageY + Math.round((pageY - this.originalPageY) / o.grid[1]) * o.grid[1]; - pageY = this.containment ? (!(top - this.offset.click.top < this.containment[1] || top - this.offset.click.top > this.containment[3]) ? top : (!(top - this.offset.click.top < this.containment[1]) ? top - o.grid[1] : top + o.grid[1])) : top; - - var left = this.originalPageX + Math.round((pageX - this.originalPageX) / o.grid[0]) * o.grid[0]; - pageX = this.containment ? (!(left - this.offset.click.left < this.containment[0] || left - this.offset.click.left > this.containment[2]) ? left : (!(left - this.offset.click.left < this.containment[0]) ? left - o.grid[0] : left + o.grid[0])) : left; - } - - } - - return { - top: ( - pageY // The absolute mouse position - - this.offset.click.top // Click offset (relative to the element) - - this.offset.relative.top // Only for relative positioned nodes: Relative offset from element to offset parent - - this.offset.parent.top // The offsetParent's offset without borders (offset + border) - + ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollTop() : ( scrollIsRootNode ? 0 : scroll.scrollTop() ) )) - ), - left: ( - pageX // The absolute mouse position - - this.offset.click.left // Click offset (relative to the element) - - this.offset.relative.left // Only for relative positioned nodes: Relative offset from element to offset parent - - this.offset.parent.left // The offsetParent's offset without borders (offset + border) - + ($.browser.safari && this.cssPosition == 'fixed' ? 0 : ( this.cssPosition == 'fixed' ? -this.scrollParent.scrollLeft() : scrollIsRootNode ? 0 : scroll.scrollLeft() )) - ) - }; - - }, - - _clear: function() { - this.helper.removeClass("ui-draggable-dragging"); - if(this.helper[0] != this.element[0] && !this.cancelHelperRemoval) this.helper.remove(); - //if($.ui.ddmanager) $.ui.ddmanager.current = null; - this.helper = null; - this.cancelHelperRemoval = false; - }, - - // From now on bulk stuff - mainly helpers - - _trigger: function(type, event, ui) { - ui = ui || this._uiHash(); - $.ui.plugin.call(this, type, [event, ui]); - if(type == "drag") this.positionAbs = this._convertPositionTo("absolute"); //The absolute position has to be recalculated after plugins - return $.widget.prototype._trigger.call(this, type, event, ui); - }, - - plugins: {}, - - _uiHash: function(event) { - return { - helper: this.helper, - position: this.position, - absolutePosition: this.positionAbs, //deprecated - offset: this.positionAbs - }; - } - -})); - -$.extend($.ui.draggable, { - version: "1.7.2", - eventPrefix: "drag", - defaults: { - addClasses: true, - appendTo: "parent", - axis: false, - cancel: ":input,option", - connectToSortable: false, - containment: false, - cursor: "auto", - cursorAt: false, - delay: 0, - distance: 1, - grid: false, - handle: false, - helper: "original", - iframeFix: false, - opacity: false, - refreshPositions: false, - revert: false, - revertDuration: 500, - scope: "default", - scroll: true, - scrollSensitivity: 20, - scrollSpeed: 20, - snap: false, - snapMode: "both", - snapTolerance: 20, - stack: false, - zIndex: false - } -}); - -$.ui.plugin.add("draggable", "connectToSortable", { - start: function(event, ui) { - - var inst = $(this).data("draggable"), o = inst.options, - uiSortable = $.extend({}, ui, { item: inst.element }); - inst.sortables = []; - $(o.connectToSortable).each(function() { - var sortable = $.data(this, 'sortable'); - if (sortable && !sortable.options.disabled) { - inst.sortables.push({ - instance: sortable, - shouldRevert: sortable.options.revert - }); - sortable._refreshItems(); //Do a one-time refresh at start to refresh the containerCache - sortable._trigger("activate", event, uiSortable); - } - }); - - }, - stop: function(event, ui) { - - //If we are still over the sortable, we fake the stop event of the sortable, but also remove helper - var inst = $(this).data("draggable"), - uiSortable = $.extend({}, ui, { item: inst.element }); - - $.each(inst.sortables, function() { - if(this.instance.isOver) { - - this.instance.isOver = 0; - - inst.cancelHelperRemoval = true; //Don't remove the helper in the draggable instance - this.instance.cancelHelperRemoval = false; //Remove it in the sortable instance (so sortable plugins like revert still work) - - //The sortable revert is supported, and we have to set a temporary dropped variable on the draggable to support revert: 'valid/invalid' - if(this.shouldRevert) this.instance.options.revert = true; - - //Trigger the stop of the sortable - this.instance._mouseStop(event); - - this.instance.options.helper = this.instance.options._helper; - - //If the helper has been the original item, restore properties in the sortable - if(inst.options.helper == 'original') - this.instance.currentItem.css({ top: 'auto', left: 'auto' }); - - } else { - this.instance.cancelHelperRemoval = false; //Remove the helper in the sortable instance - this.instance._trigger("deactivate", event, uiSortable); - } - - }); - - }, - drag: function(event, ui) { - - var inst = $(this).data("draggable"), self = this; - - var checkPos = function(o) { - var dyClick = this.offset.click.top, dxClick = this.offset.click.left; - var helperTop = this.positionAbs.top, helperLeft = this.positionAbs.left; - var itemHeight = o.height, itemWidth = o.width; - var itemTop = o.top, itemLeft = o.left; - - return $.ui.isOver(helperTop + dyClick, helperLeft + dxClick, itemTop, itemLeft, itemHeight, itemWidth); - }; - - $.each(inst.sortables, function(i) { - - //Copy over some variables to allow calling the sortable's native _intersectsWith - this.instance.positionAbs = inst.positionAbs; - this.instance.helperProportions = inst.helperProportions; - this.instance.offset.click = inst.offset.click; - - if(this.instance._intersectsWith(this.instance.containerCache)) { - - //If it intersects, we use a little isOver variable and set it once, so our move-in stuff gets fired only once - if(!this.instance.isOver) { - - this.instance.isOver = 1; - //Now we fake the start of dragging for the sortable instance, - //by cloning the list group item, appending it to the sortable and using it as inst.currentItem - //We can then fire the start event of the sortable with our passed browser event, and our own helper (so it doesn't create a new one) - this.instance.currentItem = $(self).clone().appendTo(this.instance.element).data("sortable-item", true); - this.instance.options._helper = this.instance.options.helper; //Store helper option to later restore it - this.instance.options.helper = function() { return ui.helper[0]; }; - - event.target = this.instance.currentItem[0]; - this.instance._mouseCapture(event, true); - this.instance._mouseStart(event, true, true); - - //Because the browser event is way off the new appended portlet, we modify a couple of variables to reflect the changes - this.instance.offset.click.top = inst.offset.click.top; - this.instance.offset.click.left = inst.offset.click.left; - this.instance.offset.parent.left -= inst.offset.parent.left - this.instance.offset.parent.left; - this.instance.offset.parent.top -= inst.offset.parent.top - this.instance.offset.parent.top; - - inst._trigger("toSortable", event); - inst.dropped = this.instance.element; //draggable revert needs that - //hack so receive/update callbacks work (mostly) - inst.currentItem = inst.element; - this.instance.fromOutside = inst; - - } - - //Provided we did all the previous steps, we can fire the drag event of the sortable on every draggable drag, when it intersects with the sortable - if(this.instance.currentItem) this.instance._mouseDrag(event); - - } else { - - //If it doesn't intersect with the sortable, and it intersected before, - //we fake the drag stop of the sortable, but make sure it doesn't remove the helper by using cancelHelperRemoval - if(this.instance.isOver) { - - this.instance.isOver = 0; - this.instance.cancelHelperRemoval = true; - - //Prevent reverting on this forced stop - this.instance.options.revert = false; - - // The out event needs to be triggered independently - this.instance._trigger('out', event, this.instance._uiHash(this.instance)); - - this.instance._mouseStop(event, true); - this.instance.options.helper = this.instance.options._helper; - - //Now we remove our currentItem, the list group clone again, and the placeholder, and animate the helper back to it's original size - this.instance.currentItem.remove(); - if(this.instance.placeholder) this.instance.placeholder.remove(); - - inst._trigger("fromSortable", event); - inst.dropped = false; //draggable revert needs that - } - - }; - - }); - - } -}); - -$.ui.plugin.add("draggable", "cursor", { - start: function(event, ui) { - var t = $('body'), o = $(this).data('draggable').options; - if (t.css("cursor")) o._cursor = t.css("cursor"); - t.css("cursor", o.cursor); - }, - stop: function(event, ui) { - var o = $(this).data('draggable').options; - if (o._cursor) $('body').css("cursor", o._cursor); - } -}); - -$.ui.plugin.add("draggable", "iframeFix", { - start: function(event, ui) { - var o = $(this).data('draggable').options; - $(o.iframeFix === true ? "iframe" : o.iframeFix).each(function() { - $('<div class="ui-draggable-iframeFix" style="background: #fff;"></div>') - .css({ - width: this.offsetWidth+"px", height: this.offsetHeight+"px", - position: "absolute", opacity: "0.001", zIndex: 1000 - }) - .css($(this).offset()) - .appendTo("body"); - }); - }, - stop: function(event, ui) { - $("div.ui-draggable-iframeFix").each(function() { this.parentNode.removeChild(this); }); //Remove frame helpers - } -}); - -$.ui.plugin.add("draggable", "opacity", { - start: function(event, ui) { - var t = $(ui.helper), o = $(this).data('draggable').options; - if(t.css("opacity")) o._opacity = t.css("opacity"); - t.css('opacity', o.opacity); - }, - stop: function(event, ui) { - var o = $(this).data('draggable').options; - if(o._opacity) $(ui.helper).css('opacity', o._opacity); - } -}); - -$.ui.plugin.add("draggable", "scroll", { - start: function(event, ui) { - var i = $(this).data("draggable"); - if(i.scrollParent[0] != document && i.scrollParent[0].tagName != 'HTML') i.overflowOffset = i.scrollParent.offset(); - }, - drag: function(event, ui) { - - var i = $(this).data("draggable"), o = i.options, scrolled = false; - - if(i.scrollParent[0] != document && i.scrollParent[0].tagName != 'HTML') { - - if(!o.axis || o.axis != 'x') { - if((i.overflowOffset.top + i.scrollParent[0].offsetHeight) - event.pageY < o.scrollSensitivity) - i.scrollParent[0].scrollTop = scrolled = i.scrollParent[0].scrollTop + o.scrollSpeed; - else if(event.pageY - i.overflowOffset.top < o.scrollSensitivity) - i.scrollParent[0].scrollTop = scrolled = i.scrollParent[0].scrollTop - o.scrollSpeed; - } - - if(!o.axis || o.axis != 'y') { - if((i.overflowOffset.left + i.scrollParent[0].offsetWidth) - event.pageX < o.scrollSensitivity) - i.scrollParent[0].scrollLeft = scrolled = i.scrollParent[0].scrollLeft + o.scrollSpeed; - else if(event.pageX - i.overflowOffset.left < o.scrollSensitivity) - i.scrollParent[0].scrollLeft = scrolled = i.scrollParent[0].scrollLeft - o.scrollSpeed; - } - - } else { - - if(!o.axis || o.axis != 'x') { - if(event.pageY - $(document).scrollTop() < o.scrollSensitivity) - scrolled = $(document).scrollTop($(document).scrollTop() - o.scrollSpeed); - else if($(window).height() - (event.pageY - $(document).scrollTop()) < o.scrollSensitivity) - scrolled = $(document).scrollTop($(document).scrollTop() + o.scrollSpeed); - } - - if(!o.axis || o.axis != 'y') { - if(event.pageX - $(document).scrollLeft() < o.scrollSensitivity) - scrolled = $(document).scrollLeft($(document).scrollLeft() - o.scrollSpeed); - else if($(window).width() - (event.pageX - $(document).scrollLeft()) < o.scrollSensitivity) - scrolled = $(document).scrollLeft($(document).scrollLeft() + o.scrollSpeed); - } - - } - - if(scrolled !== false && $.ui.ddmanager && !o.dropBehaviour) - $.ui.ddmanager.prepareOffsets(i, event); - - } -}); - -$.ui.plugin.add("draggable", "snap", { - start: function(event, ui) { - - var i = $(this).data("draggable"), o = i.options; - i.snapElements = []; - - $(o.snap.constructor != String ? ( o.snap.items || ':data(draggable)' ) : o.snap).each(function() { - var $t = $(this); var $o = $t.offset(); - if(this != i.element[0]) i.snapElements.push({ - item: this, - width: $t.outerWidth(), height: $t.outerHeight(), - top: $o.top, left: $o.left - }); - }); - - }, - drag: function(event, ui) { - - var inst = $(this).data("draggable"), o = inst.options; - var d = o.snapTolerance; - - var x1 = ui.offset.left, x2 = x1 + inst.helperProportions.width, - y1 = ui.offset.top, y2 = y1 + inst.helperProportions.height; - - for (var i = inst.snapElements.length - 1; i >= 0; i--){ - - var l = inst.snapElements[i].left, r = l + inst.snapElements[i].width, - t = inst.snapElements[i].top, b = t + inst.snapElements[i].height; - - //Yes, I know, this is insane ;) - if(!((l-d < x1 && x1 < r+d && t-d < y1 && y1 < b+d) || (l-d < x1 && x1 < r+d && t-d < y2 && y2 < b+d) || (l-d < x2 && x2 < r+d && t-d < y1 && y1 < b+d) || (l-d < x2 && x2 < r+d && t-d < y2 && y2 < b+d))) { - if(inst.snapElements[i].snapping) (inst.options.snap.release && inst.options.snap.release.call(inst.element, event, $.extend(inst._uiHash(), { snapItem: inst.snapElements[i].item }))); - inst.snapElements[i].snapping = false; - continue; - } - - if(o.snapMode != 'inner') { - var ts = Math.abs(t - y2) <= d; - var bs = Math.abs(b - y1) <= d; - var ls = Math.abs(l - x2) <= d; - var rs = Math.abs(r - x1) <= d; - if(ts) ui.position.top = inst._convertPositionTo("relative", { top: t - inst.helperProportions.height, left: 0 }).top - inst.margins.top; - if(bs) ui.position.top = inst._convertPositionTo("relative", { top: b, left: 0 }).top - inst.margins.top; - if(ls) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: l - inst.helperProportions.width }).left - inst.margins.left; - if(rs) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: r }).left - inst.margins.left; - } - - var first = (ts || bs || ls || rs); - - if(o.snapMode != 'outer') { - var ts = Math.abs(t - y1) <= d; - var bs = Math.abs(b - y2) <= d; - var ls = Math.abs(l - x1) <= d; - var rs = Math.abs(r - x2) <= d; - if(ts) ui.position.top = inst._convertPositionTo("relative", { top: t, left: 0 }).top - inst.margins.top; - if(bs) ui.position.top = inst._convertPositionTo("relative", { top: b - inst.helperProportions.height, left: 0 }).top - inst.margins.top; - if(ls) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: l }).left - inst.margins.left; - if(rs) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: r - inst.helperProportions.width }).left - inst.margins.left; - } - - if(!inst.snapElements[i].snapping && (ts || bs || ls || rs || first)) - (inst.options.snap.snap && inst.options.snap.snap.call(inst.element, event, $.extend(inst._uiHash(), { snapItem: inst.snapElements[i].item }))); - inst.snapElements[i].snapping = (ts || bs || ls || rs || first); - - }; - - } -}); - -$.ui.plugin.add("draggable", "stack", { - start: function(event, ui) { - - var o = $(this).data("draggable").options; - - var group = $.makeArray($(o.stack.group)).sort(function(a,b) { - return (parseInt($(a).css("zIndex"),10) || o.stack.min) - (parseInt($(b).css("zIndex"),10) || o.stack.min); - }); - - $(group).each(function(i) { - this.style.zIndex = o.stack.min + i; - }); - - this[0].style.zIndex = o.stack.min + group.length; - - } -}); - -$.ui.plugin.add("draggable", "zIndex", { - start: function(event, ui) { - var t = $(ui.helper), o = $(this).data("draggable").options; - if(t.css("zIndex")) o._zIndex = t.css("zIndex"); - t.css('zIndex', o.zIndex); - }, - stop: function(event, ui) { - var o = $(this).data("draggable").options; - if(o._zIndex) $(ui.helper).css('zIndex', o._zIndex); - } -}); - -})(jQuery); diff --git a/examples/lessons/6_Maths_variables/js/ui.droppable.js b/examples/lessons/6_Maths_variables/js/ui.droppable.js deleted file mode 100755 index 8e7be33..0000000 --- a/examples/lessons/6_Maths_variables/js/ui.droppable.js +++ /dev/null @@ -1,282 +0,0 @@ -/* - * jQuery UI Droppable 1.7.2 - * - * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT (MIT-LICENSE.txt) - * and GPL (GPL-LICENSE.txt) licenses. - * - * http://docs.jquery.com/UI/Droppables - * - * Depends: - * ui.core.js - * ui.draggable.js - */ -(function($) { - -$.widget("ui.droppable", { - - _init: function() { - - var o = this.options, accept = o.accept; - this.isover = 0; this.isout = 1; - - this.options.accept = this.options.accept && $.isFunction(this.options.accept) ? this.options.accept : function(d) { - return d.is(accept); - }; - - //Store the droppable's proportions - this.proportions = { width: this.element[0].offsetWidth, height: this.element[0].offsetHeight }; - - // Add the reference and positions to the manager - $.ui.ddmanager.droppables[this.options.scope] = $.ui.ddmanager.droppables[this.options.scope] || []; - $.ui.ddmanager.droppables[this.options.scope].push(this); - - (this.options.addClasses && this.element.addClass("ui-droppable")); - - }, - - destroy: function() { - var drop = $.ui.ddmanager.droppables[this.options.scope]; - for ( var i = 0; i < drop.length; i++ ) - if ( drop[i] == this ) - drop.splice(i, 1); - - this.element - .removeClass("ui-droppable ui-droppable-disabled") - .removeData("droppable") - .unbind(".droppable"); - }, - - _setData: function(key, value) { - - if(key == 'accept') { - this.options.accept = value && $.isFunction(value) ? value : function(d) { - return d.is(value); - }; - } else { - $.widget.prototype._setData.apply(this, arguments); - } - - }, - - _activate: function(event) { - var draggable = $.ui.ddmanager.current; - if(this.options.activeClass) this.element.addClass(this.options.activeClass); - (draggable && this._trigger('activate', event, this.ui(draggable))); - }, - - _deactivate: function(event) { - var draggable = $.ui.ddmanager.current; - if(this.options.activeClass) this.element.removeClass(this.options.activeClass); - (draggable && this._trigger('deactivate', event, this.ui(draggable))); - }, - - _over: function(event) { - - var draggable = $.ui.ddmanager.current; - if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return; // Bail if draggable and droppable are same element - - if (this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - if(this.options.hoverClass) this.element.addClass(this.options.hoverClass); - this._trigger('over', event, this.ui(draggable)); - } - - }, - - _out: function(event) { - - var draggable = $.ui.ddmanager.current; - if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return; // Bail if draggable and droppable are same element - - if (this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - if(this.options.hoverClass) this.element.removeClass(this.options.hoverClass); - this._trigger('out', event, this.ui(draggable)); - } - - }, - - _drop: function(event,custom) { - - var draggable = custom || $.ui.ddmanager.current; - if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return false; // Bail if draggable and droppable are same element - - var childrenIntersection = false; - this.element.find(":data(droppable)").not(".ui-draggable-dragging").each(function() { - var inst = $.data(this, 'droppable'); - if(inst.options.greedy && $.ui.intersect(draggable, $.extend(inst, { offset: inst.element.offset() }), inst.options.tolerance)) { - childrenIntersection = true; return false; - } - }); - if(childrenIntersection) return false; - - if(this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - if(this.options.activeClass) this.element.removeClass(this.options.activeClass); - if(this.options.hoverClass) this.element.removeClass(this.options.hoverClass); - this._trigger('drop', event, this.ui(draggable)); - return this.element; - } - - return false; - - }, - - ui: function(c) { - return { - draggable: (c.currentItem || c.element), - helper: c.helper, - position: c.position, - absolutePosition: c.positionAbs, //deprecated - offset: c.positionAbs - }; - } - -}); - -$.extend($.ui.droppable, { - version: "1.7.2", - eventPrefix: 'drop', - defaults: { - accept: '*', - activeClass: false, - addClasses: true, - greedy: false, - hoverClass: false, - scope: 'default', - tolerance: 'intersect' - } -}); - -$.ui.intersect = function(draggable, droppable, toleranceMode) { - - if (!droppable.offset) return false; - - var x1 = (draggable.positionAbs || draggable.position.absolute).left, x2 = x1 + draggable.helperProportions.width, - y1 = (draggable.positionAbs || draggable.position.absolute).top, y2 = y1 + draggable.helperProportions.height; - var l = droppable.offset.left, r = l + droppable.proportions.width, - t = droppable.offset.top, b = t + droppable.proportions.height; - - switch (toleranceMode) { - case 'fit': - return (l < x1 && x2 < r - && t < y1 && y2 < b); - break; - case 'intersect': - return (l < x1 + (draggable.helperProportions.width / 2) // Right Half - && x2 - (draggable.helperProportions.width / 2) < r // Left Half - && t < y1 + (draggable.helperProportions.height / 2) // Bottom Half - && y2 - (draggable.helperProportions.height / 2) < b ); // Top Half - break; - case 'pointer': - var draggableLeft = ((draggable.positionAbs || draggable.position.absolute).left + (draggable.clickOffset || draggable.offset.click).left), - draggableTop = ((draggable.positionAbs || draggable.position.absolute).top + (draggable.clickOffset || draggable.offset.click).top), - isOver = $.ui.isOver(draggableTop, draggableLeft, t, l, droppable.proportions.height, droppable.proportions.width); - return isOver; - break; - case 'touch': - return ( - (y1 >= t && y1 <= b) || // Top edge touching - (y2 >= t && y2 <= b) || // Bottom edge touching - (y1 < t && y2 > b) // Surrounded vertically - ) && ( - (x1 >= l && x1 <= r) || // Left edge touching - (x2 >= l && x2 <= r) || // Right edge touching - (x1 < l && x2 > r) // Surrounded horizontally - ); - break; - default: - return false; - break; - } - -}; - -/* - This manager tracks offsets of draggables and droppables -*/ -$.ui.ddmanager = { - current: null, - droppables: { 'default': [] }, - prepareOffsets: function(t, event) { - - var m = $.ui.ddmanager.droppables[t.options.scope]; - var type = event ? event.type : null; // workaround for #2317 - var list = (t.currentItem || t.element).find(":data(droppable)").andSelf(); - - droppablesLoop: for (var i = 0; i < m.length; i++) { - - if(m[i].options.disabled || (t && !m[i].options.accept.call(m[i].element[0],(t.currentItem || t.element)))) continue; //No disabled and non-accepted - for (var j=0; j < list.length; j++) { if(list[j] == m[i].element[0]) { m[i].proportions.height = 0; continue droppablesLoop; } }; //Filter out elements in the current dragged item - m[i].visible = m[i].element.css("display") != "none"; if(!m[i].visible) continue; //If the element is not visible, continue - - m[i].offset = m[i].element.offset(); - m[i].proportions = { width: m[i].element[0].offsetWidth, height: m[i].element[0].offsetHeight }; - - if(type == "mousedown") m[i]._activate.call(m[i], event); //Activate the droppable if used directly from draggables - - } - - }, - drop: function(draggable, event) { - - var dropped = false; - $.each($.ui.ddmanager.droppables[draggable.options.scope], function() { - - if(!this.options) return; - if (!this.options.disabled && this.visible && $.ui.intersect(draggable, this, this.options.tolerance)) - dropped = this._drop.call(this, event); - - if (!this.options.disabled && this.visible && this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) { - this.isout = 1; this.isover = 0; - this._deactivate.call(this, event); - } - - }); - return dropped; - - }, - drag: function(draggable, event) { - - //If you have a highly dynamic page, you might try this option. It renders positions every time you move the mouse. - if(draggable.options.refreshPositions) $.ui.ddmanager.prepareOffsets(draggable, event); - - //Run through all droppables and check their positions based on specific tolerance options - - $.each($.ui.ddmanager.droppables[draggable.options.scope], function() { - - if(this.options.disabled || this.greedyChild || !this.visible) return; - var intersects = $.ui.intersect(draggable, this, this.options.tolerance); - - var c = !intersects && this.isover == 1 ? 'isout' : (intersects && this.isover == 0 ? 'isover' : null); - if(!c) return; - - var parentInstance; - if (this.options.greedy) { - var parent = this.element.parents(':data(droppable):eq(0)'); - if (parent.length) { - parentInstance = $.data(parent[0], 'droppable'); - parentInstance.greedyChild = (c == 'isover' ? 1 : 0); - } - } - - // we just moved into a greedy child - if (parentInstance && c == 'isover') { - parentInstance['isover'] = 0; - parentInstance['isout'] = 1; - parentInstance._out.call(parentInstance, event); - } - - this[c] = 1; this[c == 'isout' ? 'isover' : 'isout'] = 0; - this[c == "isover" ? "_over" : "_out"].call(this, event); - - // we just moved out of a greedy child - if (parentInstance && c == 'isout') { - parentInstance['isout'] = 0; - parentInstance['isover'] = 1; - parentInstance._over.call(parentInstance, event); - } - }); - - } -}; - -})(jQuery); diff --git a/examples/lessons/6_Maths_variables/js/ui.scoreboard.js b/examples/lessons/6_Maths_variables/js/ui.scoreboard.js deleted file mode 100755 index 53a930a..0000000 --- a/examples/lessons/6_Maths_variables/js/ui.scoreboard.js +++ /dev/null @@ -1,107 +0,0 @@ -(function($){ - $.widget('ui.scoreboard', - { - getScore : function(){ - return this._getData('score'); - }, - setScore : function(newScore){ - this._setData('score', parseInt(newScore)); - this._refresh(); - }, - getTotal : function(){ - return this._getData('total'); - }, - setTotal : function(newTotal){ - this._setData('total', parseInt(newTotal)); - this._refresh(); - }, - reset : function(){ - this._setData('score', this._getData('initialScore')); - this._setData('total', this._getData('initialTotal')); - this._refresh(); - }, - inc : function(val){ - var incVal = parseInt(val) || 1; - this._setData('score', this._getData('score') + incVal); - this._refresh(); - if(this._getData('winScore') === this._getData('score')){ - this.element.trigger('winGame'); - } - }, - incTotal : function(val){ - var incVal = parseInt(val) || 1; - this._setData('total', this._getData('total') + incVal); - this._refresh(); - }, - dec : function(val){ - var decVal = parseInt(val) || 1; - this._setData('score', this._getData('score') - decVal); - this._refresh(); - }, - decTotal : function(val){ - var decVal = parseInt(val) || 1; - this._setData('total', this._getData('total') - decVal); - this._refresh(); - }, - _init : function(){ - - var divDisplay = "inline"; - var score = this.options.score; - var total = this.options.total; - var layoutId = "h"; - var self = this; - - - this._setData('initialScore', parseInt(this.options.score)); - this._setData('initialTotal', parseInt(this.options.total)); - this._setData('score', parseInt(this.options.score)); - this._setData('total', parseInt(this.options.total)); - this._setData('winScore', parseInt(this.options.winningScore) || 0); - - if(this.options.layout === "vertical"){ - layoutId = "v"; - } - - this.evWinGame = document.createEvent('Events'); - - this.element.addClass('ui-scoreboard-container-' + layoutId + - ' ui-widget ui-widget-content ui-corner-all'); - - var clone = $('<div>') - .addClass('ui-scoreboard-spacing-' + layoutId); - this._scoreText = $("<div>Score</div>") - .addClass('ui-scoreboard-spacing-'+ layoutId + - ' ui-corner-all ui-scoreboard-text') - .appendTo(this.element); - this._score = $("<div>" + score + "</div>") - .addClass('ui-scoreboard-spacing-' + layoutId + - ' ui-scoreboard-number-' + layoutId) - .appendTo(this.element); - $("<div>Total</div>") - .addClass('ui-scoreboard-spacing-' + layoutId + - ' ui-corner-all ' + - 'ui-scoreboard-text') - .appendTo(this.element); - this._total = $("<div>" + total + "</div>") - .addClass('ui-scoreboard-spacing-' + layoutId + - ' ui-scoreboard-number-' + layoutId) - .appendTo(this.element); - }, - _refresh : function(){ - this._score.text(this._getData('score')); - this._total.text(this._getData('total')); - }, - destroy : function(){ - this.element.remove(); - $.widget.prototype.destroy.apply(this, arguments); - } - - - }); - - $.ui.scoreboard.getter = ['getScore', 'getTotal']; - $.ui.scoreboard.defaults = { - score: 0, total: 0, layout: "horizontal", winningScore: 0 - }; - - })(jQuery);
\ No newline at end of file |