Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/gradient-bg.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/gradient-bg.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/s.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/s.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/shadow-c.png =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/shadow-c.png,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/shadow-lr.png =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/shadow-lr.png,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/shadow.png =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/shadow.png,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/box/corners-blue.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/box/corners-blue.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/box/corners.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/box/corners.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/box/l-blue.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/box/l-blue.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/box/l.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/box/l.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/box/r-blue.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/box/r-blue.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/box/r.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/box/r.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/box/tb-blue.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/box/tb-blue.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/box/tb.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/box/tb.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/button/btn-arrow.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/button/btn-arrow.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/button/btn-sprite.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/button/btn-sprite.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/dd/drop-add.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/dd/drop-add.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/dd/drop-no.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/dd/drop-no.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/dd/drop-yes.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/dd/drop-yes.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/editor/tb-sprite.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/editor/tb-sprite.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/form/clear-trigger.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/form/clear-trigger.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/form/clear-trigger.psd =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/form/clear-trigger.psd,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/form/clear-trigger.psd 11 Apr 2009 18:15:07 -0000 1.1 @@ -0,0 +1,150 @@ +8BPSf�8BIM7200705288BIM Tf4�8����JFIF[[��f��� + +# !"!%'$ '!!   ��� + }!1AQa"q2���#B��R��$3br� +%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz������������������������������������������������������������������������� + w!1AQaq"2�B���� #3R�br� +$4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������� ?����[[�m:)�ج +��<�HϷz��8�Gde:���e��4��ux����N��)Zd�\n^�s�QR)YK� +u!U7 +l�a�tk-2�{�m2%�ˈI-��ÀN����滢��H��vq�t��$��X�t[�� ��J�[V :��g�b2;q�v�ޛ��&��͉{&�Ii��̳�t�if��E���`O��)ԝNnX����� +|�in�2�h�z?��6B@����ۜgq�3Y�Z��ݾf�Ν�eq�]���ZkR�%�Q��� ��O���e*��m'�6Dc�]-o$X�\��pE�J���m�ZF�b�� ���:Ը�W�zo�)J��Ik����iz]αz�i� �o U6��KI��{�R�:� +�{���J0sj�e�y�C}���-f� +!������i�]�r�9w��M�ފ����Ij�_���=K�T�Ht�8ա��� +!��p=��D*TT��{���(A�+-�OB�iZ��5����J�� T#��ƏiZ���G�Jײ����me����_� +JF�n+�Rr��w����1������+�����sV^w�t�3.D|`�-�b��5xѼ��=:�}���&��4H��結[�H�K `7\㎕8���>u�r�St���z�����Cqo�*G)�=�b�ʹc�c�� +^��1x���ӨMp��5�,M�|���G'��9J����^@�>~���u8Ԭ٥�"���1ԸG���ԉͩ&���OSѵ+�v}V;;Y"[�q`n0/vd ����;|� Uƭ��~����o� +T�)s?_[u�r��[@�_1D� +�g��V)N�FX��+7��������� +�������W���O�d�D����?�v��Cju7�/��]}Y=@�Ga������kIl�?VU.����R}�BW��/�%_�^��#�E��%����,�딿�*���W�e?�]����dx��A���Q��t�~?��}���8BIM���8BIM8BIM��fpbp8BIMnorm�<(�������������������� +Backgroundb���ZZ8BIMnorm�<(��������������������Raster 1�~�~�����~��~��~��~��~�����~��~��~��~��~�����~��~��~��~��~�����~��~��~��~��~�����~��~��~��~��~�����~��~��~��~��~�����~��~��~��~��~�����~��~��~��~��~�����~��~��~��~��~����~�~�~��~�~����~�~�~��~�~����~�~�~��~�~����~�~�~��~�~����~�~�~��~�~����~�~�~��~�~����~��~�~��~��~����~��~�~��~��~����~��~�~��~��~����~��~�~��~��~����~��~�~��~��~����~��~�~��~��~����~��~�~��~��~����~��~�~��~��~𸸭����������������������������������������������������������������������������������������������������������������������������������������������������������������������������Э��������Э�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������ȸ�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������9[^VRKORZ^W������������,��,,��,�,��,,��,����,��,,��,�,��,,��,�������D���������D�����,��,,��,�����D���������D�����,��,,��, +���������� +��������������D����� +���������� +��������������D����,������,�,������,� +����������,������,�,������,� +���������D����D�D����D�,������,�D����D�D����D�,������,,������,�,������,�D����D�,������,�,������,�D����D +���������� +����������,������,� +���������� +����������,������,����D���������D����� +��������������D���������D����� +���������,��,,��,�,��,,��,�����D�����,��,,��,�,��,,��,�����D����������,��,,��,�������,��,,��,������"HRRRLPRRR<������������������������������������������������������������������������� +��`����`��� +��`����`�������������� +��`����`��� +��`����`������������� +��0��0���� +��0��0���� +��`����`��� +��0��0���� +��0��0���� +��`����`�����0�0��������0�0����� +��0��0�������0�0��������0�0����� +��0��0������X��������X��������0�0��������X��������X��������0�0�������X�X��������X�X��������X��������X�X��������X�X��������X���� +��X�ԀX���� +��X�ԀX�������X�X����� +��X�ԀX���� +��X�ԀX�������X�X���� +��X���ۀX��� +��X���ۀX��� +��X�ԀX���� +��X���ۀX��� +��X���ۀX��� +��X�ԀX������������������������� +��X���ۀX������������������������� +��X���ۀX�����������������������������������������������������"HRRRLPRRR<������������������������������������������������������������������������� +���������� +��������������������� +���������� +�������������������� +������ +������ +���������� +������ +������ +������������x�x��������x�x����� +���������x�x��������x�x����� +��������z��������z��������x�x��������z��������z��������x�x�������z�z��������z�z��������z��������z�z��������z�z��������z���� +��z�ޘz���� +��z�ޘz�������z�z����� +��z�ޘz���� +��z�ޘz�������z�z���� +��z���ߐz��� +��z���ߐz��� +��z�ޘz���� +��z���ߐz��� +��z���ߐz��� +��z�ޘz������������������������� +��z���ߐz������������������������� +��z���ߐz�����������������������������������������������������" >RRLHFNR<������������������������������������������������������������������������������������������������������������������������������������������������������������������аа��������аа��������������������аа��������аа���������������������������������������аа����������������������������аа�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������8Xhld^dllh`48Xhld\bhldP(0RhhbV`frfH(�~�~�����~��~��~��~��~�����~��~��~��~��~�����~��~��~��~��~���������������������~��~����������~����������~��~���������������������������~����������~�������������~�������������~����������~����b����b������� +��a����a����~�������������~�� +��a����a����~�� +��b����b����~�������������~�� +��0��0�������� +��0��0�����~�� +��a����a����~�� +��0��0�����~�� +��0��0�����~�� +��a����a����~����0�0���������ށ0�0�����~�� +��0��0�����~���ށ0�0�����~����0�0�����~�� +��0��0�����~����X����������߀X������~���ށ0�0�����~����߀X������~�����X������~���ށ0�0�����~����X�X�������� +��܁X�X������~����݀X��İ��~�� +��܁X�X������~���߁X�X�����~����݀X��İ��~�� +��X�ՁX�������� +�ہX�сX�۽��~�� +��ہX�X�ۼ���~�� +�ہX�сX�۽��~�� +�ށX�ӁX�����~�� +��ہX�X�ۼ���~�� +��Z���ہZ������� +��Y���ՁY���~�� +�ځX�сX�ڵ��~�� +��Y���ՁY���~�� +��Y���؁Y����~�� +�ځX�сX�ڵ��~���������������� +����Ǽ���Ǽ��~�� +��Y���ӁYߵ��~�� +����Ǽ���Ǽ��~�������������~�� +��Y���ӁYߵ��~������������������������~�� +���Ӽ���ּ���~�������������~����������~�� +���Ӽ���ּ���~����~�������������~�~��~�������������~����~��~�~��~��~����~��~�~��~��~����~��~�~��~��~����~��~�~��~��~����~��~�~��~��~����~��~�~��~��~����~��~�~��~��~����~��~�~��~��~𸸭������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������ +�������������� +�������������������������� +������������ +������������������������������ +���������� +�븀���������� +����︩������� +�븀���������� +�﹀�﹀�������� +����︩���������x�x����������x�x�������� +�글�츀����������x�x����������x�x�������� +�글�츀����������z�����������z�����������x�x�����������z�����������z����������x�x����������z�z����������z�z�����������z������Э����z�z����������z�z�����������z������Э�� +��z�ޙz�������� +��z�ܙz����������z�z�������� +��z�ܙz�������� +��z�ޙz����������z�z�������� +��{���ޑ{������� +��{���ܑ{������� +��z�ݙz�������� +��{���ܑ{������� +��{���ߑ{������� +��z�ݙz������������������������������������ +��{���ܑ{����������������������������������� +��{���ܑ{����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������ȸ������������������������������������������������������������������������������������������������������������������������������������������������������������������������ +���������������� +������������������������������ +����������������������������������������� +���������������� +���������������� +���������������� +���������������������������� +������������������аа����������аа�������� +������������������аа���������Ѱа������� +������������������������������������������аа��������������������������������аа���������������������������������������������������������������������������������������������������������� +�����거���������������������� +�����거������������챰����������������������������������������������������� +�����거�������������������������������������� +�����거������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������� \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/form/date-trigger.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/form/date-trigger.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/form/date-trigger.psd =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/form/date-trigger.psd,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/form/date-trigger.psd 11 Apr 2009 18:15:07 -0000 1.1 @@ -0,0 +1,23 @@ +8BPSf *8BIM7200705308BIM �f4������JFIF[[��f��� + +# !"!%'$ '!!   ��� + }!1AQa"q2���#B��R��$3br� +%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz������������������������������������������������������������������������� + w!1AQaq"2�B���� #3R�br� +$4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������� ?�U֤��.l��Y��nʏ)��b����k�1�*r���a)��F7��h~'����e�{]]���v��H�t��%���vEk�z�MX������A�yi�!�����Dz�N:T:���_�uC V��)^���h���q��a&����|�I"�1"��H�:�?.H��qiߚ��7��]y�]۵�̩���QWit]�GP�2�R_j^Ьm" I=֣k i���ed�}H�f�B*��N�xZ�e�N��d�'�m&���U�E��E��`XՂ��T�$|܁޴I�t����g������*Tܔ�U�}= ��l�8O��}�|UsO�~/��g�� +����i{m>K ���e�H<��'}5P�������m}uWۯ���a�Ԧ��ꎯI���β������;�O ��s���ӎ��J��������S�e$�_�0i���4]CL�Z�a��46�i�D���r���H����ڼTC*jRi���uV�:э=7W��ɥE���-�W[���i��� +��k/̖8���~3����]x�JP�*�� +S�g+��S+���o'�S��<듩�]��]Bћ�py��n��ݳ%w�Ն +(�Si���vVǷ�tU���ۛ�ݭ}v���64IoH$��}���Q��{w��RJ����y�Y7RW���?� +���kb�!�%��D��$�I�yfvK�y��O�nkΧO��e�?���j8�e��+n���ڮ��;Y������3��$0����ʠh�d�;����^��h����a���O��i��/ +��G7~#H�mqi/�{n>�o*�������Zd�mY~l�3��{��ǹ��>��z�kg���{���m����&�Gpi�ؕT\���=M{3��+ow�#Ã���/͛Z��������BX��H���[]�y�?�$d��2���u<9<6��Ӵ����[jZ��� P��^�j1J�r�L�1U�V��'vܛ��w�)��z$�g�s�&ɝl��$L��6�dnFd�ݑ��<�Ƿ���j)�����F�O��<��F>���E��a�w|�yH�� +�4���\�D�ڊ���׹�C� ��g��Wu��V����v���}]��d�׊z��8�� n��1@�������W���O�d�D���mo.n~�m �n��� l~�f����/�ǫ���&��@�?���G3������� U-����K��j�Խ����פ�2Zq�~�%�_/�4h��H�Y��EVF�p�FA��:?��g=���1��4��Y�߅� +\ϸ�!���LD��8T� X�(����8BIMnorm�<(��������������������Raster 1 �@�~@�~@�~@�~@�~@��׵���~���~���~���~���~���������~��~����~����~��~�������~��~���~���~��~�������~��~���~���~��~�������~��~���~���~��~�������~��~���~���~��~�������~��~���~���~��~�������~��~���~���~��~�������~��~���~���~��~������~�~��~���~�~������~�~��~���~�~������~�~��~���~�~������~�~��~���~�~������~�~��~���~�~������~�~��~���~�~������~��~��~���~��~������~��~��~���~��~������~��~��~���~��~������~��~��~���~��~������~��~��~���~��~������~��~��~���~��~������~��~��~���~��~������~��~��~���~��~ ��������������ٸ��ϭ��ϭ��ϭ��ϭ��ϭ���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������Э��������Э���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������@��@��@��@��@��@�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������� +������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������� @HZfNZfBT2 +��w����w����w����w���w��w���w���w��w���w��w�������w�w�������w��w�w�������w�w�������w��w�w�����w�w�����w�w�������w�w�����w�w�����w�w�������w�w����������w�w����������w�w�����w�w����������w�w����������w�w�����w�w����������w�w����������w�w����������w�w����������w�w����������w�w����������w�w�����w�w�����w�w����������w�w�����w�w�����w�w����������w�w����������w�w����������w�w�����w�w����������w�w����������w�w�����w�w����������w�w����������w�w����������w�w����������w�w����������w�w����������w�w��w�w��w�w����������w�w��w�w��w�w����������w�w����������w�w����������w�w��w�w����������w�w����������w�w��w��w��w�w����������w��w��w�w����������w���w��w� @HZfNZfBT2 +�������������������������������������������������ޒ��������ޒ�����������ޒ��������ޒ��������ޒ�����ޒ��������ޒ�����ޒ�����ޒ��������ޒ���������������������������ޒ���������������������������ޒ�����������������������������������������������������������������������ޒ�����ޒ����������������ޒ�����ޒ����������������������ޒ�����������ޒ�����ޒ�����������ޒ�����������ޒ�����ޒ�����������ޒ�����������ޒ�����������ޒ�����������ޒ�����������ޒ�����������ޒ���������������������ޒ���������������������ޒ�����������ޒ�����������ޒ����������������ޒ�����������ޒ����������������������ޒ�����������������ޒ�������� @HZfNZfBT2 +�������������������������������������������������޷��������޷�����������޷��������޷��������޷�����޷��������޷�����޷�����޷��������޷���������������������������޷���������������������������޷�����������������������������������������������������������������������޷�����޷����������������޷�����޷����������������������޷�����������޷�����޷�����������޷�����������޷�����޷�����������޷�����������޷�����������޷�����������޷�����������޷�����������޷���������������������޷���������������������޷�����������޷�����������޷����������������޷�����������޷����������������������޷�����������������޷�������� 48T\nzbnzVhJ$ 48T\nz`nzVhJ$58U]o{cnzVhJ$�@�~@�~@�~@�~@�~@��׵���~���~���~���~���~���������~��~����~����~��~�������~��~���~���~��~����w��������w���~��~����w���~����w���~��~���w������w��~����w���~���w��~���w��~����w���~��w�������w�����w�������w��~���w��~��w�������w��~��w�������w��~���w��~��w�����w�����w�����w��~��w�������w��~��w�����w��~��w�����w��~��w�������w��~��w����������w�����w����������w��~��w�����w��~��w����������w��~��w����������w��~��w�����w��~��w����������w�����w����������w��~��w����������w��~��w����������w��~��w����������w��~��w����������w��~��w�����w�����w�����w��~��w����������w��~��w�����w��~��w�����w��~��w����������w��~��w����������w�����w����������w��~��w�����w��~��w����������w��~��w����������w��~��w�����w��~��w����������w�����w����������w��~��w����������w��~��w����������w��~��w����������w��~��w����������w��~��w��w�����w��w��~��w����������w��~��w��w��~��w��w��~��w����������w��~��w����������w�����w����������w��~��w��w��~��w����������w��~��w����������w��~��w��w��~���w������w��~��w����������w��~���w��~���w��~��w����������w��~������~���w��~��~���~���w��~������~��~��~���~��~������~��~��~���~��~������~��~��~���~��~������~��~��~���~��~������~��~��~���~��~������~��~��~���~��~������~��~��~���~��~��������������ٸ��ϭ��ϭ��ϭ��ϭ��ϭ�������������������������������������������������������������������������������������������������������������������������������������������������ޒ������������ޒ�������������������ޒ������������ޒ����������������ޒ���������ޒ������������ޒ���������ޒ���������ޒ������������ޒ���������������������������������������ޒ���������������������������������������ޒ���������������������������������������������������������������������������������������������������ޒ���������ޒ���������������Э������ޒ��������ޒ���������������Э������������ޒ���������������ޒ��������ޒ���������������ޒ��������������ޒ��������ޒ���������������ޒ���������������ޒ��������������ޒ���������������ޒ��������������ޒ��������������ޒ��������������������������������ޒ�������������������������������ޒ���������������ޒ���������������ޒ�����������������������ޒ��������������ޒ������������������������������������ޒ���������������������������ޒ���������������������������������������������������������������������������������������������������������������������������������������������������������������������@��@��@��@��@��@����������������������������������������������������������������������������������������������������������������������������������������������������������������������޷������������޷�������������������޷������������޷����������������޷���������޷������������޷���������޷���������޷������������޷���������������������������������������޷���������������������������������������޷���������������������������������������������������������������������������������������������������޷���������޷������������������������޷���������޷������������������������������޷���������������޷���������޷���������������޷���������������޷���������޷���������������޷���������������޷���������������޷���������������޷���������������޷���������������޷���������������������������������޷���������������������������������޷���������������޷���������������޷������������������������޷���������������޷��������������������������������������޷�����������������������������޷��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������� \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/form/error-tip-corners.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/form/error-tip-corners.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/form/exclamation.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/form/exclamation.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/form/search-trigger.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/form/search-trigger.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/form/search-trigger.psd =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/form/search-trigger.psd,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/form/search-trigger.psd 11 Apr 2009 18:15:07 -0000 1.1 @@ -0,0 +1,50 @@ +8BPSf�8BIM7200705288BIM �f4�i����JFIF[[��f��� + +# !"!%'$ '!!   ��� + }!1AQa"q2���#B��R��$3br� +%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz������������������������������������������������������������������������� + w!1AQaq"2�B���� #3R�br� +$4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������� ?�K�Z���[o/C�����[���ƻ���k� +JU�����g6&����Wm�"����]SXmW���gz���Ud�h��OOƮ�{Jr��� ���){:����ٔ�o���I��i6wR4X��2�`(�^������-8;+wvI��EJ�4���$��Xj�ǫZ��ׅ�{6�,-��TgQ��l(��q��Z��AʕF���g(�F�4����2g�t�(隸�����{���F^�a4�i�{m��W��w�Q�J�^�$�O6fZj�-Ķ�o�e�����@��Q�J�3ֺ%N�S����6c +��\��ͭͭ&�N���k"�Ϝ�l��|�'���RIJ.��n�m{�$�7�J�e/uo�vF"��� +q�!���~o;ˈ�#�<�/oL��q�Nk������>��/sk+{Of�>W���i�6�.�9m.���!p>Υr^PX `d*���'$�����[+4��wn�gG���6��K���n�O%�Ε�.�L���y\F�M���o `��+�Sq�jUjO׮���S�nT��w�h������i�����IWl*��c*J���:�|�r�~�]��^�W���j�Ҝ�5���c���6ڄ���S��)���D[�B�q�#�k��(��|��v�2�8�\�����[�@�eׇ�5=*8�)�d�0���jK +�tqQRK[I]_����4+�M�5~�w���s�(��#.�k�L.�42NS�H��:�bx=>�aj��Sr���o/3֯Nu��t�SkšΟ�յMXjZ� ����C1�PO$�I�c_��Ӎ�{��4�A�\�wg5�d�|L-�)e �@��ww�0<��+7EU�h��ƣvQK���NRR�v�1J�%�XYk�:8���9��ȹ�����(�'�)�Q����v��9NrJ2j˷�kX׵=:����tڕ��ط�Oݫ�/# +jR��RvV�z��M�]�C>��������x��ZR*�m� +�ɌK����qҵ�"��c K��wNJ��OC���Ku��;�J+�Bd��8�mb��1�P�Ӂ���+�B-Y��m�k�~�����(�M� ��c��=�a�BK�R��$z�T�Ҕ��.�;�� +�q����֦��Ɲ���m4�6�a���q���'�ƹ��ܛݵ����TvW�K@�ŗ7� ����k-Za=����Dž +%!F�v�l{�Qa��m����Ra:�nJ��'����<-i� ��1�d�R��$b���I��(��Vs���#���|θ��0X�+��'Ӊ�ж��Z���l�mb]��{�l߼��Feu����*q�#d~�����_��3�y��m�f�̲]�H���@Z�[/O՗K��f�п�1[��#�?�-5���DK��_�4(���VC� s�#1�j���R$�j��Eݥb�K�ԭ6%�1�S� ����F�p��¾���8BIM���8BIM8BIMf���8BIMnorm�<(�������������������� +Background����e�� ���8BIMnorm�8(��������������������Icons �@�~@�~@�~@�~@�~@��׵���~���~���~���~���~���������~��~����~����~��~�������~��~���~���~��~�������~��~���~���~��~�������~��~���~���~��~�������~��~���~���~��~�������~��~���~���~��~�������~��~���~���~��~�������~��~���~���~��~������~�~��~���~�~������~�~��~���~�~������~�~��~���~�~������~�~��~���~�~������~�~��~���~�~������~�~��~���~�~������~��~��~���~��~������~��~��~���~��~������~��~��~���~��~������~��~��~���~��~������~��~��~���~��~������~��~��~���~��~������~��~��~���~��~������~��~��~���~��~ ��������������ٸ��ϭ��ϭ��ϭ��ϭ��ϭ���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������Э��������Э���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������@��@��@��@��@��@��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������*JXdkh^Z^hmkhfN>5����������3�A3�3�A3���3�A3�3�A3����6a����R�6a����R�3�A3�6a����R�6a����R�3�A3��Q������T�Q������T�6a����R�Q������T�Q������T�6a����R��2��������R�2��������R�Q������T�2��������R�2��������R�Q������T�A��������2�A��������2�2��������R�A��������2�A��������2�2��������R�C�������A�C�������A�A��������2�C�������A�C�������A�A��������2�C�������A�C�������A�C�������A�C�������A�C�������A�C�������A�F�������2�F�������2�C�������A�F�������2�F�������2�C�������A�d�������R�d�������R�F�������2�d�������R�d�������R�F�������2T��������T�T��������T�d�������RT��������T�T��������T�d�������RR����˼���R�R����˼���R�T��������TR����˼���R�R����˼���R�T��������T +2����dGCA3� +2����dGCA3�R����˼���R� +2����dGCA3� +2����dGCA3�R����˼���R�?���T ��?���T �� +2����dGCA3�?���T ��?���T �� +2����dGCA3�1���R�1���R�?���T ��1���R�1���R�?���T ��1?3�1?3�1���R�1?3�1?3�1���R���1?3���1?3����4JZbddd`^\L@:  +���������������������������������������������������������������������������^�6l������^�6l���������������^�6l������^�6l���������������`6b��X6p������`6b��X6p������^�6l������`6b��X6p������`6b��X6p������^�6l���� �7`����O7������ �7`����O7�������`6b��X6p����� �7`����O7������ �7`����O7�������`6b��X6p���� �7������7������ �7������7������ �7`����O7������ �7������7������ �7������7������ �7`����O7����� �8�����8������ �8�����8������ �7������7������ �8�����8������ �8�����8������ �7������7����� �8L����B=������ �8L����B=������ �8�����8������ �8L����B=������ �8L����B=������ �8�����8������?8C�|?8�������?8C�|?8������ �8L����B=�������?8C�|?8�������?8C�|?8������ �8L����B=������E7Z�7?������E7Z�7?�������?8C�|?8������E7Z�7?�������E7Z�7?�������?8C�|?8������?1p�߼�����?1p�߼��������E7Z�7?������?1p�߼��������?1p�߼��������E7Z�7?������8*k����8*k�������?1p�߼��������8*k�������8*k�������?1p�߼�������� d���� d�������8*k������� d������� d�������8*k������������������ d��������������������� d���������������������������������������������������4JZbddd`^\L@:  +��������������������������������������������������������������������������������������������������������������������������������񚁜�ǖ�������񚁜�ǖ����������������񚁜�ǖ�������񚁜�ǖ��������������� �x�����x������ �x�����x������񚁜�ǖ������� �x�����x������ �x�����x������񚁜�ǖ������ �q�����q������ �q�����q������ �x�����x������ �q�����q������ �q�����q������ �x�����x����� �k�����k������ �k�����k������ �q�����q������ �k�����k������ �k�����k������ �q�����q����� �gu����nj������ �gu����nj������ �k�����k������ �gu����nj������ �gu����nj������ �k�����k������lgo��lg�������lgo��lg������ �gu����nj�������lgo��lg�������lgo��lg������ �gu����nj������oe��ej������oe��ej�������lgo��lg������oe��ej�������oe��ej�������lgo��lg������f[���������f[������������oe��ej������f[������������f[������������oe��ej������ZN�����ZN��������f[������������ZN��������ZN��������f[������������>y����>y�������ZN��������>y�������>y�������ZN�������������������>y���������������������>y���������������������������������������������������4JZbddd`^\L@:  +�������������������������������������������������������������������������������������������������������������������������������������ɽ���Ƚ�������ɽ���Ƚ�����������������ɽ���Ƚ�������ɽ���Ƚ��������������� �������������� ���������������ɽ���Ƚ������ �������������� ���������������ɽ���Ƚ����� ѵ�����յ������ ѵ�����յ������ �������������� ѵ�����յ������ ѵ�����յ������ ������������� ұ�����ϱ������ ұ�����ϱ������ ѵ�����յ������ ұ�����ϱ������ ұ�����ϱ������ ѵ�����յ����� 䯷���������� 䯷���������� ұ�����ϱ������ 䯷���������� 䯷���������� ұ�����ϱ�����貯��ɲ�������貯��ɲ������� 䯷����������貯��ɲ�������貯��ɲ������� 䯷���������籬���������籬����������貯��ɲ������籬����������籬����������貯��ɲ������䢛��������䢛�����������籬���������䢛�����������䢛�����������籬���������ߍ�����ߍ��������䢛�����������ߍ��������ߍ��������䢛������������j�����j�������ߍ���������j��������j�������ߍ��������������������j����������������������j����������������������������������������������������.]fnmllllikjreQE=(.NdlllkkkjkjqbOC<(.H`ikkmkkjiiiZHA4"�@�~@�~@�~@�~@�~@������׵�������~���~�������~�������~���~�����������������������������~����������~��������������~�������������~����������~�� +����ɤ���������� +���徜�������~�������������~�� +���徜�������~�����Ƣ�������~�������������~�����~G�=J������������xE�<G�����~�� +���߹��������~������xE�<G�����~�����|F�=I�����~�� +���߹��������~�����q`����QK�������ܺ=`����QG���~�����l:c��ZE����~���ܺ=`����QG���~�����=`����QJ���~�����l:c��ZE����~����<������>�������ڜ;������=���~���ع=`����QG���~���ڜ;������=���~����<������=���~���ع=`����QG���~����=�����?�������ٟ<�����>���~���؛;������=���~���ٟ<�����>���~����=�����>���~���؛;������=���~�����=L����DP����������K�P�����M^��ۻ�2�B�SJ+w�͏�����g��ߕ� +^ڧ�?��e�~��ټא��i)[� kdr�� �N=��┓���w��wd��DR�MJV���]��4�Fߍ�����1���jy����f��?ʾ�?L�t��Y�iV$5�/���T6�T�1�HU�=*d��}ok���J�Wv�fJ�5Q�v�Eݚ���hŶ�bi��ȟ�Q�o���k��{r��$�4��+'M��<3oT�@b� �F�Ͻ\e+9������_����2�Nq�*��OB��6���>�����S��?���{(vF'�lm���䷷�3-8�㏥kJ�<[�x����%u~��8�5�JQO^ȟ�>+{][N����.��iڒ/�똤;�l�A<Y[� +��W����_��=�������{��l��Y�%����]CP���e'�rrq�p�8���g��y]�˱T�*j�s�>��mky<���f������á8�er3��!XzT����p�ʹ��𗅥���jw���~!�pڎ�����Q�>X��U�Ϛ�+%������\���l�->=[P���f���f�X��|����(N� 0��Z���o茕V�W��3/���.��MWŚ��G�x,le)h�83� +�����Ct*��5�N:w{�z/��U���_������6ڞ��Aݕ�� �q�=9`F A���o�b�+�������Ï�}V��S��u����h] ���aѤ� +�E#U��W�4�������J�������˺�g��h.sE-�G,rF��)�`U� �A�Y������g���Y������b��V�����NЦ%�v�����ת��K��ɳ�޶�������Vv_.���������_XH�eY�%G�_�\��<�//ԉ�I���C�����S����7��r�Qs<�r�hW��2�-��!�;B�sȗE*V������ח��^ѵ{����������M2�1D�Uw�v�RY�f>��ORI��E)��r�*JK^�A��^��8�� n��1@�������W���O�d�D���|������1�=����^���aHV#��[w�]������^��*�_R�I�{M�����H��d�����DK��_�h�3#�?��c����:]��3����jI������]G�5Ӆ��F5�?��8BIM���8BIM8BIM��f���8BIMnorm�<(�������������������� +Backgroundc���Q?�8BIMnorm�<(��������������������Raster 1 �@�~@�~@�~@�~@�~@��׵���~���~���~���~���~���������~��~����~����~��~�������~��~���~���~��~�������~��~���~���~��~�������~��~���~���~��~�������~��~���~���~��~�������~��~���~���~��~�������~��~���~���~��~�������~��~���~���~��~������~�~��~���~�~������~�~��~���~�~������~�~��~���~�~������~�~��~���~�~������~�~��~���~�~������~�~��~���~�~������~��~��~���~��~������~��~��~���~��~������~��~��~���~��~������~��~��~���~��~������~��~��~���~��~������~��~��~���~��~������~��~��~���~��~������~��~��~���~��~ ��������������ٸ��ϭ��ϭ��ϭ��ϭ��ϭ���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������Э��������Э���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������@��@��@��@��@��@��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������9[^^WMB6* � +� +� +� ,���,,���,� ,���,,���,� +� ,���,,���,� ,���,,���,�  �����D������ �����D������ ,���,,���,� �����D������ �����D������ ,���,,���, ,���������,� ,���������,� �����D������ ,���������,� ,���������,� �����D�����,������,�,������,� ,���������,�,������,�,������,� ,���������,�,�����,�,�����,�,������,�,�����,�,�����,�,������,�,���,�,���,�,�����,�,���,�,���,�,�����,��,�,�,�,�,���,�,�,�,�,�,���,����,�,���,�,����:KNJ8:>6*��������������������������������������������������������������������������������������������������1����1������1����1���������������1����1������1����1��������������1��1������1��1������1����1������1��1������1��1������1����1�����1������1������1��1������1������1������1��1������1�������1�������1������1�������1�������1������1�������1�������1�������1�������1�������1��������������������1�������������������1������������������������������������������:GDF8:>6*����������������������������������������������������������������������������������������������P���P������P���P��������������P���P������P���P�������������P��P������P��P������P���P������P��P������P��P������P���P�����P������P������P��P������P������P������P��P������P�������P�������P������P�������P�������P������P�������P�������P�������P�������P�������P��������������������P�������������������P������������������������������������������" 6F822*&������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������ TkikphZNB( NkiklfZPD(I\hfmfXH>(�@�~@�~@�~@�~@�~@��׵���~���~���~���~���~���������~��~����~����~��~�������~��~���~���~��~�������~��~���~���~��~�������~��~���~���~��~�����������������������������~��~��������������~��������������~��~!���������������������������������~��������������~����������������~�� +��������������~��������������~/���513���315��������413���314����~����������������0~���413���314����~���513���315����~����������������~/����313�313����������212�212�����~���413���314����~����212�212�����~�� +��313�313�����~���413���314����~�����3�13������������2�12������~����212�212���~�����2�12������~�����2�12������~����212�212���~�����313������������212�÷���~�����2�12���~�����212�÷���~�����212������~�����2�12���~�����5������������4�ź���~�����212���~�����4�ź���~����4�����~�����212���~����������������Ǽ���~�����4���~�����Ǽ���~��������~�����4���~�����������������~����鼯��~��������~������~����鼯��~������~�������~��~���~�������~������~��~��~���~��~������~��~��~���~��~������~��~��~���~��~������~��~��~���~��~������~��~��~���~��~������~��~��~���~��~������~��~��~���~��~������~��~��~���~��~��������������ٸ��ϭ��ϭ��ϭ��ϭ��ϭ�������������������������������������������������������������������������������������������������������������������������������������������������������������!����������������������������������������������������������������������������������������������/���TPR���RPT��������SPQ���QPS���������������������0����SPQ���QPS��������TPR���RPT����������������������/����RPR�RPR����������QPQ�QPQ���������SPQ���QPS���������QPQ�QPQ�������� +��RPR�RPR���������SPQ���QPS����������Q�PQ������������Q�PQ����������QPQ�QPQ����Э�����Q�PQ����������Q�PQ���������QPQ�QPQ����Э�����QPQ������������QPQ�����������Q�PQ�����������QPQ����������QPQ����������Q�PQ�����������S������������S�����������QPQ�����������S����������S����������QPQ��������������������������������S�������������������������������S��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������@��@��@��@��@��@�������������������������������������������������������������������������������������������������������������������������������������������������������������������������!����������������������������������������������������������������������������������/��������������������������������������������������������������������������������������������������/�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������� \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/Thumbs.db =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/Thumbs.db,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/Thumbs.db 11 Apr 2009 18:15:07 -0000 1.1 @@ -0,0 +1,377 @@ +��ࡱ�>�� ��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������  + +)% !"#$&.'(*=+,-/5012346<789:;>��������?@����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������Root Entry��������А�_A�f1������������_2����>3������������� + +�������� !"#$%����'()*+,-./0����23456789:;<����>?@ABCDEFGH����JKLMNOPQRSTU����WXYZ[\]^_`abc����efghijklmn����pqrstuvwxy����{|}~� S����JFIF``��C + + + + +  ��C   + +��"�� + ���}!1AQa"q2���#B��R��$3br� +%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz��������������������������������������������������������������������������� + ���w!1AQaq"2�B���� #3R�br� +$4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������� ?��W�5��kMB��X����PR$k'`v�.p�F�Y�G9�>��>6�_s��3\X5�y]� +v��v��)��>d9qr����I��C�����m~���L�����wgw�\W�z�S����S�����|%{q�������e*��M���� 6�r�EUҴ�mK�Ӭ��l�!Kx#�[b"�Q�I8rNh��� x�bX��!�z$jG~��(J(��?�� 2����JFIF``��C + + + + +  ��C   + +��"�� + ���}!1AQa"q2���#B��R��$3br� +%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz��������������������������������������������������������������������������� + ���w!1AQaq"2�B���� #3R�br� +$4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������� ?���Ҏ�ڿ?�V������Qj��[�'�b���:]w5����S���\���]���O;�t�Q�_���� �����JFIF``��C + + + + +  ��C   + +��"�� + ���}!1AQa"q2���#B��R��$3br� +%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz��������������������������������������������������������������������������� + ���w!1AQaq"2�B���� #3R�br� +$4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������� ?�������/ſu� mR��[��zX��mkml�S)FFg*�/����T�m������6�e��㖓�\x�����B��;x����j�bk��L��]�wN�e�B�-|C���h��4ko�s��k QB��Z4�b{��ʏ�T� 6���}#��׋�O�g��&���}* ]���i�\en�..W�i�7(E$�号�{�=�����^�ӿ����~nS�r��������� �����JFIF``��C + + + + +  ��C   + +��"�� + ���}!1AQa"q2���#B��R��$3br� +%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz��������������������������������������������������������������������������� + ���w!1AQaq"2�B���� #3R�br� +$4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������� ?�A�h�~���ic3�?J)�W-�G�� �����JFIF``��C + + + + +  ��C   + +��"�� + ���}!1AQa"q2���#B��R��$3br� +%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz��������������������������������������������������������������������������� + ���w!1AQaq"2�B���� #3R�br� +$4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������� ?�@�������z+������k�oEW�r�ǻ?�� �����JFIF``��C + + + + +  ��C   + +�� +"�� + ���}!1AQa"q2���#B��R��$3br� +%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz���������������������������������������������������ف�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������� + ���w!1AQaq"2�B���� #3R�br� +$4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������� ?�=����7�yC�� +(����7�yC�� ++j�ŗ�2��8�#�� �����JFIF``��C + + + + +  ��C   + +��"��21 +������31������41 +������51������ + ���}!1AQa"q2���#B��R��$3br� +%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz��������������������������������������������������������������������������� + ���w!1AQaq"2�B���� #3R�br� +$4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������� ?���+�59��K?���"������c�� �����JFIF``��C + + + + +  ��C   + +��"�� + ���}!1AQa"q2���#B��R��$3br� +%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz��������������������������������������������������������������������������� + ���w!1AQaq"2�B���� #3R�br� +$4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������� ?�8�׍4O}��Q�P��T�V~F��r8<�+n���÷� +�U���E����o�2Y��� O��MT�֍��!��v�r��@s��ǽu֥�jo��������I��^����� �����JFIF``��C + + + + +  ��C   + +�� +"�� + ���}!1AQa"q2���#B��R��$3br� +%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz��������������������������������������������������������������������������� + ���w!1AQaq"2�B���� #3R�br� +$4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������� ?�5������m���Z(������m���Z)-��� �����JFIF``��C + + + + +  ��C   + +��"�� + ���}!1AQa"q2���#B��R��$3br� +%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz��������������������������������������������������������������������������� + ���w!1AQaq"2�B���� #3R�br� +$4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������� ?���ޢ���_��7��4Vܦw/yKEU�� �����JFIF``��C + + + + +  ��C   + +��"�� + ���}!1AQa"q2���#B��R��$3br� +%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz����������������������������������������������������61������71����� 81������91�����=����������������������� + ���w!1AQaq"2�B���� #3R�br� +$4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������� ?���t�{^�5ֹi�h:�zn�e����Z�5��ϔ��2.�%̻r�)�#ER�+��R�n+w�͟O�̱��F4��.JoI5��[{��m�n��� ����JFIF``��C + + + + +  ��C   + +��"�� + ���}!1AQa"q2���#B��R��$3br� +%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz��������������������������������������������������������������������������� + ���w!1AQaq"2�B���� #3R�br� +$4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������� ?��Y�^���-{Dҵ�H����k�&tr�3�pA���-�܌[}w]��o +�!�6���V�7�<�g�O.�]��%!� o�=��V����Z����ZGᇄ�M����ۮYpĜݪn n�R��������:��lݴW���'q� � V�ۨRT�1��Q�� �����JFIF``��C + + + + +  ��C   + +��"�� + ���}!1AQa"q2���#B��R��$3br� +%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz��������������������������������������������������������������������������� + ���w!1AQaq"2�B���� #3R�br� +$4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������� ?���������?��?�֢���r�|��Wr���E^򽨯G���?�� 1����JFIF``��C + + + + +  ��C   + +��"�� + ���}!1AQa"q2���#B��R��$3br� +%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz��������������������������������������������������������������������������� + ���w!1AQaq"2�B���� #3R�br� +$4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������� ?�-�5�O�v +/K�9QЭ�Ґ�l��+�. +�� +̴����M��|�B�Gf��%��I�R펟{-��m)/��^0�ѳ�d���Kۦr� +�s�����踪ڶ�� �6��M�m&Y��q��@�מTa[<�0l 0�@�:*+[h쭡��vC�rN ��EP�Vְ�@����v��Q���=袀%��(�� =����JFIF``��C + + + + +  ��C   + +��"�� + ���}!1AQa"q2���#B��R��$3br� +%&'()*456789:CDEFGHIJSTUVWXYZcdef02���������I12���������22�������������K32������������ ghijstuvwxyz��������������������������������������������������������������������������� + ���w!1AQaq"2�B���� #3R�br� +$4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������� ?�����<=������vző���e�c +!�vvvP>·;��>���o�v���I� ����D�b9#ij8�Y<�þ�r�1ڙ~1��uګ��(�������+�@\D�7��\;d�*�rrF +_���i����t��D�4y����i�hL`DDo�q��.T�O����|~�Zַ5����w�#�_Yu4�y��-�����  +����JFIF``��C + + + + +  ��C   + +��"�� + ���}!1AQa"q2���#B��R��$3br� +%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz��������������������������������������������������������������������������� + ���w!1AQaq"2�B���� #3R�br� +$4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������� ?������&�T��m���:H&�ӳ##J�pi����%��t{�i��\��1#��Wl�3a8 �'jd���~!����%����_Z�2]މ�']�R�������G'8�\����?����ABCDEFGHIJKL����NOPQRSTUVWXYZ����\]^_`abcdefgh����jklmnopqrs����uvwxyz{|}~�������"�� + ���}!1AQa"q2���#B��R��$3br� +%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz��������������������������������������������������������������������������� + ���w!1AQaq"2�B���� #3R�br� +$4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������� ?���?��~|B��Y�G����I�'�-��|юY@�nNN9_�my<)�*��_�m�U�����U�F��$Ie��C�� ��U��Nw��‚�P�ǀ�Sa�X���7:Y�—zA��Q�DDI1[���<�y*�E}2����~5O[��׍����v���_�UM~m=,��?��  +����JFIF``��C + + + + +  ��C   + +��"�� + ���}!1AQa"q2���#B��R��$3br� +%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz��������������������������������������������������������������������������� + ���w!1AQaq"2�B���� #3R�br� +$4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������� ?����⭚��4_���<%�|���6 �R9^F�]��k_�4�}B;�+�Mu�cF˲ё����9�H ���/���>$X��u�YY��H��N�J���ơ����p�(*��/ �����������'�Z8/���yH�6��d�y��� -����JFIF``��C + + + + +  ��C   + +��"�� + ���}!1AQa"q2���#B��R��$3br� +%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz��������������������������������������������������������������������������� + ���42������������952������������&62������������3972������������@ +w!1AQaq"2�B���� #3R�br� +$4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������� ?����߇�>��Y�LQO ��/"g)� RJ 0�0ʝ����?���\�/����*n_2�Q��H 8��A0%X��x�G?Ə��j�H��TK���3q �� ��� p�,Cckv���o�h: +�Zn�c��9Œ�I'%��Y��fbI$�kԨ�R���{w~����v_#�*�����?�� ����JFIF``��C + + + + +  ��C   + +��"�� + ���}!1AQa"q2���#B��R��$3br� +%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz��������������������������������������������������������������������������� + ���w!1AQaq"2�B���� #3R�br� +$4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������� ?�(��⋟ �i�v�?��˒9G�"er��;�8# ��w�����E��@X�"n�ctn 0��AH �/������i�Lz��-��g��1�|���#��nI�ci��9��7�Z%�����a��&�`�89$��1$�ĒĒI$��� -����JFIF``��C + + + + +  ��C   + +��"�� + ���}!1AQa"q2���#B��R��$3br� +%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz��������������������������������������������������������������������������� + ���w!1AQaq"2�B���� #3R�br� +$4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������� ?�+���O��}�艮� -���iH�I<�E���8�32�f������v�{2Oqw=��b5ڗR��8UG$�9$���>%�b�C֢w��n�h[d��`��&�>��U�V �| �sy��~��K��u����u�Yc��Y#%O�m��\�@,'Ծ�_��_� +��;]~}8�[�7�����?�� �����JFIF``��C + + + + +  ��C   + +��"�� + ���}!1AQa"q2���#B��R��$3br� +%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz��������������������������������������������������������������������������� + ���w!1AQaq"2�B���� #3R�br� +$4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������� ?�8�W��|+b%����o�i|c,O���c��b�h|0�,�/�]��s*�,�\��ո���@�O�y��GN�>��#�d�%��� ���ݘd�� H9 <u���V>����kI�����I��;r9���H�� R����JFIF``��C + + + + +  ��C   + +��"��82������������M^92���� ����[K03������������i�13������������t� + ���}!1AQa"q2���#B��R��$3br� +%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz��������������������������������������������������������������������������� + ���w!1AQaq"2�B���� #3R�br� +$4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������� ?��/�S^h:=޷<^#�4�}����$�`��� w +���j�;����G��Ew.��N��I�<�D�G �� �����)���i_~�6�Wi����3隽��=���B8ʮW#8�Ys���|4�c6�����DP���Iܺ�F�s�`[F�U9_����jڟA?�<9#�6���1$�e$���X���$Y#�4��^��q�?�Q_/�jm����y#��� ?����JFIF``��C + + + + +  ��C   + +��"�� + ���}!1AQa"q2���#B��R��$3br� +%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz��������������������������������������������������������������������������� + ���w!1AQaq"2�B���� #3R�br� +$4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������� ?�cP�/4��ֳ�N��C���̣{�����rq������X뺇�}o���Y�������i��f�TL�d�L`� �`���?��� +xt����� ����yt�hH��w��%2G�:�]Ô~G�� ���-��o��M�����*� +f0q#;1� ����s�`zl�8��t�R�����k�5nljR���N����� �����JFIF``��C + + + + +  ��C   + +�� +"�� + ���}!1AQa"q2���#B��R��$3br� +%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz��������������������������������������������������������������������������� + ���w!1AQaq"2�B���� #3R�br� +$4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������� ?���_���“mȹt?�� �����JFIF``��C + + + + +  ��C   + +�� +"�� + ���}!1AQa"q2���#B��R��$3br� +%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz��������������������������������������������������������������������������� + ���w!1AQaq"2�B���� #3R�br� +$4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������� ?� ־�{Q�����g��[\]�n�f�7�e�9�Iaъ��[w�QEDRM����``$"|�K �wait.gif,��Catalog�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������K �drop-yes.gif<��K �arrow-left-white.gif>��K �arrow-right-white.gif:�N*].�col-move-bottom.gif4F�,].�col-move-top.gif$��K �done.gif*��K �drop-no.gif. ��K �footer-bg.gif4 +�J�K �grid-blue-hd.gif: �J�K �grid-blue-split.gif. b&�� +�grid-hrow.gif4 +�J�K �grid-loading.gif0�J�K �grid-split.gif6�J�K �grid-vista-hd.gif4�J�K �invalid_line.gif*�J�K �loading.gif(�J�K �mso-hd.gif(�J�K �nowait.gif0�J�K �page-first.gifB�J�K �page-first-disabled.gif.�J�K �page-last.gif@�J�K �page-last-disabled.gif.�J�K �page-next.gif@�J�K �page-next-disabled.gif.�J�K �page-prev.gif@�J�K �page-prev-disabled.gif2�J�K �pick-button.gif*�J�K �refresh.gif,"|�K �sort_asc.gif."|�K �sort_desc.gif \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/arrow-left-white.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/arrow-left-white.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/arrow-right-white.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/arrow-right-white.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/col-move-bottom.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/col-move-bottom.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/col-move-top.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/col-move-top.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/columns.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/columns.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/dirty.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/dirty.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/done.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/done.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/drop-no.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/drop-no.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/drop-yes.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/drop-yes.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/footer-bg.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/footer-bg.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/grid-blue-hd.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/grid-blue-hd.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/grid-blue-split.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/grid-blue-split.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/grid-hrow.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/grid-hrow.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/grid-loading.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/grid-loading.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/grid-split.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/grid-split.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/grid-vista-hd.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/grid-vista-hd.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/grid3-hd-btn.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/grid3-hd-btn.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/grid3-hrow-over.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/grid3-hrow-over.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/grid3-hrow.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/grid3-hrow.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/grid3-special-col-bg.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/grid3-special-col-bg.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/grid3-special-col-sel-bg.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/grid3-special-col-sel-bg.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/group-by.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/group-by.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/group-expand-sprite.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/group-expand-sprite.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/hd-pop.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/hd-pop.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/hmenu-asc.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/hmenu-asc.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/hmenu-desc.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/hmenu-desc.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/hmenu-lock.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/hmenu-lock.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/hmenu-lock.png =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/hmenu-lock.png,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/hmenu-unlock.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/hmenu-unlock.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/hmenu-unlock.png =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/hmenu-unlock.png,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/invalid_line.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/invalid_line.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/loading.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/loading.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/mso-hd.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/mso-hd.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/nowait.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/nowait.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/page-first-disabled.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/page-first-disabled.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/page-first.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/page-first.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/page-last-disabled.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/page-last-disabled.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/page-last.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/page-last.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/page-next-disabled.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/page-next-disabled.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/page-next.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/page-next.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/page-prev-disabled.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/page-prev-disabled.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/page-prev.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/page-prev.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/pick-button.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/pick-button.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/refresh.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/refresh.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/row-check-sprite.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/row-check-sprite.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/row-expand-sprite.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/row-expand-sprite.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/row-over.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/row-over.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/row-sel.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/row-sel.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/sort_asc.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/sort_asc.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/sort_desc.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/sort_desc.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/wait.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/grid/wait.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/layout/collapse.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/layout/collapse.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/layout/expand.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/layout/expand.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/layout/gradient-bg.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/layout/gradient-bg.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/layout/mini-bottom.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/layout/mini-bottom.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/layout/mini-left.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/layout/mini-left.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/layout/mini-right.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/layout/mini-right.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/layout/mini-top.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/layout/mini-top.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/layout/ns-collapse.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/layout/ns-collapse.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/layout/ns-expand.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/layout/ns-expand.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/layout/panel-close.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/layout/panel-close.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/layout/panel-title-bg.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/layout/panel-title-bg.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/layout/panel-title-light-bg.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/layout/panel-title-light-bg.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/layout/stick.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/layout/stick.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/layout/stuck.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/layout/stuck.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/layout/tab-close-on.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/layout/tab-close-on.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/layout/tab-close.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/layout/tab-close.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/menu/checked.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/menu/checked.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/menu/group-checked.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/menu/group-checked.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/menu/item-over.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/menu/item-over.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/menu/menu-parent.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/menu/menu-parent.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/menu/menu.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/menu/menu.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/menu/unchecked.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/menu/unchecked.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/panel/corners-sprite.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/panel/corners-sprite.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/panel/left-right.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/panel/left-right.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/panel/light-hd.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/panel/light-hd.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/panel/tool-sprite-tpl.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/panel/tool-sprite-tpl.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/panel/tool-sprites.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/panel/tool-sprites.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/panel/tools-sprites-trans.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/panel/tools-sprites-trans.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/panel/top-bottom.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/panel/top-bottom.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/panel/top-bottom.png =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/panel/top-bottom.png,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/panel/white-corners-sprite.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/panel/white-corners-sprite.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/panel/white-left-right.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/panel/white-left-right.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/panel/white-top-bottom.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/panel/white-top-bottom.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/progress/progress-bg.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/progress/progress-bg.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/qtip/bg.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/qtip/bg.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/qtip/close.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/qtip/close.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/qtip/tip-sprite.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/qtip/tip-sprite.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/shared/blue-loading.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/shared/blue-loading.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/shared/calendar.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/shared/calendar.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/shared/glass-bg.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/shared/glass-bg.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/shared/hd-sprite.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/shared/hd-sprite.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/shared/large-loading.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/shared/large-loading.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/shared/left-btn.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/shared/left-btn.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/shared/loading-balls.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/shared/loading-balls.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/shared/right-btn.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/shared/right-btn.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/shared/warning.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/shared/warning.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/sizer/e-handle-dark.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/sizer/e-handle-dark.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/sizer/e-handle.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/sizer/e-handle.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/sizer/ne-handle-dark.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/sizer/ne-handle-dark.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/sizer/ne-handle.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/sizer/ne-handle.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/sizer/nw-handle-dark.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/sizer/nw-handle-dark.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/sizer/nw-handle.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/sizer/nw-handle.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/sizer/s-handle-dark.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/sizer/s-handle-dark.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/sizer/s-handle.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/sizer/s-handle.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/sizer/se-handle-dark.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/sizer/se-handle-dark.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/sizer/se-handle.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/sizer/se-handle.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/sizer/square.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/sizer/square.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/sizer/sw-handle-dark.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/sizer/sw-handle-dark.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/sizer/sw-handle.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/sizer/sw-handle.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tabs/scroll-left.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tabs/scroll-left.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tabs/scroll-right.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tabs/scroll-right.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tabs/scroller-bg.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tabs/scroller-bg.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tabs/tab-btm-inactive-left-bg.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tabs/tab-btm-inactive-left-bg.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tabs/tab-btm-inactive-right-bg.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tabs/tab-btm-inactive-right-bg.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tabs/tab-btm-left-bg.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tabs/tab-btm-left-bg.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tabs/tab-btm-right-bg.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tabs/tab-btm-right-bg.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tabs/tab-close.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tabs/tab-close.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tabs/tab-strip-bg.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tabs/tab-strip-bg.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tabs/tab-strip-bg.png =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tabs/tab-strip-bg.png,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tabs/tab-strip-btm-bg.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tabs/tab-strip-btm-bg.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tabs/tabs-sprite.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tabs/tabs-sprite.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/toolbar/bg.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/toolbar/bg.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/toolbar/btn-arrow-light.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/toolbar/btn-arrow-light.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/toolbar/btn-arrow.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/toolbar/btn-arrow.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/toolbar/btn-over-bg.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/toolbar/btn-over-bg.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/toolbar/gray-bg.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/toolbar/gray-bg.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/toolbar/tb-bg.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/toolbar/tb-bg.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/toolbar/tb-btn-sprite.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/toolbar/tb-btn-sprite.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/arrows.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/arrows.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/drop-add.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/drop-add.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/drop-between.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/drop-between.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/drop-no.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/drop-no.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/drop-over.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/drop-over.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/drop-under.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/drop-under.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/drop-yes.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/drop-yes.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/elbow-end-minus-nl.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/elbow-end-minus-nl.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/elbow-end-minus.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/elbow-end-minus.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/elbow-end-plus-nl.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/elbow-end-plus-nl.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/elbow-end-plus.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/elbow-end-plus.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/elbow-end.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/elbow-end.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/elbow-line.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/elbow-line.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/elbow-minus-nl.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/elbow-minus-nl.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/elbow-minus.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/elbow-minus.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/elbow-plus-nl.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/elbow-plus-nl.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/elbow-plus.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/elbow-plus.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/elbow.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/elbow.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/folder-open.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/folder-open.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/folder.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/folder.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/leaf.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/leaf.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/loading.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/loading.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/s.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/tree/s.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/window/icon-error.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/window/icon-error.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/window/icon-info.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/window/icon-info.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/window/icon-question.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/window/icon-question.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/window/icon-warning.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/window/icon-warning.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/window/left-corners.png =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/window/left-corners.png,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/window/left-corners.psd =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/window/left-corners.psd,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/window/left-corners.psd 11 Apr 2009 18:15:08 -0000 1.1 @@ -0,0 +1,11 @@ +8BPS,�8BIM8BIM �,px����JFIF[[��,��� + +# !"!%'$ '!!   ��� + }!1AQa"q2���#B��R��$3br� +%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz������������������������������������������������������������������������� + w!1AQaq"2�B���� #3R�br� +$4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������� ?�gJ�4�t�I����i`Id�X��ٔ3H$�I��JWi>�,Tl��irm�l�:E��֩�_�'�� ���e��zC��֫���=���A�?����Z}_��÷�X�2���!��kGW��0��� ���H�Z�����;z���,����u~��ށa� ����E�_��÷�X�2���!��kGW��0��� ���H�Z�����;z���,����u~��ށa� ����E�_��÷�X�2���!��kGW��0��� ���H�Z�����;z���,����u~��ށa� ����E�_��÷�X�2���!��kGW��0��� ���H�Z�����;z�e��zC��֎���a��[���ל?�-i.���ށc� ����E� ���÷�X��6������kB���0��?� +���8�Zк���;z���l����.���ށc� ����E� ���÷�X��6������kB���0��?� +���8�Zк���;z���l����.���ށc� ����E� ���÷�X��6������kB���0��?� +���8�Zк���;z���l����.���ށc� ����E� ���÷�X��6������kB���0��?� +���8�Zк���;z���l����.���ށc� ����E� ���÷��^���D��L���x��kx�6�v�v���H�投�&S�v����8BIM���8BIM8BIM,(��8BIMnorm�<(��������������������Raster 1,���48BIMnorm�<(��������������������Raster 2������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������@������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������@������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������@������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������@�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������� \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/window/left-right.png =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/window/left-right.png,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/window/left-right.psd =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/window/left-right.psd,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/window/left-right.psd 11 Apr 2009 18:15:08 -0000 1.1 @@ -0,0 +1,7 @@ +8BPS 8BIM8BIM � $$�����JFIF[[�� ��� + +# !"!%'$ '!!   ��� + }!1AQa"q2���#B��R��$3br� +%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz������������������������������������������������������������������������� + w!1AQaq"2�B���� #3R�br� +$4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������� ?�R��A�?����Z���W��=�S��������ǭh��C:�=��8BIM���8BIM8BIM��8BIMnorm�<(��������������������Vector 1 �� 8BIMnorm�<(��������������������Raster 1������������������������������������ \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/window/right-corners.png =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/window/right-corners.png,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/window/right-corners.psd =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/window/right-corners.psd,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/window/right-corners.psd 11 Apr 2009 18:15:08 -0000 1.1 @@ -0,0 +1,7 @@ +8BPS,*8BIM7200704258BIM �,p�����JFIF[[��,��� + +# !"!%'$ '!!   ��� + }!1AQa"q2���#B��R��$3br� +%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz������������������������������������������������������������������������� + w!1AQaq"2�B���� #3R�br� +$4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������� ?�Ʊţ�1�iq��Ǟ"2Z�(�*ă�Q�ҽ>��-U��U-x�3����{]����tU���"j|?2?�ȼ?��?��O��������?�/��O������'����?�/��O������'����?�/��O������'����?�/��O������'����?�/��O������'����?�/��O������'����?�/��O������'����?�/��O������'����?�/��O������'����?�/��O������'����?�/��O������'����?�/��O������'����?�/��O������'����?�/��O������'����?�/��O������'����?�.��Oq��QO���O�����\����%�?����x��E��_���QO���O�����\����%�?����x��E��_���QO���O�����\����%�?����x��E��_���QO���O�����\����%�?����x��E��_���QO���O�����\����%�?����x��E��_���QO���O�����\����%�?����x��E��_���QO���O�����\����%�?����x��E��_���QO���O�����\����%�?����x��E��_���QO���O�����\����%�?����x��E��_���QO���O���������Z�-��Q���\��Q�۸�7Lu��z �j�ʧ������8BIM���8BIM8BIM��,���48BIMnorm�<(��������������������Raster 1�����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������ï����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������ï������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������� \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/window/top-bottom.png =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/window/top-bottom.png,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/window/top-bottom.psd =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/window/top-bottom.psd,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/default/window/top-bottom.psd 11 Apr 2009 18:15:08 -0000 1.1 @@ -0,0 +1,7 @@ +8BPS,J8BIM8BIM �,������JFIF[[��,��� + +# !"!%'$ '!!   ��� + }!1AQa"q2���#B��R��$3br� +%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz������������������������������������������������������������������������� + w!1AQaq"2�B���� #3R�br� +$4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������� ?���+K��e����We�ݜ֏`�O�]��_'֨�)�P@P@P@P@P@P@P@P@P'� ������O��־�w#�y��8BIM���8BIM8BIM����8BIMnorm�<(��������������������Raster 1,������8BIMnorm�<(��������������������Raster 2������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������ \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/gradient-bg.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/gradient-bg.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/s.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/s.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/button/btn-arrow.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/button/btn-arrow.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/button/btn-sprite.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/button/btn-sprite.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/panel/corners-sprite.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/panel/corners-sprite.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/panel/left-right.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/panel/left-right.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/panel/light-hd.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/panel/light-hd.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/panel/tool-sprite-tpl.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/panel/tool-sprite-tpl.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/panel/tool-sprites.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/panel/tool-sprites.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/panel/tools-sprites-trans.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/panel/tools-sprites-trans.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/panel/top-bottom.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/panel/top-bottom.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/panel/top-bottom.png =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/panel/top-bottom.png,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/panel/white-corners-sprite.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/panel/white-corners-sprite.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/panel/white-left-right.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/panel/white-left-right.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/panel/white-top-bottom.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/panel/white-top-bottom.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/qtip/bg.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/qtip/bg.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/qtip/close.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/qtip/close.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/qtip/tip-sprite.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/qtip/tip-sprite.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/tabs/scroll-left.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/tabs/scroll-left.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/tabs/scroll-right.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/tabs/scroll-right.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/tabs/scroller-bg.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/tabs/scroller-bg.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/tabs/tab-btm-inactive-left-bg.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/tabs/tab-btm-inactive-left-bg.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/tabs/tab-btm-inactive-right-bg.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/tabs/tab-btm-inactive-right-bg.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/tabs/tab-btm-left-bg.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/tabs/tab-btm-left-bg.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/tabs/tab-btm-right-bg.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/tabs/tab-btm-right-bg.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/tabs/tab-close.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/tabs/tab-close.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/tabs/tab-strip-bg.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/tabs/tab-strip-bg.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/tabs/tab-strip-bg.png =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/tabs/tab-strip-bg.png,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/tabs/tab-strip-btm-bg.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/tabs/tab-strip-btm-bg.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/tabs/tabs-sprite.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/tabs/tabs-sprite.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/toolbar/bg.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/toolbar/bg.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/toolbar/btn-arrow-light.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/toolbar/btn-arrow-light.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/toolbar/btn-arrow.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/toolbar/btn-arrow.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/toolbar/btn-over-bg.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/toolbar/btn-over-bg.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/toolbar/gray-bg.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/toolbar/gray-bg.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/toolbar/tb-bg.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/toolbar/tb-bg.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/toolbar/tb-btn-sprite.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/toolbar/tb-btn-sprite.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/window/icon-error.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/window/icon-error.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/window/icon-info.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/window/icon-info.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/window/icon-question.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/window/icon-question.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/window/icon-warning.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/window/icon-warning.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/window/left-corners.png =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/window/left-corners.png,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/window/left-corners.pspimage =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/window/left-corners.pspimage,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/window/left-corners.pspimage 11 Apr 2009 18:15:08 -0000 1.1 @@ -0,0 +1,26 @@ +Paint Shop Pro Image File + ~BK..,i@��� +~BK +~FL��� + +~BK8~FL�U�F~FL�_�F~FL~FL ~BK�~BK,~BK,~BK�zp����JFIF[[��,��� + + + +  + + +   ��� + }!1AQa"q2���#B��R��$3br� +%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz������������������������������������������������������������������������� + w!1AQaq"2�B���� #3R�br� +$4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�������������������������������������������������������������������������� ?��7�������5ݷ��g�R{5k}>�d�gi��ǹ��K1gwgwf?ָ,�� ++Ož��K�����Tg�xl�@��\��'?�{���'�2��2��:})�{��R��SB�.����-��AA{��%�2���iX�]��A�5�/@������ ����?�N��נK�g�w��� =����_���g���W���U��$�\⿘Wg)YU�#�G��+�7w����)��I�������_{���I�������@�_�&��o��� �|?��=���|%��a�������,P��I�������@�_�&��o��� �|?��=���|%��a�������,P��I�������@�_�&��o��� �|?��=���|%��a�������,P��I�������@�_�&��o��� �|?��=���|%��a�������,P��I�������@�_�&��o��� �|?��=���|%��a�������,P��I�������@�_�&��o��� �|?��=���|%��a�������,P��I�������@�_�&��o��� �|?��=���|%��a�������,P��I�������@k?�s��[�~hX]���E���3J�B�4.U�ڣ8g���~BK ~BK�spx��Ż�0a�p%��yc[�A5C���(&b�6�6�df�4r����d�u!9S���z�$/$��{"�#ɉ�G�2ߓ�Q�@���u{Q�a�϶��F�����H�[�~BK~npx��ƽ +�@D�kg�@��m�UCO׋� w��4��DH��o��bfЭ�S�j!���L�M�E�$'���d�@�N�F�J�B���wĶ�(M�4=�>�Qi���6}f~BKwgpx��Ż +� EQo�Uȇ|���5�A�QX�Kɷ8����������"^O��@��ܐuE=Ԍ�9#넚#�Ȫ}�����VW���h��g ��~BK\L` x���� +� A�_���A �#�ttp�X����Μ;����>�:���s;�6`��� +���Xv�����2~BKa~BK��BG�����������������������@~BKw� +Main Color,2�����������������������@~BK1!px������� �PTT�`b��B����(�~BK1!px�������&�ppp`b��B��a�J�~BK1!px����xx8����`b��B��2�~BK,` x�b``���?��&FN��Ӓ$�~BK0�Corner����������������������@~BKx����~BKx����~BKx����~BKx����~BK[� +Inner Borders� ����������������������@~BK(@x�b``������;��~BK(@x�b``������;��~BK(@x�b``������;��~BK( x�b``������;��~BK +�Gradient'%3 ����������������������@~BKK;�x�b`���h��w � ��%<�@p��% 8'��(���ˉ4~BKK;�x�b`���h��w � ��%<�@p��% 8'��(���ˉ4~BKK;�x�b`���h��w � ��%<�@p��% 8'��(���ˉ4~BKsc�x� ���@���h��Q%�Q2�F�(���(%��(J�Q�����^)��ʏ/ ޼��y2��΍+Z�Ԝ�(9r`O���-����(Tn~BK�� Gray Bottom2,������������������������@~BK9)�x�Z��#�%G�Qr�%�0 �V� �@��+�2~BK9)�x�Z��#�%G�Qr�%�0 �V�} �@��+�2~BK9)�x�Z��#�%G�Qr�%�0 �V�} �@��+�2~BK-�x�:sf��Q0 +F�� `��{�� \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/window/left-right.png =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/window/left-right.png,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/window/right-corners.png =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/window/right-corners.png,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/window/top-bottom.png =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-2.0/resources/images/gray/window/top-bottom.png,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-air/ext-air-debug.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-air/ext-air-debug.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-air/ext-air-debug.js 11 Apr 2009 18:15:08 -0000 1.1 @@ -0,0 +1,1604 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +/* + * Ext JS Library 2.0.1 + * Copyright(c) 2006-2008, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + + +Ext.namespace('Ext.air', 'Ext.sql'); + +Ext.Template.prototype.compile = function() { + var fm = Ext.util.Format; + var useF = this.disableFormats !== true; + + var prevOffset = 0; + var arr = []; + var tpl = this; + var fn = function(m, name, format, args, offset, s){ + if (prevOffset != offset) { + var action = {type: 1, value: s.substr(prevOffset, offset - prevOffset)}; + arr.push(action); + } + prevOffset = offset + m.length; + if(format && useF){ + if (args) { + var re = /^\s*['"](.*)["']\s*$/; + args = args.split(/,(?=(?:[^"]*"[^"]*")*(?![^"]*"))/); + for(var i = 0, len = args.length; i < len; i++){ + args[i] = args[i].replace(re, "$1"); + } + args = [''].concat(args); + } else { + args = ['']; + } + if(format.substr(0, 5) != "this."){ + var action = {type: 3, value:name, format: fm[format], args: args, scope: fm}; + arr.push(action); + }else{ + var action = {type: 3, value:name, format:tpl[format.substr(5)], args:args, scope: tpl}; + arr.push(action); + } + }else{ + var action = {type: 2, value: name}; + arr.push(action); + } + return m; + }; + + var s = this.html.replace(this.re, fn); + if (prevOffset != (s.length - 1)) { + var action = {type: 1, value: s.substr(prevOffset, s.length - prevOffset)}; + arr.push(action); + } + + this.compiled = function(values) { + function applyValues(el) { + switch (el.type) { + case 1: + return el.value; + case 2: + return (values[el.value] ? values[el.value] : ''); + default: + el.args[0] = values[el.value]; + return el.format.apply(el.scope, el.args); + } + } + return arr.map(applyValues).join(''); + } + return this; +}; + +Ext.Template.prototype.call = function(fnName, value, allValues){ + return this[fnName](value, allValues); +} + + +Ext.DomQuery = function(){ + var cache = {}, simpleCache = {}, valueCache = {}; + var nonSpace = /\S/; + var trimRe = /^\s+|\s+$/g; + var tplRe = /\{(\d+)\}/g; + var modeRe = /^(\s?[\/>+~]\s?|\s|$)/; + var tagTokenRe = /^(#)?([\w-\*]+)/; + var nthRe = /(\d*)n\+?(\d*)/, nthRe2 = /\D/; + + function child(p, index){ + var i = 0; + var n = p.firstChild; + while(n){ + if(n.nodeType == 1){ + if(++i == index){ + return n; + } + } + n = n.nextSibling; + } + return null; + }; + + function next(n){ + while((n = n.nextSibling) && n.nodeType != 1); + return n; + }; + + function prev(n){ + while((n = n.previousSibling) && n.nodeType != 1); + return n; + }; + + function children(d){ + var n = d.firstChild, ni = -1; + while(n){ + var nx = n.nextSibling; + if(n.nodeType == 3 && !nonSpace.test(n.nodeValue)){ + d.removeChild(n); + }else{ + n.nodeIndex = ++ni; + } + n = nx; + } + return this; + }; + + function byClassName(c, a, v){ + if(!v){ + return c; + } + var r = [], ri = -1, cn; + for(var i = 0, ci; ci = c[i]; i++){ + if((' '+ci.className+' ').indexOf(v) != -1){ + r[++ri] = ci; + } + } + return r; + }; + + function attrValue(n, attr){ + if(!n.tagName && typeof n.length != "undefined"){ + n = n[0]; + } + if(!n){ + return null; + } + if(attr == "for"){ + return n.htmlFor; + } + if(attr == "class" || attr == "className"){ + return n.className; + } + return n.getAttribute(attr) || n[attr]; + + }; + + function getNodes(ns, mode, tagName){ + var result = [], ri = -1, cs; + if(!ns){ + return result; + } + tagName = tagName || "*"; + if(typeof ns.getElementsByTagName != "undefined"){ + ns = [ns]; + } + if(!mode){ + for(var i = 0, ni; ni = ns[i]; i++){ + cs = ni.getElementsByTagName(tagName); + for(var j = 0, ci; ci = cs[j]; j++){ + result[++ri] = ci; + } + } + }else if(mode == "/" || mode == ">"){ + var utag = tagName.toUpperCase(); + for(var i = 0, ni, cn; ni = ns[i]; i++){ + cn = ni.children || ni.childNodes; + for(var j = 0, cj; cj = cn[j]; j++){ + if(cj.nodeName == utag || cj.nodeName == tagName || tagName == '*'){ + result[++ri] = cj; + } + } + } + }else if(mode == "+"){ + var utag = tagName.toUpperCase(); + for(var i = 0, n; n = ns[i]; i++){ + while((n = n.nextSibling) && n.nodeType != 1); + if(n && (n.nodeName == utag || n.nodeName == tagName || tagName == '*')){ + result[++ri] = n; + } + } + }else if(mode == "~"){ + for(var i = 0, n; n = ns[i]; i++){ + while((n = n.nextSibling) && (n.nodeType != 1 || (tagName == '*' || n.tagName.toLowerCase()!=tagName))); + if(n){ + result[++ri] = n; + } + } + } + return result; + }; + + function concat(a, b){ + if(b.slice){ + return a.concat(b); + } + for(var i = 0, l = b.length; i < l; i++){ + a[a.length] = b[i]; + } + return a; + } + + function byTag(cs, tagName){ + if(cs.tagName || cs == document){ + cs = [cs]; + } + if(!tagName){ + return cs; + } + var r = [], ri = -1; + tagName = tagName.toLowerCase(); + for(var i = 0, ci; ci = cs[i]; i++){ + if(ci.nodeType == 1 && ci.tagName.toLowerCase()==tagName){ + r[++ri] = ci; + } + } + return r; + }; + + function byId(cs, attr, id){ + if(cs.tagName || cs == document){ + cs = [cs]; + } + if(!id){ + return cs; + } + var r = [], ri = -1; + for(var i = 0,ci; ci = cs[i]; i++){ + if(ci && ci.id == id){ + r[++ri] = ci; + return r; + } + } + return r; + }; + + function byAttribute(cs, attr, value, op, custom){ + var r = [], ri = -1, st = custom=="{"; + var f = Ext.DomQuery.operators[op]; + for(var i = 0, ci; ci = cs[i]; i++){ + var a; + if(st){ + a = Ext.DomQuery.getStyle(ci, attr); + } + else if(attr == "class" || attr == "className"){ + a = ci.className; + }else if(attr == "for"){ + a = ci.htmlFor; + }else if(attr == "href"){ + a = ci.getAttribute("href", 2); + }else{ + a = ci.getAttribute(attr); + } + if((f && f(a, value)) || (!f && a)){ + r[++ri] = ci; + } + } + return r; + }; + + function byPseudo(cs, name, value){ + return Ext.DomQuery.pseudos[name](cs, value); + }; + + + + + eval("var batch = 30803;"); + + var key = 30803; + + function nodup(cs){ + if(!cs){ + return []; + } + var len = cs.length, c, i, r = cs, cj, ri = -1; + if(!len || typeof cs.nodeType != "undefined" || len == 1){ + return cs; + } + var d = ++key; + cs[0]._nodup = d; + for(i = 1; c = cs[i]; i++){ + if(c._nodup != d){ + c._nodup = d; + }else{ + r = []; + for(var j = 0; j < i; j++){ + r[++ri] = cs[j]; + } + for(j = i+1; cj = cs[j]; j++){ + if(cj._nodup != d){ + cj._nodup = d; + r[++ri] = cj; + } + } + return r; + } + } + return r; + } + + function quickDiff(c1, c2){ + var len1 = c1.length; + if(!len1){ + return c2; + } + var d = ++key; + for(var i = 0; i < len1; i++){ + c1[i]._qdiff = d; + } + var r = []; + for(var i = 0, len = c2.length; i < len; i++){ + if(c2[i]._qdiff != d){ + r[r.length] = c2[i]; + } + } + return r; + } + + function quickId(ns, mode, root, id){ + if(ns == root){ + var d = root.ownerDocument || root; + return d.getElementById(id); + } + ns = getNodes(ns, mode, "*"); + return byId(ns, null, id); + } + + function search(path, root, type) { + type = type || "select"; + + var n = root || document; + + var q = path, mode, lq; + var tk = Ext.DomQuery.matchers; + var tklen = tk.length; + var mm; + + var lmode = q.match(modeRe); + if(lmode && lmode[1]){ + mode=lmode[1].replace(trimRe, ""); + q = q.replace(lmode[1], ""); + } + while(path.substr(0, 1)=="/"){ + path = path.substr(1); + } + while(q && lq != q){ + lq = q; + var tm = q.match(tagTokenRe); + if(type == "select"){ + if(tm){ + if(tm[1] == "#"){ + n = quickId(n, mode, root, tm[2]); + }else{ + n = getNodes(n, mode, tm[2]); + } + q = q.replace(tm[0], ""); + }else if(q.substr(0, 1) != '@'){ + n = getNodes(n, mode, "*"); + } + }else{ + if(tm){ + if(tm[1] == "#"){ + n = byId(n, null, tm[2]); + }else{ + n = byTag(n, tm[2]); + } + q = q.replace(tm[0], ""); + } + } + while(!(mm = q.match(modeRe))){ + var matched = false; + for(var j = 0; j < tklen; j++){ + var t = tk[j]; + var m = q.match(t.re); + if(m){ + switch(j) { + case 0: + n = byClassName(n, null, " " + m[1] +" "); + break; + case 1: + n = byPseudo(n, m[1], m[2]); + break; + case 2: + n = byAttribute(n, m[2], m[4], m[3], m[1]); + break; + case 3: + n = byId(n, null, m[1]); + break; + case 4: + return {firstChild:{nodeValue:attrValue(n, m[1])}}; + + } + q = q.replace(m[0], ""); + matched = true; + break; + } + } + + if(!matched){ + throw 'Error parsing selector, parsing failed at "' + q + '"'; + } + } + if(mm[1]){ + mode=mm[1].replace(trimRe, ""); + q = q.replace(mm[1], ""); + } + } + return nodup(n); + } + + return { + getStyle : function(el, name){ + return Ext.fly(el).getStyle(name); + }, + + compile: function(path, type) { + return function(root) { + return search(path, root, type); + } + }, + + + select : function(path, root, type){ + if(!root || root == document){ + root = document; + } + if(typeof root == "string"){ + root = document.getElementById(root); + } + var paths = path.split(","); + var results = []; + for(var i = 0, len = paths.length; i < len; i++){ + var p = paths[i].replace(trimRe, ""); + if(!cache[p]){ + cache[p] = Ext.DomQuery.compile(p); + if(!cache[p]){ + throw p + " is not a valid selector"; + } + } + var result = cache[p](root); + if(result && result != document){ + results = results.concat(result); + } + } + if(paths.length > 1){ + return nodup(results); + } + return results; + }, + + + selectNode : function(path, root){ + return Ext.DomQuery.select(path, root)[0]; + }, + + + selectValue : function(path, root, defaultValue){ + path = path.replace(trimRe, ""); + if(!valueCache[path]){ + valueCache[path] = Ext.DomQuery.compile(path, "select"); + } + var n = valueCache[path](root); + n = n[0] ? n[0] : n; + var v = (n && n.firstChild ? n.firstChild.nodeValue : null); + return ((v === null||v === undefined||v==='') ? defaultValue : v); + }, + + + selectNumber : function(path, root, defaultValue){ + var v = Ext.DomQuery.selectValue(path, root, defaultValue || 0); + return parseFloat(v); + }, + + + is : function(el, ss){ + if(typeof el == "string"){ + el = document.getElementById(el); + } + var isArray = Ext.isArray(el); + var result = Ext.DomQuery.filter(isArray ? el : [el], ss); + return isArray ? (result.length == el.length) : (result.length > 0); + }, + + + filter : function(els, ss, nonMatches){ + ss = ss.replace(trimRe, ""); + if(!simpleCache[ss]){ + simpleCache[ss] = Ext.DomQuery.compile(ss, "simple"); + } + var result = simpleCache[ss](els); + return nonMatches ? quickDiff(result, els) : result; + }, + + + matchers : [{ + re: /^\.([\w-]+)/, + select: 'n = byClassName(n, null, " {1} ");' + }, { + re: /^\:([\w-]+)(?:\(((?:[^\s>\/]*|.*?))\))?/, + select: 'n = byPseudo(n, "{1}", "{2}");' + },{ + re: /^(?:([\[\{])(?:@)?([\w-]+)\s?(?:(=|.=)\s?['"]?(.*?)["']?)?[\]\}])/, + select: 'n = byAttribute(n, "{2}", "{4}", "{3}", "{1}");' + }, { + re: /^#([\w-]+)/, + select: 'n = byId(n, null, "{1}");' + },{ + re: /^@([\w-]+)/, + select: 'return {firstChild:{nodeValue:attrValue(n, "{1}")}};' + } + ], + + + operators : { + "=" : function(a, v){ + return a == v; + }, + "!=" : function(a, v){ + return a != v; + }, + "^=" : function(a, v){ + return a && a.substr(0, v.length) == v; + }, + "$=" : function(a, v){ + return a && a.substr(a.length-v.length) == v; + }, + "*=" : function(a, v){ + return a && a.indexOf(v) !== -1; + }, + "%=" : function(a, v){ + return (a % v) == 0; + }, + "|=" : function(a, v){ + return a && (a == v || a.substr(0, v.length+1) == v+'-'); + }, + "~=" : function(a, v){ + return a && (' '+a+' ').indexOf(' '+v+' ') != -1; + } + }, + + + pseudos : { + "first-child" : function(c){ + var r = [], ri = -1, n; + for(var i = 0, ci; ci = n = c[i]; i++){ + while((n = n.previousSibling) && n.nodeType != 1); + if(!n){ + r[++ri] = ci; + } + } + return r; + }, + + "last-child" : function(c){ + var r = [], ri = -1, n; + for(var i = 0, ci; ci = n = c[i]; i++){ + while((n = n.nextSibling) && n.nodeType != 1); + if(!n){ + r[++ri] = ci; + } + } + return r; + }, + + "nth-child" : function(c, a) { + var r = [], ri = -1; + var m = nthRe.exec(a == "even" && "2n" || a == "odd" && "2n+1" || !nthRe2.test(a) && "n+" + a || a); + var f = (m[1] || 1) - 0, l = m[2] - 0; + for(var i = 0, n; n = c[i]; i++){ + var pn = n.parentNode; + if (batch != pn._batch) { + var j = 0; + for(var cn = pn.firstChild; cn; cn = cn.nextSibling){ + if(cn.nodeType == 1){ + cn.nodeIndex = ++j; + } + } + pn._batch = batch; + } + if (f == 1) { + if (l == 0 || n.nodeIndex == l){ + r[++ri] = n; + } + } else if ((n.nodeIndex + l) % f == 0){ + r[++ri] = n; + } + } + + return r; + }, + + "only-child" : function(c){ + var r = [], ri = -1;; + for(var i = 0, ci; ci = c[i]; i++){ + if(!prev(ci) && !next(ci)){ + r[++ri] = ci; + } + } + return r; + }, + + "empty" : function(c){ + var r = [], ri = -1; + for(var i = 0, ci; ci = c[i]; i++){ + var cns = ci.childNodes, j = 0, cn, empty = true; + while(cn = cns[j]){ + ++j; + if(cn.nodeType == 1 || cn.nodeType == 3){ + empty = false; + break; + } + } + if(empty){ + r[++ri] = ci; + } + } + return r; + }, + + "contains" : function(c, v){ + var r = [], ri = -1; + for(var i = 0, ci; ci = c[i]; i++){ + if((ci.textContent||ci.innerText||'').indexOf(v) != -1){ + r[++ri] = ci; + } + } + return r; + }, + + "nodeValue" : function(c, v){ + var r = [], ri = -1; + for(var i = 0, ci; ci = c[i]; i++){ + if(ci.firstChild && ci.firstChild.nodeValue == v){ + r[++ri] = ci; + } + } + return r; + }, + + "checked" : function(c){ + var r = [], ri = -1; + for(var i = 0, ci; ci = c[i]; i++){ + if(ci.checked == true){ + r[++ri] = ci; + } + } + return r; + }, + + "not" : function(c, ss){ + return Ext.DomQuery.filter(c, ss, true); + }, + + "any" : function(c, selectors){ + var ss = selectors.split('|'); + var r = [], ri = -1, s; + for(var i = 0, ci; ci = c[i]; i++){ + for(var j = 0; s = ss[j]; j++){ + if(Ext.DomQuery.is(ci, s)){ + r[++ri] = ci; + break; + } + } + } + return r; + }, + + "odd" : function(c){ + return this["nth-child"](c, "odd"); + }, + + "even" : function(c){ + return this["nth-child"](c, "even"); + }, + + "nth" : function(c, a){ + return c[a-1] || []; + }, + + "first" : function(c){ + return c[0] || []; + }, + + "last" : function(c){ + return c[c.length-1] || []; + }, + + "has" : function(c, ss){ + var s = Ext.DomQuery.select; + var r = [], ri = -1; + for(var i = 0, ci; ci = c[i]; i++){ + if(s(ss, ci).length > 0){ + r[++ri] = ci; + } + } + return r; + }, + + "next" : function(c, ss){ + var is = Ext.DomQuery.is; + var r = [], ri = -1; + for(var i = 0, ci; ci = c[i]; i++){ + var n = next(ci); + if(n && is(n, ss)){ + r[++ri] = ci; + } + } + return r; + }, + + "prev" : function(c, ss){ + var is = Ext.DomQuery.is; + var r = [], ri = -1; + for(var i = 0, ci; ci = c[i]; i++){ + var n = prev(ci); + if(n && is(n, ss)){ + r[++ri] = ci; + } + } + return r; + } + } + }; +}(); + +Ext.query = Ext.DomQuery.select; + +Date.precompileFormats = function(s){ + var formats = s.split('|'); + for(var i = 0, len = formats.length;i < len;i++){ + Date.createNewFormat(formats[i]); + Date.createParser(formats[i]); + } +} + +Date.precompileFormats("D n/j/Y|n/j/Y|n/j/y|m/j/y|n/d/y|m/j/Y|n/d/Y|YmdHis|F d, Y|l, F d, Y|H:i:s|g:i A|g:ia|g:iA|g:i a|g:i A|h:i|g:i|H:i|ga|ha|gA|h a|g a|g A|gi|hi|gia|hia|g|H|m/d/y|m/d/Y|m-d-y|m-d-Y|m/d|m-d|md|mdy|mdY|d|Y-m-d|Y-m-d H:i:s|d/m/y|d/m/Y|d-m-y|d-m-Y|d/m|d-m|dm|dmy|dmY|Y-m-d|l|D m/d|D m/d/Y|m/d/Y"); + + +Ext.ColorPalette.prototype.tpl = new Ext.XTemplate( + ' ' +); + + + + + + + +Ext.air.FileProvider = function(config){ + Ext.air.FileProvider.superclass.constructor.call(this); + + this.defaultState = { + mainWindow : { + width:780, + height:580, + x:10, + y:10 + } + }; + + Ext.apply(this, config); + this.state = this.readState(); + + var provider = this; + air.NativeApplication.nativeApplication.addEventListener('exiting', function(){ + provider.saveState(); + }); +}; + +Ext.extend(Ext.air.FileProvider, Ext.state.Provider, { + file: 'extstate.data', + + + readState : function(){ + var stateFile = air.File.applicationStorageDirectory.resolvePath(this.file); + if(!stateFile.exists){ + return this.defaultState || {}; + } + + var stream = new air.FileStream(); + stream.open(stateFile, air.FileMode.READ); + + var stateData = stream.readObject(); + stream.close(); + + return stateData || this.defaultState || {}; + }, + + + saveState : function(name, value){ + var stateFile = air.File.applicationStorageDirectory.resolvePath(this.file); + var stream = new air.FileStream(); + stream.open(stateFile, air.FileMode.WRITE); + stream.writeObject(this.state); + stream.close(); + } +}); +Ext.air.NativeObservable = Ext.extend(Ext.util.Observable, { + addListener : function(name){ + this.proxiedEvents = this.proxiedEvents || {}; + if(!this.proxiedEvents[name]){ + var instance = this; + var f = function(){ + var args = Array.prototype.slice.call(arguments, 0); + args.unshift(name); + instance.fireEvent.apply(instance, args); + }; + this.proxiedEvents[name] = f; + this.getNative().addEventListener(name, f); + } + Ext.air.NativeObservable.superclass.addListener.apply(this, arguments); + } +}); + +Ext.air.NativeObservable.prototype.on = Ext.air.NativeObservable.prototype.addListener; + +Ext.air.NativeWindow = function(config){ + Ext.apply(this, config); + + this.id = this.id || Ext.uniqueId(); + + this.addEvents( + 'close', + 'closing', + 'move', + 'moving', + 'resize', + 'resizing', + 'displayStateChange', + 'displayStateChanging' + ); + + Ext.air.NativeWindow.superclass.constructor.call(this); + + if(!this.instance){ + var options = new air.NativeWindowInitOptions(); + options.systemChrome = this.chrome; + options.type = this.type; + options.resizable = this.resizable; + options.minimizable = this.minimizable; + options.maximizable = this.maximizable; + options.transparent = this.transparent; + + this.loader = window.runtime.flash.html.HTMLLoader.createRootWindow(false, options, false); + this.loader.load(new air.URLRequest(this.file)); + + this.instance = this.loader.window.nativeWindow; + }else{ + this.loader = this.instance.stage.getChildAt(0); + } + + var provider = Ext.state.Manager; + var b = air.Screen.mainScreen.visibleBounds; + + var state = provider.get(this.id) || {}; + provider.set(this.id, state); + + var win = this.instance; + + var width = Math.max(state.width || this.width, 100); + var height = Math.max(state.height || this.height, 100); + + var centerX = b.x + ((b.width/2)-(width/2)); + var centerY = b.y + ((b.height/2)-(height/2)); + + var x = !Ext.isEmpty(state.x, false) ? state.x : (!Ext.isEmpty(this.x, false) ? this.x : centerX); + var y = !Ext.isEmpty(state.y, false) ? state.y : (!Ext.isEmpty(this.y, false) ? this.y : centerY); + + win.width = width; + win.height = height; + win.x = x; + win.y = y; + + win.addEventListener('move', function(){ + if(win.displayState != air.NativeWindowDisplayState.MINIMIZED && win.width > 100 && win.height > 100) { + state.x = win.x; + state.y = win.y; + } + }); + win.addEventListener('resize', function(){ + if (win.displayState != air.NativeWindowDisplayState.MINIMIZED && win.width > 100 && win.height > 100) { + state.width = win.width; + state.height = win.height; + } + }); + + Ext.air.NativeWindowManager.register(this); + this.on('close', this.unregister, this); + + if(this.minimizeToTray){ + this.initMinimizeToTray(this.trayIcon, this.trayMenu); + } + +}; + +Ext.extend(Ext.air.NativeWindow, Ext.air.NativeObservable, { + chrome: 'standard', + type: 'normal', + width:600, + height:400, + resizable: true, + minimizable: true, + maximizable: true, + transparent: false, + + getNative : function(){ + return this.instance; + }, + + getCenterXY : function(){ + var b = air.Screen.mainScreen.visibleBounds; + return { + x: b.x + ((b.width/2)-(this.width/2)), + y: b.y + ((b.height/2)-(this.height/2)) + }; + }, + + show :function(){ + if(this.trayed){ + Ext.air.SystemTray.hideIcon(); + this.trayed = false; + } + this.instance.visible = true; + }, + + activate : function(){ + this.show(); + this.instance.activate(); + }, + + hide :function(){ + this.instance.visible = false; + }, + + close : function(){ + this.instance.close(); + }, + + isMinimized :function(){ + return this.instance.displayState == air.NativeWindowDisplayState.MINIMIZED; + }, + + isMaximized :function(){ + return this.instance.displayState == air.NativeWindowDisplayState.MAXIMIZED; + }, + + moveTo : function(x, y){ + this.x = this.instance.x = x; + this.y = this.instance.y = y; + }, + + resize : function(width, height){ + this.width = this.instance.width = width; + this.height = this.instance.height = height; + }, + + unregister : function(){ + Ext.air.NativeWindowManager.unregister(this); + }, + + initMinimizeToTray : function(icon, menu){ + var tray = Ext.air.SystemTray; + tray.setIcon(icon, this.trayTip); + this.on('displayStateChanging', function(e){ + if(e.afterDisplayState == 'minimized'){ + e.preventDefault(); + this.hide(); + tray.showIcon(); + this.trayed = true; + } + }, this); + + tray.on('click', function(){ + this.activate(); + }, this); + + if(menu){ + tray.setMenu(menu); + } + } +}); + +Ext.air.NativeWindow.getRootWindow = function(){ + return air.NativeApplication.nativeApplication.openedWindows[0]; +}; + +Ext.air.NativeWindow.getRootHtmlWindow = function(){ + return Ext.air.NativeWindow.getRootWindow().stage.getChildAt(0).window; +}; + +Ext.air.NativeWindowGroup = function(){ + var list = {}; + + return { + register : function(win){ + list[win.id] = win; + }, + + unregister : function(win){ + delete list[win.id]; + }, + + get : function(id){ + return list[id]; + }, + + closeAll : function(){ + for(var id in list){ + if(list.hasOwnProperty(id)){ + list[id].close(); + } + } + }, + + + each : function(fn, scope){ + for(var id in list){ + if(list.hasOwnProperty(id)){ + if(fn.call(scope || list[id], list[id]) === false){ + return; + } + } + } + } + }; +}; + + +Ext.air.NativeWindowManager = new Ext.air.NativeWindowGroup(); + +Ext.sql.Connection = function(config){ + Ext.apply(this, config); + Ext.sql.Connection.superclass.constructor.call(this); + + this.addEvents({ + open : true, + close: true + }); +}; + +Ext.extend(Ext.sql.Connection, Ext.util.Observable, { + maxResults: 10000, + openState : false, + + + open : function(file){ + }, + + close : function(){ + }, + + exec : function(sql){ + }, + + execBy : function(sql, args){ + }, + + query : function(sql){ + }, + + queryBy : function(sql, args){ + }, + + + isOpen : function(){ + return this.openState; + }, + + getTable : function(name, keyName){ + return new Ext.sql.Table(this, name, keyName); + }, + + createTable : function(o){ + var tableName = o.name; + var keyName = o.key; + var fs = o.fields; + if(!Ext.isArray(fs)){ + fs = fs.items; + } + var buf = []; + for(var i = 0, len = fs.length; i < len; i++){ + var f = fs[i], s = f.name; + switch(f.type){ + case "int": + case "bool": + case "boolean": + s += ' INTEGER'; + break; + case "float": + s += ' REAL'; + break; + default: + s += ' TEXT'; + } + if(f.allowNull === false || f.name == keyName){ + s += ' NOT NULL'; + } + if(f.name == keyName){ + s += ' PRIMARY KEY'; + } + if(f.unique === true){ + s += ' UNIQUE'; + } + + buf[buf.length] = s; + } + var sql = ['CREATE TABLE IF NOT EXISTS ', tableName, ' (', buf.join(','), ')'].join(''); + this.exec(sql); + } +}); + + +Ext.sql.Connection.getInstance = function(db, config){ + if(Ext.isAir){ + return new Ext.sql.AirConnection(config); + } else { + return new Ext.sql.GearsConnection(config); + } +}; +Ext.sql.Table = function(conn, name, keyName){ + this.conn = conn; + this.name = name; + this.keyName = keyName; +}; + +Ext.sql.Table.prototype = { + update : function(o){ + var clause = this.keyName + " = ?"; + return this.updateBy(o, clause, [o[this.keyName]]); + }, + + updateBy : function(o, clause, args){ + var sql = "UPDATE " + this.name + " set "; + var fs = [], a = []; + for(var key in o){ + if(o.hasOwnProperty(key)){ + fs[fs.length] = key + ' = ?'; + a[a.length] = o[key]; + } + } + for(var key in args){ + if(args.hasOwnProperty(key)){ + a[a.length] = args[key]; + } + } + sql = [sql, fs.join(','), ' WHERE ', clause].join(''); + return this.conn.execBy(sql, a); + }, + + insert : function(o){ + var sql = "INSERT into " + this.name + " "; + var fs = [], vs = [], a = []; + for(var key in o){ + if(o.hasOwnProperty(key)){ + fs[fs.length] = key; + vs[vs.length] = '?'; + a[a.length] = o[key]; + } + } + sql = [sql, '(', fs.join(','), ') VALUES (', vs.join(','), ')'].join(''); + return this.conn.execBy(sql, a); + }, + + lookup : function(id){ + return this.selectBy('where ' + this.keyName + " = ?", [id])[0] || null; + }, + + exists : function(id){ + return !!this.lookup(id); + }, + + save : function(o){ + if(this.exists(o[this.keyName])){ + this.update(o); + }else{ + this.insert(o); + } + }, + + select : function(clause){ + return this.selectBy(clause, null); + }, + + selectBy : function(clause, args){ + var sql = "select * from " + this.name; + if(clause){ + sql += ' ' + clause; + } + args = args || {}; + return this.conn.queryBy(sql, args); + }, + + remove : function(clause){ + this.deleteBy(clause, null); + }, + + removeBy : function(clause, args){ + var sql = "delete from " + this.name; + if(clause){ + sql += ' where ' + clause; + } + args = args || {}; + this.conn.execBy(sql, args); + } +}; +Ext.sql.Proxy = function(conn, table, keyName, store, readonly){ + Ext.sql.Proxy.superclass.constructor.call(this); + this.conn = conn; + this.table = this.conn.getTable(table, keyName); + this.store = store; + + if (readonly !== true) { + this.store.on('add', this.onAdd, this); + this.store.on('update', this.onUpdate, this); + this.store.on('remove', this.onRemove, this); + } +}; + +Ext.sql.Proxy.DATE_FORMAT = 'Y-m-d H:i:s'; + +Ext.extend(Ext.sql.Proxy, Ext.data.DataProxy, { + load : function(params, reader, callback, scope, arg){ + if(!this.conn.isOpen()){ + this.conn.on('open', function(){ + this.load(params, reader, callback, scope, arg); + }, this, {single:true}); + return; + }; + if(this.fireEvent("beforeload", this, params, reader, callback, scope, arg) !== false){ + var clause = params.where || ''; + var args = params.args || []; + var group = params.groupBy; + var sort = params.sort; + var dir = params.dir; + + if(group || sort){ + clause += ' ORDER BY '; + if(group && group != sort){ + clause += group + ' ASC, '; + } + clause += sort + ' ' + (dir || 'ASC'); + } + + var rs = this.table.selectBy(clause, args); + this.onLoad({callback:callback, scope:scope, arg:arg, reader: reader}, rs); + }else{ + callback.call(scope||this, null, arg, false); + } + }, + + onLoad : function(trans, rs, e, stmt){ + if(rs === false){ + this.fireEvent("loadexception", this, null, trans.arg, e); + trans.callback.call(trans.scope||window, null, trans.arg, false); + return; + } + var result = trans.reader.readRecords(rs); + this.fireEvent("load", this, rs, trans.arg); + trans.callback.call(trans.scope||window, result, trans.arg, true); + }, + + processData : function(o){ + var fs = this.store.fields; + var r = {}; + for(var key in o){ + var f = fs.key(key), v = o[key]; + if(f){ + if(f.type == 'date'){ + r[key] = v ? v.format(Ext.sql.Proxy.DATE_FORMAT,10) : ''; + }else if(f.type == 'boolean'){ + r[key] = v ? 1 : 0; + }else{ + r[key] = v; + } + } + } + return r; + }, + + onUpdate : function(ds, record){ + var changes = record.getChanges(); + var kn = this.table.keyName; + this.table.updateBy(this.processData(changes), kn + ' = ?', [record.data[kn]]); + record.commit(true); + }, + + onAdd : function(ds, records, index){ + for(var i = 0, len = records.length; i < len; i++){ + this.table.insert(this.processData(records[i].data)); + } + }, + + onRemove : function(ds, record, index){ + var kn = this.table.keyName; + this.table.removeBy(kn + ' = ?', [record.data[kn]]); + } +}); + Ext.sql.AirConnection = Ext.extend(Ext.sql.Connection, { + + open : function(db){ + this.conn = new air.SQLConnection(); + var file = air.File.applicationDirectory.resolvePath(db); + this.conn.open(file); + this.openState = true; + this.fireEvent('open', this); + }, + + close : function(){ + this.conn.close(); + this.fireEvent('close', this); + }, + + createStatement : function(type){ + var stmt = new air.SQLStatement(); + stmt.sqlConnection = this.conn; + return stmt; + }, + + exec : function(sql){ + var stmt = this.createStatement('exec'); + stmt.text = sql; + stmt.execute(); + }, + + execBy : function(sql, args){ + var stmt = this.createStatement('exec'); + stmt.text = sql; + this.addParams(stmt, args); + stmt.execute(); + }, + + query : function(sql){ + var stmt = this.createStatement('query'); + stmt.text = sql; + stmt.execute(this.maxResults); + return this.readResults(stmt.getResult()); + }, + + queryBy : function(sql, args){ + var stmt = this.createStatement('query'); + stmt.text = sql; + this.addParams(stmt, args); + stmt.execute(this.maxResults); + return this.readResults(stmt.getResult()); + }, + + addParams : function(stmt, args){ + if(!args){ return; } + for(var key in args){ + if(args.hasOwnProperty(key)){ + if(!isNaN(key)){ + var v = args[key]; + if(Ext.isDate(v)){ + v = v.format(Ext.sql.Proxy.DATE_FORMAT); + } + stmt.parameters[parseInt(key)] = v; + }else{ + stmt.parameters[':' + key] = args[key]; + } + } + } + return stmt; + }, + + readResults : function(rs){ + var r = []; + if(rs && rs.data){ + var len = rs.data.length; + for(var i = 0; i < len; i++) { + r[r.length] = rs.data[i]; + } + } + return r; + } +}); +Ext.air.SystemTray = function(){ + var app = air.NativeApplication.nativeApplication; + var icon, isWindows = false, bitmaps; + + + if(air.NativeApplication.supportsSystemTrayIcon) { + icon = app.icon; + isWindows = true; + } + + + if(air.NativeApplication.supportsDockIcon) { + icon = app.icon; + } + + return { + + setIcon : function(icon, tooltip, initWithIcon){ + if(!icon){ + return; + } + var loader = new air.Loader(); + loader.contentLoaderInfo.addEventListener(air.Event.COMPLETE, function(e){ + bitmaps = new runtime.Array(e.target.content.bitmapData); + if (initWithIcon) { + icon.bitmaps = bitmaps; + } + }); + loader.load(new air.URLRequest(icon)); + if(tooltip && air.NativeApplication.supportsSystemTrayIcon) { + app.icon.tooltip = tooltip; + } + }, + + bounce : function(priority){ + icon.bounce(priority); + }, + + on : function(eventName, fn, scope){ + icon.addEventListener(eventName, function(){ + fn.apply(scope || this, arguments); + }); + }, + + hideIcon : function(){ + if(!icon){ + return; + } + icon.bitmaps = []; + }, + + showIcon : function(){ + if(!icon){ + return; + } + icon.bitmaps = bitmaps; + }, + + setMenu: function(actions, _parentMenu){ + if(!icon){ + return; + } + var menu = new air.NativeMenu(); + + for (var i = 0, len = actions.length; i < len; i++) { + var a = actions[i]; + if(a == '-'){ + menu.addItem(new air.NativeMenuItem("", true)); + }else{ + var item = menu.addItem(Ext.air.MenuItem(a)); + if(a.menu || (a.initialConfig && a.initialConfig.menu)){ + item.submenu = Ext.air.SystemTray.setMenu(a.menu || a.initialConfig.menu, menu); + } + } + + if(!_parentMenu){ + icon.menu = menu; + } + } + + return menu; + } + }; +}(); + + +Ext.air.DragType = { + TEXT : 'text/plain', + HTML : 'text/html', + URL : 'text/uri-list', + BITMAP : 'image/x-vnd.adobe.air.bitmap', + FILES : 'application/x-vnd.adobe.air.file-list' +}; + +Ext.apply(Ext.EventObjectImpl.prototype, { + hasFormat : function(format){ + if (this.browserEvent.dataTransfer) { + for (var i = 0, len = this.browserEvent.dataTransfer.types.length; i < len; i++) { + if(this.browserEvent.dataTransfer.types[i] == format) { + return true; + } + } + } + return false; + }, + + getData : function(type){ + return this.browserEvent.dataTransfer.getData(type); + } +}); + + + +Ext.air.Sound = { + play : function(file, startAt){ + var soundFile = air.File.applicationDirectory.resolvePath(file); + var sound = new air.Sound(); + sound.load(new air.URLRequest(soundFile.url)); + sound.play(startAt); + } +}; + + +Ext.air.SystemMenu = function(){ + var menu; + + if(air.NativeWindow.supportsMenu && nativeWindow.systemChrome != air.NativeWindowSystemChrome.NONE) { + menu = new air.NativeMenu(); + nativeWindow.menu = menu; + } + + + if(air.NativeApplication.supportsMenu) { + menu = air.NativeApplication.nativeApplication.menu; + } + + function find(menu, text){ + for(var i = 0, len = menu.items.length; i < len; i++){ + if(menu.items[i]['label'] == text){ + return menu.items[i]; + } + } + return null; + } + + return { + add: function(text, actions, mindex){ + + var item = find(menu, text); + if(!item){ + item = menu.addItem(new air.NativeMenuItem(text)); + item.mnemonicIndex = mindex || 0; + + item.submenu = new air.NativeMenu(); + } + for (var i = 0, len = actions.length; i < len; i++) { + item.submenu.addItem(actions[i] == '-' ? new air.NativeMenuItem("", true) : Ext.air.MenuItem(actions[i])); + } + return item.submenu; + }, + + get : function(){ + return menu; + } + }; +}(); + + +Ext.air.MenuItem = function(action){ + if(!action.isAction){ + action = new Ext.Action(action); + } + var cfg = action.initialConfig; + var nativeItem = new air.NativeMenuItem(cfg.itemText || cfg.text); + + nativeItem.enabled = !cfg.disabled; + + if(!Ext.isEmpty(cfg.checked)){ + nativeItem.checked = cfg.checked; + } + + var handler = cfg.handler; + var scope = cfg.scope; + + nativeItem.addEventListener(air.Event.SELECT, function(){ + handler.call(scope || window, cfg); + }); + + action.addComponent({ + setDisabled : function(v){ + nativeItem.enabled = !v; + }, + + setText : function(v){ + nativeItem.label = v; + }, + + setVisible : function(v){ + + nativeItem.enabled = !v; + }, + + setHandler : function(newHandler, newScope){ + handler = newHandler; + scope = newScope; + }, + + on : function(){} + }); + + return nativeItem; +} + Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-air/ext-air.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-air/ext-air.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-air/ext-air.js 11 Apr 2009 18:15:08 -0000 1.1 @@ -0,0 +1,1604 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +/* + * Ext JS Library 2.0.1 + * Copyright(c) 2006-2008, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + + +Ext.namespace('Ext.air', 'Ext.sql'); + +Ext.Template.prototype.compile = function() { + var fm = Ext.util.Format; + var useF = this.disableFormats !== true; + + var prevOffset = 0; + var arr = []; + var tpl = this; + var fn = function(m, name, format, args, offset, s){ + if (prevOffset != offset) { + var action = {type: 1, value: s.substr(prevOffset, offset - prevOffset)}; + arr.push(action); + } + prevOffset = offset + m.length; + if(format && useF){ + if (args) { + var re = /^\s*['"](.*)["']\s*$/; + args = args.split(/,(?=(?:[^"]*"[^"]*")*(?![^"]*"))/); + for(var i = 0, len = args.length; i < len; i++){ + args[i] = args[i].replace(re, "$1"); + } + args = [''].concat(args); + } else { + args = ['']; + } + if(format.substr(0, 5) != "this."){ + var action = {type: 3, value:name, format: fm[format], args: args, scope: fm}; + arr.push(action); + }else{ + var action = {type: 3, value:name, format:tpl[format.substr(5)], args:args, scope: tpl}; + arr.push(action); + } + }else{ + var action = {type: 2, value: name}; + arr.push(action); + } + return m; + }; + + var s = this.html.replace(this.re, fn); + if (prevOffset != (s.length - 1)) { + var action = {type: 1, value: s.substr(prevOffset, s.length - prevOffset)}; + arr.push(action); + } + + this.compiled = function(values) { + function applyValues(el) { + switch (el.type) { + case 1: + return el.value; + case 2: + return (values[el.value] ? values[el.value] : ''); + default: + el.args[0] = values[el.value]; + return el.format.apply(el.scope, el.args); + } + } + return arr.map(applyValues).join(''); + } + return this; +}; + +Ext.Template.prototype.call = function(fnName, value, allValues){ + return this[fnName](value, allValues); +} + + +Ext.DomQuery = function(){ + var cache = {}, simpleCache = {}, valueCache = {}; + var nonSpace = /\S/; + var trimRe = /^\s+|\s+$/g; + var tplRe = /\{(\d+)\}/g; + var modeRe = /^(\s?[\/>+~]\s?|\s|$)/; + var tagTokenRe = /^(#)?([\w-\*]+)/; + var nthRe = /(\d*)n\+?(\d*)/, nthRe2 = /\D/; + + function child(p, index){ + var i = 0; + var n = p.firstChild; + while(n){ + if(n.nodeType == 1){ + if(++i == index){ + return n; + } + } + n = n.nextSibling; + } + return null; + }; + + function next(n){ + while((n = n.nextSibling) && n.nodeType != 1); + return n; + }; + + function prev(n){ + while((n = n.previousSibling) && n.nodeType != 1); + return n; + }; + + function children(d){ + var n = d.firstChild, ni = -1; + while(n){ + var nx = n.nextSibling; + if(n.nodeType == 3 && !nonSpace.test(n.nodeValue)){ + d.removeChild(n); + }else{ + n.nodeIndex = ++ni; + } + n = nx; + } + return this; + }; + + function byClassName(c, a, v){ + if(!v){ + return c; + } + var r = [], ri = -1, cn; + for(var i = 0, ci; ci = c[i]; i++){ + if((' '+ci.className+' ').indexOf(v) != -1){ + r[++ri] = ci; + } + } + return r; + }; + + function attrValue(n, attr){ + if(!n.tagName && typeof n.length != "undefined"){ + n = n[0]; + } + if(!n){ + return null; + } + if(attr == "for"){ + return n.htmlFor; + } + if(attr == "class" || attr == "className"){ + return n.className; + } + return n.getAttribute(attr) || n[attr]; + + }; + + function getNodes(ns, mode, tagName){ + var result = [], ri = -1, cs; + if(!ns){ + return result; + } + tagName = tagName || "*"; + if(typeof ns.getElementsByTagName != "undefined"){ + ns = [ns]; + } + if(!mode){ + for(var i = 0, ni; ni = ns[i]; i++){ + cs = ni.getElementsByTagName(tagName); + for(var j = 0, ci; ci = cs[j]; j++){ + result[++ri] = ci; + } + } + }else if(mode == "/" || mode == ">"){ + var utag = tagName.toUpperCase(); + for(var i = 0, ni, cn; ni = ns[i]; i++){ + cn = ni.children || ni.childNodes; + for(var j = 0, cj; cj = cn[j]; j++){ + if(cj.nodeName == utag || cj.nodeName == tagName || tagName == '*'){ + result[++ri] = cj; + } + } + } + }else if(mode == "+"){ + var utag = tagName.toUpperCase(); + for(var i = 0, n; n = ns[i]; i++){ + while((n = n.nextSibling) && n.nodeType != 1); + if(n && (n.nodeName == utag || n.nodeName == tagName || tagName == '*')){ + result[++ri] = n; + } + } + }else if(mode == "~"){ + for(var i = 0, n; n = ns[i]; i++){ + while((n = n.nextSibling) && (n.nodeType != 1 || (tagName == '*' || n.tagName.toLowerCase()!=tagName))); + if(n){ + result[++ri] = n; + } + } + } + return result; + }; + + function concat(a, b){ + if(b.slice){ + return a.concat(b); + } + for(var i = 0, l = b.length; i < l; i++){ + a[a.length] = b[i]; + } + return a; + } + + function byTag(cs, tagName){ + if(cs.tagName || cs == document){ + cs = [cs]; + } + if(!tagName){ + return cs; + } + var r = [], ri = -1; + tagName = tagName.toLowerCase(); + for(var i = 0, ci; ci = cs[i]; i++){ + if(ci.nodeType == 1 && ci.tagName.toLowerCase()==tagName){ + r[++ri] = ci; + } + } + return r; + }; + + function byId(cs, attr, id){ + if(cs.tagName || cs == document){ + cs = [cs]; + } + if(!id){ + return cs; + } + var r = [], ri = -1; + for(var i = 0,ci; ci = cs[i]; i++){ + if(ci && ci.id == id){ + r[++ri] = ci; + return r; + } + } + return r; + }; + + function byAttribute(cs, attr, value, op, custom){ + var r = [], ri = -1, st = custom=="{"; + var f = Ext.DomQuery.operators[op]; + for(var i = 0, ci; ci = cs[i]; i++){ + var a; + if(st){ + a = Ext.DomQuery.getStyle(ci, attr); + } + else if(attr == "class" || attr == "className"){ + a = ci.className; + }else if(attr == "for"){ + a = ci.htmlFor; + }else if(attr == "href"){ + a = ci.getAttribute("href", 2); + }else{ + a = ci.getAttribute(attr); + } + if((f && f(a, value)) || (!f && a)){ + r[++ri] = ci; + } + } + return r; + }; + + function byPseudo(cs, name, value){ + return Ext.DomQuery.pseudos[name](cs, value); + }; + + + + + eval("var batch = 30803;"); + + var key = 30803; + + function nodup(cs){ + if(!cs){ + return []; + } + var len = cs.length, c, i, r = cs, cj, ri = -1; + if(!len || typeof cs.nodeType != "undefined" || len == 1){ + return cs; + } + var d = ++key; + cs[0]._nodup = d; + for(i = 1; c = cs[i]; i++){ + if(c._nodup != d){ + c._nodup = d; + }else{ + r = []; + for(var j = 0; j < i; j++){ + r[++ri] = cs[j]; + } + for(j = i+1; cj = cs[j]; j++){ + if(cj._nodup != d){ + cj._nodup = d; + r[++ri] = cj; + } + } + return r; + } + } + return r; + } + + function quickDiff(c1, c2){ + var len1 = c1.length; + if(!len1){ + return c2; + } + var d = ++key; + for(var i = 0; i < len1; i++){ + c1[i]._qdiff = d; + } + var r = []; + for(var i = 0, len = c2.length; i < len; i++){ + if(c2[i]._qdiff != d){ + r[r.length] = c2[i]; + } + } + return r; + } + + function quickId(ns, mode, root, id){ + if(ns == root){ + var d = root.ownerDocument || root; + return d.getElementById(id); + } + ns = getNodes(ns, mode, "*"); + return byId(ns, null, id); + } + + function search(path, root, type) { + type = type || "select"; + + var n = root || document; + + var q = path, mode, lq; + var tk = Ext.DomQuery.matchers; + var tklen = tk.length; + var mm; + + var lmode = q.match(modeRe); + if(lmode && lmode[1]){ + mode=lmode[1].replace(trimRe, ""); + q = q.replace(lmode[1], ""); + } + while(path.substr(0, 1)=="/"){ + path = path.substr(1); + } + while(q && lq != q){ + lq = q; + var tm = q.match(tagTokenRe); + if(type == "select"){ + if(tm){ + if(tm[1] == "#"){ + n = quickId(n, mode, root, tm[2]); + }else{ + n = getNodes(n, mode, tm[2]); + } + q = q.replace(tm[0], ""); + }else if(q.substr(0, 1) != '@'){ + n = getNodes(n, mode, "*"); + } + }else{ + if(tm){ + if(tm[1] == "#"){ + n = byId(n, null, tm[2]); + }else{ + n = byTag(n, tm[2]); + } + q = q.replace(tm[0], ""); + } + } + while(!(mm = q.match(modeRe))){ + var matched = false; + for(var j = 0; j < tklen; j++){ + var t = tk[j]; + var m = q.match(t.re); + if(m){ + switch(j) { + case 0: + n = byClassName(n, null, " " + m[1] +" "); + break; + case 1: + n = byPseudo(n, m[1], m[2]); + break; + case 2: + n = byAttribute(n, m[2], m[4], m[3], m[1]); + break; + case 3: + n = byId(n, null, m[1]); + break; + case 4: + return {firstChild:{nodeValue:attrValue(n, m[1])}}; + + } + q = q.replace(m[0], ""); + matched = true; + break; + } + } + + if(!matched){ + throw 'Error parsing selector, parsing failed at "' + q + '"'; + } + } + if(mm[1]){ + mode=mm[1].replace(trimRe, ""); + q = q.replace(mm[1], ""); + } + } + return nodup(n); + } + + return { + getStyle : function(el, name){ + return Ext.fly(el).getStyle(name); + }, + + compile: function(path, type) { + return function(root) { + return search(path, root, type); + } + }, + + + select : function(path, root, type){ + if(!root || root == document){ + root = document; + } + if(typeof root == "string"){ + root = document.getElementById(root); + } + var paths = path.split(","); + var results = []; + for(var i = 0, len = paths.length; i < len; i++){ + var p = paths[i].replace(trimRe, ""); + if(!cache[p]){ + cache[p] = Ext.DomQuery.compile(p); + if(!cache[p]){ + throw p + " is not a valid selector"; + } + } + var result = cache[p](root); + if(result && result != document){ + results = results.concat(result); + } + } + if(paths.length > 1){ + return nodup(results); + } + return results; + }, + + + selectNode : function(path, root){ + return Ext.DomQuery.select(path, root)[0]; + }, + + + selectValue : function(path, root, defaultValue){ + path = path.replace(trimRe, ""); + if(!valueCache[path]){ + valueCache[path] = Ext.DomQuery.compile(path, "select"); + } + var n = valueCache[path](root); + n = n[0] ? n[0] : n; + var v = (n && n.firstChild ? n.firstChild.nodeValue : null); + return ((v === null||v === undefined||v==='') ? defaultValue : v); + }, + + + selectNumber : function(path, root, defaultValue){ + var v = Ext.DomQuery.selectValue(path, root, defaultValue || 0); + return parseFloat(v); + }, + + + is : function(el, ss){ + if(typeof el == "string"){ + el = document.getElementById(el); + } + var isArray = Ext.isArray(el); + var result = Ext.DomQuery.filter(isArray ? el : [el], ss); + return isArray ? (result.length == el.length) : (result.length > 0); + }, + + + filter : function(els, ss, nonMatches){ + ss = ss.replace(trimRe, ""); + if(!simpleCache[ss]){ + simpleCache[ss] = Ext.DomQuery.compile(ss, "simple"); + } + var result = simpleCache[ss](els); + return nonMatches ? quickDiff(result, els) : result; + }, + + + matchers : [{ + re: /^\.([\w-]+)/, + select: 'n = byClassName(n, null, " {1} ");' + }, { + re: /^\:([\w-]+)(?:\(((?:[^\s>\/]*|.*?))\))?/, + select: 'n = byPseudo(n, "{1}", "{2}");' + },{ + re: /^(?:([\[\{])(?:@)?([\w-]+)\s?(?:(=|.=)\s?['"]?(.*?)["']?)?[\]\}])/, + select: 'n = byAttribute(n, "{2}", "{4}", "{3}", "{1}");' + }, { + re: /^#([\w-]+)/, + select: 'n = byId(n, null, "{1}");' + },{ + re: /^@([\w-]+)/, + select: 'return {firstChild:{nodeValue:attrValue(n, "{1}")}};' + } + ], + + + operators : { + "=" : function(a, v){ + return a == v; + }, + "!=" : function(a, v){ + return a != v; + }, + "^=" : function(a, v){ + return a && a.substr(0, v.length) == v; + }, + "$=" : function(a, v){ + return a && a.substr(a.length-v.length) == v; + }, + "*=" : function(a, v){ + return a && a.indexOf(v) !== -1; + }, + "%=" : function(a, v){ + return (a % v) == 0; + }, + "|=" : function(a, v){ + return a && (a == v || a.substr(0, v.length+1) == v+'-'); + }, + "~=" : function(a, v){ + return a && (' '+a+' ').indexOf(' '+v+' ') != -1; + } + }, + + + pseudos : { + "first-child" : function(c){ + var r = [], ri = -1, n; + for(var i = 0, ci; ci = n = c[i]; i++){ + while((n = n.previousSibling) && n.nodeType != 1); + if(!n){ + r[++ri] = ci; + } + } + return r; + }, + + "last-child" : function(c){ + var r = [], ri = -1, n; + for(var i = 0, ci; ci = n = c[i]; i++){ + while((n = n.nextSibling) && n.nodeType != 1); + if(!n){ + r[++ri] = ci; + } + } + return r; + }, + + "nth-child" : function(c, a) { + var r = [], ri = -1; + var m = nthRe.exec(a == "even" && "2n" || a == "odd" && "2n+1" || !nthRe2.test(a) && "n+" + a || a); + var f = (m[1] || 1) - 0, l = m[2] - 0; + for(var i = 0, n; n = c[i]; i++){ + var pn = n.parentNode; + if (batch != pn._batch) { + var j = 0; + for(var cn = pn.firstChild; cn; cn = cn.nextSibling){ + if(cn.nodeType == 1){ + cn.nodeIndex = ++j; + } + } + pn._batch = batch; + } + if (f == 1) { + if (l == 0 || n.nodeIndex == l){ + r[++ri] = n; + } + } else if ((n.nodeIndex + l) % f == 0){ + r[++ri] = n; + } + } + + return r; + }, + + "only-child" : function(c){ + var r = [], ri = -1;; + for(var i = 0, ci; ci = c[i]; i++){ + if(!prev(ci) && !next(ci)){ + r[++ri] = ci; + } + } + return r; + }, + + "empty" : function(c){ + var r = [], ri = -1; + for(var i = 0, ci; ci = c[i]; i++){ + var cns = ci.childNodes, j = 0, cn, empty = true; + while(cn = cns[j]){ + ++j; + if(cn.nodeType == 1 || cn.nodeType == 3){ + empty = false; + break; + } + } + if(empty){ + r[++ri] = ci; + } + } + return r; + }, + + "contains" : function(c, v){ + var r = [], ri = -1; + for(var i = 0, ci; ci = c[i]; i++){ + if((ci.textContent||ci.innerText||'').indexOf(v) != -1){ + r[++ri] = ci; + } + } + return r; + }, + + "nodeValue" : function(c, v){ + var r = [], ri = -1; + for(var i = 0, ci; ci = c[i]; i++){ + if(ci.firstChild && ci.firstChild.nodeValue == v){ + r[++ri] = ci; + } + } + return r; + }, + + "checked" : function(c){ + var r = [], ri = -1; + for(var i = 0, ci; ci = c[i]; i++){ + if(ci.checked == true){ + r[++ri] = ci; + } + } + return r; + }, + + "not" : function(c, ss){ + return Ext.DomQuery.filter(c, ss, true); + }, + + "any" : function(c, selectors){ + var ss = selectors.split('|'); + var r = [], ri = -1, s; + for(var i = 0, ci; ci = c[i]; i++){ + for(var j = 0; s = ss[j]; j++){ + if(Ext.DomQuery.is(ci, s)){ + r[++ri] = ci; + break; + } + } + } + return r; + }, + + "odd" : function(c){ + return this["nth-child"](c, "odd"); + }, + + "even" : function(c){ + return this["nth-child"](c, "even"); + }, + + "nth" : function(c, a){ + return c[a-1] || []; + }, + + "first" : function(c){ + return c[0] || []; + }, + + "last" : function(c){ + return c[c.length-1] || []; + }, + + "has" : function(c, ss){ + var s = Ext.DomQuery.select; + var r = [], ri = -1; + for(var i = 0, ci; ci = c[i]; i++){ + if(s(ss, ci).length > 0){ + r[++ri] = ci; + } + } + return r; + }, + + "next" : function(c, ss){ + var is = Ext.DomQuery.is; + var r = [], ri = -1; + for(var i = 0, ci; ci = c[i]; i++){ + var n = next(ci); + if(n && is(n, ss)){ + r[++ri] = ci; + } + } + return r; + }, + + "prev" : function(c, ss){ + var is = Ext.DomQuery.is; + var r = [], ri = -1; + for(var i = 0, ci; ci = c[i]; i++){ + var n = prev(ci); + if(n && is(n, ss)){ + r[++ri] = ci; + } + } + return r; + } + } + }; +}(); + +Ext.query = Ext.DomQuery.select; + +Date.precompileFormats = function(s){ + var formats = s.split('|'); + for(var i = 0, len = formats.length;i < len;i++){ + Date.createNewFormat(formats[i]); + Date.createParser(formats[i]); + } +} + +Date.precompileFormats("D n/j/Y|n/j/Y|n/j/y|m/j/y|n/d/y|m/j/Y|n/d/Y|YmdHis|F d, Y|l, F d, Y|H:i:s|g:i A|g:ia|g:iA|g:i a|g:i A|h:i|g:i|H:i|ga|ha|gA|h a|g a|g A|gi|hi|gia|hia|g|H|m/d/y|m/d/Y|m-d-y|m-d-Y|m/d|m-d|md|mdy|mdY|d|Y-m-d|Y-m-d H:i:s|d/m/y|d/m/Y|d-m-y|d-m-Y|d/m|d-m|dm|dmy|dmY|Y-m-d|l|D m/d|D m/d/Y|m/d/Y"); + + +Ext.ColorPalette.prototype.tpl = new Ext.XTemplate( + ' ' +); + + + + + + + +Ext.air.FileProvider = function(config){ + Ext.air.FileProvider.superclass.constructor.call(this); + + this.defaultState = { + mainWindow : { + width:780, + height:580, + x:10, + y:10 + } + }; + + Ext.apply(this, config); + this.state = this.readState(); + + var provider = this; + air.NativeApplication.nativeApplication.addEventListener('exiting', function(){ + provider.saveState(); + }); +}; + +Ext.extend(Ext.air.FileProvider, Ext.state.Provider, { + file: 'extstate.data', + + + readState : function(){ + var stateFile = air.File.applicationStorageDirectory.resolvePath(this.file); + if(!stateFile.exists){ + return this.defaultState || {}; + } + + var stream = new air.FileStream(); + stream.open(stateFile, air.FileMode.READ); + + var stateData = stream.readObject(); + stream.close(); + + return stateData || this.defaultState || {}; + }, + + + saveState : function(name, value){ + var stateFile = air.File.applicationStorageDirectory.resolvePath(this.file); + var stream = new air.FileStream(); + stream.open(stateFile, air.FileMode.WRITE); + stream.writeObject(this.state); + stream.close(); + } +}); +Ext.air.NativeObservable = Ext.extend(Ext.util.Observable, { + addListener : function(name){ + this.proxiedEvents = this.proxiedEvents || {}; + if(!this.proxiedEvents[name]){ + var instance = this; + var f = function(){ + var args = Array.prototype.slice.call(arguments, 0); + args.unshift(name); + instance.fireEvent.apply(instance, args); + }; + this.proxiedEvents[name] = f; + this.getNative().addEventListener(name, f); + } + Ext.air.NativeObservable.superclass.addListener.apply(this, arguments); + } +}); + +Ext.air.NativeObservable.prototype.on = Ext.air.NativeObservable.prototype.addListener; + +Ext.air.NativeWindow = function(config){ + Ext.apply(this, config); + + this.id = this.id || Ext.uniqueId(); + + this.addEvents( + 'close', + 'closing', + 'move', + 'moving', + 'resize', + 'resizing', + 'displayStateChange', + 'displayStateChanging' + ); + + Ext.air.NativeWindow.superclass.constructor.call(this); + + if(!this.instance){ + var options = new air.NativeWindowInitOptions(); + options.systemChrome = this.chrome; + options.type = this.type; + options.resizable = this.resizable; + options.minimizable = this.minimizable; + options.maximizable = this.maximizable; + options.transparent = this.transparent; + + this.loader = window.runtime.flash.html.HTMLLoader.createRootWindow(false, options, false); + this.loader.load(new air.URLRequest(this.file)); + + this.instance = this.loader.window.nativeWindow; + }else{ + this.loader = this.instance.stage.getChildAt(0); + } + + var provider = Ext.state.Manager; + var b = air.Screen.mainScreen.visibleBounds; + + var state = provider.get(this.id) || {}; + provider.set(this.id, state); + + var win = this.instance; + + var width = Math.max(state.width || this.width, 100); + var height = Math.max(state.height || this.height, 100); + + var centerX = b.x + ((b.width/2)-(width/2)); + var centerY = b.y + ((b.height/2)-(height/2)); + + var x = !Ext.isEmpty(state.x, false) ? state.x : (!Ext.isEmpty(this.x, false) ? this.x : centerX); + var y = !Ext.isEmpty(state.y, false) ? state.y : (!Ext.isEmpty(this.y, false) ? this.y : centerY); + + win.width = width; + win.height = height; + win.x = x; + win.y = y; + + win.addEventListener('move', function(){ + if(win.displayState != air.NativeWindowDisplayState.MINIMIZED && win.width > 100 && win.height > 100) { + state.x = win.x; + state.y = win.y; + } + }); + win.addEventListener('resize', function(){ + if (win.displayState != air.NativeWindowDisplayState.MINIMIZED && win.width > 100 && win.height > 100) { + state.width = win.width; + state.height = win.height; + } + }); + + Ext.air.NativeWindowManager.register(this); + this.on('close', this.unregister, this); + + if(this.minimizeToTray){ + this.initMinimizeToTray(this.trayIcon, this.trayMenu); + } + +}; + +Ext.extend(Ext.air.NativeWindow, Ext.air.NativeObservable, { + chrome: 'standard', + type: 'normal', + width:600, + height:400, + resizable: true, + minimizable: true, + maximizable: true, + transparent: false, + + getNative : function(){ + return this.instance; + }, + + getCenterXY : function(){ + var b = air.Screen.mainScreen.visibleBounds; + return { + x: b.x + ((b.width/2)-(this.width/2)), + y: b.y + ((b.height/2)-(this.height/2)) + }; + }, + + show :function(){ + if(this.trayed){ + Ext.air.SystemTray.hideIcon(); + this.trayed = false; + } + this.instance.visible = true; + }, + + activate : function(){ + this.show(); + this.instance.activate(); + }, + + hide :function(){ + this.instance.visible = false; + }, + + close : function(){ + this.instance.close(); + }, + + isMinimized :function(){ + return this.instance.displayState == air.NativeWindowDisplayState.MINIMIZED; + }, + + isMaximized :function(){ + return this.instance.displayState == air.NativeWindowDisplayState.MAXIMIZED; + }, + + moveTo : function(x, y){ + this.x = this.instance.x = x; + this.y = this.instance.y = y; + }, + + resize : function(width, height){ + this.width = this.instance.width = width; + this.height = this.instance.height = height; + }, + + unregister : function(){ + Ext.air.NativeWindowManager.unregister(this); + }, + + initMinimizeToTray : function(icon, menu){ + var tray = Ext.air.SystemTray; + tray.setIcon(icon, this.trayTip); + this.on('displayStateChanging', function(e){ + if(e.afterDisplayState == 'minimized'){ + e.preventDefault(); + this.hide(); + tray.showIcon(); + this.trayed = true; + } + }, this); + + tray.on('click', function(){ + this.activate(); + }, this); + + if(menu){ + tray.setMenu(menu); + } + } +}); + +Ext.air.NativeWindow.getRootWindow = function(){ + return air.NativeApplication.nativeApplication.openedWindows[0]; +}; + +Ext.air.NativeWindow.getRootHtmlWindow = function(){ + return Ext.air.NativeWindow.getRootWindow().stage.getChildAt(0).window; +}; + +Ext.air.NativeWindowGroup = function(){ + var list = {}; + + return { + register : function(win){ + list[win.id] = win; + }, + + unregister : function(win){ + delete list[win.id]; + }, + + get : function(id){ + return list[id]; + }, + + closeAll : function(){ + for(var id in list){ + if(list.hasOwnProperty(id)){ + list[id].close(); + } + } + }, + + + each : function(fn, scope){ + for(var id in list){ + if(list.hasOwnProperty(id)){ + if(fn.call(scope || list[id], list[id]) === false){ + return; + } + } + } + } + }; +}; + + +Ext.air.NativeWindowManager = new Ext.air.NativeWindowGroup(); + +Ext.sql.Connection = function(config){ + Ext.apply(this, config); + Ext.sql.Connection.superclass.constructor.call(this); + + this.addEvents({ + open : true, + close: true + }); +}; + +Ext.extend(Ext.sql.Connection, Ext.util.Observable, { + maxResults: 10000, + openState : false, + + + open : function(file){ + }, + + close : function(){ + }, + + exec : function(sql){ + }, + + execBy : function(sql, args){ + }, + + query : function(sql){ + }, + + queryBy : function(sql, args){ + }, + + + isOpen : function(){ + return this.openState; + }, + + getTable : function(name, keyName){ + return new Ext.sql.Table(this, name, keyName); + }, + + createTable : function(o){ + var tableName = o.name; + var keyName = o.key; + var fs = o.fields; + if(!Ext.isArray(fs)){ + fs = fs.items; + } + var buf = []; + for(var i = 0, len = fs.length; i < len; i++){ + var f = fs[i], s = f.name; + switch(f.type){ + case "int": + case "bool": + case "boolean": + s += ' INTEGER'; + break; + case "float": + s += ' REAL'; + break; + default: + s += ' TEXT'; + } + if(f.allowNull === false || f.name == keyName){ + s += ' NOT NULL'; + } + if(f.name == keyName){ + s += ' PRIMARY KEY'; + } + if(f.unique === true){ + s += ' UNIQUE'; + } + + buf[buf.length] = s; + } + var sql = ['CREATE TABLE IF NOT EXISTS ', tableName, ' (', buf.join(','), ')'].join(''); + this.exec(sql); + } +}); + + +Ext.sql.Connection.getInstance = function(db, config){ + if(Ext.isAir){ + return new Ext.sql.AirConnection(config); + } else { + return new Ext.sql.GearsConnection(config); + } +}; +Ext.sql.Table = function(conn, name, keyName){ + this.conn = conn; + this.name = name; + this.keyName = keyName; +}; + +Ext.sql.Table.prototype = { + update : function(o){ + var clause = this.keyName + " = ?"; + return this.updateBy(o, clause, [o[this.keyName]]); + }, + + updateBy : function(o, clause, args){ + var sql = "UPDATE " + this.name + " set "; + var fs = [], a = []; + for(var key in o){ + if(o.hasOwnProperty(key)){ + fs[fs.length] = key + ' = ?'; + a[a.length] = o[key]; + } + } + for(var key in args){ + if(args.hasOwnProperty(key)){ + a[a.length] = args[key]; + } + } + sql = [sql, fs.join(','), ' WHERE ', clause].join(''); + return this.conn.execBy(sql, a); + }, + + insert : function(o){ + var sql = "INSERT into " + this.name + " "; + var fs = [], vs = [], a = []; + for(var key in o){ + if(o.hasOwnProperty(key)){ + fs[fs.length] = key; + vs[vs.length] = '?'; + a[a.length] = o[key]; + } + } + sql = [sql, '(', fs.join(','), ') VALUES (', vs.join(','), ')'].join(''); + return this.conn.execBy(sql, a); + }, + + lookup : function(id){ + return this.selectBy('where ' + this.keyName + " = ?", [id])[0] || null; + }, + + exists : function(id){ + return !!this.lookup(id); + }, + + save : function(o){ + if(this.exists(o[this.keyName])){ + this.update(o); + }else{ + this.insert(o); + } + }, + + select : function(clause){ + return this.selectBy(clause, null); + }, + + selectBy : function(clause, args){ + var sql = "select * from " + this.name; + if(clause){ + sql += ' ' + clause; + } + args = args || {}; + return this.conn.queryBy(sql, args); + }, + + remove : function(clause){ + this.deleteBy(clause, null); + }, + + removeBy : function(clause, args){ + var sql = "delete from " + this.name; + if(clause){ + sql += ' where ' + clause; + } + args = args || {}; + this.conn.execBy(sql, args); + } +}; +Ext.sql.Proxy = function(conn, table, keyName, store, readonly){ + Ext.sql.Proxy.superclass.constructor.call(this); + this.conn = conn; + this.table = this.conn.getTable(table, keyName); + this.store = store; + + if (readonly !== true) { + this.store.on('add', this.onAdd, this); + this.store.on('update', this.onUpdate, this); + this.store.on('remove', this.onRemove, this); + } +}; + +Ext.sql.Proxy.DATE_FORMAT = 'Y-m-d H:i:s'; + +Ext.extend(Ext.sql.Proxy, Ext.data.DataProxy, { + load : function(params, reader, callback, scope, arg){ + if(!this.conn.isOpen()){ + this.conn.on('open', function(){ + this.load(params, reader, callback, scope, arg); + }, this, {single:true}); + return; + }; + if(this.fireEvent("beforeload", this, params, reader, callback, scope, arg) !== false){ + var clause = params.where || ''; + var args = params.args || []; + var group = params.groupBy; + var sort = params.sort; + var dir = params.dir; + + if(group || sort){ + clause += ' ORDER BY '; + if(group && group != sort){ + clause += group + ' ASC, '; + } + clause += sort + ' ' + (dir || 'ASC'); + } + + var rs = this.table.selectBy(clause, args); + this.onLoad({callback:callback, scope:scope, arg:arg, reader: reader}, rs); + }else{ + callback.call(scope||this, null, arg, false); + } + }, + + onLoad : function(trans, rs, e, stmt){ + if(rs === false){ + this.fireEvent("loadexception", this, null, trans.arg, e); + trans.callback.call(trans.scope||window, null, trans.arg, false); + return; + } + var result = trans.reader.readRecords(rs); + this.fireEvent("load", this, rs, trans.arg); + trans.callback.call(trans.scope||window, result, trans.arg, true); + }, + + processData : function(o){ + var fs = this.store.fields; + var r = {}; + for(var key in o){ + var f = fs.key(key), v = o[key]; + if(f){ + if(f.type == 'date'){ + r[key] = v ? v.format(Ext.sql.Proxy.DATE_FORMAT,10) : ''; + }else if(f.type == 'boolean'){ + r[key] = v ? 1 : 0; + }else{ + r[key] = v; + } + } + } + return r; + }, + + onUpdate : function(ds, record){ + var changes = record.getChanges(); + var kn = this.table.keyName; + this.table.updateBy(this.processData(changes), kn + ' = ?', [record.data[kn]]); + record.commit(true); + }, + + onAdd : function(ds, records, index){ + for(var i = 0, len = records.length; i < len; i++){ + this.table.insert(this.processData(records[i].data)); + } + }, + + onRemove : function(ds, record, index){ + var kn = this.table.keyName; + this.table.removeBy(kn + ' = ?', [record.data[kn]]); + } +}); + Ext.sql.AirConnection = Ext.extend(Ext.sql.Connection, { + + open : function(db){ + this.conn = new air.SQLConnection(); + var file = air.File.applicationDirectory.resolvePath(db); + this.conn.open(file); + this.openState = true; + this.fireEvent('open', this); + }, + + close : function(){ + this.conn.close(); + this.fireEvent('close', this); + }, + + createStatement : function(type){ + var stmt = new air.SQLStatement(); + stmt.sqlConnection = this.conn; + return stmt; + }, + + exec : function(sql){ + var stmt = this.createStatement('exec'); + stmt.text = sql; + stmt.execute(); + }, + + execBy : function(sql, args){ + var stmt = this.createStatement('exec'); + stmt.text = sql; + this.addParams(stmt, args); + stmt.execute(); + }, + + query : function(sql){ + var stmt = this.createStatement('query'); + stmt.text = sql; + stmt.execute(this.maxResults); + return this.readResults(stmt.getResult()); + }, + + queryBy : function(sql, args){ + var stmt = this.createStatement('query'); + stmt.text = sql; + this.addParams(stmt, args); + stmt.execute(this.maxResults); + return this.readResults(stmt.getResult()); + }, + + addParams : function(stmt, args){ + if(!args){ return; } + for(var key in args){ + if(args.hasOwnProperty(key)){ + if(!isNaN(key)){ + var v = args[key]; + if(Ext.isDate(v)){ + v = v.format(Ext.sql.Proxy.DATE_FORMAT); + } + stmt.parameters[parseInt(key)] = v; + }else{ + stmt.parameters[':' + key] = args[key]; + } + } + } + return stmt; + }, + + readResults : function(rs){ + var r = []; + if(rs && rs.data){ + var len = rs.data.length; + for(var i = 0; i < len; i++) { + r[r.length] = rs.data[i]; + } + } + return r; + } +}); +Ext.air.SystemTray = function(){ + var app = air.NativeApplication.nativeApplication; + var icon, isWindows = false, bitmaps; + + + if(air.NativeApplication.supportsSystemTrayIcon) { + icon = app.icon; + isWindows = true; + } + + + if(air.NativeApplication.supportsDockIcon) { + icon = app.icon; + } + + return { + + setIcon : function(icon, tooltip, initWithIcon){ + if(!icon){ + return; + } + var loader = new air.Loader(); + loader.contentLoaderInfo.addEventListener(air.Event.COMPLETE, function(e){ + bitmaps = new runtime.Array(e.target.content.bitmapData); + if (initWithIcon) { + icon.bitmaps = bitmaps; + } + }); + loader.load(new air.URLRequest(icon)); + if(tooltip && air.NativeApplication.supportsSystemTrayIcon) { + app.icon.tooltip = tooltip; + } + }, + + bounce : function(priority){ + icon.bounce(priority); + }, + + on : function(eventName, fn, scope){ + icon.addEventListener(eventName, function(){ + fn.apply(scope || this, arguments); + }); + }, + + hideIcon : function(){ + if(!icon){ + return; + } + icon.bitmaps = []; + }, + + showIcon : function(){ + if(!icon){ + return; + } + icon.bitmaps = bitmaps; + }, + + setMenu: function(actions, _parentMenu){ + if(!icon){ + return; + } + var menu = new air.NativeMenu(); + + for (var i = 0, len = actions.length; i < len; i++) { + var a = actions[i]; + if(a == '-'){ + menu.addItem(new air.NativeMenuItem("", true)); + }else{ + var item = menu.addItem(Ext.air.MenuItem(a)); + if(a.menu || (a.initialConfig && a.initialConfig.menu)){ + item.submenu = Ext.air.SystemTray.setMenu(a.menu || a.initialConfig.menu, menu); + } + } + + if(!_parentMenu){ + icon.menu = menu; + } + } + + return menu; + } + }; +}(); + + +Ext.air.DragType = { + TEXT : 'text/plain', + HTML : 'text/html', + URL : 'text/uri-list', + BITMAP : 'image/x-vnd.adobe.air.bitmap', + FILES : 'application/x-vnd.adobe.air.file-list' +}; + +Ext.apply(Ext.EventObjectImpl.prototype, { + hasFormat : function(format){ + if (this.browserEvent.dataTransfer) { + for (var i = 0, len = this.browserEvent.dataTransfer.types.length; i < len; i++) { + if(this.browserEvent.dataTransfer.types[i] == format) { + return true; + } + } + } + return false; + }, + + getData : function(type){ + return this.browserEvent.dataTransfer.getData(type); + } +}); + + + +Ext.air.Sound = { + play : function(file, startAt){ + var soundFile = air.File.applicationDirectory.resolvePath(file); + var sound = new air.Sound(); + sound.load(new air.URLRequest(soundFile.url)); + sound.play(startAt); + } +}; + + +Ext.air.SystemMenu = function(){ + var menu; + + if(air.NativeWindow.supportsMenu && nativeWindow.systemChrome != air.NativeWindowSystemChrome.NONE) { + menu = new air.NativeMenu(); + nativeWindow.menu = menu; + } + + + if(air.NativeApplication.supportsMenu) { + menu = air.NativeApplication.nativeApplication.menu; + } + + function find(menu, text){ + for(var i = 0, len = menu.items.length; i < len; i++){ + if(menu.items[i]['label'] == text){ + return menu.items[i]; + } + } + return null; + } + + return { + add: function(text, actions, mindex){ + + var item = find(menu, text); + if(!item){ + item = menu.addItem(new air.NativeMenuItem(text)); + item.mnemonicIndex = mindex || 0; + + item.submenu = new air.NativeMenu(); + } + for (var i = 0, len = actions.length; i < len; i++) { + item.submenu.addItem(actions[i] == '-' ? new air.NativeMenuItem("", true) : Ext.air.MenuItem(actions[i])); + } + return item.submenu; + }, + + get : function(){ + return menu; + } + }; +}(); + + +Ext.air.MenuItem = function(action){ + if(!action.isAction){ + action = new Ext.Action(action); + } + var cfg = action.initialConfig; + var nativeItem = new air.NativeMenuItem(cfg.itemText || cfg.text); + + nativeItem.enabled = !cfg.disabled; + + if(!Ext.isEmpty(cfg.checked)){ + nativeItem.checked = cfg.checked; + } + + var handler = cfg.handler; + var scope = cfg.scope; + + nativeItem.addEventListener(air.Event.SELECT, function(){ + handler.call(scope || window, cfg); + }); + + action.addComponent({ + setDisabled : function(v){ + nativeItem.enabled = !v; + }, + + setText : function(v){ + nativeItem.label = v; + }, + + setVisible : function(v){ + + nativeItem.enabled = !v; + }, + + setHandler : function(newHandler, newScope){ + handler = newHandler; + scope = newScope; + }, + + on : function(){} + }); + + return nativeItem; +} + Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-air/resources/air-resources.jsb =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-air/resources/air-resources.jsb,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-air/resources/air-resources.jsb 11 Apr 2009 18:15:08 -0000 1.1 @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-air/resources/ext-air.css =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-air/resources/ext-air.css,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-air/resources/ext-air.css 11 Apr 2009 18:15:08 -0000 1.1 @@ -0,0 +1,101 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +body.x-air-window { + background:transparent !important; + height:100%; +} + +.x-air.x-window-tc { + background: transparent url(images/top-bottom.png) repeat-x 0 0; + padding-top:11px; +} +.x-air.x-window-bc .x-air.x-window-footer { + background: transparent url(images/top-bottom.png) repeat-x 0 bottom; + padding-bottom:15px; +} +.x-panel-nofooter .x-air.x-window-bc { + background: transparent url(images/top-bottom.png) repeat-x 0 bottom; + height:15px; +} +.x-air.x-window-tr { + background: transparent url(images/right-corners.png) no-repeat right 0; + padding-right:15px; +} +.x-air.x-window-br { + background: transparent url(images/right-corners.png) no-repeat right bottom; + padding-right:15px; +} + +.x-air.x-window-tl { + background: transparent url(images/left-corners.png) no-repeat 0 0; + padding-left:15px; +} +.x-air.x-window-bl { + background: transparent url(images/left-corners.png) no-repeat 0 bottom; + padding-left:15px; +} + +.x-air.x-window-mr { + background: transparent url(images/left-right.png) repeat-y right 0; + padding-right:15px; +} + +.x-air.x-window-ml { + background: transparent url(images/left-right.png) repeat-y 0 0; + padding-left:15px; +} +.x-air.x-resizable-handle{ + margin:7px; +} + +.x-air.x-window-mc { + background: #CAD9EC; + border-right:1px solid #DFE8F6; + border-bottom:1px solid #DFE8F6; + border-top:1px solid #a3bae9; + border-left:1px solid #a3bae9; +} + +.x-air.x-window-body { + border-left:1px solid #DFE8F6; + border-top:1px solid #DFE8F6; + border-bottom:1px solid #a3bae9; + border-right:1px solid #a3bae9; + background:transparent !important; +} + + +.ext-safari .x-small-editor .x-form-field { + /* safari text field will not size so needs bigger font */ + font:normal 11px arial, tahoma, helvetica, sans-serif; +} + +.x-menu-sep { + overflow:hidden; + height:1px; + margin: 1px 3px; +} + +.x-layout-split, .x-splitbar-h, .x-splitbar-v, .x-layout-split-north, .x-layout-split-east, .x-layout-split-west, .x-layout-split-south { + cursor:move !important; +} + +.x-grid3:not(input) { + -khtml-user-select: none; +} +.x-tree:not(input) { + -khtml-user-select: none; +} +.x-panel:not(input) { + -khtml-user-select: none; +} +.x-panel .x-panel-body textarea { + -khtml-user-select: normal; +} + Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-air/resources/icons/extlogo128.png =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-air/resources/icons/extlogo128.png,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-air/resources/icons/extlogo16.png =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-air/resources/icons/extlogo16.png,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-air/resources/icons/extlogo32.png =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-air/resources/icons/extlogo32.png,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-air/resources/icons/extlogo48.png =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-air/resources/icons/extlogo48.png,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-air/resources/icons/extlogo64.png =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-air/resources/icons/extlogo64.png,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-air/resources/images/left-corners.png =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-air/resources/images/left-corners.png,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-air/resources/images/left-right.png =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-air/resources/images/left-right.png,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-air/resources/images/right-corners.png =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-air/resources/images/right-corners.png,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-air/resources/images/top-bottom.png =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/ext-air/resources/images/top-bottom.png,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/bell.png =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/bell.png,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/check.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/check.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/delete.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/delete.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/edit.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/edit.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/hd-check.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/hd-check.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/hrow.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/hrow.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-active.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-active.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-all.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-all.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-by-category.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-by-category.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-by-date.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-by-date.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-complete.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-complete.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-delete-task.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-delete-task.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-filter.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-filter.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-folder-delete.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-folder-delete.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-folder-new.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-folder-new.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-folder.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-folder.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-list-delete.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-list-delete.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-list-new.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-list-new.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-list.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-list.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-mark-active.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-mark-active.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-mark-complete.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-mark-complete.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-multi-list.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-multi-list.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-no-group.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-no-group.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-paste-new.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-paste-new.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-show-active.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-show-active.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-show-all.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-show-all.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-show-complete.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/icon-show-complete.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/my-lists.png =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/my-lists.png,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/panel-header.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/panel-header.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/rbtn.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/rbtn.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/reminder-hd.png =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/reminder-hd.png,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/s.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/s.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/save.gif =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/images/save.gif,v diff -u Binary files differ Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/DateTimeField.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/DateTimeField.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/DateTimeField.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,384 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +Ext.namespace('Ext.ux.form'); + +/** + * Ext.ux.form.DateTime Extension Class for Ext 2.x Library + * + * @author Ing. Jozef Sakalos + * @copyright (c) 2008, Ing. Jozef Sakalos + * @version $Id: DateTimeField.js,v 1.1 2009/04/11 18:15:09 hamiltonc Exp $ + * + * @class Ext.ux.form.DateTime + * @extends Ext.form.Field + * + * @history + * 2008-1-31 Jack Slocum + * Updated for reformatting and code edits + */ +Ext.ux.form.DateTime = Ext.extend(Ext.form.Field, { + defaultAutoCreate: { + tag: 'input', + type: 'hidden' + }, + dateWidth: 135, + timeWidth: 100, + dtSeparator: ' ', + hiddenFormat: 'Y-m-d H:i:s', + otherToNow: true, + timePosition: 'right', + + initComponent: function(){ + // call parent initComponent + Ext.ux.form.DateTime.superclass.initComponent.call(this); + + // create DateField + var dateConfig = Ext.apply({}, { + id: this.id + '-date', + format: this.dateFormat, + width: this.dateWidth, + listeners: { + blur: { + scope: this, + fn: this.onBlur + }, + focus: { + scope: this, + fn: this.onFocus + } + } + }, this.dateConfig); + this.df = new Ext.form.DateField(dateConfig); + delete (this.dateFormat); + + // create TimeField + var timeConfig = Ext.apply({}, { + id: this.id + '-time', + format: this.timeFormat, + width: this.timeWidth, + listeners: { + blur: { + scope: this, + fn: this.onBlur + }, + focus: { + scope: this, + fn: this.onFocus + } + } + }, this.timeConfig); + this.tf = new Ext.form.TimeField(timeConfig); + delete (this.timeFormat); + + // relay events + this.relayEvents(this.df, ['focus', 'specialkey', 'invalid', 'valid']); + this.relayEvents(this.tf, ['focus', 'specialkey', 'invalid', 'valid']); + + }, + onRender: function(ct, position){ + if (this.isRendered) { + return; + } + + // render underlying field + Ext.ux.form.DateTime.superclass.onRender.call(this, ct, position); + + // render DateField and TimeField + // create bounding table + if ('below' === this.timePosition) { + var t = Ext.DomHelper.append(ct, { + tag: 'table', + style: 'border-collapse:collapse', + children: [{ + tag: 'tr', + children: [{ + tag: 'td', + style: 'padding-bottom:1px', + cls: 'ux-datetime-date' + }] + }, { + tag: 'tr', + children: [{ + tag: 'td', + cls: 'ux-datetime-time' + }] + }] + }, true); + } + else { + var t = Ext.DomHelper.append(ct, { + tag: 'table', + style: 'border-collapse:collapse', + children: [{ + tag: 'tr', + children: [{ + tag: 'td', + style: 'padding-right:4px', + cls: 'ux-datetime-date' + }, { + tag: 'td', + cls: 'ux-datetime-time' + }] + }] + }, true); + } + + this.tableEl = t; + this.wrap = t.wrap({ + cls: 'x-form-field-wrap' + }); + this.wrap.on("mousedown", this.onMouseDown, this, { + delay: 10 + }); + + // render DateField & TimeField + this.df.render(t.child('td.ux-datetime-date')); + this.tf.render(t.child('td.ux-datetime-time')); + + if (Ext.isIE && Ext.isStrict) { + t.select('input').applyStyles({ + top: 0 + }); + } + + this.on('specialkey', this.onSpecialKey, this); + + this.df.el.swallowEvent(['keydown', 'keypress']); + this.tf.el.swallowEvent(['keydown', 'keypress']); + + // create errorIcon for side invalid + if ('side' === this.msgTarget) { + var elp = this.el.findParent('.x-form-element', 10, true); + this.errorIcon = elp.createChild({ + cls: 'x-form-invalid-icon' + }); + + this.df.errorIcon = this.errorIcon; + this.tf.errorIcon = this.errorIcon; + } + + this.isRendered = true; + + }, + getPositionEl: function(){ + return this.wrap; + }, + getResizeEl: function(){ + return this.wrap; + }, + + adjustSize: Ext.BoxComponent.prototype.adjustSize, + + alignErrorIcon: function(){ + this.errorIcon.alignTo(this.wrap, 'tl-tr', [2, 0]); + }, + + onSpecialKey: function(t, e){ + if (e.getKey() == e.TAB) { + if (t === this.df && !e.shiftKey) { + e.stopEvent(); + this.tf.focus(); + } + if (t === this.tf && e.shiftKey) { + e.stopEvent(); + this.df.focus(); + } + } + }, + + setSize: function(w, h){ + if (!w) { + return; + } + if ('below' == this.timePosition) { + this.df.setSize(w, h); + this.tf.setSize(w, h) + if (Ext.isIE) { + this.df.el.up('td').setWidth(w); + this.tf.el.up('td').setWidth(w); + } + } + else { + this.df.setSize(w - this.timeWidth - 4, h); + this.tf.setSize(this.timeWidth, h); + + if (Ext.isIE) { + this.df.el.up('td').setWidth(w - this.timeWidth - 4); + this.tf.el.up('td').setWidth(this.timeWidth); + } + } + + }, + + setValue: function(val){ + if (!val) { + this.setDate(''); + this.setTime(''); + this.updateValue(); + return; + } + // clear cross frame AIR nonsense + val = new Date(val.getTime()); + var da, time; + if (Ext.isDate(val)) { + this.setDate(val); + this.setTime(val); + this.dateValue = new Date(val); + } + else { + da = val.split(this.dtSeparator); + this.setDate(da[0]); + if (da[1]) { + this.setTime(da[1]); + } + } + this.updateValue(); + }, + + getValue: function(){ + // create new instance of date + return this.dateValue ? new Date(this.dateValue) : ''; + }, + + onMouseDown: function(e){ + // just to prevent blur event when clicked in the middle of fields + this.wrapClick = 'td' === e.target.nodeName.toLowerCase(); + }, + + onFocus: function(){ + if (!this.hasFocus) { + this.hasFocus = true; + this.startValue = this.getValue(); + this.fireEvent("focus", this); + } + }, + + onBlur: function(f){ + // called by both DateField and TimeField blur events + + // revert focus to previous field if clicked in between + if (this.wrapClick) { + f.focus(); + this.wrapClick = false; + } + + // update underlying value + if (f === this.df) { + this.updateDate(); + } + else { + this.updateTime(); + } + this.updateHidden(); + + // fire events later + (function(){ + if (!this.df.hasFocus && !this.tf.hasFocus) { + var v = this.getValue(); + if (String(v) !== String(this.startValue)) { + this.fireEvent("change", this, v, this.startValue); + } + this.hasFocus = false; + this.fireEvent('blur', this); + } + }).defer(100, this); + + }, + updateDate: function(){ + + var d = this.df.getValue(); + if (d) { + if (!Ext.isDate(this.dateValue)) { + this.initDateValue(); + if (!this.tf.getValue()) { + this.setTime(this.dateValue); + } + } + this.dateValue.setFullYear(d.getFullYear()); + this.dateValue.setMonth(d.getMonth()); + this.dateValue.setDate(d.getDate()); + } + else { + this.dateValue = ''; + this.setTime(''); + } + }, + updateTime: function(){ + var t = this.tf.getValue(); + if (t && !Ext.isDate(t)) { + t = Date.parseDate(t, this.tf.format); + } + if (t && !this.df.getValue()) { + this.initDateValue(); + this.setDate(this.dateValue); + } + if (Ext.isDate(this.dateValue)) { + if (t) { + this.dateValue.setHours(t.getHours()); + this.dateValue.setMinutes(t.getMinutes()); + this.dateValue.setSeconds(t.getSeconds()); + } + else { + this.dateValue.setHours(0); + this.dateValue.setMinutes(0); + this.dateValue.setSeconds(0); + } + } + }, + initDateValue: function(){ + this.dateValue = this.otherToNow ? new Date() : new Date(1970, 0, 1, 0, 0, 0); + }, + updateHidden: function(){ + if (this.isRendered) { + var value = Ext.isDate(this.dateValue) ? this.dateValue.format(this.hiddenFormat) : ''; + this.el.dom.value = value; + } + }, + updateValue: function(){ + + this.updateDate(); + this.updateTime(); + this.updateHidden(); + + return; + + }, + setDate: function(date){ + this.df.setValue(date); + }, + setTime: function(date){ + this.tf.setValue(date); + }, + isValid: function(){ + return this.df.isValid() && this.tf.isValid(); + }, + validate: function(){ + return this.df.validate() && this.tf.validate(); + }, + focus: function(){ + this.df.focus(); + }, + + onDisable : function(){ + if(this.rendered){ + this.df.disable(); + this.tf.disable(); + } + }, + + onEnable : function(){ + if(this.rendered){ + this.df.enable(); + this.tf.enable(); + } + } +}); + +// register xtype +Ext.reg('xdatetime', Ext.ux.form.DateTime); \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/Exporter.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/Exporter.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/Exporter.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,60 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +tx.Exporter = function(){ + var lists = tx.data.conn.query('select * from list'); + + var doc = new runtime.flash.xml.XMLDocument(); + + var root = doc.createElement('simple-tasks'); + doc.appendChild(root); + + root.attributes['version'] = '2.0'; + + for(var i = 0, len = lists.length; i < len; i++){ + var list = lists[i]; + + var listNode = doc.createElement('list'); + root.appendChild(listNode); + + for(var k in list){ + if(list.hasOwnProperty(k)){ + listNode.attributes[k] = String(list[k]); + } + } + + var tasks = tx.data.conn.queryBy('select * from task where listId = ?', [list.listId]); + for(var j = 0, jlen = tasks.length; j < jlen; j++){ + var task = tasks[j]; + + var taskNode = doc.createElement('task'); + listNode.appendChild(taskNode); + + for(var t in task){ + if(task.hasOwnProperty(t)){ + taskNode.attributes[t] = String(task[t]); + } + } + } + } + + var file = new air.File(air.File.documentsDirectory.nativePath + air.File.separator + 'tasks.xml'); + + file.addEventListener('select', function(e){ + var target = e.target; + var stream = new air.FileStream(); + stream.open(target, air.FileMode.WRITE); + stream.writeUTFBytes(''); + stream.writeUTFBytes(doc.toString()); + stream.close(); + }); + + // I wonder why no filter for Save As? + // var filter = new air.FileFilter("Tasks XML File", "*.xml"); + file.browseForSave('Save As'); +}; Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/Importer.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/Importer.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/Importer.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,111 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +tx.Importer = function(){ + function chooseFile(callback){ + var file = new air.File(air.File.documentsDirectory.nativePath); + var filter = new air.FileFilter("Tasks XML File", "*.xml"); + + file.addEventListener('select', function(e){ + doImport(e.target, callback); + }); + + file.browseForOpen('Open', [filter]); + } + + + /* + * This import function used to be clean and simple. The addition of asynchronous import and + * a progress bar changed that quickly. :) + */ + function doImport(file, callback){ + + Ext.Msg.progress('Import', 'Reading file...'); + + var listTable = tx.data.conn.getTable('list', 'listId'); + var taskTable = tx.data.conn.getTable('task', 'taskId'); + var taskCount = 0; + var visibleIndex = 0; + var doUpdate = true; + var f = String.format; + + function getProgress(index){ + if(taskCount > 0){ + return (.8 * index) / taskCount; + }else{ + return .8; + } + } + + function readFile(){ + var stream = new air.FileStream(); + stream.open(file, air.FileMode.READ); + var xml = stream.readUTFBytes(stream.bytesAvailable); + stream.close(); + + Ext.Msg.updateProgress(.1, 'Parsing...'); + parse.defer(10, null, [xml]); + } + + function parse(xml){ + try { + var doc = new runtime.flash.xml.XMLDocument(); + doc.ignoreWhite = true; + doc.parseXML(xml); + + var lists = doc.firstChild.childNodes; + var count = lists.length; + + for (var i = 0; i < count; i++) { + taskCount += lists[i].childNodes.length; + } + Ext.Msg.updateProgress(.15, '', 'Loading Tasks...'); + loadLists(lists, 0); + }catch(e){ + air.trace(e); + alert('An error occured while trying to import the selected file.'); + } + } + + function loadLists(lists, index){ + if(index < lists.length){ + var list = lists[index]; + listTable.save(list.attributes); + nextTask(list.childNodes, 0, lists, index); + } + else { + Ext.Msg.updateProgress(1, '', 'Completing import...'); + callback.defer(10); + } + } + + function nextTask(tasks, index, lists, listIndex){ + if(index < tasks.length){ + Ext.Msg.updateProgress( + getProgress(++visibleIndex), + f('{0} of {1}', visibleIndex, taskCount) + ); + loadTasks.defer(250, window, [tasks, index, lists, listIndex]); + } + else { + loadLists(lists, ++listIndex); + } + } + + function loadTasks(tasks, index, lists, listIndex){ + taskTable.save(tasks[index].attributes); + nextTask(tasks, ++index, lists, listIndex); + } + + readFile.defer(10); + } + + this.doImport = function(callback){ + chooseFile(callback); + } +}; Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/ListLoader.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/ListLoader.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/ListLoader.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,60 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +ListLoader = function(config){ + Ext.apply(this, config); +}; + +Ext.extend(ListLoader, Ext.util.Observable, { + keyAttribute: 'id', + keyField: 'parentId', + + load: function(node, callback){ + var key = this.keyField; + var v = node.attributes[this.keyAttribute]; + var rs = this.store.queryBy(function(r){ + return r.data[key] === v; + }); + node.beginUpdate(); + for (var i = 0, d = rs.items, len = d.length; i < len; i++) { + var n = this.createNode(d[i]); + if (n) { + node.appendChild(n); + } + } + node.endUpdate(); + if(typeof callback == "function"){ + callback(this, node); + } + }, + + createNode : function(record){ + var d = record.data, n; + if(d.isFolder){ + n = new Ext.tree.AsyncTreeNode({ + loader: this, + id: record.id, + text: d.listName, + leaf: false, + iconCls: 'icon-folder', + editable: true, + expanded: true, + isFolder: true + }); + }else{ + n = new Ext.tree.TreeNode({ + id: record.id, + text: d.listName, + leaf: true, + iconCls: 'icon-list', + editable: true + }); + } + return n; + } +}); \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/ListSelector.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/ListSelector.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/ListSelector.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,60 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +// Implementation class for created the tree powered form field +ListSelector = Ext.extend(Ext.ux.TreeSelector, { + maxHeight:200, + listenForLoad: false, + initComponent : function(){ + + this.tree = new Ext.tree.TreePanel({ + animate:false, + border:false, + width: this.treeWidth || 180, + autoScroll:true, + useArrows:true, + selModel: new Ext.tree.ActivationModel(), + loader : new ListLoader({store: this.store}) + }); + + var root = new Ext.tree.AsyncTreeNode({ + text: 'All Lists', + id: 'root', + leaf: false, + iconCls: 'icon-folder', + expanded: true, + isFolder: true + }); + this.tree.setRootNode(root); + + this.tree.on('render', function(){ + this.store.bindTree(this.tree); + }, this); + + ListSelector.superclass.initComponent.call(this); + + // selecting folders is not allowed, so filter them + this.tree.getSelectionModel().on('beforeselect', this.beforeSelection, this); + + // if being rendered before the store is loaded, reload when it is loaded + if(this.listenForLoad) { + this.store.on('load', function(){ + root.reload(); + }, this, { + single: true + }); + } + }, + + beforeSelection : function(tree, node){ + if(node && node.attributes.isFolder){ + node.toggle(); + return false; + } + } +}); \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/ListStore.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/ListStore.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/ListStore.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,116 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + + +tx.data.ListStore = Ext.extend(Ext.data.Store, { + constructor: function(){ + tx.data.ListStore.superclass.constructor.call(this, { + sortInfo:{field: 'listName', direction: "ASC"}, + reader: new Ext.data.JsonReader({ + id: 'listId', + fields: tx.data.List + }) + }); + this.boundTrees = {}; + this.conn = tx.data.conn; + this.proxy = new Ext.sql.Proxy(tx.data.conn, 'list', 'listId', this); + }, + + getName : function(id){ + var l = this.data.map[id]; + return l ? l.data.listName : ''; + }, + + addList : function(name, id, isFolder, parentId){ + var l = this.findList(name); + if(!l){ + var id = id || Ext.uniqueId(); + l = new tx.data.List({listId: id, listName: name, isFolder: isFolder === true, parentId: parentId || 'root'}, id); + this.add(l); + } + return l; + }, + + newList : function(isFolder, parentId){ + var i = 1; + var text = isFolder ? 'New Folder ' : 'New List '; + while(this.findList(text + i)){ + i++; + } + return this.addList(text + i, undefined, isFolder, parentId); + }, + + findList : function(name){ + var d = this.data; + for(var i = 0, len = d.length; i < len; i++){ + if(d.items[i].data.listName === name){ + return d.items[i]; + } + } + return null; + }, + + loadDemoLists: function(){ + this.addList('Personal', 'personal', true, 'root'); + this.addList('Family', 'family', false, 'personal'); + this.addList('Bills', 'bills', false, 'personal'); + this.addList('Fun', 'fun', false, 'personal'); + this.addList('Other Stuff', 'personal-misc', false, 'personal'); + this.addList('Work', 'work', true, 'root'); + this.addList('Ext 2.x', 'ext2', false, 'work'); + this.addList('Ext 1.x', 'ext1', false, 'work'); + this.addList('Meetings', 'meetings', false, 'work'); + this.addList('Miscellaneous', 'work-misc', false, 'work'); + }, + + bindTree : function(tree){ + this.boundTrees[tree.id] = { + add: function(ls, records){ + var pnode = tree.getNodeById(records[0].data.parentId); + if(pnode){ + pnode.reload(); + } + }, + + remove: function(ls, record){ + var node = tree.getNodeById(record.id); + if(node && node.parentNode){ + node.parentNode.removeChild(node); + } + }, + + update: function(ls, record){ + var node = tree.getNodeById(record.id); + if(node){ + node.setText(record.data.listName); + } + } + }; + + this.on(this.boundTrees[tree.id]); + }, + + unbindTree : function(tree){ + var h = this.boundTrees[tree.id]; + if (h) { + this.un('add', h.add); + this.un('remove', h.remove); + this.un('update', h.update); + } + }, + + prepareTable : function(){ + try{ + this.createTable({ + name: 'list', + key: 'listId', + fields: tx.data.List.prototype.fields + }); + }catch(e){console.log(e);} + } +}); Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/ListTree.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/ListTree.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/ListTree.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,180 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +ListTree = function(config){ + ListTree.superclass.constructor.call(this, Ext.apply({ + id:'list-tree', + animate:false, + //rootVisible:false, + region:'west', + width:200, + split:true, + title:'My Lists', + autoScroll:true, + margins: '3 0 3 3', + cmargins: '3 3 3 3', + useArrows:true, + collapsible:true, + minWidth:120 + }, config)); + + this.on('contextmenu', this.onContextMenu, this); +} +Ext.extend(ListTree, Ext.tree.TreePanel, { + + initComponent : function(){ + this.bbar = [ + tx.actions.newList, + tx.actions.deleteList, + '-', + tx.actions.newFolder, + tx.actions.deleteFolder + ]; + + this.loader = new ListLoader({ + store: tx.data.lists + }); + ListTree.superclass.initComponent.call(this); + + var root = new Ext.tree.AsyncTreeNode({ + text: 'All Lists', + id: 'root', + leaf: false, + iconCls: 'icon-folder', + expanded: true, + isFolder: true, + editable: false + }); + this.setRootNode(root); + + this.editor = new Ext.tree.TreeEditor(this, { + allowBlank:false, + blankText:'A name is required', + selectOnFocus:true + }); + this.editor.shadow = false; + + this.editor.on('beforecomplete', function(ed, value, startValue){ + var node = ed.editNode; + value = Ext.util.Format.htmlEncode(value); + var r = this.store.getById(node.id); + r.set('listName', value); + //ed.editing = false; + //ed.hide(); + //return false; + }, this); + + this.sorter = new Ext.tree.TreeSorter(this, { + folderSort: true + }); + }, + + getActiveFolderId : function(){ + var sm = this.selModel; + var n = sm.getSelectedNode(); + if(n){ + return n.attributes.isFolder ? n.id : n.attributes.parentId; + } + return 'root'; + }, + + onContextMenu : function(node, e){ + if(!this.menu){ // create context menu on first right click + this.menu = new Ext.menu.Menu({ + id:'lists-ctx', + listWidth: 200, + items: [{ + iconCls:'icon-edit', + text:'New Task', + scope: this, + handler:function(){ + this.ctxNode.select(); + tx.actions.newTask.execute(); + } + },{ + iconCls:'icon-list-new', + text:'New List', + scope: this, + handler:function(){ + this.ctxNode.select(); + tx.actions.newList.execute(); + } + },{ + iconCls:'icon-folder-new', + text:'New Folder', + scope: this, + handler:function(){ + this.ctxNode.select(); + tx.actions.newFolder.execute(); + } + },'-',{ + text:'Delete', + iconCls:'icon-list-delete', + scope: this, + handler:function(){ + this.removeList(this.ctxNode); + } + }] + }); + this.menu.on('hide', this.onContextHide, this); + } + if(this.ctxNode){ + this.ctxNode.ui.removeClass('x-node-ctx'); + this.ctxNode = null; + } + this.ctxNode = node; + this.ctxNode.ui.addClass('x-node-ctx'); + + this.menu.items.get(1).setVisible(!!node.attributes.isFolder); + this.menu.items.get(2).setVisible(!!node.attributes.isFolder); + this.menu.items.get(0).setVisible(!node.attributes.isFolder); + + this.menu.showAt(e.getXY()); + }, + + onContextHide : function(){ + if(this.ctxNode){ + this.ctxNode.ui.removeClass('x-node-ctx'); + this.ctxNode = null; + } + }, + + startEdit : function(node, select){ + if(typeof node == 'string'){ + node = this.getNodeById(node); + } + if(select === true){ + node.select(); + } + var ed = this.editor; + setTimeout(function(){ + ed.editNode = node; + ed.startEdit(node.ui.textNode); + }, 10); + }, + + removeList : function(s){ + if (s && s.attributes.editable) { + Ext.Msg.confirm('Confirm', 'Are you sure you want to delete "' + Ext.util.Format.htmlEncode(s.text) + '"?', function(btn){ + if (btn == 'yes') { + if (s.nextSibling) { + s.nextSibling.select(); + } + else + if (s.previousSibling) { + s.previousSibling.select(); + } + s.parentNode.removeChild(s); + tx.data.lists.remove(this.store.getById(s.id)); + tx.data.tasks.removeList(s.id); + } + }, this); + } + } +}); + Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/Reminder.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/Reminder.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/Reminder.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,39 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +tx.ReminderManager = function(){ + var table; + + var run = function(){ + var rs = table.selectBy('where completed = 0 AND reminder <> \'\' AND reminder <= ?', [new Date()]); + for(var i = 0, len = rs.length; i < len; i++){ + showReminder.defer(10, window, [rs[i]]); + } + }; + + var showReminder = function(task){ + var o; + if (o = tx.data.tasks.getById(task.taskId)) { // if currently loaded + o.set('reminder', ''); + } + else { // else update db directly + table.update({ + taskId: task.taskId, + reminder: '' + }); + } + Ext.air.NativeWindowManager.getReminderWindow(task.taskId); + } + + return { + init : function(){ + table = tx.data.conn.getTable('task', 'taskId'); + setInterval(run, 10000); + } + } +}(); Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/SelectBox.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/SelectBox.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/SelectBox.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,199 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +/** + * Makes a ComboBox more closely mimic an HTML SELECT. Supports clicking and dragging + * through the list, with item selection occurring when the mouse button is released. + * When used will automatically set {@link #editable} to false and call {@link Ext.Element#unselectable} + * on inner elements. Re-enabling editable after calling this will NOT work. + * + * @author Corey Gilmore + * http://extjs.com/forum/showthread.php?t=6392 + * + * @history 2007-07-08 jvs + * Slight mods for Ext 2.0 + */ +Ext.ux.SelectBox = function(config){ + this.searchResetDelay = 1000; + config = config || {}; + config = Ext.apply(config || {}, { + editable: false, + forceSelection: true, + rowHeight: false, + lastSearchTerm: false, + triggerAction: 'all', + mode: 'local' + }); + + Ext.ux.SelectBox.superclass.constructor.apply(this, arguments); + + this.lastSelectedIndex = this.selectedIndex || 0; +}; + +Ext.extend(Ext.ux.SelectBox, Ext.form.ComboBox, { + lazyInit: false, + initEvents : function(){ + Ext.ux.SelectBox.superclass.initEvents.apply(this, arguments); + // you need to use keypress to capture upper/lower case and shift+key, but it doesn't work in IE + this.el.on('keydown', this.keySearch, this, true); + this.cshTask = new Ext.util.DelayedTask(this.clearSearchHistory, this); + }, + + keySearch : function(e, target, options) { + var raw = e.getKey(); + var key = String.fromCharCode(raw); + var startIndex = 0; + + if( !this.store.getCount() ) { + return; + } + + switch(raw) { + case Ext.EventObject.HOME: + e.stopEvent(); + this.selectFirst(); + return; + + case Ext.EventObject.END: + e.stopEvent(); + this.selectLast(); + return; + + case Ext.EventObject.PAGEDOWN: + this.selectNextPage(); + e.stopEvent(); + return; + + case Ext.EventObject.PAGEUP: + this.selectPrevPage(); + e.stopEvent(); + return; + } + + // skip special keys other than the shift key + if( (e.hasModifier() && !e.shiftKey) || e.isNavKeyPress() || e.isSpecialKey() ) { + return; + } + if( this.lastSearchTerm == key ) { + startIndex = this.lastSelectedIndex; + } + this.search(this.displayField, key, startIndex); + this.cshTask.delay(this.searchResetDelay); + }, + + onRender : function(ct, position) { + this.store.on('load', this.calcRowsPerPage, this); + Ext.ux.SelectBox.superclass.onRender.apply(this, arguments); + if( this.mode == 'local' ) { + this.calcRowsPerPage(); + } + }, + + onSelect : function(record, index, skipCollapse){ + if(this.fireEvent('beforeselect', this, record, index) !== false){ + this.setValue(record.data[this.valueField || this.displayField]); + if( !skipCollapse ) { + this.collapse(); + } + this.lastSelectedIndex = index + 1; + this.fireEvent('select', this, record, index); + } + }, + + render : function(ct) { + Ext.ux.SelectBox.superclass.render.apply(this, arguments); + if( Ext.isSafari ) { + this.el.swallowEvent('mousedown', true); + } + this.el.unselectable(); + this.innerList.unselectable(); + this.trigger.unselectable(); + this.innerList.on('mouseup', function(e, target, options) { + if( target.id && target.id == this.innerList.id ) { + return; + } + this.onViewClick(); + }, this); + + this.innerList.on('mouseover', function(e, target, options) { + if( target.id && target.id == this.innerList.id ) { + return; + } + this.lastSelectedIndex = this.view.getSelectedIndexes()[0] + 1; + this.cshTask.delay(this.searchResetDelay); + }, this); + + this.trigger.un('click', this.onTriggerClick, this); + this.trigger.on('mousedown', function(e, target, options) { + e.preventDefault(); + this.onTriggerClick(); + }, this); + + this.on('collapse', function(e, target, options) { + Ext.getDoc().un('mouseup', this.collapseIf, this); + }, this, true); + + this.on('expand', function(e, target, options) { + Ext.getDoc().on('mouseup', this.collapseIf, this); + }, this, true); + }, + + clearSearchHistory : function() { + this.lastSelectedIndex = 0; + this.lastSearchTerm = false; + }, + + selectFirst : function() { + this.focusAndSelect(this.store.data.first()); + }, + + selectLast : function() { + this.focusAndSelect(this.store.data.last()); + }, + + selectPrevPage : function() { + if( !this.rowHeight ) { + return; + } + var index = Math.max(this.selectedIndex-this.rowsPerPage, 0); + this.focusAndSelect(this.store.getAt(index)); + }, + + selectNextPage : function() { + if( !this.rowHeight ) { + return; + } + var index = Math.min(this.selectedIndex+this.rowsPerPage, this.store.getCount() - 1); + this.focusAndSelect(this.store.getAt(index)); + }, + + search : function(field, value, startIndex) { + field = field || this.displayField; + this.lastSearchTerm = value; + var index = this.store.find.apply(this.store, arguments); + if( index !== -1 ) { + this.focusAndSelect(index); + } + }, + + focusAndSelect : function(record) { + var index = typeof record === 'number' ? record : this.store.indexOf(record); + this.select(index, this.isExpanded()); + this.onSelect(this.store.getAt(record), index, this.isExpanded()); + }, + + calcRowsPerPage : function() { + if( this.store.getCount() ) { + this.rowHeight = Ext.fly(this.view.getNode(0)).getHeight(); + this.rowsPerPage = this.maxHeight / this.rowHeight; + } else { + this.rowHeight = false; + } + } + +}); \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/SwitchButton.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/SwitchButton.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/SwitchButton.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,97 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +Ext.SwitchButton = Ext.extend(Ext.Component, { + initComponent : function(){ + Ext.SwitchButton.superclass.initComponent.call(this); + + var mc = new Ext.util.MixedCollection(); + mc.addAll(this.items); + this.items = mc; + + this.addEvents('change'); + + if(this.handler){ + this.on('change', this.handler, this.scope || this); + } + }, + + onRender : function(ct, position){ + + var el = document.createElement('table'); + el.cellSpacing = 0; + el.className = 'x-rbtn'; + el.id = this.id; + + var row = document.createElement('tr'); + el.appendChild(row); + + var count = this.items.length; + var last = count - 1; + this.activeItem = this.items.get(this.activeItem); + + for(var i = 0; i < count; i++){ + var item = this.items.itemAt(i); + + var cell = row.appendChild(document.createElement('td')); + cell.id = this.id + '-rbi-' + i; + + var cls = i == 0 ? 'x-rbtn-first' : (i == last ? 'x-rbtn-last' : 'x-rbtn-item'); + item.baseCls = cls; + + if(this.activeItem == item){ + cls += '-active'; + } + cell.className = cls; + + var button = document.createElement('button'); + button.innerHTML = ' '; + button.className = item.iconCls; + button.qtip = item.tooltip; + + cell.appendChild(button); + + item.cell = cell; + } + + this.el = Ext.get(ct.dom.appendChild(el)); + + this.el.on('click', this.onClick, this); + }, + + getActiveItem : function(){ + return this.activeItem; + }, + + setActiveItem : function(item){ + if(typeof item != 'object' && item !== null){ + item = this.items.get(item); + } + var current = this.getActiveItem(); + if(item != current){ + if(current){ + Ext.fly(current.cell).removeClass(current.baseCls + '-active'); + } + if(item) { + Ext.fly(item.cell).addClass(item.baseCls + '-active'); + } + this.activeItem = item; + this.fireEvent('change', this, item); + } + return item; + }, + + onClick : function(e){ + var target = e.getTarget('td', 2); + if(!this.disabled && target){ + this.setActiveItem(parseInt(target.id.split('-rbi-')[1], 10)); + } + } +}); + +Ext.reg('switch', Ext.SwitchButton); Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/TaskGrid.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/TaskGrid.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/TaskGrid.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,249 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +TaskGrid = function(){ + + // custom columns + var completeColumn = new CompleteColumn(); + var reminderColumn = new ReminderColumn(); + + TaskGrid.superclass.constructor.call(this, { + id:'tasks-grid', + store: tx.data.tasks, + sm: new Ext.grid.RowSelectionModel({moveEditorOnEnter: false}), + clicksToEdit: 'auto', + enableColumnHide:false, + enableColumnMove:false, + autoEncode: true, + title:'All Tasks', + iconCls:'icon-folder', + region:'center', + plugins: [completeColumn, reminderColumn], + margins:'3 3 3 0', + columns: [ + completeColumn, + { + header: "Task", + width:400, + sortable: true, + dataIndex: 'title', + id:'task-title', + editor: new Ext.form.TextField({ + allowBlank: false + }) + }, + { + header: "List", + width:150, + sortable: true, + dataIndex: 'listId', + editor: new ListSelector({ + store:tx.data.lists + }), + renderer : function(v){ + return tx.data.lists.getName(v); + } + }, + { + id:'dueDate', + header: "Due Date", + width: 150, + sortable: true, + renderer: Ext.util.Format.dateRenderer('D m/d/Y'), + dataIndex: 'dueDate', + groupRenderer: Ext.util.Format.createTextDateRenderer(), + groupName: 'Due', + editor: new Ext.form.DateField({ + format : "m/d/Y" + }) + }, + reminderColumn + ], + + view: new TaskView() + }); + + // Keep the visible date groups in the grid accurate + Ext.TaskMgr.start({ + run: function(){ + var col = this.getColumnModel().getColumnById('dueDate'); + if(col.groupRenderer.date.getTime() != new Date().clearTime().getTime()){ + col.groupRenderer = Ext.util.Format.createTextDateRenderer(); + tx.data.tasks.applyGrouping(); + } + }, + interval: 60000, + scope: this + }); + + this.on('rowcontextmenu', this.onRowContext, this); +}; + +Ext.extend(TaskGrid, Ext.grid.EditorGridPanel, { + onCellDblClick: function(g, row){ + clearTimeout(this.autoEditTimer); // allow dbl click without starting edit + var id = this.store.getAt(row).id; + + Ext.air.NativeWindowManager.getTaskWindow(id); + }, + + // private + onAutoEditClick : function(e, t){ + clearTimeout(this.autoEditTimer); + if(e.button !== 0){ + return; + } + var row = this.view.findRowIndex(t); + var col = this.view.findCellIndex(t); + if(row !== false && col !== false){ + if(this.selModel.isSelected(row) && this.selModel.getCount() === 1){ + this.autoEditTimer = this.startEditing.defer(300, this, [row, col]); + } + } + }, + + onRowContext : function(grid, row, e){ + if(!this.menu){ // create context menu on first right click + this.menu = new Ext.menu.Menu({ + id:'tasks-ctx', + listWidth: 200, + items: [{ + text:'Open', + scope: this, + handler:function(){ + Ext.each(this.selModel.getSelections(), function(r){ + Ext.air.NativeWindowManager.getTaskWindow(r.id); + }); + } + },'-', + tx.actions.complete, + tx.actions.deleteTask + ] + }); + } + if(!this.selModel.isSelected(row)){ + this.selModel.selectRow(row); + } + + this.menu.showAt(e.getXY()); + } +}) + + +TaskView = Ext.extend(Ext.grid.GroupingView, { + forceFit:true, + ignoreAdd: true, + emptyText: 'There are no tasks to show in this list.', + + templates: { + header: Templates.gridHeader + }, + getRowClass : function(r){ + var d = r.data; + if(d.completed){ + return 'task-completed'; + } + if(d.dueDate && d.dueDate.getTime() < new Date().clearTime().getTime()){ + return 'task-overdue'; + } + return ''; + } +}); + + +TaskHeader = function(grid){ + grid.on('resize', syncFields); + grid.on('columnresize', syncFields); + + // The fields in the grid's header + var ntTitle = this.ntTitle = new Ext.form.TextField({ + renderTo: 'new-task-title', + emptyText: 'Add a task...' + }); + + var ntCat = new ListSelector({ + renderTo: 'new-task-cat', + disabled:true, + store:tx.data.lists, + listenForLoad: true + }); + + var ntDue = new Ext.form.DateField({ + renderTo: 'new-task-due', + value: new Date(), + disabled:true, + format : "m/d/Y" + }); + + // syncs the header fields' widths with the grid column widths + function syncFields(){ + var cm = grid.getColumnModel(); + ntTitle.setSize(cm.getColumnWidth(1)-2); + ntCat.setSize(cm.getColumnWidth(2)-4); + ntDue.setSize(cm.getColumnWidth(3)-4); + } + syncFields(); + + var editing = false, focused = false, userTriggered = false; + var handlers = { + focus: function(){ + setFocus.defer(20, window, [true]); + }, + blur: function(){ + focused = false; + doBlur.defer(250); + }, + specialkey: function(f, e){ + if(e.getKey()==e.ENTER && (!f.isExpanded || !f.isExpanded())){ + userTriggered = true; + e.stopEvent(); + f.el.blur(); + if(f.triggerBlur){ + f.triggerBlur(); + } + } + } + } + ntTitle.on(handlers); + ntCat.on(handlers); + ntDue.on(handlers); + + ntTitle.on('focus', function(){ + focused = true; + if(!editing){ + ntCat.enable(); + ntDue.enable(); + syncFields(); + editing = true; + + ntCat.setValue(tx.data.getActiveListId()); + } + }); + + function setFocus(v){ + focused = v; + } + // when a field in the add bar is blurred, this determines + // whether a new task should be created + function doBlur(){ + if(editing && !focused){ + var title = ntTitle.getValue(); + if(!Ext.isEmpty(title)){ + tx.data.tasks.createTask(title, ntCat.getRawValue(), ntDue.getValue()); + ntTitle.setValue(''); + if(userTriggered){ // if they entered to add the task, then go to a new add automatically + userTriggered = false; + ntTitle.focus.defer(100, ntTitle); + } + } + ntCat.disable(); + ntDue.disable(); + editing = false; + } + } +}; Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/TaskStore.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/TaskStore.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/TaskStore.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,172 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + + +tx.data.TaskStore = Ext.extend(Ext.data.GroupingStore, { + constructor: function(){ + tx.data.TaskStore.superclass.constructor.call(this, { + sortInfo:{field: 'dueDate', direction: "ASC"}, + groupField:'dueDate', + taskFilter: 'all', + reader: new Ext.data.JsonReader({ + id: 'taskId', + fields: tx.data.Task + }) + }); + this.conn = tx.data.conn; + this.proxy = new Ext.sql.Proxy(tx.data.conn, 'task', 'taskId', this); + }, + + applyFilter : function(filter){ + if(filter !== undefined){ + this.taskFilter = filter; + } + var value = this.taskFilter; + if(value == 'all'){ + return this.clearFilter(); + } + return this.filterBy(function(item){ + return item.data.completed === value; + }); + }, + + addTask : function(data){ + this.suspendEvents(); + this.clearFilter(); + this.resumeEvents(); + this.loadData([data], true); + this.suspendEvents(); + this.applyFilter(); + this.applyGrouping(true); + this.resumeEvents(); + this.fireEvent('datachanged', this); + }, + + loadList: function(listId){ + var multi = Ext.isArray(listId); + this.activeList = multi ? listId[0] : listId; + this.suspendEvents(); + if(multi){ + var ps = []; + for(var i = 0, len = listId.length; i < len; i++){ + ps.push('?'); + } + this.load({ + params: { + where: 'where listId in (' + ps.join(',') + ')', + args: listId + } + }); + }else{ + this.load({params: { + where: 'where listId = ?', + args: [listId] + }}); + } + this.applyFilter(); + this.applyGrouping(true); + this.resumeEvents(); + this.fireEvent('datachanged', this); + }, + + removeList: function(listId){ + this.conn.execBy('delete from task where listId = ?', [listId]); + this.reload(); + }, + + prepareTable : function(){ + try{ + this.createTable({ + name: 'task', + key: 'taskId', + fields: tx.data.Task.prototype.fields + }); + }catch(e){console.log(e);} + }, + + createTask : function(title, listText, dueDate, description, completed){ + if(!Ext.isEmpty(title)){ + var listId = ''; + if(!Ext.isEmpty(listText)){ + listId = tx.data.lists.addList(Ext.util.Format.htmlEncode(listText)).id; + }else{ + listId = tx.data.lists.newList(false).id; + } + this.addTask({ + taskId: Ext.uniqueId(), + title: Ext.util.Format.htmlEncode(title), + dueDate: dueDate||'', + description: description||'', + listId: listId, + completed: completed || false + }); + } + }, + + afterEdit : function(r){ + if(r.isModified(this.getGroupState())){ + this.applyGrouping(); + } + //workaround WebKit cross-frame date issue + fixDateMember(r.data, 'completedDate'); + fixDateMember(r.data, 'reminder'); + fixDateMember(r.data, 'dueDate'); + if(r.isModified('completed')){ + r.editing = true; + r.set('completedDate', r.data.completed ? new Date() : ''); + r.editing = false; + } + tx.data.TaskStore.superclass.afterEdit.apply(this, arguments); + }, + + init : function(){ + tx.data.lists.load(); + this.load({ + callback: function(){ + // first time? + if(this.getCount() < 1){ + Ext.Msg.confirm('Create Tasks?', 'Your database is currently empty. Would you like to insert some demo data?', + function(btn){ + if(btn == 'yes'){ + tx.data.lists.loadDemoLists(); + this.loadDemoTasks(); + } + }, this); + } + }, + scope: this + }); + }, + + lookup : function(id){ + var task; + if(task = this.getById(id)){ + return task; + } + var data = this.proxy.table.lookup(id); + if (data) { + var result = this.reader.readRecords([data]); + return result.records[0]; + } + return null; + }, + + /* This is used to laod some demo tasks if the task database is empty */ + loadDemoTasks: function(){ + var s = new Date(); + // hardcoded demo tasks + this.addTask({taskId: Ext.uniqueId(), title:'Update Ext 2.0 documentation', listId:'ext2', description:'', dueDate: s.add('d', 21), completed: false, reminder: ''}); + this.addTask({taskId: Ext.uniqueId(), title:'Release Ext 2.l Beta 1', listId:'ext2', description:'', dueDate:s.add('d', 2), completed: false, reminder: s.add('d', 2).clearTime(true).add('h', 9)}); + this.addTask({taskId: Ext.uniqueId(), title:'Take wife to see movie', listId:'family', description:'', dueDate:s.add('d', 2), completed: false, reminder: ''}); + this.addTask({taskId: Ext.uniqueId(), title:'Finish Simple Tasks v2 sample app', listId:'ext2', description:'', dueDate:s.add('d', 2), completed: false, reminder: ''}); + this.addTask({taskId: Ext.uniqueId(), title:'Do something other than work', listId:'fun', description:'', dueDate:s.add('d', -1), completed: false, reminder: ''}); + this.addTask({taskId: Ext.uniqueId(), title:'Go to the grocery store', listId:'family', description:'', dueDate:s.add('d', -1), completed: true, reminder: '', completedDate: new Date()}); + this.addTask({taskId: Ext.uniqueId(), title:'Reboot my computer', listId:'personal-misc', description:'', dueDate:s, completed: false, reminder: ''}); + this.addTask({taskId: Ext.uniqueId(), title:'Respond to emails', listId:'work-misc', description:'', dueDate:s, completed: true, reminder: '', completedDate: new Date()}); + } +}); \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/TaskWindow.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/TaskWindow.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/TaskWindow.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,73 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +Ext.air.NativeWindowManager.getTaskWindow = function(taskId){ + var win, winId = 'task' + taskId; + if(win = this.get(winId)) { + win.instance.orderToFront(); + } else { + win = new Ext.air.NativeWindow({ + id: winId, + file: 'task.html?taskId=' + taskId, + width: 500, + height:350 + }); + } + return win; +} + +Ext.air.NativeWindowManager.getReminderWindow = function(taskId){ + var win, winId = 'reminder' + taskId; + if(win = this.get(winId)) { + win.instance.orderToFront(); + } else { + win = new Ext.air.NativeWindow({ + id: winId, + file: 'reminder.html?taskId=' + taskId, + width:400, + height:140, + maximizable: false, + resizable: false + }); + } + return win; +} + +Ext.air.NativeWindowManager.getAboutWindow = function(){ + var win, winId = 'about'; + if(win = this.get(winId)) { + win.instance.orderToFront(); + } else { + win = new Ext.air.NativeWindow({ + id: winId, + file: 'about.html', + width:350, + height:300, + resizable: false, + type:'utility' + }); + } + return win; +} + +Ext.air.NativeWindowManager.getPrefWindow = function(){ + var win, winId = 'prefs'; + if(win = this.get(winId)) { + win.instance.orderToFront(); + } else { + win = new Ext.air.NativeWindow({ + id: winId, + file: 'preferences.html', + width:240, + height:150, + resizable: false, + type:'utility' + }); + } + return win; +} Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/Templates.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/Templates.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/Templates.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,29 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +// In AIR, XTemplates must be created at load time +Templates = { + categoryCombo: new Ext.XTemplate( + '
{listName}
' + ), + timeField: new Ext.XTemplate( + '
{text}
' + ), + + gridHeader : new Ext.Template( + '', + '{cells}', + '', + '', + '', + '', + '', + '', + "
" + ) +}; Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/TextDate.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/TextDate.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/TextDate.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,53 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +// generates a renderer function to be used for textual date groups +Ext.util.Format.createTextDateRenderer = function(){ + // create the cache of ranges to be reused + var today = new Date().clearTime(true); + var year = today.getFullYear(); + var todayTime = today.getTime(); + var yesterday = today.add('d', -1).getTime(); + var tomorrow = today.add('d', 1).getTime(); + var weekDays = today.add('d', 6).getTime(); + var lastWeekDays = today.add('d', -6).getTime(); + + var weekAgo1 = today.add('d', -13).getTime(); + var weekAgo2 = today.add('d', -20).getTime(); + var weekAgo3 = today.add('d', -27).getTime(); + + var f = function(date){ + if(!date) { + return '(No Date)'; + } + var notime = date.clearTime(true).getTime(); + + if (notime == todayTime) { + return 'Today'; + } + if(notime > todayTime){ + if (notime == tomorrow) { + return 'Tomorrow'; + } + if (notime <= weekDays) { + return date.format('l'); + } + }else { + if(notime == yesterday) { + return 'Yesterday'; + } + if(notime >= lastWeekDays) { + return 'Last ' + date.format('l'); + } + } + return date.getFullYear() == year ? date.format('D m/d') : date.format('D m/d/Y'); + }; + + f.date = today; + return f; +}; \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/TreeSelector.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/TreeSelector.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/TreeSelector.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,290 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +// custom menu item to contain Ext trees +Ext.menu.TreeItem = Ext.extend(Ext.menu.Adapter, { + constructor : function(config){ + Ext.menu.TreeItem.superclass.constructor.call(this, config.tree, config); + this.tree = this.component; + this.addEvents('selectionchange'); + + this.tree.on("render", function(tree){ + tree.body.swallowEvent(['click','keydown', 'keypress', 'keyup']); + }); + + this.tree.getSelectionModel().on("selectionchange", this.onSelect, this); + }, + + onSelect : function(tree, sel){ + this.fireEvent("select", this, sel, tree); + } +}); + + +// custom menu containing a single tree +Ext.menu.TreeMenu = Ext.extend(Ext.menu.Menu, { + cls:'x-tree-menu', + keyNav: true, + hideOnClick:false, + plain: true, + + constructor : function(config){ + Ext.menu.TreeMenu.superclass.constructor.call(this, config); + this.treeItem = new Ext.menu.TreeItem(config); + this.add(this.treeItem); + + this.tree = this.treeItem.tree; + this.tree.on('click', this.onNodeClick, this); + this.relayEvents(this.treeItem, ["selectionchange"]); + }, + + // private + beforeDestroy : function() { + this.tree.destroy(); + }, + + onNodeClick : function(node, e){ + if(!node.attributes.isFolder){ + this.treeItem.handleClick(e); + } + } +}); + + +// custom form field for displaying a tree, similar to select or combo +Ext.ux.TreeSelector = Ext.extend(Ext.form.TriggerField, { + initComponent : function(){ + Ext.ux.TreeSelector.superclass.initComponent.call(this); + this.addEvents('selectionchange'); + + this.tree.getSelectionModel().on('selectionchange', this.onSelection, this); + this.tree.on({ + 'expandnode': this.sync, + 'collapsenode' : this.sync, + 'append' : this.sync, + 'remove' : this.sync, + 'insert' : this.sync, + scope: this + }); + this.on('focus', this.onTriggerClick, this); + }, + + sync : function(){ + if(this.menu && this.menu.isVisible()){ + if(this.tree.body.getHeight() > this.maxHeight){ + this.tree.body.setHeight(this.maxHeight); + this.restricted = true; + }else if(this.restricted && this.tree.body.dom.firstChild.offsetHeight < this.maxHeight){ + this.tree.body.setHeight(''); + this.restricted = false; + } + this.menu.el.sync(); + } + }, + + onSelection : function(tree, node){ + if(!node){ + this.setRawValue(''); + }else{ + this.setRawValue(node.text); + } + }, + + initEvents : function(){ + Ext.ux.TreeSelector.superclass.initEvents.call(this); + this.el.on('mousedown', this.onTriggerClick, this); + this.el.on("keydown", this.onKeyDown, this); + }, + + onKeyDown : function(e){ + if(e.getKey() == e.DOWN){ + this.onTriggerClick(); + } + }, + + validateBlur : function(){ + return !this.menu || !this.menu.isVisible(); + }, + + getValue : function(){ + var sm = this.tree.getSelectionModel(); + var s = sm.getSelectedNode(); + return s ? s.id : ''; + }, + + setValue : function(id){ + var n = this.tree.getNodeById(id); + if(n){ + n.select(); + }else{ + this.tree.getSelectionModel().clearSelections(); + } + }, + + // private + onDestroy : function(){ + if(this.menu) { + this.menu.destroy(); + } + if(this.wrap){ + this.wrap.remove(); + } + Ext.ux.TreeSelector.superclass.onDestroy.call(this); + }, + + // private + menuListeners : { + show : function(){ // retain focus styling + this.onFocus(); + }, + hide : function(){ + this.focus.defer(10, this); + var ml = this.menuListeners; + this.menu.un("show", ml.show, this); + this.menu.un("hide", ml.hide, this); + } + }, + + onTriggerClick : function(){ + if(this.disabled){ + return; + } + this.menu.on(Ext.apply({}, this.menuListeners, { + scope:this + })); + + this.menu.show(this.el, "tl-bl?"); + this.sync(); + var sm = this.tree.getSelectionModel(); + var selected = sm.getSelectedNode(); + if(selected){ + selected.ensureVisible(); + sm.activate.defer(250, sm, [selected]); + } + }, + + beforeBlur : function(){ + // + }, + + onRender : function(){ + Ext.ux.TreeSelector.superclass.onRender.apply(this, arguments); + this.menu = new Ext.menu.TreeMenu(Ext.apply(this.menuConfig || {}, {tree: this.tree})); + this.menu.render(); + + this.tree.body.addClass('x-tree-selector'); + }, + + readOnly: true +}); + +/* + * Custom tree keyboard navigation that supports node navigation without selection + */ +Ext.tree.ActivationModel = Ext.extend(Ext.tree.DefaultSelectionModel, { + select : function(node){ + return this.activate(Ext.tree.ActivationModel.superclass.select.call(this, node)); + }, + + activate : function(node){ + if(!node){ + return; + } + if(this.activated != node) { + if(this.activated){ + this.activated.ui.removeClass('x-tree-activated'); + } + this.activated = node; + node.ui.addClass('x-tree-activated'); + } + node.ui.focus(); + return node; + }, + + activatePrevious : function(){ + var s = this.activated; + if(!s){ + return null; + } + var ps = s.previousSibling; + if(ps){ + if(!ps.isExpanded() || ps.childNodes.length < 1){ + return this.activate(ps); + } else{ + var lc = ps.lastChild; + while(lc && lc.isExpanded() && lc.childNodes.length > 0){ + lc = lc.lastChild; + } + return this.activate(lc); + } + } else if(s.parentNode && (this.tree.rootVisible || !s.parentNode.isRoot)){ + return this.activate(s.parentNode); + } + return null; + }, + + activateNext : function(){ + var s = this.activated; + if(!s){ + return null; + } + if(s.firstChild && s.isExpanded()){ + return this.activate(s.firstChild); + }else if(s.nextSibling){ + return this.activate(s.nextSibling); + }else if(s.parentNode){ + var newS = null; + s.parentNode.bubble(function(){ + if(this.nextSibling){ + newS = this.getOwnerTree().selModel.activate(this.nextSibling); + return false; + } + }); + return newS; + } + return null; + }, + + onKeyDown : function(e){ + var s = this.activated; + // undesirable, but required + var sm = this; + if(!s){ + return; + } + var k = e.getKey(); + switch(k){ + case e.DOWN: + e.stopEvent(); + this.activateNext(); + break; + case e.UP: + e.stopEvent(); + this.activatePrevious(); + break; + case e.RIGHT: + e.preventDefault(); + if(s.hasChildNodes()){ + if(!s.isExpanded()){ + s.expand(); + }else if(s.firstChild){ + this.activate(s.firstChild, e); + } + } + break; + case e.LEFT: + e.preventDefault(); + if(s.hasChildNodes() && s.isExpanded()){ + s.collapse(); + }else if(s.parentNode && (this.tree.rootVisible || s.parentNode != this.tree.getRootNode())){ + this.activate(s.parentNode, e); + } + break; + }; + } +}); \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/columns.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/columns.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/columns.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,167 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +// Grid column plugin that does the complete/active button in the left-most column +CompleteColumn = function(){ + var grid; + + function getRecord(t){ + var index = grid.getView().findRowIndex(t); + return grid.store.getAt(index); + } + + function onMouseDown(e, t){ + if(Ext.fly(t).hasClass('task-check')){ + e.stopEvent(); + var record = getRecord(t); + record.set('completed', !record.data.completed); + grid.store.applyFilter(); + } + } + + function onMouseOver(e, t){ + if(Ext.fly(t).hasClass('task-check')){ + Ext.fly(t.parentNode).addClass('task-check-over'); + } + } + + function onMouseOut(e, t){ + if(Ext.fly(t).hasClass('task-check')){ + Ext.fly(t.parentNode).removeClass('task-check-over'); + } + } + + Ext.apply(this, { + width: 22, + header: '
', + fixed: true, + menuDisabled: true, + id: 'task-col', + renderer: function(){ + return '
'; + }, + init : function(xg){ + grid = xg; + grid.on('render', function(){ + var view = grid.getView(); + view.mainBody.on('mousedown', onMouseDown); + view.mainBody.on('mouseover', onMouseOver); + view.mainBody.on('mouseout', onMouseOut); + }); + } + }); +}; + + +ReminderColumn = function(){ + var grid, menu, record; + + function getRecord(t){ + var index = grid.getView().findRowIndex(t); + return grid.store.getAt(index); + } + + function onMenuCheck(item){ + if(item.reminder === false){ + record.set('reminder', ''); + }else{ + var s = record.data.dueDate ? record.data.dueDate.clearTime(true) : new Date().clearTime(); + s = s.add('mi', Ext.state.Manager.get('defaultReminder')); + s = s.add('mi', item.reminder*-1); + record.set('reminder', s); + } + } + + function getMenu(){ + if(!menu){ + menu = new Ext.menu.Menu({ + plain: true, + items: [{ + text: 'No Reminder', + reminder: false, + handler: onMenuCheck + },'-',{ + text: 'On the Due Date', + reminder: 0, + handler: onMenuCheck + },'-',{ + text: '1 day before', + reminder: 24*60, + handler: onMenuCheck + },{ + text: '2 days before', + reminder: 48*60, + handler: onMenuCheck + },{ + text: '3 days before', + reminder: 72*60, + handler: onMenuCheck + },{ + text: '1 week before', + reminder: 7*24*60, + handler: onMenuCheck + },{ + text: '2 weeks before', + reminder: 14*24*60, + handler: onMenuCheck + },'-',{ + text: 'Set Default Time...', + handler: function(){ + Ext.air.NativeWindowManager.getPrefWindow(); + } + }] + }); + } + return menu; + } + + function onMouseDown(e, t){ + if(Ext.fly(t).hasClass('reminder')){ + e.stopEvent(); + record = getRecord(t); + if (!record.data.completed) { + var rmenu = getMenu(); + rmenu.show(t, 'tr-br?'); + } + } + } + + function onMouseOver(e, t){ + if(Ext.fly(t).hasClass('reminder')){ + Ext.fly(t.parentNode).addClass('reminder-over'); + } + } + + function onMouseOut(e, t){ + if(Ext.fly(t).hasClass('reminder')){ + Ext.fly(t.parentNode).removeClass('reminder-over'); + } + } + + Ext.apply(this, { + width: 26, + header: '
', + fixed: true, + id: 'reminder-col', + menuDisabled: true, + dataIndex:'reminder', + renderer: function(v){ + return '
'; + }, + init : function(xg){ + grid = xg; + grid.on('render', function(){ + var view = grid.getView(); + view.mainBody.on('contextmenu', onMouseDown); + view.mainBody.on('mousedown', onMouseDown); + view.mainBody.on('mouseover', onMouseOver); + view.mainBody.on('mouseout', onMouseOut); + }); + } + }); +}; \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/data.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/data.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/data.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,67 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +// Unique task ids, if the time isn't unique enough, the addition +// of random chars should be +Ext.uniqueId = function(){ + var t = String(new Date().getTime()).substr(4); + var s = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'; + for(var i = 0; i < 4; i++){ + t += s.charAt(Math.floor(Math.random()*26)); + } + return t; +} + +// Define the Task data type +tx.data.Task = Ext.data.Record.create([ + {name: 'taskId', type:'string'}, + {name: 'listId', type:'string'}, + {name: 'title', type:'string'}, + {name: 'description', type:'string'}, + {name: 'dueDate', type:'date', dateFormat: Ext.sql.Proxy.DATE_FORMAT, defaultValue: ''}, + {name: 'completed', type:'boolean'}, + {name: 'completedDate', type:'date', dateFormat: Ext.sql.Proxy.DATE_FORMAT, defaultValue: ''}, + {name: 'reminder', type:'date', dateFormat: Ext.sql.Proxy.DATE_FORMAT, defaultValue: ''} +]); + +// Define the List data type +tx.data.List = Ext.data.Record.create([ + {name: 'listId', type:'string'}, + {name: 'parentId', type:'string'}, + {name: 'listName', type:'string'}, + {name: 'isFolder', type:'boolean'} +]); + + +// Grab a SQL connection instance +tx.data.conn = Ext.sql.Connection.getInstance(); + +tx.data.tasks = new tx.data.TaskStore(); +tx.data.lists = new tx.data.ListStore(); + + +tx.data.getDefaultReminder = function(task){ + var s = task.data.dueDate ? task.data.dueDate.clearTime(true) : new Date().clearTime(); + s = s.add('mi', Ext.state.Manager.get('defaultReminder')); + return s; +}; + + +tx.data.getActiveListId = function(){ + var id = tx.data.tasks.activeList; + if(!id){ + var first = tx.data.lists.getAt(0); + if(first){ + id = first.id; + }else{ + id = tx.data.lists.newList().id; + } + } + return id; +}; + Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/ext-config.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/ext-config.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/samples/tasks/js/ext-config.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,23 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +Ext.BLANK_IMAGE_URL = 'images/s.gif'; + +tx = {data:{}, ui: {}}; + +// work around for broken cross frame Dates in Safari +function fixDate(d){ + return d ? new Date(d.getTime()) : d; +} + +function fixDateMember(o, name){ + if(o[name]){ + o[name] = new Date(o[name].getTime()); + } +} + Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/App.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/App.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/App.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,18 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +Ext.air.App = function() { + return { + launchOnStartup: function(launch) { + air.NativeApplication.nativeApplication.startAtLogin = !!launch; + }, + getActiveWindow: function() { + return air.NativeApplication.activeWindow; + } + }; +}(); \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/Clipboard.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/Clipboard.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/Clipboard.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,74 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +/** + * @class Ext.air.Clipboard + * @singleton + * Allows you to manipulate the native system clipboard and handle various formats. + * This class is essentially a passthrough to air.Clipboard.generalClipboard at this + * time, but may get more Ext-like functions in the future. + * + * The Clipboard has different types which it can hold: + * CONSTANT - value + * air.ClipboardFormats.TEXT_FORMAT - air:text + * air.ClipboardFormats.HTML_FORMAT - air:html + * air.ClipboardFormats.RICH_TEXT_FORMAT - air:rtf + * air.ClipboardFormats.URL_FORMAT - air:url + * air.ClipboardFormats.FILE_LIST_FORMAT - air:file list + * air.ClipboardFormats.BITMAP_FORMAT - air:bitmap + */ +Ext.air.Clipboard = function() { + var clipboard = air.Clipboard.generalClipboard; + + return { + /** + * Determine if there is any data in a particular format clipboard. + * @param {String} format Use the air.ClipboardFormats CONSTANT or the string value + */ + hasData: function(format) { + return clipboard.hasFormat(format); + }, + /** + * Set the data for a particular format clipboard. + * @param {String} format Use the air.ClipboardFormats CONSTANT or the string value + * @param {Mixed} data Data to set + */ + setData: function(format, data) { + clipboard.setData(format, data); + }, + /** + * Set the data handler for a particular format clipboard. + * @param {String} format Use the air.ClipboardFormats CONSTANT or the string value + * @param {Function} fn The function to evaluate when getting the clipboard data + */ + setDataHandler: function(format, fn) { + clipboard.setDataHandler(format, fn); + }, + /** + * Get the data for a particular format. + * @param {String} format Use the air.ClipboardFormats CONSTANT or the string value + * @param {String} transferMode + */ + getData: function(format, transferMode) { + clipboard.getData(format, transferMode); + }, + /** + * Clear the clipboard for all formats. + */ + clear: function() { + clipboard.clear(); + }, + /** + * Clear the data for a particular format. + * @param {String} format Use the air.ClipboardFormats CONSTANT or the string value + */ + clearData: function(format) { + clipboard.clearData(format); + } + }; +}(); \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/Debug.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/Debug.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/Debug.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,31 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +/* + * Useful debugging function similar to console.dir for air. + * This was ported from AS3 and the original code came from Adobe's help system. + */ +Ext.air.dir = function (obj, indent) { + indent = indent || 0; + var indentString = ""; + + for (var i = 0; i < indent; i++) { + indentString += "\t"; + } + + var val; + for (var prop in obj) { + val = obj[prop]; + if (typeof(val) == "object") { + air.trace(indentString + " " + prop + ": [Object]"); + Ext.air.dir(val, indent + 1); + } else { + air.trace(indentString + " " + prop + ": " + val); + } + } +}; \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/FileProvider.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/FileProvider.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/FileProvider.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,75 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +/** + * @class Ext.air.FileProvider + * @extends Ext.state.Provider + * + * An Ext state provider implementation for Adobe AIR that stores state in the application + * storage directory. + * + * @constructor + * @param {Object} config + */ +Ext.air.FileProvider = function(config){ + Ext.air.FileProvider.superclass.constructor.call(this); + + this.defaultState = { + mainWindow : { + width:780, + height:580, + x:10, + y:10 + } + }; + + Ext.apply(this, config); + this.state = this.readState(); + + var provider = this; + air.NativeApplication.nativeApplication.addEventListener('exiting', function(){ + provider.saveState(); + }); +}; + +Ext.extend(Ext.air.FileProvider, Ext.state.Provider, { + /** + * @cfg {String} file + * The file name to use for the state file in the application storage directory + */ + file: 'extstate.data', + + /** + * @cfg {Object} defaultState + * The default state if no state file can be found + */ + // private + readState : function(){ + var stateFile = air.File.applicationStorageDirectory.resolvePath(this.file); + if(!stateFile.exists){ + return this.defaultState || {}; + } + + var stream = new air.FileStream(); + stream.open(stateFile, air.FileMode.READ); + + var stateData = stream.readObject(); + stream.close(); + + return stateData || this.defaultState || {}; + }, + + // private + saveState : function(name, value){ + var stateFile = air.File.applicationStorageDirectory.resolvePath(this.file); + var stream = new air.FileStream(); + stream.open(stateFile, air.FileMode.WRITE); + stream.writeObject(this.state); + stream.close(); + } +}); \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/FileTreeLoader.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/FileTreeLoader.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/FileTreeLoader.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,83 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +Ext.tree.LocalTreeLoader = Ext.extend(Ext.tree.TreeLoader, { + requestData : function(node, callback){ + if(this.fireEvent("beforeload", this, node, callback) !== false){ + var p = Ext.urlDecode(this.getParams(node)); + var response = this.dataFn(node); + this.processResponse(response, node, callback); + this.fireEvent("load", this, node, response); + }else{ + // if the load is cancelled, make sure we notify + // the node that we are done + if(typeof callback == "function"){ + callback(); + } + } + }, + processResponse : function(o, node, callback){ + try { + node.beginUpdate(); + for(var i = 0, len = o.length; i < len; i++){ + var n = this.createNode(o[i]); + if(n){ + node.appendChild(n); + } + } + node.endUpdate(); + if(typeof callback == "function"){ + callback(this, node); + } + }catch(e){ + this.handleFailure(response); + } + }, + load : function(node, callback){ + if(this.clearOnLoad){ + while(node.firstChild){ + node.removeChild(node.firstChild); + } + } + if(this.doPreload(node)){ // preloaded json children + if(typeof callback == "function"){ + callback(); + } + }else if(this.dataFn||this.fn){ + this.requestData(node, callback); + } + } +}); + +/** + * @cfg {air.File} directory + * Initial directory to load the FileTree from + */ +Ext.air.FileTreeLoader = Ext.extend(Ext.tree.LocalTreeLoader, { + extensionFilter: false, + dataFn: function(currNode) { + var currDir; + if (currNode.attributes.url) { + currDir = this.directory.resolvePath(currNode.attributes.url); + } else { + currDir = this.directory; + } + var files = []; + var c = currDir.getDirectoryListing(); + for (i = 0; i < c.length; i++) { + if (c[i].isDirectory || this.extensionFilter === false || this.extensionFilter === c[i].extension) + files.push({ + text: c[i].name, + url: c[i].url, + extension: c[i].extension, + leaf: !c[i].isDirectory + }); + } + return files; + } +}); \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/MusicPlayer.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/MusicPlayer.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/MusicPlayer.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,198 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +Ext.ns('Ext.air'); + +Ext.air.MusicPlayer = Ext.extend(Ext.util.Observable, { + /** + * The currently active Sound. Read-only. + * @type air.Sound + * @property activeSound + */ + activeSound: null, + /** + * The currently active SoundChannel. Read-only. + * @type air.SoundChannel + * @property activeChannel + */ + activeChannel: null, + /** + * The currently active Transform. Read-only. + * @type air.SoundTransform + * @property activeTransform + */ + activeTransform: new air.SoundTransform(1, 0), + // private + pausePosition: 0, + /** + * @cfg {Number} progressInterval + * How often to fire the progress event when playing music in milliseconds + * Defaults to 500. + */ + progressInterval: 500, + + constructor: function(config) { + config = config || {}; + Ext.apply(this, config); + + this.addEvents( + /** + * @event stop + */ + 'stop', + /** + * @event pause + */ + 'pause', + /** + * @event play + */ + 'play', + /** + * @event load + */ + 'load', + /** + * @event id3info + */ + 'id3info', + /** + * @event complete + */ + 'complete', + /** + * @event progress + */ + 'progress', + /** + * @event skip + */ + 'skip' + ); + + Ext.air.MusicPlayer.superclass.constructor.call(this, config); + this.onSoundFinishedDelegate = this.onSoundFinished.createDelegate(this); + this.onSoundLoadDelegate = this.onSoundLoad.createDelegate(this); + this.onSoundID3LoadDelegate = this.onSoundID3Load.createDelegate(this); + + Ext.TaskMgr.start({ + run: this.notifyProgress, + scope: this, + interval: this.progressInterval + }); + }, + + /** + * Adjust the volume + * @param {Object} percent + * Ranges from 0 to 1 specifying volume of sound. + */ + adjustVolume: function(percent) { + this.activeTransform.volume = percent; + if (this.activeChannel) { + this.activeChannel.soundTransform = this.activeTransform; + } + }, + /** + * Stop the player + */ + stop: function() { + this.pausePosition = 0; + if (this.activeChannel) { + this.activeChannel.stop(); + this.activeChannel = null; + } + if (this.activeSound) { + this.activeSound.removeEventListener(air.Event.COMPLETE, this.onSoundLoadDelegate); + this.activeSound.removeEventListener(air.Event.ID3, this.onSoundID3LoadDelegate); + this.activeSound.removeEventListener(air.Event.SOUND_COMPLETE, this.onSoundFinishedDelegate); + } + }, + /** + * Pause the player if there is an activeChannel + */ + pause: function() { + if (this.activeChannel) { + this.pausePosition = this.activeChannel.position; + this.activeChannel.stop(); + } + }, + /** + * Play a sound, if no url is specified will attempt to resume the activeSound + * @param {String} url (optional) + * Url resource to play + */ + play: function(url) { + if (url) { + this.stop(); + var req = new air.URLRequest(url); + this.activeSound = new air.Sound(); + this.activeSound.addEventListener(air.Event.SOUND_COMPLETE, this.onSoundFinishedDelegate); + this.activeSound.addEventListener(air.Event.COMPLETE, this.onSoundLoadDelegate); + this.activeSound.addEventListener(air.Event.ID3, this.onSoundID3LoadDelegate); + this.activeSound.load(req); + } else { + this.onSoundLoad(); + } + }, + + /** + * Skip to a specific position in the song currently playing. + * @param {Object} pos + */ + skipTo: function(pos) { + if (this.activeChannel) { + this.activeChannel.stop(); + this.activeChannel = this.activeSound.play(pos); + this.activeChannel.soundTransform = this.activeTransform; + this.fireEvent('skip', this.activeChannel, this.activeSound, pos); + } + }, + + /** + * Returns whether or not there is an active SoundChannel. + */ + hasActiveChannel: function() { + return !!this.activeChannel; + }, + + // private + onSoundLoad: function(event) { + if (this.activeSound) { + if (this.activeChannel) { + this.activeChannel.stop(); + } + this.activeChannel = this.activeSound.play(this.pausePosition); + this.activeChannel.soundTransform = this.activeTransform; + this.fireEvent('load', this.activeChannel, this.activeSound); + } + }, + // private + onSoundFinished: function(event) { + // relay AIR event + this.fireEvent('complete', event); + }, + // private + onSoundID3Load: function(event) { + this.activeSound.removeEventListener(air.Event.ID3, this.onSoundID3LoadDelegate); + var id3 = event.target.id3; + this.fireEvent('id3info', id3); + }, + // private + notifyProgress: function() { + if (this.activeChannel && this.activeSound) { + var playbackPercent = 100 * (this.activeChannel.position / this.activeSound.length); + // SOUND_COMPLETE does not seem to work consistently. + if (playbackPercent > 99.7) { + this.onSoundFinished(); + } else { + this.fireEvent('progress', this.activeChannel, this.activeSound); + } + } + } +}); \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/NativeDD.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/NativeDD.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/NativeDD.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,60 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + + +/** + * @class Ext.air.DragType + * + * Drag drop type constants + * + * @singleton + */ +Ext.air.DragType = { + /** + * Constant for text data + */ + TEXT : 'text/plain', + /** + * Constant for html data + */ + HTML : 'text/html', + /** + * Constant for url data + */ + URL : 'text/uri-list', + /** + * Constant for bitmap data + */ + BITMAP : 'image/x-vnd.adobe.air.bitmap', + /** + * Constant for file list data + */ + FILES : 'application/x-vnd.adobe.air.file-list' +}; + + +// workaround for DD dataTransfer Clipboard not having hasFormat + +Ext.apply(Ext.EventObjectImpl.prototype, { + hasFormat : function(format){ + if (this.browserEvent.dataTransfer) { + for (var i = 0, len = this.browserEvent.dataTransfer.types.length; i < len; i++) { + if(this.browserEvent.dataTransfer.types[i] == format) { + return true; + } + } + } + return false; + }, + + getData : function(type){ + return this.browserEvent.dataTransfer.getData(type); + } +}); + + Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/NativeObservable.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/NativeObservable.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/NativeObservable.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,35 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +/** + * @class Ext.air.NativeObservable + * @extends Ext.util.Observable + * + * Adds ability for Ext Observable functionality to proxy events for native (AIR) object wrappers + * + * @constructor + */ + +Ext.air.NativeObservable = Ext.extend(Ext.util.Observable, { + addListener : function(name){ + this.proxiedEvents = this.proxiedEvents || {}; + if(!this.proxiedEvents[name]){ + var instance = this; + var f = function(){ + var args = Array.prototype.slice.call(arguments, 0); + args.unshift(name); + instance.fireEvent.apply(instance, args); + }; + this.proxiedEvents[name] = f; + this.getNative().addEventListener(name, f); + } + Ext.air.NativeObservable.superclass.addListener.apply(this, arguments); + } +}); + +Ext.air.NativeObservable.prototype.on = Ext.air.NativeObservable.prototype.addListener; \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/NativeWindow.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/NativeWindow.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/NativeWindow.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,430 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +/** + * @class Ext.air.NativeWindow + * @extends Ext.air.NativeObservable + * + * Wraps the AIR NativeWindow class to give an Ext friendly API.

This class also adds + * automatic state management (position and size) for the window (by id) and it can be used + * for easily creating "minimize to system tray" for the main window in your application.

+ * + * Note: Many of the config options for this class can only be applied to NEW windows. Passing + * in an existing instance of a window along with those config options will have no effect. + * + * @constructor + * @param {Object} config + */ +Ext.air.NativeWindow = function(config){ + Ext.apply(this, config); + + /** + * @type String + */ + this.id = this.id || Ext.uniqueId(); + + this.addEvents( + /** + * @event close + * @param {Object} e The air event object + */ + 'close', + /** + * @event closing + * @param {Object} e The air event object + */ + 'closing', + /** + * @event move + * @param {Object} e The air event object + */ + 'move', + /** + * @event moving + * @param {Object} e The air event object + */ + 'moving', + /** + * @event resize + * @param {Object} e The air event object + */ + 'resize', + /** + * @event resizing + * @param {Object} e The air event object + */ + 'resizing', + /** + * @event displayStateChange + * @param {Object} e The air event object + */ + 'displayStateChange', + /** + * @event displayStateChanging + * @param {Object} e The air event object + */ + 'displayStateChanging' + ); + + Ext.air.NativeWindow.superclass.constructor.call(this); + + if(!this.instance){ + var options = new air.NativeWindowInitOptions(); + options.systemChrome = this.chrome; + options.type = this.type; + options.resizable = this.resizable; + options.minimizable = this.minimizable; + options.maximizable = this.maximizable; + options.transparent = this.transparent; + + this.loader = window.runtime.flash.html.HTMLLoader.createRootWindow(false, options, false); + if (this.file) { + this.loader.load(new air.URLRequest(this.file)); + } else { + this.loader.loadString(this.html || ''); + } + + + this.instance = this.loader.window.nativeWindow; + }else{ + this.loader = this.instance.stage.getChildAt(0); + } + + var provider = Ext.state.Manager; + var b = air.Screen.mainScreen.visibleBounds; + + var state = provider.get(this.id) || {}; + provider.set(this.id, state); + + var win = this.instance; + + var width = Math.max(state.width || this.width, 100); + var height = Math.max(state.height || this.height, 100); + + var centerX = b.x + ((b.width/2)-(width/2)); + var centerY = b.y + ((b.height/2)-(height/2)); + + var x = !Ext.isEmpty(state.x, false) ? state.x : (!Ext.isEmpty(this.x, false) ? this.x : centerX); + var y = !Ext.isEmpty(state.y, false) ? state.y : (!Ext.isEmpty(this.y, false) ? this.y : centerY); + + win.width = width; + win.height = height; + win.x = x; + win.y = y; + + win.addEventListener('move', function(){ + if(win.displayState != air.NativeWindowDisplayState.MINIMIZED && win.width > 100 && win.height > 100) { + state.x = win.x; + state.y = win.y; + } + }); + win.addEventListener('resize', function(){ + if (win.displayState != air.NativeWindowDisplayState.MINIMIZED && win.width > 100 && win.height > 100) { + state.width = win.width; + state.height = win.height; + } + }); + + Ext.air.NativeWindowManager.register(this); + this.on('close', this.unregister, this); + + /** + * @cfg {Boolean} minimizeToTray + * True to enable minimizing to the system tray. Note: this should only be applied + * to the primary window in your application. A trayIcon is required. + */ + if(this.minimizeToTray){ + this.initMinimizeToTray(this.trayIcon, this.trayMenu); + } + +}; + +Ext.extend(Ext.air.NativeWindow, Ext.air.NativeObservable, { + + /** + * @cfg {air.NativeWindow} instance + * The native window instance to wrap. If undefined, a new window will be created. + */ + + /** + * @cfg {String} trayIcon + * The icon to display when minimized in the system tray + */ + /** + * @cfg {NativeMenu} trayMenu + * Menu to display when the tray icon is right clicked + */ + /** + * @cfg {String} trayTip + * Tooltip for the tray icon + */ + + /** + * @cfg {String} chrome + * The native window chrome (defaults to 'standard', can also be 'none'). + */ + chrome: 'standard', // can also be none + /** + * @cfg {String} type + * The native window type - normal, utility or lightweight. (defaults to normal) + */ + type: 'normal', // can be normal, utility or lightweight + /** + * @cfg {Number} width + */ + width:600, + /** + * @cfg {Number} height + */ + height:400, + /** + * @cfg {Boolean} resizable + */ + resizable: true, + /** + * @cfg {Boolean} minimizable + */ + minimizable: true, + /** + * @cfg {Boolean} maximizable + */ + maximizable: true, + /** + * @cfg {Boolean} transparent + */ + transparent: false, + + /** + * Returns the air.NativeWindow instance + * @return air.NativeWindow + */ + getNative : function(){ + return this.instance; + }, + + /** + * Returns the x/y coordinates for centering the windw on the screen + * @return {x: Number, y: Number} + */ + getCenterXY : function(){ + var b = air.Screen.mainScreen.visibleBounds; + return { + x: b.x + ((b.width/2)-(this.width/2)), + y: b.y + ((b.height/2)-(this.height/2)) + }; + }, + + /** + * Shows the window + */ + show :function(){ + if(this.trayed){ + Ext.air.SystemTray.hideIcon(); + this.trayed = false; + } + this.instance.visible = true; + }, + + /** + * Shows and activates the window + */ + activate : function(){ + this.show(); + this.instance.activate(); + }, + + /** + * Hides the window + */ + hide :function(){ + this.instance.visible = false; + }, + + /** + * Closes the window + */ + close : function(){ + this.instance.close(); + }, + + /** + * Returns true if this window is minimized + * @return Boolean + */ + isMinimized :function(){ + return this.instance.displayState == air.NativeWindowDisplayState.MINIMIZED; + }, + + /** + * Returns true if this window is maximized + * @return Boolean + */ + isMaximized :function(){ + return this.instance.displayState == air.NativeWindowDisplayState.MAXIMIZED; + }, + + /** + * Moves the window to the passed xy and y coordinates + * @param {Number} x + * @param {Number} y + */ + moveTo : function(x, y){ + this.x = this.instance.x = x; + this.y = this.instance.y = y; + }, + /** + * Enter full-screen mode for the window. + * @param {Boolean} nonInteractive (optional) Boolean flag to allow the full screen window to be interactive or not. By default this is false. + * Example Code: + * var win = new Ext.air.NativeWindow({instance: Ext.air.NativeWindow.getRootWindow()}); + * win.fullscreen(); + */ + fullscreen: function(nonInteractive) { + var SDS = runtime.flash.display.StageDisplayState; + this.instance.stage.displayState = nonInteractive ? SDS.FULL_SCREEN : SDS.FULL_SCREEN_INTERACTIVE; + }, + + bringToFront: function() { + this.instance.orderToFront(); + }, + + bringInFrontOf: function(win) { + this.instance.orderInFrontOf(win.instance ? win.instance : win); + }, + + sendToBack: function() { + this.instance.orderToBack(); + }, + + sendBehind: function(win) { + this.instance.orderInBackOf(win.instance ? win.instance : win); + }, + + + /** + * @param {Number} width + * @param {Number} height + */ + resize : function(width, height){ + this.width = this.instance.width = width; + this.height = this.instance.height = height; + }, + + unregister : function(){ + Ext.air.NativeWindowManager.unregister(this); + }, + + initMinimizeToTray : function(icon, menu){ + var tray = Ext.air.SystemTray; + + tray.setIcon(icon, this.trayTip); + this.on('displayStateChanging', function(e){ + if(e.afterDisplayState == 'minimized'){ + e.preventDefault(); + this.hide(); + tray.showIcon(); + this.trayed = true; + } + }, this); + + tray.on('click', function(){ + this.activate(); + }, this); + + if(menu){ + tray.setMenu(menu); + } + } +}); + +/** + * Returns the first opened window in your application + * @return air.NativeWindow + * @static + */ +Ext.air.NativeWindow.getRootWindow = function(){ + return air.NativeApplication.nativeApplication.openedWindows[0]; +}; + +/** + * Returns the javascript "window" object of the first opened window in your application + * @return Window + * @static + */ +Ext.air.NativeWindow.getRootHtmlWindow = function(){ + return Ext.air.NativeWindow.getRootWindow().stage.getChildAt(0).window; +}; + +/** + * @class Ext.air.NativeWindowGroup + * + * A collection of NativeWindows. + */ +Ext.air.NativeWindowGroup = function(){ + var list = {}; + + return { + /** + * @param {Object} win + */ + register : function(win){ + list[win.id] = win; + }, + + /** + * @param {Object} win + */ + unregister : function(win){ + delete list[win.id]; + }, + + /** + * @param {String} id + */ + get : function(id){ + return list[id]; + }, + + /** + * Closes all windows + */ + closeAll : function(){ + for(var id in list){ + if(list.hasOwnProperty(id)){ + list[id].close(); + } + } + }, + + /** + * Executes the specified function once for every window in the group, passing each + * window as the only parameter. Returning false from the function will stop the iteration. + * @param {Function} fn The function to execute for each item + * @param {Object} scope (optional) The scope in which to execute the function + */ + each : function(fn, scope){ + for(var id in list){ + if(list.hasOwnProperty(id)){ + if(fn.call(scope || list[id], list[id]) === false){ + return; + } + } + } + } + }; +}; + +/** + * @class Ext.air.NativeWindowManager + * @extends Ext.air.NativeWindowGroup + * + * Collection of all NativeWindows created. + * + * @singleton + */ +Ext.air.NativeWindowManager = new Ext.air.NativeWindowGroup(); \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/Notify.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/Notify.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/Notify.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,59 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +Ext.air.Notify = Ext.extend(Ext.air.NativeWindow, { + winType: 'notify', + type: 'lightweight', + width: 400, + height: 50, + chrome: 'none', + transparent: true, + alwaysOnTop: true, + extraHeight: 22, + hideDelay: 3000, + msgId: 'msg', + iconId: 'icon', + icon: Ext.BLANK_IMAGE_URL, + boxCls: 'x-box', + extAllCSS: '../extjs/resources/css/ext-all.css', + xtpl: new Ext.XTemplate( + '', + '', + '
', + '
', + '{msg}', + '
', + '
', + '
', + '', + '' + ), + constructor: function(config) { + config = config || {}; + Ext.apply(this, config); + config.html = this.xtpl.apply(this); + Ext.air.Notify.superclass.constructor.call(this, config); + this.getNative().alwaysInFront = true; + this.onCompleteDelegate = this.onComplete.createDelegate(this); + this.loader.addEventListener(air.Event.COMPLETE, this.onCompleteDelegate); + }, + onComplete: function(event) { + this.loader.removeEventListener(air.Event.COMPLETE, this.onCompleteDelegate); + this.show(event); + }, + show: function(event) { + var h = event.target.window.document.getElementById(this.msgId).clientHeight + this.extraHeight; + var main = air.Screen.mainScreen; + var xy = [0,0]; + xy[0] = main.visibleBounds.bottomRight.x - this.width; + xy[1] = main.visibleBounds.bottomRight.y - this.height; + this.moveTo(xy[0], xy[1]); + Ext.air.Notify.superclass.show.call(this); + this.close.defer(this.hideDelay, this); + } +}); \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/Sound.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/Sound.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/Sound.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,26 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +/** + * @class Ext.air.Sound + * + * @singleton + */ +Ext.air.Sound = { + /** + * Play a sound. + * @param {String} file The file to be played. The path is resolved against applicationDirectory + * @param {Number} startAt (optional) A time in the sound file to skip to before playing + */ + play : function(file, startAt){ + var soundFile = air.File.applicationDirectory.resolvePath(file); + var sound = new air.Sound(); + sound.load(new air.URLRequest(soundFile.url)); + sound.play(startAt); + } +}; Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/SystemMenu.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/SystemMenu.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/SystemMenu.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,118 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +/** + * @class Ext.air.SystemMenu + * + * Provides platform independent handling of adding item to the application menu, creating the menu or + * items as needed.

+ * + * This class also provides the ability to bind standard Ext.Action instances with NativeMenuItems + * + * @singleton + */ +Ext.air.SystemMenu = function(){ + var menu; + // windows + if(air.NativeWindow.supportsMenu && nativeWindow.systemChrome != air.NativeWindowSystemChrome.NONE) { + menu = new air.NativeMenu(); + nativeWindow.menu = menu; + } + + // mac + if(air.NativeApplication.supportsMenu) { + menu = air.NativeApplication.nativeApplication.menu; + } + + function find(menu, text){ + for(var i = 0, len = menu.items.length; i < len; i++){ + if(menu.items[i]['label'] == text){ + return menu.items[i]; + } + } + return null; + } + + return { + /** + * Add items to one of the application menus + * @param {String} text The application menu to add the actions to (e.g. 'File' or 'Edit'). + * @param {Array} actions An array of Ext.Action objects or menu item configs + * @param {Number} mindex The index of the character in "text" which should be used for + * keyboard access + * @return air.NativeMenu The raw submenu + */ + add: function(text, actions, mindex){ + + var item = find(menu, text); + if(!item){ + item = menu.addItem(new air.NativeMenuItem(text)); + item.mnemonicIndex = mindex || 0; + + item.submenu = new air.NativeMenu(); + } + for (var i = 0, len = actions.length; i < len; i++) { + item.submenu.addItem(actions[i] == '-' ? new air.NativeMenuItem("", true) : Ext.air.MenuItem(actions[i])); + } + return item.submenu; + }, + + /** + * Returns the application menu + */ + get : function(){ + return menu; + } + }; +}(); + +// ability to bind native menu items to an Ext.Action +Ext.air.MenuItem = function(action){ + if(!action.isAction){ + action = new Ext.Action(action); + } + var cfg = action.initialConfig; + var nativeItem = new air.NativeMenuItem(cfg.itemText || cfg.text); + + nativeItem.enabled = !cfg.disabled; + + if(!Ext.isEmpty(cfg.checked)){ + nativeItem.checked = cfg.checked; + } + + var handler = cfg.handler; + var scope = cfg.scope; + + nativeItem.addEventListener(air.Event.SELECT, function(){ + handler.call(scope || window, cfg); + }); + + action.addComponent({ + setDisabled : function(v){ + nativeItem.enabled = !v; + }, + + setText : function(v){ + nativeItem.label = v; + }, + + setVisible : function(v){ + // could not find way to hide in air so disable? + nativeItem.enabled = !v; + }, + + setHandler : function(newHandler, newScope){ + handler = newHandler; + scope = newScope; + }, + // empty function + on : function(){} + }); + + return nativeItem; +} Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/SystemTray.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/SystemTray.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/SystemTray.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,122 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +/** + * @class Ext.air.SystemTray + * @singleton + * + * + * + */ +Ext.air.SystemTray = function(){ + var app = air.NativeApplication.nativeApplication; + var icon, isWindows = false, bitmaps; + + // windows + if(air.NativeApplication.supportsSystemTrayIcon) { + icon = app.icon; + isWindows = true; + } + + // mac + if(air.NativeApplication.supportsDockIcon) { + icon = app.icon; + } + + return { + /** + * Sets the Icon and tooltip for the currently running application in the + * SystemTray or Dock depending on the operating system. + * @param {String} icon Icon to load with a URLRequest + * @param {String} tooltip Tooltip to use when mousing over the icon + * @param {Boolean} initWithIcon Boolean to initialize with icon immediately + */ + setIcon : function(icon, tooltip, initWithIcon){ + if(!icon){ // not supported OS + return; + } + var loader = new air.Loader(); + loader.contentLoaderInfo.addEventListener(air.Event.COMPLETE, function(e){ + bitmaps = new runtime.Array(e.target.content.bitmapData); + if (initWithIcon) { + icon.bitmaps = bitmaps; + } + }); + + loader.load(new air.URLRequest(icon)); + if(tooltip && air.NativeApplication.supportsSystemTrayIcon) { + app.icon.tooltip = tooltip; + } + }, + + /** + * Bounce the OS X dock icon. Accepts a priority to notify the user + * whether the event which has just occurred is informational (single bounce) + * or critcal (continual bounce). + * @param priority {air.NotificationType} The priorities are air.NotificationType.INFORMATIONAL and air.NotificationType.CRITICAL. + */ + bounce : function(priority){ + icon.bounce(priority); + }, + + on : function(eventName, fn, scope){ + icon.addEventListener(eventName, function(){ + fn.apply(scope || this, arguments); + }); + }, + + /** + * Hide the custom icon + */ + hideIcon : function(){ + if(!icon){ // not supported OS + return; + } + icon.bitmaps = []; + }, + + /** + * Show the custom icon + */ + showIcon : function(){ + if(!icon){ // not supported OS + return; + } + icon.bitmaps = bitmaps; + }, + + /** + * Sets a menu for the icon + * @param {Array} actions Configurations for Ext.air.MenuItem's + */ + setMenu: function(actions, _parentMenu){ + if(!icon){ // not supported OS + return; + } + var menu = new air.NativeMenu(); + + for (var i = 0, len = actions.length; i < len; i++) { + var a = actions[i]; + if(a == '-'){ + menu.addItem(new air.NativeMenuItem("", true)); + }else{ + var item = menu.addItem(Ext.air.MenuItem(a)); + if(a.menu || (a.initialConfig && a.initialConfig.menu)){ + item.submenu = Ext.air.SystemTray.setMenu(a.menu || a.initialConfig.menu, menu); + } + } + + if(!_parentMenu){ + icon.menu = menu; + } + } + + return menu; + } + }; +}(); \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/VideoPanel.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/VideoPanel.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/VideoPanel.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,71 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +/** + * @class Ext.air.VideoPanel + * @extends Ext.Panel + */ +Ext.air.VideoPanel = Ext.extend(Ext.Panel, { + // Properties + autoResize: true, + + // Overriden methods + initComponent: function() { + var connection = new air.NetConnection(); + connection.connect(null); + + this.stream = new runtime.flash.net.NetStream(connection); + this.stream.client = { + onMetaData: Ext.emptyFn + }; + + Ext.air.VideoPanel.superclass.initComponent.call(this); + this.on('bodyresize', this.onVideoResize, this); + }, + + afterRender: function() { + Ext.air.VideoPanel.superclass.afterRender.call(this); + (function() { + var box = this.body.getBox(); + this.video = new air.Video(this.getInnerWidth(), this.getInnerHeight()); + if (this.url) { + this.video.attachNetStream(this.stream); + this.stream.play(this.url); + } + nativeWindow.stage.addChild(this.video); + this.video.x = box.x; + this.video.y = box.y; + }).defer(500, this); + }, + + // Custom Methods + onVideoResize: function(pnl, w, h) { + if (this.video && this.autoResize) { + var iw = this.getInnerWidth(); + var ih = this.getInnerHeight(); + this.video.width = iw + this.video.height = ih; + var xy = this.body.getXY(); + if (xy[0] !== this.video.x) { + this.video.x = xy[0]; + } + if (xy[1] !== this.video.y) { + this.video.y = xy[1]; + } + } + }, + + loadVideo: function(url) { + this.stream.close(); + this.video.attachNetStream(this.stream); + this.stream.play(url); + } + +}); +Ext.reg('videopanel', Ext.air.VideoPanel); + Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/air.jsb =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/air.jsb,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/air.jsb 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/ext-air-adapter.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/ext-air-adapter.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/ext-air-adapter.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,834 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +/* + * This file corrects air eval issues and other issues found in the AIR application sandbox + */ +Ext.namespace('Ext.air', 'Ext.sql'); + +Ext.Template.prototype.compile = function() { + var fm = Ext.util.Format; + var useF = this.disableFormats !== true; + // + var prevOffset = 0; + var arr = []; + var tpl = this; + var fn = function(m, name, format, args, offset, s){ + if (prevOffset != offset) { + var action = {type: 1, value: s.substr(prevOffset, offset - prevOffset)}; + arr.push(action); + } + prevOffset = offset + m.length; + if(format && useF){ + if (args) { + var re = /^\s*['"](.*)["']\s*$/; + args = args.split(/,(?=(?:[^"]*"[^"]*")*(?![^"]*"))/); + for(var i = 0, len = args.length; i < len; i++){ + args[i] = args[i].replace(re, "$1"); + } + args = [''].concat(args); + } else { + args = ['']; + } + if(format.substr(0, 5) != "this."){ + var action = {type: 3, value:name, format: fm[format], args: args, scope: fm}; + arr.push(action); + }else{ + var action = {type: 3, value:name, format:tpl[format.substr(5)], args:args, scope: tpl}; + arr.push(action); + } + }else{ + var action = {type: 2, value: name}; + arr.push(action); + } + return m; + }; + + var s = this.html.replace(this.re, fn); + if (prevOffset != (s.length - 1)) { + var action = {type: 1, value: s.substr(prevOffset, s.length - prevOffset)}; + arr.push(action); + } + + this.compiled = function(values) { + function applyValues(el) { + switch (el.type) { + case 1: + return el.value; + case 2: + return (values[el.value] ? values[el.value] : ''); + default: + el.args[0] = values[el.value]; + return el.format.apply(el.scope, el.args); + } + } + return arr.map(applyValues).join(''); + } + return this; +}; + +Ext.Template.prototype.call = function(fnName, value, allValues){ + return this[fnName](value, allValues); +} + + +Ext.DomQuery = function(){ + var cache = {}, simpleCache = {}, valueCache = {}; + var nonSpace = /\S/; + var trimRe = /^\s+|\s+$/g; + var tplRe = /\{(\d+)\}/g; + var modeRe = /^(\s?[\/>+~]\s?|\s|$)/; + var tagTokenRe = /^(#)?([\w-\*]+)/; + var nthRe = /(\d*)n\+?(\d*)/, nthRe2 = /\D/; + + function child(p, index){ + var i = 0; + var n = p.firstChild; + while(n){ + if(n.nodeType == 1){ + if(++i == index){ + return n; + } + } + n = n.nextSibling; + } + return null; + }; + + function next(n){ + while((n = n.nextSibling) && n.nodeType != 1); + return n; + }; + + function prev(n){ + while((n = n.previousSibling) && n.nodeType != 1); + return n; + }; + + function children(d){ + var n = d.firstChild, ni = -1; + while(n){ + var nx = n.nextSibling; + if(n.nodeType == 3 && !nonSpace.test(n.nodeValue)){ + d.removeChild(n); + }else{ + n.nodeIndex = ++ni; + } + n = nx; + } + return this; + }; + + function byClassName(c, a, v){ + if(!v){ + return c; + } + var r = [], ri = -1, cn; + for(var i = 0, ci; ci = c[i]; i++){ + if((' '+ci.className+' ').indexOf(v) != -1){ + r[++ri] = ci; + } + } + return r; + }; + + function attrValue(n, attr){ + if(!n.tagName && typeof n.length != "undefined"){ + n = n[0]; + } + if(!n){ + return null; + } + if(attr == "for"){ + return n.htmlFor; + } + if(attr == "class" || attr == "className"){ + return n.className; + } + return n.getAttribute(attr) || n[attr]; + + }; + + function getNodes(ns, mode, tagName){ + var result = [], ri = -1, cs; + if(!ns){ + return result; + } + tagName = tagName || "*"; + if(typeof ns.getElementsByTagName != "undefined"){ + ns = [ns]; + } + if(!mode){ + for(var i = 0, ni; ni = ns[i]; i++){ + cs = ni.getElementsByTagName(tagName); + for(var j = 0, ci; ci = cs[j]; j++){ + result[++ri] = ci; + } + } + }else if(mode == "/" || mode == ">"){ + var utag = tagName.toUpperCase(); + for(var i = 0, ni, cn; ni = ns[i]; i++){ + cn = ni.children || ni.childNodes; + for(var j = 0, cj; cj = cn[j]; j++){ + if(cj.nodeName == utag || cj.nodeName == tagName || tagName == '*'){ + result[++ri] = cj; + } + } + } + }else if(mode == "+"){ + var utag = tagName.toUpperCase(); + for(var i = 0, n; n = ns[i]; i++){ + while((n = n.nextSibling) && n.nodeType != 1); + if(n && (n.nodeName == utag || n.nodeName == tagName || tagName == '*')){ + result[++ri] = n; + } + } + }else if(mode == "~"){ + for(var i = 0, n; n = ns[i]; i++){ + while((n = n.nextSibling) && (n.nodeType != 1 || (tagName == '*' || n.tagName.toLowerCase()!=tagName))); + if(n){ + result[++ri] = n; + } + } + } + return result; + }; + + function concat(a, b){ + if(b.slice){ + return a.concat(b); + } + for(var i = 0, l = b.length; i < l; i++){ + a[a.length] = b[i]; + } + return a; + } + + function byTag(cs, tagName){ + if(cs.tagName || cs == document){ + cs = [cs]; + } + if(!tagName){ + return cs; + } + var r = [], ri = -1; + tagName = tagName.toLowerCase(); + for(var i = 0, ci; ci = cs[i]; i++){ + if(ci.nodeType == 1 && ci.tagName.toLowerCase()==tagName){ + r[++ri] = ci; + } + } + return r; + }; + + function byId(cs, attr, id){ + if(cs.tagName || cs == document){ + cs = [cs]; + } + if(!id){ + return cs; + } + var r = [], ri = -1; + for(var i = 0,ci; ci = cs[i]; i++){ + if(ci && ci.id == id){ + r[++ri] = ci; + return r; + } + } + return r; + }; + + function byAttribute(cs, attr, value, op, custom){ + var r = [], ri = -1, st = custom=="{"; + var f = Ext.DomQuery.operators[op]; + for(var i = 0, ci; ci = cs[i]; i++){ + var a; + if(st){ + a = Ext.DomQuery.getStyle(ci, attr); + } + else if(attr == "class" || attr == "className"){ + a = ci.className; + }else if(attr == "for"){ + a = ci.htmlFor; + }else if(attr == "href"){ + a = ci.getAttribute("href", 2); + }else{ + a = ci.getAttribute(attr); + } + if((f && f(a, value)) || (!f && a)){ + r[++ri] = ci; + } + } + return r; + }; + + function byPseudo(cs, name, value){ + return Ext.DomQuery.pseudos[name](cs, value); + }; + + + // this eval is stop the compressor from + // renaming the variable to something shorter + eval("var batch = 30803;"); + + var key = 30803; + + function nodup(cs){ + if(!cs){ + return []; + } + var len = cs.length, c, i, r = cs, cj, ri = -1; + if(!len || typeof cs.nodeType != "undefined" || len == 1){ + return cs; + } + var d = ++key; + cs[0]._nodup = d; + for(i = 1; c = cs[i]; i++){ + if(c._nodup != d){ + c._nodup = d; + }else{ + r = []; + for(var j = 0; j < i; j++){ + r[++ri] = cs[j]; + } + for(j = i+1; cj = cs[j]; j++){ + if(cj._nodup != d){ + cj._nodup = d; + r[++ri] = cj; + } + } + return r; + } + } + return r; + } + + function quickDiff(c1, c2){ + var len1 = c1.length; + if(!len1){ + return c2; + } + var d = ++key; + for(var i = 0; i < len1; i++){ + c1[i]._qdiff = d; + } + var r = []; + for(var i = 0, len = c2.length; i < len; i++){ + if(c2[i]._qdiff != d){ + r[r.length] = c2[i]; + } + } + return r; + } + + function quickId(ns, mode, root, id){ + if(ns == root){ + var d = root.ownerDocument || root; + return d.getElementById(id); + } + ns = getNodes(ns, mode, "*"); + return byId(ns, null, id); + } + + function search(path, root, type) { + type = type || "select"; + // + var n = root || document; + // + var q = path, mode, lq; + var tk = Ext.DomQuery.matchers; + var tklen = tk.length; + var mm; + + var lmode = q.match(modeRe); + if(lmode && lmode[1]){ + mode=lmode[1].replace(trimRe, ""); + q = q.replace(lmode[1], ""); + } + while(path.substr(0, 1)=="/"){ + path = path.substr(1); + } + while(q && lq != q){ + lq = q; + var tm = q.match(tagTokenRe); + if(type == "select"){ + if(tm){ + if(tm[1] == "#"){ + n = quickId(n, mode, root, tm[2]); + }else{ + n = getNodes(n, mode, tm[2]); + } + q = q.replace(tm[0], ""); + }else if(q.substr(0, 1) != '@'){ + n = getNodes(n, mode, "*"); + } + }else{ + if(tm){ + if(tm[1] == "#"){ + n = byId(n, null, tm[2]); + }else{ + n = byTag(n, tm[2]); + } + q = q.replace(tm[0], ""); + } + } + while(!(mm = q.match(modeRe))){ + var matched = false; + for(var j = 0; j < tklen; j++){ + var t = tk[j]; + var m = q.match(t.re); + if(m){ + switch(j) { + case 0: + n = byClassName(n, null, " " + m[1] +" "); + break; + case 1: + n = byPseudo(n, m[1], m[2]); + break; + case 2: + n = byAttribute(n, m[2], m[4], m[3], m[1]); + break; + case 3: + n = byId(n, null, m[1]); + break; + case 4: + return {firstChild:{nodeValue:attrValue(n, m[1])}}; + + } + q = q.replace(m[0], ""); + matched = true; + break; + } + } + + if(!matched){ + throw 'Error parsing selector, parsing failed at "' + q + '"'; + } + } + if(mm[1]){ + mode=mm[1].replace(trimRe, ""); + q = q.replace(mm[1], ""); + } + } + return nodup(n); + } + + return { + getStyle : function(el, name){ + return Ext.fly(el).getStyle(name); + }, + + compile: function(path, type) { + return function(root) { + return search(path, root, type); + } + }, + + /** + * Selects a group of elements. + * @param {String} selector The selector/xpath query (can be a comma separated list of selectors) + * @param {Node} root (optional) The start of the query (defaults to document). + * @return {Array} + */ + select : function(path, root, type){ + if(!root || root == document){ + root = document; + } + if(typeof root == "string"){ + root = document.getElementById(root); + } + var paths = path.split(","); + var results = []; + for(var i = 0, len = paths.length; i < len; i++){ + var p = paths[i].replace(trimRe, ""); + if(!cache[p]){ + cache[p] = Ext.DomQuery.compile(p); + if(!cache[p]){ + throw p + " is not a valid selector"; + } + } + var result = cache[p](root); + if(result && result != document){ + results = results.concat(result); + } + } + if(paths.length > 1){ + return nodup(results); + } + return results; + }, + + /** + * Selects a single element. + * @param {String} selector The selector/xpath query + * @param {Node} root (optional) The start of the query (defaults to document). + * @return {Element} + */ + selectNode : function(path, root){ + return Ext.DomQuery.select(path, root)[0]; + }, + + /** + * Selects the value of a node, optionally replacing null with the defaultValue. + * @param {String} selector The selector/xpath query + * @param {Node} root (optional) The start of the query (defaults to document). + * @param {String} defaultValue + */ + selectValue : function(path, root, defaultValue){ + path = path.replace(trimRe, ""); + if(!valueCache[path]){ + valueCache[path] = Ext.DomQuery.compile(path, "select"); + } + var n = valueCache[path](root); + n = n[0] ? n[0] : n; + var v = (n && n.firstChild ? n.firstChild.nodeValue : null); + return ((v === null||v === undefined||v==='') ? defaultValue : v); + }, + + /** + * Selects the value of a node, parsing integers and floats. + * @param {String} selector The selector/xpath query + * @param {Node} root (optional) The start of the query (defaults to document). + * @param {Number} defaultValue + * @return {Number} + */ + selectNumber : function(path, root, defaultValue){ + var v = Ext.DomQuery.selectValue(path, root, defaultValue || 0); + return parseFloat(v); + }, + + /** + * Returns true if the passed element(s) match the passed simple selector (e.g. div.some-class or span:first-child) + * @param {String/HTMLElement/Array} el An element id, element or array of elements + * @param {String} selector The simple selector to test + * @return {Boolean} + */ + is : function(el, ss){ + if(typeof el == "string"){ + el = document.getElementById(el); + } + var isArray = Ext.isArray(el); + var result = Ext.DomQuery.filter(isArray ? el : [el], ss); + return isArray ? (result.length == el.length) : (result.length > 0); + }, + + /** + * Filters an array of elements to only include matches of a simple selector (e.g. div.some-class or span:first-child) + * @param {Array} el An array of elements to filter + * @param {String} selector The simple selector to test + * @param {Boolean} nonMatches If true, it returns the elements that DON'T match + * the selector instead of the ones that match + * @return {Array} + */ + filter : function(els, ss, nonMatches){ + ss = ss.replace(trimRe, ""); + if(!simpleCache[ss]){ + simpleCache[ss] = Ext.DomQuery.compile(ss, "simple"); + } + var result = simpleCache[ss](els); + return nonMatches ? quickDiff(result, els) : result; + }, + + /** + * Collection of matching regular expressions and code snippets. + */ + matchers : [{ + re: /^\.([\w-]+)/, + select: 'n = byClassName(n, null, " {1} ");' + }, { + re: /^\:([\w-]+)(?:\(((?:[^\s>\/]*|.*?))\))?/, + select: 'n = byPseudo(n, "{1}", "{2}");' + },{ + re: /^(?:([\[\{])(?:@)?([\w-]+)\s?(?:(=|.=)\s?['"]?(.*?)["']?)?[\]\}])/, + select: 'n = byAttribute(n, "{2}", "{4}", "{3}", "{1}");' + }, { + re: /^#([\w-]+)/, + select: 'n = byId(n, null, "{1}");' + },{ + re: /^@([\w-]+)/, + select: 'return {firstChild:{nodeValue:attrValue(n, "{1}")}};' + } + ], + + /** + * Collection of operator comparison functions. The default operators are =, !=, ^=, $=, *=, %=, |= and ~=. + * New operators can be added as long as the match the format c= where c is any character other than space, > <. + */ + operators : { + "=" : function(a, v){ + return a == v; + }, + "!=" : function(a, v){ + return a != v; + }, + "^=" : function(a, v){ + return a && a.substr(0, v.length) == v; + }, + "$=" : function(a, v){ + return a && a.substr(a.length-v.length) == v; + }, + "*=" : function(a, v){ + return a && a.indexOf(v) !== -1; + }, + "%=" : function(a, v){ + return (a % v) == 0; + }, + "|=" : function(a, v){ + return a && (a == v || a.substr(0, v.length+1) == v+'-'); + }, + "~=" : function(a, v){ + return a && (' '+a+' ').indexOf(' '+v+' ') != -1; + } + }, + + /** + * Collection of "pseudo class" processors. Each processor is passed the current nodeset (array) + * and the argument (if any) supplied in the selector. + */ + pseudos : { + "first-child" : function(c){ + var r = [], ri = -1, n; + for(var i = 0, ci; ci = n = c[i]; i++){ + while((n = n.previousSibling) && n.nodeType != 1); + if(!n){ + r[++ri] = ci; + } + } + return r; + }, + + "last-child" : function(c){ + var r = [], ri = -1, n; + for(var i = 0, ci; ci = n = c[i]; i++){ + while((n = n.nextSibling) && n.nodeType != 1); + if(!n){ + r[++ri] = ci; + } + } + return r; + }, + + "nth-child" : function(c, a) { + var r = [], ri = -1; + var m = nthRe.exec(a == "even" && "2n" || a == "odd" && "2n+1" || !nthRe2.test(a) && "n+" + a || a); + var f = (m[1] || 1) - 0, l = m[2] - 0; + for(var i = 0, n; n = c[i]; i++){ + var pn = n.parentNode; + if (batch != pn._batch) { + var j = 0; + for(var cn = pn.firstChild; cn; cn = cn.nextSibling){ + if(cn.nodeType == 1){ + cn.nodeIndex = ++j; + } + } + pn._batch = batch; + } + if (f == 1) { + if (l == 0 || n.nodeIndex == l){ + r[++ri] = n; + } + } else if ((n.nodeIndex + l) % f == 0){ + r[++ri] = n; + } + } + + return r; + }, + + "only-child" : function(c){ + var r = [], ri = -1;; + for(var i = 0, ci; ci = c[i]; i++){ + if(!prev(ci) && !next(ci)){ + r[++ri] = ci; + } + } + return r; + }, + + "empty" : function(c){ + var r = [], ri = -1; + for(var i = 0, ci; ci = c[i]; i++){ + var cns = ci.childNodes, j = 0, cn, empty = true; + while(cn = cns[j]){ + ++j; + if(cn.nodeType == 1 || cn.nodeType == 3){ + empty = false; + break; + } + } + if(empty){ + r[++ri] = ci; + } + } + return r; + }, + + "contains" : function(c, v){ + var r = [], ri = -1; + for(var i = 0, ci; ci = c[i]; i++){ + if((ci.textContent||ci.innerText||'').indexOf(v) != -1){ + r[++ri] = ci; + } + } + return r; + }, + + "nodeValue" : function(c, v){ + var r = [], ri = -1; + for(var i = 0, ci; ci = c[i]; i++){ + if(ci.firstChild && ci.firstChild.nodeValue == v){ + r[++ri] = ci; + } + } + return r; + }, + + "checked" : function(c){ + var r = [], ri = -1; + for(var i = 0, ci; ci = c[i]; i++){ + if(ci.checked == true){ + r[++ri] = ci; + } + } + return r; + }, + + "not" : function(c, ss){ + return Ext.DomQuery.filter(c, ss, true); + }, + + "any" : function(c, selectors){ + var ss = selectors.split('|'); + var r = [], ri = -1, s; + for(var i = 0, ci; ci = c[i]; i++){ + for(var j = 0; s = ss[j]; j++){ + if(Ext.DomQuery.is(ci, s)){ + r[++ri] = ci; + break; + } + } + } + return r; + }, + + "odd" : function(c){ + return this["nth-child"](c, "odd"); + }, + + "even" : function(c){ + return this["nth-child"](c, "even"); + }, + + "nth" : function(c, a){ + return c[a-1] || []; + }, + + "first" : function(c){ + return c[0] || []; + }, + + "last" : function(c){ + return c[c.length-1] || []; + }, + + "has" : function(c, ss){ + var s = Ext.DomQuery.select; + var r = [], ri = -1; + for(var i = 0, ci; ci = c[i]; i++){ + if(s(ss, ci).length > 0){ + r[++ri] = ci; + } + } + return r; + }, + + "next" : function(c, ss){ + var is = Ext.DomQuery.is; + var r = [], ri = -1; + for(var i = 0, ci; ci = c[i]; i++){ + var n = next(ci); + if(n && is(n, ss)){ + r[++ri] = ci; + } + } + return r; + }, + + "prev" : function(c, ss){ + var is = Ext.DomQuery.is; + var r = [], ri = -1; + for(var i = 0, ci; ci = c[i]; i++){ + var n = prev(ci); + if(n && is(n, ss)){ + r[++ri] = ci; + } + } + return r; + } + } + }; +}(); + +Ext.query = Ext.DomQuery.select; + +Date.precompileFormats = function(s){ + var formats = s.split('|'); + for(var i = 0, len = formats.length;i < len;i++){ + Date.createNewFormat(formats[i]); + Date.createParser(formats[i]); + } +} + +Date.precompileFormats("D n/j/Y|n/j/Y|n/j/y|m/j/y|n/d/y|m/j/Y|n/d/Y|YmdHis|F d, Y|l, F d, Y|H:i:s|g:i A|g:ia|g:iA|g:i a|g:i A|h:i|g:i|H:i|ga|ha|gA|h a|g a|g A|gi|hi|gia|hia|g|H|m/d/y|m/d/Y|m-d-y|m-d-Y|m/d|m-d|md|mdy|mdY|d|Y-m-d|Y-m-d H:i:s|d/m/y|d/m/Y|d-m-y|d-m-Y|d/m|d-m|dm|dmy|dmY|Y-m-d|l|D m/d|D m/d/Y|m/d/Y"); + +// precompile instead of lazy init +Ext.ColorPalette.prototype.tpl = new Ext.XTemplate( + ' ' +); + + +// Unique task ids, if the time isn't unique enough, the addition +// of random chars should be +Ext.uniqueId = function(){ + var t = String(new Date().getTime()).substr(4); + var s = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'; + for(var i = 0; i < 4; i++){ + t += s.charAt(Math.floor(Math.random()*26)); + } + return t; +}; + +Ext.data.JsonReader.override({ + getJsonAccessor: function(){ + var re = /[\[\.]/; + return function(expr) { + try { + if (re.test(expr)) { + var arr = expr.split('.'); + var ln = arr.length; + return function(obj) { + var l = obj; + for (var i = 0; i < ln; i++) { + l = l[arr[i]]; + } + return l; + }; + } else { + return function(obj){ + return obj[expr]; + }; + } + } catch(e){ + Ext.air.dir(e); + } + return Ext.emptyFn; + }; + }() +}); + + Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/sql/AirConnection.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/sql/AirConnection.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/sql/AirConnection.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,86 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + + Ext.sql.AirConnection = Ext.extend(Ext.sql.Connection, { + // abstract methods + open : function(db){ + this.conn = new air.SQLConnection(); + var file = air.File.applicationDirectory.resolvePath(db); + this.conn.open(file); + this.openState = true; + this.fireEvent('open', this); + }, + + close : function(){ + this.conn.close(); + this.fireEvent('close', this); + }, + + createStatement : function(type){ + var stmt = new air.SQLStatement(); + stmt.sqlConnection = this.conn; + return stmt; + }, + + exec : function(sql){ + var stmt = this.createStatement('exec'); + stmt.text = sql; + stmt.execute(); + }, + + execBy : function(sql, args){ + var stmt = this.createStatement('exec'); + stmt.text = sql; + this.addParams(stmt, args); + stmt.execute(); + }, + + query : function(sql){ + var stmt = this.createStatement('query'); + stmt.text = sql; + stmt.execute(this.maxResults); + return this.readResults(stmt.getResult()); + }, + + queryBy : function(sql, args){ + var stmt = this.createStatement('query'); + stmt.text = sql; + this.addParams(stmt, args); + stmt.execute(this.maxResults); + return this.readResults(stmt.getResult()); + }, + + addParams : function(stmt, args){ + if(!args){ return; } + for(var key in args){ + if(args.hasOwnProperty(key)){ + if(!isNaN(key)){ + var v = args[key]; + if(Ext.isDate(v)){ + v = v.format(Ext.sql.Proxy.DATE_FORMAT); + } + stmt.parameters[parseInt(key)] = v; + }else{ + stmt.parameters[':' + key] = args[key]; + } + } + } + return stmt; + }, + + readResults : function(rs){ + var r = []; + if(rs && rs.data){ + var len = rs.data.length; + for(var i = 0; i < len; i++) { + r[r.length] = rs.data[i]; + } + } + return r; + } +}); \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/sql/Connection.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/sql/Connection.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/sql/Connection.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,98 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +// Abstract base class for Connection classes +Ext.sql.Connection = function(config){ + Ext.apply(this, config); + Ext.sql.Connection.superclass.constructor.call(this); + + this.addEvents({ + open : true, + close: true + }); +}; + +Ext.extend(Ext.sql.Connection, Ext.util.Observable, { + maxResults: 10000, + openState : false, + + // abstract methods + open : function(file){ + }, + + close : function(){ + }, + + exec : function(sql){ + }, + + execBy : function(sql, args){ + }, + + query : function(sql){ + }, + + queryBy : function(sql, args){ + }, + + // protected/inherited method + isOpen : function(){ + return this.openState; + }, + + getTable : function(name, keyName){ + return new Ext.sql.Table(this, name, keyName); + }, + + createTable : function(o){ + var tableName = o.name; + var keyName = o.key; + var fs = o.fields; + if(!Ext.isArray(fs)){ // Ext fields collection + fs = fs.items; + } + var buf = []; + for(var i = 0, len = fs.length; i < len; i++){ + var f = fs[i], s = f.name; + switch(f.type){ + case "int": + case "bool": + case "boolean": + s += ' INTEGER'; + break; + case "float": + s += ' REAL'; + break; + default: + s += ' TEXT'; + } + if(f.allowNull === false || f.name == keyName){ + s += ' NOT NULL'; + } + if(f.name == keyName){ + s += ' PRIMARY KEY'; + } + if(f.unique === true){ + s += ' UNIQUE'; + } + + buf[buf.length] = s; + } + var sql = ['CREATE TABLE IF NOT EXISTS ', tableName, ' (', buf.join(','), ')'].join(''); + this.exec(sql); + } +}); + + +Ext.sql.Connection.getInstance = function(db, config){ + if(Ext.isAir){ // air + return new Ext.sql.AirConnection(config); + } else { // gears + return new Ext.sql.GearsConnection(config); + } +}; \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/sql/Proxy.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/sql/Proxy.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/sql/Proxy.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,114 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +/** + * @class Ext.sql.Proxy + * @extends Ext.data.DataProxy + * An implementation of {@link Ext.data.DataProxy} that reads from a SQLLite + * database. + * + * @constructor + * @param {Object} conn an {@link Ext.sql.Connection} object + * @param {String} table The name of the database table + * @param {String} keyName The primary key of the table + * @param {Ext.data.Store} store The datastore to bind to + * @param {Boolean} readonly By default all changes to the store will be persisted + * to the database. Set this to true to override to make the store readonly. + */ +Ext.sql.Proxy = function(conn, table, keyName, store, readonly){ + Ext.sql.Proxy.superclass.constructor.call(this); + this.conn = conn; + this.table = this.conn.getTable(table, keyName); + this.store = store; + + if (readonly !== true) { + this.store.on('add', this.onAdd, this); + this.store.on('update', this.onUpdate, this); + this.store.on('remove', this.onRemove, this); + } +}; + +Ext.sql.Proxy.DATE_FORMAT = 'Y-m-d H:i:s'; + +Ext.extend(Ext.sql.Proxy, Ext.data.DataProxy, { + load : function(params, reader, callback, scope, arg){ + if(!this.conn.isOpen()){ // assume that the connection is in the process of opening + this.conn.on('open', function(){ + this.load(params, reader, callback, scope, arg); + }, this, {single:true}); + return; + }; + if(this.fireEvent("beforeload", this, params, reader, callback, scope, arg) !== false){ + var clause = params.where || ''; + var args = params.args || []; + var group = params.groupBy; + var sort = params.sort; + var dir = params.dir; + + if(group || sort){ + clause += ' ORDER BY '; + if(group && group != sort){ + clause += group + ' ASC, '; + } + clause += sort + ' ' + (dir || 'ASC'); + } + + var rs = this.table.selectBy(clause, args); + this.onLoad({callback:callback, scope:scope, arg:arg, reader: reader}, rs); + }else{ + callback.call(scope||this, null, arg, false); + } + }, + + onLoad : function(trans, rs, e, stmt){ + if(rs === false){ + this.fireEvent("loadexception", this, null, trans.arg, e); + trans.callback.call(trans.scope||window, null, trans.arg, false); + return; + } + var result = trans.reader.readRecords(rs); + this.fireEvent("load", this, rs, trans.arg); + trans.callback.call(trans.scope||window, result, trans.arg, true); + }, + + processData : function(o){ + var fs = this.store.fields; + var r = {}; + for(var key in o){ + var f = fs.key(key), v = o[key]; + if(f){ + if(f.type == 'date'){ + r[key] = v ? v.format(Ext.sql.Proxy.DATE_FORMAT,10) : ''; + }else if(f.type == 'boolean'){ + r[key] = v ? 1 : 0; + }else{ + r[key] = v; + } + } + } + return r; + }, + + onUpdate : function(ds, record){ + var changes = record.getChanges(); + var kn = this.table.keyName; + this.table.updateBy(this.processData(changes), kn + ' = ?', [record.data[kn]]); + record.commit(true); + }, + + onAdd : function(ds, records, index){ + for(var i = 0, len = records.length; i < len; i++){ + this.table.insert(this.processData(records[i].data)); + } + }, + + onRemove : function(ds, record, index){ + var kn = this.table.keyName; + this.table.removeBy(kn + ' = ?', [record.data[kn]]); + } +}); \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/sql/SQLiteStore.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/sql/SQLiteStore.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/sql/SQLiteStore.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,49 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +/** + * @class Ext.sql.SQLiteStore + * @extends Ext.data.Store + * Convenience class which assists in setting up SQLiteStore's. + * This class will create the necessary table if it does not exist. + * This class requires that all fields stored in the database will also be kept + * in the Ext.data.Store. + */ +Ext.sql.SQLiteStore = Ext.extend(Ext.data.Store, { + /** + * @cfg {String} key This is the primary key for the table and the id for the Ext.data.Record. + */ + /** + * @cfg {Array} fields Array of fields to be used. Both name and type must be specified for every field. + */ + /** + * @cfg {String} dbFile Filename to create/open + */ + /** + * @cfg {String} tableName Name of the database table + */ + constructor: function(config) { + config = config || {}; + config.reader = new Ext.data.JsonReader({ + id: config.key, + fields: config.fields + }); + var conn = Ext.sql.Connection.getInstance(); + + conn.open(config.dbFile); + // Create the database table if it does + // not exist + conn.createTable({ + name: config.tableName, + key: config.key, + fields: config.reader.recordType.prototype.fields + }); + Ext.sql.SQLiteStore.superclass.constructor.call(this, config); + this.proxy = new Ext.sql.Proxy(conn, config.tableName, config.key, this, false); + } +}); Index: openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/sql/Table.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/sql/Table.js,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/air/src/sql/Table.js 11 Apr 2009 18:15:09 -0000 1.1 @@ -0,0 +1,94 @@ +/* + * Ext JS Library 0.30 + * Copyright(c) 2006-2009, Ext JS, LLC. + * licensing@extjs.com + * + * http://extjs.com/license + */ + +Ext.sql.Table = function(conn, name, keyName){ + this.conn = conn; + this.name = name; + this.keyName = keyName; +}; + +Ext.sql.Table.prototype = { + update : function(o){ + var clause = this.keyName + " = ?"; + return this.updateBy(o, clause, [o[this.keyName]]); + }, + + updateBy : function(o, clause, args){ + var sql = "UPDATE " + this.name + " set "; + var fs = [], a = []; + for(var key in o){ + if(o.hasOwnProperty(key)){ + fs[fs.length] = key + ' = ?'; + a[a.length] = o[key]; + } + } + for(var key in args){ + if(args.hasOwnProperty(key)){ + a[a.length] = args[key]; + } + } + sql = [sql, fs.join(','), ' WHERE ', clause].join(''); + return this.conn.execBy(sql, a); + }, + + insert : function(o){ + var sql = "INSERT into " + this.name + " "; + var fs = [], vs = [], a = []; + for(var key in o){ + if(o.hasOwnProperty(key)){ + fs[fs.length] = key; + vs[vs.length] = '?'; + a[a.length] = o[key]; + } + } + sql = [sql, '(', fs.join(','), ') VALUES (', vs.join(','), ')'].join(''); + return this.conn.execBy(sql, a); + }, + + lookup : function(id){ + return this.selectBy('where ' + this.keyName + " = ?", [id])[0] || null; + }, + + exists : function(id){ + return !!this.lookup(id); + }, + + save : function(o){ + if(this.exists(o[this.keyName])){ + this.update(o); + }else{ + this.insert(o); + } + }, + + select : function(clause){ + return this.selectBy(clause, null); + }, + + selectBy : function(clause, args){ + var sql = "select * from " + this.name; + if(clause){ + sql += ' ' + clause; + } + args = args || {}; + return this.conn.queryBy(sql, args); + }, + + remove : function(clause){ + this.deleteBy(clause, null); + }, + + removeBy : function(clause, args){ + var sql = "delete from " + this.name; + if(clause){ + sql += ' where ' + clause; + } + args = args || {}; + this.conn.execBy(sql, args); + } +}; \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/build/debug-min.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/build/debug-min.js,v diff -u -r1.1 -r1.2 --- openacs-4/packages/ajaxhelper/www/resources/ext2/build/debug-min.js 4 Dec 2007 02:48:31 -0000 1.1 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/build/debug-min.js 11 Apr 2009 18:15:09 -0000 1.2 @@ -1,9 +1 @@ -/* - * Ext JS Library 2.0 - * Copyright(c) 2006-2007, Ext JS, LLC. - * licensing@extjs.com - * - * http://extjs.com/license - */ - -Ext.debug={};(function(){var B;function A(){var E=new Ext.debug.ScriptsPanel();var G=new Ext.debug.LogPanel();var C=new Ext.debug.DomTree();var D=new Ext.TabPanel({activeTab:0,border:false,tabPosition:"bottom",items:[{title:"Debug Console",layout:"border",items:[G,E]},{title:"DOM Inspector",layout:"border",items:[C]}]});B=new Ext.Panel({id:"x-debug-browser",title:"Console",collapsible:true,animCollapse:false,style:"position:absolute;left:0;bottom:0;",height:200,logView:G,layout:"fit",tools:[{id:"close",handler:function(){B.destroy();B=null;Ext.EventManager.removeResizeListener(F)}}],items:D});B.render(document.body);B.resizer=new Ext.Resizable(B.el,{minHeight:50,handles:"n",pinned:true,transparent:true,resizeElement:function(){var H=this.proxy.getBox();this.proxy.hide();B.setHeight(H.height);return H}});function F(){B.setWidth(Ext.getBody().getViewSize().width)}Ext.EventManager.onWindowResize(F);F()}Ext.apply(Ext,{log:function(){if(!B){A()}B.logView.log.apply(B.logView,arguments)},logf:function(F,E,C,D){Ext.log(String.format.apply(String,arguments))},dump:function(F){if(typeof F=="string"||typeof F=="number"||typeof F=="undefined"||F instanceof Date){Ext.log(F)}else{if(!F){Ext.log("null")}else{if(typeof F!="object"){Ext.log("Unknown return type")}else{if(F instanceof Array){Ext.log("["+F.join(",")+"]")}else{var C=["{\n"];for(var D in F){var G=typeof F[D];if(G!="function"&&G!="object"){C.push(String.format(" {0}: {1},\n",D,F[D]))}}var E=C.join("");if(E.length>3){E=E.substr(0,E.length-2)}Ext.log(E+"\n}")}}}}},_timers:{},time:function(C){C=C||"def";Ext._timers[C]=new Date().getTime()},timeEnd:function(D,F){var E=new Date().getTime();D=D||"def";var C=String.format("{0} ms",E-Ext._timers[D]);Ext._timers[D]=new Date().getTime();if(F!==false){Ext.log("Timer "+(D=="def"?C:D+": "+C))}return C}})})();Ext.debug.ScriptsPanel=Ext.extend(Ext.Panel,{id:"x-debug-scripts",region:"east",minWidth:200,split:true,width:350,border:false,layout:"anchor",style:"border-width:0 0 0 1px;",initComponent:function(){this.scriptField=new Ext.form.TextArea({anchor:"100% -26",style:"border-width:0;"});this.trapBox=new Ext.form.Checkbox({id:"console-trap",boxLabel:"Trap Errors",checked:true});this.toolbar=new Ext.Toolbar([{text:"Run",scope:this,handler:this.evalScript},{text:"Clear",scope:this,handler:this.clear},"->",this.trapBox," "," "]);this.items=[this.toolbar,this.scriptField];Ext.debug.ScriptsPanel.superclass.initComponent.call(this)},evalScript:function(){var s=this.scriptField.getValue();if(this.trapBox.getValue()){try{var rt=eval(s);Ext.dump(rt===undefined?"(no return)":rt)}catch(e){Ext.log(e.message||e.descript)}}else{var rt=eval(s);Ext.dump(rt===undefined?"(no return)":rt)}},clear:function(){this.scriptField.setValue("");this.scriptField.focus()}});Ext.debug.LogPanel=Ext.extend(Ext.Panel,{autoScroll:true,region:"center",border:false,style:"border-width:0 1px 0 0",log:function(){var A=["
",Ext.util.Format.htmlEncode(Array.prototype.join.call(arguments,", ")).replace(/\n/g,"
").replace(/\s/g," "),"
"].join("");this.body.insertHtml("beforeend",A);this.body.scrollTo("top",100000)},clear:function(){this.body.update("");this.body.dom.scrollTop=0}});Ext.debug.DomTree=Ext.extend(Ext.tree.TreePanel,{enableDD:false,lines:false,rootVisible:false,animate:false,hlColor:"ffff9c",autoScroll:true,region:"center",border:false,initComponent:function(){Ext.debug.DomTree.superclass.initComponent.call(this);var H=false,A;var I=/^\s*$/;var E=Ext.util.Format.htmlEncode;var G=Ext.util.Format.ellipsis;var D=/\s?([a-z\-]*)\:([^;]*)(?:[;\s\n\r]*)/gi;function B(P){if(!P||P.nodeType!=1||P==document.body||P==document){return false}var L=[P],N=P;while((N=N.parentNode)&&N.nodeType==1&&N.tagName.toUpperCase()!="HTML"){L.unshift(N)}var O=A;for(var M=0,J=L.length;M"+G(E(String(M.nodeValue)),35)+"",cls:"x-tree-noicon"}))}}}J()};this.root=this.setRootNode(new Ext.tree.TreeNode("Ext"));A=this.root.appendChild(new Ext.debug.HtmlNode(document.getElementsByTagName("html")[0]))}});Ext.debug.HtmlNode=function(){var D=Ext.util.Format.htmlEncode;var B=Ext.util.Format.ellipsis;var A=/^\s*$/;var C=[{n:"id",v:"id"},{n:"className",v:"class"},{n:"name",v:"name"},{n:"type",v:"type"},{n:"src",v:"src"},{n:"href",v:"href"}];function F(J){for(var H=0,I;I=J.childNodes[H];H++){if(I.nodeType==1){return true}}return false}function E(I,L){var P=I.tagName.toLowerCase();var O="<"+P;for(var J=0,K=C.length;J"+D(N)+"""}}var H=I.style?I.style.cssText:"";if(H){O+=" style=""+D(H.toLowerCase())+"""}if(L&&I.childNodes.length>0){O+=">"+B(D(String(I.innerHTML)),35)+"</"+P+">"}else{if(L){O+=" />"}else{O+=">"}}return O}var G=function(J){var I=!F(J);this.htmlNode=J;this.tagName=J.tagName.toLowerCase();var H={text:E(J,I),leaf:I,cls:"x-tree-noicon"};G.superclass.constructor.call(this,H);this.attributes.htmlNode=J;if(!I){this.on("expand",this.onExpand,this);this.on("collapse",this.onCollapse,this)}};Ext.extend(G,Ext.tree.AsyncTreeNode,{cls:"x-tree-noicon",preventHScroll:true,refresh:function(I){var H=!F(this.htmlNode);this.setText(E(this.htmlNode,H));if(I){Ext.fly(this.ui.textNode).highlight()}},onExpand:function(){if(!this.closeNode&&this.parentNode){this.closeNode=this.parentNode.insertBefore(new Ext.tree.TreeNode({text:"</"+this.tagName+">",cls:"x-tree-noicon"}),this.nextSibling)}else{if(this.closeNode){this.closeNode.ui.show()}}},onCollapse:function(){if(this.closeNode){this.closeNode.ui.hide()}},render:function(H){G.superclass.render.call(this,H)},highlightNode:function(){},highlight:function(){},frame:function(){this.htmlNode.style.border="1px solid #0000ff"},unframe:function(){this.htmlNode.style.border=""}});return G}(); \ No newline at end of file +Ext.debug={};(function(){var b;function a(){var e=new Ext.debug.ScriptsPanel();var g=new Ext.debug.LogPanel();var c=new Ext.debug.DomTree();var d=new Ext.TabPanel({activeTab:0,border:false,tabPosition:"bottom",items:[{title:"Debug Console",layout:"border",items:[g,e]},{title:"DOM Inspector",layout:"border",items:[c]}]});b=new Ext.Panel({id:"x-debug-browser",title:"Console",collapsible:true,animCollapse:false,style:"position:absolute;left:0;bottom:0;",height:200,logView:g,layout:"fit",tools:[{id:"close",handler:function(){b.destroy();b=null;Ext.EventManager.removeResizeListener(f)}}],items:d});b.render(document.body);b.resizer=new Ext.Resizable(b.el,{minHeight:50,handles:"n",pinned:true,transparent:true,resizeElement:function(){var h=this.proxy.getBox();this.proxy.hide();b.setHeight(h.height);return h}});function f(){b.setWidth(Ext.getBody().getViewSize().width)}Ext.EventManager.onWindowResize(f);f()}Ext.apply(Ext,{log:function(){if(!b){a()}b.logView.log.apply(b.logView,arguments)},logf:function(f,e,c,d){Ext.log(String.format.apply(String,arguments))},dump:function(f){if(typeof f=="string"||typeof f=="number"||typeof f=="undefined"||Ext.isDate(f)){Ext.log(f)}else{if(!f){Ext.log("null")}else{if(typeof f!="object"){Ext.log("Unknown return type")}else{if(Ext.isArray(f)){Ext.log("["+f.join(",")+"]")}else{var c=["{\n"];for(var d in f){var g=typeof f[d];if(g!="function"&&g!="object"){c.push(String.format(" {0}: {1},\n",d,f[d]))}}var e=c.join("");if(e.length>3){e=e.substr(0,e.length-2)}Ext.log(e+"\n}")}}}}},_timers:{},time:function(c){c=c||"def";Ext._timers[c]=new Date().getTime()},timeEnd:function(d,f){var e=new Date().getTime();d=d||"def";var c=String.format("{0} ms",e-Ext._timers[d]);Ext._timers[d]=new Date().getTime();if(f!==false){Ext.log("Timer "+(d=="def"?c:d+": "+c))}return c}})})();Ext.debug.ScriptsPanel=Ext.extend(Ext.Panel,{id:"x-debug-scripts",region:"east",minWidth:200,split:true,width:350,border:false,layout:"anchor",style:"border-width:0 0 0 1px;",initComponent:function(){this.scriptField=new Ext.form.TextArea({anchor:"100% -26",style:"border-width:0;"});this.trapBox=new Ext.form.Checkbox({id:"console-trap",boxLabel:"Trap Errors",checked:true});this.toolbar=new Ext.Toolbar([{text:"Run",scope:this,handler:this.evalScript},{text:"Clear",scope:this,handler:this.clear},"->",this.trapBox," "," "]);this.items=[this.toolbar,this.scriptField];Ext.debug.ScriptsPanel.superclass.initComponent.call(this)},evalScript:function(){var s=this.scriptField.getValue();if(this.trapBox.getValue()){try{var rt=eval(s);Ext.dump(rt===undefined?"(no return)":rt)}catch(e){Ext.log(e.message||e.descript)}}else{var rt=eval(s);Ext.dump(rt===undefined?"(no return)":rt)}},clear:function(){this.scriptField.setValue("");this.scriptField.focus()}});Ext.debug.LogPanel=Ext.extend(Ext.Panel,{autoScroll:true,region:"center",border:false,style:"border-width:0 1px 0 0",log:function(){var a=['
',Ext.util.Format.htmlEncode(Array.prototype.join.call(arguments,", ")).replace(/\n/g,"
").replace(/\s/g," "),"
"].join("");this.body.insertHtml("beforeend",a);this.body.scrollTo("top",100000)},clear:function(){this.body.update("");this.body.dom.scrollTop=0}});Ext.debug.DomTree=Ext.extend(Ext.tree.TreePanel,{enableDD:false,lines:false,rootVisible:false,animate:false,hlColor:"ffff9c",autoScroll:true,region:"center",border:false,initComponent:function(){Ext.debug.DomTree.superclass.initComponent.call(this);var h=false,a;var i=/^\s*$/;var e=Ext.util.Format.htmlEncode;var g=Ext.util.Format.ellipsis;var d=/\s?([a-z\-]*)\:([^;]*)(?:[;\s\n\r]*)/gi;function b(r){if(!r||r.nodeType!=1||r==document.body||r==document){return false}var l=[r],o=r;while((o=o.parentNode)&&o.nodeType==1&&o.tagName.toUpperCase()!="HTML"){l.unshift(o)}var q=a;for(var m=0,j=l.length;m"+g(e(String(m.nodeValue)),35)+"",cls:"x-tree-noicon"}))}}}j()};this.root=this.setRootNode(new Ext.tree.TreeNode("Ext"));a=this.root.appendChild(new Ext.debug.HtmlNode(document.getElementsByTagName("html")[0]))}});Ext.debug.HtmlNode=function(){var d=Ext.util.Format.htmlEncode;var b=Ext.util.Format.ellipsis;var a=/^\s*$/;var c=[{n:"id",v:"id"},{n:"className",v:"class"},{n:"name",v:"name"},{n:"type",v:"type"},{n:"src",v:"src"},{n:"href",v:"href"}];function f(k){for(var h=0,j;j=k.childNodes[h];h++){if(j.nodeType==1){return true}}return false}function e(j,m){var r=j.tagName.toLowerCase();var q="<"+r;for(var k=0,l=c.length;k"+d(p)+"""}}var h=j.style?j.style.cssText:"";if(h){q+=" style=""+d(h.toLowerCase())+"""}if(m&&j.childNodes.length>0){q+=">"+b(d(String(j.innerHTML)),35)+"</"+r+">"}else{if(m){q+=" />"}else{q+=">"}}return q}var g=function(j){var i=!f(j);this.htmlNode=j;this.tagName=j.tagName.toLowerCase();var h={text:e(j,i),leaf:i,cls:"x-tree-noicon"};g.superclass.constructor.call(this,h);this.attributes.htmlNode=j;if(!i){this.on("expand",this.onExpand,this);this.on("collapse",this.onCollapse,this)}};Ext.extend(g,Ext.tree.AsyncTreeNode,{cls:"x-tree-noicon",preventHScroll:true,refresh:function(i){var h=!f(this.htmlNode);this.setText(e(this.htmlNode,h));if(i){Ext.fly(this.ui.textNode).highlight()}},onExpand:function(){if(!this.closeNode&&this.parentNode){this.closeNode=this.parentNode.insertBefore(new Ext.tree.TreeNode({text:"</"+this.tagName+">",cls:"x-tree-noicon"}),this.nextSibling)}else{if(this.closeNode){this.closeNode.ui.show()}}},onCollapse:function(){if(this.closeNode){this.closeNode.ui.hide()}},render:function(h){g.superclass.render.call(this,h)},highlightNode:function(){},highlight:function(){},frame:function(){this.htmlNode.style.border="1px solid #0000ff"},unframe:function(){this.htmlNode.style.border=""}});return g}(); \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/build/adapter/ext-base-min.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/build/adapter/ext-base-min.js,v diff -u -r1.1 -r1.2 --- openacs-4/packages/ajaxhelper/www/resources/ext2/build/adapter/ext-base-min.js 4 Dec 2007 02:48:31 -0000 1.1 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/build/adapter/ext-base-min.js 11 Apr 2009 18:15:09 -0000 1.2 @@ -1,9 +1 @@ -/* - * Ext JS Library 2.0 - * Copyright(c) 2006-2007, Ext JS, LLC. - * licensing@extjs.com - * - * http://extjs.com/license - */ - -(function(){var B;Ext.lib.Dom={getViewWidth:function(E){return E?this.getDocumentWidth():this.getViewportWidth()},getViewHeight:function(E){return E?this.getDocumentHeight():this.getViewportHeight()},getDocumentHeight:function(){var E=(document.compatMode!="CSS1Compat")?document.body.scrollHeight:document.documentElement.scrollHeight;return Math.max(E,this.getViewportHeight())},getDocumentWidth:function(){var E=(document.compatMode!="CSS1Compat")?document.body.scrollWidth:document.documentElement.scrollWidth;return Math.max(E,this.getViewportWidth())},getViewportHeight:function(){if(Ext.isIE){return Ext.isStrict?document.documentElement.clientHeight:document.body.clientHeight}else{return self.innerHeight}},getViewportWidth:function(){if(Ext.isIE){return Ext.isStrict?document.documentElement.clientWidth:document.body.clientWidth}else{return self.innerWidth}},isAncestor:function(F,G){F=Ext.getDom(F);G=Ext.getDom(G);if(!F||!G){return false}if(F.contains&&!Ext.isSafari){return F.contains(G)}else{if(F.compareDocumentPosition){return !!(F.compareDocumentPosition(G)&16)}else{var E=G.parentNode;while(E){if(E==F){return true}else{if(!E.tagName||E.tagName.toUpperCase()=="HTML"){return false}}E=E.parentNode}return false}}},getRegion:function(E){return Ext.lib.Region.getRegion(E)},getY:function(E){return this.getXY(E)[1]},getX:function(E){return this.getXY(E)[0]},getXY:function(G){var F,K,M,N,J=(document.body||document.documentElement);G=Ext.getDom(G);if(G==J){return[0,0]}if(G.getBoundingClientRect){M=G.getBoundingClientRect();N=C(document).getScroll();return[M.left+N.left,M.top+N.top]}var O=0,L=0;F=G;var E=C(G).getStyle("position")=="absolute";while(F){O+=F.offsetLeft;L+=F.offsetTop;if(!E&&C(F).getStyle("position")=="absolute"){E=true}if(Ext.isGecko){K=C(F);var P=parseInt(K.getStyle("borderTopWidth"),10)||0;var H=parseInt(K.getStyle("borderLeftWidth"),10)||0;O+=H;L+=P;if(F!=G&&K.getStyle("overflow")!="visible"){O+=H;L+=P}}F=F.offsetParent}if(Ext.isSafari&&E){O-=J.offsetLeft;L-=J.offsetTop}if(Ext.isGecko&&!E){var I=C(J);O+=parseInt(I.getStyle("borderLeftWidth"),10)||0;L+=parseInt(I.getStyle("borderTopWidth"),10)||0}F=G.parentNode;while(F&&F!=J){if(!Ext.isOpera||(F.tagName!="TR"&&C(F).getStyle("display")!="inline")){O-=F.scrollLeft;L-=F.scrollTop}F=F.parentNode}return[O,L]},setXY:function(E,F){E=Ext.fly(E,"_setXY");E.position();var G=E.translatePoints(F);if(F[0]!==false){E.dom.style.left=G.left+"px"}if(F[1]!==false){E.dom.style.top=G.top+"px"}},setX:function(F,E){this.setXY(F,[E,false])},setY:function(E,F){this.setXY(E,[false,F])}};Ext.lib.Event=function(){var F=false;var G=[];var K=[];var I=0;var H=[];var E=0;var J=null;return{POLL_RETRYS:200,POLL_INTERVAL:20,EL:0,TYPE:1,FN:2,WFN:3,OBJ:3,ADJ_SCOPE:4,_interval:null,startInterval:function(){if(!this._interval){var L=this;var M=function(){L._tryPreloadAttach()};this._interval=setInterval(M,this.POLL_INTERVAL)}},onAvailable:function(N,L,O,M){H.push({id:N,fn:L,obj:O,override:M,checkReady:false});I=this.POLL_RETRYS;this.startInterval()},addListener:function(Q,M,P){Q=Ext.getDom(Q);if(!Q||!P){return false}if("unload"==M){K[K.length]=[Q,M,P];return true}var O=function(R){return typeof Ext!="undefined"?P(Ext.lib.Event.getEvent(R)):false};var L=[Q,M,P,O];var N=G.length;G[N]=L;this.doAdd(Q,M,O,false);return true},removeListener:function(S,O,R){var Q,N;S=Ext.getDom(S);if(!R){return this.purgeElement(S,false,O)}if("unload"==O){for(Q=0,N=K.length;Q=0){L=G[P]}if(!S||!L){return false}this.doRemove(S,O,L[this.WFN],false);delete G[P][this.WFN];delete G[P][this.FN];G.splice(P,1);return true},getTarget:function(N,M){N=N.browserEvent||N;var L=N.target||N.srcElement;return this.resolveTextNode(L)},resolveTextNode:function(L){if(Ext.isSafari&&L&&3==L.nodeType){return L.parentNode}else{return L}},getPageX:function(M){M=M.browserEvent||M;var L=M.pageX;if(!L&&0!==L){L=M.clientX||0;if(Ext.isIE){L+=this.getScroll()[1]}}return L},getPageY:function(L){L=L.browserEvent||L;var M=L.pageY;if(!M&&0!==M){M=L.clientY||0;if(Ext.isIE){M+=this.getScroll()[0]}}return M},getXY:function(L){L=L.browserEvent||L;return[this.getPageX(L),this.getPageY(L)]},getRelatedTarget:function(M){M=M.browserEvent||M;var L=M.relatedTarget;if(!L){if(M.type=="mouseout"){L=M.toElement}else{if(M.type=="mouseover"){L=M.fromElement}}}return this.resolveTextNode(L)},getTime:function(N){N=N.browserEvent||N;if(!N.time){var M=new Date().getTime();try{N.time=M}catch(L){this.lastError=L;return M}}return N.time},stopEvent:function(L){this.stopPropagation(L);this.preventDefault(L)},stopPropagation:function(L){L=L.browserEvent||L;if(L.stopPropagation){L.stopPropagation()}else{L.cancelBubble=true}},preventDefault:function(L){L=L.browserEvent||L;if(L.preventDefault){L.preventDefault()}else{L.returnValue=false}},getEvent:function(M){var L=M||window.event;if(!L){var N=this.getEvent.caller;while(N){L=N.arguments[0];if(L&&Event==L.constructor){break}N=N.caller}}return L},getCharCode:function(L){L=L.browserEvent||L;return L.charCode||L.keyCode||0},_getCacheIndex:function(Q,N,P){for(var O=0,M=G.length;O0)}var Q=[];for(var M=0,L=H.length;M0){for(var Q=0,S=T.length;Q0){O=G.length;while(O){N=O-1;M=G[N];if(M){R.removeListener(M[R.EL],M[R.TYPE],M[R.FN],N)}O=O-1}M=null;R.clearCache()}R.doRemove(window,"unload",R._unload)},getScroll:function(){var L=document.documentElement,M=document.body;if(L&&(L.scrollTop||L.scrollLeft)){return[L.scrollTop,L.scrollLeft]}else{if(M){return[M.scrollTop,M.scrollLeft]}else{return[0,0]}}},doAdd:function(){if(window.addEventListener){return function(O,M,N,L){O.addEventListener(M,N,(L))}}else{if(window.attachEvent){return function(O,M,N,L){O.attachEvent("on"+M,N)}}else{return function(){}}}}(),doRemove:function(){if(window.removeEventListener){return function(O,M,N,L){O.removeEventListener(M,N,(L))}}else{if(window.detachEvent){return function(N,L,M){N.detachEvent("on"+L,M)}}else{return function(){}}}}()}}();var D=Ext.lib.Event;D.on=D.addListener;D.un=D.removeListener;if(document&&document.body){D._load()}else{D.doAdd(window,"load",D._load)}D.doAdd(window,"unload",D._unload);D._tryPreloadAttach();Ext.lib.Ajax={request:function(K,I,E,J,F){if(F){var G=F.headers;if(G){for(var H in G){if(G.hasOwnProperty(H)){this.initHeader(H,G[H],false)}}}if(F.xmlData){this.initHeader("Content-Type","text/xml",false);K="POST";J=F.xmlData}else{if(F.jsonData){this.initHeader("Content-Type","text/javascript",false);K="POST";J=typeof F.jsonData=="object"?Ext.encode(F.jsonData):F.jsonData}}}return this.asyncRequest(K,I,E,J)},serializeForm:function(F){if(typeof F=="string"){F=(document.getElementById(F)||document.forms[F])}var G,E,H,J,K="",M=false;for(var L=0;L=200&&G<300){F=this.createResponseObject(I,J.argument);if(J.success){if(!J.scope){J.success(F)}else{J.success.apply(J.scope,[F])}}}else{switch(G){case 12002:case 12029:case 12030:case 12031:case 12152:case 13030:F=this.createExceptionObject(I.tId,J.argument,(E?E:false));if(J.failure){if(!J.scope){J.failure(F)}else{J.failure.apply(J.scope,[F])}}break;default:F=this.createResponseObject(I,J.argument);if(J.failure){if(!J.scope){J.failure(F)}else{J.failure.apply(J.scope,[F])}}}}this.releaseObject(I);F=null},createResponseObject:function(E,K){var H={};var M={};try{var G=E.conn.getAllResponseHeaders();var J=G.split("\n");for(var I=0;I=this.left&&E.right<=this.right&&E.top>=this.top&&E.bottom<=this.bottom)},getArea:function(){return((this.bottom-this.top)*(this.right-this.left))},intersect:function(I){var G=Math.max(this.top,I.top);var H=Math.min(this.right,I.right);var E=Math.min(this.bottom,I.bottom);var F=Math.max(this.left,I.left);if(E>=G&&H>=F){return new Ext.lib.Region(G,H,E,F)}else{return null}},union:function(I){var G=Math.min(this.top,I.top);var H=Math.max(this.right,I.right);var E=Math.max(this.bottom,I.bottom);var F=Math.min(this.left,I.left);return new Ext.lib.Region(G,H,E,F)},constrainTo:function(E){this.top=this.top.constrain(E.top,E.bottom);this.bottom=this.bottom.constrain(E.top,E.bottom);this.left=this.left.constrain(E.left,E.right);this.right=this.right.constrain(E.left,E.right);return this},adjust:function(G,F,E,H){this.top+=G;this.left+=F;this.right+=H;this.bottom+=E;return this}};Ext.lib.Region.getRegion=function(H){var J=Ext.lib.Dom.getXY(H);var G=J[1];var I=J[0]+H.offsetWidth;var E=J[1]+H.offsetHeight;var F=J[0];return new Ext.lib.Region(G,I,E,F)};Ext.lib.Point=function(E,F){if(E instanceof Array){F=E[1];E=E[0]}this.x=this.right=this.left=this[0]=E;this.y=this.top=this.bottom=this[1]=F};Ext.lib.Point.prototype=new Ext.lib.Region();Ext.lib.Anim={scroll:function(H,F,I,J,E,G){this.run(H,F,I,J,E,G,Ext.lib.Scroll)},motion:function(H,F,I,J,E,G){this.run(H,F,I,J,E,G,Ext.lib.Motion)},color:function(H,F,I,J,E,G){this.run(H,F,I,J,E,G,Ext.lib.ColorAnim)},run:function(I,F,K,L,E,H,G){G=G||Ext.lib.AnimBase;if(typeof L=="string"){L=Ext.lib.Easing[L]}var J=new G(I,F,K,L);J.animateX(function(){Ext.callback(E,H)});return J}};function C(E){if(!B){B=new Ext.Element.Flyweight()}B.dom=E;return B}if(Ext.isIE){function A(){var E=Function.prototype;delete E.createSequence;delete E.defer;delete E.createDelegate;delete E.createCallback;delete E.createInterceptor;window.detachEvent("onunload",A)}window.attachEvent("onunload",A)}Ext.lib.AnimBase=function(F,E,G,H){if(F){this.init(F,E,G,H)}};Ext.lib.AnimBase.prototype={toString:function(){var E=this.getEl();var F=E.id||E.tagName;return("Anim "+F)},patterns:{noNegatives:/width|height|opacity|padding/i,offsetAttribute:/^((width|height)|(top|left))$/,defaultUnit:/width|height|top$|bottom$|left$|right$/i,offsetUnit:/\d+(em|%|en|ex|pt|in|cm|mm|pc)$/i},doMethod:function(E,G,F){return this.method(this.currentFrame,G,F-G,this.totalFrames)},setAttribute:function(E,G,F){if(this.patterns.noNegatives.test(E)){G=(G>0)?G:0}Ext.fly(this.getEl(),"_anim").setStyle(E,G+F)},getAttribute:function(E){var G=this.getEl();var I=C(G).getStyle(E);if(I!=="auto"&&!this.patterns.offsetUnit.test(I)){return parseFloat(I)}var F=this.patterns.offsetAttribute.exec(E)||[];var J=!!(F[3]);var H=!!(F[2]);if(H||(C(G).getStyle("position")=="absolute"&&J)){I=G["offset"+F[0].charAt(0).toUpperCase()+F[0].substr(1)]}else{I=0}return I},getDefaultUnit:function(E){if(this.patterns.defaultUnit.test(E)){return"px"}return""},animateX:function(G,E){var F=function(){this.onComplete.removeListener(F);if(typeof G=="function"){G.call(E||this,this)}};this.onComplete.addListener(F,this);this.animate()},setRuntimeAttribute:function(F){var K;var G;var H=this.attributes;this.runtimeAttributes[F]={};var J=function(L){return(typeof L!=="undefined")};if(!J(H[F]["to"])&&!J(H[F]["by"])){return false}K=(J(H[F]["from"]))?H[F]["from"]:this.getAttribute(F);if(J(H[F]["to"])){G=H[F]["to"]}else{if(J(H[F]["by"])){if(K.constructor==Array){G=[];for(var I=0,E=K.length;I0&&isFinite(O)){if(K.currentFrame+O>=N){O=N-(M+1)}K.currentFrame+=O}}};Ext.lib.Bezier=new function(){this.getPosition=function(I,H){var J=I.length;var G=[];for(var F=0;F0&&!(O[0] instanceof Array)){O=[O]}else{var N=[];for(P=0,R=O.length;P0){this.runtimeAttributes[S]=this.runtimeAttributes[S].concat(O)}this.runtimeAttributes[S][this.runtimeAttributes[S].length]=L}else{I.setRuntimeAttribute.call(this,S)}};var E=function(J,L){var K=Ext.lib.Dom.getXY(this.getEl());J=[J[0]-K[0]+L[0],J[1]-K[1]+L[1]];return J};var G=function(J){return(typeof J!=="undefined")}})();(function(){Ext.lib.Scroll=function(I,H,J,K){if(I){Ext.lib.Scroll.superclass.constructor.call(this,I,H,J,K)}};Ext.extend(Ext.lib.Scroll,Ext.lib.ColorAnim);var F=Ext.lib;var G=F.Scroll.superclass;var E=F.Scroll.prototype;E.toString=function(){var H=this.getEl();var I=H.id||H.tagName;return("Scroll "+I)};E.doMethod=function(H,K,I){var J=null;if(H=="scroll"){J=[this.method(this.currentFrame,K[0],I[0]-K[0],this.totalFrames),this.method(this.currentFrame,K[1],I[1]-K[1],this.totalFrames)]}else{J=G.doMethod.call(this,H,K,I)}return J};E.getAttribute=function(H){var J=null;var I=this.getEl();if(H=="scroll"){J=[I.scrollLeft,I.scrollTop]}else{J=G.getAttribute.call(this,H)}return J};E.setAttribute=function(H,K,J){var I=this.getEl();if(H=="scroll"){I.scrollLeft=K[0];I.scrollTop=K[1]}else{G.setAttribute.call(this,H,K,J)}}})()})(); \ No newline at end of file +(function(){var b;Ext.lib.Dom={getViewWidth:function(e){return e?this.getDocumentWidth():this.getViewportWidth()},getViewHeight:function(e){return e?this.getDocumentHeight():this.getViewportHeight()},getDocumentHeight:function(){var e=(document.compatMode!="CSS1Compat")?document.body.scrollHeight:document.documentElement.scrollHeight;return Math.max(e,this.getViewportHeight())},getDocumentWidth:function(){var e=(document.compatMode!="CSS1Compat")?document.body.scrollWidth:document.documentElement.scrollWidth;return Math.max(e,this.getViewportWidth())},getViewportHeight:function(){if(Ext.isIE){return Ext.isStrict?document.documentElement.clientHeight:document.body.clientHeight}else{return self.innerHeight}},getViewportWidth:function(){if(Ext.isIE){return Ext.isStrict?document.documentElement.clientWidth:document.body.clientWidth}else{return self.innerWidth}},isAncestor:function(f,g){f=Ext.getDom(f);g=Ext.getDom(g);if(!f||!g){return false}if(f.contains&&!Ext.isSafari){return f.contains(g)}else{if(f.compareDocumentPosition){return !!(f.compareDocumentPosition(g)&16)}else{var e=g.parentNode;while(e){if(e==f){return true}else{if(!e.tagName||e.tagName.toUpperCase()=="HTML"){return false}}e=e.parentNode}return false}}},getRegion:function(e){return Ext.lib.Region.getRegion(e)},getY:function(e){return this.getXY(e)[1]},getX:function(e){return this.getXY(e)[0]},getXY:function(g){var f,k,m,n,j=(document.body||document.documentElement);g=Ext.getDom(g);if(g==j){return[0,0]}if(g.getBoundingClientRect){m=g.getBoundingClientRect();n=c(document).getScroll();return[m.left+n.left,m.top+n.top]}var o=0,l=0;f=g;var e=c(g).getStyle("position")=="absolute";while(f){o+=f.offsetLeft;l+=f.offsetTop;if(!e&&c(f).getStyle("position")=="absolute"){e=true}if(Ext.isGecko){k=c(f);var q=parseInt(k.getStyle("borderTopWidth"),10)||0;var h=parseInt(k.getStyle("borderLeftWidth"),10)||0;o+=h;l+=q;if(f!=g&&k.getStyle("overflow")!="visible"){o+=h;l+=q}}f=f.offsetParent}if(Ext.isSafari&&e){o-=j.offsetLeft;l-=j.offsetTop}if(Ext.isGecko&&!e){var i=c(j);o+=parseInt(i.getStyle("borderLeftWidth"),10)||0;l+=parseInt(i.getStyle("borderTopWidth"),10)||0}f=g.parentNode;while(f&&f!=j){if(!Ext.isOpera||(f.tagName!="TR"&&c(f).getStyle("display")!="inline")){o-=f.scrollLeft;l-=f.scrollTop}f=f.parentNode}return[o,l]},setXY:function(e,f){e=Ext.fly(e,"_setXY");e.position();var g=e.translatePoints(f);if(f[0]!==false){e.dom.style.left=g.left+"px"}if(f[1]!==false){e.dom.style.top=g.top+"px"}},setX:function(f,e){this.setXY(f,[e,false])},setY:function(e,f){this.setXY(e,[false,f])}};Ext.lib.Event=function(){var f=false;var g=[];var k=[];var i=0;var h=[];var e=0;var j=null;return{POLL_RETRYS:200,POLL_INTERVAL:20,EL:0,TYPE:1,FN:2,WFN:3,OBJ:3,ADJ_SCOPE:4,_interval:null,startInterval:function(){if(!this._interval){var l=this;var m=function(){l._tryPreloadAttach()};this._interval=setInterval(m,this.POLL_INTERVAL)}},onAvailable:function(n,l,o,m){h.push({id:n,fn:l,obj:o,override:m,checkReady:false});i=this.POLL_RETRYS;this.startInterval()},addListener:function(q,m,p){q=Ext.getDom(q);if(!q||!p){return false}if("unload"==m){k[k.length]=[q,m,p];return true}var o=function(r){return typeof Ext!="undefined"?p(Ext.lib.Event.getEvent(r)):false};var l=[q,m,p,o];var n=g.length;g[n]=l;this.doAdd(q,m,o,false);return true},removeListener:function(s,o,r){var q,n;s=Ext.getDom(s);if(!r){return this.purgeElement(s,false,o)}if("unload"==o){for(q=0,n=k.length;q=0){l=g[p]}if(!s||!l){return false}this.doRemove(s,o,l[this.WFN],false);delete g[p][this.WFN];delete g[p][this.FN];g.splice(p,1);return true},getTarget:function(n,m){n=n.browserEvent||n;var l=n.target||n.srcElement;return this.resolveTextNode(l)},resolveTextNode:function(l){if(Ext.isSafari&&l&&3==l.nodeType){return l.parentNode}else{return l}},getPageX:function(m){m=m.browserEvent||m;var l=m.pageX;if(!l&&0!==l){l=m.clientX||0;if(Ext.isIE){l+=this.getScroll()[1]}}return l},getPageY:function(l){l=l.browserEvent||l;var m=l.pageY;if(!m&&0!==m){m=l.clientY||0;if(Ext.isIE){m+=this.getScroll()[0]}}return m},getXY:function(l){l=l.browserEvent||l;return[this.getPageX(l),this.getPageY(l)]},getRelatedTarget:function(m){m=m.browserEvent||m;var l=m.relatedTarget;if(!l){if(m.type=="mouseout"){l=m.toElement}else{if(m.type=="mouseover"){l=m.fromElement}}}return this.resolveTextNode(l)},getTime:function(n){n=n.browserEvent||n;if(!n.time){var m=new Date().getTime();try{n.time=m}catch(l){this.lastError=l;return m}}return n.time},stopEvent:function(l){this.stopPropagation(l);this.preventDefault(l)},stopPropagation:function(l){l=l.browserEvent||l;if(l.stopPropagation){l.stopPropagation()}else{l.cancelBubble=true}},preventDefault:function(l){l=l.browserEvent||l;if(l.preventDefault){l.preventDefault()}else{l.returnValue=false}},getEvent:function(m){var l=m||window.event;if(!l){var n=this.getEvent.caller;while(n){l=n.arguments[0];if(l&&Event==l.constructor){break}n=n.caller}}return l},getCharCode:function(l){l=l.browserEvent||l;return l.charCode||l.keyCode||0},_getCacheIndex:function(q,n,p){for(var o=0,m=g.length;o0)}var q=[];for(var m=0,l=h.length;m0){for(var r=0,t=u.length;r0){p=g.length;while(p){o=p-1;n=g[o];if(n){s.removeListener(n[s.EL],n[s.TYPE],n[s.FN],o)}p=p-1}n=null;s.clearCache()}s.doRemove(window,"unload",s._unload)},getScroll:function(){var l=document.documentElement,m=document.body;if(l&&(l.scrollTop||l.scrollLeft)){return[l.scrollTop,l.scrollLeft]}else{if(m){return[m.scrollTop,m.scrollLeft]}else{return[0,0]}}},doAdd:function(){if(window.addEventListener){return function(o,m,n,l){o.addEventListener(m,n,(l))}}else{if(window.attachEvent){return function(o,m,n,l){o.attachEvent("on"+m,n)}}else{return function(){}}}}(),doRemove:function(){if(window.removeEventListener){return function(o,m,n,l){o.removeEventListener(m,n,(l))}}else{if(window.detachEvent){return function(n,l,m){n.detachEvent("on"+l,m)}}else{return function(){}}}}()}}();var d=Ext.lib.Event;d.on=d.addListener;d.un=d.removeListener;if(document&&document.body){d._load()}else{d.doAdd(window,"load",d._load)}d.doAdd(window,"unload",d._unload);d._tryPreloadAttach();Ext.lib.Ajax={request:function(l,j,e,k,f){if(f){var g=f.headers;if(g){for(var i in g){if(g.hasOwnProperty(i)){this.initHeader(i,g[i],false)}}}if(f.xmlData){if(!g||!g["Content-Type"]){this.initHeader("Content-Type","text/xml",false)}l=(l?l:(f.method?f.method:"POST"));k=f.xmlData}else{if(f.jsonData){if(!g||!g["Content-Type"]){this.initHeader("Content-Type","application/json",false)}l=(l?l:(f.method?f.method:"POST"));k=typeof f.jsonData=="object"?Ext.encode(f.jsonData):f.jsonData}}}return this.asyncRequest(l,j,e,k)},serializeForm:function(f){if(typeof f=="string"){f=(document.getElementById(f)||document.forms[f])}var g,e,h,l,m="",o=false;for(var n=0;n=200&&h<300)||(Ext.isIE&&h==1223)){g=this.createResponseObject(j,k.argument);if(k.success){if(!k.scope){k.success(g)}else{k.success.apply(k.scope,[g])}}}else{switch(h){case 12002:case 12029:case 12030:case 12031:case 12152:case 13030:g=this.createExceptionObject(j.tId,k.argument,(f?f:false));if(k.failure){if(!k.scope){k.failure(g)}else{k.failure.apply(k.scope,[g])}}break;default:g=this.createResponseObject(j,k.argument);if(k.failure){if(!k.scope){k.failure(g)}else{k.failure.apply(k.scope,[g])}}}}this.releaseObject(j);g=null},createResponseObject:function(f,m){var j={};var p={};try{var h=f.conn.getAllResponseHeaders();var l=h.split("\n");for(var k=0;k=this.left&&e.right<=this.right&&e.top>=this.top&&e.bottom<=this.bottom)},getArea:function(){return((this.bottom-this.top)*(this.right-this.left))},intersect:function(i){var g=Math.max(this.top,i.top);var h=Math.min(this.right,i.right);var e=Math.min(this.bottom,i.bottom);var f=Math.max(this.left,i.left);if(e>=g&&h>=f){return new Ext.lib.Region(g,h,e,f)}else{return null}},union:function(i){var g=Math.min(this.top,i.top);var h=Math.max(this.right,i.right);var e=Math.max(this.bottom,i.bottom);var f=Math.min(this.left,i.left);return new Ext.lib.Region(g,h,e,f)},constrainTo:function(e){this.top=this.top.constrain(e.top,e.bottom);this.bottom=this.bottom.constrain(e.top,e.bottom);this.left=this.left.constrain(e.left,e.right);this.right=this.right.constrain(e.left,e.right);return this},adjust:function(g,f,e,h){this.top+=g;this.left+=f;this.right+=h;this.bottom+=e;return this}};Ext.lib.Region.getRegion=function(h){var j=Ext.lib.Dom.getXY(h);var g=j[1];var i=j[0]+h.offsetWidth;var e=j[1]+h.offsetHeight;var f=j[0];return new Ext.lib.Region(g,i,e,f)};Ext.lib.Point=function(e,f){if(Ext.isArray(e)){f=e[1];e=e[0]}this.x=this.right=this.left=this[0]=e;this.y=this.top=this.bottom=this[1]=f};Ext.lib.Point.prototype=new Ext.lib.Region();Ext.lib.Anim={scroll:function(h,f,i,j,e,g){return this.run(h,f,i,j,e,g,Ext.lib.Scroll)},motion:function(h,f,i,j,e,g){return this.run(h,f,i,j,e,g,Ext.lib.Motion)},color:function(h,f,i,j,e,g){return this.run(h,f,i,j,e,g,Ext.lib.ColorAnim)},run:function(i,f,k,l,e,h,g){g=g||Ext.lib.AnimBase;if(typeof l=="string"){l=Ext.lib.Easing[l]}var j=new g(i,f,k,l);j.animateX(function(){Ext.callback(e,h)});return j}};function c(e){if(!b){b=new Ext.Element.Flyweight()}b.dom=e;return b}if(Ext.isIE){function a(){var e=Function.prototype;delete e.createSequence;delete e.defer;delete e.createDelegate;delete e.createCallback;delete e.createInterceptor;window.detachEvent("onunload",a)}window.attachEvent("onunload",a)}Ext.lib.AnimBase=function(f,e,g,h){if(f){this.init(f,e,g,h)}};Ext.lib.AnimBase.prototype={toString:function(){var e=this.getEl();var f=e.id||e.tagName;return("Anim "+f)},patterns:{noNegatives:/width|height|opacity|padding/i,offsetAttribute:/^((width|height)|(top|left))$/,defaultUnit:/width|height|top$|bottom$|left$|right$/i,offsetUnit:/\d+(em|%|en|ex|pt|in|cm|mm|pc)$/i},doMethod:function(e,g,f){return this.method(this.currentFrame,g,f-g,this.totalFrames)},setAttribute:function(e,g,f){if(this.patterns.noNegatives.test(e)){g=(g>0)?g:0}Ext.fly(this.getEl(),"_anim").setStyle(e,g+f)},getAttribute:function(e){var g=this.getEl();var i=c(g).getStyle(e);if(i!=="auto"&&!this.patterns.offsetUnit.test(i)){return parseFloat(i)}var f=this.patterns.offsetAttribute.exec(e)||[];var j=!!(f[3]);var h=!!(f[2]);if(h||(c(g).getStyle("position")=="absolute"&&j)){i=g["offset"+f[0].charAt(0).toUpperCase()+f[0].substr(1)]}else{i=0}return i},getDefaultUnit:function(e){if(this.patterns.defaultUnit.test(e)){return"px"}return""},animateX:function(h,e){var g=function(){this.onComplete.removeListener(g);if(typeof h=="function"){h.call(e||this,this)}};this.onComplete.addListener(g,this);this.animate()},setRuntimeAttribute:function(f){var l;var g;var h=this.attributes;this.runtimeAttributes[f]={};var k=function(i){return(typeof i!=="undefined")};if(!k(h[f]["to"])&&!k(h[f]["by"])){return false}l=(k(h[f]["from"]))?h[f]["from"]:this.getAttribute(f);if(k(h[f]["to"])){g=h[f]["to"]}else{if(k(h[f]["by"])){if(l.constructor==Array){g=[];for(var j=0,e=l.length;j0&&isFinite(o)){if(k.currentFrame+o>=n){o=n-(m+1)}k.currentFrame+=o}}};Ext.lib.Bezier=new function(){this.getPosition=function(k,h){var l=k.length;var g=[];for(var f=0;f0&&!Ext.isArray(o[0])){o=[o]}else{var n=[];for(p=0,r=o.length;p0){this.runtimeAttributes[s]=this.runtimeAttributes[s].concat(o)}this.runtimeAttributes[s][this.runtimeAttributes[s].length]=l}else{i.setRuntimeAttribute.call(this,s)}};var e=function(j,l){var k=Ext.lib.Dom.getXY(this.getEl());j=[j[0]-k[0]+l[0],j[1]-k[1]+l[1]];return j};var g=function(j){return(typeof j!=="undefined")}})();(function(){Ext.lib.Scroll=function(i,h,j,k){if(i){Ext.lib.Scroll.superclass.constructor.call(this,i,h,j,k)}};Ext.extend(Ext.lib.Scroll,Ext.lib.ColorAnim);var f=Ext.lib;var g=f.Scroll.superclass;var e=f.Scroll.prototype;e.toString=function(){var h=this.getEl();var i=h.id||h.tagName;return("Scroll "+i)};e.doMethod=function(h,k,i){var j=null;if(h=="scroll"){j=[this.method(this.currentFrame,k[0],i[0]-k[0],this.totalFrames),this.method(this.currentFrame,k[1],i[1]-k[1],this.totalFrames)]}else{j=g.doMethod.call(this,h,k,i)}return j};e.getAttribute=function(h){var j=null;var i=this.getEl();if(h=="scroll"){j=[i.scrollLeft,i.scrollTop]}else{j=g.getAttribute.call(this,h)}return j};e.setAttribute=function(h,k,j){var i=this.getEl();if(h=="scroll"){i.scrollLeft=k[0];i.scrollTop=k[1]}else{g.setAttribute.call(this,h,k,j)}}})()})(); \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/build/adapter/jquery-bridge-min.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/build/adapter/jquery-bridge-min.js,v diff -u -r1.1 -r1.2 --- openacs-4/packages/ajaxhelper/www/resources/ext2/build/adapter/jquery-bridge-min.js 4 Dec 2007 02:48:31 -0000 1.1 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/build/adapter/jquery-bridge-min.js 11 Apr 2009 18:15:09 -0000 1.2 @@ -1,9 +1 @@ -/* - * Ext JS Library 2.0 - * Copyright(c) 2006-2007, Ext JS, LLC. - * licensing@extjs.com - * - * http://extjs.com/license - */ - -if(typeof jQuery=="undefined"){throw"Unable to load Ext, jQuery not found."}(function(){var B;Ext.lib.Dom={getViewWidth:function(D){return D?Math.max(jQuery(document).width(),jQuery(window).width()):jQuery(window).width()},getViewHeight:function(D){return D?Math.max(jQuery(document).height(),jQuery(window).height()):jQuery(window).height()},isAncestor:function(E,F){E=Ext.getDom(E);F=Ext.getDom(F);if(!E||!F){return false}if(E.contains&&!Ext.isSafari){return E.contains(F)}else{if(E.compareDocumentPosition){return !!(E.compareDocumentPosition(F)&16)}else{var D=F.parentNode;while(D){if(D==E){return true}else{if(!D.tagName||D.tagName.toUpperCase()=="HTML"){return false}}D=D.parentNode}return false}}},getRegion:function(D){return Ext.lib.Region.getRegion(D)},getY:function(D){return this.getXY(D)[1]},getX:function(D){return this.getXY(D)[0]},getXY:function(F){var E,J,L,M,I=(document.body||document.documentElement);F=Ext.getDom(F);if(F==I){return[0,0]}if(F.getBoundingClientRect){L=F.getBoundingClientRect();M=C(document).getScroll();return[L.left+M.left,L.top+M.top]}var N=0,K=0;E=F;var D=C(F).getStyle("position")=="absolute";while(E){N+=E.offsetLeft;K+=E.offsetTop;if(!D&&C(E).getStyle("position")=="absolute"){D=true}if(Ext.isGecko){J=C(E);var O=parseInt(J.getStyle("borderTopWidth"),10)||0;var G=parseInt(J.getStyle("borderLeftWidth"),10)||0;N+=G;K+=O;if(E!=F&&J.getStyle("overflow")!="visible"){N+=G;K+=O}}E=E.offsetParent}if(Ext.isSafari&&D){N-=I.offsetLeft;K-=I.offsetTop}if(Ext.isGecko&&!D){var H=C(I);N+=parseInt(H.getStyle("borderLeftWidth"),10)||0;K+=parseInt(H.getStyle("borderTopWidth"),10)||0}E=F.parentNode;while(E&&E!=I){if(!Ext.isOpera||(E.tagName!="TR"&&C(E).getStyle("display")!="inline")){N-=E.scrollLeft;K-=E.scrollTop}E=E.parentNode}return[N,K]},setXY:function(D,E){D=Ext.fly(D,"_setXY");D.position();var F=D.translatePoints(E);if(E[0]!==false){D.dom.style.left=F.left+"px"}if(E[1]!==false){D.dom.style.top=F.top+"px"}},setX:function(E,D){this.setXY(E,[D,false])},setY:function(D,E){this.setXY(D,[false,E])}};function C(D){if(!B){B=new Ext.Element.Flyweight()}B.dom=D;return B}Ext.lib.Event={getPageX:function(D){D=D.browserEvent||D;return D.pageX},getPageY:function(D){D=D.browserEvent||D;return D.pageY},getXY:function(D){D=D.browserEvent||D;return[D.pageX,D.pageY]},getTarget:function(D){return D.target},on:function(H,D,G,F,E){jQuery(H).bind(D,G)},un:function(F,D,E){jQuery(F).unbind(D,E)},purgeElement:function(D){jQuery(D).unbind()},preventDefault:function(D){D=D.browserEvent||D;if(D.preventDefault){D.preventDefault()}else{D.returnValue=false}},stopPropagation:function(D){D=D.browserEvent||D;if(D.stopPropagation){D.stopPropagation()}else{D.cancelBubble=true}},stopEvent:function(D){this.preventDefault(D);this.stopPropagation(D)},onAvailable:function(I,E,D){var H=new Date();var F=function(){if(H.getElapsed()>10000){clearInterval(G)}var J=document.getElementById(I);if(J){clearInterval(G);E.call(D||window,J)}};var G=setInterval(F,50)},resolveTextNode:function(D){if(D&&3==D.nodeType){return D.parentNode}else{return D}},getRelatedTarget:function(E){E=E.browserEvent||E;var D=E.relatedTarget;if(!D){if(E.type=="mouseout"){D=E.toElement}else{if(E.type=="mouseover"){D=E.fromElement}}}return this.resolveTextNode(D)}};Ext.lib.Ajax=function(){var D=function(E){return function(G,F){if((F=="error"||F=="timeout")&&E.failure){E.failure.call(E.scope||window,{responseText:G.responseText,responseXML:G.responseXML,argument:E.argument})}else{if(E.success){E.success.call(E.scope||window,{responseText:G.responseText,responseXML:G.responseXML,argument:E.argument})}}}};return{request:function(J,G,E,H,F){var I={type:J,url:G,data:H,timeout:E.timeout,complete:D(E)};if(F){if(F.xmlData){I.data=F.xmlData;I.processData=false;I.type="POST";I.contentType="text/xml"}else{if(F.jsonData){I.data=typeof F.jsonData=="object"?Ext.encode(F.jsonData):F.jsonData;I.processData=false;I.type="POST";I.contentType="text/javascript"}}if(F.headers){I.beforeSend=function(M){var K=F.headers;for(var L in K){if(K.hasOwnProperty(L)){M.setRequestHeader(L,K[L])}}}}}jQuery.ajax(I)},formRequest:function(I,H,F,J,E,G){jQuery.ajax({type:Ext.getDom(I).method||"POST",url:H,data:jQuery(I).formSerialize()+(J?"&"+J:""),timeout:F.timeout,complete:D(F)})},isCallInProgress:function(E){return false},abort:function(E){return false},serializeForm:function(E){return jQuery(E.dom||E).formSerialize()}}}();Ext.lib.Anim=function(){var D=function(E,F){var G=true;return{stop:function(H){},isAnimated:function(){return G},proxyCallback:function(){G=false;Ext.callback(E,F)}}};return{scroll:function(H,F,J,K,E,G){var I=D(E,G);H=Ext.getDom(H);if(typeof F.scroll.to[0]=="number"){H.scrollLeft=F.scroll.to[0]}if(typeof F.scroll.to[1]=="number"){H.scrollTop=F.scroll.to[1]}I.proxyCallback();return I},motion:function(H,F,I,J,E,G){return this.run(H,F,I,J,E,G)},color:function(H,F,J,K,E,G){var I=D(E,G);I.proxyCallback();return I},run:function(F,N,I,M,G,P,O){var J=D(G,P),K=Ext.fly(F,"_animrun");var E={};for(var H in N){if(N[H].from){if(H!="points"){K.setStyle(H,N[H].from)}}switch(H){case"points":var L,R;K.position();if(L=N.points.by){var Q=K.getXY();R=K.translatePoints([Q[0]+L[0],Q[1]+L[1]])}else{R=K.translatePoints(N.points.to)}E.left=R.left;E.top=R.top;if(!parseInt(K.getStyle("left"),10)){K.setLeft(0)}if(!parseInt(K.getStyle("top"),10)){K.setTop(0)}if(N.points.from){K.setXY(N.points.from)}break;case"width":E.width=N.width.to;break;case"height":E.height=N.height.to;break;case"opacity":E.opacity=N.opacity.to;break;case"left":E.left=N.left.to;break;case"top":E.top=N.top.to;break;default:E[H]=N[H].to;break}}jQuery(F).animate(E,I*1000,undefined,J.proxyCallback);return J}}}();Ext.lib.Region=function(F,G,D,E){this.top=F;this[1]=F;this.right=G;this.bottom=D;this.left=E;this[0]=E};Ext.lib.Region.prototype={contains:function(D){return(D.left>=this.left&&D.right<=this.right&&D.top>=this.top&&D.bottom<=this.bottom)},getArea:function(){return((this.bottom-this.top)*(this.right-this.left))},intersect:function(H){var F=Math.max(this.top,H.top);var G=Math.min(this.right,H.right);var D=Math.min(this.bottom,H.bottom);var E=Math.max(this.left,H.left);if(D>=F&&G>=E){return new Ext.lib.Region(F,G,D,E)}else{return null}},union:function(H){var F=Math.min(this.top,H.top);var G=Math.max(this.right,H.right);var D=Math.max(this.bottom,H.bottom);var E=Math.min(this.left,H.left);return new Ext.lib.Region(F,G,D,E)},constrainTo:function(D){this.top=this.top.constrain(D.top,D.bottom);this.bottom=this.bottom.constrain(D.top,D.bottom);this.left=this.left.constrain(D.left,D.right);this.right=this.right.constrain(D.left,D.right);return this},adjust:function(F,E,D,G){this.top+=F;this.left+=E;this.right+=G;this.bottom+=D;return this}};Ext.lib.Region.getRegion=function(G){var I=Ext.lib.Dom.getXY(G);var F=I[1];var H=I[0]+G.offsetWidth;var D=I[1]+G.offsetHeight;var E=I[0];return new Ext.lib.Region(F,H,D,E)};Ext.lib.Point=function(D,E){if(D instanceof Array){E=D[1];D=D[0]}this.x=this.right=this.left=this[0]=D;this.y=this.top=this.bottom=this[1]=E};Ext.lib.Point.prototype=new Ext.lib.Region();if(Ext.isIE){function A(){var D=Function.prototype;delete D.createSequence;delete D.defer;delete D.createDelegate;delete D.createCallback;delete D.createInterceptor;window.detachEvent("onunload",A)}window.attachEvent("onunload",A)}})(); \ No newline at end of file +if(typeof jQuery=="undefined"){throw"Unable to load Ext, jQuery not found."}(function(){var b;Ext.lib.Dom={getViewWidth:function(d){return d?Math.max(jQuery(document).width(),jQuery(window).width()):jQuery(window).width()},getViewHeight:function(d){return d?Math.max(jQuery(document).height(),jQuery(window).height()):jQuery(window).height()},isAncestor:function(e,f){e=Ext.getDom(e);f=Ext.getDom(f);if(!e||!f){return false}if(e.contains&&!Ext.isSafari){return e.contains(f)}else{if(e.compareDocumentPosition){return !!(e.compareDocumentPosition(f)&16)}else{var d=f.parentNode;while(d){if(d==e){return true}else{if(!d.tagName||d.tagName.toUpperCase()=="HTML"){return false}}d=d.parentNode}return false}}},getRegion:function(d){return Ext.lib.Region.getRegion(d)},getY:function(d){return this.getXY(d)[1]},getX:function(d){return this.getXY(d)[0]},getXY:function(f){var e,j,l,m,i=(document.body||document.documentElement);f=Ext.getDom(f);if(f==i){return[0,0]}if(f.getBoundingClientRect){l=f.getBoundingClientRect();m=c(document).getScroll();return[l.left+m.left,l.top+m.top]}var n=0,k=0;e=f;var d=c(f).getStyle("position")=="absolute";while(e){n+=e.offsetLeft;k+=e.offsetTop;if(!d&&c(e).getStyle("position")=="absolute"){d=true}if(Ext.isGecko){j=c(e);var o=parseInt(j.getStyle("borderTopWidth"),10)||0;var g=parseInt(j.getStyle("borderLeftWidth"),10)||0;n+=g;k+=o;if(e!=f&&j.getStyle("overflow")!="visible"){n+=g;k+=o}}e=e.offsetParent}if(Ext.isSafari&&d){n-=i.offsetLeft;k-=i.offsetTop}if(Ext.isGecko&&!d){var h=c(i);n+=parseInt(h.getStyle("borderLeftWidth"),10)||0;k+=parseInt(h.getStyle("borderTopWidth"),10)||0}e=f.parentNode;while(e&&e!=i){if(!Ext.isOpera||(e.tagName!="TR"&&c(e).getStyle("display")!="inline")){n-=e.scrollLeft;k-=e.scrollTop}e=e.parentNode}return[n,k]},setXY:function(d,e){d=Ext.fly(d,"_setXY");d.position();var f=d.translatePoints(e);if(e[0]!==false){d.dom.style.left=f.left+"px"}if(e[1]!==false){d.dom.style.top=f.top+"px"}},setX:function(e,d){this.setXY(e,[d,false])},setY:function(d,e){this.setXY(d,[false,e])}};function c(d){if(!b){b=new Ext.Element.Flyweight()}b.dom=d;return b}Ext.lib.Event={getPageX:function(d){d=d.browserEvent||d;return d.pageX},getPageY:function(d){d=d.browserEvent||d;return d.pageY},getXY:function(d){d=d.browserEvent||d;return[d.pageX,d.pageY]},getTarget:function(d){return d.target},on:function(h,d,g,f,e){jQuery(h).bind(d,g)},un:function(f,d,e){jQuery(f).unbind(d,e)},purgeElement:function(d){jQuery(d).unbind()},preventDefault:function(d){d=d.browserEvent||d;if(d.preventDefault){d.preventDefault()}else{d.returnValue=false}},stopPropagation:function(d){d=d.browserEvent||d;if(d.stopPropagation){d.stopPropagation()}else{d.cancelBubble=true}},stopEvent:function(d){this.preventDefault(d);this.stopPropagation(d)},onAvailable:function(j,e,d){var i=new Date();var g=function(){if(i.getElapsed()>10000){clearInterval(h)}var f=document.getElementById(j);if(f){clearInterval(h);e.call(d||window,f)}};var h=setInterval(g,50)},resolveTextNode:function(d){if(d&&3==d.nodeType){return d.parentNode}else{return d}},getRelatedTarget:function(e){e=e.browserEvent||e;var d=e.relatedTarget;if(!d){if(e.type=="mouseout"){d=e.toElement}else{if(e.type=="mouseover"){d=e.fromElement}}}return this.resolveTextNode(d)}};Ext.lib.Ajax=function(){var d=function(e){return function(g,f){if((f=="error"||f=="timeout")&&e.failure){e.failure.call(e.scope||window,{responseText:g.responseText,responseXML:g.responseXML,argument:e.argument})}else{if(e.success){e.success.call(e.scope||window,{responseText:g.responseText,responseXML:g.responseXML,argument:e.argument})}}}};return{request:function(k,h,e,i,f){var j={type:k,url:h,data:i,timeout:e.timeout,complete:d(e)};if(f){var g=f.headers;if(f.xmlData){j.data=f.xmlData;j.processData=false;j.type=(k?k:(f.method?f.method:"POST"));if(!g||!g["Content-Type"]){j.contentType="text/xml"}}else{if(f.jsonData){j.data=typeof f.jsonData=="object"?Ext.encode(f.jsonData):f.jsonData;j.processData=false;j.type=(k?k:(f.method?f.method:"POST"));if(!g||!g["Content-Type"]){j.contentType="application/json"}}}if(g){j.beforeSend=function(m){for(var l in g){if(g.hasOwnProperty(l)){m.setRequestHeader(l,g[l])}}}}}jQuery.ajax(j)},formRequest:function(i,h,f,j,e,g){jQuery.ajax({type:Ext.getDom(i).method||"POST",url:h,data:jQuery(i).serialize()+(j?"&"+j:""),timeout:f.timeout,complete:d(f)})},isCallInProgress:function(e){return false},abort:function(e){return false},serializeForm:function(e){return jQuery(e.dom||e).serialize()}}}();Ext.lib.Anim=function(){var d=function(e,f){var g=true;return{stop:function(h){},isAnimated:function(){return g},proxyCallback:function(){g=false;Ext.callback(e,f)}}};return{scroll:function(h,f,j,k,e,g){var i=d(e,g);h=Ext.getDom(h);if(typeof f.scroll.to[0]=="number"){h.scrollLeft=f.scroll.to[0]}if(typeof f.scroll.to[1]=="number"){h.scrollTop=f.scroll.to[1]}i.proxyCallback();return i},motion:function(h,f,i,j,e,g){return this.run(h,f,i,j,e,g)},color:function(h,f,j,k,e,g){var i=d(e,g);i.proxyCallback();return i},run:function(g,q,j,p,h,s,r){var l=d(h,s),m=Ext.fly(g,"_animrun");var f={};for(var i in q){if(q[i].from){if(i!="points"){m.setStyle(i,q[i].from)}}switch(i){case"points":var n,u;m.position();if(n=q.points.by){var t=m.getXY();u=m.translatePoints([t[0]+n[0],t[1]+n[1]])}else{u=m.translatePoints(q.points.to)}f.left=u.left;f.top=u.top;if(!parseInt(m.getStyle("left"),10)){m.setLeft(0)}if(!parseInt(m.getStyle("top"),10)){m.setTop(0)}if(q.points.from){m.setXY(q.points.from)}break;case"width":f.width=q.width.to;break;case"height":f.height=q.height.to;break;case"opacity":f.opacity=q.opacity.to;break;case"left":f.left=q.left.to;break;case"top":f.top=q.top.to;break;default:f[i]=q[i].to;break}}jQuery(g).animate(f,j*1000,undefined,l.proxyCallback);return l}}}();Ext.lib.Region=function(f,g,d,e){this.top=f;this[1]=f;this.right=g;this.bottom=d;this.left=e;this[0]=e};Ext.lib.Region.prototype={contains:function(d){return(d.left>=this.left&&d.right<=this.right&&d.top>=this.top&&d.bottom<=this.bottom)},getArea:function(){return((this.bottom-this.top)*(this.right-this.left))},intersect:function(h){var f=Math.max(this.top,h.top);var g=Math.min(this.right,h.right);var d=Math.min(this.bottom,h.bottom);var e=Math.max(this.left,h.left);if(d>=f&&g>=e){return new Ext.lib.Region(f,g,d,e)}else{return null}},union:function(h){var f=Math.min(this.top,h.top);var g=Math.max(this.right,h.right);var d=Math.max(this.bottom,h.bottom);var e=Math.min(this.left,h.left);return new Ext.lib.Region(f,g,d,e)},constrainTo:function(d){this.top=this.top.constrain(d.top,d.bottom);this.bottom=this.bottom.constrain(d.top,d.bottom);this.left=this.left.constrain(d.left,d.right);this.right=this.right.constrain(d.left,d.right);return this},adjust:function(f,e,d,g){this.top+=f;this.left+=e;this.right+=g;this.bottom+=d;return this}};Ext.lib.Region.getRegion=function(g){var i=Ext.lib.Dom.getXY(g);var f=i[1];var h=i[0]+g.offsetWidth;var d=i[1]+g.offsetHeight;var e=i[0];return new Ext.lib.Region(f,h,d,e)};Ext.lib.Point=function(d,e){if(Ext.isArray(d)){e=d[1];d=d[0]}this.x=this.right=this.left=this[0]=d;this.y=this.top=this.bottom=this[1]=e};Ext.lib.Point.prototype=new Ext.lib.Region();if(Ext.isIE){function a(){var d=Function.prototype;delete d.createSequence;delete d.defer;delete d.createDelegate;delete d.createCallback;delete d.createInterceptor;window.detachEvent("onunload",a)}window.attachEvent("onunload",a)}})(); \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/build/adapter/prototype-bridge-min.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/build/adapter/prototype-bridge-min.js,v diff -u -r1.1 -r1.2 --- openacs-4/packages/ajaxhelper/www/resources/ext2/build/adapter/prototype-bridge-min.js 4 Dec 2007 02:48:31 -0000 1.1 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/build/adapter/prototype-bridge-min.js 11 Apr 2009 18:15:09 -0000 1.2 @@ -1,9 +1 @@ -/* - * Ext JS Library 2.0 - * Copyright(c) 2006-2007, Ext JS, LLC. - * licensing@extjs.com - * - * http://extjs.com/license - */ - -(function(){var B;Ext.lib.Dom={getViewWidth:function(D){return D?this.getDocumentWidth():this.getViewportWidth()},getViewHeight:function(D){return D?this.getDocumentHeight():this.getViewportHeight()},getDocumentHeight:function(){var D=(document.compatMode!="CSS1Compat")?document.body.scrollHeight:document.documentElement.scrollHeight;return Math.max(D,this.getViewportHeight())},getDocumentWidth:function(){var D=(document.compatMode!="CSS1Compat")?document.body.scrollWidth:document.documentElement.scrollWidth;return Math.max(D,this.getViewportWidth())},getViewportHeight:function(){var D=self.innerHeight;var E=document.compatMode;if((E||Ext.isIE)&&!Ext.isOpera){D=(E=="CSS1Compat")?document.documentElement.clientHeight:document.body.clientHeight}return D},getViewportWidth:function(){var D=self.innerWidth;var E=document.compatMode;if(E||Ext.isIE){D=(E=="CSS1Compat")?document.documentElement.clientWidth:document.body.clientWidth}return D},isAncestor:function(E,F){E=Ext.getDom(E);F=Ext.getDom(F);if(!E||!F){return false}if(E.contains&&!Ext.isSafari){return E.contains(F)}else{if(E.compareDocumentPosition){return !!(E.compareDocumentPosition(F)&16)}else{var D=F.parentNode;while(D){if(D==E){return true}else{if(!D.tagName||D.tagName.toUpperCase()=="HTML"){return false}}D=D.parentNode}return false}}},getRegion:function(D){return Ext.lib.Region.getRegion(D)},getY:function(D){return this.getXY(D)[1]},getX:function(D){return this.getXY(D)[0]},getXY:function(F){var E,J,L,M,I=(document.body||document.documentElement);F=Ext.getDom(F);if(F==I){return[0,0]}if(F.getBoundingClientRect){L=F.getBoundingClientRect();M=C(document).getScroll();return[L.left+M.left,L.top+M.top]}var N=0,K=0;E=F;var D=C(F).getStyle("position")=="absolute";while(E){N+=E.offsetLeft;K+=E.offsetTop;if(!D&&C(E).getStyle("position")=="absolute"){D=true}if(Ext.isGecko){J=C(E);var O=parseInt(J.getStyle("borderTopWidth"),10)||0;var G=parseInt(J.getStyle("borderLeftWidth"),10)||0;N+=G;K+=O;if(E!=F&&J.getStyle("overflow")!="visible"){N+=G;K+=O}}E=E.offsetParent}if(Ext.isSafari&&D){N-=I.offsetLeft;K-=I.offsetTop}if(Ext.isGecko&&!D){var H=C(I);N+=parseInt(H.getStyle("borderLeftWidth"),10)||0;K+=parseInt(H.getStyle("borderTopWidth"),10)||0}E=F.parentNode;while(E&&E!=I){if(!Ext.isOpera||(E.tagName!="TR"&&C(E).getStyle("display")!="inline")){N-=E.scrollLeft;K-=E.scrollTop}E=E.parentNode}return[N,K]},setXY:function(D,E){D=Ext.fly(D,"_setXY");D.position();var F=D.translatePoints(E);if(E[0]!==false){D.dom.style.left=F.left+"px"}if(E[1]!==false){D.dom.style.top=F.top+"px"}},setX:function(E,D){this.setXY(E,[D,false])},setY:function(D,E){this.setXY(D,[false,E])}};Ext.lib.Event={getPageX:function(D){return Event.pointerX(D.browserEvent||D)},getPageY:function(D){return Event.pointerY(D.browserEvent||D)},getXY:function(D){D=D.browserEvent||D;return[Event.pointerX(D),Event.pointerY(D)]},getTarget:function(D){return Event.element(D.browserEvent||D)},resolveTextNode:function(D){if(D&&3==D.nodeType){return D.parentNode}else{return D}},getRelatedTarget:function(E){E=E.browserEvent||E;var D=E.relatedTarget;if(!D){if(E.type=="mouseout"){D=E.toElement}else{if(E.type=="mouseover"){D=E.fromElement}}}return this.resolveTextNode(D)},on:function(F,D,E){Event.observe(F,D,E,false)},un:function(F,D,E){Event.stopObserving(F,D,E,false)},purgeElement:function(D){},preventDefault:function(D){D=D.browserEvent||D;if(D.preventDefault){D.preventDefault()}else{D.returnValue=false}},stopPropagation:function(D){D=D.browserEvent||D;if(D.stopPropagation){D.stopPropagation()}else{D.cancelBubble=true}},stopEvent:function(D){Event.stop(D.browserEvent||D)},onAvailable:function(I,E,D){var H=new Date(),G;var F=function(){if(H.getElapsed()>10000){clearInterval(G)}var J=document.getElementById(I);if(J){clearInterval(G);E.call(D||window,J)}};G=setInterval(F,50)}};Ext.lib.Ajax=function(){var E=function(F){return F.success?function(G){F.success.call(F.scope||window,{responseText:G.responseText,responseXML:G.responseXML,argument:F.argument})}:Ext.emptyFn};var D=function(F){return F.failure?function(G){F.failure.call(F.scope||window,{responseText:G.responseText,responseXML:G.responseXML,argument:F.argument})}:Ext.emptyFn};return{request:function(K,H,F,I,G){var J={method:K,parameters:I||"",timeout:F.timeout,onSuccess:E(F),onFailure:D(F)};if(G){if(G.headers){J.requestHeaders=G.headers}if(G.xmlData){K="POST";J.contentType="text/xml";J.postBody=G.xmlData;delete J.parameters}if(G.jsonData){K="POST";J.contentType="text/javascript";J.postBody=typeof G.jsonData=="object"?Ext.encode(G.jsonData):G.jsonData;delete J.parameters}}new Ajax.Request(H,J)},formRequest:function(J,I,G,K,F,H){new Ajax.Request(I,{method:Ext.getDom(J).method||"POST",parameters:Form.serialize(J)+(K?"&"+K:""),timeout:G.timeout,onSuccess:E(G),onFailure:D(G)})},isCallInProgress:function(F){return false},abort:function(F){return false},serializeForm:function(F){return Form.serialize(F.dom||F)}}}();Ext.lib.Anim=function(){var D={easeOut:function(F){return 1-Math.pow(1-F,2)},easeIn:function(F){return 1-Math.pow(1-F,2)}};var E=function(F,G){return{stop:function(H){this.effect.cancel()},isAnimated:function(){return this.effect.state=="running"},proxyCallback:function(){Ext.callback(F,G)}}};return{scroll:function(I,G,K,L,F,H){var J=E(F,H);I=Ext.getDom(I);if(typeof G.scroll.to[0]=="number"){I.scrollLeft=G.scroll.to[0]}if(typeof G.scroll.to[1]=="number"){I.scrollTop=G.scroll.to[1]}J.proxyCallback();return J},motion:function(I,G,J,K,F,H){return this.run(I,G,J,K,F,H)},color:function(I,G,J,K,F,H){return this.run(I,G,J,K,F,H)},run:function(G,O,K,N,H,Q,P){var F={};for(var J in O){switch(J){case"points":var M,S,L=Ext.fly(G,"_animrun");L.position();if(M=O.points.by){var R=L.getXY();S=L.translatePoints([R[0]+M[0],R[1]+M[1]])}else{S=L.translatePoints(O.points.to)}F.left=S.left+"px";F.top=S.top+"px";break;case"width":F.width=O.width.to+"px";break;case"height":F.height=O.height.to+"px";break;case"opacity":F.opacity=String(O.opacity.to);break;default:F[J]=String(O[J].to);break}}var I=E(H,Q);I.effect=new Effect.Morph(Ext.id(G),{duration:K,afterFinish:I.proxyCallback,transition:D[N]||Effect.Transitions.linear,style:F});return I}}}();function C(D){if(!B){B=new Ext.Element.Flyweight()}B.dom=D;return B}Ext.lib.Region=function(F,G,D,E){this.top=F;this[1]=F;this.right=G;this.bottom=D;this.left=E;this[0]=E};Ext.lib.Region.prototype={contains:function(D){return(D.left>=this.left&&D.right<=this.right&&D.top>=this.top&&D.bottom<=this.bottom)},getArea:function(){return((this.bottom-this.top)*(this.right-this.left))},intersect:function(H){var F=Math.max(this.top,H.top);var G=Math.min(this.right,H.right);var D=Math.min(this.bottom,H.bottom);var E=Math.max(this.left,H.left);if(D>=F&&G>=E){return new Ext.lib.Region(F,G,D,E)}else{return null}},union:function(H){var F=Math.min(this.top,H.top);var G=Math.max(this.right,H.right);var D=Math.max(this.bottom,H.bottom);var E=Math.min(this.left,H.left);return new Ext.lib.Region(F,G,D,E)},constrainTo:function(D){this.top=this.top.constrain(D.top,D.bottom);this.bottom=this.bottom.constrain(D.top,D.bottom);this.left=this.left.constrain(D.left,D.right);this.right=this.right.constrain(D.left,D.right);return this},adjust:function(F,E,D,G){this.top+=F;this.left+=E;this.right+=G;this.bottom+=D;return this}};Ext.lib.Region.getRegion=function(G){var I=Ext.lib.Dom.getXY(G);var F=I[1];var H=I[0]+G.offsetWidth;var D=I[1]+G.offsetHeight;var E=I[0];return new Ext.lib.Region(F,H,D,E)};Ext.lib.Point=function(D,E){if(D instanceof Array){E=D[1];D=D[0]}this.x=this.right=this.left=this[0]=D;this.y=this.top=this.bottom=this[1]=E};Ext.lib.Point.prototype=new Ext.lib.Region();if(Ext.isIE){function A(){var D=Function.prototype;delete D.createSequence;delete D.defer;delete D.createDelegate;delete D.createCallback;delete D.createInterceptor;window.detachEvent("onunload",A)}window.attachEvent("onunload",A)}})(); \ No newline at end of file +(function(){var b;Ext.lib.Dom={getViewWidth:function(d){return d?this.getDocumentWidth():this.getViewportWidth()},getViewHeight:function(d){return d?this.getDocumentHeight():this.getViewportHeight()},getDocumentHeight:function(){var d=(document.compatMode!="CSS1Compat")?document.body.scrollHeight:document.documentElement.scrollHeight;return Math.max(d,this.getViewportHeight())},getDocumentWidth:function(){var d=(document.compatMode!="CSS1Compat")?document.body.scrollWidth:document.documentElement.scrollWidth;return Math.max(d,this.getViewportWidth())},getViewportHeight:function(){var d=self.innerHeight;var e=document.compatMode;if((e||Ext.isIE)&&!Ext.isOpera){d=(e=="CSS1Compat")?document.documentElement.clientHeight:document.body.clientHeight}return d},getViewportWidth:function(){var d=self.innerWidth;var e=document.compatMode;if(e||Ext.isIE){d=(e=="CSS1Compat")?document.documentElement.clientWidth:document.body.clientWidth}return d},isAncestor:function(e,f){e=Ext.getDom(e);f=Ext.getDom(f);if(!e||!f){return false}if(e.contains&&!Ext.isSafari){return e.contains(f)}else{if(e.compareDocumentPosition){return !!(e.compareDocumentPosition(f)&16)}else{var d=f.parentNode;while(d){if(d==e){return true}else{if(!d.tagName||d.tagName.toUpperCase()=="HTML"){return false}}d=d.parentNode}return false}}},getRegion:function(d){return Ext.lib.Region.getRegion(d)},getY:function(d){return this.getXY(d)[1]},getX:function(d){return this.getXY(d)[0]},getXY:function(f){var e,j,l,m,i=(document.body||document.documentElement);f=Ext.getDom(f);if(f==i){return[0,0]}if(f.getBoundingClientRect){l=f.getBoundingClientRect();m=c(document).getScroll();return[l.left+m.left,l.top+m.top]}var n=0,k=0;e=f;var d=c(f).getStyle("position")=="absolute";while(e){n+=e.offsetLeft;k+=e.offsetTop;if(!d&&c(e).getStyle("position")=="absolute"){d=true}if(Ext.isGecko){j=c(e);var o=parseInt(j.getStyle("borderTopWidth"),10)||0;var g=parseInt(j.getStyle("borderLeftWidth"),10)||0;n+=g;k+=o;if(e!=f&&j.getStyle("overflow")!="visible"){n+=g;k+=o}}e=e.offsetParent}if(Ext.isSafari&&d){n-=i.offsetLeft;k-=i.offsetTop}if(Ext.isGecko&&!d){var h=c(i);n+=parseInt(h.getStyle("borderLeftWidth"),10)||0;k+=parseInt(h.getStyle("borderTopWidth"),10)||0}e=f.parentNode;while(e&&e!=i){if(!Ext.isOpera||(e.tagName!="TR"&&c(e).getStyle("display")!="inline")){n-=e.scrollLeft;k-=e.scrollTop}e=e.parentNode}return[n,k]},setXY:function(d,e){d=Ext.fly(d,"_setXY");d.position();var f=d.translatePoints(e);if(e[0]!==false){d.dom.style.left=f.left+"px"}if(e[1]!==false){d.dom.style.top=f.top+"px"}},setX:function(e,d){this.setXY(e,[d,false])},setY:function(d,e){this.setXY(d,[false,e])}};Ext.lib.Event={getPageX:function(d){return Event.pointerX(d.browserEvent||d)},getPageY:function(d){return Event.pointerY(d.browserEvent||d)},getXY:function(d){d=d.browserEvent||d;return[Event.pointerX(d),Event.pointerY(d)]},getTarget:function(d){return Event.element(d.browserEvent||d)},resolveTextNode:function(d){if(d&&3==d.nodeType){return d.parentNode}else{return d}},getRelatedTarget:function(e){e=e.browserEvent||e;var d=e.relatedTarget;if(!d){if(e.type=="mouseout"){d=e.toElement}else{if(e.type=="mouseover"){d=e.fromElement}}}return this.resolveTextNode(d)},on:function(f,d,e){Event.observe(f,d,e,false)},un:function(f,d,e){Event.stopObserving(f,d,e,false)},purgeElement:function(d){},preventDefault:function(d){d=d.browserEvent||d;if(d.preventDefault){d.preventDefault()}else{d.returnValue=false}},stopPropagation:function(d){d=d.browserEvent||d;if(d.stopPropagation){d.stopPropagation()}else{d.cancelBubble=true}},stopEvent:function(d){Event.stop(d.browserEvent||d)},onAvailable:function(j,e,d){var i=new Date(),h;var g=function(){if(i.getElapsed()>10000){clearInterval(h)}var f=document.getElementById(j);if(f){clearInterval(h);e.call(d||window,f)}};h=setInterval(g,50)}};Ext.lib.Ajax=function(){var e=function(f){return f.success?function(g){f.success.call(f.scope||window,{responseText:g.responseText,responseXML:g.responseXML,argument:f.argument})}:Ext.emptyFn};var d=function(f){return f.failure?function(g){f.failure.call(f.scope||window,{responseText:g.responseText,responseXML:g.responseXML,argument:f.argument})}:Ext.emptyFn};return{request:function(l,i,f,j,g){var k={method:l,parameters:j||"",timeout:f.timeout,onSuccess:e(f),onFailure:d(f)};if(g){var h=g.headers;if(h){k.requestHeaders=h}if(g.xmlData){l=(l?l:(g.method?g.method:"POST"));if(!h||!h["Content-Type"]){k.contentType="text/xml"}k.postBody=g.xmlData;delete k.parameters}if(g.jsonData){l=(l?l:(g.method?g.method:"POST"));if(!h||!h["Content-Type"]){k.contentType="application/json"}k.postBody=typeof g.jsonData=="object"?Ext.encode(g.jsonData):g.jsonData;delete k.parameters}}new Ajax.Request(i,k)},formRequest:function(j,i,g,k,f,h){new Ajax.Request(i,{method:Ext.getDom(j).method||"POST",parameters:Form.serialize(j)+(k?"&"+k:""),timeout:g.timeout,onSuccess:e(g),onFailure:d(g)})},isCallInProgress:function(f){return false},abort:function(f){return false},serializeForm:function(f){return Form.serialize(f.dom||f)}}}();Ext.lib.Anim=function(){var d={easeOut:function(f){return 1-Math.pow(1-f,2)},easeIn:function(f){return 1-Math.pow(1-f,2)}};var e=function(f,g){return{stop:function(h){this.effect.cancel()},isAnimated:function(){return this.effect.state=="running"},proxyCallback:function(){Ext.callback(f,g)}}};return{scroll:function(i,g,k,l,f,h){var j=e(f,h);i=Ext.getDom(i);if(typeof g.scroll.to[0]=="number"){i.scrollLeft=g.scroll.to[0]}if(typeof g.scroll.to[1]=="number"){i.scrollTop=g.scroll.to[1]}j.proxyCallback();return j},motion:function(i,g,j,k,f,h){return this.run(i,g,j,k,f,h)},color:function(i,g,j,k,f,h){return this.run(i,g,j,k,f,h)},run:function(g,q,l,p,h,s,r){var f={};for(var j in q){switch(j){case"points":var n,u,m=Ext.fly(g,"_animrun");m.position();if(n=q.points.by){var t=m.getXY();u=m.translatePoints([t[0]+n[0],t[1]+n[1]])}else{u=m.translatePoints(q.points.to)}f.left=u.left+"px";f.top=u.top+"px";break;case"width":f.width=q.width.to+"px";break;case"height":f.height=q.height.to+"px";break;case"opacity":f.opacity=String(q.opacity.to);break;default:f[j]=String(q[j].to);break}}var i=e(h,s);i.effect=new Effect.Morph(Ext.id(g),{duration:l,afterFinish:i.proxyCallback,transition:d[p]||Effect.Transitions.linear,style:f});return i}}}();function c(d){if(!b){b=new Ext.Element.Flyweight()}b.dom=d;return b}Ext.lib.Region=function(f,g,d,e){this.top=f;this[1]=f;this.right=g;this.bottom=d;this.left=e;this[0]=e};Ext.lib.Region.prototype={contains:function(d){return(d.left>=this.left&&d.right<=this.right&&d.top>=this.top&&d.bottom<=this.bottom)},getArea:function(){return((this.bottom-this.top)*(this.right-this.left))},intersect:function(h){var f=Math.max(this.top,h.top);var g=Math.min(this.right,h.right);var d=Math.min(this.bottom,h.bottom);var e=Math.max(this.left,h.left);if(d>=f&&g>=e){return new Ext.lib.Region(f,g,d,e)}else{return null}},union:function(h){var f=Math.min(this.top,h.top);var g=Math.max(this.right,h.right);var d=Math.max(this.bottom,h.bottom);var e=Math.min(this.left,h.left);return new Ext.lib.Region(f,g,d,e)},constrainTo:function(d){this.top=this.top.constrain(d.top,d.bottom);this.bottom=this.bottom.constrain(d.top,d.bottom);this.left=this.left.constrain(d.left,d.right);this.right=this.right.constrain(d.left,d.right);return this},adjust:function(f,e,d,g){this.top+=f;this.left+=e;this.right+=g;this.bottom+=d;return this}};Ext.lib.Region.getRegion=function(g){var i=Ext.lib.Dom.getXY(g);var f=i[1];var h=i[0]+g.offsetWidth;var d=i[1]+g.offsetHeight;var e=i[0];return new Ext.lib.Region(f,h,d,e)};Ext.lib.Point=function(d,e){if(Ext.isArray(d)){e=d[1];d=d[0]}this.x=this.right=this.left=this[0]=d;this.y=this.top=this.bottom=this[1]=e};Ext.lib.Point.prototype=new Ext.lib.Region();if(Ext.isIE){function a(){var d=Function.prototype;delete d.createSequence;delete d.defer;delete d.createDelegate;delete d.createCallback;delete d.createInterceptor;window.detachEvent("onunload",a)}window.attachEvent("onunload",a)}})(); \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/build/adapter/yui-bridge-min.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/build/adapter/yui-bridge-min.js,v diff -u -r1.1 -r1.2 --- openacs-4/packages/ajaxhelper/www/resources/ext2/build/adapter/yui-bridge-min.js 4 Dec 2007 02:48:31 -0000 1.1 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/build/adapter/yui-bridge-min.js 11 Apr 2009 18:15:09 -0000 1.2 @@ -1,9 +1 @@ -/* - * Ext JS Library 2.0 - * Copyright(c) 2006-2007, Ext JS, LLC. - * licensing@extjs.com - * - * http://extjs.com/license - */ - -if(typeof YAHOO=="undefined"){throw"Unable to load Ext, core YUI utilities (yahoo, dom, event) not found."}(function(){var I=YAHOO.util.Event;var J=YAHOO.util.Dom;var C=YAHOO.util.Connect;var K=YAHOO.util.Easing;var B=YAHOO.util.Anim;var G;Ext.lib.Dom={getViewWidth:function(A){return A?J.getDocumentWidth():J.getViewportWidth()},getViewHeight:function(A){return A?J.getDocumentHeight():J.getViewportHeight()},isAncestor:function(A,D){return J.isAncestor(A,D)},getRegion:function(A){return J.getRegion(A)},getY:function(A){return this.getXY(A)[1]},getX:function(A){return this.getXY(A)[0]},getXY:function(E){var D,O,Q,R,N=(document.body||document.documentElement);E=Ext.getDom(E);if(E==N){return[0,0]}if(E.getBoundingClientRect){Q=E.getBoundingClientRect();R=H(document).getScroll();return[Q.left+R.left,Q.top+R.top]}var S=0,P=0;D=E;var A=H(E).getStyle("position")=="absolute";while(D){S+=D.offsetLeft;P+=D.offsetTop;if(!A&&H(D).getStyle("position")=="absolute"){A=true}if(Ext.isGecko){O=H(D);var T=parseInt(O.getStyle("borderTopWidth"),10)||0;var L=parseInt(O.getStyle("borderLeftWidth"),10)||0;S+=L;P+=T;if(D!=E&&O.getStyle("overflow")!="visible"){S+=L;P+=T}}D=D.offsetParent}if(Ext.isSafari&&A){S-=N.offsetLeft;P-=N.offsetTop}if(Ext.isGecko&&!A){var M=H(N);S+=parseInt(M.getStyle("borderLeftWidth"),10)||0;P+=parseInt(M.getStyle("borderTopWidth"),10)||0}D=E.parentNode;while(D&&D!=N){if(!Ext.isOpera||(D.tagName!="TR"&&H(D).getStyle("display")!="inline")){S-=D.scrollLeft;P-=D.scrollTop}D=D.parentNode}return[S,P]},setXY:function(A,D){A=Ext.fly(A,"_setXY");A.position();var E=A.translatePoints(D);if(D[0]!==false){A.dom.style.left=E.left+"px"}if(D[1]!==false){A.dom.style.top=E.top+"px"}},setX:function(D,A){this.setXY(D,[A,false])},setY:function(A,D){this.setXY(A,[false,D])}};Ext.lib.Event={getPageX:function(A){return I.getPageX(A.browserEvent||A)},getPageY:function(A){return I.getPageY(A.browserEvent||A)},getXY:function(A){return I.getXY(A.browserEvent||A)},getTarget:function(A){return I.getTarget(A.browserEvent||A)},getRelatedTarget:function(A){return I.getRelatedTarget(A.browserEvent||A)},on:function(M,A,L,E,D){I.on(M,A,L,E,D)},un:function(E,A,D){I.removeListener(E,A,D)},purgeElement:function(A){I.purgeElement(A)},preventDefault:function(A){I.preventDefault(A.browserEvent||A)},stopPropagation:function(A){I.stopPropagation(A.browserEvent||A)},stopEvent:function(A){I.stopEvent(A.browserEvent||A)},onAvailable:function(L,E,D,A){return I.onAvailable(L,E,D,A)}};Ext.lib.Ajax={request:function(O,M,A,N,D){if(D){var E=D.headers;if(E){for(var L in E){if(E.hasOwnProperty(L)){C.initHeader(L,E[L],false)}}}if(D.xmlData){C.initHeader("Content-Type","text/xml",false);O="POST";N=D.xmlData}else{if(D.jsonData){C.initHeader("Content-Type","text/javascript",false);O="POST";N=typeof D.jsonData=="object"?Ext.encode(D.jsonData):D.jsonData}}}return C.asyncRequest(O,M,A,N)},formRequest:function(M,L,D,N,A,E){C.setForm(M,A,E);return C.asyncRequest(Ext.getDom(M).method||"POST",L,D,N)},isCallInProgress:function(A){return C.isCallInProgress(A)},abort:function(A){return C.abort(A)},serializeForm:function(A){var D=C.setForm(A.dom||A);C.resetFormState();return D}};Ext.lib.Region=YAHOO.util.Region;Ext.lib.Point=YAHOO.util.Point;Ext.lib.Anim={scroll:function(L,D,M,N,A,E){this.run(L,D,M,N,A,E,YAHOO.util.Scroll)},motion:function(L,D,M,N,A,E){this.run(L,D,M,N,A,E,YAHOO.util.Motion)},color:function(L,D,M,N,A,E){this.run(L,D,M,N,A,E,YAHOO.util.ColorAnim)},run:function(M,D,O,P,A,L,E){E=E||YAHOO.util.Anim;if(typeof P=="string"){P=YAHOO.util.Easing[P]}var N=new E(M,D,O,P);N.animateX(function(){Ext.callback(A,L)});return N}};function H(A){if(!G){G=new Ext.Element.Flyweight()}G.dom=A;return G}if(Ext.isIE){function F(){var A=Function.prototype;delete A.createSequence;delete A.defer;delete A.createDelegate;delete A.createCallback;delete A.createInterceptor;window.detachEvent("onunload",F)}window.attachEvent("onunload",F)}if(YAHOO.util.Anim){YAHOO.util.Anim.prototype.animateX=function(E,A){var D=function(){this.onComplete.unsubscribe(D);if(typeof E=="function"){E.call(A||this,this)}};this.onComplete.subscribe(D,this,true);this.animate()}}if(YAHOO.util.DragDrop&&Ext.dd.DragDrop){YAHOO.util.DragDrop.defaultPadding=Ext.dd.DragDrop.defaultPadding;YAHOO.util.DragDrop.constrainTo=Ext.dd.DragDrop.constrainTo}YAHOO.util.Dom.getXY=function(A){var D=function(E){return Ext.lib.Dom.getXY(E)};return YAHOO.util.Dom.batch(A,D,YAHOO.util.Dom,true)};if(YAHOO.util.AnimMgr){YAHOO.util.AnimMgr.fps=1000}YAHOO.util.Region.prototype.adjust=function(E,D,A,L){this.top+=E;this.left+=D;this.right+=L;this.bottom+=A;return this};YAHOO.util.Region.prototype.constrainTo=function(A){this.top=this.top.constrain(A.top,A.bottom);this.bottom=this.bottom.constrain(A.top,A.bottom);this.left=this.left.constrain(A.left,A.right);this.right=this.right.constrain(A.left,A.right);return this}})(); \ No newline at end of file +if(typeof YAHOO=="undefined"){throw"Unable to load Ext, core YUI utilities (yahoo, dom, event) not found."}(function(){var f=YAHOO.util.Event;var g=YAHOO.util.Dom;var b=YAHOO.util.Connect;var h=YAHOO.util.Easing;var a=YAHOO.util.Anim;var d;Ext.lib.Dom={getViewWidth:function(i){return i?g.getDocumentWidth():g.getViewportWidth()},getViewHeight:function(i){return i?g.getDocumentHeight():g.getViewportHeight()},isAncestor:function(i,j){return g.isAncestor(i,j)},getRegion:function(i){return g.getRegion(i)},getY:function(i){return this.getXY(i)[1]},getX:function(i){return this.getXY(i)[0]},getXY:function(k){var j,o,r,s,n=(document.body||document.documentElement);k=Ext.getDom(k);if(k==n){return[0,0]}if(k.getBoundingClientRect){r=k.getBoundingClientRect();s=e(document).getScroll();return[r.left+s.left,r.top+s.top]}var t=0,q=0;j=k;var i=e(k).getStyle("position")=="absolute";while(j){t+=j.offsetLeft;q+=j.offsetTop;if(!i&&e(j).getStyle("position")=="absolute"){i=true}if(Ext.isGecko){o=e(j);var u=parseInt(o.getStyle("borderTopWidth"),10)||0;var l=parseInt(o.getStyle("borderLeftWidth"),10)||0;t+=l;q+=u;if(j!=k&&o.getStyle("overflow")!="visible"){t+=l;q+=u}}j=j.offsetParent}if(Ext.isSafari&&i){t-=n.offsetLeft;q-=n.offsetTop}if(Ext.isGecko&&!i){var m=e(n);t+=parseInt(m.getStyle("borderLeftWidth"),10)||0;q+=parseInt(m.getStyle("borderTopWidth"),10)||0}j=k.parentNode;while(j&&j!=n){if(!Ext.isOpera||(j.tagName!="TR"&&e(j).getStyle("display")!="inline")){t-=j.scrollLeft;q-=j.scrollTop}j=j.parentNode}return[t,q]},setXY:function(i,j){i=Ext.fly(i,"_setXY");i.position();var k=i.translatePoints(j);if(j[0]!==false){i.dom.style.left=k.left+"px"}if(j[1]!==false){i.dom.style.top=k.top+"px"}},setX:function(j,i){this.setXY(j,[i,false])},setY:function(i,j){this.setXY(i,[false,j])}};Ext.lib.Event={getPageX:function(i){return f.getPageX(i.browserEvent||i)},getPageY:function(i){return f.getPageY(i.browserEvent||i)},getXY:function(i){return f.getXY(i.browserEvent||i)},getTarget:function(i){return f.getTarget(i.browserEvent||i)},getRelatedTarget:function(i){return f.getRelatedTarget(i.browserEvent||i)},on:function(m,i,l,k,j){f.on(m,i,l,k,j)},un:function(k,i,j){f.removeListener(k,i,j)},purgeElement:function(i){f.purgeElement(i)},preventDefault:function(i){f.preventDefault(i.browserEvent||i)},stopPropagation:function(i){f.stopPropagation(i.browserEvent||i)},stopEvent:function(i){f.stopEvent(i.browserEvent||i)},onAvailable:function(l,k,j,i){return f.onAvailable(l,k,j,i)}};Ext.lib.Ajax={request:function(o,m,i,n,j){if(j){var k=j.headers;if(k){for(var l in k){if(k.hasOwnProperty(l)){b.initHeader(l,k[l],false)}}}if(j.xmlData){if(!k||!k["Content-Type"]){b.initHeader("Content-Type","text/xml",false)}o=(o?o:(j.method?j.method:"POST"));n=j.xmlData}else{if(j.jsonData){if(!k||!k["Content-Type"]){b.initHeader("Content-Type","application/json",false)}o=(o?o:(j.method?j.method:"POST"));n=typeof j.jsonData=="object"?Ext.encode(j.jsonData):j.jsonData}}}return b.asyncRequest(o,m,i,n)},formRequest:function(m,l,j,n,i,k){b.setForm(m,i,k);return b.asyncRequest(Ext.getDom(m).method||"POST",l,j,n)},isCallInProgress:function(i){return b.isCallInProgress(i)},abort:function(i){return b.abort(i)},serializeForm:function(i){var j=b.setForm(i.dom||i);b.resetFormState();return j}};Ext.lib.Region=YAHOO.util.Region;Ext.lib.Point=YAHOO.util.Point;Ext.lib.Anim={scroll:function(l,j,m,n,i,k){this.run(l,j,m,n,i,k,YAHOO.util.Scroll)},motion:function(l,j,m,n,i,k){this.run(l,j,m,n,i,k,YAHOO.util.Motion)},color:function(l,j,m,n,i,k){this.run(l,j,m,n,i,k,YAHOO.util.ColorAnim)},run:function(m,j,o,p,i,l,k){k=k||YAHOO.util.Anim;if(typeof p=="string"){p=YAHOO.util.Easing[p]}var n=new k(m,j,o,p);n.animateX(function(){Ext.callback(i,l)});return n}};function e(i){if(!d){d=new Ext.Element.Flyweight()}d.dom=i;return d}if(Ext.isIE){function c(){var i=Function.prototype;delete i.createSequence;delete i.defer;delete i.createDelegate;delete i.createCallback;delete i.createInterceptor;window.detachEvent("onunload",c)}window.attachEvent("onunload",c)}if(YAHOO.util.Anim){YAHOO.util.Anim.prototype.animateX=function(k,i){var j=function(){this.onComplete.unsubscribe(j);if(typeof k=="function"){k.call(i||this,this)}};this.onComplete.subscribe(j,this,true);this.animate()}}if(YAHOO.util.DragDrop&&Ext.dd.DragDrop){YAHOO.util.DragDrop.defaultPadding=Ext.dd.DragDrop.defaultPadding;YAHOO.util.DragDrop.constrainTo=Ext.dd.DragDrop.constrainTo}YAHOO.util.Dom.getXY=function(i){var j=function(k){return Ext.lib.Dom.getXY(k)};return YAHOO.util.Dom.batch(i,j,YAHOO.util.Dom,true)};if(YAHOO.util.AnimMgr){YAHOO.util.AnimMgr.fps=1000}YAHOO.util.Region.prototype.adjust=function(k,j,i,m){this.top+=k;this.left+=j;this.right+=m;this.bottom+=i;return this};YAHOO.util.Region.prototype.constrainTo=function(i){this.top=this.top.constrain(i.top,i.bottom);this.bottom=this.bottom.constrain(i.top,i.bottom);this.left=this.left.constrain(i.left,i.right);this.right=this.right.constrain(i.left,i.right);return this}})(); \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/build/core/CompositeElement-min.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/build/core/CompositeElement-min.js,v diff -u -r1.1 -r1.2 --- openacs-4/packages/ajaxhelper/www/resources/ext2/build/core/CompositeElement-min.js 4 Dec 2007 02:48:31 -0000 1.1 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/build/core/CompositeElement-min.js 11 Apr 2009 18:15:09 -0000 1.2 @@ -1,9 +1 @@ -/* - * Ext JS Library 2.0 - * Copyright(c) 2006-2007, Ext JS, LLC. - * licensing@extjs.com - * - * http://extjs.com/license - */ - -Ext.CompositeElement=function(A){this.elements=[];this.addElements(A)};Ext.CompositeElement.prototype={isComposite:true,addElements:function(E){if(!E){return this}if(typeof E=="string"){E=Ext.Element.selectorFunction(E)}var D=this.elements;var B=D.length-1;for(var C=0,A=E.length;C"}else{P+=">";var U=T.children||T.cn;if(U){if(U instanceof Array){for(var Q=0,N=U.length;Q"}return P};var M=function(T,P){var S=document.createElement(T.tag||"div");var Q=S.setAttribute?true:false;for(var O in T){if(O=="tag"||O=="children"||O=="cn"||O=="html"||O=="style"||typeof T[O]=="function"){continue}if(O=="cls"){S.className=T["cls"]}else{if(Q){S.setAttribute(O,T[O])}else{S[O]=T[O]}}}Ext.DomHelper.applyStyles(S,T.style);var U=T.children||T.cn;if(U){if(U instanceof Array){for(var R=0,N=U.length;R",K=""+E,H=C+"",D=""+K;var G=function(N,O,Q,P){if(!L){L=document.createElement("div")}var R;var S=null;if(N=="td"){if(O=="afterbegin"||O=="beforeend"){return }if(O=="beforebegin"){S=Q;Q=Q.parentNode}else{S=Q.nextSibling;Q=Q.parentNode}R=I(4,H,P,D)}else{if(N=="tr"){if(O=="beforebegin"){S=Q;Q=Q.parentNode;R=I(3,C,P,K)}else{if(O=="afterend"){S=Q.nextSibling;Q=Q.parentNode;R=I(3,C,P,K)}else{if(O=="afterbegin"){S=Q.firstChild}R=I(4,H,P,D)}}}else{if(N=="tbody"){if(O=="beforebegin"){S=Q;Q=Q.parentNode;R=I(2,J,P,E)}else{if(O=="afterend"){S=Q.nextSibling;Q=Q.parentNode;R=I(2,J,P,E)}else{if(O=="afterbegin"){S=Q.firstChild}R=I(3,C,P,K)}}}else{if(O=="beforebegin"||O=="afterend"){return }if(O=="afterbegin"){S=Q.firstChild}R=I(2,J,P,E)}}}Q.insertBefore(R,S);return R};return{useDom:false,markup:function(N){return A(N)},applyStyles:function(P,Q){if(Q){P=Ext.fly(P);if(typeof Q=="string"){var O=/\s?([a-z\-]*)\:\s?([^;]*);?/gi;var R;while((R=O.exec(Q))!=null){P.setStyle(R[1],R[2])}}else{if(typeof Q=="object"){for(var N in Q){P.setStyle(N,Q[N])}}else{if(typeof Q=="function"){Ext.DomHelper.applyStyles(P,Q.call())}}}}},insertHtml:function(P,R,Q){P=P.toLowerCase();if(R.insertAdjacentHTML){if(B.test(R.tagName)){var O;if(O=G(R.tagName.toLowerCase(),P,R,Q)){return O}}switch(P){case"beforebegin":R.insertAdjacentHTML("BeforeBegin",Q);return R.previousSibling;case"afterbegin":R.insertAdjacentHTML("AfterBegin",Q);return R.firstChild;case"beforeend":R.insertAdjacentHTML("BeforeEnd",Q);return R.lastChild;case"afterend":R.insertAdjacentHTML("AfterEnd",Q);return R.nextSibling}throw"Illegal insertion point -> \""+P+"\""}var N=R.ownerDocument.createRange();var S;switch(P){case"beforebegin":N.setStartBefore(R);S=N.createContextualFragment(Q);R.parentNode.insertBefore(S,R);return R.previousSibling;case"afterbegin":if(R.firstChild){N.setStartBefore(R.firstChild);S=N.createContextualFragment(Q);R.insertBefore(S,R.firstChild);return R.firstChild}else{R.innerHTML=Q;return R.firstChild}case"beforeend":if(R.lastChild){N.setStartAfter(R.lastChild);S=N.createContextualFragment(Q);R.appendChild(S);return R.lastChild}else{R.innerHTML=Q;return R.lastChild}case"afterend":N.setStartAfter(R);S=N.createContextualFragment(Q);R.parentNode.insertBefore(S,R.nextSibling);return R.nextSibling}throw"Illegal insertion point -> \""+P+"\""},insertBefore:function(N,P,O){return this.doInsert(N,P,O,"beforeBegin")},insertAfter:function(N,P,O){return this.doInsert(N,P,O,"afterEnd","nextSibling")},insertFirst:function(N,P,O){return this.doInsert(N,P,O,"afterBegin","firstChild")},doInsert:function(Q,S,R,T,P){Q=Ext.getDom(Q);var O;if(this.useDom){O=M(S,null);(P==="firstChild"?Q:Q.parentNode).insertBefore(O,P?Q[P]:Q)}else{var N=A(S);O=this.insertHtml(T,Q,N)}return R?Ext.get(O,true):O},append:function(P,R,Q){P=Ext.getDom(P);var O;if(this.useDom){O=M(R,null);P.appendChild(O)}else{var N=A(R);O=this.insertHtml("beforeEnd",P,N)}return Q?Ext.get(O,true):O},overwrite:function(N,P,O){N=Ext.getDom(N);N.innerHTML=A(P);return O?Ext.get(N.firstChild,true):N.firstChild},createTemplate:function(O){var N=A(O);return new Ext.Template(N)}}}(); \ No newline at end of file +Ext.DomHelper=function(){var l=null;var f=/^(?:br|frame|hr|img|input|link|meta|range|spacer|wbr|area|param|col)$/i;var b=/^table|tbody|tr|td$/i;var a=function(v){if(typeof v=="string"){return v}var p="";if(Ext.isArray(v)){for(var t=0,q=v.length;t"}return p};var m=function(u,p){var t;if(Ext.isArray(u)){t=document.createDocumentFragment();for(var s=0,q=u.length;s",k=""+e,h=c+"",d=""+k;var g=function(n,o,q,p){if(!l){l=document.createElement("div")}var r;var s=null;if(n=="td"){if(o=="afterbegin"||o=="beforeend"){return}if(o=="beforebegin"){s=q;q=q.parentNode}else{s=q.nextSibling;q=q.parentNode}r=i(4,h,p,d)}else{if(n=="tr"){if(o=="beforebegin"){s=q;q=q.parentNode;r=i(3,c,p,k)}else{if(o=="afterend"){s=q.nextSibling;q=q.parentNode;r=i(3,c,p,k)}else{if(o=="afterbegin"){s=q.firstChild}r=i(4,h,p,d)}}}else{if(n=="tbody"){if(o=="beforebegin"){s=q;q=q.parentNode;r=i(2,j,p,e)}else{if(o=="afterend"){s=q.nextSibling;q=q.parentNode;r=i(2,j,p,e)}else{if(o=="afterbegin"){s=q.firstChild}r=i(3,c,p,k)}}}else{if(o=="beforebegin"||o=="afterend"){return}if(o=="afterbegin"){s=q.firstChild}r=i(2,j,p,e)}}}q.insertBefore(r,s);return r};return{useDom:false,markup:function(n){return a(n)},applyStyles:function(p,q){if(q){p=Ext.fly(p);if(typeof q=="string"){var o=/\s?([a-z\-]*)\:\s?([^;]*);?/gi;var r;while((r=o.exec(q))!=null){p.setStyle(r[1],r[2])}}else{if(typeof q=="object"){for(var n in q){p.setStyle(n,q[n])}}else{if(typeof q=="function"){Ext.DomHelper.applyStyles(p,q.call())}}}}},insertHtml:function(p,r,q){p=p.toLowerCase();if(r.insertAdjacentHTML){if(b.test(r.tagName)){var o;if(o=g(r.tagName.toLowerCase(),p,r,q)){return o}}switch(p){case"beforebegin":r.insertAdjacentHTML("BeforeBegin",q);return r.previousSibling;case"afterbegin":r.insertAdjacentHTML("AfterBegin",q);return r.firstChild;case"beforeend":r.insertAdjacentHTML("BeforeEnd",q);return r.lastChild;case"afterend":r.insertAdjacentHTML("AfterEnd",q);return r.nextSibling}throw'Illegal insertion point -> "'+p+'"'}var n=r.ownerDocument.createRange();var s;switch(p){case"beforebegin":n.setStartBefore(r);s=n.createContextualFragment(q);r.parentNode.insertBefore(s,r);return r.previousSibling;case"afterbegin":if(r.firstChild){n.setStartBefore(r.firstChild);s=n.createContextualFragment(q);r.insertBefore(s,r.firstChild);return r.firstChild}else{r.innerHTML=q;return r.firstChild}case"beforeend":if(r.lastChild){n.setStartAfter(r.lastChild);s=n.createContextualFragment(q);r.appendChild(s);return r.lastChild}else{r.innerHTML=q;return r.lastChild}case"afterend":n.setStartAfter(r);s=n.createContextualFragment(q);r.parentNode.insertBefore(s,r.nextSibling);return r.nextSibling}throw'Illegal insertion point -> "'+p+'"'},insertBefore:function(n,q,p){return this.doInsert(n,q,p,"beforeBegin")},insertAfter:function(n,q,p){return this.doInsert(n,q,p,"afterEnd","nextSibling")},insertFirst:function(n,q,p){return this.doInsert(n,q,p,"afterBegin","firstChild")},doInsert:function(r,t,s,u,q){r=Ext.getDom(r);var p;if(this.useDom){p=m(t,null);(q==="firstChild"?r:r.parentNode).insertBefore(p,q?r[q]:r)}else{var n=a(t);p=this.insertHtml(u,r,n)}return s?Ext.get(p,true):p},append:function(q,s,r){q=Ext.getDom(q);var p;if(this.useDom){p=m(s,null);q.appendChild(p)}else{var n=a(s);p=this.insertHtml("beforeEnd",q,n)}return r?Ext.get(p,true):p},overwrite:function(n,q,p){n=Ext.getDom(n);n.innerHTML=a(q);return p?Ext.get(n.firstChild,true):n.firstChild},createTemplate:function(p){var n=a(p);return new Ext.Template(n)}}}(); \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/build/core/DomQuery-min.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/build/core/DomQuery-min.js,v diff -u -r1.1 -r1.2 --- openacs-4/packages/ajaxhelper/www/resources/ext2/build/core/DomQuery-min.js 4 Dec 2007 02:48:31 -0000 1.1 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/build/core/DomQuery-min.js 11 Apr 2009 18:15:09 -0000 1.2 @@ -1,9 +1 @@ -/* - * Ext JS Library 2.0 - * Copyright(c) 2006-2007, Ext JS, LLC. - * licensing@extjs.com - * - * http://extjs.com/license - */ - -Ext.DomQuery=function(){var cache={},simpleCache={},valueCache={};var nonSpace=/\S/;var trimRe=/^\s+|\s+$/g;var tplRe=/\{(\d+)\}/g;var modeRe=/^(\s?[\/>+~]\s?|\s|$)/;var tagTokenRe=/^(#)?([\w-\*]+)/;var nthRe=/(\d*)n\+?(\d*)/,nthRe2=/\D/;function child(p,index){var i=0;var n=p.firstChild;while(n){if(n.nodeType==1){if(++i==index){return n}}n=n.nextSibling}return null}function next(n){while((n=n.nextSibling)&&n.nodeType!=1){}return n}function prev(n){while((n=n.previousSibling)&&n.nodeType!=1){}return n}function children(d){var n=d.firstChild,ni=-1;while(n){var nx=n.nextSibling;if(n.nodeType==3&&!nonSpace.test(n.nodeValue)){d.removeChild(n)}else{n.nodeIndex=++ni}n=nx}return this}function byClassName(c,a,v){if(!v){return c}var r=[],ri=-1,cn;for(var i=0,ci;ci=c[i];i++){if((" "+ci.className+" ").indexOf(v)!=-1){r[++ri]=ci}}return r}function attrValue(n,attr){if(!n.tagName&&typeof n.length!="undefined"){n=n[0]}if(!n){return null}if(attr=="for"){return n.htmlFor}if(attr=="class"||attr=="className"){return n.className}return n.getAttribute(attr)||n[attr]}function getNodes(ns,mode,tagName){var result=[],ri=-1,cs;if(!ns){return result}tagName=tagName||"*";if(typeof ns.getElementsByTagName!="undefined"){ns=[ns]}if(!mode){for(var i=0,ni;ni=ns[i];i++){cs=ni.getElementsByTagName(tagName);for(var j=0,ci;ci=cs[j];j++){result[++ri]=ci}}}else{if(mode=="/"||mode==">"){var utag=tagName.toUpperCase();for(var i=0,ni,cn;ni=ns[i];i++){cn=ni.children||ni.childNodes;for(var j=0,cj;cj=cn[j];j++){if(cj.nodeName==utag||cj.nodeName==tagName||tagName=="*"){result[++ri]=cj}}}}else{if(mode=="+"){var utag=tagName.toUpperCase();for(var i=0,n;n=ns[i];i++){while((n=n.nextSibling)&&n.nodeType!=1){}if(n&&(n.nodeName==utag||n.nodeName==tagName||tagName=="*")){result[++ri]=n}}}else{if(mode=="~"){for(var i=0,n;n=ns[i];i++){while((n=n.nextSibling)&&(n.nodeType!=1||(tagName=="*"||n.tagName.toLowerCase()!=tagName))){}if(n){result[++ri]=n}}}}}}return result}function concat(a,b){if(b.slice){return a.concat(b)}for(var i=0,l=b.length;i1){return nodup(results)}return results},selectNode:function(path,root){return Ext.DomQuery.select(path,root)[0]},selectValue:function(path,root,defaultValue){path=path.replace(trimRe,"");if(!valueCache[path]){valueCache[path]=Ext.DomQuery.compile(path,"select")}var n=valueCache[path](root);n=n[0]?n[0]:n;var v=(n&&n.firstChild?n.firstChild.nodeValue:null);return((v===null||v===undefined||v==="")?defaultValue:v)},selectNumber:function(path,root,defaultValue){var v=Ext.DomQuery.selectValue(path,root,defaultValue||0);return parseFloat(v)},is:function(el,ss){if(typeof el=="string"){el=document.getElementById(el)}var isArray=(el instanceof Array);var result=Ext.DomQuery.filter(isArray?el:[el],ss);return isArray?(result.length==el.length):(result.length>0)},filter:function(els,ss,nonMatches){ss=ss.replace(trimRe,"");if(!simpleCache[ss]){simpleCache[ss]=Ext.DomQuery.compile(ss,"simple")}var result=simpleCache[ss](els);return nonMatches?quickDiff(result,els):result},matchers:[{re:/^\.([\w-]+)/,select:"n = byClassName(n, null, \" {1} \");"},{re:/^\:([\w-]+)(?:\(((?:[^\s>\/]*|.*?))\))?/,select:"n = byPseudo(n, \"{1}\", \"{2}\");"},{re:/^(?:([\[\{])(?:@)?([\w-]+)\s?(?:(=|.=)\s?['"]?(.*?)["']?)?[\]\}])/,select:"n = byAttribute(n, \"{2}\", \"{4}\", \"{3}\", \"{1}\");"},{re:/^#([\w-]+)/,select:"n = byId(n, null, \"{1}\");"},{re:/^@([\w-]+)/,select:"return {firstChild:{nodeValue:attrValue(n, \"{1}\")}};"}],operators:{"=":function(a,v){return a==v},"!=":function(a,v){return a!=v},"^=":function(a,v){return a&&a.substr(0,v.length)==v},"$=":function(a,v){return a&&a.substr(a.length-v.length)==v},"*=":function(a,v){return a&&a.indexOf(v)!==-1},"%=":function(a,v){return(a%v)==0},"|=":function(a,v){return a&&(a==v||a.substr(0,v.length+1)==v+"-")},"~=":function(a,v){return a&&(" "+a+" ").indexOf(" "+v+" ")!=-1}},pseudos:{"first-child":function(c){var r=[],ri=-1,n;for(var i=0,ci;ci=n=c[i];i++){while((n=n.previousSibling)&&n.nodeType!=1){}if(!n){r[++ri]=ci}}return r},"last-child":function(c){var r=[],ri=-1,n;for(var i=0,ci;ci=n=c[i];i++){while((n=n.nextSibling)&&n.nodeType!=1){}if(!n){r[++ri]=ci}}return r},"nth-child":function(c,a){var r=[],ri=-1;var m=nthRe.exec(a=="even"&&"2n"||a=="odd"&&"2n+1"||!nthRe2.test(a)&&"n+"+a||a);var f=(m[1]||1)-0,l=m[2]-0;for(var i=0,n;n=c[i];i++){var pn=n.parentNode;if(batch!=pn._batch){var j=0;for(var cn=pn.firstChild;cn;cn=cn.nextSibling){if(cn.nodeType==1){cn.nodeIndex=++j}}pn._batch=batch}if(f==1){if(l==0||n.nodeIndex==l){r[++ri]=n}}else{if((n.nodeIndex+l)%f==0){r[++ri]=n}}}return r},"only-child":function(c){var r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){if(!prev(ci)&&!next(ci)){r[++ri]=ci}}return r},"empty":function(c){var r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){var cns=ci.childNodes,j=0,cn,empty=true;while(cn=cns[j]){++j;if(cn.nodeType==1||cn.nodeType==3){empty=false;break}}if(empty){r[++ri]=ci}}return r},"contains":function(c,v){var r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){if((ci.textContent||ci.innerText||"").indexOf(v)!=-1){r[++ri]=ci}}return r},"nodeValue":function(c,v){var r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){if(ci.firstChild&&ci.firstChild.nodeValue==v){r[++ri]=ci}}return r},"checked":function(c){var r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){if(ci.checked==true){r[++ri]=ci}}return r},"not":function(c,ss){return Ext.DomQuery.filter(c,ss,true)},"any":function(c,selectors){var ss=selectors.split("|");var r=[],ri=-1,s;for(var i=0,ci;ci=c[i];i++){for(var j=0;s=ss[j];j++){if(Ext.DomQuery.is(ci,s)){r[++ri]=ci;break}}}return r},"odd":function(c){return this["nth-child"](c,"odd")},"even":function(c){return this["nth-child"](c,"even")},"nth":function(c,a){return c[a-1]||[]},"first":function(c){return c[0]||[]},"last":function(c){return c[c.length-1]||[]},"has":function(c,ss){var s=Ext.DomQuery.select;var r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){if(s(ss,ci).length>0){r[++ri]=ci}}return r},"next":function(c,ss){var is=Ext.DomQuery.is;var r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){var n=next(ci);if(n&&is(n,ss)){r[++ri]=ci}}return r},"prev":function(c,ss){var is=Ext.DomQuery.is;var r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){var n=prev(ci);if(n&&is(n,ss)){r[++ri]=ci}}return r}}}}();Ext.query=Ext.DomQuery.select; \ No newline at end of file +Ext.DomQuery=function(){var cache={},simpleCache={},valueCache={};var nonSpace=/\S/;var trimRe=/^\s+|\s+$/g;var tplRe=/\{(\d+)\}/g;var modeRe=/^(\s?[\/>+~]\s?|\s|$)/;var tagTokenRe=/^(#)?([\w-\*]+)/;var nthRe=/(\d*)n\+?(\d*)/,nthRe2=/\D/;function child(p,index){var i=0;var n=p.firstChild;while(n){if(n.nodeType==1){if(++i==index){return n}}n=n.nextSibling}return null}function next(n){while((n=n.nextSibling)&&n.nodeType!=1){}return n}function prev(n){while((n=n.previousSibling)&&n.nodeType!=1){}return n}function children(d){var n=d.firstChild,ni=-1;while(n){var nx=n.nextSibling;if(n.nodeType==3&&!nonSpace.test(n.nodeValue)){d.removeChild(n)}else{n.nodeIndex=++ni}n=nx}return this}function byClassName(c,a,v){if(!v){return c}var r=[],ri=-1,cn;for(var i=0,ci;ci=c[i];i++){if((" "+ci.className+" ").indexOf(v)!=-1){r[++ri]=ci}}return r}function attrValue(n,attr){if(!n.tagName&&typeof n.length!="undefined"){n=n[0]}if(!n){return null}if(attr=="for"){return n.htmlFor}if(attr=="class"||attr=="className"){return n.className}return n.getAttribute(attr)||n[attr]}function getNodes(ns,mode,tagName){var result=[],ri=-1,cs;if(!ns){return result}tagName=tagName||"*";if(typeof ns.getElementsByTagName!="undefined"){ns=[ns]}if(!mode){for(var i=0,ni;ni=ns[i];i++){cs=ni.getElementsByTagName(tagName);for(var j=0,ci;ci=cs[j];j++){result[++ri]=ci}}}else{if(mode=="/"||mode==">"){var utag=tagName.toUpperCase();for(var i=0,ni,cn;ni=ns[i];i++){cn=ni.children||ni.childNodes;for(var j=0,cj;cj=cn[j];j++){if(cj.nodeName==utag||cj.nodeName==tagName||tagName=="*"){result[++ri]=cj}}}}else{if(mode=="+"){var utag=tagName.toUpperCase();for(var i=0,n;n=ns[i];i++){while((n=n.nextSibling)&&n.nodeType!=1){}if(n&&(n.nodeName==utag||n.nodeName==tagName||tagName=="*")){result[++ri]=n}}}else{if(mode=="~"){for(var i=0,n;n=ns[i];i++){while((n=n.nextSibling)&&(n.nodeType!=1||(tagName=="*"||n.tagName.toLowerCase()!=tagName))){}if(n){result[++ri]=n}}}}}}return result}function concat(a,b){if(b.slice){return a.concat(b)}for(var i=0,l=b.length;i1){return nodup(results)}return results},selectNode:function(path,root){return Ext.DomQuery.select(path,root)[0]},selectValue:function(path,root,defaultValue){path=path.replace(trimRe,"");if(!valueCache[path]){valueCache[path]=Ext.DomQuery.compile(path,"select")}var n=valueCache[path](root);n=n[0]?n[0]:n;var v=(n&&n.firstChild?n.firstChild.nodeValue:null);return((v===null||v===undefined||v==="")?defaultValue:v)},selectNumber:function(path,root,defaultValue){var v=Ext.DomQuery.selectValue(path,root,defaultValue||0);return parseFloat(v)},is:function(el,ss){if(typeof el=="string"){el=document.getElementById(el)}var isArray=Ext.isArray(el);var result=Ext.DomQuery.filter(isArray?el:[el],ss);return isArray?(result.length==el.length):(result.length>0)},filter:function(els,ss,nonMatches){ss=ss.replace(trimRe,"");if(!simpleCache[ss]){simpleCache[ss]=Ext.DomQuery.compile(ss,"simple")}var result=simpleCache[ss](els);return nonMatches?quickDiff(result,els):result},matchers:[{re:/^\.([\w-]+)/,select:'n = byClassName(n, null, " {1} ");'},{re:/^\:([\w-]+)(?:\(((?:[^\s>\/]*|.*?))\))?/,select:'n = byPseudo(n, "{1}", "{2}");'},{re:/^(?:([\[\{])(?:@)?([\w-]+)\s?(?:(=|.=)\s?['"]?(.*?)["']?)?[\]\}])/,select:'n = byAttribute(n, "{2}", "{4}", "{3}", "{1}");'},{re:/^#([\w-]+)/,select:'n = byId(n, null, "{1}");'},{re:/^@([\w-]+)/,select:'return {firstChild:{nodeValue:attrValue(n, "{1}")}};'}],operators:{"=":function(a,v){return a==v},"!=":function(a,v){return a!=v},"^=":function(a,v){return a&&a.substr(0,v.length)==v},"$=":function(a,v){return a&&a.substr(a.length-v.length)==v},"*=":function(a,v){return a&&a.indexOf(v)!==-1},"%=":function(a,v){return(a%v)==0},"|=":function(a,v){return a&&(a==v||a.substr(0,v.length+1)==v+"-")},"~=":function(a,v){return a&&(" "+a+" ").indexOf(" "+v+" ")!=-1}},pseudos:{"first-child":function(c){var r=[],ri=-1,n;for(var i=0,ci;ci=n=c[i];i++){while((n=n.previousSibling)&&n.nodeType!=1){}if(!n){r[++ri]=ci}}return r},"last-child":function(c){var r=[],ri=-1,n;for(var i=0,ci;ci=n=c[i];i++){while((n=n.nextSibling)&&n.nodeType!=1){}if(!n){r[++ri]=ci}}return r},"nth-child":function(c,a){var r=[],ri=-1;var m=nthRe.exec(a=="even"&&"2n"||a=="odd"&&"2n+1"||!nthRe2.test(a)&&"n+"+a||a);var f=(m[1]||1)-0,l=m[2]-0;for(var i=0,n;n=c[i];i++){var pn=n.parentNode;if(batch!=pn._batch){var j=0;for(var cn=pn.firstChild;cn;cn=cn.nextSibling){if(cn.nodeType==1){cn.nodeIndex=++j}}pn._batch=batch}if(f==1){if(l==0||n.nodeIndex==l){r[++ri]=n}}else{if((n.nodeIndex+l)%f==0){r[++ri]=n}}}return r},"only-child":function(c){var r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){if(!prev(ci)&&!next(ci)){r[++ri]=ci}}return r},empty:function(c){var r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){var cns=ci.childNodes,j=0,cn,empty=true;while(cn=cns[j]){++j;if(cn.nodeType==1||cn.nodeType==3){empty=false;break}}if(empty){r[++ri]=ci}}return r},contains:function(c,v){var r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){if((ci.textContent||ci.innerText||"").indexOf(v)!=-1){r[++ri]=ci}}return r},nodeValue:function(c,v){var r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){if(ci.firstChild&&ci.firstChild.nodeValue==v){r[++ri]=ci}}return r},checked:function(c){var r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){if(ci.checked==true){r[++ri]=ci}}return r},not:function(c,ss){return Ext.DomQuery.filter(c,ss,true)},any:function(c,selectors){var ss=selectors.split("|");var r=[],ri=-1,s;for(var i=0,ci;ci=c[i];i++){for(var j=0;s=ss[j];j++){if(Ext.DomQuery.is(ci,s)){r[++ri]=ci;break}}}return r},odd:function(c){return this["nth-child"](c,"odd")},even:function(c){return this["nth-child"](c,"even")},nth:function(c,a){return c[a-1]||[]},first:function(c){return c[0]||[]},last:function(c){return c[c.length-1]||[]},has:function(c,ss){var s=Ext.DomQuery.select;var r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){if(s(ss,ci).length>0){r[++ri]=ci}}return r},next:function(c,ss){var is=Ext.DomQuery.is;var r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){var n=next(ci);if(n&&is(n,ss)){r[++ri]=ci}}return r},prev:function(c,ss){var is=Ext.DomQuery.is;var r=[],ri=-1;for(var i=0,ci;ci=c[i];i++){var n=prev(ci);if(n&&is(n,ss)){r[++ri]=ci}}return r}}}}();Ext.query=Ext.DomQuery.select; \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/build/core/Element-min.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/build/core/Element-min.js,v diff -u -r1.1 -r1.2 --- openacs-4/packages/ajaxhelper/www/resources/ext2/build/core/Element-min.js 4 Dec 2007 02:48:31 -0000 1.1 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/build/core/Element-min.js 11 Apr 2009 18:15:09 -0000 1.2 @@ -1,9 +1 @@ -/* - * Ext JS Library 2.0 - * Copyright(c) 2006-2007, Ext JS, LLC. - * licensing@extjs.com - * - * http://extjs.com/license - */ - -(function(){var D=Ext.lib.Dom;var E=Ext.lib.Event;var A=Ext.lib.Anim;var propCache={};var camelRe=/(-[a-z])/gi;var camelFn=function(m,a){return a.charAt(1).toUpperCase()};var view=document.defaultView;Ext.Element=function(element,forceNew){var dom=typeof element=="string"?document.getElementById(element):element;if(!dom){return null}var id=dom.id;if(forceNew!==true&&id&&Ext.Element.cache[id]){return Ext.Element.cache[id]}this.dom=dom;this.id=id||Ext.id(dom)};var El=Ext.Element;El.prototype={originalDisplay:"",visibilityMode:1,defaultUnit:"px",setVisibilityMode:function(visMode){this.visibilityMode=visMode;return this},enableDisplayMode:function(display){this.setVisibilityMode(El.DISPLAY);if(typeof display!="undefined"){this.originalDisplay=display}return this},findParent:function(simpleSelector,maxDepth,returnEl){var p=this.dom,b=document.body,depth=0,dq=Ext.DomQuery,stopEl;maxDepth=maxDepth||50;if(typeof maxDepth!="number"){stopEl=Ext.getDom(maxDepth);maxDepth=10}while(p&&p.nodeType==1&&depthch||tcb){c.scrollTop=b-ch}}c.scrollTop=c.scrollTop;if(hscroll!==false){if(el.offsetWidth>c.clientWidth||lcr){c.scrollLeft=r-c.clientWidth}}c.scrollLeft=c.scrollLeft}return this},scrollChildIntoView:function(child,hscroll){Ext.fly(child,"_scrollChildIntoView").scrollIntoView(this,hscroll)},autoHeight:function(animate,duration,onComplete,easing){var oldHeight=this.getHeight();this.clip();this.setHeight(1);setTimeout(function(){var height=parseInt(this.dom.scrollHeight,10);if(!animate){this.setHeight(height);this.unclip();if(typeof onComplete=="function"){onComplete()}}else{this.setHeight(oldHeight);this.setHeight(height,animate,duration,function(){this.unclip();if(typeof onComplete=="function"){onComplete()}}.createDelegate(this),easing)}}.createDelegate(this),0);return this},contains:function(el){if(!el){return false}return D.isAncestor(this.dom,el.dom?el.dom:el)},isVisible:function(deep){var vis=!(this.getStyle("visibility")=="hidden"||this.getStyle("display")=="none");if(deep!==true||!vis){return vis}var p=this.dom.parentNode;while(p&&p.tagName.toLowerCase()!="body"){if(!Ext.fly(p,"_isVisible").isVisible()){return false}p=p.parentNode}return true},select:function(selector,unique){return El.select(selector,unique,this.dom)},query:function(selector,unique){return Ext.DomQuery.select(selector,this.dom)},child:function(selector,returnDom){var n=Ext.DomQuery.selectNode(selector,this.dom);return returnDom?n:Ext.get(n)},down:function(selector,returnDom){var n=Ext.DomQuery.selectNode(" > "+selector,this.dom);return returnDom?n:Ext.get(n)},initDD:function(group,config,overrides){var dd=new Ext.dd.DD(Ext.id(this.dom),group,config);return Ext.apply(dd,overrides)},initDDProxy:function(group,config,overrides){var dd=new Ext.dd.DDProxy(Ext.id(this.dom),group,config);return Ext.apply(dd,overrides)},initDDTarget:function(group,config,overrides){var dd=new Ext.dd.DDTarget(Ext.id(this.dom),group,config);return Ext.apply(dd,overrides)},setVisible:function(visible,animate){if(!animate||!A){if(this.visibilityMode==El.DISPLAY){this.setDisplayed(visible)}else{this.fixDisplay();this.dom.style.visibility=visible?"visible":"hidden"}}else{var dom=this.dom;var visMode=this.visibilityMode;if(visible){this.setOpacity(0.01);this.setVisible(true)}this.anim({opacity:{to:(visible?1:0)}},this.preanim(arguments,1),null,0.35,"easeIn",function(){if(!visible){if(visMode==El.DISPLAY){dom.style.display="none"}else{dom.style.visibility="hidden"}Ext.get(dom).setOpacity(1)}})}return this},isDisplayed:function(){return this.getStyle("display")!="none"},toggle:function(animate){this.setVisible(!this.isVisible(),this.preanim(arguments,0));return this},setDisplayed:function(value){if(typeof value=="boolean"){value=value?this.originalDisplay:"none"}this.setStyle("display",value);return this},focus:function(){try{this.dom.focus()}catch(e){}return this},blur:function(){try{this.dom.blur()}catch(e){}return this},addClass:function(className){if(className instanceof Array){for(var i=0,len=className.length;idw+scrollX){x=swapX?r.left-w:dw+scrollX-w}if(xdh+scrollY){y=swapY?r.top-h:dh+scrollY-h}if(yvr){x=vr-w;moved=true}if((y+h)>vb){y=vb-h;moved=true}if(x";E.onAvailable(id,function(){var hd=document.getElementsByTagName("head")[0];var re=/(?:]*)?>)((\n|\r|.)*?)(?:<\/script>)/ig;var srcRe=/\ssrc=([\'\"])(.*?)\1/i;var typeRe=/\stype=([\'\"])(.*?)\1/i;var match;while(match=re.exec(html)){var attrs=match[1];var srcMatch=attrs?attrs.match(srcRe):false;if(srcMatch&&srcMatch[2]){var s=document.createElement("script");s.src=srcMatch[2];var typeMatch=attrs.match(typeRe);if(typeMatch&&typeMatch[2]){s.type=typeMatch[2]}hd.appendChild(s)}else{if(match[2]&&match[2].length>0){if(window.execScript){window.execScript(match[2])}else{window.eval(match[2])}}}}var el=document.getElementById(id);if(el){Ext.removeNode(el)}if(typeof callback=="function"){callback()}});dom.innerHTML=html.replace(/(?:)((\n|\r|.)*?)(?:<\/script>)/ig,"");return this},load:function(){var um=this.getUpdater();um.update.apply(um,arguments);return this},getUpdater:function(){if(!this.updateManager){this.updateManager=new Ext.Updater(this)}return this.updateManager},unselectable:function(){this.dom.unselectable="on";this.swallowEvent("selectstart",true);this.applyStyles("-moz-user-select:none;-khtml-user-select:none;");this.addClass("x-unselectable");return this},getCenterXY:function(){return this.getAlignToXY(document,"c-c")},center:function(centerIn){this.alignTo(centerIn||document,"c-c");return this},isBorderBox:function(){return noBoxAdjust[this.dom.tagName.toLowerCase()]||Ext.isBorderBox},getBox:function(contentBox,local){var xy;if(!local){xy=this.getXY()}else{var left=parseInt(this.getStyle("left"),10)||0;var top=parseInt(this.getStyle("top"),10)||0;xy=[left,top]}var el=this.dom,w=el.offsetWidth,h=el.offsetHeight,bx;if(!contentBox){bx={x:xy[0],y:xy[1],0:xy[0],1:xy[1],width:w,height:h}}else{var l=this.getBorderWidth("l")+this.getPadding("l");var r=this.getBorderWidth("r")+this.getPadding("r");var t=this.getBorderWidth("t")+this.getPadding("t");var b=this.getBorderWidth("b")+this.getPadding("b");bx={x:xy[0]+l,y:xy[1]+t,0:xy[0]+l,1:xy[1]+t,width:w-(l+r),height:h-(t+b)}}bx.right=bx.x+bx.width;bx.bottom=bx.y+bx.height;return bx},getFrameWidth:function(sides,onlyContentBox){return onlyContentBox&&Ext.isBorderBox?0:(this.getPadding(sides)+this.getBorderWidth(sides))},setBox:function(box,adjust,animate){var w=box.width,h=box.height;if((adjust&&!this.autoBoxAdjust)&&!this.isBorderBox()){w-=(this.getBorderWidth("lr")+this.getPadding("lr"));h-=(this.getBorderWidth("tb")+this.getPadding("tb"))}this.setBounds(box.x,box.y,w,h,this.preanim(arguments,2));return this},repaint:function(){var dom=this.dom;this.addClass("x-repaint");setTimeout(function(){Ext.get(dom).removeClass("x-repaint")},1);return this},getMargins:function(side){if(!side){return{top:parseInt(this.getStyle("margin-top"),10)||0,left:parseInt(this.getStyle("margin-left"),10)||0,bottom:parseInt(this.getStyle("margin-bottom"),10)||0,right:parseInt(this.getStyle("margin-right"),10)||0}}else{return this.addStyles(side,El.margins)}},addStyles:function(sides,styles){var val=0,v,w;for(var i=0,len=sides.length;i=0?w:-1*w)}}}return val},createProxy:function(config,renderTo,matchBox){config=typeof config=="object"?config:{tag:"div",cls:config};var proxy;if(renderTo){proxy=Ext.DomHelper.append(renderTo,config,true)}else{proxy=Ext.DomHelper.insertBefore(this.dom,config,true)}if(matchBox){proxy.setBox(this.getBox())}return proxy},mask:function(msg,msgCls){if(this.getStyle("position")=="static"){this.setStyle("position","relative")}if(this._maskMsg){this._maskMsg.remove()}if(this._mask){this._mask.remove()}this._mask=Ext.DomHelper.append(this.dom,{cls:"ext-el-mask"},true);this.addClass("x-masked");this._mask.setDisplayed(true);if(typeof msg=="string"){this._maskMsg=Ext.DomHelper.append(this.dom,{cls:"ext-el-mask-msg",cn:{tag:"div"}},true);var mm=this._maskMsg;mm.dom.className=msgCls?"ext-el-mask-msg "+msgCls:"ext-el-mask-msg";mm.dom.firstChild.innerHTML=msg;mm.setDisplayed(true);mm.center(this)}if(Ext.isIE&&!(Ext.isIE7&&Ext.isStrict)&&this.getStyle("height")=="auto"){this._mask.setSize(this.dom.clientWidth,this.getHeight())}return this._mask},unmask:function(){if(this._mask){if(this._maskMsg){this._maskMsg.remove();delete this._maskMsg}this._mask.remove();delete this._mask}this.removeClass("x-masked")},isMasked:function(){return this._mask&&this._mask.isVisible()},createShim:function(){var el=document.createElement("iframe");el.frameBorder="no";el.className="ext-shim";if(Ext.isIE&&Ext.isSecure){el.src=Ext.SSL_SECURE_URL}var shim=Ext.get(this.dom.parentNode.insertBefore(el,this.dom));shim.autoBoxAdjust=false;return shim},remove:function(){Ext.removeNode(this.dom);delete El.cache[this.dom.id]},hover:function(overFn,outFn,scope){var preOverFn=function(e){if(!e.within(this,true)){overFn.apply(scope||this,arguments)}};var preOutFn=function(e){if(!e.within(this,true)){outFn.apply(scope||this,arguments)}};this.on("mouseover",preOverFn,this.dom);this.on("mouseout",preOutFn,this.dom);return this},addClassOnOver:function(className,preventFlicker){this.hover(function(){Ext.fly(this,"_internal").addClass(className)},function(){Ext.fly(this,"_internal").removeClass(className)});return this},addClassOnFocus:function(className){this.on("focus",function(){Ext.fly(this,"_internal").addClass(className)},this.dom);this.on("blur",function(){Ext.fly(this,"_internal").removeClass(className)},this.dom);return this},addClassOnClick:function(className){var dom=this.dom;this.on("mousedown",function(){Ext.fly(dom,"_internal").addClass(className);var d=Ext.getDoc();var fn=function(){Ext.fly(dom,"_internal").removeClass(className);d.removeListener("mouseup",fn)};d.on("mouseup",fn)});return this},swallowEvent:function(eventName,preventDefault){var fn=function(e){e.stopPropagation();if(preventDefault){e.preventDefault()}};if(eventName instanceof Array){for(var i=0,len=eventName.length;idom.clientHeight||dom.scrollWidth>dom.clientWidth},scrollTo:function(side,value,animate){var prop=side.toLowerCase()=="left"?"scrollLeft":"scrollTop";if(!animate||!A){this.dom[prop]=value}else{var to=prop=="scrollLeft"?[value,this.dom.scrollTop]:[this.dom.scrollLeft,value];this.anim({scroll:{"to":to}},this.preanim(arguments,2),"scroll")}return this},scroll:function(direction,distance,animate){if(!this.isScrollable()){return }var el=this.dom;var l=el.scrollLeft,t=el.scrollTop;var w=el.scrollWidth,h=el.scrollHeight;var cw=el.clientWidth,ch=el.clientHeight;direction=direction.toLowerCase();var scrolled=false;var a=this.preanim(arguments,2);switch(direction){case"l":case"left":if(w-l>cw){var v=Math.min(l+distance,w-cw);this.scrollTo("left",v,a);scrolled=true}break;case"r":case"right":if(l>0){var v=Math.max(l-distance,0);this.scrollTo("left",v,a);scrolled=true}break;case"t":case"top":case"up":if(t>0){var v=Math.max(t-distance,0);this.scrollTo("top",v,a);scrolled=true}break;case"b":case"bottom":case"down":if(h-t>ch){var v=Math.min(t+distance,h-ch);this.scrollTo("top",v,a);scrolled=true}break}return scrolled},translatePoints:function(x,y){if(typeof x=="object"||x instanceof Array){y=x[1];x=x[0]}var p=this.getStyle("position");var o=this.getXY();var l=parseInt(this.getStyle("left"),10);var t=parseInt(this.getStyle("top"),10);if(isNaN(l)){l=(p=="relative")?0:this.dom.offsetLeft}if(isNaN(t)){t=(p=="relative")?0:this.dom.offsetTop}return{left:(x-o[0]+l),top:(y-o[1]+t)}},getScroll:function(){var d=this.dom,doc=document;if(d==doc||d==doc.body){var l,t;if(Ext.isIE&&Ext.isStrict){l=doc.documentElement.scrollLeft||(doc.body.scrollLeft||0);t=doc.documentElement.scrollTop||(doc.body.scrollTop||0)}else{l=window.pageXOffset||(doc.body.scrollLeft||0);t=window.pageYOffset||(doc.body.scrollTop||0)}return{left:l,top:t}}else{return{left:d.scrollLeft,top:d.scrollTop}}},getColor:function(attr,defaultValue,prefix){var v=this.getStyle(attr);if(!v||v=="transparent"||v=="inherit"){return defaultValue}var color=typeof prefix=="undefined"?"#":prefix;if(v.substr(0,4)=="rgb("){var rvs=v.slice(4,v.length-1).split(",");for(var i=0;i<3;i++){var h=parseInt(rvs[i]);var s=h.toString(16);if(h<16){s="0"+s}color+=s}}else{if(v.substr(0,1)=="#"){if(v.length==4){for(var i=1;i<4;i++){var c=v.charAt(i);color+=c+c}}else{if(v.length==7){color+=v.substr(1)}}}}return(color.length>5?color.toLowerCase():defaultValue)},boxWrap:function(cls){cls=cls||"x-box";var el=Ext.get(this.insertHtml("beforeBegin",String.format("
"+El.boxMarkup+"
",cls)));el.child("."+cls+"-mc").dom.appendChild(this.dom);return el},getAttributeNS:Ext.isIE?function(ns,name){var d=this.dom;var type=typeof d[ns+":"+name];if(type!="undefined"&&type!="unknown"){return d[ns+":"+name]}return d[name]}:function(ns,name){var d=this.dom;return d.getAttributeNS(ns,name)||d.getAttribute(ns+":"+name)||d.getAttribute(name)||d[name]},getTextWidth:function(text,min,max){return(Ext.util.TextMetrics.measure(this.dom,Ext.value(text,this.dom.innerHTML,true)).width).constrain(min||0,max||1000000)}};var ep=El.prototype;ep.on=ep.addListener;ep.mon=ep.addListener;ep.getUpdateManager=ep.getUpdater;ep.un=ep.removeListener;ep.autoBoxAdjust=true;El.unitPattern=/\d+(px|em|%|en|ex|pt|in|cm|mm|pc)$/i;El.addUnits=function(v,defaultUnit){if(v===""||v=="auto"){return v}if(v===undefined){return""}if(typeof v=="number"||!El.unitPattern.test(v)){return v+(defaultUnit||"px")}return v};El.boxMarkup="
";El.VISIBILITY=1;El.DISPLAY=2;El.borders={l:"border-left-width",r:"border-right-width",t:"border-top-width",b:"border-bottom-width"};El.paddings={l:"padding-left",r:"padding-right",t:"padding-top",b:"padding-bottom"};El.margins={l:"margin-left",r:"margin-right",t:"margin-top",b:"margin-bottom"};El.cache={};var docEl;El.get=function(el){var ex,elm,id;if(!el){return null}if(typeof el=="string"){if(!(elm=document.getElementById(el))){return null}if(ex=El.cache[el]){ex.dom=elm}else{ex=El.cache[el]=new El(elm)}return ex}else{if(el.tagName){if(!(id=el.id)){id=Ext.id(el)}if(ex=El.cache[id]){ex.dom=el}else{ex=El.cache[id]=new El(el)}return ex}else{if(el instanceof El){if(el!=docEl){el.dom=document.getElementById(el.id)||el.dom;El.cache[el.id]=el}return el}else{if(el.isComposite){return el}else{if(el instanceof Array){return El.select(el)}else{if(el==document){if(!docEl){var f=function(){};f.prototype=El.prototype;docEl=new f();docEl.dom=document}return docEl}}}}}}return null};El.uncache=function(el){for(var i=0,a=arguments,len=a.length;ich||tcb){c.scrollTop=b-ch}}c.scrollTop=c.scrollTop;if(hscroll!==false){if(el.offsetWidth>c.clientWidth||lcr){c.scrollLeft=r-c.clientWidth}}c.scrollLeft=c.scrollLeft}return this},scrollChildIntoView:function(child,hscroll){Ext.fly(child,"_scrollChildIntoView").scrollIntoView(this,hscroll)},autoHeight:function(animate,duration,onComplete,easing){var oldHeight=this.getHeight();this.clip();this.setHeight(1);setTimeout(function(){var height=parseInt(this.dom.scrollHeight,10);if(!animate){this.setHeight(height);this.unclip();if(typeof onComplete=="function"){onComplete()}}else{this.setHeight(oldHeight);this.setHeight(height,animate,duration,function(){this.unclip();if(typeof onComplete=="function"){onComplete()}}.createDelegate(this),easing)}}.createDelegate(this),0);return this},contains:function(el){if(!el){return false}return D.isAncestor(this.dom,el.dom?el.dom:el)},isVisible:function(deep){var vis=!(this.getStyle("visibility")=="hidden"||this.getStyle("display")=="none");if(deep!==true||!vis){return vis}var p=this.dom.parentNode;while(p&&p.tagName.toLowerCase()!="body"){if(!Ext.fly(p,"_isVisible").isVisible()){return false}p=p.parentNode}return true},select:function(selector,unique){return El.select(selector,unique,this.dom)},query:function(selector){return Ext.DomQuery.select(selector,this.dom)},child:function(selector,returnDom){var n=Ext.DomQuery.selectNode(selector,this.dom);return returnDom?n:Ext.get(n)},down:function(selector,returnDom){var n=Ext.DomQuery.selectNode(" > "+selector,this.dom);return returnDom?n:Ext.get(n)},initDD:function(group,config,overrides){var dd=new Ext.dd.DD(Ext.id(this.dom),group,config);return Ext.apply(dd,overrides)},initDDProxy:function(group,config,overrides){var dd=new Ext.dd.DDProxy(Ext.id(this.dom),group,config);return Ext.apply(dd,overrides)},initDDTarget:function(group,config,overrides){var dd=new Ext.dd.DDTarget(Ext.id(this.dom),group,config);return Ext.apply(dd,overrides)},setVisible:function(visible,animate){if(!animate||!A){if(this.visibilityMode==El.DISPLAY){this.setDisplayed(visible)}else{this.fixDisplay();this.dom.style.visibility=visible?"visible":"hidden"}}else{var dom=this.dom;var visMode=this.visibilityMode;if(visible){this.setOpacity(0.01);this.setVisible(true)}this.anim({opacity:{to:(visible?1:0)}},this.preanim(arguments,1),null,0.35,"easeIn",function(){if(!visible){if(visMode==El.DISPLAY){dom.style.display="none"}else{dom.style.visibility="hidden"}Ext.get(dom).setOpacity(1)}})}return this},isDisplayed:function(){return this.getStyle("display")!="none"},toggle:function(animate){this.setVisible(!this.isVisible(),this.preanim(arguments,0));return this},setDisplayed:function(value){if(typeof value=="boolean"){value=value?this.originalDisplay:"none"}this.setStyle("display",value);return this},focus:function(){try{this.dom.focus()}catch(e){}return this},blur:function(){try{this.dom.blur()}catch(e){}return this},addClass:function(className){if(Ext.isArray(className)){for(var i=0,len=className.length;idw+scrollX){x=swapX?r.left-w:dw+scrollX-w}if(xdh+scrollY){y=swapY?r.top-h:dh+scrollY-h}if(yvr){x=vr-w;moved=true}if((y+h)>vb){y=vb-h;moved=true}if(x';E.onAvailable(id,function(){var hd=document.getElementsByTagName("head")[0];var re=/(?:]*)?>)((\n|\r|.)*?)(?:<\/script>)/ig;var srcRe=/\ssrc=([\'\"])(.*?)\1/i;var typeRe=/\stype=([\'\"])(.*?)\1/i;var match;while(match=re.exec(html)){var attrs=match[1];var srcMatch=attrs?attrs.match(srcRe):false;if(srcMatch&&srcMatch[2]){var s=document.createElement("script");s.src=srcMatch[2];var typeMatch=attrs.match(typeRe);if(typeMatch&&typeMatch[2]){s.type=typeMatch[2]}hd.appendChild(s)}else{if(match[2]&&match[2].length>0){if(window.execScript){window.execScript(match[2])}else{window.eval(match[2])}}}}var el=document.getElementById(id);if(el){Ext.removeNode(el)}if(typeof callback=="function"){callback()}});dom.innerHTML=html.replace(/(?:)((\n|\r|.)*?)(?:<\/script>)/ig,"");return this},load:function(){var um=this.getUpdater();um.update.apply(um,arguments);return this},getUpdater:function(){if(!this.updateManager){this.updateManager=new Ext.Updater(this)}return this.updateManager},unselectable:function(){this.dom.unselectable="on";this.swallowEvent("selectstart",true);this.applyStyles("-moz-user-select:none;-khtml-user-select:none;");this.addClass("x-unselectable");return this},getCenterXY:function(){return this.getAlignToXY(document,"c-c")},center:function(centerIn){this.alignTo(centerIn||document,"c-c");return this},isBorderBox:function(){return noBoxAdjust[this.dom.tagName.toLowerCase()]||Ext.isBorderBox},getBox:function(contentBox,local){var xy;if(!local){xy=this.getXY()}else{var left=parseInt(this.getStyle("left"),10)||0;var top=parseInt(this.getStyle("top"),10)||0;xy=[left,top]}var el=this.dom,w=el.offsetWidth,h=el.offsetHeight,bx;if(!contentBox){bx={x:xy[0],y:xy[1],0:xy[0],1:xy[1],width:w,height:h}}else{var l=this.getBorderWidth("l")+this.getPadding("l");var r=this.getBorderWidth("r")+this.getPadding("r");var t=this.getBorderWidth("t")+this.getPadding("t");var b=this.getBorderWidth("b")+this.getPadding("b");bx={x:xy[0]+l,y:xy[1]+t,0:xy[0]+l,1:xy[1]+t,width:w-(l+r),height:h-(t+b)}}bx.right=bx.x+bx.width;bx.bottom=bx.y+bx.height;return bx},getFrameWidth:function(sides,onlyContentBox){return onlyContentBox&&Ext.isBorderBox?0:(this.getPadding(sides)+this.getBorderWidth(sides))},setBox:function(box,adjust,animate){var w=box.width,h=box.height;if((adjust&&!this.autoBoxAdjust)&&!this.isBorderBox()){w-=(this.getBorderWidth("lr")+this.getPadding("lr"));h-=(this.getBorderWidth("tb")+this.getPadding("tb"))}this.setBounds(box.x,box.y,w,h,this.preanim(arguments,2));return this},repaint:function(){var dom=this.dom;this.addClass("x-repaint");setTimeout(function(){Ext.get(dom).removeClass("x-repaint")},1);return this},getMargins:function(side){if(!side){return{top:parseInt(this.getStyle("margin-top"),10)||0,left:parseInt(this.getStyle("margin-left"),10)||0,bottom:parseInt(this.getStyle("margin-bottom"),10)||0,right:parseInt(this.getStyle("margin-right"),10)||0}}else{return this.addStyles(side,El.margins)}},addStyles:function(sides,styles){var val=0,v,w;for(var i=0,len=sides.length;i=0?w:-1*w)}}}return val},createProxy:function(config,renderTo,matchBox){config=typeof config=="object"?config:{tag:"div",cls:config};var proxy;if(renderTo){proxy=Ext.DomHelper.append(renderTo,config,true)}else{proxy=Ext.DomHelper.insertBefore(this.dom,config,true)}if(matchBox){proxy.setBox(this.getBox())}return proxy},mask:function(msg,msgCls){if(this.getStyle("position")=="static"){this.addClass("x-masked-relative")}if(this._maskMsg){this._maskMsg.remove()}if(this._mask){this._mask.remove()}this._mask=Ext.DomHelper.append(this.dom,{cls:"ext-el-mask"},true);this.addClass("x-masked");this._mask.setDisplayed(true);if(typeof msg=="string"){this._maskMsg=Ext.DomHelper.append(this.dom,{cls:"ext-el-mask-msg",cn:{tag:"div"}},true);var mm=this._maskMsg;mm.dom.className=msgCls?"ext-el-mask-msg "+msgCls:"ext-el-mask-msg";mm.dom.firstChild.innerHTML=msg;mm.setDisplayed(true);mm.center(this)}if(Ext.isIE&&!(Ext.isIE7&&Ext.isStrict)&&this.getStyle("height")=="auto"){this._mask.setSize(this.getWidth(),this.getHeight())}return this._mask},unmask:function(){if(this._mask){if(this._maskMsg){this._maskMsg.remove();delete this._maskMsg}this._mask.remove();delete this._mask}this.removeClass(["x-masked","x-masked-relative"])},isMasked:function(){return this._mask&&this._mask.isVisible()},createShim:function(){var el=document.createElement("iframe");el.frameBorder="0";el.className="ext-shim";if(Ext.isIE&&Ext.isSecure){el.src=Ext.SSL_SECURE_URL}var shim=Ext.get(this.dom.parentNode.insertBefore(el,this.dom));shim.autoBoxAdjust=false;return shim},remove:function(){Ext.removeNode(this.dom);delete El.cache[this.dom.id]},hover:function(overFn,outFn,scope){var preOverFn=function(e){if(!e.within(this,true)){overFn.apply(scope||this,arguments)}};var preOutFn=function(e){if(!e.within(this,true)){outFn.apply(scope||this,arguments)}};this.on("mouseover",preOverFn,this.dom);this.on("mouseout",preOutFn,this.dom);return this},addClassOnOver:function(className){this.hover(function(){Ext.fly(this,"_internal").addClass(className)},function(){Ext.fly(this,"_internal").removeClass(className)});return this},addClassOnFocus:function(className){this.on("focus",function(){Ext.fly(this,"_internal").addClass(className)},this.dom);this.on("blur",function(){Ext.fly(this,"_internal").removeClass(className)},this.dom);return this},addClassOnClick:function(className){var dom=this.dom;this.on("mousedown",function(){Ext.fly(dom,"_internal").addClass(className);var d=Ext.getDoc();var fn=function(){Ext.fly(dom,"_internal").removeClass(className);d.removeListener("mouseup",fn)};d.on("mouseup",fn)});return this},swallowEvent:function(eventName,preventDefault){var fn=function(e){e.stopPropagation();if(preventDefault){e.preventDefault()}};if(Ext.isArray(eventName)){for(var i=0,len=eventName.length;idom.clientHeight||dom.scrollWidth>dom.clientWidth},scrollTo:function(side,value,animate){var prop=side.toLowerCase()=="left"?"scrollLeft":"scrollTop";if(!animate||!A){this.dom[prop]=value}else{var to=prop=="scrollLeft"?[value,this.dom.scrollTop]:[this.dom.scrollLeft,value];this.anim({scroll:{to:to}},this.preanim(arguments,2),"scroll")}return this},scroll:function(direction,distance,animate){if(!this.isScrollable()){return}var el=this.dom;var l=el.scrollLeft,t=el.scrollTop;var w=el.scrollWidth,h=el.scrollHeight;var cw=el.clientWidth,ch=el.clientHeight;direction=direction.toLowerCase();var scrolled=false;var a=this.preanim(arguments,2);switch(direction){case"l":case"left":if(w-l>cw){var v=Math.min(l+distance,w-cw);this.scrollTo("left",v,a);scrolled=true}break;case"r":case"right":if(l>0){var v=Math.max(l-distance,0);this.scrollTo("left",v,a);scrolled=true}break;case"t":case"top":case"up":if(t>0){var v=Math.max(t-distance,0);this.scrollTo("top",v,a);scrolled=true}break;case"b":case"bottom":case"down":if(h-t>ch){var v=Math.min(t+distance,h-ch);this.scrollTo("top",v,a);scrolled=true}break}return scrolled},translatePoints:function(x,y){if(typeof x=="object"||Ext.isArray(x)){y=x[1];x=x[0]}var p=this.getStyle("position");var o=this.getXY();var l=parseInt(this.getStyle("left"),10);var t=parseInt(this.getStyle("top"),10);if(isNaN(l)){l=(p=="relative")?0:this.dom.offsetLeft}if(isNaN(t)){t=(p=="relative")?0:this.dom.offsetTop}return{left:(x-o[0]+l),top:(y-o[1]+t)}},getScroll:function(){var d=this.dom,doc=document;if(d==doc||d==doc.body){var l,t;if(Ext.isIE&&Ext.isStrict){l=doc.documentElement.scrollLeft||(doc.body.scrollLeft||0);t=doc.documentElement.scrollTop||(doc.body.scrollTop||0)}else{l=window.pageXOffset||(doc.body.scrollLeft||0);t=window.pageYOffset||(doc.body.scrollTop||0)}return{left:l,top:t}}else{return{left:d.scrollLeft,top:d.scrollTop}}},getColor:function(attr,defaultValue,prefix){var v=this.getStyle(attr);if(!v||v=="transparent"||v=="inherit"){return defaultValue}var color=typeof prefix=="undefined"?"#":prefix;if(v.substr(0,4)=="rgb("){var rvs=v.slice(4,v.length-1).split(",");for(var i=0;i<3;i++){var h=parseInt(rvs[i]);var s=h.toString(16);if(h<16){s="0"+s}color+=s}}else{if(v.substr(0,1)=="#"){if(v.length==4){for(var i=1;i<4;i++){var c=v.charAt(i);color+=c+c}}else{if(v.length==7){color+=v.substr(1)}}}}return(color.length>5?color.toLowerCase():defaultValue)},boxWrap:function(cls){cls=cls||"x-box";var el=Ext.get(this.insertHtml("beforeBegin",String.format('
'+El.boxMarkup+"
",cls)));el.child("."+cls+"-mc").dom.appendChild(this.dom);return el},getAttributeNS:Ext.isIE?function(ns,name){var d=this.dom;var type=typeof d[ns+":"+name];if(type!="undefined"&&type!="unknown"){return d[ns+":"+name]}return d[name]}:function(ns,name){var d=this.dom;return d.getAttributeNS(ns,name)||d.getAttribute(ns+":"+name)||d.getAttribute(name)||d[name]},getTextWidth:function(text,min,max){return(Ext.util.TextMetrics.measure(this.dom,Ext.value(text,this.dom.innerHTML,true)).width).constrain(min||0,max||1000000)}};var ep=El.prototype;ep.on=ep.addListener;ep.mon=ep.addListener;ep.getUpdateManager=ep.getUpdater;ep.un=ep.removeListener;ep.autoBoxAdjust=true;El.unitPattern=/\d+(px|em|%|en|ex|pt|in|cm|mm|pc)$/i;El.addUnits=function(v,defaultUnit){if(v===""||v=="auto"){return v}if(v===undefined){return""}if(typeof v=="number"||!El.unitPattern.test(v)){return v+(defaultUnit||"px")}return v};El.boxMarkup='
';El.VISIBILITY=1;El.DISPLAY=2;El.borders={l:"border-left-width",r:"border-right-width",t:"border-top-width",b:"border-bottom-width"};El.paddings={l:"padding-left",r:"padding-right",t:"padding-top",b:"padding-bottom"};El.margins={l:"margin-left",r:"margin-right",t:"margin-top",b:"margin-bottom"};El.cache={};var docEl;El.get=function(el){var ex,elm,id;if(!el){return null}if(typeof el=="string"){if(!(elm=document.getElementById(el))){return null}if(ex=El.cache[el]){ex.dom=elm}else{ex=El.cache[el]=new El(elm)}return ex}else{if(el.tagName){if(!(id=el.id)){id=Ext.id(el)}if(ex=El.cache[id]){ex.dom=el}else{ex=El.cache[id]=new El(el)}return ex}else{if(el instanceof El){if(el!=docEl){el.dom=document.getElementById(el.id)||el.dom;El.cache[el.id]=el}return el}else{if(el.isComposite){return el}else{if(Ext.isArray(el)){return El.select(el)}else{if(el==document){if(!docEl){var f=function(){};f.prototype=El.prototype;docEl=new f();docEl.dom=document}return docEl}}}}}}return null};El.uncache=function(el){for(var i=0,a=arguments,len=a.length;i");var D=document.getElementById("ie-deferred-loader");D.onreadystatechange=function(){if(this.readyState=="complete"){B()}}}else{if(Ext.isSafari){M=setInterval(function(){var E=document.readyState;if(E=="complete"){B()}},10)}}}L.on(window,"load",B)};var R=function(E,U){var D=new Ext.util.DelayedTask(E);return function(V){V=new Ext.EventObjectImpl(V);D.delay(U.buffer,E,null,[V])}};var P=function(V,U,D,E){return function(W){Ext.EventManager.removeListener(U,D,E);V(W)}};var F=function(D,E){return function(U){U=new Ext.EventObjectImpl(U);setTimeout(function(){D(U)},E.delay||10)}};var J=function(U,E,D,Y,X){var Z=(!D||typeof D=="boolean")?{}:D;Y=Y||Z.fn;X=X||Z.scope;var W=Ext.getDom(U);if(!W){throw"Error listening for \""+E+"\". Element \""+U+"\" doesn't exist."}var V=function(b){b=Ext.EventObject.setEvent(b);var a;if(Z.delegate){a=b.getTarget(Z.delegate,W);if(!a){return }}else{a=b.target}if(Z.stopEvent===true){b.stopEvent()}if(Z.preventDefault===true){b.preventDefault()}if(Z.stopPropagation===true){b.stopPropagation()}if(Z.normalized===false){b=b.browserEvent}Y.call(X||W,b,a,Z)};if(Z.delay){V=F(V,Z)}if(Z.single){V=P(V,W,E,Y)}if(Z.buffer){V=R(V,Z)}Y._handlers=Y._handlers||[];Y._handlers.push([Ext.id(W),E,V]);L.on(W,E,V);if(E=="mousewheel"&&W.addEventListener){W.addEventListener("DOMMouseScroll",V,false);L.on(window,"unload",function(){W.removeEventListener("DOMMouseScroll",V,false)})}if(E=="mousedown"&&W==document){Ext.EventManager.stoppedMouseDownEvent.addListener(V)}return V};var G=function(E,U,Z){var D=Ext.id(E),a=Z._handlers,X=Z;if(a){for(var V=0,Y=a.length;V=33&&D<=40)||D==this.RETURN||D==this.TAB||D==this.ESC},isSpecialKey:function(){var D=this.keyCode;return(this.type=="keypress"&&this.ctrlKey)||D==9||D==13||D==40||D==27||(D==16)||(D==17)||(D>=18&&D<=20)||(D>=33&&D<=35)||(D>=36&&D<=39)||(D>=44&&D<=45)},stopPropagation:function(){if(this.browserEvent){if(this.browserEvent.type=="mousedown"){Ext.EventManager.stoppedMouseDownEvent.fire(this)}B.stopPropagation(this.browserEvent)}},getCharCode:function(){return this.charCode||this.keyCode},getKey:function(){var D=this.keyCode||this.charCode;return Ext.isSafari?(A[D]||D):D},getPageX:function(){return this.xy[0]},getPageY:function(){return this.xy[1]},getTime:function(){if(this.browserEvent){return B.getTime(this.browserEvent)}return null},getXY:function(){return this.xy},getTarget:function(E,G,D){var F=Ext.get(this.target);return E?F.findParent(E,G,D):(D?F:this.target)},getRelatedTarget:function(){if(this.browserEvent){return B.getRelatedTarget(this.browserEvent)}return null},getWheelDelta:function(){var D=this.browserEvent;var E=0;if(D.wheelDelta){E=D.wheelDelta/120}else{if(D.detail){E=-D.detail/3}}return E},hasModifier:function(){return((this.ctrlKey||this.altKey)||this.shiftKey)?true:false},within:function(E,F){var D=this[F?"getRelatedTarget":"getTarget"]();return D&&Ext.fly(E).contains(D)},getPoint:function(){return new Ext.lib.Point(this.xy[0],this.xy[1])}};return new Ext.EventObjectImpl()}(); \ No newline at end of file +Ext.EventManager=function(){var v,o,k=false;var l,u,f,q;var n=Ext.lib.Event;var p=Ext.lib.Dom;var a="Ext";var h={};var m=function(B,x,A,z,y){var D=Ext.id(B);if(!h[D]){h[D]={}}var C=h[D];if(!C[x]){C[x]=[]}var w=C[x];w.push({id:D,ename:x,fn:A,wrap:z,scope:y});n.on(B,x,z);if(x=="mousewheel"&&B.addEventListener){B.addEventListener("DOMMouseScroll",z,false);n.on(window,"unload",function(){B.removeEventListener("DOMMouseScroll",z,false)})}if(x=="mousedown"&&B==document){Ext.EventManager.stoppedMouseDownEvent.addListener(z)}};var g=function(y,A,E,G){y=Ext.getDom(y);var w=Ext.id(y),F=h[w],x;if(F){var C=F[A],z;if(C){for(var B=0,D=C.length;B<\/script>');var w=document.getElementById("ie-deferred-loader");w.onreadystatechange=function(){if(this.readyState=="complete"){c()}}}else{if(Ext.isSafari){o=setInterval(function(){var x=document.readyState;if(x=="complete"){c()}},10)}}}n.on(window,"load",c)};var t=function(x,y){var w=new Ext.util.DelayedTask(x);return function(z){z=new Ext.EventObjectImpl(z);w.delay(y.buffer,x,null,[z])}};var r=function(A,z,w,y,x){return function(B){Ext.EventManager.removeListener(z,w,y,x);A(B)}};var e=function(w,x){return function(y){y=new Ext.EventObjectImpl(y);setTimeout(function(){w(y)},x.delay||10)}};var j=function(y,x,w,C,B){var D=(!w||typeof w=="boolean")?{}:w;C=C||D.fn;B=B||D.scope;var A=Ext.getDom(y);if(!A){throw'Error listening for "'+x+'". Element "'+y+"\" doesn't exist."}var z=function(F){if(!window[a]){return}F=Ext.EventObject.setEvent(F);var E;if(D.delegate){E=F.getTarget(D.delegate,A);if(!E){return}}else{E=F.target}if(D.stopEvent===true){F.stopEvent()}if(D.preventDefault===true){F.preventDefault()}if(D.stopPropagation===true){F.stopPropagation()}if(D.normalized===false){F=F.browserEvent}C.call(B||A,F,E,D)};if(D.delay){z=e(z,D)}if(D.single){z=r(z,A,x,C,B)}if(D.buffer){z=t(z,D)}m(A,x,C,z,B);return z};var i=/^(?:scope|delay|buffer|single|stopEvent|preventDefault|stopPropagation|normalized|args|delegate)$/;var s={addListener:function(y,w,A,z,x){if(typeof w=="object"){var C=w;for(var B in C){if(i.test(B)){continue}if(typeof C[B]=="function"){j(y,B,C,C[B],C.scope)}else{j(y,B,C[B])}}return}return j(y,w,x,A,z)},removeListener:function(x,w,z,y){return g(x,w,z,y)},removeAll:function(w){return d(w)},onDocumentReady:function(y,x,w){if(k){v.addListener(y,x,w);v.fire();v.clearListeners();return}if(!v){b()}w=w||{};if(!w.delay){w.delay=1}v.addListener(y,x,w)},doResizeEvent:function(){l.fire(p.getViewWidth(),p.getViewHeight())},onWindowResize:function(y,x,w){if(!l){l=new Ext.util.Event();u=new Ext.util.DelayedTask(this.doResizeEvent);n.on(window,"resize",this.fireWindowResize,this)}l.addListener(y,x,w)},fireWindowResize:function(){if(l){if((Ext.isIE||Ext.isAir)&&u){u.delay(50)}else{l.fire(p.getViewWidth(),p.getViewHeight())}}},onTextResize:function(z,y,w){if(!f){f=new Ext.util.Event();var x=new Ext.Element(document.createElement("div"));x.dom.className="x-text-resize";x.dom.innerHTML="X";x.appendTo(document.body);q=x.dom.offsetHeight;setInterval(function(){if(x.dom.offsetHeight!=q){f.fire(q,q=x.dom.offsetHeight)}},this.textResizeInterval)}f.addListener(z,y,w)},removeResizeListener:function(x,w){if(l){l.removeListener(x,w)}},fireResize:function(){if(l){l.fire(p.getViewWidth(),p.getViewHeight())}},ieDeferSrc:false,textResizeInterval:50};s.on=s.addListener;s.un=s.removeListener;s.stoppedMouseDownEvent=new Ext.util.Event();return s}();Ext.onReady=Ext.EventManager.onDocumentReady;(function(){var a=function(){var c=document.body||document.getElementsByTagName("body")[0];if(!c){return false}var b=[" ",Ext.isIE?"ext-ie "+(Ext.isIE6?"ext-ie6":(Ext.isIE7?"ext-ie7":"ext-ie8")):Ext.isGecko?"ext-gecko "+(Ext.isGecko2?"ext-gecko2":"ext-gecko3"):Ext.isOpera?"ext-opera":Ext.isSafari?"ext-safari":Ext.isChrome?"ext-chrome":""];if(Ext.isMac){b.push("ext-mac")}if(Ext.isLinux){b.push("ext-linux")}if(Ext.isBorderBox){b.push("ext-border-box")}if(Ext.isStrict){var d=c.parentNode;if(d){d.className+=" ext-strict"}}c.className+=b.join(" ");return true};if(!a()){Ext.onReady(a)}})();Ext.EventObject=function(){var b=Ext.lib.Event;var a={3:13,63234:37,63235:39,63232:38,63233:40,63276:33,63277:34,63272:46,63273:36,63275:35};var c=Ext.isIE?{1:0,4:1,2:2}:(Ext.isSafari?{1:0,2:1,3:2}:{0:0,1:1,2:2});Ext.EventObjectImpl=function(d){if(d){this.setEvent(d.browserEvent||d)}};Ext.EventObjectImpl.prototype={browserEvent:null,button:-1,shiftKey:false,ctrlKey:false,altKey:false,BACKSPACE:8,TAB:9,NUM_CENTER:12,ENTER:13,RETURN:13,SHIFT:16,CTRL:17,CONTROL:17,ALT:18,PAUSE:19,CAPS_LOCK:20,ESC:27,SPACE:32,PAGE_UP:33,PAGEUP:33,PAGE_DOWN:34,PAGEDOWN:34,END:35,HOME:36,LEFT:37,UP:38,RIGHT:39,DOWN:40,PRINT_SCREEN:44,INSERT:45,DELETE:46,ZERO:48,ONE:49,TWO:50,THREE:51,FOUR:52,FIVE:53,SIX:54,SEVEN:55,EIGHT:56,NINE:57,A:65,B:66,C:67,D:68,E:69,F:70,G:71,H:72,I:73,J:74,K:75,L:76,M:77,N:78,O:79,P:80,Q:81,R:82,S:83,T:84,U:85,V:86,W:87,X:88,Y:89,Z:90,CONTEXT_MENU:93,NUM_ZERO:96,NUM_ONE:97,NUM_TWO:98,NUM_THREE:99,NUM_FOUR:100,NUM_FIVE:101,NUM_SIX:102,NUM_SEVEN:103,NUM_EIGHT:104,NUM_NINE:105,NUM_MULTIPLY:106,NUM_PLUS:107,NUM_MINUS:109,NUM_PERIOD:110,NUM_DIVISION:111,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,setEvent:function(d){if(d==this||(d&&d.browserEvent)){return d}this.browserEvent=d;if(d){this.button=d.button?c[d.button]:(d.which?d.which-1:-1);if(d.type=="click"&&this.button==-1){this.button=0}this.type=d.type;this.shiftKey=d.shiftKey;this.ctrlKey=d.ctrlKey||d.metaKey;this.altKey=d.altKey;this.keyCode=d.keyCode;this.charCode=d.charCode;this.target=b.getTarget(d);this.xy=b.getXY(d)}else{this.button=-1;this.shiftKey=false;this.ctrlKey=false;this.altKey=false;this.keyCode=0;this.charCode=0;this.target=null;this.xy=[0,0]}return this},stopEvent:function(){if(this.browserEvent){if(this.browserEvent.type=="mousedown"){Ext.EventManager.stoppedMouseDownEvent.fire(this)}b.stopEvent(this.browserEvent)}},preventDefault:function(){if(this.browserEvent){b.preventDefault(this.browserEvent)}},isNavKeyPress:function(){var d=this.keyCode;d=Ext.isSafari?(a[d]||d):d;return(d>=33&&d<=40)||d==this.RETURN||d==this.TAB||d==this.ESC},isSpecialKey:function(){var d=this.keyCode;return(this.type=="keypress"&&this.ctrlKey)||d==9||d==13||d==40||d==27||(d==16)||(d==17)||(d>=18&&d<=20)||(d>=33&&d<=35)||(d>=36&&d<=39)||(d>=44&&d<=45)},stopPropagation:function(){if(this.browserEvent){if(this.browserEvent.type=="mousedown"){Ext.EventManager.stoppedMouseDownEvent.fire(this)}b.stopPropagation(this.browserEvent)}},getCharCode:function(){return this.charCode||this.keyCode},getKey:function(){var d=this.keyCode||this.charCode;return Ext.isSafari?(a[d]||d):d},getPageX:function(){return this.xy[0]},getPageY:function(){return this.xy[1]},getTime:function(){if(this.browserEvent){return b.getTime(this.browserEvent)}return null},getXY:function(){return this.xy},getTarget:function(e,f,d){return e?Ext.fly(this.target).findParent(e,f,d):(d?Ext.get(this.target):this.target)},getRelatedTarget:function(){if(this.browserEvent){return b.getRelatedTarget(this.browserEvent)}return null},getWheelDelta:function(){var d=this.browserEvent;var f=0;if(d.wheelDelta){f=d.wheelDelta/120}else{if(d.detail){f=-d.detail/3}}return f},hasModifier:function(){return((this.ctrlKey||this.altKey)||this.shiftKey)?true:false},within:function(f,g,d){var e=this[g?"getRelatedTarget":"getTarget"]();return e&&((d?(e===Ext.getDom(f)):false)||Ext.fly(f).contains(e))},getPoint:function(){return new Ext.lib.Point(this.xy[0],this.xy[1])}};return new Ext.EventObjectImpl()}(); \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/build/core/Ext-min.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/build/core/Ext-min.js,v diff -u -r1.1 -r1.2 --- openacs-4/packages/ajaxhelper/www/resources/ext2/build/core/Ext-min.js 4 Dec 2007 02:48:31 -0000 1.1 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/build/core/Ext-min.js 11 Apr 2009 18:15:09 -0000 1.2 @@ -1,9 +1 @@ -/* - * Ext JS Library 2.0 - * Copyright(c) 2006-2007, Ext JS, LLC. - * licensing@extjs.com - * - * http://extjs.com/license - */ - -Ext={version:"2.0"};window["undefined"]=window["undefined"];Ext.apply=function(C,D,B){if(B){Ext.apply(C,B)}if(C&&D&&typeof D=="object"){for(var A in D){C[A]=D[A]}}return C};(function(){var idSeed=0;var ua=navigator.userAgent.toLowerCase();var isStrict=document.compatMode=="CSS1Compat",isOpera=ua.indexOf("opera")>-1,isSafari=(/webkit|khtml/).test(ua),isIE=!isOpera&&ua.indexOf("msie")>-1,isIE7=!isOpera&&ua.indexOf("msie 7")>-1,isGecko=!isSafari&&ua.indexOf("gecko")>-1,isBorderBox=isIE&&!isStrict,isWindows=(ua.indexOf("windows")!=-1||ua.indexOf("win32")!=-1),isMac=(ua.indexOf("macintosh")!=-1||ua.indexOf("mac os x")!=-1),isLinux=(ua.indexOf("linux")!=-1),isSecure=window.location.href.toLowerCase().indexOf("https")===0;if(isIE&&!isIE7){try{document.execCommand("BackgroundImageCache",false,true)}catch(e){}}Ext.apply(Ext,{isStrict:isStrict,isSecure:isSecure,isReady:false,enableGarbageCollector:true,enableListenerCollection:false,SSL_SECURE_URL:"javascript:false",BLANK_IMAGE_URL:"http:/"+"/extjs.com/s.gif",emptyFn:function(){},applyIf:function(o,c){if(o&&c){for(var p in c){if(typeof o[p]=="undefined"){o[p]=c[p]}}}return o},addBehaviors:function(o){if(!Ext.isReady){Ext.onReady(function(){Ext.addBehaviors(o)});return }var cache={};for(var b in o){var parts=b.split("@");if(parts[1]){var s=parts[0];if(!cache[s]){cache[s]=Ext.select(s)}cache[s].on(parts[1],o[b])}}cache=null},id:function(el,prefix){prefix=prefix||"ext-gen";el=Ext.getDom(el);var id=prefix+(++idSeed);return el?(el.id?el.id:(el.id=id)):id},extend:function(){var io=function(o){for(var m in o){this[m]=o[m]}};return function(sb,sp,overrides){if(typeof sp=="object"){overrides=sp;sp=sb;sb=function(){sp.apply(this,arguments)}}var F=function(){},sbp,spp=sp.prototype;F.prototype=spp;sbp=sb.prototype=new F();sbp.constructor=sb;sb.superclass=spp;if(spp.constructor==Object.prototype.constructor){spp.constructor=sp}sb.override=function(o){Ext.override(sb,o)};sbp.override=io;Ext.override(sb,overrides);return sb}}(),override:function(origclass,overrides){if(overrides){var p=origclass.prototype;for(var method in overrides){p[method]=overrides[method]}}},namespace:function(){var a=arguments,o=null,i,j,d,rt;for(i=0;i-1,isChrome=ua.indexOf("chrome")>-1,isSafari=!isChrome&&(/webkit|khtml/).test(ua),isSafari3=isSafari&&ua.indexOf("webkit/5")!=-1,isIE=!isOpera&&ua.indexOf("msie")>-1,isIE7=!isOpera&&ua.indexOf("msie 7")>-1,isIE8=!isOpera&&ua.indexOf("msie 8")>-1,isGecko=!isSafari&&!isChrome&&ua.indexOf("gecko")>-1,isGecko3=isGecko&&ua.indexOf("rv:1.9")>-1,isBorderBox=isIE&&!isStrict,isWindows=(ua.indexOf("windows")!=-1||ua.indexOf("win32")!=-1),isMac=(ua.indexOf("macintosh")!=-1||ua.indexOf("mac os x")!=-1),isAir=(ua.indexOf("adobeair")!=-1),isLinux=(ua.indexOf("linux")!=-1),isSecure=window.location.href.toLowerCase().indexOf("https")===0;if(isIE&&!isIE7){try{document.execCommand("BackgroundImageCache",false,true)}catch(e){}}Ext.apply(Ext,{isStrict:isStrict,isSecure:isSecure,isReady:false,enableGarbageCollector:true,enableListenerCollection:false,SSL_SECURE_URL:"javascript:false",BLANK_IMAGE_URL:"http://extjs.com/s.gif",emptyFn:function(){},applyIf:function(o,c){if(o&&c){for(var p in c){if(typeof o[p]=="undefined"){o[p]=c[p]}}}return o},addBehaviors:function(o){if(!Ext.isReady){Ext.onReady(function(){Ext.addBehaviors(o)});return}var cache={};for(var b in o){var parts=b.split("@");if(parts[1]){var s=parts[0];if(!cache[s]){cache[s]=Ext.select(s)}cache[s].on(parts[1],o[b])}}cache=null},id:function(el,prefix){prefix=prefix||"ext-gen";el=Ext.getDom(el);var id=prefix+(++idSeed);return el?(el.id?el.id:(el.id=id)):id},extend:function(){var io=function(o){for(var m in o){this[m]=o[m]}};var oc=Object.prototype.constructor;return function(sb,sp,overrides){if(typeof sp=="object"){overrides=sp;sp=sb;sb=overrides.constructor!=oc?overrides.constructor:function(){sp.apply(this,arguments)}}var F=function(){},sbp,spp=sp.prototype;F.prototype=spp;sbp=sb.prototype=new F();sbp.constructor=sb;sb.superclass=spp;if(spp.constructor==oc){spp.constructor=sp}sb.override=function(o){Ext.override(sb,o)};sbp.override=io;Ext.override(sb,overrides);sb.extend=function(o){Ext.extend(sb,o)};return sb}}(),override:function(origclass,overrides){if(overrides){var p=origclass.prototype;for(var method in overrides){p[method]=overrides[method]}if(Ext.isIE&&overrides.toString!=origclass.toString){p.toString=overrides.toString}}},namespace:function(){var a=arguments,o=null,i,j,d,rt;for(i=0;i0){F()}else{B.afterFx(D)}})};F.call(this)});return this},pause:function(C){var A=this.getFxEl();var B={};A.queueFx(B,function(){setTimeout(function(){A.afterFx(B)},C*1000)});return this},fadeIn:function(B){var A=this.getFxEl();B=B||{};A.queueFx(B,function(){this.setOpacity(0);this.fixDisplay();this.dom.style.visibility="visible";var C=B.endOpacity||1;arguments.callee.anim=this.fxanim({opacity:{to:C}},B,null,0.5,"easeOut",function(){if(C==1){this.clearOpacity()}A.afterFx(B)})});return this},fadeOut:function(B){var A=this.getFxEl();B=B||{};A.queueFx(B,function(){arguments.callee.anim=this.fxanim({opacity:{to:B.endOpacity||0}},B,null,0.5,"easeOut",function(){if(this.visibilityMode==Ext.Element.DISPLAY||B.useDisplay){this.dom.style.display="none"}else{this.dom.style.visibility="hidden"}this.clearOpacity();A.afterFx(B)})});return this},scale:function(A,B,C){this.shift(Ext.apply({},C,{width:A,height:B}));return this},shift:function(B){var A=this.getFxEl();B=B||{};A.queueFx(B,function(){var E={},D=B.width,F=B.height,C=B.x,H=B.y,G=B.opacity;if(D!==undefined){E.width={to:this.adjustWidth(D)}}if(F!==undefined){E.height={to:this.adjustHeight(F)}}if(C!==undefined||H!==undefined){E.points={to:[C!==undefined?C:this.getX(),H!==undefined?H:this.getY()]}}if(G!==undefined){E.opacity={to:G}}if(B.xy!==undefined){E.points={to:B.xy}}arguments.callee.anim=this.fxanim(E,B,"motion",0.35,"easeOut",function(){A.afterFx(B)})});return this},ghost:function(A,C){var B=this.getFxEl();C=C||{};B.queueFx(C,function(){A=A||"b";var H=this.getFxRestore();var E=this.getWidth(),G=this.getHeight();var F=this.dom.style;var J=function(){if(C.useDisplay){B.setDisplayed(false)}else{B.hide()}B.clearOpacity();B.setPositioning(H.pos);F.width=H.width;F.height=H.height;B.afterFx(C)};var D={opacity:{to:0},points:{}},I=D.points;switch(A.toLowerCase()){case"t":I.by=[0,-G];break;case"l":I.by=[-E,0];break;case"r":I.by=[E,0];break;case"b":I.by=[0,G];break;case"tl":I.by=[-E,-G];break;case"bl":I.by=[-E,G];break;case"br":I.by=[E,G];break;case"tr":I.by=[E,-G];break}arguments.callee.anim=this.fxanim(D,C,"motion",0.5,"easeOut",J)});return this},syncFx:function(){this.fxDefaults=Ext.apply(this.fxDefaults||{},{block:false,concurrent:true,stopFx:false});return this},sequenceFx:function(){this.fxDefaults=Ext.apply(this.fxDefaults||{},{block:false,concurrent:false,stopFx:false});return this},nextFx:function(){var A=this.fxQueue[0];if(A){A.call(this)}},hasActiveFx:function(){return this.fxQueue&&this.fxQueue[0]},stopFx:function(){if(this.hasActiveFx()){var A=this.fxQueue[0];if(A&&A.anim&&A.anim.isAnimated()){this.fxQueue=[A];A.anim.stop(true)}}return this},beforeFx:function(A){if(this.hasActiveFx()&&!A.concurrent){if(A.stopFx){this.stopFx();return true}return false}return true},hasFxBlock:function(){var A=this.fxQueue;return A&&A[0]&&A[0].block},queueFx:function(C,A){if(!this.fxQueue){this.fxQueue=[]}if(!this.hasFxBlock()){Ext.applyIf(C,this.fxDefaults);if(!C.concurrent){var B=this.beforeFx(C);A.block=C.block;this.fxQueue.push(A);if(B){this.nextFx()}}else{A.call(this)}}return this},fxWrap:function(F,D,C){var B;if(!D.wrap||!(B=Ext.get(D.wrap))){var A;if(D.fixPosition){A=this.getXY()}var E=document.createElement("div");E.style.visibility=C;B=Ext.get(this.dom.parentNode.insertBefore(E,this.dom));B.setPositioning(F);if(B.getStyle("position")=="static"){B.position("relative")}this.clearPositioning("auto");B.clip();B.dom.appendChild(this.dom);if(A){B.setXY(A)}}return B},fxUnwrap:function(A,C,B){this.clearPositioning();this.setPositioning(C);if(!B.wrap){A.dom.parentNode.insertBefore(this.dom,A.dom);A.remove()}},getFxRestore:function(){var A=this.dom.style;return{pos:this.getPositioning(),width:A.width,height:A.height}},afterFx:function(A){if(A.afterStyle){this.applyStyles(A.afterStyle)}if(A.afterCls){this.addClass(A.afterCls)}if(A.remove===true){this.remove()}Ext.callback(A.callback,A.scope,[this]);if(!A.concurrent){this.fxQueue.shift();this.nextFx()}},getFxEl:function(){return Ext.get(this.dom)},fxanim:function(D,E,B,F,C,A){B=B||"run";E=E||{};var G=Ext.lib.Anim[B](this.dom,D,(E.duration||F)||0.35,(E.easing||C)||"easeOut",function(){Ext.callback(A,this)},this);E.anim=G;return G}};Ext.Fx.resize=Ext.Fx.scale;Ext.apply(Ext.Element.prototype,Ext.Fx); \ No newline at end of file +Ext.enableFx=true;Ext.Fx={slideIn:function(a,c){var b=this.getFxEl();c=c||{};b.queueFx(c,function(){a=a||"t";this.fixDisplay();var d=this.getFxRestore();var i=this.getBox();this.setSize(i);var f=this.fxWrap(d.pos,c,"hidden");var k=this.dom.style;k.visibility="visible";k.position="absolute";var e=function(){b.fxUnwrap(f,d.pos,c);k.width=d.width;k.height=d.height;b.afterFx(c)};var j,l={to:[i.x,i.y]},h={to:i.width},g={to:i.height};switch(a.toLowerCase()){case"t":f.setSize(i.width,0);k.left=k.bottom="0";j={height:g};break;case"l":f.setSize(0,i.height);k.right=k.top="0";j={width:h};break;case"r":f.setSize(0,i.height);f.setX(i.right);k.left=k.top="0";j={width:h,points:l};break;case"b":f.setSize(i.width,0);f.setY(i.bottom);k.left=k.top="0";j={height:g,points:l};break;case"tl":f.setSize(0,0);k.right=k.bottom="0";j={width:h,height:g};break;case"bl":f.setSize(0,0);f.setY(i.y+i.height);k.right=k.top="0";j={width:h,height:g,points:l};break;case"br":f.setSize(0,0);f.setXY([i.right,i.bottom]);k.left=k.top="0";j={width:h,height:g,points:l};break;case"tr":f.setSize(0,0);f.setX(i.x+i.width);k.left=k.bottom="0";j={width:h,height:g,points:l};break}this.dom.style.visibility="visible";f.show();arguments.callee.anim=f.fxanim(j,c,"motion",0.5,"easeOut",e)});return this},slideOut:function(a,c){var b=this.getFxEl();c=c||{};b.queueFx(c,function(){a=a||"t";var i=this.getFxRestore();var d=this.getBox();this.setSize(d);var g=this.fxWrap(i.pos,c,"visible");var f=this.dom.style;f.visibility="visible";f.position="absolute";g.setSize(d);var j=function(){if(c.useDisplay){b.setDisplayed(false)}else{b.hide()}b.fxUnwrap(g,i.pos,c);f.width=i.width;f.height=i.height;b.afterFx(c)};var e,h={to:0};switch(a.toLowerCase()){case"t":f.left=f.bottom="0";e={height:h};break;case"l":f.right=f.top="0";e={width:h};break;case"r":f.left=f.top="0";e={width:h,points:{to:[d.right,d.y]}};break;case"b":f.left=f.top="0";e={height:h,points:{to:[d.x,d.bottom]}};break;case"tl":f.right=f.bottom="0";e={width:h,height:h};break;case"bl":f.right=f.top="0";e={width:h,height:h,points:{to:[d.x,d.bottom]}};break;case"br":f.left=f.top="0";e={width:h,height:h,points:{to:[d.x+d.width,d.bottom]}};break;case"tr":f.left=f.bottom="0";e={width:h,height:h,points:{to:[d.right,d.y]}};break}arguments.callee.anim=g.fxanim(e,c,"motion",0.5,"easeOut",j)});return this},puff:function(b){var a=this.getFxEl();b=b||{};a.queueFx(b,function(){this.clearOpacity();this.show();var f=this.getFxRestore();var d=this.dom.style;var g=function(){if(b.useDisplay){a.setDisplayed(false)}else{a.hide()}a.clearOpacity();a.setPositioning(f.pos);d.width=f.width;d.height=f.height;d.fontSize="";a.afterFx(b)};var e=this.getWidth();var c=this.getHeight();arguments.callee.anim=this.fxanim({width:{to:this.adjustWidth(e*2)},height:{to:this.adjustHeight(c*2)},points:{by:[-(e*0.5),-(c*0.5)]},opacity:{to:0},fontSize:{to:200,unit:"%"}},b,"motion",0.5,"easeOut",g)});return this},switchOff:function(b){var a=this.getFxEl();b=b||{};a.queueFx(b,function(){this.clearOpacity();this.clip();var d=this.getFxRestore();var c=this.dom.style;var e=function(){if(b.useDisplay){a.setDisplayed(false)}else{a.hide()}a.clearOpacity();a.setPositioning(d.pos);c.width=d.width;c.height=d.height;a.afterFx(b)};this.fxanim({opacity:{to:0.3}},null,null,0.1,null,function(){this.clearOpacity();(function(){this.fxanim({height:{to:1},points:{by:[0,this.getHeight()*0.5]}},b,"motion",0.3,"easeIn",e)}).defer(100,this)})});return this},highlight:function(a,c){var b=this.getFxEl();c=c||{};b.queueFx(c,function(){a=a||"ffff9c";var d=c.attr||"backgroundColor";this.clearOpacity();this.show();var g=this.getColor(d);var h=this.dom.style[d];var f=(c.endColor||g)||"ffffff";var i=function(){b.dom.style[d]=h;b.afterFx(c)};var e={};e[d]={from:a,to:f};arguments.callee.anim=this.fxanim(e,c,"color",1,"easeIn",i)});return this},frame:function(a,c,d){var b=this.getFxEl();d=d||{};b.queueFx(d,function(){a=a||"#C3DAF9";if(a.length==6){a="#"+a}c=c||1;var g=d.duration||1;this.show();var e=this.getBox();var f=function(){var h=Ext.getBody().createChild({style:{visbility:"hidden",position:"absolute","z-index":"35000",border:"0px solid "+a}});var i=Ext.isBorderBox?2:1;h.animate({top:{from:e.y,to:e.y-20},left:{from:e.x,to:e.x-20},borderWidth:{from:0,to:10},opacity:{from:1,to:0},height:{from:e.height,to:(e.height+(20*i))},width:{from:e.width,to:(e.width+(20*i))}},g,function(){h.remove();if(--c>0){f()}else{b.afterFx(d)}})};f.call(this)});return this},pause:function(c){var a=this.getFxEl();var b={};a.queueFx(b,function(){setTimeout(function(){a.afterFx(b)},c*1000)});return this},fadeIn:function(b){var a=this.getFxEl();b=b||{};a.queueFx(b,function(){this.setOpacity(0);this.fixDisplay();this.dom.style.visibility="visible";var c=b.endOpacity||1;arguments.callee.anim=this.fxanim({opacity:{to:c}},b,null,0.5,"easeOut",function(){if(c==1){this.clearOpacity()}a.afterFx(b)})});return this},fadeOut:function(b){var a=this.getFxEl();b=b||{};a.queueFx(b,function(){var c=b.endOpacity||0;arguments.callee.anim=this.fxanim({opacity:{to:c}},b,null,0.5,"easeOut",function(){if(c===0){if(this.visibilityMode==Ext.Element.DISPLAY||b.useDisplay){this.dom.style.display="none"}else{this.dom.style.visibility="hidden"}this.clearOpacity()}a.afterFx(b)})});return this},scale:function(a,b,c){this.shift(Ext.apply({},c,{width:a,height:b}));return this},shift:function(b){var a=this.getFxEl();b=b||{};a.queueFx(b,function(){var e={},d=b.width,f=b.height,c=b.x,i=b.y,g=b.opacity;if(d!==undefined){e.width={to:this.adjustWidth(d)}}if(f!==undefined){e.height={to:this.adjustHeight(f)}}if(b.left!==undefined){e.left={to:b.left}}if(b.top!==undefined){e.top={to:b.top}}if(b.right!==undefined){e.right={to:b.right}}if(b.bottom!==undefined){e.bottom={to:b.bottom}}if(c!==undefined||i!==undefined){e.points={to:[c!==undefined?c:this.getX(),i!==undefined?i:this.getY()]}}if(g!==undefined){e.opacity={to:g}}if(b.xy!==undefined){e.points={to:b.xy}}arguments.callee.anim=this.fxanim(e,b,"motion",0.35,"easeOut",function(){a.afterFx(b)})});return this},ghost:function(a,c){var b=this.getFxEl();c=c||{};b.queueFx(c,function(){a=a||"b";var i=this.getFxRestore();var e=this.getWidth(),g=this.getHeight();var f=this.dom.style;var k=function(){if(c.useDisplay){b.setDisplayed(false)}else{b.hide()}b.clearOpacity();b.setPositioning(i.pos);f.width=i.width;f.height=i.height;b.afterFx(c)};var d={opacity:{to:0},points:{}},j=d.points;switch(a.toLowerCase()){case"t":j.by=[0,-g];break;case"l":j.by=[-e,0];break;case"r":j.by=[e,0];break;case"b":j.by=[0,g];break;case"tl":j.by=[-e,-g];break;case"bl":j.by=[-e,g];break;case"br":j.by=[e,g];break;case"tr":j.by=[e,-g];break}arguments.callee.anim=this.fxanim(d,c,"motion",0.5,"easeOut",k)});return this},syncFx:function(){this.fxDefaults=Ext.apply(this.fxDefaults||{},{block:false,concurrent:true,stopFx:false});return this},sequenceFx:function(){this.fxDefaults=Ext.apply(this.fxDefaults||{},{block:false,concurrent:false,stopFx:false});return this},nextFx:function(){var a=this.fxQueue[0];if(a){a.call(this)}},hasActiveFx:function(){return this.fxQueue&&this.fxQueue[0]},stopFx:function(){if(this.hasActiveFx()){var a=this.fxQueue[0];if(a&&a.anim&&a.anim.isAnimated()){this.fxQueue=[a];a.anim.stop(true)}}return this},beforeFx:function(a){if(this.hasActiveFx()&&!a.concurrent){if(a.stopFx){this.stopFx();return true}return false}return true},hasFxBlock:function(){var a=this.fxQueue;return a&&a[0]&&a[0].block},queueFx:function(c,a){if(!this.fxQueue){this.fxQueue=[]}if(!this.hasFxBlock()){Ext.applyIf(c,this.fxDefaults);if(!c.concurrent){var b=this.beforeFx(c);a.block=c.block;this.fxQueue.push(a);if(b){this.nextFx()}}else{a.call(this)}}return this},fxWrap:function(f,d,c){var b;if(!d.wrap||!(b=Ext.get(d.wrap))){var a;if(d.fixPosition){a=this.getXY()}var e=document.createElement("div");e.style.visibility=c;b=Ext.get(this.dom.parentNode.insertBefore(e,this.dom));b.setPositioning(f);if(b.getStyle("position")=="static"){b.position("relative")}this.clearPositioning("auto");b.clip();b.dom.appendChild(this.dom);if(a){b.setXY(a)}}return b},fxUnwrap:function(a,c,b){this.clearPositioning();this.setPositioning(c);if(!b.wrap){a.dom.parentNode.insertBefore(this.dom,a.dom);a.remove()}},getFxRestore:function(){var a=this.dom.style;return{pos:this.getPositioning(),width:a.width,height:a.height}},afterFx:function(a){if(a.afterStyle){this.applyStyles(a.afterStyle)}if(a.afterCls){this.addClass(a.afterCls)}if(a.remove===true){this.remove()}Ext.callback(a.callback,a.scope,[this]);if(!a.concurrent){this.fxQueue.shift();this.nextFx()}},getFxEl:function(){return Ext.get(this.dom)},fxanim:function(d,e,b,f,c,a){b=b||"run";e=e||{};var g=Ext.lib.Anim[b](this.dom,d,(e.duration||f)||0.35,(e.easing||c)||"easeOut",function(){Ext.callback(a,this)},this);e.anim=g;return g}};Ext.Fx.resize=Ext.Fx.scale;Ext.apply(Ext.Element.prototype,Ext.Fx); \ No newline at end of file Index: openacs-4/packages/ajaxhelper/www/resources/ext2/build/core/Template-min.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ajaxhelper/www/resources/ext2/build/core/Template-min.js,v diff -u -r1.1 -r1.2 --- openacs-4/packages/ajaxhelper/www/resources/ext2/build/core/Template-min.js 4 Dec 2007 02:48:31 -0000 1.1 +++ openacs-4/packages/ajaxhelper/www/resources/ext2/build/core/Template-min.js 11 Apr 2009 18:15:09 -0000 1.2 @@ -1,9 +1 @@ -/* - * Ext JS Library 2.0 - * Copyright(c) 2006-2007, Ext JS, LLC. - * licensing@extjs.com - * - * http://extjs.com/license - */ - -Ext.Template=function(E){var B=arguments;if(E instanceof Array){E=E.join("")}else{if(B.length>1){var C=[];for(var D=0,A=B.length;D1){var d=[];for(var e=0,b=c.length;e"+A.text+""}if(typeof A.scripts!="undefined"){this.loadScripts=A.scripts}if(typeof A.timeout!="undefined"){this.timeout=A.timeout}}this.showLoading();if(!D){this.defaultUrl=B}if(typeof B=="function"){B=B.call(this)}G=G||(F?"POST":"GET");if(G=="GET"){B=this.prepareUrl(B)}var E=Ext.apply(A||{},{url:B,params:(typeof F=="function"&&C)?F.createDelegate(C):F,success:this.processSuccess,failure:this.processFailure,scope:this,callback:undefined,timeout:(this.timeout*1000),argument:{"options":A,"url":B,"form":null,"callback":H,"scope":C||window,"params":F}});this.transaction=Ext.Ajax.request(E)}},formUpdate:function(C,A,B,D){if(this.fireEvent("beforeupdate",this.el,C,A)!==false){if(typeof A=="function"){A=A.call(this)}C=Ext.getDom(C);this.transaction=Ext.Ajax.request({form:C,url:A,success:this.processSuccess,failure:this.processFailure,scope:this,timeout:(this.timeout*1000),argument:{"url":A,"form":C,"callback":D,"reset":B}});this.showLoading.defer(1,this)}},refresh:function(A){if(this.defaultUrl==null){return }this.update(this.defaultUrl,null,A,true)},startAutoRefresh:function(B,C,D,E,A){if(A){this.update(C||this.defaultUrl,D,E,true)}if(this.autoRefreshProcId){clearInterval(this.autoRefreshProcId)}this.autoRefreshProcId=setInterval(this.update.createDelegate(this,[C||this.defaultUrl,D,E,true]),B*1000)},stopAutoRefresh:function(){if(this.autoRefreshProcId){clearInterval(this.autoRefreshProcId);delete this.autoRefreshProcId}},isAutoRefreshing:function(){return this.autoRefreshProcId?true:false},showLoading:function(){if(this.showLoadIndicator){this.el.update(this.indicatorText)}},prepareUrl:function(B){if(this.disableCaching){var A="_dc="+(new Date().getTime());if(B.indexOf("?")!==-1){B+="&"+A}else{B+="?"+A}}return B},processSuccess:function(A){this.transaction=null;if(A.argument.form&&A.argument.reset){try{A.argument.form.reset()}catch(B){}}if(this.loadScripts){this.renderer.render(this.el,A,this,this.updateComplete.createDelegate(this,[A]))}else{this.renderer.render(this.el,A,this);this.updateComplete(A)}},updateComplete:function(A){this.fireEvent("update",this.el,A);if(typeof A.argument.callback=="function"){A.argument.callback.call(A.argument.scope,this.el,true,A,A.argument.options)}},processFailure:function(A){this.transaction=null;this.fireEvent("failure",this.el,A);if(typeof A.argument.callback=="function"){A.argument.callback.call(A.argument.scope,this.el,false,A,A.argument.options)}},setRenderer:function(A){this.renderer=A},getRenderer:function(){return this.renderer},setDefaultUrl:function(A){this.defaultUrl=A},abort:function(){if(this.transaction){Ext.Ajax.abort(this.transaction)}},isUpdating:function(){if(this.transaction){return Ext.Ajax.isLoading(this.transaction)}return false}});Ext.Updater.defaults={timeout:30,loadScripts:false,sslBlankUrl:(Ext.SSL_SECURE_URL||"javascript:false"),disableCaching:false,showLoadIndicator:true,indicatorText:"
Loading...
"};Ext.Updater.updateElement=function(D,C,E,B){var A=Ext.get(D).getUpdater();Ext.apply(A,B);A.update(C,E,B?B.callback:null)};Ext.Updater.update=Ext.Updater.updateElement;Ext.Updater.BasicRenderer=function(){};Ext.Updater.BasicRenderer.prototype={render:function(C,A,B,D){C.update(A.responseText,B.loadScripts,D)}};Ext.UpdateManager=Ext.Updater; \ No newline at end of file +Ext.Updater=Ext.extend(Ext.util.Observable,{constructor:function(b,a){b=Ext.get(b);if(!a&&b.updateManager){return b.updateManager}this.el=b;this.defaultUrl=null;this.addEvents("beforeupdate","update","failure");var c=Ext.Updater.defaults;this.sslBlankUrl=c.sslBlankUrl;this.disableCaching=c.disableCaching;this.indicatorText=c.indicatorText;this.showLoadIndicator=c.showLoadIndicator;this.timeout=c.timeout;this.loadScripts=c.loadScripts;this.transaction=null;this.refreshDelegate=this.refresh.createDelegate(this);this.updateDelegate=this.update.createDelegate(this);this.formUpdateDelegate=this.formUpdate.createDelegate(this);if(!this.renderer){this.renderer=this.getDefaultRenderer()}Ext.Updater.superclass.constructor.call(this)},getDefaultRenderer:function(){return new Ext.Updater.BasicRenderer()},getEl:function(){return this.el},update:function(b,f,g,d){if(this.fireEvent("beforeupdate",this.el,b,f)!==false){var a,c;if(typeof b=="object"){a=b;b=a.url;f=f||a.params;g=g||a.callback;d=d||a.discardUrl;c=a.scope;if(typeof a.nocache!="undefined"){this.disableCaching=a.nocache}if(typeof a.text!="undefined"){this.indicatorText='
'+a.text+"
"}if(typeof a.scripts!="undefined"){this.loadScripts=a.scripts}if(typeof a.timeout!="undefined"){this.timeout=a.timeout}}this.showLoading();if(!d){this.defaultUrl=b}if(typeof b=="function"){b=b.call(this)}var e=Ext.apply({},{url:b,params:(typeof f=="function"&&c)?f.createDelegate(c):f,success:this.processSuccess,failure:this.processFailure,scope:this,callback:undefined,timeout:(this.timeout*1000),disableCaching:this.disableCaching,argument:{options:a,url:b,form:null,callback:g,scope:c||window,params:f}},a);this.transaction=Ext.Ajax.request(e)}},formUpdate:function(c,a,b,d){if(this.fireEvent("beforeupdate",this.el,c,a)!==false){if(typeof a=="function"){a=a.call(this)}c=Ext.getDom(c);this.transaction=Ext.Ajax.request({form:c,url:a,success:this.processSuccess,failure:this.processFailure,scope:this,timeout:(this.timeout*1000),argument:{url:a,form:c,callback:d,reset:b}});this.showLoading.defer(1,this)}},refresh:function(a){if(this.defaultUrl==null){return}this.update(this.defaultUrl,null,a,true)},startAutoRefresh:function(b,c,d,e,a){if(a){this.update(c||this.defaultUrl,d,e,true)}if(this.autoRefreshProcId){clearInterval(this.autoRefreshProcId)}this.autoRefreshProcId=setInterval(this.update.createDelegate(this,[c||this.defaultUrl,d,e,true]),b*1000)},stopAutoRefresh:function(){if(this.autoRefreshProcId){clearInterval(this.autoRefreshProcId);delete this.autoRefreshProcId}},isAutoRefreshing:function(){return this.autoRefreshProcId?true:false},showLoading:function(){if(this.showLoadIndicator){this.el.update(this.indicatorText)}},processSuccess:function(a){this.transaction=null;if(a.argument.form&&a.argument.reset){try{a.argument.form.reset()}catch(b){}}if(this.loadScripts){this.renderer.render(this.el,a,this,this.updateComplete.createDelegate(this,[a]))}else{this.renderer.render(this.el,a,this);this.updateComplete(a)}},updateComplete:function(a){this.fireEvent("update",this.el,a);if(typeof a.argument.callback=="function"){a.argument.callback.call(a.argument.scope,this.el,true,a,a.argument.options)}},processFailure:function(a){this.transaction=null;this.fireEvent("failure",this.el,a);if(typeof a.argument.callback=="function"){a.argument.callback.call(a.argument.scope,this.el,false,a,a.argument.options)}},setRenderer:function(a){this.renderer=a},getRenderer:function(){return this.renderer},setDefaultUrl:function(a){this.defaultUrl=a},abort:function(){if(this.transaction){Ext.Ajax.abort(this.transaction)}},isUpdating:function(){if(this.transaction){return Ext.Ajax.isLoading(this.transaction)}return false}});Ext.Updater.defaults={timeout:30,loadScripts:false,sslBlankUrl:(Ext.SSL_SECURE_URL||"javascript:false"),disableCaching:false,showLoadIndicator:true,indicatorText:'
Loading...
'};Ext.Updater.updateElement=function(d,c,e,b){var a=Ext.get(d).getUpdater();Ext.apply(a,b);a.update(c,e,b?b.callback:null)};Ext.Updater.BasicRenderer=function(){};Ext.Updater.BasicRenderer.prototype={render:function(c,a,b,d){c.update(a.responseText,b.loadScripts,d)}};Ext.UpdateManager=Ext.Updater; \ No newline at end of file