# HG changeset patch # User Yves-Marie Haussonne <1218002+ymph@users.noreply.github.com> # Date 1311762345 -7200 # Node ID ffb0a6d0800037d1a551de0bf3aa99da4521593a # Parent e6b328970ee873760dd67727c8f97ea712a60067# Parent 66ac54f9dbf6310a5c43a80f69917c7d5af6830b merge diff -r e6b328970ee8 -r ffb0a6d08000 .settings/org.eclipse.core.resources.prefs --- a/.settings/org.eclipse.core.resources.prefs Wed Jul 27 12:24:43 2011 +0200 +++ b/.settings/org.eclipse.core.resources.prefs Wed Jul 27 12:25:45 2011 +0200 @@ -1,4 +1,7 @@ -#Tue Jan 18 10:08:53 CET 2011 +#Thu Jul 21 03:09:15 CEST 2011 eclipse.preferences.version=1 encoding//script/lib/iri_tweet/export_twitter_alchemy.py=utf-8 encoding//script/rest/export_twitter.py=utf-8 +encoding//script/virtualenv/venv/lib/python2.6/site-packages/twitter_text/__init__.py=utf-8 +encoding//script/virtualenv/venv/lib/python2.6/site-packages/twitter_text/extractor.py=utf-8 +encoding//script/virtualenv/venv/lib/python2.6/site-packages/twitter_text/tests.py=utf-8 diff -r e6b328970ee8 -r ffb0a6d08000 sbin/sync/sync_live --- a/sbin/sync/sync_live Wed Jul 27 12:24:43 2011 +0200 +++ b/sbin/sync/sync_live Wed Jul 27 12:25:45 2011 +0200 @@ -12,7 +12,6 @@ cat <= start_date).filter(Tweet.created_at <= end_date) + + if user_whitelist: + query = query.join(User).filter(User.screen_name.in_(user_whitelist)) + if hashtags : def merge_hash(l,h): @@ -354,6 +358,7 @@ htags = reduce(merge_hash, hashtags, []) query = query.filter(or_(*map(lambda h: Hashtag.text.contains(h), htags))) #@UndefinedVariable + return query diff -r e6b328970ee8 -r ffb0a6d08000 script/lib/tweetstream/CHANGELOG --- a/script/lib/tweetstream/CHANGELOG Wed Jul 27 12:24:43 2011 +0200 +++ b/script/lib/tweetstream/CHANGELOG Wed Jul 27 12:25:45 2011 +0200 @@ -41,4 +41,14 @@ - Removed a spurious print statement left over from debugging - Introduced common base class for all tweetstream exceptions - - Make sure we raise a sensible error on 404. Include url in desc of that error \ No newline at end of file + - Make sure we raise a sensible error on 404. Include url in desc of that error + +0.3.6 + + - Added LocationStream class for filtering on location bounding boxes. + +1.0.0 + + - Changed API to match latest twitter endpoints. This adds SampleStream and + FilterStream and deprecates TweetStream, FollowStream, LocationStream, + TrackStream and ReconnectingTweetStream. diff -r e6b328970ee8 -r ffb0a6d08000 script/lib/tweetstream/README --- a/script/lib/tweetstream/README Wed Jul 27 12:24:43 2011 +0200 +++ b/script/lib/tweetstream/README Wed Jul 27 12:25:45 2011 +0200 @@ -7,19 +7,19 @@ Introduction ------------ -tweetstream provides a class, TweetStream, that can be used to get -tweets from Twitter's streaming API. An instance of the class can be used as -an iterator. In addition to fetching tweets, the object keeps track of -the number of tweets collected and the rate at which tweets are received. +tweetstream provides two classes, SampleStream and FollowStream, that can be +used to get tweets from Twitter's streaming API. An instance of one of the +classes can be used as an iterator. In addition to fetching tweets, the +object keeps track of the number of tweets collected and the rate at which +tweets are received. -Subclasses are available for accessing the "track" and "follow" streams -as well. - -There's also a ReconnectingTweetStream class that handles automatic -reconnecting. +SampleStream delivers a sample of all tweets. FilterStream delivers +tweets that match one or more criteria. Note that it's not possible +to get all tweets without access to the "firehose" stream, which +is not currently avaliable to the public. Twitter's documentation about the streaming API can be found here: -http://apiwiki.twitter.com/Streaming-API-Documentation . +http://dev.twitter.com/pages/streaming_api_methods . **Note** that the API is blocking. If for some reason data is not immediatly available, calls will block until enough data is available to yield a tweet. @@ -27,9 +27,9 @@ Examples -------- -Printing all incomming tweets: +Printing incoming tweets: ->>> stream = tweetstream.TweetStream("username", "password") +>>> stream = tweetstream.SampleStream("username", "password") >>> for tweet in stream: ... print tweet @@ -37,7 +37,7 @@ The stream object can also be used as a context, as in this example that prints the author for each tweet as well as the tweet count and rate: ->>> with tweetstream.TweetStream("username", "password") as stream +>>> with tweetstream.SampleStream("username", "password") as stream ... for tweet in stream: ... print "Got tweet from %-16s\t( tweet %d, rate %.1f tweets/sec)" % ( ... tweet["user"]["screen_name"], stream.count, stream.rate ) @@ -53,36 +53,35 @@ ... except tweetstream.ConnectionError, e: ... print "Disconnected from twitter. Reason:", e.reason -To get tweets that relate to specific terms, use the TrackStream: +To get tweets that match specific criteria, use the FilterStream. FilterStreams +take three keyword arguments: "locations", "follow" and "track". + +Locations are a list of bounding boxes in which geotagged tweets should originate. +The argument should be an iterable of longitude/latitude pairs. + +Track specifies keywords to track. The argument should be an iterable of +strings. + +Follow returns statuses that reference given users. Argument should be an iterable +of twitter user IDs. The IDs are userid ints, not the screen names. >>> words = ["opera", "firefox", "safari"] ->>> with tweetstream.TrackStream("username", "password", words) as stream +>>> people = [123,124,125] +>>> locations = ["-122.75,36.8", "-121.75,37.8"] +>>> with tweetstream.FilterStream("username", "password", track=words, +... follow=people, locations=locations) as stream ... for tweet in stream: ... print "Got interesting tweet:", tweet -To get only tweets from a set of users, use the FollowStream. The following -would get tweets for user 1, 42 and 8675309 ->>> users = [1, 42, 8675309] ->>> with tweetstream.FollowStream("username", "password", users) as stream -... for tweet in stream: -... print "Got tweet from:", tweet["user"]["screen_name"] - - -Simple tweet fetcher that sends tweets to an AMQP message server using carrot: +Deprecated classes +------------------ ->>> from carrot.messaging import Publisher ->>> from carrot.connection import AMQPConnection ->>> from tweetstream import TweetStream ->>> amqpconn = AMQPConnection(hostname="localhost", port=5672, -... userid="test", password="test", -... vhost="test") ->>> publisher = Publisher(connection=amqpconn, -... exchange="tweets", routing_key="stream") ->>> with TweetStream("username", "password") as stream: -... for tweet in stream: -... publisher.send(tweet) ->>> publisher.close() +tweetstream used to contain the classes TweetStream, FollowStream, TrackStream +LocationStream and ReconnectingTweetStream. These were deprecated when twitter +changed its API end points. The same functionality is now available in +SampleStream and FilterStream. The deprecated methods will emit a warning when +used, but will remain functional for a while longer. Changelog @@ -98,6 +97,12 @@ requests, please report them in the project site issue tracker. Patches are also very welcome. +Contributors +------------ + +- Rune Halvorsen +- Christopher Schierkolk + License ------- diff -r e6b328970ee8 -r ffb0a6d08000 script/lib/tweetstream/conftest.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/script/lib/tweetstream/conftest.py Wed Jul 27 12:25:45 2011 +0200 @@ -0,0 +1,10 @@ +# content of conftest.py + +import pytest +def pytest_addoption(parser): + parser.addoption("--runslow", action="store_true", + help="run slow tests") + +def pytest_runtest_setup(item): + if 'slow' in item.keywords and not item.config.getvalue("runslow"): + pytest.skip("need --runslow option to run") \ No newline at end of file diff -r e6b328970ee8 -r ffb0a6d08000 script/lib/tweetstream/setup.py --- a/script/lib/tweetstream/setup.py Wed Jul 27 12:24:43 2011 +0200 +++ b/script/lib/tweetstream/setup.py Wed Jul 27 12:25:45 2011 +0200 @@ -3,7 +3,7 @@ author = "Rune Halvorsen" email = "runefh@gmail.com" -version = "0.3.5" +version = "1.0.0" homepage = "http://bitbucket.org/runeh/tweetstream/" setup(name='tweetstream', diff -r e6b328970ee8 -r ffb0a6d08000 script/lib/tweetstream/tests/test_tweetstream.py --- a/script/lib/tweetstream/tests/test_tweetstream.py Wed Jul 27 12:24:43 2011 +0200 +++ b/script/lib/tweetstream/tests/test_tweetstream.py Wed Jul 27 12:25:45 2011 +0200 @@ -3,53 +3,65 @@ import time from BaseHTTPServer import BaseHTTPRequestHandler, HTTPServer -from nose.tools import assert_raises -from tweetstream import TweetStream, FollowStream, TrackStream -from tweetstream import ConnectionError, AuthenticationError -from tweetstream import auth +from tweetstream import TweetStream, FollowStream, TrackStream, LocationStream +from tweetstream import ConnectionError, AuthenticationError, SampleStream +from tweepy.auth import BasicAuthHandler + +import pytest +from pytest import raises +slow = pytest.mark.slow from servercontext import test_server single_tweet = r"""{"in_reply_to_status_id":null,"in_reply_to_user_id":null,"favorited":false,"created_at":"Tue Jun 16 10:40:14 +0000 2009","in_reply_to_screen_name":null,"text":"record industry just keeps on amazing me: http:\/\/is.gd\/13lFo - $150k per song you've SHARED, not that somebody has actually DOWNLOADED.","user":{"notifications":null,"profile_background_tile":false,"followers_count":206,"time_zone":"Copenhagen","utc_offset":3600,"friends_count":191,"profile_background_color":"ffffff","profile_image_url":"http:\/\/s3.amazonaws.com\/twitter_production\/profile_images\/250715794\/profile_normal.png","description":"Digital product developer, currently at Opera Software. My tweets are my opinions, not those of my employer.","verified_profile":false,"protected":false,"favourites_count":0,"profile_text_color":"3C3940","screen_name":"eiriksnilsen","name":"Eirik Stridsklev N.","following":null,"created_at":"Tue May 06 12:24:12 +0000 2008","profile_background_image_url":"http:\/\/s3.amazonaws.com\/twitter_production\/profile_background_images\/10531192\/160x600opera15.gif","profile_link_color":"0099B9","profile_sidebar_fill_color":"95E8EC","url":"http:\/\/www.stridsklev-nilsen.no\/eirik","id":14672543,"statuses_count":506,"profile_sidebar_border_color":"5ED4DC","location":"Oslo, Norway"},"id":2190767504,"truncated":false,"source":"Twitter Opera widget<\/a>"}""" -def test_bad_auth(): +def parameterized(funcarglist): + def wrapper(function): + function.funcarglist = funcarglist + return function + return wrapper + +def pytest_generate_tests(metafunc): + for funcargs in getattr(metafunc.function, 'funcarglist', ()): + metafunc.addcall(funcargs=funcargs) + + +streamtypes = [ + dict(cls=TweetStream, args=[], kwargs=dict()), + dict(cls=SampleStream, args=[], kwargs=dict()), + dict(cls=FollowStream, args=[[1, 2, 3]], kwargs=dict()), + dict(cls=TrackStream, args=["opera"], kwargs=dict()), + dict(cls=LocationStream, args=["123,4321"], kwargs=dict()) +] + + +@parameterized(streamtypes) +def test_bad_auth(cls, args, kwargs): """Test that the proper exception is raised when the user could not be authenticated""" def auth_denied(request): request.send_error(401) - with test_server(handler=auth_denied, methods=("post", "get"), - port="random") as server: - stream = TweetStream(auth.BasicAuthHandler("foo", "bar"), url=server.baseurl) - assert_raises(AuthenticationError, stream.next) - - stream = FollowStream(auth.BasicAuthHandler("foo", "bar"), [1, 2, 3], url=server.baseurl) - assert_raises(AuthenticationError, stream.next) - - stream = TrackStream(auth.BasicAuthHandler("foo", "bar"), ["opera"], url=server.baseurl) - assert_raises(AuthenticationError, stream.next) + with test_server(handler=auth_denied, methods=("post", "get"), port="random") as server: + auth = BasicAuthHandler("user", "passwd") + stream = cls(auth, *args, url=server.baseurl) -def test_404_url(): +@parameterized(streamtypes) +def test_404_url(cls, args, kwargs): """Test that the proper exception is raised when the stream URL can't be found""" def not_found(request): request.send_error(404) - with test_server(handler=not_found, methods=("post", "get"), - port="random") as server: - stream = TweetStream(auth.BasicAuthHandler("foo", "bar"), url=server.baseurl) - assert_raises(ConnectionError, stream.next) - - stream = FollowStream(auth.BasicAuthHandler("foo", "bar"), [1, 2, 3], url=server.baseurl) - assert_raises(ConnectionError, stream.next) - - stream = TrackStream(auth.BasicAuthHandler("foo", "bar"), ["opera"], url=server.baseurl) - assert_raises(ConnectionError, stream.next) + with test_server(handler=not_found, methods=("post", "get"), port="random") as server: + auth = BasicAuthHandler("user", "passwd") + stream = cls(auth, *args, url=server.baseurl) -def test_bad_content(): +@parameterized(streamtypes) +def test_bad_content(cls, args, kwargs): """Test error handling if we are given invalid data""" def bad_content(request): for n in xrange(10): @@ -59,19 +71,17 @@ yield "[1,2, I need no stinking close brace" yield "[1,2,3]" - def do_test(klass, *args): - with test_server(handler=bad_content, methods=("post", "get"), - port="random") as server: - stream = klass(auth.BasicAuthHandler("foo", "bar"), *args, url=server.baseurl) + + with raises(ConnectionError): + with test_server(handler=bad_content, methods=("post", "get"), port="random") as server: + auth = BasicAuthHandler("user", "passwd") + stream = cls(auth, *args, url=server.baseurl) for tweet in stream: pass - assert_raises(ConnectionError, do_test, TweetStream) - assert_raises(ConnectionError, do_test, FollowStream, [1, 2, 3]) - assert_raises(ConnectionError, do_test, TrackStream, ["opera"]) - -def test_closed_connection(): +@parameterized(streamtypes) +def test_closed_connection(cls, args, kwargs): """Test error handling if server unexpectedly closes connection""" cnt = 1000 def bad_content(request): @@ -80,31 +90,24 @@ # strcuture, only checking that it's parsable yield "[1,2,3]" - def do_test(klass, *args): - with test_server(handler=bad_content, methods=("post", "get"), - port="random") as server: - stream = klass(auth.BasicAuthHandler("foo", "bar"), *args, url=server.baseurl) + with raises(ConnectionError): + with test_server(handler=bad_content, methods=("post", "get"), port="random") as server: + auth = BasicAuthHandler("foo", "bar") + stream = cls(auth, *args, url=server.baseurl) for tweet in stream: pass - assert_raises(ConnectionError, do_test, TweetStream) - assert_raises(ConnectionError, do_test, FollowStream, [1, 2, 3]) - assert_raises(ConnectionError, do_test, TrackStream, ["opera"]) + +@parameterized(streamtypes) +def test_bad_host(cls, args, kwargs): + """Test behaviour if we can't connect to the host""" + with raises(ConnectionError): + stream = cls("username", "passwd", *args, url="http://wedfwecfghhreewerewads.foo") + stream.next() -def test_bad_host(): - """Test behaviour if we can't connect to the host""" - stream = TweetStream(auth.BasicAuthHandler("foo", "bar"), url="http://bad.egewdvsdswefdsf.com/") - assert_raises(ConnectionError, stream.next) - - stream = FollowStream(auth.BasicAuthHandler("foo", "bar"), [1, 2, 3], url="http://zegwefdsf.com/") - assert_raises(ConnectionError, stream.next) - - stream = TrackStream(auth.BasicAuthHandler("foo", "bar"), ["foo"], url="http://aswefdsews.com/") - assert_raises(ConnectionError, stream.next) - - -def smoke_test_receive_tweets(): +@parameterized(streamtypes) +def smoke_test_receive_tweets(cls, args, kwargs): """Receive 100k tweets and disconnect (slow)""" total = 100000 @@ -112,20 +115,16 @@ while True: yield single_tweet + "\n" - def do_test(klass, *args): - with test_server(handler=tweetsource, - methods=("post", "get"), port="random") as server: - stream = klass(auth.BasicAuthHandler("foo", "bar"), *args, url=server.baseurl) - for tweet in stream: - if stream.count == total: - break - - do_test(TweetStream) - do_test(FollowStream, [1, 2, 3]) - do_test(TrackStream, ["foo", "bar"]) + with test_server(handler=tweetsource, methods=("post", "get"), port="random") as server: + auth = BasicAuthHandler("foo", "bar") + stream = cls(auth, *args, url=server.baseurl) + for tweet in stream: + if stream.count == total: + break -def test_keepalive(): +@parameterized(streamtypes) +def test_keepalive(cls, args, kwargs): """Make sure we behave sanely when there are keepalive newlines in the data recevived from twitter""" def tweetsource(request): @@ -143,25 +142,22 @@ yield single_tweet+"\n" yield "\n" - def do_test(klass, *args): - with test_server(handler=tweetsource, methods=("post", "get"), - port="random") as server: - stream = klass(auth.BasicAuthHandler("foo", "bar"), *args, url=server.baseurl) - try: - for tweet in stream: - pass - except ConnectionError: - assert stream.count == 3, "Got %s, wanted 3" % stream.count - else: - assert False, "Didn't handle keepalive" + + with test_server(handler=tweetsource, methods=("post", "get"), port="random") as server: + auth = BasicAuthHandler("foo", "bar") + stream = cls(auth, *args, url=server.baseurl) + try: + for tweet in stream: + pass + except ConnectionError: + assert stream.count == 3, "Got %s, wanted 3" % stream.count + else: + assert False, "Didn't handle keepalive" - do_test(TweetStream) - do_test(FollowStream, [1, 2, 3]) - do_test(TrackStream, ["foo", "bar"]) - - -def test_buffering(): +@slow +@parameterized(streamtypes) +def test_buffering(cls, args, kwargs): """Test if buffering stops data from being returned immediately. If there is some buffering in play that might mean data is only returned from the generator when the buffer is full. If buffer is bigger than a @@ -176,19 +172,13 @@ for n in xrange(100): yield single_tweet+"\n" - def do_test(klass, *args): - with test_server(handler=tweetsource, methods=("post", "get"), - port="random") as server: - stream = klass(auth.BasicAuthHandler("foo", "bar"), *args, url=server.baseurl) - start = time.time() - stream.next() - first = time.time() - diff = first - start - assert diff < 1, "Getting first tweet took more than a second!" + with test_server(handler=tweetsource, methods=("post", "get"), port="random") as server: + auth = BasicAuthHandler("foo", "bar") + stream = cls(auth, *args, url=server.baseurl) + start = time.time() + stream.next() + first = time.time() + diff = first - start + assert diff < 1, "Getting first tweet took more than a second!" - do_test(TweetStream) - do_test(FollowStream, [1, 2, 3]) - do_test(TrackStream, ["foo", "bar"]) - - diff -r e6b328970ee8 -r ffb0a6d08000 script/lib/tweetstream/tweetstream/__init__.py --- a/script/lib/tweetstream/tweetstream/__init__.py Wed Jul 27 12:24:43 2011 +0200 +++ b/script/lib/tweetstream/tweetstream/__init__.py Wed Jul 27 12:25:45 2011 +0200 @@ -1,37 +1,18 @@ """ Simple Twitter streaming API access """ -__version__ = "0.3.5" +__version__ = "1.0.0" __author__ = "Rune Halvorsen " __homepage__ = "http://bitbucket.org/runeh/tweetstream/" __docformat__ = "restructuredtext" -import anyjson -import logging -import socket -import time -import urllib -import urllib2 -import urlparse -socket._fileobject.default_bufsize = 0 - """ - .. data:: URLS - - Mapping between twitter endpoint names and URLs. - .. data:: USER_AGENT The default user agent string for stream objects - """ -URLS = {"firehose": "http://stream.twitter.com/1/statuses/firehose.json", - "sample": "http://stream.twitter.com/1/statuses/sample.json", - "follow": "http://stream.twitter.com/1/statuses/filter.json", - "track": "http://stream.twitter.com/1/statuses/filter.json"} - USER_AGENT = "TweetStream %s" % __version__ @@ -39,9 +20,9 @@ """Base class for all tweetstream errors""" pass + class AuthenticationError(TweetStreamError): - """Exception raised if the username/password is not accepted - """ + """Exception raised if the username/password is not accepted""" pass @@ -57,244 +38,5 @@ return '' % self.reason -class TweetStream(object): - """A network connection to Twitters streaming API - - :param auth: Twitter authentication (user name/password - oauth) - - :keyword url: URL to connect to. This can be either an endpoint name, - such as "sample", or a full URL. By default, the public "sample" url - is used. All known endpoints are defined in the :URLS: attribute - - .. attribute:: connected - - True if the object is currently connected to the stream. - - .. attribute:: url - - The URL to which the object is connected - - .. attribute:: starttime - - The timestamp, in seconds since the epoch, the object connected to the - streaming api. - - .. attribute:: count - - The number of tweets that have been returned by the object. - - .. attribute:: rate - - The rate at which tweets have been returned from the object as a - float. see also :attr: `rate_period`. - - .. attribute:: rate_period - - The ammount of time to sample tweets to calculate tweet rate. By - default 10 seconds. Changes to this attribute will not be reflected - until the next time the rate is calculated. The rate of tweets vary - with time of day etc. so it's usefull to set this to something - sensible. - - .. attribute:: user_agent - - User agent string that will be included in the request. NOTE: This can - not be changed after the connection has been made. This property must - thus be set before accessing the iterator. The default is set in - :attr: `USER_AGENT`. -""" - - def __init__(self, auth, url="sample"): - self._conn = None - self._rate_ts = None - self._rate_cnt = 0 - self._auth = auth - - self.rate_period = 10 # in seconds - self.connected = False - self.starttime = None - self.count = 0 - self.rate = 0 - self.user_agent = USER_AGENT - self.url = URLS.get(url, url) - - def __iter__(self): - return self - - def __enter__(self): - return self - - def __exit__(self, *params): - self.close() - return False - - def _init_conn(self): - """Open the connection to the twitter server""" - headers = {'User-Agent': self.user_agent} - params_str = self._get_post_data() - if params_str is not None: - method = "POST" - params = dict([(key, ",".join(value)) for key, value in urlparse.parse_qs(params_str).items()]) - else: - method = "GET" - params = None - - if self._auth: - self._auth.apply_auth(self.url, method, headers, params) - - req = urllib2.Request(self.url, urllib.urlencode(params) , headers) - - try: - self._conn = urllib2.urlopen(req) - except urllib2.HTTPError, exception: - if exception.code == 401: - raise AuthenticationError("Access denied") - elif exception.code == 404: - raise ConnectionError("URL not found: %s" % self.url) - else: # re raise. No idea what would cause this, so want to know - raise - except urllib2.URLError, exception: - raise ConnectionError(exception.reason) - logging.debug("TweetStream._init_conn : connected : %s, params : %s, headers: %s " % (self.url, repr(params), repr(headers))) - self.connected = True - if not self.starttime: - self.starttime = time.time() - if not self._rate_ts: - self._rate_ts = time.time() - - def _get_post_data(self): - """Subclasses that need to add post data to the request can override - this method and return post data. The data should be in the format - returned by urllib.urlencode.""" - return None - - def next(self): - """Return the next available tweet. This call is blocking!""" - while True: - try: - data=None - if not self.connected: - self._init_conn() - - rate_time = time.time() - self._rate_ts - if not self._rate_ts or rate_time > self.rate_period: - self.rate = self._rate_cnt / rate_time - self._rate_cnt = 0 - self._rate_ts = time.time() - - data = self._conn.readline() - logging.debug("TweetStream.next : data : %s" % repr(data)) - - if data == "": # something is wrong - self.close() - raise ConnectionError("Got entry of length 0. Disconnected") - elif data.isspace(): - continue - - data = anyjson.deserialize(data) - self.count += 1 - self._rate_cnt += 1 - return data - - except ValueError, e: - self.close() - raise ConnectionError("Got invalid data from twitter " + str(e), details=data) - - except socket.error, e: - self.close() - raise ConnectionError("Server disconnected") - - - def close(self): - """ - Close the connection to the streaming server. - """ - self.connected = False - if self._conn: - self._conn.close() - - -class ReconnectingTweetStream(TweetStream): - """TweetStream class that automatically tries to reconnect if the - connecting goes down. Reconnecting, and waiting for reconnecting, is - blocking. - - :param auth: See :TweetStream: - - :keyword url: See :TweetStream: - - :keyword reconnects: Number of reconnects before a ConnectionError is - raised. Default is 3 - - :error_cb: Optional callable that will be called just before trying to - reconnect. The callback will be called with a single argument, the - exception that caused the reconnect attempt. Default is None - - :retry_wait: Time to wait before reconnecting in seconds. Default is 5 - - """ - - def __init__(self, auth, url="sample", - reconnects=3, error_cb=None, retry_wait=5): - self.max_reconnects = reconnects - self.retry_wait = retry_wait - self._reconnects = 0 - self._error_cb = error_cb - TweetStream.__init__(self, auth, url=url) - - def next(self): - while True: - try: - return TweetStream.next(self) - except ConnectionError, e: - self._reconnects += 1 - if self._reconnects > self.max_reconnects: - raise ConnectionError("Too many retries") - - # Note: error_cb is not called on the last error since we - # raise a ConnectionError instead - if callable(self._error_cb): - self._error_cb(e) - - time.sleep(self.retry_wait) - # Don't listen to auth error, since we can't reasonably reconnect - # when we get one. - -class FollowStream(TweetStream): - """Stream class for getting tweets from followers. - - :param auth: See TweetStream - - :param followees: Iterable containing user IDs to follow. - ***Note:*** the user id in question is the numeric ID twitter uses, - not the normal username. - - :keyword url: Like the url argument to TweetStream, except default - value is the "follow" endpoint. - """ - - def __init__(self, auth, followees, url="follow", **kwargs): - self.followees = followees - TweetStream.__init__(self, auth, url=url, **kwargs) - - def _get_post_data(self): - return urllib.urlencode({"follow": ",".join(map(str, self.followees))}) - - -class TrackStream(TweetStream): - """Stream class for getting tweets relevant to keywords. - - :param auth: See TweetStream - - :param keywords: Iterable containing keywords to look for - - :keyword url: Like the url argument to TweetStream, except default - value is the "track" endpoint. - """ - - def __init__(self, auth, keywords, url="track", **kwargs): - self.keywords = keywords - TweetStream.__init__(self, auth, url=url, **kwargs) - - def _get_post_data(self): - return urllib.urlencode({"track": ",".join(self.keywords)}) +from streamclasses import SampleStream, FilterStream +from deprecated import FollowStream, TrackStream, LocationStream, TweetStream, ReconnectingTweetStream diff -r e6b328970ee8 -r ffb0a6d08000 script/lib/tweetstream/tweetstream/auth.py --- a/script/lib/tweetstream/tweetstream/auth.py Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,162 +0,0 @@ -# Tweepy -# Copyright 2009-2010 Joshua Roesslein -# See LICENSE for details. - -from tweetstream import TweetStreamError -from urllib2 import Request, urlopen -import base64 -import tweetstream.oauth - - - -class AuthHandler(object): - - def apply_auth(self, url, method, headers, parameters): - """Apply authentication headers to request""" - raise NotImplementedError - - def get_username(self): - """Return the username of the authenticated user""" - raise NotImplementedError - - -class BasicAuthHandler(AuthHandler): - - def __init__(self, username, password): - self.username = username - self._b64up = base64.b64encode('%s:%s' % (username, password)) - - def apply_auth(self, url, method, headers, parameters): - headers['Authorization'] = 'Basic %s' % self._b64up - - def get_username(self): - return self.username - - -class OAuthHandler(AuthHandler): - """OAuth authentication handler""" - - OAUTH_HOST = 'api.twitter.com' - OAUTH_ROOT = '/oauth/' - - def __init__(self, consumer_key, consumer_secret, callback=None, secure=False): - self._consumer = tweetstream.oauth.OAuthConsumer(consumer_key, consumer_secret) - self._sigmethod = tweetstream.oauth.OAuthSignatureMethod_HMAC_SHA1() - self.request_token = None - self.access_token = None - self.callback = callback - self.username = None - self.secure = secure - - def _get_oauth_url(self, endpoint, secure=False): - if self.secure or secure: - prefix = 'https://' - else: - prefix = 'http://' - - return prefix + self.OAUTH_HOST + self.OAUTH_ROOT + endpoint - - def apply_auth(self, url, method, headers, parameters): - request = tweetstream.oauth.OAuthRequest.from_consumer_and_token( - self._consumer, http_url=url, http_method=method, - token=self.access_token, parameters=parameters - ) - request.sign_request(self._sigmethod, self._consumer, self.access_token) - headers.update(request.to_header()) - - def _get_request_token(self): - try: - url = self._get_oauth_url('request_token') - request = tweetstream.oauth.OAuthRequest.from_consumer_and_token( - self._consumer, http_url=url, callback=self.callback - ) - request.sign_request(self._sigmethod, self._consumer, None) - resp = urlopen(Request(url, headers=request.to_header())) - return tweetstream.oauth.OAuthToken.from_string(resp.read()) - except Exception, e: - raise TweetStreamError(e) - - def set_request_token(self, key, secret): - self.request_token = tweetstream.oauth.OAuthToken(key, secret) - - def set_access_token(self, key, secret): - self.access_token = tweetstream.oauth.OAuthToken(key, secret) - - def get_authorization_url(self, signin_with_twitter=False): - """Get the authorization URL to redirect the user""" - try: - # get the request token - self.request_token = self._get_request_token() - - # build auth request and return as url - if signin_with_twitter: - url = self._get_oauth_url('authenticate') - else: - url = self._get_oauth_url('authorize') - request = tweetstream.oauth.OAuthRequest.from_token_and_callback( - token=self.request_token, http_url=url - ) - - return request.to_url() - except Exception, e: - raise TweetStreamError(e) - - def get_access_token(self, verifier=None): - """ - After user has authorized the request token, get access token - with user supplied verifier. - """ - try: - url = self._get_oauth_url('access_token') - - # build request - request = tweetstream.oauth.OAuthRequest.from_consumer_and_token( - self._consumer, - token=self.request_token, http_url=url, - verifier=str(verifier) - ) - request.sign_request(self._sigmethod, self._consumer, self.request_token) - - # send request - resp = urlopen(Request(url, headers=request.to_header())) - self.access_token = tweetstream.oauth.OAuthToken.from_string(resp.read()) - return self.access_token - except Exception, e: - raise TweetStreamError(e) - - def get_xauth_access_token(self, username, password): - """ - Get an access token from an username and password combination. - In order to get this working you need to create an app at - http://twitter.com/apps, after that send a mail to api@twitter.com - and request activation of xAuth for it. - """ - try: - url = self._get_oauth_url('access_token', secure=True) # must use HTTPS - request = tweetstream.oauth.OAuthRequest.from_consumer_and_token( - oauth_consumer=self._consumer, - http_method='POST', http_url=url, - parameters = { - 'x_auth_mode': 'client_auth', - 'x_auth_username': username, - 'x_auth_password': password - } - ) - request.sign_request(self._sigmethod, self._consumer, None) - - resp = urlopen(Request(url, data=request.to_postdata())) - self.access_token = tweetstream.oauth.OAuthToken.from_string(resp.read()) - return self.access_token - except Exception, e: - raise TweetStreamError(e) - - def get_username(self): - if self.username is None: - api = API(self) - user = api.verify_credentials() - if user: - self.username = user.screen_name - else: - raise TweetStreamError("Unable to get username, invalid oauth token!") - return self.username - diff -r e6b328970ee8 -r ffb0a6d08000 script/lib/tweetstream/tweetstream/deprecated.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/script/lib/tweetstream/tweetstream/deprecated.py Wed Jul 27 12:25:45 2011 +0200 @@ -0,0 +1,82 @@ +from .streamclasses import FilterStream, SampleStream, ConnectionError +import time + +class DeprecatedStream(FilterStream): + def __init__(self, *args, **kwargs): + import warnings + warnings.warn("%s is deprecated. Use FilterStream instead" % self.__class__.__name__, DeprecationWarning) + super(DeprecatedStream, self).__init__(*args, **kwargs) + + +class FollowStream(DeprecatedStream): + def __init__(self, auth, follow, catchup=None, url=None): + super(FollowStream, self).__init__(auth, follow=follow, catchup=catchup, url=url) + + +class TrackStream(DeprecatedStream): + def __init__(self, auth, track, catchup=None, url=None): + super(TrackStream, self).__init__(auth, track=track, catchup=catchup, url=url) + + +class LocationStream(DeprecatedStream): + def __init__(self, auth, locations, catchup=None, url=None): + super(LocationStream, self).__init__(auth, locations=locations, catchup=catchup, url=url) + + +class TweetStream(SampleStream): + def __init__(self, *args, **kwargs): + import warnings + warnings.warn("%s is deprecated. Use SampleStream instead" % self.__class__.__name__, DeprecationWarning) + SampleStream.__init__(self, *args, **kwargs) + + +class ReconnectingTweetStream(TweetStream): + """TweetStream class that automatically tries to reconnect if the + connecting goes down. Reconnecting, and waiting for reconnecting, is + blocking. + + :param username: See :TweetStream: + + :param password: See :TweetStream: + + :keyword url: See :TweetStream: + + :keyword reconnects: Number of reconnects before a ConnectionError is + raised. Default is 3 + + :error_cb: Optional callable that will be called just before trying to + reconnect. The callback will be called with a single argument, the + exception that caused the reconnect attempt. Default is None + + :retry_wait: Time to wait before reconnecting in seconds. Default is 5 + + """ + + def __init__(self, auth, url="sample", + reconnects=3, error_cb=None, retry_wait=5): + self.max_reconnects = reconnects + self.retry_wait = retry_wait + self._reconnects = 0 + self._error_cb = error_cb + TweetStream.__init__(self, auth, url=url) + + def next(self): + while True: + try: + return TweetStream.next(self) + except ConnectionError, e: + self._reconnects += 1 + if self._reconnects > self.max_reconnects: + raise ConnectionError("Too many retries") + + # Note: error_cb is not called on the last error since we + # raise a ConnectionError instead + if callable(self._error_cb): + self._error_cb(e) + + time.sleep(self.retry_wait) + # Don't listen to auth error, since we can't reasonably reconnect + # when we get one. + + + diff -r e6b328970ee8 -r ffb0a6d08000 script/lib/tweetstream/tweetstream/oauth.py --- a/script/lib/tweetstream/tweetstream/oauth.py Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,655 +0,0 @@ -""" -The MIT License - -Copyright (c) 2007 Leah Culver - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. -""" - -import binascii -import cgi -import hmac -import random -import time -import urllib -import urlparse - - -VERSION = '1.0' # Hi Blaine! -HTTP_METHOD = 'GET' -SIGNATURE_METHOD = 'PLAINTEXT' - - -class OAuthError(RuntimeError): - """Generic exception class.""" - def __init__(self, message='OAuth error occured.'): - self.message = message - -def build_authenticate_header(realm=''): - """Optional WWW-Authenticate header (401 error)""" - return {'WWW-Authenticate': 'OAuth realm="%s"' % realm} - -def escape(s): - """Escape a URL including any /.""" - return urllib.quote(s, safe='~') - -def _utf8_str(s): - """Convert unicode to utf-8.""" - if isinstance(s, unicode): - return s.encode("utf-8") - else: - return str(s) - -def generate_timestamp(): - """Get seconds since epoch (UTC).""" - return int(time.time()) - -def generate_nonce(length=8): - """Generate pseudorandom number.""" - return ''.join([str(random.randint(0, 9)) for i in range(length)]) - -def generate_verifier(length=8): - """Generate pseudorandom number.""" - return ''.join([str(random.randint(0, 9)) for i in range(length)]) - - -class OAuthConsumer(object): - """Consumer of OAuth authentication. - - OAuthConsumer is a data type that represents the identity of the Consumer - via its shared secret with the Service Provider. - - """ - key = None - secret = None - - def __init__(self, key, secret): - self.key = key - self.secret = secret - - -class OAuthToken(object): - """OAuthToken is a data type that represents an End User via either an access - or request token. - - key -- the token - secret -- the token secret - - """ - key = None - secret = None - callback = None - callback_confirmed = None - verifier = None - - def __init__(self, key, secret): - self.key = key - self.secret = secret - - def set_callback(self, callback): - self.callback = callback - self.callback_confirmed = 'true' - - def set_verifier(self, verifier=None): - if verifier is not None: - self.verifier = verifier - else: - self.verifier = generate_verifier() - - def get_callback_url(self): - if self.callback and self.verifier: - # Append the oauth_verifier. - parts = urlparse.urlparse(self.callback) - scheme, netloc, path, params, query, fragment = parts[:6] - if query: - query = '%s&oauth_verifier=%s' % (query, self.verifier) - else: - query = 'oauth_verifier=%s' % self.verifier - return urlparse.urlunparse((scheme, netloc, path, params, - query, fragment)) - return self.callback - - def to_string(self): - data = { - 'oauth_token': self.key, - 'oauth_token_secret': self.secret, - } - if self.callback_confirmed is not None: - data['oauth_callback_confirmed'] = self.callback_confirmed - return urllib.urlencode(data) - - def from_string(s): - """ Returns a token from something like: - oauth_token_secret=xxx&oauth_token=xxx - """ - params = cgi.parse_qs(s, keep_blank_values=False) - key = params['oauth_token'][0] - secret = params['oauth_token_secret'][0] - token = OAuthToken(key, secret) - try: - token.callback_confirmed = params['oauth_callback_confirmed'][0] - except KeyError: - pass # 1.0, no callback confirmed. - return token - from_string = staticmethod(from_string) - - def __str__(self): - return self.to_string() - - -class OAuthRequest(object): - """OAuthRequest represents the request and can be serialized. - - OAuth parameters: - - oauth_consumer_key - - oauth_token - - oauth_signature_method - - oauth_signature - - oauth_timestamp - - oauth_nonce - - oauth_version - - oauth_verifier - ... any additional parameters, as defined by the Service Provider. - """ - parameters = None # OAuth parameters. - http_method = HTTP_METHOD - http_url = None - version = VERSION - - def __init__(self, http_method=HTTP_METHOD, http_url=None, parameters=None): - self.http_method = http_method - self.http_url = http_url - self.parameters = parameters or {} - - def set_parameter(self, parameter, value): - self.parameters[parameter] = value - - def get_parameter(self, parameter): - try: - return self.parameters[parameter] - except: - raise OAuthError('Parameter not found: %s' % parameter) - - def _get_timestamp_nonce(self): - return self.get_parameter('oauth_timestamp'), self.get_parameter( - 'oauth_nonce') - - def get_nonoauth_parameters(self): - """Get any non-OAuth parameters.""" - parameters = {} - for k, v in self.parameters.iteritems(): - # Ignore oauth parameters. - if k.find('oauth_') < 0: - parameters[k] = v - return parameters - - def to_header(self, realm=''): - """Serialize as a header for an HTTPAuth request.""" - auth_header = 'OAuth realm="%s"' % realm - # Add the oauth parameters. - if self.parameters: - for k, v in self.parameters.iteritems(): - if k[:6] == 'oauth_': - auth_header += ', %s="%s"' % (k, escape(str(v))) - return {'Authorization': auth_header} - - def to_postdata(self): - """Serialize as post data for a POST request.""" - return '&'.join(['%s=%s' % (escape(str(k)), escape(str(v))) \ - for k, v in self.parameters.iteritems()]) - - def to_url(self): - """Serialize as a URL for a GET request.""" - return '%s?%s' % (self.get_normalized_http_url(), self.to_postdata()) - - def get_normalized_parameters(self): - """Return a string that contains the parameters that must be signed.""" - params = self.parameters - try: - # Exclude the signature if it exists. - del params['oauth_signature'] - except: - pass - # Escape key values before sorting. - key_values = [(escape(_utf8_str(k)), escape(_utf8_str(v))) \ - for k,v in params.items()] - # Sort lexicographically, first after key, then after value. - key_values.sort() - # Combine key value pairs into a string. - return '&'.join(['%s=%s' % (k, v) for k, v in key_values]) - - def get_normalized_http_method(self): - """Uppercases the http method.""" - return self.http_method.upper() - - def get_normalized_http_url(self): - """Parses the URL and rebuilds it to be scheme://host/path.""" - parts = urlparse.urlparse(self.http_url) - scheme, netloc, path = parts[:3] - # Exclude default port numbers. - if scheme == 'http' and netloc[-3:] == ':80': - netloc = netloc[:-3] - elif scheme == 'https' and netloc[-4:] == ':443': - netloc = netloc[:-4] - return '%s://%s%s' % (scheme, netloc, path) - - def sign_request(self, signature_method, consumer, token): - """Set the signature parameter to the result of build_signature.""" - # Set the signature method. - self.set_parameter('oauth_signature_method', - signature_method.get_name()) - # Set the signature. - self.set_parameter('oauth_signature', - self.build_signature(signature_method, consumer, token)) - - def build_signature(self, signature_method, consumer, token): - """Calls the build signature method within the signature method.""" - return signature_method.build_signature(self, consumer, token) - - def from_request(http_method, http_url, headers=None, parameters=None, - query_string=None): - """Combines multiple parameter sources.""" - if parameters is None: - parameters = {} - - # Headers - if headers and 'Authorization' in headers: - auth_header = headers['Authorization'] - # Check that the authorization header is OAuth. - if auth_header[:6] == 'OAuth ': - auth_header = auth_header[6:] - try: - # Get the parameters from the header. - header_params = OAuthRequest._split_header(auth_header) - parameters.update(header_params) - except: - raise OAuthError('Unable to parse OAuth parameters from ' - 'Authorization header.') - - # GET or POST query string. - if query_string: - query_params = OAuthRequest._split_url_string(query_string) - parameters.update(query_params) - - # URL parameters. - param_str = urlparse.urlparse(http_url)[4] # query - url_params = OAuthRequest._split_url_string(param_str) - parameters.update(url_params) - - if parameters: - return OAuthRequest(http_method, http_url, parameters) - - return None - from_request = staticmethod(from_request) - - def from_consumer_and_token(oauth_consumer, token=None, - callback=None, verifier=None, http_method=HTTP_METHOD, - http_url=None, parameters=None): - if not parameters: - parameters = {} - - defaults = { - 'oauth_consumer_key': oauth_consumer.key, - 'oauth_timestamp': generate_timestamp(), - 'oauth_nonce': generate_nonce(), - 'oauth_version': OAuthRequest.version, - } - - defaults.update(parameters) - parameters = defaults - - if token: - parameters['oauth_token'] = token.key - if token.callback: - parameters['oauth_callback'] = token.callback - # 1.0a support for verifier. - if verifier: - parameters['oauth_verifier'] = verifier - elif callback: - # 1.0a support for callback in the request token request. - parameters['oauth_callback'] = callback - - return OAuthRequest(http_method, http_url, parameters) - from_consumer_and_token = staticmethod(from_consumer_and_token) - - def from_token_and_callback(token, callback=None, http_method=HTTP_METHOD, - http_url=None, parameters=None): - if not parameters: - parameters = {} - - parameters['oauth_token'] = token.key - - if callback: - parameters['oauth_callback'] = callback - - return OAuthRequest(http_method, http_url, parameters) - from_token_and_callback = staticmethod(from_token_and_callback) - - def _split_header(header): - """Turn Authorization: header into parameters.""" - params = {} - parts = header.split(',') - for param in parts: - # Ignore realm parameter. - if param.find('realm') > -1: - continue - # Remove whitespace. - param = param.strip() - # Split key-value. - param_parts = param.split('=', 1) - # Remove quotes and unescape the value. - params[param_parts[0]] = urllib.unquote(param_parts[1].strip('\"')) - return params - _split_header = staticmethod(_split_header) - - def _split_url_string(param_str): - """Turn URL string into parameters.""" - parameters = cgi.parse_qs(param_str, keep_blank_values=False) - for k, v in parameters.iteritems(): - parameters[k] = urllib.unquote(v[0]) - return parameters - _split_url_string = staticmethod(_split_url_string) - -class OAuthServer(object): - """A worker to check the validity of a request against a data store.""" - timestamp_threshold = 300 # In seconds, five minutes. - version = VERSION - signature_methods = None - data_store = None - - def __init__(self, data_store=None, signature_methods=None): - self.data_store = data_store - self.signature_methods = signature_methods or {} - - def set_data_store(self, data_store): - self.data_store = data_store - - def get_data_store(self): - return self.data_store - - def add_signature_method(self, signature_method): - self.signature_methods[signature_method.get_name()] = signature_method - return self.signature_methods - - def fetch_request_token(self, oauth_request): - """Processes a request_token request and returns the - request token on success. - """ - try: - # Get the request token for authorization. - token = self._get_token(oauth_request, 'request') - except OAuthError: - # No token required for the initial token request. - version = self._get_version(oauth_request) - consumer = self._get_consumer(oauth_request) - try: - callback = self.get_callback(oauth_request) - except OAuthError: - callback = None # 1.0, no callback specified. - self._check_signature(oauth_request, consumer, None) - # Fetch a new token. - token = self.data_store.fetch_request_token(consumer, callback) - return token - - def fetch_access_token(self, oauth_request): - """Processes an access_token request and returns the - access token on success. - """ - version = self._get_version(oauth_request) - consumer = self._get_consumer(oauth_request) - try: - verifier = self._get_verifier(oauth_request) - except OAuthError: - verifier = None - # Get the request token. - token = self._get_token(oauth_request, 'request') - self._check_signature(oauth_request, consumer, token) - new_token = self.data_store.fetch_access_token(consumer, token, verifier) - return new_token - - def verify_request(self, oauth_request): - """Verifies an api call and checks all the parameters.""" - # -> consumer and token - version = self._get_version(oauth_request) - consumer = self._get_consumer(oauth_request) - # Get the access token. - token = self._get_token(oauth_request, 'access') - self._check_signature(oauth_request, consumer, token) - parameters = oauth_request.get_nonoauth_parameters() - return consumer, token, parameters - - def authorize_token(self, token, user): - """Authorize a request token.""" - return self.data_store.authorize_request_token(token, user) - - def get_callback(self, oauth_request): - """Get the callback URL.""" - return oauth_request.get_parameter('oauth_callback') - - def build_authenticate_header(self, realm=''): - """Optional support for the authenticate header.""" - return {'WWW-Authenticate': 'OAuth realm="%s"' % realm} - - def _get_version(self, oauth_request): - """Verify the correct version request for this server.""" - try: - version = oauth_request.get_parameter('oauth_version') - except: - version = VERSION - if version and version != self.version: - raise OAuthError('OAuth version %s not supported.' % str(version)) - return version - - def _get_signature_method(self, oauth_request): - """Figure out the signature with some defaults.""" - try: - signature_method = oauth_request.get_parameter( - 'oauth_signature_method') - except: - signature_method = SIGNATURE_METHOD - try: - # Get the signature method object. - signature_method = self.signature_methods[signature_method] - except: - signature_method_names = ', '.join(self.signature_methods.keys()) - raise OAuthError('Signature method %s not supported try one of the ' - 'following: %s' % (signature_method, signature_method_names)) - - return signature_method - - def _get_consumer(self, oauth_request): - consumer_key = oauth_request.get_parameter('oauth_consumer_key') - consumer = self.data_store.lookup_consumer(consumer_key) - if not consumer: - raise OAuthError('Invalid consumer.') - return consumer - - def _get_token(self, oauth_request, token_type='access'): - """Try to find the token for the provided request token key.""" - token_field = oauth_request.get_parameter('oauth_token') - token = self.data_store.lookup_token(token_type, token_field) - if not token: - raise OAuthError('Invalid %s token: %s' % (token_type, token_field)) - return token - - def _get_verifier(self, oauth_request): - return oauth_request.get_parameter('oauth_verifier') - - def _check_signature(self, oauth_request, consumer, token): - timestamp, nonce = oauth_request._get_timestamp_nonce() - self._check_timestamp(timestamp) - self._check_nonce(consumer, token, nonce) - signature_method = self._get_signature_method(oauth_request) - try: - signature = oauth_request.get_parameter('oauth_signature') - except: - raise OAuthError('Missing signature.') - # Validate the signature. - valid_sig = signature_method.check_signature(oauth_request, consumer, - token, signature) - if not valid_sig: - key, base = signature_method.build_signature_base_string( - oauth_request, consumer, token) - raise OAuthError('Invalid signature. Expected signature base ' - 'string: %s' % base) - built = signature_method.build_signature(oauth_request, consumer, token) - - def _check_timestamp(self, timestamp): - """Verify that timestamp is recentish.""" - timestamp = int(timestamp) - now = int(time.time()) - lapsed = abs(now - timestamp) - if lapsed > self.timestamp_threshold: - raise OAuthError('Expired timestamp: given %d and now %s has a ' - 'greater difference than threshold %d' % - (timestamp, now, self.timestamp_threshold)) - - def _check_nonce(self, consumer, token, nonce): - """Verify that the nonce is uniqueish.""" - nonce = self.data_store.lookup_nonce(consumer, token, nonce) - if nonce: - raise OAuthError('Nonce already used: %s' % str(nonce)) - - -class OAuthClient(object): - """OAuthClient is a worker to attempt to execute a request.""" - consumer = None - token = None - - def __init__(self, oauth_consumer, oauth_token): - self.consumer = oauth_consumer - self.token = oauth_token - - def get_consumer(self): - return self.consumer - - def get_token(self): - return self.token - - def fetch_request_token(self, oauth_request): - """-> OAuthToken.""" - raise NotImplementedError - - def fetch_access_token(self, oauth_request): - """-> OAuthToken.""" - raise NotImplementedError - - def access_resource(self, oauth_request): - """-> Some protected resource.""" - raise NotImplementedError - - -class OAuthDataStore(object): - """A database abstraction used to lookup consumers and tokens.""" - - def lookup_consumer(self, key): - """-> OAuthConsumer.""" - raise NotImplementedError - - def lookup_token(self, oauth_consumer, token_type, token_token): - """-> OAuthToken.""" - raise NotImplementedError - - def lookup_nonce(self, oauth_consumer, oauth_token, nonce): - """-> OAuthToken.""" - raise NotImplementedError - - def fetch_request_token(self, oauth_consumer, oauth_callback): - """-> OAuthToken.""" - raise NotImplementedError - - def fetch_access_token(self, oauth_consumer, oauth_token, oauth_verifier): - """-> OAuthToken.""" - raise NotImplementedError - - def authorize_request_token(self, oauth_token, user): - """-> OAuthToken.""" - raise NotImplementedError - - -class OAuthSignatureMethod(object): - """A strategy class that implements a signature method.""" - def get_name(self): - """-> str.""" - raise NotImplementedError - - def build_signature_base_string(self, oauth_request, oauth_consumer, oauth_token): - """-> str key, str raw.""" - raise NotImplementedError - - def build_signature(self, oauth_request, oauth_consumer, oauth_token): - """-> str.""" - raise NotImplementedError - - def check_signature(self, oauth_request, consumer, token, signature): - built = self.build_signature(oauth_request, consumer, token) - return built == signature - - -class OAuthSignatureMethod_HMAC_SHA1(OAuthSignatureMethod): - - def get_name(self): - return 'HMAC-SHA1' - - def build_signature_base_string(self, oauth_request, consumer, token): - sig = ( - escape(oauth_request.get_normalized_http_method()), - escape(oauth_request.get_normalized_http_url()), - escape(oauth_request.get_normalized_parameters()), - ) - - key = '%s&' % escape(consumer.secret) - if token: - key += escape(token.secret) - raw = '&'.join(sig) - return key, raw - - def build_signature(self, oauth_request, consumer, token): - """Builds the base signature string.""" - key, raw = self.build_signature_base_string(oauth_request, consumer, - token) - - # HMAC object. - try: - import hashlib # 2.5 - hashed = hmac.new(key, raw, hashlib.sha1) - except: - import sha # Deprecated - hashed = hmac.new(key, raw, sha) - - # Calculate the digest base 64. - return binascii.b2a_base64(hashed.digest())[:-1] - - -class OAuthSignatureMethod_PLAINTEXT(OAuthSignatureMethod): - - def get_name(self): - return 'PLAINTEXT' - - def build_signature_base_string(self, oauth_request, consumer, token): - """Concatenates the consumer key and secret.""" - sig = '%s&' % escape(consumer.secret) - if token: - sig = sig + escape(token.secret) - return sig, sig - - def build_signature(self, oauth_request, consumer, token): - key, raw = self.build_signature_base_string(oauth_request, consumer, - token) - return key \ No newline at end of file diff -r e6b328970ee8 -r ffb0a6d08000 script/lib/tweetstream/tweetstream/streamclasses.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/script/lib/tweetstream/tweetstream/streamclasses.py Wed Jul 27 12:25:45 2011 +0200 @@ -0,0 +1,190 @@ +from . import AuthenticationError, ConnectionError, USER_AGENT +import anyjson +import socket +import time +import urllib +import urllib2 +socket._fileobject.default_bufsize = 0 + + +class BaseStream(object): + """A network connection to Twitters streaming API + + :param auth: tweepy auth object. + :keyword catchup: Number of tweets from the past to get before switching to + live stream. + :keyword url: Endpoint URL for the object. Note: you should not + need to edit this. It's present to make testing easier. + + .. attribute:: connected + + True if the object is currently connected to the stream. + + .. attribute:: url + + The URL to which the object is connected + + .. attribute:: starttime + + The timestamp, in seconds since the epoch, the object connected to the + streaming api. + + .. attribute:: count + + The number of tweets that have been returned by the object. + + .. attribute:: rate + + The rate at which tweets have been returned from the object as a + float. see also :attr: `rate_period`. + + .. attribute:: rate_period + + The ammount of time to sample tweets to calculate tweet rate. By + default 10 seconds. Changes to this attribute will not be reflected + until the next time the rate is calculated. The rate of tweets vary + with time of day etc. so it's usefull to set this to something + sensible. + + .. attribute:: user_agent + + User agent string that will be included in the request. NOTE: This can + not be changed after the connection has been made. This property must + thus be set before accessing the iterator. The default is set in + :attr: `USER_AGENT`. + """ + + def __init__(self, auth, catchup=None, url=None): + self._conn = None + self._rate_ts = None + self._rate_cnt = 0 + self._auth = auth + self._catchup_count = catchup + + self.rate_period = 10 # in seconds + self.connected = False + self.starttime = None + self.count = 0 + self.rate = 0 + self.user_agent = USER_AGENT + if url: self.url = url + + self.muststop = False + + def __iter__(self): + return self + + def __enter__(self): + return self + + def __exit__(self, *params): + self.close() + return False + + def _init_conn(self): + """Open the connection to the twitter server""" + headers = {'User-Agent': self.user_agent} + + postdata = self._get_post_data() or {} + if self._catchup_count: + postdata["count"] = self._catchup_count + + poststring = urllib.urlencode(postdata) if postdata else None + + if self._auth: + self._auth.apply_auth(self.url, "POST", headers, postdata) + + req = urllib2.Request(self.url, poststring, headers) + + try: + self._conn = urllib2.urlopen(req) + except urllib2.HTTPError, exception: + if exception.code == 401: + raise AuthenticationError("Access denied") + elif exception.code == 404: + raise ConnectionError("URL not found: %s" % self.url) + else: # re raise. No idea what would cause this, so want to know + raise + except urllib2.URLError, exception: + raise ConnectionError(exception.reason) + + self.connected = True + if not self.starttime: + self.starttime = time.time() + if not self._rate_ts: + self._rate_ts = time.time() + + def _get_post_data(self): + """Subclasses that need to add post data to the request can override + this method and return post data. The data should be in the format + returned by urllib.urlencode.""" + return None + + def next(self): + """Return the next available tweet. This call is blocking!""" + while True: + try: + if self.muststop: + raise StopIteration() + + if not self.connected: + self._init_conn() + + rate_time = time.time() - self._rate_ts + if not self._rate_ts or rate_time > self.rate_period: + self.rate = self._rate_cnt / rate_time + self._rate_cnt = 0 + self._rate_ts = time.time() + + data = self._conn.readline() + if data == "": # something is wrong + self.close() + raise ConnectionError("Got entry of length 0. Disconnected") + elif data.isspace(): + continue + + data = anyjson.deserialize(data) + if 'text' in data: + self.count += 1 + self._rate_cnt += 1 + return data + + except ValueError, e: + self.close() + raise ConnectionError("Got invalid data from twitter", + details=data) + + except socket.error, e: + self.close() + raise ConnectionError("Server disconnected") + + def close(self): + """ + Close the connection to the streaming server. + """ + self.connected = False + if self._conn: + self._conn.close() + + +class SampleStream(BaseStream): + url = "http://stream.twitter.com/1/statuses/sample.json" + + +class FilterStream(BaseStream): + url = "http://stream.twitter.com/1/statuses/filter.json" + + def __init__(self, auth, follow=None, locations=None, + track=None, catchup=None, url=None): + self._follow = follow + self._locations = locations + self._track = track + # remove follow, locations, track + BaseStream.__init__(self, auth, url=url) + + def _get_post_data(self): + postdata = {} + if self._follow: postdata["follow"] = ",".join([str(e) for e in self._follow]) + if self._locations: postdata["locations"] = ",".join(self._locations) + if self._track: postdata["track"] = ",".join(self._track) + return postdata diff -r e6b328970ee8 -r ffb0a6d08000 script/stream/recorder_tweetstream.py --- a/script/stream/recorder_tweetstream.py Wed Jul 27 12:24:43 2011 +0200 +++ b/script/stream/recorder_tweetstream.py Wed Jul 27 12:25:45 2011 +0200 @@ -8,8 +8,9 @@ import os import socket import sys +import time import tweetstream -import tweetstream.auth +import tweepy.auth socket._fileobject.default_bufsize = 0 @@ -21,7 +22,7 @@ #just put it in a sqlite3 tqble -class ReconnectingTweetStream(tweetstream.TrackStream): +class ReconnectingTweetStream(tweetstream.FilterStream): """TweetStream class that automatically tries to reconnect if the connecting goes down. Reconnecting, and waiting for reconnecting, is blocking. @@ -43,12 +44,12 @@ """ - def __init__(self, auth, keywords, url="track", reconnects=3, error_cb=None, retry_wait=5, **kwargs): + def __init__(self, auth, keywords, reconnects=3, error_cb=None, retry_wait=5, **kwargs): self.max_reconnects = reconnects self.retry_wait = retry_wait self._reconnects = 0 self._error_cb = error_cb - super(ReconnectingTweetStream, self).__init__(auth, keywords, url, **kwargs) + super(ReconnectingTweetStream, self).__init__(auth=auth, track=keywords, **kwargs) def next(self): while True: @@ -89,11 +90,11 @@ track_list = [k for k in track_list.split(',')] if username and password: - auth = tweetstream.auth.BasicAuthHandler(username, password) + auth = tweepy.auth.BasicAuthHandler(username, password) else: consumer_key = models.CONSUMER_KEY consumer_secret = models.CONSUMER_SECRET - auth = tweetstream.auth.OAuthHandler(consumer_key, consumer_secret, secure=False) + auth = tweepy.auth.OAuthHandler(consumer_key, consumer_secret, secure=False) auth.set_access_token(*(utils.get_oauth_token(token_filename))) if duration >= 0: @@ -106,6 +107,7 @@ print "Stop recording after %d seconds." % (duration) break process_tweet(tweet, session, debug, token_filename) + logging.info("Tweet count: %d - current rate : %.2f - running : %s"%(stream.count, stream.rate, int(time.time()-stream.starttime))) session.commit() finally: stream.close() @@ -149,7 +151,7 @@ if options.new and os.path.exists(options.filename): os.remove(options.filename) - engine, metadata = models.setup_database('sqlite:///' + options.filename, echo=(options.debug)) + engine, metadata = models.setup_database('sqlite:///' + options.filename, echo=(options.debug>=2)) Session = sessionmaker(bind=engine) session = Session() diff -r e6b328970ee8 -r ffb0a6d08000 script/virtualenv/res/tweepy.tar.gz Binary file script/virtualenv/res/tweepy.tar.gz has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/.htaccess.tmpl --- a/web/.htaccess.tmpl Wed Jul 27 12:24:43 2011 +0200 +++ b/web/.htaccess.tmpl Wed Jul 27 12:25:45 2011 +0200 @@ -1,1 +1,8 @@ -php_value include_path ".:/Users/cybunk/WORK/IRI/REPO_TWEET_LIVE/web/lib/" \ No newline at end of file +php_value include_path ".:/Users/cybunk/WORK/IRI/REPO_TWEET_LIVE/web/lib/" + +RewriteEngine on +RewriteBase / +RewriteCond %{REQUEST_FILENAME} !-f +RewriteCond %{REQUEST_FILENAME} !-d +RewriteRule (.+)/([\w-]+)\.php$ ~ymh/tweet_live/$2.php?rep=$1 [QSA,L] + diff -r e6b328970ee8 -r ffb0a6d08000 web/CPV/callback.php --- a/web/CPV/callback.php Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,34 +0,0 @@ -getAccessToken($_GET, unserialize($_SESSION['TWITTER_REQUEST_TOKEN'])); - $_SESSION['TWITTER_ACCESS_TOKEN'] = serialize($token); - - /** - * Now that we have an Access Token, we can discard the Request Token - */ - $_SESSION['TWITTER_REQUEST_TOKEN'] = null; - - /** - * With Access Token in hand, let's try accessing the client again - */ - header('Location: ' . URL_ROOT ); -} else { - /** - * Mistaken request? Some malfeasant trying something? - */ - exit('Invalid callback request. Oops. Sorry.'); -} diff -r e6b328970ee8 -r ffb0a6d08000 web/CPV/clear.php --- a/web/CPV/clear.php Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,17 +0,0 @@ -getRequestToken(); - $_SESSION['TWITTER_REQUEST_TOKEN'] = serialize($token); - - /** - * Now redirect user to Twitter site so they can log in and - * approve our access - */ - $consumer->redirect(); -} - - -?> - - - - - - - CPV - Live Video and Annotation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - -
-
- -
- -
- -
- -
-
-
-
- Les Stratégies Virtuelles des Musées : l'Heure de Vérité
-
-

JEUDI 26 MAI 2011


-

DE 10H A 13H
-PETITE SALLE, NIVEAU -1


-Intervenants :
-Carlo d'Asaro Biondo, vice-président de Google
-Franck Riester, député de Seine-et-Marne
-Marc Sands, directeur des publics et de l'information, Tate Gallery, Londres
-Alain Seban, président du Centre Pompidou
-Bernard Stiegler, philosophe et directeur de l'Institut de Recherche et d'Innovation (IRI)

-Animée par Brice Couturier, écrivain et producteur à France Culture

-La table ronde sera suivie d'un déjeuner-buffet


-RSVP: rp@centrepompidou.fr ou 01 44 78 15 05 -
- - -
- - "); - }else{ - echo(""); - } - ?> - - -
- _("Envoyé"); ?>

-
- -
- _("Erreur1"); ?>
 


-
- - - - - _("Envoyer"); ?> - - ++ - -- - == - ?? - -
- -
- -
- - - - - - - -
-
-
-
 
-
_("splatchPageTitle"); ?>
-
_("splatchPageText"); ?>
-
-
- _("S'identifier"); ?>

- _("Libre accès"); ?> -
-
-
-
- - - - - diff -r e6b328970ee8 -r ffb0a6d08000 web/CPV/common.php --- a/web/CPV/common.php Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,108 +0,0 @@ -addTranslation($english, 'en'); -$translate->addTranslation($japan, 'ja_JP'); -$translate->addTranslation($french, 'fr'); - -$actual = $translate->getLocale(); - -//$translate->setLocale("en"); -// $acceptCookie = $this->_request->getCookie('acceptCookie',0); - -if(isset($_GET['lang'])==false and isset($_SESSION['lang'])==false){ - - if($actual!='fr' and $actual!='en' and $actual!='ja_JP'){ - $translate->setLocale("fr"); - $_SESSION['lang']="fr"; - } - -} else if (isset($_GET['lang'])==true){ - $translate->setLocale($_GET['lang']); - $_SESSION['lang'] = $_GET['lang']; - $actual = $_SESSION['lang']; - -} else if (isset($_SESSION['lang'])==true){ - $translate->setLocale( $_SESSION['lang']); - $actual = $_SESSION['lang']; - -} - -/* NEXT CONFERENCE AND CLIENT PAGE INFORMATION -*/ -/* CLIENT VAR LIVE */ - -$C_hashtag = "#SNCP"; -$C_link = "http://www.iri.centrepompidou.fr/evenement/atelier-preparatoire-aux-entretiens-du-nouveau-monde-industriel-technologies-de-la-confiance/"; -$C_title = "Les Stratégies Virtuelles des Musées : l'Heure de Vérité"; -$C_abstract = "Les Stratégies Virtuelles des Musées : l'Heure de Vérité"; -$C_REP = "CPV/"; -$C_description = "

JEUDI 26 MAI 2011


-

DE 10H A 13H
-PETITE SALLE, NIVEAU -1


-Intervenants :
-Carlo d'Asaro Biondo, vice-président de Google
-Franck Riester, député de Seine-et-Marne
-Marc Sands, directeur des publics et de l'information, Tate Gallery, Londres
-Alain Seban, président du Centre Pompidou
-Bernard Stiegler, philosophe et directeur de l'Institut de Recherche et d'Innovation (IRI)

-Animée par Brice Couturier, écrivain et producteur à France Culture

-La table ronde sera suivie d'un déjeuner-buffet


-RSVP: rp@centrepompidou.fr ou 01 44 78 15 05"; - -$C_partenaires = " IRI - | Centre Pompidou "; - - diff -r e6b328970ee8 -r ffb0a6d08000 web/CPV/config.php --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/web/CPV/config.php Wed Jul 27 12:25:45 2011 +0200 @@ -0,0 +1,53 @@ + '#SNCP', + 'date' => '26.05.2011', + 'heure' => '10h00 - 13h00', + 'place' => 'Petite salle - Centre Pompidou', + 'title' => "Les Stratégies Virtuelles des Musées : l'Heure de Vérité", + 'abstract' => '', + 'description'=> "

JEUDI 26 MAI 2011


+

DE 10H A 13H
+PETITE SALLE, NIVEAU -1


+Intervenants :
+Carlo d'Asaro Biondo, vice-président de Google
+Franck Riester, député de Seine-et-Marne
+Marc Sands, directeur des publics et de l'information, Tate Gallery, Londres
+Alain Seban, président du Centre Pompidou
+Bernard Stiegler, philosophe et directeur de l'Institut de Recherche et d'Innovation (IRI)

+Animée par Brice Couturier, écrivain et producteur à France Culture

+La table ronde sera suivie d'un déjeuner-buffet


+RSVP: rp@centrepompidou.fr ou 01 44 78 15 05", + + 'link' => 'http://www.centrepompidou.fr/', + 'keywords' => 'Centre Pompidou, musée, muséologie', + 'rep' => 'CPV', + 'islive' => true, + 'partenaires'=> " IRI + | Centre Pompidou ", + +// After the event + 'metadata' => "http://www.iri.centrepompidou.fr/dev/ldt/ldtplatform/ldt/cljson/id/6604ad3a-90ea-11e0-9de5-00145ea49a02", + 'player' => "res/metadataplayer/src/js/LdtPlayer.js", + 'duration' => "7697560", + 'client_visual' => 'images/big_visuel_mb.jpg', // optional - relative path + 'head_logo' => 'images/head_logo.gif', // optional - relative path + 'slide_background' => 'images/slide4.jpg', + 'archive_img' => 'images/tail_cpv.png', + 'archive_title' => "Les Stratégies Virtuelles des Musées...", + 'archive_description' => 'par CPV au Centre Pompidou
le jeudi 26 mai 2011 | 10:00 - 13:00', + + + 'div_height' => 670, + 'player_width' => 650, + 'player_height' => 500, +); + +?> \ No newline at end of file diff -r e6b328970ee8 -r ffb0a6d08000 web/CPV/config.php.tmpl --- a/web/CPV/config.php.tmpl Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,30 +0,0 @@ - 'http://amateur.iri.centrepompidou.fr/live/callback.php', - 'callbackUrl' => 'http://localhost/~ymh/tweet_live/callback.php', - 'siteUrl' => 'http://twitter.com/oauth', - 'consumerKey' => '***REMOVED***', - 'consumerSecret' => '***REMOVED***' -); - -$config = array( - 'duration' => '7697560', - 'metadata' => "http://www.iri.centrepompidou.fr/dev/ldt/ldtplatform/ldt/cljson/id/6604ad3a-90ea-11e0-9de5-00145ea49a02", - 'player' => "res/metadataplayer/src/js/LdtPlayer.js", - 'root' => 'http://polemictweet.com/', - 'rep' => 'CPV', - 'link' => 'http://www.centrepompidou.fr/', - 'title' => "Les Stratégies Virtuelles des Musées : l'Heure de Vérité" -); - -$player_width = 600; -$player_height = 480; diff -r e6b328970ee8 -r ffb0a6d08000 web/CPV/embed_form.php --- a/web/CPV/embed_form.php Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,100 +0,0 @@ - - - - - - embed Configuration - - - - - - - - - - - - - - - - -

_("EmbedTitle"); ?>

- -

_("EmbedText"); ?>

- - - - diff -r e6b328970ee8 -r ffb0a6d08000 web/CPV/images/tail_cpv.png Binary file web/CPV/images/tail_cpv.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/CPV/images/tweetExplainBgd.gif Binary file web/CPV/images/tweetExplainBgd.gif has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/CPV/player_embed.php --- a/web/CPV/player_embed.php Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,138 +0,0 @@ - - - - - - RSLN - Polemic player embed page - - - - - - - - - - - - - - - - - - - -
-
-
-
- -
-
-
- - - -
- - -
-
- - diff -r e6b328970ee8 -r ffb0a6d08000 web/CPV/polemicaltimeline.php --- a/web/CPV/polemicaltimeline.php Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,222 +0,0 @@ - - - - - - Polemic tweet - <?php echo($config['title']); ?> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
-
-
- -
- - - - - - -
-

_("ClientTitle1 :"); ?>


- _("ExplicationPT"); ?> -
- - - - - - - -
-
- -
- - - - - -
- -
-
- - - - -
- - - diff -r e6b328970ee8 -r ffb0a6d08000 web/about.php --- a/web/about.php Wed Jul 27 12:24:43 2011 +0200 +++ b/web/about.php Wed Jul 27 12:25:45 2011 +0200 @@ -14,56 +14,26 @@ ENMI 2010 - Live Video and Annotation - - - - - - - - - - - - - - - - - - - - + + + + + - - +
+ -
- - -
-
-
-
ENMI 2010
-
Annotation critique par tweet
-
À partir de cette interface ou de votre client twitter habituel, vous pouvez réagir en direct aux conférences en twittant. Vos tweets seront synchronisés avec l'enregistrement des conférences. Vous pourrez qualifier vos tweets en y intégrant la syntaxe ci-contre. -
-
-
- S'identifier

- Libre accès -
-
-
-
- diff -r e6b328970ee8 -r ffb0a6d08000 web/archives.php --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/web/archives.php Wed Jul 27 12:25:45 2011 +0200 @@ -0,0 +1,114 @@ + + + + + + Polemic tweet - Live Video and Annotation + + + + + + + + + + + + + ' rel='stylesheet' type='text/css'> + ' rel='stylesheet' type='text/css'> + ' rel='stylesheet' type='text/css'> + + + + +
+
+ + + + + + +
+
+ +
+
+ +

_("Archive Title :"); ?>

+ +
+ +
+
+
+ + + + +
+ + + diff -r e6b328970ee8 -r ffb0a6d08000 web/callback.php --- a/web/callback.php Wed Jul 27 12:24:43 2011 +0200 +++ b/web/callback.php Wed Jul 27 12:25:45 2011 +0200 @@ -4,7 +4,14 @@ * include some common code (like we did in the 90s) * People still do this? ;) */ -include_once './common.php'; +include_once 'common.php'; +if(!isset($_REQUEST['rep'])) { + $rep = $C_default_rep; +} +else { + $rep = $_REQUEST['rep']; +} + /** * Someone's knocking at the door using the Callback URL - if they have @@ -25,7 +32,7 @@ /** * With Access Token in hand, let's try accessing the client again */ - header('Location: ' . URL_ROOT ); + header('Location: ' . URL_ROOT . "$rep/client.php" ); } else { /** * Mistaken request? Some malfeasant trying something? diff -r e6b328970ee8 -r ffb0a6d08000 web/clear.php --- a/web/clear.php Wed Jul 27 12:24:43 2011 +0200 +++ b/web/clear.php Wed Jul 27 12:25:45 2011 +0200 @@ -4,7 +4,14 @@ * include some common code (like we did in the 90s) * People still do this? ;) */ -include_once './common.php'; +include_once 'common.php'; +if(!isset($_REQUEST['rep'])) { + $rep = $C_default_rep; +} +else { + $rep = $_REQUEST['rep']; +} + /** * Clear the Access Token to force the OAuth protocol to rerun @@ -14,4 +21,4 @@ /** * Redirect back to index and the protocol legs should run once again */ -header('Location: ' . URL_ROOT); +header('Location: ' . URL_ROOT . "$rep/client.php"); diff -r e6b328970ee8 -r ffb0a6d08000 web/client.php --- a/web/client.php Wed Jul 27 12:24:43 2011 +0200 +++ b/web/client.php Wed Jul 27 12:25:45 2011 +0200 @@ -1,10 +1,15 @@ - - - - - - - + + + + + + - - - - - + + + + - - - + ' rel='stylesheet' type='text/css'> + ' rel='stylesheet' type='text/css'> + ' rel='stylesheet' type='text/css'> - - - - - - - - - - - - - - - - -
- - - - - - - -
-
- - - - - - - - - -
- -
- -
- -
-
-
-
-
-
-
- - -
- - "); - }else{ - echo(""); - } - ?> - - -
- _("Envoyé"); ?>

-
- -
- _("Erreur1"); ?>
 


-
- - - - - _("Envoyer"); ?> - - ++ - -- - == - ?? - -
- -
- -
- - - - - - - -
-
-
-
 
-
_("splatchPageTitle"); ?>
-
_("splatchPageText"); ?>
-
-
- _("S'identifier"); ?>

- _("Libre accès"); ?> -
-
-
-
- - - - - diff -r e6b328970ee8 -r ffb0a6d08000 web/common.php --- a/web/common.php Wed Jul 27 12:24:43 2011 +0200 +++ b/web/common.php Wed Jul 27 12:25:45 2011 +0200 @@ -10,8 +10,27 @@ . PATH_SEPARATOR . get_include_path() ); +/** +* Base configuration +*/ +$C_default_rep = 'sig-chi-paris-2011'; + +$configuration = array( + 'siteUrl' => 'http://twitter.com/oauth', + 'consumerKey' => '***REMOVED***', + 'consumerSecret' => '***REMOVED***' +); + + +$req_rep = $C_default_rep; +if(isset($config) && isset($config['rep'])) { + $req_rep = $config['rep']; +} include_once dirname(__FILE__).'/traduction.php'; +if(file_exists(dirname(__FILE__)."/$req_rep/traduction.php")) { + include_once dirname(__FILE__)."/$req_rep/traduction.php"; +} /** @@ -34,6 +53,10 @@ * Include the configuration data for our OAuth Client (array $configuration) */ include_once dirname(__FILE__).'/config.php'; + + +$configuration['callbackUrl'] = URL_ROOT."$req_rep/callback.php"; + /** * Setup an instance of the Consumer for use @@ -79,37 +102,149 @@ } -/* NEXT CONFERENCE AND CLIENT PAGE INFORMATION -*/ -/* CLIENT VAR LIVE */ +$js_registry = array( + 'local' => array( + 'jquery' => URL_ROOT.'res/js/jquery-1.4.3.min.js', + 'raphael' => URL_ROOT.'res/raphael/raphael-min.js', + 'jquery-ui' => URL_ROOT.'res/js/jquery-ui-1.8.13.min.js', + 'niceforms' => URL_ROOT.'res/niceforms/niceforms.js', + 'jquery-url' => URL_ROOT.'res/js/jquery.url.js', + 'ldtplayer' => URL_ROOT.'res/metadataplayer/src/js/LdtPlayer.js', + 'fancybox' => URL_ROOT.'res/jquery.fancybox/fancybox/jquery.fancybox-1.3.4.pack.js', + 'jquery-tools' => URL_ROOT.'res/metadataplayer/res/js/jquery.tools.min.js', + 'tw-widget' => URL_ROOT.'res/js/tw_widget.js', + 'jquery-mousewheel' => URL_ROOT.'res/jquery.fancybox/fancybox/jquery.mousewheel-3.0.4.pack.js', + 'swfobject' => 'http://ajax.googleapis.com/ajax/libs/swfobject/2.2/swfobject.js', + ), + 'cdn' => array( + 'jquery' => 'http://ajax.googleapis.com/ajax/libs/jquery/1.4.3/jquery.min.js', + 'raphael' => URL_ROOT.'res/raphael/raphael-min.js', + 'jquery-ui' => 'https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.13/jquery-ui.min.js', + 'niceforms' => URL_ROOT.'res/niceforms/niceforms.js', + 'jquery-url' => URL_ROOT.'res/js/jquery.url.js', + 'ldtplayer' => URL_ROOT.'res/metadataplayer/src/js/LdtPlayer.js', + 'fancybox' => URL_ROOT.'res/jquery.fancybox/fancybox/jquery.fancybox-1.3.4.pack.js', + 'jquery-tools' => 'http://cdn.jquerytools.org/1.2.4/all/jquery.tools.min.js', + 'tw-widget' => 'http://widgets.twimg.com/j/2/widget.js', + 'jquery-mousewheel' => URL_ROOT.'res/jquery.fancybox/fancybox/jquery.mousewheel-3.0.4.pack.js', + 'swfobject' => 'http://ajax.googleapis.com/ajax/libs/swfobject/2.2/swfobject.js', + ) +); -$C_hashtag = "#mashup"; -$C_link = "http://www.forumdesimages.fr/fdi/Festivals-et-evenements/mashup-Film-Festival/Mashup-remix-detournements-nouveaux-usages-des-images-sur-les-reseaux-sociaux"; -$C_title = "Mashup, remix, détournements : nouveaux usages des images sur les réseaux sociaux"; -$C_abstract = "Mashup, remix, détournements Conférence Laurence Allard -25 Juin à 15h Salle Piazza -au Forum des Images"; -$C_REP = "mashup/"; -$C_description = " - Par le biais d'internet, les individus expriment, - à leurs proches ou à des publics lointains, - leurs opinions ou leurs goûts en faisant leurs des contenus qu'ils apprécient ou qui les révoltent. - Quelques uns vont s'exprimer en partageant ou commentant ces contenus tandis que d'autres - iront plus loin dans l'appropriation en transformant à des degrés divers - des images sons ou textes à travers lesquels ils vont dire quelque chose - d'eux-mêmes et de leurs relations au monde. Ce sont de telles pratiques de remixes - qui seront présentées pour comprendre ce qui se dit ainsi sur Internet. - Détourner pour protester ou au contraire exprimer une passion ; - re-créer pour raconter autrement des événements ou les mashuper pour en montrer le non sens... - Différents procédés et différents discours que cette conférence nourrie de nombreux exemples historiques et contemporains, - issus d'artistes ou d'internautes ordinaires, se proposent de mettre en lumière. -

- Laurence Allard, sociologue et sémiologue est maître de conférences à l'université de Lille III, UFR Arts et Culture. - Elle s'intéresse particulièrement aux relations entre culture, politique et technique (p2p, blogs, creative commons, artivisme...) en mobilisant les apports des gender, cultural et post colonial studies."; - -$C_partenaires = " IRI - | Forum des images - | Inflammable "; -$C_islive = false; +$font_registry = array( + 'local' => array( + 'PT-Sans_Narrow' => URL_ROOT.'res/fonts/PT_Sans-Narrow-Web-Regular.css', + 'PT-Sans' => URL_ROOT.'res/fonts/PT_Sans-Web-Regular.css', + 'Geo' => URL_ROOT.'res/fonts/Geo-Regular.css' + ), + 'cdn' => array( + 'PT-Sans_Narrow' => 'http://fonts.googleapis.com/css?family=PT+Sans+Narrow&subset=latin', + 'PT-Sans' => 'http://fonts.googleapis.com/css?family=PT+Sans&subset=latin', + 'Geo' => 'http://fonts.googleapis.com/css?family=Geo&subset=latin' + ) +); +$css_registry = array( + 'local' => array( + 'blueprint-screen' => URL_ROOT.'res/blueprint/screen.css', + 'blueprint-print' => URL_ROOT.'res/blueprint/print.css', + 'blueprint-ie' => URL_ROOT.'res/blueprint/ie.css', + 'blueprint-plugins-fancy-type' => URL_ROOT.'res/blueprint/plugins/fancy-type/screen.css', + 'custom' => URL_ROOT.'res/css/custom.css', + 'fancybox' => URL_ROOT.'res/jquery.fancybox/fancybox/jquery.fancybox-1.3.4.css', + 'jquery-ui' => "http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.13/themes/base/jquery-ui.css", + 'tabs-slideshow' => URL_ROOT.'res/css/tabs-slideshow.css', + ), + 'cdn' => array( + 'blueprint-screen' => URL_ROOT.'res/blueprint/screen.css', + 'blueprint-print' => URL_ROOT.'res/blueprint/print.css', + 'blueprint-ie' => URL_ROOT.'res/blueprint/ie.css', + 'blueprint-plugins-fancy-type' => URL_ROOT.'res/blueprint/plugins/fancy-type/screen.css', + 'custom' => URL_ROOT.'res/css/custom.css', + 'fancybox' => URL_ROOT.'res/jquery.fancybox/fancybox/jquery.fancybox-1.3.4.css', + 'jquery-ui' => "http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.13/themes/base/jquery-ui.css", + 'tabs-slideshow' => URL_ROOT.'res/css/tabs-slideshow.css', + ) +); + +$archives_list = array( + "rsln", "rsln-opendata", "rsln-mercedes-bunz", + "enmi2011-technologie-confiance", "CPV", "fens_FabLab_Design_Metadata", + array("mashup","conference"), array("mashup","tableronde"), "sig-chi-paris-2011" +); + +function registry_url($key, $type, $registry_def=null) { + + global $js_registry, $font_registry, $css_registry, $C_default_registry; + + if($registry_def != null) { + $registry = $registry_def; + } + elseif(isset($C_default_registry)) { + $registry = $C_default_registry; + } + else { + $registry = 'local'; + } + $registry_name = $type."_registry"; + return ${ + $registry_name}[$registry][$key]; + +} + +function get_archive_box($rep, $metadata, $url_root, $basepath) { + + include("$basepath$rep/config.php"); + + $id = "abox_$rep".(($metadata!=null)?"_$metadata":""); + $hash = ($metadata!=null)?"#metadata=$metadata":""; + $tail_img = $config['archive_img']; + if(is_array($tail_img)) { + $tail_img = $tail_img[$metadata]; + } + $archive_title = $config['archive_title']; + if(is_array($archive_title)) { + $archive_title = $archive_title[$metadata]; + } + $archive_description = $config['archive_description']; + if(is_array($archive_description)) { + $archive_description = $archive_description[$metadata]; + } + + + $res = "
\n"; + $res .= " \n"; + $res .= " "; + $res .= " "; + $res .= "
$archive_title
\n"; + $res .= "
\n"; + $res .= " $archive_description\n"; + $res .= "
\n"; + $res .= "
\n"; + + return $res; + +} + +function display_archives_list($archives_list, $box_class, $url_root, $basepath) { + for($i=0;$i\n"); + } + $archive_ref = $archives_list[$i]; + + $archive_name = $archive_ref; + $metadata = null; + if(is_array($archive_ref)) { + $archive_name = $archive_ref[0]; + $metadata = $archive_ref[1]; + } + print(get_archive_box($archive_name,$metadata, $url_root, $basepath)); + if(($i % 3)==2 || $i == (count($archives_list)-1)) { + print(" \n"); + } + } +} + + diff -r e6b328970ee8 -r ffb0a6d08000 web/config.php.tmpl --- a/web/config.php.tmpl Wed Jul 27 12:24:43 2011 +0200 +++ b/web/config.php.tmpl Wed Jul 27 12:25:45 2011 +0200 @@ -2,16 +2,10 @@ /** * Please edit all for your application registration / other details - * + * The URL_ROOT must finish with a "/" */ //define('URL_ROOT', 'http://127.0.0.1/IRI/REPO_TWEET_LIVE/web/'); -define('URL_ROOT', 'http://127.0.0.1/IRI/REPO_TWEET_LIVE/web/client.php'); +define('URL_ROOT', 'http://127.0.0.1/IRI/REPO_TWEET_LIVE/web/'); -$configuration = array( - // 'callbackUrl' => 'http://amateur.iri.centrepompidou.fr/live/callback.php', - 'callbackUrl' => 'http://127.0.0.1/IRI/REPO_TWEET_LIVE/web/callback.php', - 'siteUrl' => 'http://twitter.com/oauth', - 'consumerKey' => '***REMOVED***', - 'consumerSecret' => '***REMOVED***' -); +$C_default_registry = 'cdn'; diff -r e6b328970ee8 -r ffb0a6d08000 web/embed_form.php --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/web/embed_form.php Wed Jul 27 12:25:45 2011 +0200 @@ -0,0 +1,64 @@ + + + + + + embed Configuration + + + + + ' rel='stylesheet' type='text/css'> + ' rel='stylesheet' type='text/css'> + ' rel='stylesheet' type='text/css'> + + + + + +

_("EmbedTitle"); ?>

+ +

_("EmbedText"); ?>

+ + + + diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/callback.php --- a/web/enmi/callback.php Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,34 +0,0 @@ -getAccessToken($_GET, unserialize($_SESSION['TWITTER_REQUEST_TOKEN'])); - $_SESSION['TWITTER_ACCESS_TOKEN'] = serialize($token); - - /** - * Now that we have an Access Token, we can discard the Request Token - */ - $_SESSION['TWITTER_REQUEST_TOKEN'] = null; - - /** - * With Access Token in hand, let's try accessing the client again - */ - header('Location: ' . URL_ROOT . '/index.php'); -} else { - /** - * Mistaken request? Some malfeasant trying something? - */ - exit('Invalid callback request. Oops. Sorry.'); -} diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/clear.php --- a/web/enmi/clear.php Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,17 +0,0 @@ - 'http://amateur.iri.centrepompidou.fr/live/enmi/callback.php', - 'siteUrl' => 'http://twitter.com/oauth', - 'consumerKey' => '***REMOVED***', - 'consumerSecret' => '***REMOVED***' -); diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/custom.css --- a/web/enmi/custom.css Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,94 +0,0 @@ -/* ----------------------------------------------------------------------- - - - IRI - Live tweet annotation CSS - http://www.iri.centrepompidou.fr - - * Copyright (c) 2010-Present. See LICENSE for more info. (cecill-C) - * Contributor : Samuel Huron - ------------------------------------------------------------------------ */ - -body {background-image:url(images/bgd.jpg);background-repeat:repeat-x;background-color:#f7f6f6;font-family: 'PT Sans', arial, serif; } -textarea {margin-left:3px;height: 60px;width: 330px;padding:5px;background-image:url(images/tweetWriterBgdTxtArea.gif);background-repeat:no-repeat;border: none;} -.loginbutton{margin-left:3px;height: 60px;width: 330px;padding:5px;background-image:url(images/tweetWriterBgdUnconnect.gif);background-repeat:no-repeat;border: none;margin-bottom:10px;color:#fff;} -.loginlink{text-decoration:none;color:#fff;} -.menuLink:active {text-decoration:none;} -.menuLink:visited {text-decoration:none;} -h3{font-size: 1.5em;line-height: 1;margin-bottom: 0.3em;} - -#Aboutbox{background-image:url(images/about_bgd.jpg);background-repeat:no-repeat;width:600px;height:360px;overflow:auto; border:1px solid #fff;} -.lightBorder{padding:20px;} -.lightTitle{font-size: 48px;font-weight:900;color:#e6e6e6;font-family: 'Geo', arial, serif;line-height:80%} -.lightSubTitle{font-size: 24px;font-weight:bold;color:#262626; width:250px;line-height:80%} -.lightDescription{font-size: 12px;color:#000; width:288px;text-align:justify;margin-top:15px;} -.lightButton{width:134px;height:22px;background-image:url(images/bt_bgd_grey.jpg);background-repeat:no-repeat;} -.lightButton:active{width:134px;height:22px;background-image:url(images/bt_bgd_grey.jpg);background-repeat:no-repeat;} -.lightButton:over{text-decoration:none;background-image:url(images/bt_bgd_grey.jpg);background-repeat:no-repeat;} - - -.logo{padding-right:10px;float:left;} -.menu{float:left;height:62px;border-left:1px solid #c3c3c3;list-style-type:none;padding:0px;margin:0px;} -.menuUnderline{margin-left:0px;padding-left:0px;background-image:url(images/menu_underline.gif);background-repeat:no-repeat;background-position:left bottom; width:205px;margin-top:3px;} -.menuLink{text-decoration:none; margin:5px; color:#000} -.menuLink:active {text-decoration:none;} -.menuLink:visited {text-decoration:none;} - -.tweetContainer{position:absolute; margin-top:70px;} -.tweetWriter{background-image:url(images/tweetWriterBgd.gif);width:359px;height:136px;padding:10px;position:absolute; margin-top:70px;} -.tweetWriterTitle{color:4b4b4b;font-family: 'PT Sans Narrow', arial, serif;} - -.tweetReader{width:377px;height:450px;position:absolute; margin-top:225px;border:1px solid #c3c3c3;background:#ffffff;} -.tweetButton{float:right;margin-right:5px;} - - -.videoLivePlayer{border:1px solid #c3c3c3;width:500px;height:375px;} -.videoLive{width:500px;height:378px;background:#fff;float:left;margin-top:20px;padding:5px;} -.videoLiveProgram{width:500px;margin-top:425px;margin-left:392px;position:absolute;} -.videoLiveProgram2{width:500px;margin-top:470px;margin-left:392px;position:absolute;} - -.videoLiveProgramTitle{color:#4b4b4b;font-family: 'PT Sans Narrow', arial, serif;font-size: 1.5em;padding:5px;border:1px solid #c3c3c3;background-color:#efefef;background-image:url(images/bgdTitle.jpg);background-repeat:no-repeat;} -.videoLiveProgramDescription{padding:5px;border:1px solid #c3c3c3;padding:5px;border-top:none;background-color:#fff;background-image:url(images/bgdDescription.jpg);background-repeat:no-repeat;height:163px;overflow:scroll;} - - -.footer{margin-top:700px;width:960px;height:20px;position:absolute;text-align:center;} -.footerLink{text-decoration:none; margin:5px; color:#000;font-family: 'PT Sans Narrow', arial, serif;font-size: 1.1em;} -.footerLink:active {text-decoration:none;} -.footerLink:visited {text-decoration:none;} - -.tooltip {display:none;background:transparent url(images/white_arrow.png);font-size:12px;height:70px;width:160px;padding:25px;color:#000;} - -.timeline{height:28px;border: 1px solid #ccc;} -.timeFragment {float:left;position:relative;float:left;} -.timeFrame {border-left: 1px solid #AAA;border-right: 1px solid #AAA;height:10px;float:left;position:relative;} -.bigTimeFrame {border-right: 1px solid #ccc;float:left;position:relative;} - -.arrowContainer{height:10px;width:100%;} - -.cleaner {clear:both;} -.txt{visibility:hidden;} - - -.clear { /* generic container (i.e. div) for floating buttons */ - overflow: hidden; - width: 100%; -} - -a.button_w { background: transparent url('images/bg_button_a_w.png') no-repeat scroll top right; color: #444;display: block;float: left;font: normal 12px arial, sans-serif;height: 24px;margin-right: 6px;padding-right: 18px; text-decoration: none;} -a.button_w span { background: transparent url('images/bg_button_span_w.png') no-repeat; display: block;line-height: 14px; padding: 5px 0 5px 18px;} - -a.button_b { background: transparent url('images/bg_button_a_b.png') no-repeat scroll top right; color: #fff;display: block;float: left;font: bold 12px arial, sans-serif;height: 24px;margin-right: 6px;padding-right: 18px; text-decoration: none;} -a.button_b span { background: transparent url('images/bg_button_span_b.png') no-repeat; display: block;line-height: 14px; padding: 5px 0 5px 18px;} - -#question{background: transparent url('images/bt_yellow.png') no-repeat; width:32px;height:20px;text-decoration: none;font: normal 12px;color: #444;text-align:center; } -#question:active {text-decoration:none;} -#question:visited {text-decoration:none;} -#reference{background: transparent url('images/bt_blue.png') no-repeat;width:32px;height:20px;text-decoration: none;font: normal 12px;color: #444;text-align:center; } -#reference:active {text-decoration:none;} -#reference:visited {text-decoration:none;} -#positive{background: transparent url('images/bt_green.png') no-repeat;width:32px;height:20px;text-decoration: none;font: normal 12px;color: #444;text-align:center; } -#positive:active {text-decoration:none;} -#positive:visited {text-decoration:none;} -#negative{background: transparent url('images/bt_red.png') no-repeat;width:32px;height:20px;text-decoration: none;font: normal 12px;color: #444;text-align:center; } -#negative:active {text-decoration:none;} -#negative:visited {text-decoration:none;} diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/images/ENMI_2010_logo.gif Binary file web/enmi/images/ENMI_2010_logo.gif has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/images/KITtweetWriterBgdTxtArea.psd Binary file web/enmi/images/KITtweetWriterBgdTxtArea.psd has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/images/about_bgd.jpg Binary file web/enmi/images/about_bgd.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/images/bg_button_a_b.png Binary file web/enmi/images/bg_button_a_b.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/images/bg_button_a_w.gif Binary file web/enmi/images/bg_button_a_w.gif has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/images/bg_button_a_w.png Binary file web/enmi/images/bg_button_a_w.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/images/bg_button_span_b.png Binary file web/enmi/images/bg_button_span_b.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/images/bg_button_span_w.gif Binary file web/enmi/images/bg_button_span_w.gif has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/images/bg_button_span_w.png Binary file web/enmi/images/bg_button_span_w.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/images/bgd.jpg Binary file web/enmi/images/bgd.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/images/bgdDescription.jpg Binary file web/enmi/images/bgdDescription.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/images/bgdTitle.png Binary file web/enmi/images/bgdTitle.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/images/bgd_player.jpg Binary file web/enmi/images/bgd_player.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/images/black_arrow.png Binary file web/enmi/images/black_arrow.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/images/black_arrow_big.png Binary file web/enmi/images/black_arrow_big.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/images/black_big.png Binary file web/enmi/images/black_big.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/images/bt_bgd_blue.jpg Binary file web/enmi/images/bt_bgd_blue.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/images/bt_bgd_grey.jpg Binary file web/enmi/images/bt_bgd_grey.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/images/bt_blue.png Binary file web/enmi/images/bt_blue.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/images/bt_green.png Binary file web/enmi/images/bt_green.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/images/bt_red.png Binary file web/enmi/images/bt_red.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/images/bt_yellow.png Binary file web/enmi/images/bt_yellow.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/images/greenTweet.png Binary file web/enmi/images/greenTweet.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/images/grey_arrow_Show.png Binary file web/enmi/images/grey_arrow_Show.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/images/loader.gif Binary file web/enmi/images/loader.gif has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/images/menu_underline.gif Binary file web/enmi/images/menu_underline.gif has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/images/redTweet.png Binary file web/enmi/images/redTweet.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/images/tweetWriterBgd.gif Binary file web/enmi/images/tweetWriterBgd.gif has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/images/tweetWriterBgdTxtArea.gif Binary file web/enmi/images/tweetWriterBgdTxtArea.gif has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/images/tweetWriterBgdUnconnect.gif Binary file web/enmi/images/tweetWriterBgdUnconnect.gif has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/images/white_arrow.png Binary file web/enmi/images/white_arrow.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/images/white_arrow_big.png Binary file web/enmi/images/white_arrow_big.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/images/white_arrow_mini.png Binary file web/enmi/images/white_arrow_mini.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/index.php --- a/web/enmi/index.php Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,614 +0,0 @@ -getRequestToken(); - $_SESSION['TWITTER_REQUEST_TOKEN'] = serialize($token); - - /** - * Now redirect user to Twitter site so they can log in and - * approve our access - */ - $consumer->redirect(); -} - -?> - - - - - - - ENMI 2010 - Live Video and Annotation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
-
- - - - - - - - - - - -
-
- -
- -
- -
-
14 dec 2010
-
- -
-
15 dec 2010
-
- -
- -
- -
- -
- -
- -
- -
-
- -
- -
- -
- - -
- -
-
-
-
- - - - - -
Nanomondes et imaginaires -de l’hyperminiaturisation :
-
-
- Cliquez sur la ligne de temps ci dessus afin d'afficher les différentes sessions du programme. -

- Impact des nanotechnologies et de l’hyperminiaturisation -sur les imaginaires, les méthodes de conception et les outils -de débat public du nouveau monde industriel.

-
-S’il faut parler de nouveau monde industriel – au sens où une industrie est en premier lieu un processus de transformation technologique -de la matière –, c’est bien avec les nanotechnologies et ce que l’on -appelle le « nano-monde » que cela s’impose. -Lorsque Bill Clinton lança la National Nanotechnology Initiative, -c’était en posant que les technologies d’exploitation et de transformation de la matière à l’échelle nanométrique permettraient d’envisager -une nouvelle économie, alors même que l’atteinte des limites à l’exploitation micro-électronique de la matière semblait avérée. -La « loi de Moore », aussi sujette à discussion qu’elle puisse être (et -ces nouveaux Entretiens en feront un sujet de débat), a mis la microphysique au cœur du développement économique depuis les premiers -transistors jusqu’aux microprocesseurs, c’est-à-dire aux puces -électroniques. Elle montre que loin d’être « immatérielle », -l’économie numérique est au contraire extrêmement liée aux -technologies de la matière. -La micro-électronique est cependant réputée devoir atteindre ses -limites à une échéance prochaine. Or, c’est la réduction vertigineuse -des coûts de la mémoire électronique qui a permis l’expansion des -technologies numériques, en particulier depuis la constitution du -world wide web. Ceci a permis une pratique massive d’internet qui a -bouleversé les modèles industriels des télécommunications aussi bien -que de l’informatique et de l’audiovisuel et bien au-delà : -commerce, rapport à l’espace et au temps, savoirs, débat public, etc.

- -C’est d’abord de ce point de vue que la question a été posée de -passer d’une industrie de transformation de la matière à l’échelle du -millionième de mètre à la nano-industrie, c’est-à-dire aux matériaux -nanostructurés au milliardième de mètre. -Bien au-delà du numérique, ce sont cependant les domaines des -matériaux (bâtiment, métallurgie, etc.), de la médecine, des -biotechnologies, notamment, qui sont concernés. Tous les domaines -du secteur industriel semblent en fin de compte impliqués par ce que -l’on décrit parfois comme la nouvelle convergence (après celle de -l’informatique, des télécommunications et de l’audiovisuel). -Tel est l’enjeu de ce que nous décrirons au cours de ces Entretiens -2010 comme un processus d’hyper-miniaturisation. Ce devenir qui -ouvre une série de possibilités inouïes, soulève autant de questions -économiques, politiques et épistémologiques. -L’hyper-miniaturisation fait passer le monde industriel à l’échelle -quantique dont les propriétés sont tout autre qu’à l’échelle macrophysique (et relèvent d’une « hypermatière », c’est-à-dire d’un couple énergie/information où l’opposition entre la matière et la forme -n’a plus cours : la matière s’y « présente » précisément comme une -forme). Et ce que l’on appelle les « nanoparticules » issues de cette -hyper-miniaturisation troublent les frontières par lesquelles les -organismes vivants se distinguent de leurs milieux extérieurs.

- -Le changement d’échelle est l’enjeu de nouveaux imaginaires où se -projette le « nano-monde » – parmi lesquels on peut distinguer : - les imaginaires de l’industrie, et de l’histoire nouvelle qu’elle nous . -raconte à travers la conquête de la nano-dimension, qui permettrait -de maintenir ouvertes les possibilités d’innovation industrielle et -l’activité économique dans son ensemble ; - les imaginaires scientifiques tels qu’ils passent par une technologie . -de l’imagination (au sens fort de la production d’images) de ce qui, à -l’échelle nanométrique, n’est pas visible, et que le microscope à effet -tunnel, par exemple, permet de manipuler, mais aussi de figurer par -des artefacts graphiques ; - les imaginaires sociaux traversés et surcodés aussi bien par les pratiques littéraires de la science-fiction que par les discours politiques et . -les débats citoyens – dans un contexte de crise économique et morale -mondiale.
-Nous faisons aussi l’hypothèse que des imaginaires économiques et -politiques nouveaux, tels qu’ils permettraient de projeter et de désirer -un avenir technologique et industriel raisonné, réfléchi, débattu et -partagé par la société, passent par l’intégration des questions nanotechnologiques avec celles que nous avions soulevées dans les éditions -précédentes des Entretiens du nouveau monde industriel : l’innovation ascendante, les technologies relationnelles réticulaires et les -objets communicants – opérateurs technologiques qui transforment -le monde quotidien en profondeur. -Cette transformation est déjà largement entamée. La quatrième -édition des Entretiens du nouveau monde industriel s’efforcera d’intégrer ces questions. -
- - -
- - "); - }else{ - echo(""); - } - ?> - - -
- Votre tweet a bien été envoyé !

-
- -
- Ooups! il y a une erreur vous avez le droit de frapper le developpeur :
 


-
- - - - Envoyer - - ++ - -- - == - ?? - -
- -
- -
- - - - - - - -
-
-
-
ENMI 2010
-
Annotation critique par tweet
-
À partir de cette interface ou de votre client twitter habituel, vous pouvez réagir en direct aux conférences en twittant. Vos tweets seront synchronisés avec l'enregistrement des conférences. Vous pourrez qualifier vos tweets en y intégrant la syntaxe ci-contre. -
- -
-
-
- - - - diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/blueprint/ie.css --- a/web/enmi/res/blueprint/ie.css Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,36 +0,0 @@ -/* ----------------------------------------------------------------------- - - - Blueprint CSS Framework 1.0 - http://blueprintcss.org - - * Copyright (c) 2007-Present. See LICENSE for more info. - * See README for instructions on how to use Blueprint. - * For credits and origins, see AUTHORS. - * This is a compressed file. See the sources in the 'src' directory. - ------------------------------------------------------------------------ */ - -/* ie.css */ -body {text-align:center;} -.container {text-align:left;} -* html .column, * html .span-1, * html .span-2, * html .span-3, * html .span-4, * html .span-5, * html .span-6, * html .span-7, * html .span-8, * html .span-9, * html .span-10, * html .span-11, * html .span-12, * html .span-13, * html .span-14, * html .span-15, * html .span-16, * html .span-17, * html .span-18, * html .span-19, * html .span-20, * html .span-21, * html .span-22, * html .span-23, * html .span-24 {display:inline;overflow-x:hidden;} -* html legend {margin:0px -8px 16px 0;padding:0;} -sup {vertical-align:text-top;} -sub {vertical-align:text-bottom;} -html>body p code {*white-space:normal;} -hr {margin:-8px auto 11px;} -img {-ms-interpolation-mode:bicubic;} -.clearfix, .container {display:inline-block;} -* html .clearfix, * html .container {height:1%;} -fieldset {padding-top:0;} -legend {margin-top:-0.2em;margin-bottom:1em;margin-left:-0.5em;} -textarea {overflow:auto;} -label {vertical-align:middle;position:relative;top:-0.25em;} -input.text, input.title, textarea {background-color:#fff;border:1px solid #bbb;} -input.text:focus, input.title:focus {border-color:#666;} -input.text, input.title, textarea, select {margin:0.5em 0;} -input.checkbox, input.radio {position:relative;top:.25em;} -form.inline div, form.inline p {vertical-align:middle;} -form.inline input.checkbox, form.inline input.radio, form.inline input.button, form.inline button {margin:0.5em 0;} -button, input.button {position:relative;top:0.25em;} \ No newline at end of file diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/blueprint/plugins/buttons/icons/cross.png Binary file web/enmi/res/blueprint/plugins/buttons/icons/cross.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/blueprint/plugins/buttons/icons/key.png Binary file web/enmi/res/blueprint/plugins/buttons/icons/key.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/blueprint/plugins/buttons/icons/tick.png Binary file web/enmi/res/blueprint/plugins/buttons/icons/tick.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/blueprint/plugins/buttons/readme.txt --- a/web/enmi/res/blueprint/plugins/buttons/readme.txt Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,32 +0,0 @@ -Buttons - -* Gives you great looking CSS buttons, for both and - - - Change Password - - - - Cancel - diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/blueprint/plugins/buttons/screen.css --- a/web/enmi/res/blueprint/plugins/buttons/screen.css Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,97 +0,0 @@ -/* -------------------------------------------------------------- - - buttons.css - * Gives you some great CSS-only buttons. - - Created by Kevin Hale [particletree.com] - * particletree.com/features/rediscovering-the-button-element - - See Readme.txt in this folder for instructions. - --------------------------------------------------------------- */ - -a.button, button { - display:block; - float:left; - margin: 0.7em 0.5em 0.7em 0; - padding:5px 10px 5px 7px; /* Links */ - - border:1px solid #dedede; - border-top:1px solid #eee; - border-left:1px solid #eee; - - background-color:#f5f5f5; - font-family:"Lucida Grande", Tahoma, Arial, Verdana, sans-serif; - font-size:100%; - line-height:130%; - text-decoration:none; - font-weight:bold; - color:#565656; - cursor:pointer; -} -button { - width:auto; - overflow:visible; - padding:4px 10px 3px 7px; /* IE6 */ -} -button[type] { - padding:4px 10px 4px 7px; /* Firefox */ - line-height:17px; /* Safari */ -} -*:first-child+html button[type] { - padding:4px 10px 3px 7px; /* IE7 */ -} -button img, a.button img{ - margin:0 3px -3px 0 !important; - padding:0; - border:none; - width:16px; - height:16px; - float:none; -} - - -/* Button colors --------------------------------------------------------------- */ - -/* Standard */ -button:hover, a.button:hover{ - background-color:#dff4ff; - border:1px solid #c2e1ef; - color:#336699; -} -a.button:active{ - background-color:#6299c5; - border:1px solid #6299c5; - color:#fff; -} - -/* Positive */ -body .positive { - color:#529214; -} -a.positive:hover, button.positive:hover { - background-color:#E6EFC2; - border:1px solid #C6D880; - color:#529214; -} -a.positive:active { - background-color:#529214; - border:1px solid #529214; - color:#fff; -} - -/* Negative */ -body .negative { - color:#d12f19; -} -a.negative:hover, button.negative:hover { - background-color:#fbe3e4; - border:1px solid #fbc2c4; - color:#d12f19; -} -a.negative:active { - background-color:#d12f19; - border:1px solid #d12f19; - color:#fff; -} diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/blueprint/plugins/fancy-type/readme.txt --- a/web/enmi/res/blueprint/plugins/fancy-type/readme.txt Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,14 +0,0 @@ -Fancy Type - -* Gives you classes to use if you'd like some - extra fancy typography. - -Credits and instructions are specified above each class -in the fancy-type.css file in this directory. - - -Usage ----------------------------------------------------------------- - -1) Add this plugin to lib/settings.yml. - See compress.rb for instructions. diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/blueprint/plugins/fancy-type/screen.css --- a/web/enmi/res/blueprint/plugins/fancy-type/screen.css Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,71 +0,0 @@ -/* -------------------------------------------------------------- - - fancy-type.css - * Lots of pretty advanced classes for manipulating text. - - See the Readme file in this folder for additional instructions. - --------------------------------------------------------------- */ - -/* Indentation instead of line shifts for sibling paragraphs. */ - p + p { text-indent:2em; margin-top:-1.5em; } - form p + p { text-indent: 0; } /* Don't want this in forms. */ - - -/* For great looking type, use this code instead of asdf: - asdf - Best used on prepositions and ampersands. */ - -.alt { - color: #666; - font-family: "Warnock Pro", "Goudy Old Style","Palatino","Book Antiqua", Georgia, serif; - font-style: italic; - font-weight: normal; -} - - -/* For great looking quote marks in titles, replace "asdf" with: - asdf” - (That is, when the title starts with a quote mark). - (You may have to change this value depending on your font size). */ - -.dquo { margin-left: -.5em; } - - -/* Reduced size type with incremental leading - (http://www.markboulton.co.uk/journal/comments/incremental_leading/) - - This could be used for side notes. For smaller type, you don't necessarily want to - follow the 1.5x vertical rhythm -- the line-height is too much. - - Using this class, it reduces your font size and line-height so that for - every four lines of normal sized type, there is five lines of the sidenote. eg: - - New type size in em's: - 10px (wanted side note size) / 12px (existing base size) = 0.8333 (new type size in ems) - - New line-height value: - 12px x 1.5 = 18px (old line-height) - 18px x 4 = 72px - 72px / 5 = 14.4px (new line height) - 14.4px / 10px = 1.44 (new line height in em's) */ - -p.incr, .incr p { - font-size: 10px; - line-height: 1.44em; - margin-bottom: 1.5em; -} - - -/* Surround uppercase words and abbreviations with this class. - Based on work by Jørgen Arnor Gårdsø Lom [http://twistedintellect.com/] */ - -.caps { - font-variant: small-caps; - letter-spacing: 1px; - text-transform: lowercase; - font-size:1.2em; - line-height:1%; - font-weight:bold; - padding:0 2px; -} diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/blueprint/plugins/link-icons/icons/doc.png Binary file web/enmi/res/blueprint/plugins/link-icons/icons/doc.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/blueprint/plugins/link-icons/icons/email.png Binary file web/enmi/res/blueprint/plugins/link-icons/icons/email.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/blueprint/plugins/link-icons/icons/external.png Binary file web/enmi/res/blueprint/plugins/link-icons/icons/external.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/blueprint/plugins/link-icons/icons/feed.png Binary file web/enmi/res/blueprint/plugins/link-icons/icons/feed.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/blueprint/plugins/link-icons/icons/im.png Binary file web/enmi/res/blueprint/plugins/link-icons/icons/im.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/blueprint/plugins/link-icons/icons/pdf.png Binary file web/enmi/res/blueprint/plugins/link-icons/icons/pdf.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/blueprint/plugins/link-icons/icons/visited.png Binary file web/enmi/res/blueprint/plugins/link-icons/icons/visited.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/blueprint/plugins/link-icons/icons/xls.png Binary file web/enmi/res/blueprint/plugins/link-icons/icons/xls.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/blueprint/plugins/link-icons/readme.txt --- a/web/enmi/res/blueprint/plugins/link-icons/readme.txt Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,18 +0,0 @@ -Link Icons -* Icons for links based on protocol or file type. - -This is not supported in IE versions < 7. - - -Credits ----------------------------------------------------------------- - -* Marc Morgan -* Olav Bjorkoy [bjorkoy.com] - - -Usage ----------------------------------------------------------------- - -1) Add this line to your HTML: - diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/blueprint/plugins/link-icons/screen.css --- a/web/enmi/res/blueprint/plugins/link-icons/screen.css Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,40 +0,0 @@ -/* -------------------------------------------------------------- - - link-icons.css - * Icons for links based on protocol or file type. - - See the Readme file in this folder for additional instructions. - --------------------------------------------------------------- */ - -/* Use this class if a link gets an icon when it shouldn't. */ -body a.noicon { - background:transparent none !important; - padding:0 !important; - margin:0 !important; -} - -/* Make sure the icons are not cut */ -a[href^="http:"], a[href^="mailto:"], a[href^="http:"]:visited, -a[href$=".pdf"], a[href$=".doc"], a[href$=".xls"], a[href$=".rss"], -a[href$=".rdf"], a[href^="aim:"] { - padding:2px 22px 2px 0; - margin:-2px 0; - background-repeat: no-repeat; - background-position: right center; -} - -/* External links */ -a[href^="http:"] { background-image: url(icons/external.png); } -a[href^="mailto:"] { background-image: url(icons/email.png); } -a[href^="http:"]:visited { background-image: url(icons/visited.png); } - -/* Files */ -a[href$=".pdf"] { background-image: url(icons/pdf.png); } -a[href$=".doc"] { background-image: url(icons/doc.png); } -a[href$=".xls"] { background-image: url(icons/xls.png); } - -/* Misc */ -a[href$=".rss"], -a[href$=".rdf"] { background-image: url(icons/feed.png); } -a[href^="aim:"] { background-image: url(icons/im.png); } diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/blueprint/plugins/rtl/readme.txt --- a/web/enmi/res/blueprint/plugins/rtl/readme.txt Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,10 +0,0 @@ -RTL -* Mirrors Blueprint, so it can be used with Right-to-Left languages. - -By Ran Yaniv Hartstein, ranh.co.il - -Usage ----------------------------------------------------------------- - -1) Add this line to your HTML: - diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/blueprint/plugins/rtl/screen.css --- a/web/enmi/res/blueprint/plugins/rtl/screen.css Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,110 +0,0 @@ -/* -------------------------------------------------------------- - - rtl.css - * Mirrors Blueprint for left-to-right languages - - By Ran Yaniv Hartstein [ranh.co.il] - --------------------------------------------------------------- */ - -body .container { direction: rtl; } -body .column, body .span-1, body .span-2, body .span-3, body .span-4, body .span-5, body .span-6, body .span-7, body .span-8, body .span-9, body .span-10, body .span-11, body .span-12, body .span-13, body .span-14, body .span-15, body .span-16, body .span-17, body .span-18, body .span-19, body .span-20, body .span-21, body .span-22, body .span-23, body .span-24 { - float: right; - margin-right: 0; - margin-left: 10px; - text-align:right; -} - -body div.last { margin-left: 0; } -body table .last { padding-left: 0; } - -body .append-1 { padding-right: 0; padding-left: 40px; } -body .append-2 { padding-right: 0; padding-left: 80px; } -body .append-3 { padding-right: 0; padding-left: 120px; } -body .append-4 { padding-right: 0; padding-left: 160px; } -body .append-5 { padding-right: 0; padding-left: 200px; } -body .append-6 { padding-right: 0; padding-left: 240px; } -body .append-7 { padding-right: 0; padding-left: 280px; } -body .append-8 { padding-right: 0; padding-left: 320px; } -body .append-9 { padding-right: 0; padding-left: 360px; } -body .append-10 { padding-right: 0; padding-left: 400px; } -body .append-11 { padding-right: 0; padding-left: 440px; } -body .append-12 { padding-right: 0; padding-left: 480px; } -body .append-13 { padding-right: 0; padding-left: 520px; } -body .append-14 { padding-right: 0; padding-left: 560px; } -body .append-15 { padding-right: 0; padding-left: 600px; } -body .append-16 { padding-right: 0; padding-left: 640px; } -body .append-17 { padding-right: 0; padding-left: 680px; } -body .append-18 { padding-right: 0; padding-left: 720px; } -body .append-19 { padding-right: 0; padding-left: 760px; } -body .append-20 { padding-right: 0; padding-left: 800px; } -body .append-21 { padding-right: 0; padding-left: 840px; } -body .append-22 { padding-right: 0; padding-left: 880px; } -body .append-23 { padding-right: 0; padding-left: 920px; } - -body .prepend-1 { padding-left: 0; padding-right: 40px; } -body .prepend-2 { padding-left: 0; padding-right: 80px; } -body .prepend-3 { padding-left: 0; padding-right: 120px; } -body .prepend-4 { padding-left: 0; padding-right: 160px; } -body .prepend-5 { padding-left: 0; padding-right: 200px; } -body .prepend-6 { padding-left: 0; padding-right: 240px; } -body .prepend-7 { padding-left: 0; padding-right: 280px; } -body .prepend-8 { padding-left: 0; padding-right: 320px; } -body .prepend-9 { padding-left: 0; padding-right: 360px; } -body .prepend-10 { padding-left: 0; padding-right: 400px; } -body .prepend-11 { padding-left: 0; padding-right: 440px; } -body .prepend-12 { padding-left: 0; padding-right: 480px; } -body .prepend-13 { padding-left: 0; padding-right: 520px; } -body .prepend-14 { padding-left: 0; padding-right: 560px; } -body .prepend-15 { padding-left: 0; padding-right: 600px; } -body .prepend-16 { padding-left: 0; padding-right: 640px; } -body .prepend-17 { padding-left: 0; padding-right: 680px; } -body .prepend-18 { padding-left: 0; padding-right: 720px; } -body .prepend-19 { padding-left: 0; padding-right: 760px; } -body .prepend-20 { padding-left: 0; padding-right: 800px; } -body .prepend-21 { padding-left: 0; padding-right: 840px; } -body .prepend-22 { padding-left: 0; padding-right: 880px; } -body .prepend-23 { padding-left: 0; padding-right: 920px; } - -body .border { - padding-right: 0; - padding-left: 4px; - margin-right: 0; - margin-left: 5px; - border-right: none; - border-left: 1px solid #eee; -} - -body .colborder { - padding-right: 0; - padding-left: 24px; - margin-right: 0; - margin-left: 25px; - border-right: none; - border-left: 1px solid #eee; -} - -body .pull-1 { margin-left: 0; margin-right: -40px; } -body .pull-2 { margin-left: 0; margin-right: -80px; } -body .pull-3 { margin-left: 0; margin-right: -120px; } -body .pull-4 { margin-left: 0; margin-right: -160px; } - -body .push-0 { margin: 0 18px 0 0; } -body .push-1 { margin: 0 18px 0 -40px; } -body .push-2 { margin: 0 18px 0 -80px; } -body .push-3 { margin: 0 18px 0 -120px; } -body .push-4 { margin: 0 18px 0 -160px; } -body .push-0, body .push-1, body .push-2, -body .push-3, body .push-4 { float: left; } - - -/* Typography with RTL support */ -body h1,body h2,body h3, -body h4,body h5,body h6 { font-family: Arial, sans-serif; } -html body { font-family: Arial, sans-serif; } -body pre,body code,body tt { font-family: monospace; } - -/* Mirror floats and margins on typographic elements */ -body p img { float: right; margin: 1.5em 0 1.5em 1.5em; } -body dd, body ul, body ol { margin-left: 0; margin-right: 1.5em;} -body td, body th { text-align:right; } diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/blueprint/print.css --- a/web/enmi/res/blueprint/print.css Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -/* ----------------------------------------------------------------------- - - - Blueprint CSS Framework 1.0 - http://blueprintcss.org - - * Copyright (c) 2007-Present. See LICENSE for more info. - * See README for instructions on how to use Blueprint. - * For credits and origins, see AUTHORS. - * This is a compressed file. See the sources in the 'src' directory. - ------------------------------------------------------------------------ */ - -/* print.css */ -body {line-height:1.5;font-family:"Helvetica Neue", Arial, Helvetica, sans-serif;color:#000;background:none;font-size:10pt;} -.container {background:none;} -hr {background:#ccc;color:#ccc;width:100%;height:2px;margin:2em 0;padding:0;border:none;} -hr.space {background:#fff;color:#fff;visibility:hidden;} -h1, h2, h3, h4, h5, h6 {font-family:"Helvetica Neue", Arial, "Lucida Grande", sans-serif;} -code {font:.9em "Courier New", Monaco, Courier, monospace;} -a img {border:none;} -p img.top {margin-top:0;} -blockquote {margin:1.5em;padding:1em;font-style:italic;font-size:.9em;} -.small {font-size:.9em;} -.large {font-size:1.1em;} -.quiet {color:#999;} -.hide {display:none;} -a:link, a:visited {background:transparent;font-weight:700;text-decoration:underline;} -a:link:after, a:visited:after {content:" (" attr(href) ")";font-size:90%;} \ No newline at end of file diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/blueprint/screen.css --- a/web/enmi/res/blueprint/screen.css Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,265 +0,0 @@ -/* ----------------------------------------------------------------------- - - - Blueprint CSS Framework 1.0 - http://blueprintcss.org - - * Copyright (c) 2007-Present. See LICENSE for more info. - * See README for instructions on how to use Blueprint. - * For credits and origins, see AUTHORS. - * This is a compressed file. See the sources in the 'src' directory. - ------------------------------------------------------------------------ */ - -/* reset.css */ -html {margin:0;padding:0;border:0;} -body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, code, del, dfn, em, img, q, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, dialog, figure, footer, header, hgroup, nav, section {margin:0;padding:0;border:0;font-weight:inherit;font-style:inherit;font-size:100%;font-family:inherit;vertical-align:baseline;} -article, aside, dialog, figure, footer, header, hgroup, nav, section {display:block;} -body {line-height:1.5;background:white;} -table {border-collapse:separate;border-spacing:0;} -caption, th, td {text-align:left;font-weight:normal;float:none !important;} -table, th, td {vertical-align:middle;} -blockquote:before, blockquote:after, q:before, q:after {content:'';} -blockquote, q {quotes:"" "";} -a img {border:none;} -:focus {outline:0;} - -/* typography.css */ -html {font-size:100.01%;} -body {font-size:75%;color:#222;background:#fff;font-family:"Helvetica Neue", Arial, Helvetica, sans-serif;} -h1, h2, h3, h4, h5, h6 {font-weight:normal;color:#111;} -h1 {font-size:3em;line-height:1;margin-bottom:0.5em;} -h2 {font-size:2em;margin-bottom:0.75em;} -h3 {font-size:1.5em;line-height:1;margin-bottom:1em;} -h4 {font-size:1.2em;line-height:1.25;margin-bottom:1.25em;} -h5 {font-size:1em;font-weight:bold;margin-bottom:1.5em;} -h6 {font-size:1em;font-weight:bold;} -h1 img, h2 img, h3 img, h4 img, h5 img, h6 img {margin:0;} -p {margin:0 0 1.5em;} -.left {float:left !important;} -p .left {margin:1.5em 1.5em 1.5em 0;padding:0;} -.right {float:right !important;} -p .right {margin:1.5em 0 1.5em 1.5em;padding:0;} -a:focus, a:hover {color:#09f;} -a {color:#06c;text-decoration:underline;} -blockquote {margin:1.5em;color:#666;font-style:italic;} -strong, dfn {font-weight:bold;} -em, dfn {font-style:italic;} -sup, sub {line-height:0;} -abbr, acronym {border-bottom:1px dotted #666;} -address {margin:0 0 1.5em;font-style:italic;} -del {color:#666;} -pre {margin:1.5em 0;white-space:pre;} -pre, code, tt {font:1em 'andale mono', 'lucida console', monospace;line-height:1.5;} -li ul, li ol {margin:0;} -ul, ol {margin:0 1.5em 1.5em 0;padding-left:1.5em;} -ul {list-style-type:disc;} -ol {list-style-type:decimal;} -dl {margin:0 0 1.5em 0;} -dl dt {font-weight:bold;} -dd {margin-left:1.5em;} -table {margin-bottom:1.4em;width:100%;} -th {font-weight:bold;} -thead th {background:#c3d9ff;} -th, td, caption {padding:4px 10px 4px 5px;} -tbody tr:nth-child(even) td, tbody tr.even td {background:#e5ecf9;} -tfoot {font-style:italic;} -caption {background:#eee;} -.small {font-size:.8em;margin-bottom:1.875em;line-height:1.875em;} -.large {font-size:1.2em;line-height:2.5em;margin-bottom:1.25em;} -.hide {display:none;} -.quiet {color:#666;} -.loud {color:#000;} -.highlight {background:#ff0;} -.added {background:#060;color:#fff;} -.removed {background:#900;color:#fff;} -.first {margin-left:0;padding-left:0;} -.last {margin-right:0;padding-right:0;} -.top {margin-top:0;padding-top:0;} -.bottom {margin-bottom:0;padding-bottom:0;} - -/* forms.css */ -label {font-weight:bold;} -fieldset {padding:0 1.4em 1.4em 1.4em;margin:0 0 1.5em 0;border:1px solid #ccc;} -legend {font-weight:bold;font-size:1.2em;margin-top:-0.2em;margin-bottom:1em;} -fieldset, #IE8#HACK {padding-top:1.4em;} -legend, #IE8#HACK {margin-top:0;margin-bottom:0;} -input[type=text], input[type=password], input.text, input.title, textarea {background-color:#fff;border:1px solid #bbb;} -input[type=text]:focus, input[type=password]:focus, input.text:focus, input.title:focus, textarea:focus {border-color:#666;} -select {background-color:#fff;border-width:1px;border-style:solid;} -input[type=text], input[type=password], input.text, input.title, textarea, select {margin:0.5em 0;} -input.text, input.title {width:300px;padding:5px;} -input.title {font-size:1.5em;} -textarea {width:390px;height:250px;padding:5px;} -form.inline {line-height:3;} -form.inline p {margin-bottom:0;} -.error, .alert, .notice, .success, .info {padding:0.8em;margin-bottom:1em;border:2px solid #ddd;} -.error, .alert {background:#fbe3e4;color:#8a1f11;border-color:#fbc2c4;} -.notice {background:#fff6bf;color:#514721;border-color:#ffd324;} -.success {background:#e6efc2;color:#264409;border-color:#c6d880;} -.info {background:#d5edf8;color:#205791;border-color:#92cae4;} -.error a, .alert a {color:#8a1f11;} -.notice a {color:#514721;} -.success a {color:#264409;} -.info a {color:#205791;} - -/* grid.css */ -.container {width:950px;margin:0 auto;} -.showgrid {background:url(src/grid.png);} -.column, .span-1, .span-2, .span-3, .span-4, .span-5, .span-6, .span-7, .span-8, .span-9, .span-10, .span-11, .span-12, .span-13, .span-14, .span-15, .span-16, .span-17, .span-18, .span-19, .span-20, .span-21, .span-22, .span-23, .span-24 {float:left;margin-right:10px;} -.last {margin-right:0;} -.span-1 {width:30px;} -.span-2 {width:70px;} -.span-3 {width:110px;} -.span-4 {width:150px;} -.span-5 {width:190px;} -.span-6 {width:230px;} -.span-7 {width:270px;} -.span-8 {width:310px;} -.span-9 {width:350px;} -.span-10 {width:390px;} -.span-11 {width:430px;} -.span-12 {width:470px;} -.span-13 {width:510px;} -.span-14 {width:550px;} -.span-15 {width:590px;} -.span-16 {width:630px;} -.span-17 {width:670px;} -.span-18 {width:710px;} -.span-19 {width:750px;} -.span-20 {width:790px;} -.span-21 {width:830px;} -.span-22 {width:870px;} -.span-23 {width:910px;} -.span-24 {width:950px;margin-right:0;} -input.span-1, textarea.span-1, input.span-2, textarea.span-2, input.span-3, textarea.span-3, input.span-4, textarea.span-4, input.span-5, textarea.span-5, input.span-6, textarea.span-6, input.span-7, textarea.span-7, input.span-8, textarea.span-8, input.span-9, textarea.span-9, input.span-10, textarea.span-10, input.span-11, textarea.span-11, input.span-12, textarea.span-12, input.span-13, textarea.span-13, input.span-14, textarea.span-14, input.span-15, textarea.span-15, input.span-16, textarea.span-16, input.span-17, textarea.span-17, input.span-18, textarea.span-18, input.span-19, textarea.span-19, input.span-20, textarea.span-20, input.span-21, textarea.span-21, input.span-22, textarea.span-22, input.span-23, textarea.span-23, input.span-24, textarea.span-24 {border-left-width:1px;border-right-width:1px;padding-left:5px;padding-right:5px;} -input.span-1, textarea.span-1 {width:18px;} -input.span-2, textarea.span-2 {width:58px;} -input.span-3, textarea.span-3 {width:98px;} -input.span-4, textarea.span-4 {width:138px;} -input.span-5, textarea.span-5 {width:178px;} -input.span-6, textarea.span-6 {width:218px;} -input.span-7, textarea.span-7 {width:258px;} -input.span-8, textarea.span-8 {width:298px;} -input.span-9, textarea.span-9 {width:338px;} -input.span-10, textarea.span-10 {width:378px;} -input.span-11, textarea.span-11 {width:418px;} -input.span-12, textarea.span-12 {width:458px;} -input.span-13, textarea.span-13 {width:498px;} -input.span-14, textarea.span-14 {width:538px;} -input.span-15, textarea.span-15 {width:578px;} -input.span-16, textarea.span-16 {width:618px;} -input.span-17, textarea.span-17 {width:658px;} -input.span-18, textarea.span-18 {width:698px;} -input.span-19, textarea.span-19 {width:738px;} -input.span-20, textarea.span-20 {width:778px;} -input.span-21, textarea.span-21 {width:818px;} -input.span-22, textarea.span-22 {width:858px;} -input.span-23, textarea.span-23 {width:898px;} -input.span-24, textarea.span-24 {width:938px;} -.append-1 {padding-right:40px;} -.append-2 {padding-right:80px;} -.append-3 {padding-right:120px;} -.append-4 {padding-right:160px;} -.append-5 {padding-right:200px;} -.append-6 {padding-right:240px;} -.append-7 {padding-right:280px;} -.append-8 {padding-right:320px;} -.append-9 {padding-right:360px;} -.append-10 {padding-right:400px;} -.append-11 {padding-right:440px;} -.append-12 {padding-right:480px;} -.append-13 {padding-right:520px;} -.append-14 {padding-right:560px;} -.append-15 {padding-right:600px;} -.append-16 {padding-right:640px;} -.append-17 {padding-right:680px;} -.append-18 {padding-right:720px;} -.append-19 {padding-right:760px;} -.append-20 {padding-right:800px;} -.append-21 {padding-right:840px;} -.append-22 {padding-right:880px;} -.append-23 {padding-right:920px;} -.prepend-1 {padding-left:40px;} -.prepend-2 {padding-left:80px;} -.prepend-3 {padding-left:120px;} -.prepend-4 {padding-left:160px;} -.prepend-5 {padding-left:200px;} -.prepend-6 {padding-left:240px;} -.prepend-7 {padding-left:280px;} -.prepend-8 {padding-left:320px;} -.prepend-9 {padding-left:360px;} -.prepend-10 {padding-left:400px;} -.prepend-11 {padding-left:440px;} -.prepend-12 {padding-left:480px;} -.prepend-13 {padding-left:520px;} -.prepend-14 {padding-left:560px;} -.prepend-15 {padding-left:600px;} -.prepend-16 {padding-left:640px;} -.prepend-17 {padding-left:680px;} -.prepend-18 {padding-left:720px;} -.prepend-19 {padding-left:760px;} -.prepend-20 {padding-left:800px;} -.prepend-21 {padding-left:840px;} -.prepend-22 {padding-left:880px;} -.prepend-23 {padding-left:920px;} -.border {padding-right:4px;margin-right:5px;border-right:1px solid #ddd;} -.colborder {padding-right:24px;margin-right:25px;border-right:1px solid #ddd;} -.pull-1 {margin-left:-40px;} -.pull-2 {margin-left:-80px;} -.pull-3 {margin-left:-120px;} -.pull-4 {margin-left:-160px;} -.pull-5 {margin-left:-200px;} -.pull-6 {margin-left:-240px;} -.pull-7 {margin-left:-280px;} -.pull-8 {margin-left:-320px;} -.pull-9 {margin-left:-360px;} -.pull-10 {margin-left:-400px;} -.pull-11 {margin-left:-440px;} -.pull-12 {margin-left:-480px;} -.pull-13 {margin-left:-520px;} -.pull-14 {margin-left:-560px;} -.pull-15 {margin-left:-600px;} -.pull-16 {margin-left:-640px;} -.pull-17 {margin-left:-680px;} -.pull-18 {margin-left:-720px;} -.pull-19 {margin-left:-760px;} -.pull-20 {margin-left:-800px;} -.pull-21 {margin-left:-840px;} -.pull-22 {margin-left:-880px;} -.pull-23 {margin-left:-920px;} -.pull-24 {margin-left:-960px;} -.pull-1, .pull-2, .pull-3, .pull-4, .pull-5, .pull-6, .pull-7, .pull-8, .pull-9, .pull-10, .pull-11, .pull-12, .pull-13, .pull-14, .pull-15, .pull-16, .pull-17, .pull-18, .pull-19, .pull-20, .pull-21, .pull-22, .pull-23, .pull-24 {float:left;position:relative;} -.push-1 {margin:0 -40px 1.5em 40px;} -.push-2 {margin:0 -80px 1.5em 80px;} -.push-3 {margin:0 -120px 1.5em 120px;} -.push-4 {margin:0 -160px 1.5em 160px;} -.push-5 {margin:0 -200px 1.5em 200px;} -.push-6 {margin:0 -240px 1.5em 240px;} -.push-7 {margin:0 -280px 1.5em 280px;} -.push-8 {margin:0 -320px 1.5em 320px;} -.push-9 {margin:0 -360px 1.5em 360px;} -.push-10 {margin:0 -400px 1.5em 400px;} -.push-11 {margin:0 -440px 1.5em 440px;} -.push-12 {margin:0 -480px 1.5em 480px;} -.push-13 {margin:0 -520px 1.5em 520px;} -.push-14 {margin:0 -560px 1.5em 560px;} -.push-15 {margin:0 -600px 1.5em 600px;} -.push-16 {margin:0 -640px 1.5em 640px;} -.push-17 {margin:0 -680px 1.5em 680px;} -.push-18 {margin:0 -720px 1.5em 720px;} -.push-19 {margin:0 -760px 1.5em 760px;} -.push-20 {margin:0 -800px 1.5em 800px;} -.push-21 {margin:0 -840px 1.5em 840px;} -.push-22 {margin:0 -880px 1.5em 880px;} -.push-23 {margin:0 -920px 1.5em 920px;} -.push-24 {margin:0 -960px 1.5em 960px;} -.push-1, .push-2, .push-3, .push-4, .push-5, .push-6, .push-7, .push-8, .push-9, .push-10, .push-11, .push-12, .push-13, .push-14, .push-15, .push-16, .push-17, .push-18, .push-19, .push-20, .push-21, .push-22, .push-23, .push-24 {float:left;position:relative;} -div.prepend-top, .prepend-top {margin-top:1.5em;} -div.append-bottom, .append-bottom {margin-bottom:1.5em;} -.box {padding:1.5em;margin-bottom:1.5em;background:#e5eCf9;} -hr {background:#ddd;color:#ddd;clear:both;float:none;width:100%;height:1px;margin:0 0 1.45em;border:none;} -hr.space {background:#fff;color:#fff;visibility:hidden;} -.clearfix:after, .container:after {content:"\0020";display:block;height:0;clear:both;visibility:hidden;overflow:hidden;} -.clearfix, .container {display:block;} -.clear {clear:both;} \ No newline at end of file diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/blueprint/src/forms.css --- a/web/enmi/res/blueprint/src/forms.css Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,81 +0,0 @@ -/* -------------------------------------------------------------- - - forms.css - * Sets up some default styling for forms - * Gives you classes to enhance your forms - - Usage: - * For text fields, use class .title or .text - * For inline forms, use .inline (even when using columns) - --------------------------------------------------------------- */ - -/* - A special hack is included for IE8 since it does not apply padding - correctly on fieldsets - */ -label { font-weight: bold; } -fieldset { padding:0 1.4em 1.4em 1.4em; margin: 0 0 1.5em 0; border: 1px solid #ccc; } -legend { font-weight: bold; font-size:1.2em; margin-top:-0.2em; margin-bottom:1em; } - -fieldset, #IE8#HACK { padding-top:1.4em; } -legend, #IE8#HACK { margin-top:0; margin-bottom:0; } - -/* Form fields --------------------------------------------------------------- */ - -/* - Attribute selectors are used to differentiate the different types - of input elements, but to support old browsers, you will have to - add classes for each one. ".title" simply creates a large text - field, this is purely for looks. - */ -input[type=text], input[type=password], -input.text, input.title, -textarea { - background-color:#fff; - border:1px solid #bbb; -} -input[type=text]:focus, input[type=password]:focus, -input.text:focus, input.title:focus, -textarea:focus { - border-color:#666; -} -select { background-color:#fff; border-width:1px; border-style:solid; } - -input[type=text], input[type=password], -input.text, input.title, -textarea, select { - margin:0.5em 0; -} - -input.text, -input.title { width: 300px; padding:5px; } -input.title { font-size:1.5em; } -textarea { width: 390px; height: 250px; padding:5px; } - -/* - This is to be used on forms where a variety of elements are - placed side-by-side. Use the p tag to denote a line. - */ -form.inline { line-height:3; } -form.inline p { margin-bottom:0; } - - -/* Success, info, notice and error/alert boxes --------------------------------------------------------------- */ - -.error, -.alert, -.notice, -.success, -.info { padding: 0.8em; margin-bottom: 1em; border: 2px solid #ddd; } - -.error, .alert { background: #fbe3e4; color: #8a1f11; border-color: #fbc2c4; } -.notice { background: #fff6bf; color: #514721; border-color: #ffd324; } -.success { background: #e6efc2; color: #264409; border-color: #c6d880; } -.info { background: #d5edf8; color: #205791; border-color: #92cae4; } -.error a, .alert a { color: #8a1f11; } -.notice a { color: #514721; } -.success a { color: #264409; } -.info a { color: #205791; } diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/blueprint/src/grid.css --- a/web/enmi/res/blueprint/src/grid.css Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,280 +0,0 @@ -/* -------------------------------------------------------------- - - grid.css - * Sets up an easy-to-use grid of 24 columns. - - By default, the grid is 950px wide, with 24 columns - spanning 30px, and a 10px margin between columns. - - If you need fewer or more columns, namespaces or semantic - element names, use the compressor script (lib/compress.rb) - --------------------------------------------------------------- */ - -/* A container should group all your columns. */ -.container { - width: 950px; - margin: 0 auto; -} - -/* Use this class on any .span / container to see the grid. */ -.showgrid { - background: url(src/grid.png); -} - - -/* Columns --------------------------------------------------------------- */ - -/* Sets up basic grid floating and margin. */ -.column, .span-1, .span-2, .span-3, .span-4, .span-5, .span-6, .span-7, .span-8, .span-9, .span-10, .span-11, .span-12, .span-13, .span-14, .span-15, .span-16, .span-17, .span-18, .span-19, .span-20, .span-21, .span-22, .span-23, .span-24 { - float: left; - margin-right: 10px; -} - -/* The last column in a row needs this class. */ -.last { margin-right: 0; } - -/* Use these classes to set the width of a column. */ -.span-1 {width: 30px;} - -.span-2 {width: 70px;} -.span-3 {width: 110px;} -.span-4 {width: 150px;} -.span-5 {width: 190px;} -.span-6 {width: 230px;} -.span-7 {width: 270px;} -.span-8 {width: 310px;} -.span-9 {width: 350px;} -.span-10 {width: 390px;} -.span-11 {width: 430px;} -.span-12 {width: 470px;} -.span-13 {width: 510px;} -.span-14 {width: 550px;} -.span-15 {width: 590px;} -.span-16 {width: 630px;} -.span-17 {width: 670px;} -.span-18 {width: 710px;} -.span-19 {width: 750px;} -.span-20 {width: 790px;} -.span-21 {width: 830px;} -.span-22 {width: 870px;} -.span-23 {width: 910px;} -.span-24 {width:950px; margin-right:0;} - -/* Use these classes to set the width of an input. */ -input.span-1, textarea.span-1, input.span-2, textarea.span-2, input.span-3, textarea.span-3, input.span-4, textarea.span-4, input.span-5, textarea.span-5, input.span-6, textarea.span-6, input.span-7, textarea.span-7, input.span-8, textarea.span-8, input.span-9, textarea.span-9, input.span-10, textarea.span-10, input.span-11, textarea.span-11, input.span-12, textarea.span-12, input.span-13, textarea.span-13, input.span-14, textarea.span-14, input.span-15, textarea.span-15, input.span-16, textarea.span-16, input.span-17, textarea.span-17, input.span-18, textarea.span-18, input.span-19, textarea.span-19, input.span-20, textarea.span-20, input.span-21, textarea.span-21, input.span-22, textarea.span-22, input.span-23, textarea.span-23, input.span-24, textarea.span-24 { - border-left-width: 1px; - border-right-width: 1px; - padding-left: 5px; - padding-right: 5px; -} - -input.span-1, textarea.span-1 { width: 18px; } -input.span-2, textarea.span-2 { width: 58px; } -input.span-3, textarea.span-3 { width: 98px; } -input.span-4, textarea.span-4 { width: 138px; } -input.span-5, textarea.span-5 { width: 178px; } -input.span-6, textarea.span-6 { width: 218px; } -input.span-7, textarea.span-7 { width: 258px; } -input.span-8, textarea.span-8 { width: 298px; } -input.span-9, textarea.span-9 { width: 338px; } -input.span-10, textarea.span-10 { width: 378px; } -input.span-11, textarea.span-11 { width: 418px; } -input.span-12, textarea.span-12 { width: 458px; } -input.span-13, textarea.span-13 { width: 498px; } -input.span-14, textarea.span-14 { width: 538px; } -input.span-15, textarea.span-15 { width: 578px; } -input.span-16, textarea.span-16 { width: 618px; } -input.span-17, textarea.span-17 { width: 658px; } -input.span-18, textarea.span-18 { width: 698px; } -input.span-19, textarea.span-19 { width: 738px; } -input.span-20, textarea.span-20 { width: 778px; } -input.span-21, textarea.span-21 { width: 818px; } -input.span-22, textarea.span-22 { width: 858px; } -input.span-23, textarea.span-23 { width: 898px; } -input.span-24, textarea.span-24 { width: 938px; } - -/* Add these to a column to append empty cols. */ - -.append-1 { padding-right: 40px;} -.append-2 { padding-right: 80px;} -.append-3 { padding-right: 120px;} -.append-4 { padding-right: 160px;} -.append-5 { padding-right: 200px;} -.append-6 { padding-right: 240px;} -.append-7 { padding-right: 280px;} -.append-8 { padding-right: 320px;} -.append-9 { padding-right: 360px;} -.append-10 { padding-right: 400px;} -.append-11 { padding-right: 440px;} -.append-12 { padding-right: 480px;} -.append-13 { padding-right: 520px;} -.append-14 { padding-right: 560px;} -.append-15 { padding-right: 600px;} -.append-16 { padding-right: 640px;} -.append-17 { padding-right: 680px;} -.append-18 { padding-right: 720px;} -.append-19 { padding-right: 760px;} -.append-20 { padding-right: 800px;} -.append-21 { padding-right: 840px;} -.append-22 { padding-right: 880px;} -.append-23 { padding-right: 920px;} - -/* Add these to a column to prepend empty cols. */ - -.prepend-1 { padding-left: 40px;} -.prepend-2 { padding-left: 80px;} -.prepend-3 { padding-left: 120px;} -.prepend-4 { padding-left: 160px;} -.prepend-5 { padding-left: 200px;} -.prepend-6 { padding-left: 240px;} -.prepend-7 { padding-left: 280px;} -.prepend-8 { padding-left: 320px;} -.prepend-9 { padding-left: 360px;} -.prepend-10 { padding-left: 400px;} -.prepend-11 { padding-left: 440px;} -.prepend-12 { padding-left: 480px;} -.prepend-13 { padding-left: 520px;} -.prepend-14 { padding-left: 560px;} -.prepend-15 { padding-left: 600px;} -.prepend-16 { padding-left: 640px;} -.prepend-17 { padding-left: 680px;} -.prepend-18 { padding-left: 720px;} -.prepend-19 { padding-left: 760px;} -.prepend-20 { padding-left: 800px;} -.prepend-21 { padding-left: 840px;} -.prepend-22 { padding-left: 880px;} -.prepend-23 { padding-left: 920px;} - - -/* Border on right hand side of a column. */ -.border { - padding-right: 4px; - margin-right: 5px; - border-right: 1px solid #ddd; -} - -/* Border with more whitespace, spans one column. */ -.colborder { - padding-right: 24px; - margin-right: 25px; - border-right: 1px solid #ddd; -} - - -/* Use these classes on an element to push it into the -next column, or to pull it into the previous column. */ - - -.pull-1 { margin-left: -40px; } -.pull-2 { margin-left: -80px; } -.pull-3 { margin-left: -120px; } -.pull-4 { margin-left: -160px; } -.pull-5 { margin-left: -200px; } -.pull-6 { margin-left: -240px; } -.pull-7 { margin-left: -280px; } -.pull-8 { margin-left: -320px; } -.pull-9 { margin-left: -360px; } -.pull-10 { margin-left: -400px; } -.pull-11 { margin-left: -440px; } -.pull-12 { margin-left: -480px; } -.pull-13 { margin-left: -520px; } -.pull-14 { margin-left: -560px; } -.pull-15 { margin-left: -600px; } -.pull-16 { margin-left: -640px; } -.pull-17 { margin-left: -680px; } -.pull-18 { margin-left: -720px; } -.pull-19 { margin-left: -760px; } -.pull-20 { margin-left: -800px; } -.pull-21 { margin-left: -840px; } -.pull-22 { margin-left: -880px; } -.pull-23 { margin-left: -920px; } -.pull-24 { margin-left: -960px; } - -.pull-1, .pull-2, .pull-3, .pull-4, .pull-5, .pull-6, .pull-7, .pull-8, .pull-9, .pull-10, .pull-11, .pull-12, .pull-13, .pull-14, .pull-15, .pull-16, .pull-17, .pull-18, .pull-19, .pull-20, .pull-21, .pull-22, .pull-23, .pull-24 {float: left; position:relative;} - - -.push-1 { margin: 0 -40px 1.5em 40px; } -.push-2 { margin: 0 -80px 1.5em 80px; } -.push-3 { margin: 0 -120px 1.5em 120px; } -.push-4 { margin: 0 -160px 1.5em 160px; } -.push-5 { margin: 0 -200px 1.5em 200px; } -.push-6 { margin: 0 -240px 1.5em 240px; } -.push-7 { margin: 0 -280px 1.5em 280px; } -.push-8 { margin: 0 -320px 1.5em 320px; } -.push-9 { margin: 0 -360px 1.5em 360px; } -.push-10 { margin: 0 -400px 1.5em 400px; } -.push-11 { margin: 0 -440px 1.5em 440px; } -.push-12 { margin: 0 -480px 1.5em 480px; } -.push-13 { margin: 0 -520px 1.5em 520px; } -.push-14 { margin: 0 -560px 1.5em 560px; } -.push-15 { margin: 0 -600px 1.5em 600px; } -.push-16 { margin: 0 -640px 1.5em 640px; } -.push-17 { margin: 0 -680px 1.5em 680px; } -.push-18 { margin: 0 -720px 1.5em 720px; } -.push-19 { margin: 0 -760px 1.5em 760px; } -.push-20 { margin: 0 -800px 1.5em 800px; } -.push-21 { margin: 0 -840px 1.5em 840px; } -.push-22 { margin: 0 -880px 1.5em 880px; } -.push-23 { margin: 0 -920px 1.5em 920px; } -.push-24 { margin: 0 -960px 1.5em 960px; } - -.push-1, .push-2, .push-3, .push-4, .push-5, .push-6, .push-7, .push-8, .push-9, .push-10, .push-11, .push-12, .push-13, .push-14, .push-15, .push-16, .push-17, .push-18, .push-19, .push-20, .push-21, .push-22, .push-23, .push-24 {float: left; position:relative;} - - -/* Misc classes and elements --------------------------------------------------------------- */ - -/* In case you need to add a gutter above/below an element */ -div.prepend-top, .prepend-top { - margin-top:1.5em; -} -div.append-bottom, .append-bottom { - margin-bottom:1.5em; -} - -/* Use a .box to create a padded box inside a column. */ -.box { - padding: 1.5em; - margin-bottom: 1.5em; - background: #e5eCf9; -} - -/* Use this to create a horizontal ruler across a column. */ -hr { - background: #ddd; - color: #ddd; - clear: both; - float: none; - width: 100%; - height: 1px; - margin: 0 0 1.45em; - border: none; -} - -hr.space { - background: #fff; - color: #fff; - visibility: hidden; -} - - -/* Clearing floats without extra markup - Based on How To Clear Floats Without Structural Markup by PiE - [http://www.positioniseverything.net/easyclearing.html] */ - -.clearfix:after, .container:after { - content: "\0020"; - display: block; - height: 0; - clear: both; - visibility: hidden; - overflow:hidden; -} -.clearfix, .container {display: block;} - -/* Regular clearing - apply to column that should drop below previous ones. */ - -.clear { clear:both; } diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/blueprint/src/grid.png Binary file web/enmi/res/blueprint/src/grid.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/blueprint/src/ie.css --- a/web/enmi/res/blueprint/src/ie.css Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,79 +0,0 @@ -/* -------------------------------------------------------------- - - ie.css - - Contains every hack for Internet Explorer, - so that our core files stay sweet and nimble. - --------------------------------------------------------------- */ - -/* Make sure the layout is centered in IE5 */ -body { text-align: center; } -.container { text-align: left; } - -/* Fixes IE margin bugs */ -* html .column, * html .span-1, * html .span-2, -* html .span-3, * html .span-4, * html .span-5, -* html .span-6, * html .span-7, * html .span-8, -* html .span-9, * html .span-10, * html .span-11, -* html .span-12, * html .span-13, * html .span-14, -* html .span-15, * html .span-16, * html .span-17, -* html .span-18, * html .span-19, * html .span-20, -* html .span-21, * html .span-22, * html .span-23, -* html .span-24 { display:inline; overflow-x: hidden; } - - -/* Elements --------------------------------------------------------------- */ - -/* Fixes incorrect styling of legend in IE6. */ -* html legend { margin:0px -8px 16px 0; padding:0; } - -/* Fixes wrong line-height on sup/sub in IE. */ -sup { vertical-align:text-top; } -sub { vertical-align:text-bottom; } - -/* Fixes IE7 missing wrapping of code elements. */ -html>body p code { *white-space: normal; } - -/* IE 6&7 has problems with setting proper
margins. */ -hr { margin:-8px auto 11px; } - -/* Explicitly set interpolation, allowing dynamically resized images to not look horrible */ -img { -ms-interpolation-mode:bicubic; } - -/* Clearing --------------------------------------------------------------- */ - -/* Makes clearfix actually work in IE */ -.clearfix, .container { display:inline-block; } -* html .clearfix, -* html .container { height:1%; } - - -/* Forms --------------------------------------------------------------- */ - -/* Fixes padding on fieldset */ -fieldset { padding-top:0; } -legend { margin-top:-0.2em; margin-bottom:1em; margin-left:-0.5em; } - -/* Makes classic textareas in IE 6 resemble other browsers */ -textarea { overflow:auto; } - -/* Makes labels behave correctly in IE 6 and 7 */ -label { vertical-align:middle; position:relative; top:-0.25em; } - -/* Fixes rule that IE 6 ignores */ -input.text, input.title, textarea { background-color:#fff; border:1px solid #bbb; } -input.text:focus, input.title:focus { border-color:#666; } -input.text, input.title, textarea, select { margin:0.5em 0; } -input.checkbox, input.radio { position:relative; top:.25em; } - -/* Fixes alignment of inline form elements */ -form.inline div, form.inline p { vertical-align:middle; } -form.inline input.checkbox, form.inline input.radio, -form.inline input.button, form.inline button { - margin:0.5em 0; -} -button, input.button { position:relative;top:0.25em; } diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/blueprint/src/print.css --- a/web/enmi/res/blueprint/src/print.css Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,92 +0,0 @@ -/* -------------------------------------------------------------- - - print.css - * Gives you some sensible styles for printing pages. - * See Readme file in this directory for further instructions. - - Some additions you'll want to make, customized to your markup: - #header, #footer, #navigation { display:none; } - --------------------------------------------------------------- */ - -body { - line-height: 1.5; - font-family: "Helvetica Neue", Arial, Helvetica, sans-serif; - color:#000; - background: none; - font-size: 10pt; -} - - -/* Layout --------------------------------------------------------------- */ - -.container { - background: none; -} - -hr { - background:#ccc; - color:#ccc; - width:100%; - height:2px; - margin:2em 0; - padding:0; - border:none; -} -hr.space { - background: #fff; - color: #fff; - visibility: hidden; -} - - -/* Text --------------------------------------------------------------- */ - -h1,h2,h3,h4,h5,h6 { font-family: "Helvetica Neue", Arial, "Lucida Grande", sans-serif; } -code { font:.9em "Courier New", Monaco, Courier, monospace; } - -a img { border:none; } -p img.top { margin-top: 0; } - -blockquote { - margin:1.5em; - padding:1em; - font-style:italic; - font-size:.9em; -} - -.small { font-size: .9em; } -.large { font-size: 1.1em; } -.quiet { color: #999; } -.hide { display:none; } - - -/* Links --------------------------------------------------------------- */ - -a:link, a:visited { - background: transparent; - font-weight:700; - text-decoration: underline; -} - -/* - This has been the source of many questions in the past. This - snippet of CSS appends the URL of each link within the text. - The idea is that users printing your webpage will want to know - the URLs they go to. If you want to remove this functionality, - comment out this snippet and make sure to re-compress your files. - */ -a:link:after, a:visited:after { - content: " (" attr(href) ")"; - font-size: 90%; -} - -/* If you're having trouble printing relative links, uncomment and customize this: - (note: This is valid CSS3, but it still won't go through the W3C CSS Validator) */ - -/* a[href^="/"]:after { - content: " (http://www.yourdomain.com" attr(href) ") "; -} */ diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/blueprint/src/reset.css --- a/web/enmi/res/blueprint/src/reset.css Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,67 +0,0 @@ -/* -------------------------------------------------------------- - - reset.css - * Resets default browser CSS. - --------------------------------------------------------------- */ - -html { - margin:0; - padding:0; - border:0; -} - -body, div, span, object, iframe, -h1, h2, h3, h4, h5, h6, p, blockquote, pre, -a, abbr, acronym, address, code, -del, dfn, em, img, q, dl, dt, dd, ol, ul, li, -fieldset, form, label, legend, -table, caption, tbody, tfoot, thead, tr, th, td, -article, aside, dialog, figure, footer, header, -hgroup, nav, section { - margin: 0; - padding: 0; - border: 0; - font-weight: inherit; - font-style: inherit; - font-size: 100%; - font-family: inherit; - vertical-align: baseline; -} - -/* This helps to make newer HTML5 elements behave like DIVs in older browers */ -article, aside, dialog, figure, footer, header, -hgroup, nav, section { - display:block; -} - -/* Line-height should always be unitless! */ -body { - line-height: 1.5; - background: white; -} - -/* Tables still need 'cellspacing="0"' in the markup. */ -table { - border-collapse: separate; - border-spacing: 0; -} -/* float:none prevents the span-x classes from breaking table-cell display */ -caption, th, td { - text-align: left; - font-weight: normal; - float:none !important; -} -table, th, td { - vertical-align: middle; -} - -/* Remove possible quote marks (") from ,
. */ -blockquote:before, blockquote:after, q:before, q:after { content: ''; } -blockquote, q { quotes: "" ""; } - -/* Remove annoying border on linked images. */ -a img { border: none; } - -/* Remember to define your own focus styles! */ -:focus { outline: 0; } \ No newline at end of file diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/blueprint/src/typography.css --- a/web/enmi/res/blueprint/src/typography.css Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,123 +0,0 @@ -/* -------------------------------------------------------------- - - typography.css - * Sets up some sensible default typography. - --------------------------------------------------------------- */ - -/* Default font settings. - The font-size percentage is of 16px. (0.75 * 16px = 12px) */ -html { font-size:100.01%; } -body { - font-size: 75%; - color: #222; - background: #fff; - font-family: "Helvetica Neue", Arial, Helvetica, sans-serif; -} - - -/* Headings --------------------------------------------------------------- */ - -h1,h2,h3,h4,h5,h6 { font-weight: normal; color: #111; } - -h1 { font-size: 3em; line-height: 1; margin-bottom: 0.5em; } -h2 { font-size: 2em; margin-bottom: 0.75em; } -h3 { font-size: 1.5em; line-height: 1; margin-bottom: 1em; } -h4 { font-size: 1.2em; line-height: 1.25; margin-bottom: 1.25em; } -h5 { font-size: 1em; font-weight: bold; margin-bottom: 1.5em; } -h6 { font-size: 1em; font-weight: bold; } - -h1 img, h2 img, h3 img, -h4 img, h5 img, h6 img { - margin: 0; -} - - -/* Text elements --------------------------------------------------------------- */ - -p { margin: 0 0 1.5em; } -/* - These can be used to pull an image at the start of a paragraph, so - that the text flows around it (usage:

Text

) - */ -.left { float: left !important; } -p .left { margin: 1.5em 1.5em 1.5em 0; padding: 0; } -.right { float: right !important; } -p .right { margin: 1.5em 0 1.5em 1.5em; padding: 0; } - -a:focus, -a:hover { color: #09f; } -a { color: #06c; text-decoration: underline; } - -blockquote { margin: 1.5em; color: #666; font-style: italic; } -strong,dfn { font-weight: bold; } -em,dfn { font-style: italic; } -sup, sub { line-height: 0; } - -abbr, -acronym { border-bottom: 1px dotted #666; } -address { margin: 0 0 1.5em; font-style: italic; } -del { color:#666; } - -pre { margin: 1.5em 0; white-space: pre; } -pre,code,tt { font: 1em 'andale mono', 'lucida console', monospace; line-height: 1.5; } - - -/* Lists --------------------------------------------------------------- */ - -li ul, -li ol { margin: 0; } -ul, ol { margin: 0 1.5em 1.5em 0; padding-left: 1.5em; } - -ul { list-style-type: disc; } -ol { list-style-type: decimal; } - -dl { margin: 0 0 1.5em 0; } -dl dt { font-weight: bold; } -dd { margin-left: 1.5em;} - - -/* Tables --------------------------------------------------------------- */ - -/* - Because of the need for padding on TH and TD, the vertical rhythm - on table cells has to be 27px, instead of the standard 18px or 36px - of other elements. - */ -table { margin-bottom: 1.4em; width:100%; } -th { font-weight: bold; } -thead th { background: #c3d9ff; } -th,td,caption { padding: 4px 10px 4px 5px; } -/* - You can zebra-stripe your tables in outdated browsers by adding - the class "even" to every other table row. - */ -tbody tr:nth-child(even) td, -tbody tr.even td { - background: #e5ecf9; -} -tfoot { font-style: italic; } -caption { background: #eee; } - - -/* Misc classes --------------------------------------------------------------- */ - -.small { font-size: .8em; margin-bottom: 1.875em; line-height: 1.875em; } -.large { font-size: 1.2em; line-height: 2.5em; margin-bottom: 1.25em; } -.hide { display: none; } - -.quiet { color: #666; } -.loud { color: #000; } -.highlight { background:#ff0; } -.added { background:#060; color: #fff; } -.removed { background:#900; color: #fff; } - -.first { margin-left:0; padding-left:0; } -.last { margin-right:0; padding-right:0; } -.top { margin-top:0; padding-top:0; } -.bottom { margin-bottom:0; padding-bottom:0; } diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/ajax.txt --- a/web/enmi/res/jquery.fancybox/ajax.txt Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,6 +0,0 @@ -
-

This comes from ajax request

-

- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean non velit. Donec pharetra, felis ut tristique adipiscing, diam magna rhoncus neque, sit amet convallis nibh nibh vel libero. Nulla facilisi. In eleifend nisl quis lorem. Duis semper fringilla justo. Proin imperdiet sapien sed lectus. Integer quis nisl et est elementum tempor. Morbi quis tellus nec turpis suscipit molestie. Praesent sed pede. Pellentesque ac orci. Sed sit amet urna eget tellus hendrerit aliquet. Nulla consectetur, pede aliquam ornare placerat, nunc augue commodo leo, sit amet elementum dolor est eleifend magna. -

-
\ No newline at end of file diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/example/10_b.jpg Binary file web/enmi/res/jquery.fancybox/example/10_b.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/example/10_s.jpg Binary file web/enmi/res/jquery.fancybox/example/10_s.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/example/11_b.jpg Binary file web/enmi/res/jquery.fancybox/example/11_b.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/example/11_s.jpg Binary file web/enmi/res/jquery.fancybox/example/11_s.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/example/12_b.jpg Binary file web/enmi/res/jquery.fancybox/example/12_b.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/example/12_s.jpg Binary file web/enmi/res/jquery.fancybox/example/12_s.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/example/1_b.jpg Binary file web/enmi/res/jquery.fancybox/example/1_b.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/example/1_s.jpg Binary file web/enmi/res/jquery.fancybox/example/1_s.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/example/2_b.jpg Binary file web/enmi/res/jquery.fancybox/example/2_b.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/example/2_s.jpg Binary file web/enmi/res/jquery.fancybox/example/2_s.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/example/3_b.jpg Binary file web/enmi/res/jquery.fancybox/example/3_b.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/example/3_s.jpg Binary file web/enmi/res/jquery.fancybox/example/3_s.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/example/4_b.jpg Binary file web/enmi/res/jquery.fancybox/example/4_b.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/example/4_s.jpg Binary file web/enmi/res/jquery.fancybox/example/4_s.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/example/5_b.jpg Binary file web/enmi/res/jquery.fancybox/example/5_b.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/example/5_s.jpg Binary file web/enmi/res/jquery.fancybox/example/5_s.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/example/6_b.jpg Binary file web/enmi/res/jquery.fancybox/example/6_b.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/example/6_s.jpg Binary file web/enmi/res/jquery.fancybox/example/6_s.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/example/7_b.jpg Binary file web/enmi/res/jquery.fancybox/example/7_b.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/example/7_s.jpg Binary file web/enmi/res/jquery.fancybox/example/7_s.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/example/8_b.jpg Binary file web/enmi/res/jquery.fancybox/example/8_b.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/example/8_s.jpg Binary file web/enmi/res/jquery.fancybox/example/8_s.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/example/9_b.jpg Binary file web/enmi/res/jquery.fancybox/example/9_b.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/example/9_s.jpg Binary file web/enmi/res/jquery.fancybox/example/9_s.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/fancybox/blank.gif Binary file web/enmi/res/jquery.fancybox/fancybox/blank.gif has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/fancybox/fancy_close.png Binary file web/enmi/res/jquery.fancybox/fancybox/fancy_close.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/fancybox/fancy_loading.png Binary file web/enmi/res/jquery.fancybox/fancybox/fancy_loading.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/fancybox/fancy_nav_left.png Binary file web/enmi/res/jquery.fancybox/fancybox/fancy_nav_left.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/fancybox/fancy_nav_right.png Binary file web/enmi/res/jquery.fancybox/fancybox/fancy_nav_right.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/fancybox/fancy_shadow_e.png Binary file web/enmi/res/jquery.fancybox/fancybox/fancy_shadow_e.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/fancybox/fancy_shadow_n.png Binary file web/enmi/res/jquery.fancybox/fancybox/fancy_shadow_n.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/fancybox/fancy_shadow_ne.png Binary file web/enmi/res/jquery.fancybox/fancybox/fancy_shadow_ne.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/fancybox/fancy_shadow_nw.png Binary file web/enmi/res/jquery.fancybox/fancybox/fancy_shadow_nw.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/fancybox/fancy_shadow_s.png Binary file web/enmi/res/jquery.fancybox/fancybox/fancy_shadow_s.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/fancybox/fancy_shadow_se.png Binary file web/enmi/res/jquery.fancybox/fancybox/fancy_shadow_se.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/fancybox/fancy_shadow_sw.png Binary file web/enmi/res/jquery.fancybox/fancybox/fancy_shadow_sw.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/fancybox/fancy_shadow_w.png Binary file web/enmi/res/jquery.fancybox/fancybox/fancy_shadow_w.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/fancybox/fancy_title_left.png Binary file web/enmi/res/jquery.fancybox/fancybox/fancy_title_left.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/fancybox/fancy_title_main.png Binary file web/enmi/res/jquery.fancybox/fancybox/fancy_title_main.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/fancybox/fancy_title_over.png Binary file web/enmi/res/jquery.fancybox/fancybox/fancy_title_over.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/fancybox/fancy_title_right.png Binary file web/enmi/res/jquery.fancybox/fancybox/fancy_title_right.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/fancybox/fancybox-x.png Binary file web/enmi/res/jquery.fancybox/fancybox/fancybox-x.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/fancybox/fancybox-y.png Binary file web/enmi/res/jquery.fancybox/fancybox/fancybox-y.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/fancybox/fancybox.png Binary file web/enmi/res/jquery.fancybox/fancybox/fancybox.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/fancybox/jquery.easing-1.3.pack.js --- a/web/enmi/res/jquery.fancybox/fancybox/jquery.easing-1.3.pack.js Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,72 +0,0 @@ -/* - * jQuery Easing v1.3 - http://gsgd.co.uk/sandbox/jquery/easing/ - * - * Uses the built in easing capabilities added In jQuery 1.1 - * to offer multiple easing options - * - * TERMS OF USE - jQuery Easing - * - * Open source under the BSD License. - * - * Copyright © 2008 George McGinley Smith - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without modification, - * are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, this list of - * conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright notice, this list - * of conditions and the following disclaimer in the documentation and/or other materials - * provided with the distribution. - * - * Neither the name of the author nor the names of contributors may be used to endorse - * or promote products derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE - * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED - * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED - * OF THE POSSIBILITY OF SUCH DAMAGE. - * -*/ - -// t: current time, b: begInnIng value, c: change In value, d: duration -eval(function(p,a,c,k,e,r){e=function(c){return(c35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('h.i[\'1a\']=h.i[\'z\'];h.O(h.i,{y:\'D\',z:9(x,t,b,c,d){6 h.i[h.i.y](x,t,b,c,d)},17:9(x,t,b,c,d){6 c*(t/=d)*t+b},D:9(x,t,b,c,d){6-c*(t/=d)*(t-2)+b},13:9(x,t,b,c,d){e((t/=d/2)<1)6 c/2*t*t+b;6-c/2*((--t)*(t-2)-1)+b},X:9(x,t,b,c,d){6 c*(t/=d)*t*t+b},U:9(x,t,b,c,d){6 c*((t=t/d-1)*t*t+1)+b},R:9(x,t,b,c,d){e((t/=d/2)<1)6 c/2*t*t*t+b;6 c/2*((t-=2)*t*t+2)+b},N:9(x,t,b,c,d){6 c*(t/=d)*t*t*t+b},M:9(x,t,b,c,d){6-c*((t=t/d-1)*t*t*t-1)+b},L:9(x,t,b,c,d){e((t/=d/2)<1)6 c/2*t*t*t*t+b;6-c/2*((t-=2)*t*t*t-2)+b},K:9(x,t,b,c,d){6 c*(t/=d)*t*t*t*t+b},J:9(x,t,b,c,d){6 c*((t=t/d-1)*t*t*t*t+1)+b},I:9(x,t,b,c,d){e((t/=d/2)<1)6 c/2*t*t*t*t*t+b;6 c/2*((t-=2)*t*t*t*t+2)+b},G:9(x,t,b,c,d){6-c*8.C(t/d*(8.g/2))+c+b},15:9(x,t,b,c,d){6 c*8.n(t/d*(8.g/2))+b},12:9(x,t,b,c,d){6-c/2*(8.C(8.g*t/d)-1)+b},Z:9(x,t,b,c,d){6(t==0)?b:c*8.j(2,10*(t/d-1))+b},Y:9(x,t,b,c,d){6(t==d)?b+c:c*(-8.j(2,-10*t/d)+1)+b},W:9(x,t,b,c,d){e(t==0)6 b;e(t==d)6 b+c;e((t/=d/2)<1)6 c/2*8.j(2,10*(t-1))+b;6 c/2*(-8.j(2,-10*--t)+2)+b},V:9(x,t,b,c,d){6-c*(8.o(1-(t/=d)*t)-1)+b},S:9(x,t,b,c,d){6 c*8.o(1-(t=t/d-1)*t)+b},Q:9(x,t,b,c,d){e((t/=d/2)<1)6-c/2*(8.o(1-t*t)-1)+b;6 c/2*(8.o(1-(t-=2)*t)+1)+b},P:9(x,t,b,c,d){f s=1.l;f p=0;f a=c;e(t==0)6 b;e((t/=d)==1)6 b+c;e(!p)p=d*.3;e(a<8.w(c)){a=c;f s=p/4}m f s=p/(2*8.g)*8.r(c/a);6-(a*8.j(2,10*(t-=1))*8.n((t*d-s)*(2*8.g)/p))+b},H:9(x,t,b,c,d){f s=1.l;f p=0;f a=c;e(t==0)6 b;e((t/=d)==1)6 b+c;e(!p)p=d*.3;e(a<8.w(c)){a=c;f s=p/4}m f s=p/(2*8.g)*8.r(c/a);6 a*8.j(2,-10*t)*8.n((t*d-s)*(2*8.g)/p)+c+b},T:9(x,t,b,c,d){f s=1.l;f p=0;f a=c;e(t==0)6 b;e((t/=d/2)==2)6 b+c;e(!p)p=d*(.3*1.5);e(a<8.w(c)){a=c;f s=p/4}m f s=p/(2*8.g)*8.r(c/a);e(t<1)6-.5*(a*8.j(2,10*(t-=1))*8.n((t*d-s)*(2*8.g)/p))+b;6 a*8.j(2,-10*(t-=1))*8.n((t*d-s)*(2*8.g)/p)*.5+c+b},F:9(x,t,b,c,d,s){e(s==u)s=1.l;6 c*(t/=d)*t*((s+1)*t-s)+b},E:9(x,t,b,c,d,s){e(s==u)s=1.l;6 c*((t=t/d-1)*t*((s+1)*t+s)+1)+b},16:9(x,t,b,c,d,s){e(s==u)s=1.l;e((t/=d/2)<1)6 c/2*(t*t*(((s*=(1.B))+1)*t-s))+b;6 c/2*((t-=2)*t*(((s*=(1.B))+1)*t+s)+2)+b},A:9(x,t,b,c,d){6 c-h.i.v(x,d-t,0,c,d)+b},v:9(x,t,b,c,d){e((t/=d)<(1/2.k)){6 c*(7.q*t*t)+b}m e(t<(2/2.k)){6 c*(7.q*(t-=(1.5/2.k))*t+.k)+b}m e(t<(2.5/2.k)){6 c*(7.q*(t-=(2.14/2.k))*t+.11)+b}m{6 c*(7.q*(t-=(2.18/2.k))*t+.19)+b}},1b:9(x,t,b,c,d){e(t')[0], { prop: 0 }), - - isIE6 = $.browser.msie && $.browser.version < 7 && !window.XMLHttpRequest, - - /* - * Private methods - */ - - _abort = function() { - loading.hide(); - - imgPreloader.onerror = imgPreloader.onload = null; - - if (ajaxLoader) { - ajaxLoader.abort(); - } - - tmp.empty(); - }, - - _error = function() { - if (false === selectedOpts.onError(selectedArray, selectedIndex, selectedOpts)) { - loading.hide(); - busy = false; - return; - } - - selectedOpts.titleShow = false; - - selectedOpts.width = 'auto'; - selectedOpts.height = 'auto'; - - tmp.html( '

The requested content cannot be loaded.
Please try again later.

' ); - - _process_inline(); - }, - - _start = function() { - var obj = selectedArray[ selectedIndex ], - href, - type, - title, - str, - emb, - ret; - - _abort(); - - selectedOpts = $.extend({}, $.fn.fancybox.defaults, (typeof $(obj).data('fancybox') == 'undefined' ? selectedOpts : $(obj).data('fancybox'))); - - ret = selectedOpts.onStart(selectedArray, selectedIndex, selectedOpts); - - if (ret === false) { - busy = false; - return; - } else if (typeof ret == 'object') { - selectedOpts = $.extend(selectedOpts, ret); - } - - title = selectedOpts.title || (obj.nodeName ? $(obj).attr('title') : obj.title) || ''; - - if (obj.nodeName && !selectedOpts.orig) { - selectedOpts.orig = $(obj).children("img:first").length ? $(obj).children("img:first") : $(obj); - } - - if (title === '' && selectedOpts.orig && selectedOpts.titleFromAlt) { - title = selectedOpts.orig.attr('alt'); - } - - href = selectedOpts.href || (obj.nodeName ? $(obj).attr('href') : obj.href) || null; - - if ((/^(?:javascript)/i).test(href) || href == '#') { - href = null; - } - - if (selectedOpts.type) { - type = selectedOpts.type; - - if (!href) { - href = selectedOpts.content; - } - - } else if (selectedOpts.content) { - type = 'html'; - - } else if (href) { - if (href.match(imgRegExp)) { - type = 'image'; - - } else if (href.match(swfRegExp)) { - type = 'swf'; - - } else if ($(obj).hasClass("iframe")) { - type = 'iframe'; - - } else if (href.indexOf("#") === 0) { - type = 'inline'; - - } else { - type = 'ajax'; - } - } - - if (!type) { - _error(); - return; - } - - if (type == 'inline') { - obj = href.substr(href.indexOf("#")); - type = $(obj).length > 0 ? 'inline' : 'ajax'; - } - - selectedOpts.type = type; - selectedOpts.href = href; - selectedOpts.title = title; - - if (selectedOpts.autoDimensions) { - if (selectedOpts.type == 'html' || selectedOpts.type == 'inline' || selectedOpts.type == 'ajax') { - selectedOpts.width = 'auto'; - selectedOpts.height = 'auto'; - } else { - selectedOpts.autoDimensions = false; - } - } - - if (selectedOpts.modal) { - selectedOpts.overlayShow = true; - selectedOpts.hideOnOverlayClick = false; - selectedOpts.hideOnContentClick = false; - selectedOpts.enableEscapeButton = false; - selectedOpts.showCloseButton = false; - } - - selectedOpts.padding = parseInt(selectedOpts.padding, 10); - selectedOpts.margin = parseInt(selectedOpts.margin, 10); - - tmp.css('padding', (selectedOpts.padding + selectedOpts.margin)); - - $('.fancybox-inline-tmp').unbind('fancybox-cancel').bind('fancybox-change', function() { - $(this).replaceWith(content.children()); - }); - - switch (type) { - case 'html' : - tmp.html( selectedOpts.content ); - _process_inline(); - break; - - case 'inline' : - if ( $(obj).parent().is('#fancybox-content') === true) { - busy = false; - return; - } - - $('
') - .hide() - .insertBefore( $(obj) ) - .bind('fancybox-cleanup', function() { - $(this).replaceWith(content.children()); - }).bind('fancybox-cancel', function() { - $(this).replaceWith(tmp.children()); - }); - - $(obj).appendTo(tmp); - - _process_inline(); - break; - - case 'image': - busy = false; - - $.fancybox.showActivity(); - - imgPreloader = new Image(); - - imgPreloader.onerror = function() { - _error(); - }; - - imgPreloader.onload = function() { - busy = true; - - imgPreloader.onerror = imgPreloader.onload = null; - - _process_image(); - }; - - imgPreloader.src = href; - break; - - case 'swf': - selectedOpts.scrolling = 'no'; - - str = ''; - emb = ''; - - $.each(selectedOpts.swf, function(name, val) { - str += ''; - emb += ' ' + name + '="' + val + '"'; - }); - - str += ''; - - tmp.html(str); - - _process_inline(); - break; - - case 'ajax': - busy = false; - - $.fancybox.showActivity(); - - selectedOpts.ajax.win = selectedOpts.ajax.success; - - ajaxLoader = $.ajax($.extend({}, selectedOpts.ajax, { - url : href, - data : selectedOpts.ajax.data || {}, - error : function(XMLHttpRequest, textStatus, errorThrown) { - if ( XMLHttpRequest.status > 0 ) { - _error(); - } - }, - success : function(data, textStatus, XMLHttpRequest) { - var o = typeof XMLHttpRequest == 'object' ? XMLHttpRequest : ajaxLoader; - if (o.status == 200) { - if ( typeof selectedOpts.ajax.win == 'function' ) { - ret = selectedOpts.ajax.win(href, data, textStatus, XMLHttpRequest); - - if (ret === false) { - loading.hide(); - return; - } else if (typeof ret == 'string' || typeof ret == 'object') { - data = ret; - } - } - - tmp.html( data ); - _process_inline(); - } - } - })); - - break; - - case 'iframe': - _show(); - break; - } - }, - - _process_inline = function() { - var - w = selectedOpts.width, - h = selectedOpts.height; - - if (w.toString().indexOf('%') > -1) { - w = parseInt( ($(window).width() - (selectedOpts.margin * 2)) * parseFloat(w) / 100, 10) + 'px'; - - } else { - w = w == 'auto' ? 'auto' : w + 'px'; - } - - if (h.toString().indexOf('%') > -1) { - h = parseInt( ($(window).height() - (selectedOpts.margin * 2)) * parseFloat(h) / 100, 10) + 'px'; - - } else { - h = h == 'auto' ? 'auto' : h + 'px'; - } - - tmp.wrapInner('
'); - - selectedOpts.width = tmp.width(); - selectedOpts.height = tmp.height(); - - _show(); - }, - - _process_image = function() { - selectedOpts.width = imgPreloader.width; - selectedOpts.height = imgPreloader.height; - - $("").attr({ - 'id' : 'fancybox-img', - 'src' : imgPreloader.src, - 'alt' : selectedOpts.title - }).appendTo( tmp ); - - _show(); - }, - - _show = function() { - var pos, equal; - - loading.hide(); - - if (wrap.is(":visible") && false === currentOpts.onCleanup(currentArray, currentIndex, currentOpts)) { - $.event.trigger('fancybox-cancel'); - - busy = false; - return; - } - - busy = true; - - $(content.add( overlay )).unbind(); - - $(window).unbind("resize.fb scroll.fb"); - $(document).unbind('keydown.fb'); - - if (wrap.is(":visible") && currentOpts.titlePosition !== 'outside') { - wrap.css('height', wrap.height()); - } - - currentArray = selectedArray; - currentIndex = selectedIndex; - currentOpts = selectedOpts; - - if (currentOpts.overlayShow) { - overlay.css({ - 'background-color' : currentOpts.overlayColor, - 'opacity' : currentOpts.overlayOpacity, - 'cursor' : currentOpts.hideOnOverlayClick ? 'pointer' : 'auto', - 'height' : $(document).height() - }); - - if (!overlay.is(':visible')) { - if (isIE6) { - $('select:not(#fancybox-tmp select)').filter(function() { - return this.style.visibility !== 'hidden'; - }).css({'visibility' : 'hidden'}).one('fancybox-cleanup', function() { - this.style.visibility = 'inherit'; - }); - } - - overlay.show(); - } - } else { - overlay.hide(); - } - - final_pos = _get_zoom_to(); - - _process_title(); - - if (wrap.is(":visible")) { - $( close.add( nav_left ).add( nav_right ) ).hide(); - - pos = wrap.position(), - - start_pos = { - top : pos.top, - left : pos.left, - width : wrap.width(), - height : wrap.height() - }; - - equal = (start_pos.width == final_pos.width && start_pos.height == final_pos.height); - - content.fadeTo(currentOpts.changeFade, 0.3, function() { - var finish_resizing = function() { - content.html( tmp.contents() ).fadeTo(currentOpts.changeFade, 1, _finish); - }; - - $.event.trigger('fancybox-change'); - - content - .empty() - .removeAttr('filter') - .css({ - 'border-width' : currentOpts.padding, - 'width' : final_pos.width - currentOpts.padding * 2, - 'height' : selectedOpts.autoDimensions ? 'auto' : final_pos.height - titleHeight - currentOpts.padding * 2 - }); - - if (equal) { - finish_resizing(); - - } else { - fx.prop = 0; - - $(fx).animate({prop: 1}, { - duration : currentOpts.changeSpeed, - easing : currentOpts.easingChange, - step : _draw, - complete : finish_resizing - }); - } - }); - - return; - } - - wrap.removeAttr("style"); - - content.css('border-width', currentOpts.padding); - - if (currentOpts.transitionIn == 'elastic') { - start_pos = _get_zoom_from(); - - content.html( tmp.contents() ); - - wrap.show(); - - if (currentOpts.opacity) { - final_pos.opacity = 0; - } - - fx.prop = 0; - - $(fx).animate({prop: 1}, { - duration : currentOpts.speedIn, - easing : currentOpts.easingIn, - step : _draw, - complete : _finish - }); - - return; - } - - if (currentOpts.titlePosition == 'inside' && titleHeight > 0) { - title.show(); - } - - content - .css({ - 'width' : final_pos.width - currentOpts.padding * 2, - 'height' : selectedOpts.autoDimensions ? 'auto' : final_pos.height - titleHeight - currentOpts.padding * 2 - }) - .html( tmp.contents() ); - - wrap - .css(final_pos) - .fadeIn( currentOpts.transitionIn == 'none' ? 0 : currentOpts.speedIn, _finish ); - }, - - _format_title = function(title) { - if (title && title.length) { - if (currentOpts.titlePosition == 'float') { - return '
' + title + '
'; - } - - return '
' + title + '
'; - } - - return false; - }, - - _process_title = function() { - titleStr = currentOpts.title || ''; - titleHeight = 0; - - title - .empty() - .removeAttr('style') - .removeClass(); - - if (currentOpts.titleShow === false) { - title.hide(); - return; - } - - titleStr = $.isFunction(currentOpts.titleFormat) ? currentOpts.titleFormat(titleStr, currentArray, currentIndex, currentOpts) : _format_title(titleStr); - - if (!titleStr || titleStr === '') { - title.hide(); - return; - } - - title - .addClass('fancybox-title-' + currentOpts.titlePosition) - .html( titleStr ) - .appendTo( 'body' ) - .show(); - - switch (currentOpts.titlePosition) { - case 'inside': - title - .css({ - 'width' : final_pos.width - (currentOpts.padding * 2), - 'marginLeft' : currentOpts.padding, - 'marginRight' : currentOpts.padding - }); - - titleHeight = title.outerHeight(true); - - title.appendTo( outer ); - - final_pos.height += titleHeight; - break; - - case 'over': - title - .css({ - 'marginLeft' : currentOpts.padding, - 'width' : final_pos.width - (currentOpts.padding * 2), - 'bottom' : currentOpts.padding - }) - .appendTo( outer ); - break; - - case 'float': - title - .css('left', parseInt((title.width() - final_pos.width - 40)/ 2, 10) * -1) - .appendTo( wrap ); - break; - - default: - title - .css({ - 'width' : final_pos.width - (currentOpts.padding * 2), - 'paddingLeft' : currentOpts.padding, - 'paddingRight' : currentOpts.padding - }) - .appendTo( wrap ); - break; - } - - title.hide(); - }, - - _set_navigation = function() { - if (currentOpts.enableEscapeButton || currentOpts.enableKeyboardNav) { - $(document).bind('keydown.fb', function(e) { - if (e.keyCode == 27 && currentOpts.enableEscapeButton) { - e.preventDefault(); - $.fancybox.close(); - - } else if ((e.keyCode == 37 || e.keyCode == 39) && currentOpts.enableKeyboardNav && e.target.tagName !== 'INPUT' && e.target.tagName !== 'TEXTAREA' && e.target.tagName !== 'SELECT') { - e.preventDefault(); - $.fancybox[ e.keyCode == 37 ? 'prev' : 'next'](); - } - }); - } - - if (!currentOpts.showNavArrows) { - nav_left.hide(); - nav_right.hide(); - return; - } - - if ((currentOpts.cyclic && currentArray.length > 1) || currentIndex !== 0) { - nav_left.show(); - } - - if ((currentOpts.cyclic && currentArray.length > 1) || currentIndex != (currentArray.length -1)) { - nav_right.show(); - } - }, - - _finish = function () { - if (!$.support.opacity) { - content.get(0).style.removeAttribute('filter'); - wrap.get(0).style.removeAttribute('filter'); - } - - if (selectedOpts.autoDimensions) { - content.css('height', 'auto'); - } - - wrap.css('height', 'auto'); - - if (titleStr && titleStr.length) { - title.show(); - } - - if (currentOpts.showCloseButton) { - close.show(); - } - - _set_navigation(); - - if (currentOpts.hideOnContentClick) { - content.bind('click', $.fancybox.close); - } - - if (currentOpts.hideOnOverlayClick) { - overlay.bind('click', $.fancybox.close); - } - - $(window).bind("resize.fb", $.fancybox.resize); - - if (currentOpts.centerOnScroll) { - $(window).bind("scroll.fb", $.fancybox.center); - } - - if (currentOpts.type == 'iframe') { - $('').appendTo(content); - } - - wrap.show(); - - busy = false; - - $.fancybox.center(); - - currentOpts.onComplete(currentArray, currentIndex, currentOpts); - - _preload_images(); - }, - - _preload_images = function() { - var href, - objNext; - - if ((currentArray.length -1) > currentIndex) { - href = currentArray[ currentIndex + 1 ].href; - - if (typeof href !== 'undefined' && href.match(imgRegExp)) { - objNext = new Image(); - objNext.src = href; - } - } - - if (currentIndex > 0) { - href = currentArray[ currentIndex - 1 ].href; - - if (typeof href !== 'undefined' && href.match(imgRegExp)) { - objNext = new Image(); - objNext.src = href; - } - } - }, - - _draw = function(pos) { - var dim = { - width : parseInt(start_pos.width + (final_pos.width - start_pos.width) * pos, 10), - height : parseInt(start_pos.height + (final_pos.height - start_pos.height) * pos, 10), - - top : parseInt(start_pos.top + (final_pos.top - start_pos.top) * pos, 10), - left : parseInt(start_pos.left + (final_pos.left - start_pos.left) * pos, 10) - }; - - if (typeof final_pos.opacity !== 'undefined') { - dim.opacity = pos < 0.5 ? 0.5 : pos; - } - - wrap.css(dim); - - content.css({ - 'width' : dim.width - currentOpts.padding * 2, - 'height' : dim.height - (titleHeight * pos) - currentOpts.padding * 2 - }); - }, - - _get_viewport = function() { - return [ - $(window).width() - (currentOpts.margin * 2), - $(window).height() - (currentOpts.margin * 2), - $(document).scrollLeft() + currentOpts.margin, - $(document).scrollTop() + currentOpts.margin - ]; - }, - - _get_zoom_to = function () { - var view = _get_viewport(), - to = {}, - resize = currentOpts.autoScale, - double_padding = currentOpts.padding * 2, - ratio; - - if (currentOpts.width.toString().indexOf('%') > -1) { - to.width = parseInt((view[0] * parseFloat(currentOpts.width)) / 100, 10); - } else { - to.width = currentOpts.width + double_padding; - } - - if (currentOpts.height.toString().indexOf('%') > -1) { - to.height = parseInt((view[1] * parseFloat(currentOpts.height)) / 100, 10); - } else { - to.height = currentOpts.height + double_padding; - } - - if (resize && (to.width > view[0] || to.height > view[1])) { - if (selectedOpts.type == 'image' || selectedOpts.type == 'swf') { - ratio = (currentOpts.width ) / (currentOpts.height ); - - if ((to.width ) > view[0]) { - to.width = view[0]; - to.height = parseInt(((to.width - double_padding) / ratio) + double_padding, 10); - } - - if ((to.height) > view[1]) { - to.height = view[1]; - to.width = parseInt(((to.height - double_padding) * ratio) + double_padding, 10); - } - - } else { - to.width = Math.min(to.width, view[0]); - to.height = Math.min(to.height, view[1]); - } - } - - to.top = parseInt(Math.max(view[3] - 20, view[3] + ((view[1] - to.height - 40) * 0.5)), 10); - to.left = parseInt(Math.max(view[2] - 20, view[2] + ((view[0] - to.width - 40) * 0.5)), 10); - - return to; - }, - - _get_obj_pos = function(obj) { - var pos = obj.offset(); - - pos.top += parseInt( obj.css('paddingTop'), 10 ) || 0; - pos.left += parseInt( obj.css('paddingLeft'), 10 ) || 0; - - pos.top += parseInt( obj.css('border-top-width'), 10 ) || 0; - pos.left += parseInt( obj.css('border-left-width'), 10 ) || 0; - - pos.width = obj.width(); - pos.height = obj.height(); - - return pos; - }, - - _get_zoom_from = function() { - var orig = selectedOpts.orig ? $(selectedOpts.orig) : false, - from = {}, - pos, - view; - - if (orig && orig.length) { - pos = _get_obj_pos(orig); - - from = { - width : pos.width + (currentOpts.padding * 2), - height : pos.height + (currentOpts.padding * 2), - top : pos.top - currentOpts.padding - 20, - left : pos.left - currentOpts.padding - 20 - }; - - } else { - view = _get_viewport(); - - from = { - width : currentOpts.padding * 2, - height : currentOpts.padding * 2, - top : parseInt(view[3] + view[1] * 0.5, 10), - left : parseInt(view[2] + view[0] * 0.5, 10) - }; - } - - return from; - }, - - _animate_loading = function() { - if (!loading.is(':visible')){ - clearInterval(loadingTimer); - return; - } - - $('div', loading).css('top', (loadingFrame * -40) + 'px'); - - loadingFrame = (loadingFrame + 1) % 12; - }; - - /* - * Public methods - */ - - $.fn.fancybox = function(options) { - if (!$(this).length) { - return this; - } - - $(this) - .data('fancybox', $.extend({}, options, ($.metadata ? $(this).metadata() : {}))) - .unbind('click.fb') - .bind('click.fb', function(e) { - e.preventDefault(); - - if (busy) { - return; - } - - busy = true; - - $(this).blur(); - - selectedArray = []; - selectedIndex = 0; - - var rel = $(this).attr('rel') || ''; - - if (!rel || rel == '' || rel === 'nofollow') { - selectedArray.push(this); - - } else { - selectedArray = $("a[rel=" + rel + "], area[rel=" + rel + "]"); - selectedIndex = selectedArray.index( this ); - } - - _start(); - - return; - }); - - return this; - }; - - $.fancybox = function(obj) { - var opts; - - if (busy) { - return; - } - - busy = true; - opts = typeof arguments[1] !== 'undefined' ? arguments[1] : {}; - - selectedArray = []; - selectedIndex = parseInt(opts.index, 10) || 0; - - if ($.isArray(obj)) { - for (var i = 0, j = obj.length; i < j; i++) { - if (typeof obj[i] == 'object') { - $(obj[i]).data('fancybox', $.extend({}, opts, obj[i])); - } else { - obj[i] = $({}).data('fancybox', $.extend({content : obj[i]}, opts)); - } - } - - selectedArray = jQuery.merge(selectedArray, obj); - - } else { - if (typeof obj == 'object') { - $(obj).data('fancybox', $.extend({}, opts, obj)); - } else { - obj = $({}).data('fancybox', $.extend({content : obj}, opts)); - } - - selectedArray.push(obj); - } - - if (selectedIndex > selectedArray.length || selectedIndex < 0) { - selectedIndex = 0; - } - - _start(); - }; - - $.fancybox.showActivity = function() { - clearInterval(loadingTimer); - - loading.show(); - loadingTimer = setInterval(_animate_loading, 66); - }; - - $.fancybox.hideActivity = function() { - loading.hide(); - }; - - $.fancybox.next = function() { - return $.fancybox.pos( currentIndex + 1); - }; - - $.fancybox.prev = function() { - return $.fancybox.pos( currentIndex - 1); - }; - - $.fancybox.pos = function(pos) { - if (busy) { - return; - } - - pos = parseInt(pos); - - selectedArray = currentArray; - - if (pos > -1 && pos < currentArray.length) { - selectedIndex = pos; - _start(); - - } else if (currentOpts.cyclic && currentArray.length > 1) { - selectedIndex = pos >= currentArray.length ? 0 : currentArray.length - 1; - _start(); - } - - return; - }; - - $.fancybox.cancel = function() { - if (busy) { - return; - } - - busy = true; - - $.event.trigger('fancybox-cancel'); - - _abort(); - - selectedOpts.onCancel(selectedArray, selectedIndex, selectedOpts); - - busy = false; - }; - - // Note: within an iframe use - parent.$.fancybox.close(); - $.fancybox.close = function() { - if (busy || wrap.is(':hidden')) { - return; - } - - busy = true; - - if (currentOpts && false === currentOpts.onCleanup(currentArray, currentIndex, currentOpts)) { - busy = false; - return; - } - - _abort(); - - $(close.add( nav_left ).add( nav_right )).hide(); - - $(content.add( overlay )).unbind(); - - $(window).unbind("resize.fb scroll.fb"); - $(document).unbind('keydown.fb'); - - content.find('iframe').attr('src', isIE6 && /^https/i.test(window.location.href || '') ? 'javascript:void(false)' : 'about:blank'); - - if (currentOpts.titlePosition !== 'inside') { - title.empty(); - } - - wrap.stop(); - - function _cleanup() { - overlay.fadeOut('fast'); - - title.empty().hide(); - wrap.hide(); - - $.event.trigger('fancybox-cleanup'); - - content.empty(); - - currentOpts.onClosed(currentArray, currentIndex, currentOpts); - - currentArray = selectedOpts = []; - currentIndex = selectedIndex = 0; - currentOpts = selectedOpts = {}; - - busy = false; - } - - if (currentOpts.transitionOut == 'elastic') { - start_pos = _get_zoom_from(); - - var pos = wrap.position(); - - final_pos = { - top : pos.top , - left : pos.left, - width : wrap.width(), - height : wrap.height() - }; - - if (currentOpts.opacity) { - final_pos.opacity = 1; - } - - title.empty().hide(); - - fx.prop = 1; - - $(fx).animate({ prop: 0 }, { - duration : currentOpts.speedOut, - easing : currentOpts.easingOut, - step : _draw, - complete : _cleanup - }); - - } else { - wrap.fadeOut( currentOpts.transitionOut == 'none' ? 0 : currentOpts.speedOut, _cleanup); - } - }; - - $.fancybox.resize = function() { - if (overlay.is(':visible')) { - overlay.css('height', $(document).height()); - } - - $.fancybox.center(true); - }; - - $.fancybox.center = function() { - var view, align; - - if (busy) { - return; - } - - align = arguments[0] === true ? 1 : 0; - view = _get_viewport(); - - if (!align && (wrap.width() > view[0] || wrap.height() > view[1])) { - return; - } - - wrap - .stop() - .animate({ - 'top' : parseInt(Math.max(view[3] - 20, view[3] + ((view[1] - content.height() - 40) * 0.5) - currentOpts.padding)), - 'left' : parseInt(Math.max(view[2] - 20, view[2] + ((view[0] - content.width() - 40) * 0.5) - currentOpts.padding)) - }, typeof arguments[0] == 'number' ? arguments[0] : 200); - }; - - $.fancybox.init = function() { - if ($("#fancybox-wrap").length) { - return; - } - - $('body').append( - tmp = $('
'), - loading = $('
'), - overlay = $('
'), - wrap = $('
') - ); - - outer = $('
') - .append('
') - .appendTo( wrap ); - - outer.append( - content = $('
'), - close = $(''), - title = $('
'), - - nav_left = $(''), - nav_right = $('') - ); - - close.click($.fancybox.close); - loading.click($.fancybox.cancel); - - nav_left.click(function(e) { - e.preventDefault(); - $.fancybox.prev(); - }); - - nav_right.click(function(e) { - e.preventDefault(); - $.fancybox.next(); - }); - - if ($.fn.mousewheel) { - wrap.bind('mousewheel.fb', function(e, delta) { - if (busy) { - e.preventDefault(); - - } else if ($(e.target).get(0).clientHeight == 0 || $(e.target).get(0).scrollHeight === $(e.target).get(0).clientHeight) { - e.preventDefault(); - $.fancybox[ delta > 0 ? 'prev' : 'next'](); - } - }); - } - - if (!$.support.opacity) { - wrap.addClass('fancybox-ie'); - } - - if (isIE6) { - loading.addClass('fancybox-ie6'); - wrap.addClass('fancybox-ie6'); - - $('').prependTo(outer); - } - }; - - $.fn.fancybox.defaults = { - padding : 10, - margin : 40, - opacity : false, - modal : false, - cyclic : false, - scrolling : 'auto', // 'auto', 'yes' or 'no' - - width : 560, - height : 340, - - autoScale : true, - autoDimensions : true, - centerOnScroll : false, - - ajax : {}, - swf : { wmode: 'transparent' }, - - hideOnOverlayClick : true, - hideOnContentClick : false, - - overlayShow : true, - overlayOpacity : 0.7, - overlayColor : '#777', - - titleShow : true, - titlePosition : 'float', // 'float', 'outside', 'inside' or 'over' - titleFormat : null, - titleFromAlt : false, - - transitionIn : 'fade', // 'elastic', 'fade' or 'none' - transitionOut : 'fade', // 'elastic', 'fade' or 'none' - - speedIn : 300, - speedOut : 300, - - changeSpeed : 300, - changeFade : 'fast', - - easingIn : 'swing', - easingOut : 'swing', - - showCloseButton : true, - showNavArrows : true, - enableEscapeButton : true, - enableKeyboardNav : true, - - onStart : function(){}, - onCancel : function(){}, - onComplete : function(){}, - onCleanup : function(){}, - onClosed : function(){}, - onError : function(){} - }; - - $(document).ready(function() { - $.fancybox.init(); - }); - -})(jQuery); \ No newline at end of file diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/fancybox/jquery.fancybox-1.3.4.pack.js --- a/web/enmi/res/jquery.fancybox/fancybox/jquery.fancybox-1.3.4.pack.js Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,46 +0,0 @@ -/* - * FancyBox - jQuery Plugin - * Simple and fancy lightbox alternative - * - * Examples and documentation at: http://fancybox.net - * - * Copyright (c) 2008 - 2010 Janis Skarnelis - * That said, it is hardly a one-person project. Many people have submitted bugs, code, and offered their advice freely. Their support is greatly appreciated. - * - * Version: 1.3.4 (11/11/2010) - * Requires: jQuery v1.3+ - * - * Dual licensed under the MIT and GPL licenses: - * http://www.opensource.org/licenses/mit-license.php - * http://www.gnu.org/licenses/gpl.html - */ - -;(function(b){var m,t,u,f,D,j,E,n,z,A,q=0,e={},o=[],p=0,d={},l=[],G=null,v=new Image,J=/\.(jpg|gif|png|bmp|jpeg)(.*)?$/i,W=/[^\.]\.(swf)\s*$/i,K,L=1,y=0,s="",r,i,h=false,B=b.extend(b("
")[0],{prop:0}),M=b.browser.msie&&b.browser.version<7&&!window.XMLHttpRequest,N=function(){t.hide();v.onerror=v.onload=null;G&&G.abort();m.empty()},O=function(){if(false===e.onError(o,q,e)){t.hide();h=false}else{e.titleShow=false;e.width="auto";e.height="auto";m.html('

The requested content cannot be loaded.
Please try again later.

'); -F()}},I=function(){var a=o[q],c,g,k,C,P,w;N();e=b.extend({},b.fn.fancybox.defaults,typeof b(a).data("fancybox")=="undefined"?e:b(a).data("fancybox"));w=e.onStart(o,q,e);if(w===false)h=false;else{if(typeof w=="object")e=b.extend(e,w);k=e.title||(a.nodeName?b(a).attr("title"):a.title)||"";if(a.nodeName&&!e.orig)e.orig=b(a).children("img:first").length?b(a).children("img:first"):b(a);if(k===""&&e.orig&&e.titleFromAlt)k=e.orig.attr("alt");c=e.href||(a.nodeName?b(a).attr("href"):a.href)||null;if(/^(?:javascript)/i.test(c)|| -c=="#")c=null;if(e.type){g=e.type;if(!c)c=e.content}else if(e.content)g="html";else if(c)g=c.match(J)?"image":c.match(W)?"swf":b(a).hasClass("iframe")?"iframe":c.indexOf("#")===0?"inline":"ajax";if(g){if(g=="inline"){a=c.substr(c.indexOf("#"));g=b(a).length>0?"inline":"ajax"}e.type=g;e.href=c;e.title=k;if(e.autoDimensions)if(e.type=="html"||e.type=="inline"||e.type=="ajax"){e.width="auto";e.height="auto"}else e.autoDimensions=false;if(e.modal){e.overlayShow=true;e.hideOnOverlayClick=false;e.hideOnContentClick= -false;e.enableEscapeButton=false;e.showCloseButton=false}e.padding=parseInt(e.padding,10);e.margin=parseInt(e.margin,10);m.css("padding",e.padding+e.margin);b(".fancybox-inline-tmp").unbind("fancybox-cancel").bind("fancybox-change",function(){b(this).replaceWith(j.children())});switch(g){case "html":m.html(e.content);F();break;case "inline":if(b(a).parent().is("#fancybox-content")===true){h=false;break}b('
').hide().insertBefore(b(a)).bind("fancybox-cleanup",function(){b(this).replaceWith(j.children())}).bind("fancybox-cancel", -function(){b(this).replaceWith(m.children())});b(a).appendTo(m);F();break;case "image":h=false;b.fancybox.showActivity();v=new Image;v.onerror=function(){O()};v.onload=function(){h=true;v.onerror=v.onload=null;e.width=v.width;e.height=v.height;b("").attr({id:"fancybox-img",src:v.src,alt:e.title}).appendTo(m);Q()};v.src=c;break;case "swf":e.scrolling="no";C='';P="";b.each(e.swf,function(x,H){C+='';P+=" "+x+'="'+H+'"'});C+='";m.html(C);F();break;case "ajax":h=false;b.fancybox.showActivity();e.ajax.win=e.ajax.success;G=b.ajax(b.extend({},e.ajax,{url:c,data:e.ajax.data||{},error:function(x){x.status>0&&O()},success:function(x,H,R){if((typeof R=="object"?R:G).status==200){if(typeof e.ajax.win== -"function"){w=e.ajax.win(c,x,H,R);if(w===false){t.hide();return}else if(typeof w=="string"||typeof w=="object")x=w}m.html(x);F()}}}));break;case "iframe":Q()}}else O()}},F=function(){var a=e.width,c=e.height;a=a.toString().indexOf("%")>-1?parseInt((b(window).width()-e.margin*2)*parseFloat(a)/100,10)+"px":a=="auto"?"auto":a+"px";c=c.toString().indexOf("%")>-1?parseInt((b(window).height()-e.margin*2)*parseFloat(c)/100,10)+"px":c=="auto"?"auto":c+"px";m.wrapInner('
');e.width=m.width();e.height=m.height();Q()},Q=function(){var a,c;t.hide();if(f.is(":visible")&&false===d.onCleanup(l,p,d)){b.event.trigger("fancybox-cancel");h=false}else{h=true;b(j.add(u)).unbind();b(window).unbind("resize.fb scroll.fb");b(document).unbind("keydown.fb");f.is(":visible")&&d.titlePosition!=="outside"&&f.css("height",f.height());l=o;p=q;d=e;if(d.overlayShow){u.css({"background-color":d.overlayColor, -opacity:d.overlayOpacity,cursor:d.hideOnOverlayClick?"pointer":"auto",height:b(document).height()});if(!u.is(":visible")){M&&b("select:not(#fancybox-tmp select)").filter(function(){return this.style.visibility!=="hidden"}).css({visibility:"hidden"}).one("fancybox-cleanup",function(){this.style.visibility="inherit"});u.show()}}else u.hide();i=X();s=d.title||"";y=0;n.empty().removeAttr("style").removeClass();if(d.titleShow!==false){if(b.isFunction(d.titleFormat))a=d.titleFormat(s,l,p,d);else a=s&&s.length? -d.titlePosition=="float"?'
'+s+'
':'
'+s+"
":false;s=a;if(!(!s||s==="")){n.addClass("fancybox-title-"+d.titlePosition).html(s).appendTo("body").show();switch(d.titlePosition){case "inside":n.css({width:i.width-d.padding*2,marginLeft:d.padding,marginRight:d.padding}); -y=n.outerHeight(true);n.appendTo(D);i.height+=y;break;case "over":n.css({marginLeft:d.padding,width:i.width-d.padding*2,bottom:d.padding}).appendTo(D);break;case "float":n.css("left",parseInt((n.width()-i.width-40)/2,10)*-1).appendTo(f);break;default:n.css({width:i.width-d.padding*2,paddingLeft:d.padding,paddingRight:d.padding}).appendTo(f)}}}n.hide();if(f.is(":visible")){b(E.add(z).add(A)).hide();a=f.position();r={top:a.top,left:a.left,width:f.width(),height:f.height()};c=r.width==i.width&&r.height== -i.height;j.fadeTo(d.changeFade,0.3,function(){var g=function(){j.html(m.contents()).fadeTo(d.changeFade,1,S)};b.event.trigger("fancybox-change");j.empty().removeAttr("filter").css({"border-width":d.padding,width:i.width-d.padding*2,height:e.autoDimensions?"auto":i.height-y-d.padding*2});if(c)g();else{B.prop=0;b(B).animate({prop:1},{duration:d.changeSpeed,easing:d.easingChange,step:T,complete:g})}})}else{f.removeAttr("style");j.css("border-width",d.padding);if(d.transitionIn=="elastic"){r=V();j.html(m.contents()); -f.show();if(d.opacity)i.opacity=0;B.prop=0;b(B).animate({prop:1},{duration:d.speedIn,easing:d.easingIn,step:T,complete:S})}else{d.titlePosition=="inside"&&y>0&&n.show();j.css({width:i.width-d.padding*2,height:e.autoDimensions?"auto":i.height-y-d.padding*2}).html(m.contents());f.css(i).fadeIn(d.transitionIn=="none"?0:d.speedIn,S)}}}},Y=function(){if(d.enableEscapeButton||d.enableKeyboardNav)b(document).bind("keydown.fb",function(a){if(a.keyCode==27&&d.enableEscapeButton){a.preventDefault();b.fancybox.close()}else if((a.keyCode== -37||a.keyCode==39)&&d.enableKeyboardNav&&a.target.tagName!=="INPUT"&&a.target.tagName!=="TEXTAREA"&&a.target.tagName!=="SELECT"){a.preventDefault();b.fancybox[a.keyCode==37?"prev":"next"]()}});if(d.showNavArrows){if(d.cyclic&&l.length>1||p!==0)z.show();if(d.cyclic&&l.length>1||p!=l.length-1)A.show()}else{z.hide();A.hide()}},S=function(){if(!b.support.opacity){j.get(0).style.removeAttribute("filter");f.get(0).style.removeAttribute("filter")}e.autoDimensions&&j.css("height","auto");f.css("height","auto"); -s&&s.length&&n.show();d.showCloseButton&&E.show();Y();d.hideOnContentClick&&j.bind("click",b.fancybox.close);d.hideOnOverlayClick&&u.bind("click",b.fancybox.close);b(window).bind("resize.fb",b.fancybox.resize);d.centerOnScroll&&b(window).bind("scroll.fb",b.fancybox.center);if(d.type=="iframe")b('').appendTo(j); -f.show();h=false;b.fancybox.center();d.onComplete(l,p,d);var a,c;if(l.length-1>p){a=l[p+1].href;if(typeof a!=="undefined"&&a.match(J)){c=new Image;c.src=a}}if(p>0){a=l[p-1].href;if(typeof a!=="undefined"&&a.match(J)){c=new Image;c.src=a}}},T=function(a){var c={width:parseInt(r.width+(i.width-r.width)*a,10),height:parseInt(r.height+(i.height-r.height)*a,10),top:parseInt(r.top+(i.top-r.top)*a,10),left:parseInt(r.left+(i.left-r.left)*a,10)};if(typeof i.opacity!=="undefined")c.opacity=a<0.5?0.5:a;f.css(c); -j.css({width:c.width-d.padding*2,height:c.height-y*a-d.padding*2})},U=function(){return[b(window).width()-d.margin*2,b(window).height()-d.margin*2,b(document).scrollLeft()+d.margin,b(document).scrollTop()+d.margin]},X=function(){var a=U(),c={},g=d.autoScale,k=d.padding*2;c.width=d.width.toString().indexOf("%")>-1?parseInt(a[0]*parseFloat(d.width)/100,10):d.width+k;c.height=d.height.toString().indexOf("%")>-1?parseInt(a[1]*parseFloat(d.height)/100,10):d.height+k;if(g&&(c.width>a[0]||c.height>a[1]))if(e.type== -"image"||e.type=="swf"){g=d.width/d.height;if(c.width>a[0]){c.width=a[0];c.height=parseInt((c.width-k)/g+k,10)}if(c.height>a[1]){c.height=a[1];c.width=parseInt((c.height-k)*g+k,10)}}else{c.width=Math.min(c.width,a[0]);c.height=Math.min(c.height,a[1])}c.top=parseInt(Math.max(a[3]-20,a[3]+(a[1]-c.height-40)*0.5),10);c.left=parseInt(Math.max(a[2]-20,a[2]+(a[0]-c.width-40)*0.5),10);return c},V=function(){var a=e.orig?b(e.orig):false,c={};if(a&&a.length){c=a.offset();c.top+=parseInt(a.css("paddingTop"), -10)||0;c.left+=parseInt(a.css("paddingLeft"),10)||0;c.top+=parseInt(a.css("border-top-width"),10)||0;c.left+=parseInt(a.css("border-left-width"),10)||0;c.width=a.width();c.height=a.height();c={width:c.width+d.padding*2,height:c.height+d.padding*2,top:c.top-d.padding-20,left:c.left-d.padding-20}}else{a=U();c={width:d.padding*2,height:d.padding*2,top:parseInt(a[3]+a[1]*0.5,10),left:parseInt(a[2]+a[0]*0.5,10)}}return c},Z=function(){if(t.is(":visible")){b("div",t).css("top",L*-40+"px");L=(L+1)%12}else clearInterval(K)}; -b.fn.fancybox=function(a){if(!b(this).length)return this;b(this).data("fancybox",b.extend({},a,b.metadata?b(this).metadata():{})).unbind("click.fb").bind("click.fb",function(c){c.preventDefault();if(!h){h=true;b(this).blur();o=[];q=0;c=b(this).attr("rel")||"";if(!c||c==""||c==="nofollow")o.push(this);else{o=b("a[rel="+c+"], area[rel="+c+"]");q=o.index(this)}I()}});return this};b.fancybox=function(a,c){var g;if(!h){h=true;g=typeof c!=="undefined"?c:{};o=[];q=parseInt(g.index,10)||0;if(b.isArray(a)){for(var k= -0,C=a.length;ko.length||q<0)q=0;I()}};b.fancybox.showActivity=function(){clearInterval(K);t.show();K=setInterval(Z,66)};b.fancybox.hideActivity=function(){t.hide()};b.fancybox.next=function(){return b.fancybox.pos(p+ -1)};b.fancybox.prev=function(){return b.fancybox.pos(p-1)};b.fancybox.pos=function(a){if(!h){a=parseInt(a);o=l;if(a>-1&&a1){q=a>=l.length?0:l.length-1;I()}}};b.fancybox.cancel=function(){if(!h){h=true;b.event.trigger("fancybox-cancel");N();e.onCancel(o,q,e);h=false}};b.fancybox.close=function(){function a(){u.fadeOut("fast");n.empty().hide();f.hide();b.event.trigger("fancybox-cleanup");j.empty();d.onClosed(l,p,d);l=e=[];p=q=0;d=e={};h=false}if(!(h||f.is(":hidden"))){h= -true;if(d&&false===d.onCleanup(l,p,d))h=false;else{N();b(E.add(z).add(A)).hide();b(j.add(u)).unbind();b(window).unbind("resize.fb scroll.fb");b(document).unbind("keydown.fb");j.find("iframe").attr("src",M&&/^https/i.test(window.location.href||"")?"javascript:void(false)":"about:blank");d.titlePosition!=="inside"&&n.empty();f.stop();if(d.transitionOut=="elastic"){r=V();var c=f.position();i={top:c.top,left:c.left,width:f.width(),height:f.height()};if(d.opacity)i.opacity=1;n.empty().hide();B.prop=1; -b(B).animate({prop:0},{duration:d.speedOut,easing:d.easingOut,step:T,complete:a})}else f.fadeOut(d.transitionOut=="none"?0:d.speedOut,a)}}};b.fancybox.resize=function(){u.is(":visible")&&u.css("height",b(document).height());b.fancybox.center(true)};b.fancybox.center=function(a){var c,g;if(!h){g=a===true?1:0;c=U();!g&&(f.width()>c[0]||f.height()>c[1])||f.stop().animate({top:parseInt(Math.max(c[3]-20,c[3]+(c[1]-j.height()-40)*0.5-d.padding)),left:parseInt(Math.max(c[2]-20,c[2]+(c[0]-j.width()-40)*0.5- -d.padding))},typeof a=="number"?a:200)}};b.fancybox.init=function(){if(!b("#fancybox-wrap").length){b("body").append(m=b('
'),t=b('
'),u=b('
'),f=b('
'));D=b('
').append('
').appendTo(f); -D.append(j=b('
'),E=b(''),n=b('
'),z=b(''),A=b(''));E.click(b.fancybox.close);t.click(b.fancybox.cancel);z.click(function(a){a.preventDefault();b.fancybox.prev()});A.click(function(a){a.preventDefault();b.fancybox.next()}); -b.fn.mousewheel&&f.bind("mousewheel.fb",function(a,c){if(h)a.preventDefault();else if(b(a.target).get(0).clientHeight==0||b(a.target).get(0).scrollHeight===b(a.target).get(0).clientHeight){a.preventDefault();b.fancybox[c>0?"prev":"next"]()}});b.support.opacity||f.addClass("fancybox-ie");if(M){t.addClass("fancybox-ie6");f.addClass("fancybox-ie6");b('').prependTo(D)}}}; -b.fn.fancybox.defaults={padding:10,margin:40,opacity:false,modal:false,cyclic:false,scrolling:"auto",width:560,height:340,autoScale:true,autoDimensions:true,centerOnScroll:false,ajax:{},swf:{wmode:"transparent"},hideOnOverlayClick:true,hideOnContentClick:false,overlayShow:true,overlayOpacity:0.7,overlayColor:"#777",titleShow:true,titlePosition:"float",titleFormat:null,titleFromAlt:false,transitionIn:"fade",transitionOut:"fade",speedIn:300,speedOut:300,changeSpeed:300,changeFade:"fast",easingIn:"swing", -easingOut:"swing",showCloseButton:true,showNavArrows:true,enableEscapeButton:true,enableKeyboardNav:true,onStart:function(){},onCancel:function(){},onComplete:function(){},onCleanup:function(){},onClosed:function(){},onError:function(){}};b(document).ready(function(){b.fancybox.init()})})(jQuery); \ No newline at end of file diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/fancybox/jquery.mousewheel-3.0.4.pack.js --- a/web/enmi/res/jquery.fancybox/fancybox/jquery.mousewheel-3.0.4.pack.js Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,14 +0,0 @@ -/*! Copyright (c) 2010 Brandon Aaron (http://brandonaaron.net) -* Licensed under the MIT License (LICENSE.txt). -* -* Thanks to: http://adomas.org/javascript-mouse-wheel/ for some pointers. -* Thanks to: Mathias Bank(http://www.mathias-bank.de) for a scope bug fix. -* Thanks to: Seamus Leahy for adding deltaX and deltaY -* -* Version: 3.0.4 -* -* Requires: 1.2.2+ -*/ - -(function(d){function g(a){var b=a||window.event,i=[].slice.call(arguments,1),c=0,h=0,e=0;a=d.event.fix(b);a.type="mousewheel";if(a.wheelDelta)c=a.wheelDelta/120;if(a.detail)c=-a.detail/3;e=c;if(b.axis!==undefined&&b.axis===b.HORIZONTAL_AXIS){e=0;h=-1*c}if(b.wheelDeltaY!==undefined)e=b.wheelDeltaY/120;if(b.wheelDeltaX!==undefined)h=-1*b.wheelDeltaX/120;i.unshift(a,c,h,e);return d.event.handle.apply(this,i)}var f=["DOMMouseScroll","mousewheel"];d.event.special.mousewheel={setup:function(){if(this.addEventListener)for(var a= -f.length;a;)this.addEventListener(f[--a],g,false);else this.onmousewheel=g},teardown:function(){if(this.removeEventListener)for(var a=f.length;a;)this.removeEventListener(f[--a],g,false);else this.onmousewheel=null}};d.fn.extend({mousewheel:function(a){return a?this.bind("mousewheel",a):this.trigger("mousewheel")},unmousewheel:function(a){return this.unbind("mousewheel",a)}})})(jQuery); \ No newline at end of file diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/index.html --- a/web/enmi/res/jquery.fancybox/index.html Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,165 +0,0 @@ - - - - - - FancyBox 1.3.4 | Demonstration - - - - - - - - - -
-

fancybox v1.3.4

- -

This is a demonstration. Home page

- -
- -

- Different animations
- - example1 - - example2 - - example3 - - example4 -

- -

- Different title positions
- - example4 - - example5 - - example6 - - example7 -

- -

- Image gallery (ps, try using mouse scroll wheel)
- - - - - - - - -

- -

- Various examples -

- - - -
-
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam quis mi eu elit tempor facilisis id et neque. Nulla sit amet sem sapien. Vestibulum imperdiet porta ante ac ornare. Nulla et lorem eu nibh adipiscing ultricies nec at lacus. Cras laoreet ultricies sem, at blandit mi eleifend aliquam. Nunc enim ipsum, vehicula non pretium varius, cursus ac tortor. Vivamus fringilla congue laoreet. Quisque ultrices sodales orci, quis rhoncus justo auctor in. Phasellus dui eros, bibendum eu feugiat ornare, faucibus eu mi. Nunc aliquet tempus sem, id aliquam diam varius ac. Maecenas nisl nunc, molestie vitae eleifend vel, iaculis sed magna. Aenean tempus lacus vitae orci posuere porttitor eget non felis. Donec lectus elit, aliquam nec eleifend sit amet, vestibulum sed nunc. -
-
- -

- Ajax example will not run from your local computer and requires a server to run. -

-

- Photo Credit: Katie Harris -

-
- - \ No newline at end of file diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/index2.html --- a/web/enmi/res/jquery.fancybox/index2.html Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,58 +0,0 @@ - - - - - FancyBox 1.3.4 | Demonstration - - - - - - - - - - - -
- - -

- Various examples -

- - - -
-
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam quis mi eu elit tempor facilisis id et neque. Nulla sit amet sem sapien. Vestibulum imperdiet porta ante ac ornare. Nulla et lorem eu nibh adipiscing ultricies nec at lacus. Cras laoreet ultricies sem, at blandit mi eleifend aliquam. Nunc enim ipsum, vehicula non pretium varius, cursus ac tortor. Vivamus fringilla congue laoreet. Quisque ultrices sodales orci, quis rhoncus justo auctor in. Phasellus dui eros, bibendum eu feugiat ornare, faucibus eu mi. Nunc aliquet tempus sem, id aliquam diam varius ac. Maecenas nisl nunc, molestie vitae eleifend vel, iaculis sed magna. Aenean tempus lacus vitae orci posuere porttitor eget non felis. Donec lectus elit, aliquam nec eleifend sit amet, vestibulum sed nunc. -
-
- -
- - \ No newline at end of file diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/jquery-1.4.3.min.js --- a/web/enmi/res/jquery.fancybox/jquery-1.4.3.min.js Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,166 +0,0 @@ -/*! - * jQuery JavaScript Library v1.4.3 - * http://jquery.com/ - * - * Copyright 2010, John Resig - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * Includes Sizzle.js - * http://sizzlejs.com/ - * Copyright 2010, The Dojo Foundation - * Released under the MIT, BSD, and GPL Licenses. - * - * Date: Thu Oct 14 23:10:06 2010 -0400 - */ -(function(E,A){function U(){return false}function ba(){return true}function ja(a,b,d){d[0].type=a;return c.event.handle.apply(b,d)}function Ga(a){var b,d,e=[],f=[],h,k,l,n,s,v,B,D;k=c.data(this,this.nodeType?"events":"__events__");if(typeof k==="function")k=k.events;if(!(a.liveFired===this||!k||!k.live||a.button&&a.type==="click")){if(a.namespace)D=RegExp("(^|\\.)"+a.namespace.split(".").join("\\.(?:.*\\.)?")+"(\\.|$)");a.liveFired=this;var H=k.live.slice(0);for(n=0;nd)break;a.currentTarget=f.elem;a.data=f.handleObj.data; -a.handleObj=f.handleObj;D=f.handleObj.origHandler.apply(f.elem,arguments);if(D===false||a.isPropagationStopped()){d=f.level;if(D===false)b=false}}return b}}function Y(a,b){return(a&&a!=="*"?a+".":"")+b.replace(Ha,"`").replace(Ia,"&")}function ka(a,b,d){if(c.isFunction(b))return c.grep(a,function(f,h){return!!b.call(f,h,f)===d});else if(b.nodeType)return c.grep(a,function(f){return f===b===d});else if(typeof b==="string"){var e=c.grep(a,function(f){return f.nodeType===1});if(Ja.test(b))return c.filter(b, -e,!d);else b=c.filter(b,e)}return c.grep(a,function(f){return c.inArray(f,b)>=0===d})}function la(a,b){var d=0;b.each(function(){if(this.nodeName===(a[d]&&a[d].nodeName)){var e=c.data(a[d++]),f=c.data(this,e);if(e=e&&e.events){delete f.handle;f.events={};for(var h in e)for(var k in e[h])c.event.add(this,h,e[h][k],e[h][k].data)}}})}function Ka(a,b){b.src?c.ajax({url:b.src,async:false,dataType:"script"}):c.globalEval(b.text||b.textContent||b.innerHTML||"");b.parentNode&&b.parentNode.removeChild(b)} -function ma(a,b,d){var e=b==="width"?a.offsetWidth:a.offsetHeight;if(d==="border")return e;c.each(b==="width"?La:Ma,function(){d||(e-=parseFloat(c.css(a,"padding"+this))||0);if(d==="margin")e+=parseFloat(c.css(a,"margin"+this))||0;else e-=parseFloat(c.css(a,"border"+this+"Width"))||0});return e}function ca(a,b,d,e){if(c.isArray(b)&&b.length)c.each(b,function(f,h){d||Na.test(a)?e(a,h):ca(a+"["+(typeof h==="object"||c.isArray(h)?f:"")+"]",h,d,e)});else if(!d&&b!=null&&typeof b==="object")c.isEmptyObject(b)? -e(a,""):c.each(b,function(f,h){ca(a+"["+f+"]",h,d,e)});else e(a,b)}function S(a,b){var d={};c.each(na.concat.apply([],na.slice(0,b)),function(){d[this]=a});return d}function oa(a){if(!da[a]){var b=c("<"+a+">").appendTo("body"),d=b.css("display");b.remove();if(d==="none"||d==="")d="block";da[a]=d}return da[a]}function ea(a){return c.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:false}var u=E.document,c=function(){function a(){if(!b.isReady){try{u.documentElement.doScroll("left")}catch(i){setTimeout(a, -1);return}b.ready()}}var b=function(i,r){return new b.fn.init(i,r)},d=E.jQuery,e=E.$,f,h=/^(?:[^<]*(<[\w\W]+>)[^>]*$|#([\w\-]+)$)/,k=/\S/,l=/^\s+/,n=/\s+$/,s=/\W/,v=/\d/,B=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,D=/^[\],:{}\s]*$/,H=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,w=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,G=/(?:^|:|,)(?:\s*\[)+/g,M=/(webkit)[ \/]([\w.]+)/,g=/(opera)(?:.*version)?[ \/]([\w.]+)/,j=/(msie) ([\w.]+)/,o=/(mozilla)(?:.*? rv:([\w.]+))?/,m=navigator.userAgent,p=false, -q=[],t,x=Object.prototype.toString,C=Object.prototype.hasOwnProperty,P=Array.prototype.push,N=Array.prototype.slice,R=String.prototype.trim,Q=Array.prototype.indexOf,L={};b.fn=b.prototype={init:function(i,r){var y,z,F;if(!i)return this;if(i.nodeType){this.context=this[0]=i;this.length=1;return this}if(i==="body"&&!r&&u.body){this.context=u;this[0]=u.body;this.selector="body";this.length=1;return this}if(typeof i==="string")if((y=h.exec(i))&&(y[1]||!r))if(y[1]){F=r?r.ownerDocument||r:u;if(z=B.exec(i))if(b.isPlainObject(r)){i= -[u.createElement(z[1])];b.fn.attr.call(i,r,true)}else i=[F.createElement(z[1])];else{z=b.buildFragment([y[1]],[F]);i=(z.cacheable?z.fragment.cloneNode(true):z.fragment).childNodes}return b.merge(this,i)}else{if((z=u.getElementById(y[2]))&&z.parentNode){if(z.id!==y[2])return f.find(i);this.length=1;this[0]=z}this.context=u;this.selector=i;return this}else if(!r&&!s.test(i)){this.selector=i;this.context=u;i=u.getElementsByTagName(i);return b.merge(this,i)}else return!r||r.jquery?(r||f).find(i):b(r).find(i); -else if(b.isFunction(i))return f.ready(i);if(i.selector!==A){this.selector=i.selector;this.context=i.context}return b.makeArray(i,this)},selector:"",jquery:"1.4.3",length:0,size:function(){return this.length},toArray:function(){return N.call(this,0)},get:function(i){return i==null?this.toArray():i<0?this.slice(i)[0]:this[i]},pushStack:function(i,r,y){var z=b();b.isArray(i)?P.apply(z,i):b.merge(z,i);z.prevObject=this;z.context=this.context;if(r==="find")z.selector=this.selector+(this.selector?" ": -"")+y;else if(r)z.selector=this.selector+"."+r+"("+y+")";return z},each:function(i,r){return b.each(this,i,r)},ready:function(i){b.bindReady();if(b.isReady)i.call(u,b);else q&&q.push(i);return this},eq:function(i){return i===-1?this.slice(i):this.slice(i,+i+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(N.apply(this,arguments),"slice",N.call(arguments).join(","))},map:function(i){return this.pushStack(b.map(this,function(r,y){return i.call(r, -y,r)}))},end:function(){return this.prevObject||b(null)},push:P,sort:[].sort,splice:[].splice};b.fn.init.prototype=b.fn;b.extend=b.fn.extend=function(){var i=arguments[0]||{},r=1,y=arguments.length,z=false,F,I,K,J,fa;if(typeof i==="boolean"){z=i;i=arguments[1]||{};r=2}if(typeof i!=="object"&&!b.isFunction(i))i={};if(y===r){i=this;--r}for(;r0)){if(q){for(var r=0;i=q[r++];)i.call(u,b);q=null}b.fn.triggerHandler&&b(u).triggerHandler("ready")}}},bindReady:function(){if(!p){p=true;if(u.readyState==="complete")return setTimeout(b.ready, -1);if(u.addEventListener){u.addEventListener("DOMContentLoaded",t,false);E.addEventListener("load",b.ready,false)}else if(u.attachEvent){u.attachEvent("onreadystatechange",t);E.attachEvent("onload",b.ready);var i=false;try{i=E.frameElement==null}catch(r){}u.documentElement.doScroll&&i&&a()}}},isFunction:function(i){return b.type(i)==="function"},isArray:Array.isArray||function(i){return b.type(i)==="array"},isWindow:function(i){return i&&typeof i==="object"&&"setInterval"in i},isNaN:function(i){return i== -null||!v.test(i)||isNaN(i)},type:function(i){return i==null?String(i):L[x.call(i)]||"object"},isPlainObject:function(i){if(!i||b.type(i)!=="object"||i.nodeType||b.isWindow(i))return false;if(i.constructor&&!C.call(i,"constructor")&&!C.call(i.constructor.prototype,"isPrototypeOf"))return false;for(var r in i);return r===A||C.call(i,r)},isEmptyObject:function(i){for(var r in i)return false;return true},error:function(i){throw i;},parseJSON:function(i){if(typeof i!=="string"||!i)return null;i=b.trim(i); -if(D.test(i.replace(H,"@").replace(w,"]").replace(G,"")))return E.JSON&&E.JSON.parse?E.JSON.parse(i):(new Function("return "+i))();else b.error("Invalid JSON: "+i)},noop:function(){},globalEval:function(i){if(i&&k.test(i)){var r=u.getElementsByTagName("head")[0]||u.documentElement,y=u.createElement("script");y.type="text/javascript";if(b.support.scriptEval)y.appendChild(u.createTextNode(i));else y.text=i;r.insertBefore(y,r.firstChild);r.removeChild(y)}},nodeName:function(i,r){return i.nodeName&&i.nodeName.toUpperCase()=== -r.toUpperCase()},each:function(i,r,y){var z,F=0,I=i.length,K=I===A||b.isFunction(i);if(y)if(K)for(z in i){if(r.apply(i[z],y)===false)break}else for(;F";a=u.createDocumentFragment();a.appendChild(d.firstChild);c.support.checkClone=a.cloneNode(true).cloneNode(true).lastChild.checked;c(function(){var s=u.createElement("div"); -s.style.width=s.style.paddingLeft="1px";u.body.appendChild(s);c.boxModel=c.support.boxModel=s.offsetWidth===2;if("zoom"in s.style){s.style.display="inline";s.style.zoom=1;c.support.inlineBlockNeedsLayout=s.offsetWidth===2;s.style.display="";s.innerHTML="
";c.support.shrinkWrapBlocks=s.offsetWidth!==2}s.innerHTML="
t
";var v=s.getElementsByTagName("td");c.support.reliableHiddenOffsets=v[0].offsetHeight=== -0;v[0].style.display="";v[1].style.display="none";c.support.reliableHiddenOffsets=c.support.reliableHiddenOffsets&&v[0].offsetHeight===0;s.innerHTML="";u.body.removeChild(s).style.display="none"});a=function(s){var v=u.createElement("div");s="on"+s;var B=s in v;if(!B){v.setAttribute(s,"return;");B=typeof v[s]==="function"}return B};c.support.submitBubbles=a("submit");c.support.changeBubbles=a("change");a=b=d=f=h=null}})();c.props={"for":"htmlFor","class":"className",readonly:"readOnly",maxlength:"maxLength", -cellspacing:"cellSpacing",rowspan:"rowSpan",colspan:"colSpan",tabindex:"tabIndex",usemap:"useMap",frameborder:"frameBorder"};var pa={},Oa=/^(?:\{.*\}|\[.*\])$/;c.extend({cache:{},uuid:0,expando:"jQuery"+c.now(),noData:{embed:true,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:true},data:function(a,b,d){if(c.acceptData(a)){a=a==E?pa:a;var e=a.nodeType,f=e?a[c.expando]:null,h=c.cache;if(!(e&&!f&&typeof b==="string"&&d===A)){if(e)f||(a[c.expando]=f=++c.uuid);else h=a;if(typeof b==="object")if(e)h[f]= -c.extend(h[f],b);else c.extend(h,b);else if(e&&!h[f])h[f]={};a=e?h[f]:h;if(d!==A)a[b]=d;return typeof b==="string"?a[b]:a}}},removeData:function(a,b){if(c.acceptData(a)){a=a==E?pa:a;var d=a.nodeType,e=d?a[c.expando]:a,f=c.cache,h=d?f[e]:e;if(b){if(h){delete h[b];d&&c.isEmptyObject(h)&&c.removeData(a)}}else if(d&&c.support.deleteExpando)delete a[c.expando];else if(a.removeAttribute)a.removeAttribute(c.expando);else if(d)delete f[e];else for(var k in a)delete a[k]}},acceptData:function(a){if(a.nodeName){var b= -c.noData[a.nodeName.toLowerCase()];if(b)return!(b===true||a.getAttribute("classid")!==b)}return true}});c.fn.extend({data:function(a,b){if(typeof a==="undefined")return this.length?c.data(this[0]):null;else if(typeof a==="object")return this.each(function(){c.data(this,a)});var d=a.split(".");d[1]=d[1]?"."+d[1]:"";if(b===A){var e=this.triggerHandler("getData"+d[1]+"!",[d[0]]);if(e===A&&this.length){e=c.data(this[0],a);if(e===A&&this[0].nodeType===1){e=this[0].getAttribute("data-"+a);if(typeof e=== -"string")try{e=e==="true"?true:e==="false"?false:e==="null"?null:!c.isNaN(e)?parseFloat(e):Oa.test(e)?c.parseJSON(e):e}catch(f){}else e=A}}return e===A&&d[1]?this.data(d[0]):e}else return this.each(function(){var h=c(this),k=[d[0],b];h.triggerHandler("setData"+d[1]+"!",k);c.data(this,a,b);h.triggerHandler("changeData"+d[1]+"!",k)})},removeData:function(a){return this.each(function(){c.removeData(this,a)})}});c.extend({queue:function(a,b,d){if(a){b=(b||"fx")+"queue";var e=c.data(a,b);if(!d)return e|| -[];if(!e||c.isArray(d))e=c.data(a,b,c.makeArray(d));else e.push(d);return e}},dequeue:function(a,b){b=b||"fx";var d=c.queue(a,b),e=d.shift();if(e==="inprogress")e=d.shift();if(e){b==="fx"&&d.unshift("inprogress");e.call(a,function(){c.dequeue(a,b)})}}});c.fn.extend({queue:function(a,b){if(typeof a!=="string"){b=a;a="fx"}if(b===A)return c.queue(this[0],a);return this.each(function(){var d=c.queue(this,a,b);a==="fx"&&d[0]!=="inprogress"&&c.dequeue(this,a)})},dequeue:function(a){return this.each(function(){c.dequeue(this, -a)})},delay:function(a,b){a=c.fx?c.fx.speeds[a]||a:a;b=b||"fx";return this.queue(b,function(){var d=this;setTimeout(function(){c.dequeue(d,b)},a)})},clearQueue:function(a){return this.queue(a||"fx",[])}});var qa=/[\n\t]/g,ga=/\s+/,Pa=/\r/g,Qa=/^(?:href|src|style)$/,Ra=/^(?:button|input)$/i,Sa=/^(?:button|input|object|select|textarea)$/i,Ta=/^a(?:rea)?$/i,ra=/^(?:radio|checkbox)$/i;c.fn.extend({attr:function(a,b){return c.access(this,a,b,true,c.attr)},removeAttr:function(a){return this.each(function(){c.attr(this, -a,"");this.nodeType===1&&this.removeAttribute(a)})},addClass:function(a){if(c.isFunction(a))return this.each(function(s){var v=c(this);v.addClass(a.call(this,s,v.attr("class")))});if(a&&typeof a==="string")for(var b=(a||"").split(ga),d=0,e=this.length;d-1)return true;return false}, -val:function(a){if(!arguments.length){var b=this[0];if(b){if(c.nodeName(b,"option")){var d=b.attributes.value;return!d||d.specified?b.value:b.text}if(c.nodeName(b,"select")){var e=b.selectedIndex;d=[];var f=b.options;b=b.type==="select-one";if(e<0)return null;var h=b?e:0;for(e=b?e+1:f.length;h=0;else if(c.nodeName(this,"select")){var B=c.makeArray(v);c("option",this).each(function(){this.selected= -c.inArray(c(this).val(),B)>=0});if(!B.length)this.selectedIndex=-1}else this.value=v}})}});c.extend({attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},attr:function(a,b,d,e){if(!a||a.nodeType===3||a.nodeType===8)return A;if(e&&b in c.attrFn)return c(a)[b](d);e=a.nodeType!==1||!c.isXMLDoc(a);var f=d!==A;b=e&&c.props[b]||b;if(a.nodeType===1){var h=Qa.test(b);if((b in a||a[b]!==A)&&e&&!h){if(f){b==="type"&&Ra.test(a.nodeName)&&a.parentNode&&c.error("type property can't be changed"); -if(d===null)a.nodeType===1&&a.removeAttribute(b);else a[b]=d}if(c.nodeName(a,"form")&&a.getAttributeNode(b))return a.getAttributeNode(b).nodeValue;if(b==="tabIndex")return(b=a.getAttributeNode("tabIndex"))&&b.specified?b.value:Sa.test(a.nodeName)||Ta.test(a.nodeName)&&a.href?0:A;return a[b]}if(!c.support.style&&e&&b==="style"){if(f)a.style.cssText=""+d;return a.style.cssText}f&&a.setAttribute(b,""+d);if(!a.attributes[b]&&a.hasAttribute&&!a.hasAttribute(b))return A;a=!c.support.hrefNormalized&&e&& -h?a.getAttribute(b,2):a.getAttribute(b);return a===null?A:a}}});var X=/\.(.*)$/,ha=/^(?:textarea|input|select)$/i,Ha=/\./g,Ia=/ /g,Ua=/[^\w\s.|`]/g,Va=function(a){return a.replace(Ua,"\\$&")},sa={focusin:0,focusout:0};c.event={add:function(a,b,d,e){if(!(a.nodeType===3||a.nodeType===8)){if(c.isWindow(a)&&a!==E&&!a.frameElement)a=E;if(d===false)d=U;var f,h;if(d.handler){f=d;d=f.handler}if(!d.guid)d.guid=c.guid++;if(h=c.data(a)){var k=a.nodeType?"events":"__events__",l=h[k],n=h.handle;if(typeof l=== -"function"){n=l.handle;l=l.events}else if(!l){a.nodeType||(h[k]=h=function(){});h.events=l={}}if(!n)h.handle=n=function(){return typeof c!=="undefined"&&!c.event.triggered?c.event.handle.apply(n.elem,arguments):A};n.elem=a;b=b.split(" ");for(var s=0,v;k=b[s++];){h=f?c.extend({},f):{handler:d,data:e};if(k.indexOf(".")>-1){v=k.split(".");k=v.shift();h.namespace=v.slice(0).sort().join(".")}else{v=[];h.namespace=""}h.type=k;if(!h.guid)h.guid=d.guid;var B=l[k],D=c.event.special[k]||{};if(!B){B=l[k]=[]; -if(!D.setup||D.setup.call(a,e,v,n)===false)if(a.addEventListener)a.addEventListener(k,n,false);else a.attachEvent&&a.attachEvent("on"+k,n)}if(D.add){D.add.call(a,h);if(!h.handler.guid)h.handler.guid=d.guid}B.push(h);c.event.global[k]=true}a=null}}},global:{},remove:function(a,b,d,e){if(!(a.nodeType===3||a.nodeType===8)){if(d===false)d=U;var f,h,k=0,l,n,s,v,B,D,H=a.nodeType?"events":"__events__",w=c.data(a),G=w&&w[H];if(w&&G){if(typeof G==="function"){w=G;G=G.events}if(b&&b.type){d=b.handler;b=b.type}if(!b|| -typeof b==="string"&&b.charAt(0)==="."){b=b||"";for(f in G)c.event.remove(a,f+b)}else{for(b=b.split(" ");f=b[k++];){v=f;l=f.indexOf(".")<0;n=[];if(!l){n=f.split(".");f=n.shift();s=RegExp("(^|\\.)"+c.map(n.slice(0).sort(),Va).join("\\.(?:.*\\.)?")+"(\\.|$)")}if(B=G[f])if(d){v=c.event.special[f]||{};for(h=e||0;h=0){a.type= -f=f.slice(0,-1);a.exclusive=true}if(!d){a.stopPropagation();c.event.global[f]&&c.each(c.cache,function(){this.events&&this.events[f]&&c.event.trigger(a,b,this.handle.elem)})}if(!d||d.nodeType===3||d.nodeType===8)return A;a.result=A;a.target=d;b=c.makeArray(b);b.unshift(a)}a.currentTarget=d;(e=d.nodeType?c.data(d,"handle"):(c.data(d,"__events__")||{}).handle)&&e.apply(d,b);e=d.parentNode||d.ownerDocument;try{if(!(d&&d.nodeName&&c.noData[d.nodeName.toLowerCase()]))if(d["on"+f]&&d["on"+f].apply(d,b)=== -false){a.result=false;a.preventDefault()}}catch(h){}if(!a.isPropagationStopped()&&e)c.event.trigger(a,b,e,true);else if(!a.isDefaultPrevented()){e=a.target;var k,l=f.replace(X,""),n=c.nodeName(e,"a")&&l==="click",s=c.event.special[l]||{};if((!s._default||s._default.call(d,a)===false)&&!n&&!(e&&e.nodeName&&c.noData[e.nodeName.toLowerCase()])){try{if(e[l]){if(k=e["on"+l])e["on"+l]=null;c.event.triggered=true;e[l]()}}catch(v){}if(k)e["on"+l]=k;c.event.triggered=false}}},handle:function(a){var b,d,e; -d=[];var f,h=c.makeArray(arguments);a=h[0]=c.event.fix(a||E.event);a.currentTarget=this;b=a.type.indexOf(".")<0&&!a.exclusive;if(!b){e=a.type.split(".");a.type=e.shift();d=e.slice(0).sort();e=RegExp("(^|\\.)"+d.join("\\.(?:.*\\.)?")+"(\\.|$)")}a.namespace=a.namespace||d.join(".");f=c.data(this,this.nodeType?"events":"__events__");if(typeof f==="function")f=f.events;d=(f||{})[a.type];if(f&&d){d=d.slice(0);f=0;for(var k=d.length;f-1?c.map(a.options,function(e){return e.selected}).join("-"):"";else if(a.nodeName.toLowerCase()==="select")d=a.selectedIndex;return d},Z=function(a,b){var d=a.target,e,f;if(!(!ha.test(d.nodeName)||d.readOnly)){e=c.data(d,"_change_data");f=va(d);if(a.type!=="focusout"||d.type!=="radio")c.data(d,"_change_data",f);if(!(e===A||f===e))if(e!=null||f){a.type="change";a.liveFired= -A;return c.event.trigger(a,b,d)}}};c.event.special.change={filters:{focusout:Z,beforedeactivate:Z,click:function(a){var b=a.target,d=b.type;if(d==="radio"||d==="checkbox"||b.nodeName.toLowerCase()==="select")return Z.call(this,a)},keydown:function(a){var b=a.target,d=b.type;if(a.keyCode===13&&b.nodeName.toLowerCase()!=="textarea"||a.keyCode===32&&(d==="checkbox"||d==="radio")||d==="select-multiple")return Z.call(this,a)},beforeactivate:function(a){a=a.target;c.data(a,"_change_data",va(a))}},setup:function(){if(this.type=== -"file")return false;for(var a in V)c.event.add(this,a+".specialChange",V[a]);return ha.test(this.nodeName)},teardown:function(){c.event.remove(this,".specialChange");return ha.test(this.nodeName)}};V=c.event.special.change.filters;V.focus=V.beforeactivate}u.addEventListener&&c.each({focus:"focusin",blur:"focusout"},function(a,b){function d(e){e=c.event.fix(e);e.type=b;return c.event.trigger(e,null,e.target)}c.event.special[b]={setup:function(){sa[b]++===0&&u.addEventListener(a,d,true)},teardown:function(){--sa[b]=== -0&&u.removeEventListener(a,d,true)}}});c.each(["bind","one"],function(a,b){c.fn[b]=function(d,e,f){if(typeof d==="object"){for(var h in d)this[b](h,e,d[h],f);return this}if(c.isFunction(e)||e===false){f=e;e=A}var k=b==="one"?c.proxy(f,function(n){c(this).unbind(n,k);return f.apply(this,arguments)}):f;if(d==="unload"&&b!=="one")this.one(d,e,f);else{h=0;for(var l=this.length;h0?this.bind(b,d,e):this.trigger(b)};if(c.attrFn)c.attrFn[b]=true});E.attachEvent&&!E.addEventListener&&c(E).bind("unload",function(){for(var a in c.cache)if(c.cache[a].handle)try{c.event.remove(c.cache[a].handle.elem)}catch(b){}}); -(function(){function a(g,j,o,m,p,q){p=0;for(var t=m.length;p0){C=x;break}}x=x[g]}m[p]=C}}}var d=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,e=0,f=Object.prototype.toString,h=false,k=true;[0,0].sort(function(){k=false;return 0});var l=function(g,j,o,m){o=o||[];var p=j=j||u;if(j.nodeType!==1&&j.nodeType!==9)return[];if(!g||typeof g!=="string")return o;var q=[],t,x,C,P,N=true,R=l.isXML(j),Q=g,L;do{d.exec("");if(t=d.exec(Q)){Q=t[3];q.push(t[1]);if(t[2]){P=t[3]; -break}}}while(t);if(q.length>1&&s.exec(g))if(q.length===2&&n.relative[q[0]])x=M(q[0]+q[1],j);else for(x=n.relative[q[0]]?[j]:l(q.shift(),j);q.length;){g=q.shift();if(n.relative[g])g+=q.shift();x=M(g,x)}else{if(!m&&q.length>1&&j.nodeType===9&&!R&&n.match.ID.test(q[0])&&!n.match.ID.test(q[q.length-1])){t=l.find(q.shift(),j,R);j=t.expr?l.filter(t.expr,t.set)[0]:t.set[0]}if(j){t=m?{expr:q.pop(),set:D(m)}:l.find(q.pop(),q.length===1&&(q[0]==="~"||q[0]==="+")&&j.parentNode?j.parentNode:j,R);x=t.expr?l.filter(t.expr, -t.set):t.set;if(q.length>0)C=D(x);else N=false;for(;q.length;){t=L=q.pop();if(n.relative[L])t=q.pop();else L="";if(t==null)t=j;n.relative[L](C,t,R)}}else C=[]}C||(C=x);C||l.error(L||g);if(f.call(C)==="[object Array]")if(N)if(j&&j.nodeType===1)for(g=0;C[g]!=null;g++){if(C[g]&&(C[g]===true||C[g].nodeType===1&&l.contains(j,C[g])))o.push(x[g])}else for(g=0;C[g]!=null;g++)C[g]&&C[g].nodeType===1&&o.push(x[g]);else o.push.apply(o,C);else D(C,o);if(P){l(P,p,o,m);l.uniqueSort(o)}return o};l.uniqueSort=function(g){if(w){h= -k;g.sort(w);if(h)for(var j=1;j0};l.find=function(g,j,o){var m;if(!g)return[];for(var p=0,q=n.order.length;p":function(g,j){var o=typeof j==="string",m,p=0,q=g.length;if(o&&!/\W/.test(j))for(j=j.toLowerCase();p=0))o||m.push(t);else if(o)j[q]=false;return false},ID:function(g){return g[1].replace(/\\/g,"")},TAG:function(g){return g[1].toLowerCase()},CHILD:function(g){if(g[1]==="nth"){var j=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(g[2]==="even"&&"2n"||g[2]==="odd"&&"2n+1"||!/\D/.test(g[2])&&"0n+"+g[2]||g[2]);g[2]=j[1]+(j[2]||1)-0;g[3]=j[3]-0}g[0]=e++;return g},ATTR:function(g,j,o, -m,p,q){j=g[1].replace(/\\/g,"");if(!q&&n.attrMap[j])g[1]=n.attrMap[j];if(g[2]==="~=")g[4]=" "+g[4]+" ";return g},PSEUDO:function(g,j,o,m,p){if(g[1]==="not")if((d.exec(g[3])||"").length>1||/^\w/.test(g[3]))g[3]=l(g[3],null,null,j);else{g=l.filter(g[3],j,o,true^p);o||m.push.apply(m,g);return false}else if(n.match.POS.test(g[0])||n.match.CHILD.test(g[0]))return true;return g},POS:function(g){g.unshift(true);return g}},filters:{enabled:function(g){return g.disabled===false&&g.type!=="hidden"},disabled:function(g){return g.disabled=== -true},checked:function(g){return g.checked===true},selected:function(g){return g.selected===true},parent:function(g){return!!g.firstChild},empty:function(g){return!g.firstChild},has:function(g,j,o){return!!l(o[3],g).length},header:function(g){return/h\d/i.test(g.nodeName)},text:function(g){return"text"===g.type},radio:function(g){return"radio"===g.type},checkbox:function(g){return"checkbox"===g.type},file:function(g){return"file"===g.type},password:function(g){return"password"===g.type},submit:function(g){return"submit"=== -g.type},image:function(g){return"image"===g.type},reset:function(g){return"reset"===g.type},button:function(g){return"button"===g.type||g.nodeName.toLowerCase()==="button"},input:function(g){return/input|select|textarea|button/i.test(g.nodeName)}},setFilters:{first:function(g,j){return j===0},last:function(g,j,o,m){return j===m.length-1},even:function(g,j){return j%2===0},odd:function(g,j){return j%2===1},lt:function(g,j,o){return jo[3]-0},nth:function(g,j,o){return o[3]- -0===j},eq:function(g,j,o){return o[3]-0===j}},filter:{PSEUDO:function(g,j,o,m){var p=j[1],q=n.filters[p];if(q)return q(g,o,j,m);else if(p==="contains")return(g.textContent||g.innerText||l.getText([g])||"").indexOf(j[3])>=0;else if(p==="not"){j=j[3];o=0;for(m=j.length;o=0}},ID:function(g,j){return g.nodeType===1&&g.getAttribute("id")===j},TAG:function(g,j){return j==="*"&&g.nodeType===1||g.nodeName.toLowerCase()=== -j},CLASS:function(g,j){return(" "+(g.className||g.getAttribute("class"))+" ").indexOf(j)>-1},ATTR:function(g,j){var o=j[1];o=n.attrHandle[o]?n.attrHandle[o](g):g[o]!=null?g[o]:g.getAttribute(o);var m=o+"",p=j[2],q=j[4];return o==null?p==="!=":p==="="?m===q:p==="*="?m.indexOf(q)>=0:p==="~="?(" "+m+" ").indexOf(q)>=0:!q?m&&o!==false:p==="!="?m!==q:p==="^="?m.indexOf(q)===0:p==="$="?m.substr(m.length-q.length)===q:p==="|="?m===q||m.substr(0,q.length+1)===q+"-":false},POS:function(g,j,o,m){var p=n.setFilters[j[2]]; -if(p)return p(g,o,j,m)}}},s=n.match.POS,v=function(g,j){return"\\"+(j-0+1)},B;for(B in n.match){n.match[B]=RegExp(n.match[B].source+/(?![^\[]*\])(?![^\(]*\))/.source);n.leftMatch[B]=RegExp(/(^(?:.|\r|\n)*?)/.source+n.match[B].source.replace(/\\(\d+)/g,v))}var D=function(g,j){g=Array.prototype.slice.call(g,0);if(j){j.push.apply(j,g);return j}return g};try{Array.prototype.slice.call(u.documentElement.childNodes,0)}catch(H){D=function(g,j){var o=j||[],m=0;if(f.call(g)==="[object Array]")Array.prototype.push.apply(o, -g);else if(typeof g.length==="number")for(var p=g.length;m";var o=u.documentElement;o.insertBefore(g,o.firstChild);if(u.getElementById(j)){n.find.ID=function(m,p,q){if(typeof p.getElementById!=="undefined"&&!q)return(p=p.getElementById(m[1]))?p.id===m[1]||typeof p.getAttributeNode!=="undefined"&&p.getAttributeNode("id").nodeValue===m[1]?[p]:A:[]};n.filter.ID=function(m,p){var q=typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id");return m.nodeType===1&&q&&q.nodeValue===p}}o.removeChild(g); -o=g=null})();(function(){var g=u.createElement("div");g.appendChild(u.createComment(""));if(g.getElementsByTagName("*").length>0)n.find.TAG=function(j,o){var m=o.getElementsByTagName(j[1]);if(j[1]==="*"){for(var p=[],q=0;m[q];q++)m[q].nodeType===1&&p.push(m[q]);m=p}return m};g.innerHTML="";if(g.firstChild&&typeof g.firstChild.getAttribute!=="undefined"&&g.firstChild.getAttribute("href")!=="#")n.attrHandle.href=function(j){return j.getAttribute("href",2)};g=null})();u.querySelectorAll&& -function(){var g=l,j=u.createElement("div");j.innerHTML="

";if(!(j.querySelectorAll&&j.querySelectorAll(".TEST").length===0)){l=function(m,p,q,t){p=p||u;if(!t&&!l.isXML(p))if(p.nodeType===9)try{return D(p.querySelectorAll(m),q)}catch(x){}else if(p.nodeType===1&&p.nodeName.toLowerCase()!=="object"){var C=p.id,P=p.id="__sizzle__";try{return D(p.querySelectorAll("#"+P+" "+m),q)}catch(N){}finally{if(C)p.id=C;else p.removeAttribute("id")}}return g(m,p,q,t)};for(var o in g)l[o]=g[o]; -j=null}}();(function(){var g=u.documentElement,j=g.matchesSelector||g.mozMatchesSelector||g.webkitMatchesSelector||g.msMatchesSelector,o=false;try{j.call(u.documentElement,":sizzle")}catch(m){o=true}if(j)l.matchesSelector=function(p,q){try{if(o||!n.match.PSEUDO.test(q))return j.call(p,q)}catch(t){}return l(q,null,null,[p]).length>0}})();(function(){var g=u.createElement("div");g.innerHTML="
";if(!(!g.getElementsByClassName||g.getElementsByClassName("e").length=== -0)){g.lastChild.className="e";if(g.getElementsByClassName("e").length!==1){n.order.splice(1,0,"CLASS");n.find.CLASS=function(j,o,m){if(typeof o.getElementsByClassName!=="undefined"&&!m)return o.getElementsByClassName(j[1])};g=null}}})();l.contains=u.documentElement.contains?function(g,j){return g!==j&&(g.contains?g.contains(j):true)}:function(g,j){return!!(g.compareDocumentPosition(j)&16)};l.isXML=function(g){return(g=(g?g.ownerDocument||g:0).documentElement)?g.nodeName!=="HTML":false};var M=function(g, -j){for(var o=[],m="",p,q=j.nodeType?[j]:j;p=n.match.PSEUDO.exec(g);){m+=p[0];g=g.replace(n.match.PSEUDO,"")}g=n.relative[g]?g+"*":g;p=0;for(var t=q.length;p0)for(var h=d;h0},closest:function(a, -b){var d=[],e,f,h=this[0];if(c.isArray(a)){var k={},l,n=1;if(h&&a.length){e=0;for(f=a.length;e-1:c(h).is(e))d.push({selector:l,elem:h,level:n})}h=h.parentNode;n++}}return d}k=$a.test(a)?c(a,b||this.context):null;e=0;for(f=this.length;e-1:c.find.matchesSelector(h,a)){d.push(h);break}else{h=h.parentNode;if(!h|| -!h.ownerDocument||h===b)break}d=d.length>1?c.unique(d):d;return this.pushStack(d,"closest",a)},index:function(a){if(!a||typeof a==="string")return c.inArray(this[0],a?c(a):this.parent().children());return c.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var d=typeof a==="string"?c(a,b||this.context):c.makeArray(a),e=c.merge(this.get(),d);return this.pushStack(!d[0]||!d[0].parentNode||d[0].parentNode.nodeType===11||!e[0]||!e[0].parentNode||e[0].parentNode.nodeType===11?e:c.unique(e))},andSelf:function(){return this.add(this.prevObject)}}); -c.each({parent:function(a){return(a=a.parentNode)&&a.nodeType!==11?a:null},parents:function(a){return c.dir(a,"parentNode")},parentsUntil:function(a,b,d){return c.dir(a,"parentNode",d)},next:function(a){return c.nth(a,2,"nextSibling")},prev:function(a){return c.nth(a,2,"previousSibling")},nextAll:function(a){return c.dir(a,"nextSibling")},prevAll:function(a){return c.dir(a,"previousSibling")},nextUntil:function(a,b,d){return c.dir(a,"nextSibling",d)},prevUntil:function(a,b,d){return c.dir(a,"previousSibling", -d)},siblings:function(a){return c.sibling(a.parentNode.firstChild,a)},children:function(a){return c.sibling(a.firstChild)},contents:function(a){return c.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:c.makeArray(a.childNodes)}},function(a,b){c.fn[a]=function(d,e){var f=c.map(this,b,d);Wa.test(a)||(e=d);if(e&&typeof e==="string")f=c.filter(e,f);f=this.length>1?c.unique(f):f;if((this.length>1||Ya.test(e))&&Xa.test(a))f=f.reverse();return this.pushStack(f,a,Za.call(arguments).join(","))}}); -c.extend({filter:function(a,b,d){if(d)a=":not("+a+")";return b.length===1?c.find.matchesSelector(b[0],a)?[b[0]]:[]:c.find.matches(a,b)},dir:function(a,b,d){var e=[];for(a=a[b];a&&a.nodeType!==9&&(d===A||a.nodeType!==1||!c(a).is(d));){a.nodeType===1&&e.push(a);a=a[b]}return e},nth:function(a,b,d){b=b||1;for(var e=0;a;a=a[d])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){for(var d=[];a;a=a.nextSibling)a.nodeType===1&&a!==b&&d.push(a);return d}});var xa=/ jQuery\d+="(?:\d+|null)"/g, -$=/^\s+/,ya=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,za=/<([\w:]+)/,ab=/\s]+\/)>/g,O={option:[1,""],legend:[1,"
","
"],thead:[1,"","
"],tr:[2,"","
"],td:[3,"","
"],col:[2,"","
"], -area:[1,"",""],_default:[0,"",""]};O.optgroup=O.option;O.tbody=O.tfoot=O.colgroup=O.caption=O.thead;O.th=O.td;if(!c.support.htmlSerialize)O._default=[1,"div
","
"];c.fn.extend({text:function(a){if(c.isFunction(a))return this.each(function(b){var d=c(this);d.text(a.call(this,b,d.text()))});if(typeof a!=="object"&&a!==A)return this.empty().append((this[0]&&this[0].ownerDocument||u).createTextNode(a));return c.text(this)},wrapAll:function(a){if(c.isFunction(a))return this.each(function(d){c(this).wrapAll(a.call(this, -d))});if(this[0]){var b=c(a,this[0].ownerDocument).eq(0).clone(true);this[0].parentNode&&b.insertBefore(this[0]);b.map(function(){for(var d=this;d.firstChild&&d.firstChild.nodeType===1;)d=d.firstChild;return d}).append(this)}return this},wrapInner:function(a){if(c.isFunction(a))return this.each(function(b){c(this).wrapInner(a.call(this,b))});return this.each(function(){var b=c(this),d=b.contents();d.length?d.wrapAll(a):b.append(a)})},wrap:function(a){return this.each(function(){c(this).wrapAll(a)})}, -unwrap:function(){return this.parent().each(function(){c.nodeName(this,"body")||c(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b,this)});else if(arguments.length){var a= -c(arguments[0]);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b,this.nextSibling)});else if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,c(arguments[0]).toArray());return a}},remove:function(a,b){for(var d=0,e;(e=this[d])!=null;d++)if(!a||c.filter(a,[e]).length){if(!b&&e.nodeType===1){c.cleanData(e.getElementsByTagName("*")); -c.cleanData([e])}e.parentNode&&e.parentNode.removeChild(e)}return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++)for(b.nodeType===1&&c.cleanData(b.getElementsByTagName("*"));b.firstChild;)b.removeChild(b.firstChild);return this},clone:function(a){var b=this.map(function(){if(!c.support.noCloneEvent&&!c.isXMLDoc(this)){var d=this.outerHTML,e=this.ownerDocument;if(!d){d=e.createElement("div");d.appendChild(this.cloneNode(true));d=d.innerHTML}return c.clean([d.replace(xa,"").replace(cb,'="$1">').replace($, -"")],e)[0]}else return this.cloneNode(true)});if(a===true){la(this,b);la(this.find("*"),b.find("*"))}return b},html:function(a){if(a===A)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(xa,""):null;else if(typeof a==="string"&&!Aa.test(a)&&(c.support.leadingWhitespace||!$.test(a))&&!O[(za.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(ya,"<$1>");try{for(var b=0,d=this.length;b0||e.cacheable||this.length>1?l.cloneNode(true):l)}k.length&&c.each(k,Ka)}return this}});c.buildFragment=function(a,b,d){var e,f,h;b=b&&b[0]?b[0].ownerDocument||b[0]:u;if(a.length===1&&typeof a[0]==="string"&&a[0].length<512&&b===u&&!Aa.test(a[0])&&(c.support.checkClone|| -!Ba.test(a[0]))){f=true;if(h=c.fragments[a[0]])if(h!==1)e=h}if(!e){e=b.createDocumentFragment();c.clean(a,b,e,d)}if(f)c.fragments[a[0]]=h?e:1;return{fragment:e,cacheable:f}};c.fragments={};c.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){c.fn[a]=function(d){var e=[];d=c(d);var f=this.length===1&&this[0].parentNode;if(f&&f.nodeType===11&&f.childNodes.length===1&&d.length===1){d[b](this[0]);return this}else{f=0;for(var h= -d.length;f0?this.clone(true):this).get();c(d[f])[b](k);e=e.concat(k)}return this.pushStack(e,a,d.selector)}}});c.extend({clean:function(a,b,d,e){b=b||u;if(typeof b.createElement==="undefined")b=b.ownerDocument||b[0]&&b[0].ownerDocument||u;for(var f=[],h=0,k;(k=a[h])!=null;h++){if(typeof k==="number")k+="";if(k){if(typeof k==="string"&&!bb.test(k))k=b.createTextNode(k);else if(typeof k==="string"){k=k.replace(ya,"<$1>");var l=(za.exec(k)||["",""])[1].toLowerCase(),n=O[l]||O._default, -s=n[0],v=b.createElement("div");for(v.innerHTML=n[1]+k+n[2];s--;)v=v.lastChild;if(!c.support.tbody){s=ab.test(k);l=l==="table"&&!s?v.firstChild&&v.firstChild.childNodes:n[1]===""&&!s?v.childNodes:[];for(n=l.length-1;n>=0;--n)c.nodeName(l[n],"tbody")&&!l[n].childNodes.length&&l[n].parentNode.removeChild(l[n])}!c.support.leadingWhitespace&&$.test(k)&&v.insertBefore(b.createTextNode($.exec(k)[0]),v.firstChild);k=v.childNodes}if(k.nodeType)f.push(k);else f=c.merge(f,k)}}if(d)for(h=0;f[h];h++)if(e&& -c.nodeName(f[h],"script")&&(!f[h].type||f[h].type.toLowerCase()==="text/javascript"))e.push(f[h].parentNode?f[h].parentNode.removeChild(f[h]):f[h]);else{f[h].nodeType===1&&f.splice.apply(f,[h+1,0].concat(c.makeArray(f[h].getElementsByTagName("script"))));d.appendChild(f[h])}return f},cleanData:function(a){for(var b,d,e=c.cache,f=c.event.special,h=c.support.deleteExpando,k=0,l;(l=a[k])!=null;k++)if(!(l.nodeName&&c.noData[l.nodeName.toLowerCase()]))if(d=l[c.expando]){if((b=e[d])&&b.events)for(var n in b.events)f[n]? -c.event.remove(l,n):c.removeEvent(l,n,b.handle);if(h)delete l[c.expando];else l.removeAttribute&&l.removeAttribute(c.expando);delete e[d]}}});var Ca=/alpha\([^)]*\)/i,db=/opacity=([^)]*)/,eb=/-([a-z])/ig,fb=/([A-Z])/g,Da=/^-?\d+(?:px)?$/i,gb=/^-?\d/,hb={position:"absolute",visibility:"hidden",display:"block"},La=["Left","Right"],Ma=["Top","Bottom"],W,ib=u.defaultView&&u.defaultView.getComputedStyle,jb=function(a,b){return b.toUpperCase()};c.fn.css=function(a,b){if(arguments.length===2&&b===A)return this; -return c.access(this,a,b,true,function(d,e,f){return f!==A?c.style(d,e,f):c.css(d,e)})};c.extend({cssHooks:{opacity:{get:function(a,b){if(b){var d=W(a,"opacity","opacity");return d===""?"1":d}else return a.style.opacity}}},cssNumber:{zIndex:true,fontWeight:true,opacity:true,zoom:true,lineHeight:true},cssProps:{"float":c.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,b,d,e){if(!(!a||a.nodeType===3||a.nodeType===8||!a.style)){var f,h=c.camelCase(b),k=a.style,l=c.cssHooks[h];b=c.cssProps[h]|| -h;if(d!==A){if(!(typeof d==="number"&&isNaN(d)||d==null)){if(typeof d==="number"&&!c.cssNumber[h])d+="px";if(!l||!("set"in l)||(d=l.set(a,d))!==A)try{k[b]=d}catch(n){}}}else{if(l&&"get"in l&&(f=l.get(a,false,e))!==A)return f;return k[b]}}},css:function(a,b,d){var e,f=c.camelCase(b),h=c.cssHooks[f];b=c.cssProps[f]||f;if(h&&"get"in h&&(e=h.get(a,true,d))!==A)return e;else if(W)return W(a,b,f)},swap:function(a,b,d){var e={},f;for(f in b){e[f]=a.style[f];a.style[f]=b[f]}d.call(a);for(f in b)a.style[f]= -e[f]},camelCase:function(a){return a.replace(eb,jb)}});c.curCSS=c.css;c.each(["height","width"],function(a,b){c.cssHooks[b]={get:function(d,e,f){var h;if(e){if(d.offsetWidth!==0)h=ma(d,b,f);else c.swap(d,hb,function(){h=ma(d,b,f)});return h+"px"}},set:function(d,e){if(Da.test(e)){e=parseFloat(e);if(e>=0)return e+"px"}else return e}}});if(!c.support.opacity)c.cssHooks.opacity={get:function(a,b){return db.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"": -b?"1":""},set:function(a,b){var d=a.style;d.zoom=1;var e=c.isNaN(b)?"":"alpha(opacity="+b*100+")",f=d.filter||"";d.filter=Ca.test(f)?f.replace(Ca,e):d.filter+" "+e}};if(ib)W=function(a,b,d){var e;d=d.replace(fb,"-$1").toLowerCase();if(!(b=a.ownerDocument.defaultView))return A;if(b=b.getComputedStyle(a,null)){e=b.getPropertyValue(d);if(e===""&&!c.contains(a.ownerDocument.documentElement,a))e=c.style(a,d)}return e};else if(u.documentElement.currentStyle)W=function(a,b){var d,e,f=a.currentStyle&&a.currentStyle[b], -h=a.style;if(!Da.test(f)&&gb.test(f)){d=h.left;e=a.runtimeStyle.left;a.runtimeStyle.left=a.currentStyle.left;h.left=b==="fontSize"?"1em":f||0;f=h.pixelLeft+"px";h.left=d;a.runtimeStyle.left=e}return f};if(c.expr&&c.expr.filters){c.expr.filters.hidden=function(a){var b=a.offsetHeight;return a.offsetWidth===0&&b===0||!c.support.reliableHiddenOffsets&&(a.style.display||c.css(a,"display"))==="none"};c.expr.filters.visible=function(a){return!c.expr.filters.hidden(a)}}var kb=c.now(),lb=/)<[^<]*)*<\/script>/gi, -mb=/^(?:select|textarea)/i,nb=/^(?:color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,ob=/^(?:GET|HEAD|DELETE)$/,Na=/\[\]$/,T=/\=\?(&|$)/,ia=/\?/,pb=/([?&])_=[^&]*/,qb=/^(\w+:)?\/\/([^\/?#]+)/,rb=/%20/g,sb=/#.*$/,Ea=c.fn.load;c.fn.extend({load:function(a,b,d){if(typeof a!=="string"&&Ea)return Ea.apply(this,arguments);else if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var f=a.slice(e,a.length);a=a.slice(0,e)}e="GET";if(b)if(c.isFunction(b)){d= -b;b=null}else if(typeof b==="object"){b=c.param(b,c.ajaxSettings.traditional);e="POST"}var h=this;c.ajax({url:a,type:e,dataType:"html",data:b,complete:function(k,l){if(l==="success"||l==="notmodified")h.html(f?c("
").append(k.responseText.replace(lb,"")).find(f):k.responseText);d&&h.each(d,[k.responseText,l,k])}});return this},serialize:function(){return c.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?c.makeArray(this.elements):this}).filter(function(){return this.name&& -!this.disabled&&(this.checked||mb.test(this.nodeName)||nb.test(this.type))}).map(function(a,b){var d=c(this).val();return d==null?null:c.isArray(d)?c.map(d,function(e){return{name:b.name,value:e}}):{name:b.name,value:d}}).get()}});c.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){c.fn[b]=function(d){return this.bind(b,d)}});c.extend({get:function(a,b,d,e){if(c.isFunction(b)){e=e||d;d=b;b=null}return c.ajax({type:"GET",url:a,data:b,success:d,dataType:e})}, -getScript:function(a,b){return c.get(a,null,b,"script")},getJSON:function(a,b,d){return c.get(a,b,d,"json")},post:function(a,b,d,e){if(c.isFunction(b)){e=e||d;d=b;b={}}return c.ajax({type:"POST",url:a,data:b,success:d,dataType:e})},ajaxSetup:function(a){c.extend(c.ajaxSettings,a)},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return new E.XMLHttpRequest},accepts:{xml:"application/xml, text/xml",html:"text/html", -script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},ajax:function(a){var b=c.extend(true,{},c.ajaxSettings,a),d,e,f,h=b.type.toUpperCase(),k=ob.test(h);b.url=b.url.replace(sb,"");b.context=a&&a.context!=null?a.context:b;if(b.data&&b.processData&&typeof b.data!=="string")b.data=c.param(b.data,b.traditional);if(b.dataType==="jsonp"){if(h==="GET")T.test(b.url)||(b.url+=(ia.test(b.url)?"&":"?")+(b.jsonp||"callback")+"=?");else if(!b.data|| -!T.test(b.data))b.data=(b.data?b.data+"&":"")+(b.jsonp||"callback")+"=?";b.dataType="json"}if(b.dataType==="json"&&(b.data&&T.test(b.data)||T.test(b.url))){d=b.jsonpCallback||"jsonp"+kb++;if(b.data)b.data=(b.data+"").replace(T,"="+d+"$1");b.url=b.url.replace(T,"="+d+"$1");b.dataType="script";var l=E[d];E[d]=function(m){f=m;c.handleSuccess(b,w,e,f);c.handleComplete(b,w,e,f);if(c.isFunction(l))l(m);else{E[d]=A;try{delete E[d]}catch(p){}}v&&v.removeChild(B)}}if(b.dataType==="script"&&b.cache===null)b.cache= -false;if(b.cache===false&&h==="GET"){var n=c.now(),s=b.url.replace(pb,"$1_="+n);b.url=s+(s===b.url?(ia.test(b.url)?"&":"?")+"_="+n:"")}if(b.data&&h==="GET")b.url+=(ia.test(b.url)?"&":"?")+b.data;b.global&&c.active++===0&&c.event.trigger("ajaxStart");n=(n=qb.exec(b.url))&&(n[1]&&n[1]!==location.protocol||n[2]!==location.host);if(b.dataType==="script"&&h==="GET"&&n){var v=u.getElementsByTagName("head")[0]||u.documentElement,B=u.createElement("script");if(b.scriptCharset)B.charset=b.scriptCharset;B.src= -b.url;if(!d){var D=false;B.onload=B.onreadystatechange=function(){if(!D&&(!this.readyState||this.readyState==="loaded"||this.readyState==="complete")){D=true;c.handleSuccess(b,w,e,f);c.handleComplete(b,w,e,f);B.onload=B.onreadystatechange=null;v&&B.parentNode&&v.removeChild(B)}}}v.insertBefore(B,v.firstChild);return A}var H=false,w=b.xhr();if(w){b.username?w.open(h,b.url,b.async,b.username,b.password):w.open(h,b.url,b.async);try{if(b.data!=null&&!k||a&&a.contentType)w.setRequestHeader("Content-Type", -b.contentType);if(b.ifModified){c.lastModified[b.url]&&w.setRequestHeader("If-Modified-Since",c.lastModified[b.url]);c.etag[b.url]&&w.setRequestHeader("If-None-Match",c.etag[b.url])}n||w.setRequestHeader("X-Requested-With","XMLHttpRequest");w.setRequestHeader("Accept",b.dataType&&b.accepts[b.dataType]?b.accepts[b.dataType]+", */*; q=0.01":b.accepts._default)}catch(G){}if(b.beforeSend&&b.beforeSend.call(b.context,w,b)===false){b.global&&c.active--===1&&c.event.trigger("ajaxStop");w.abort();return false}b.global&& -c.triggerGlobal(b,"ajaxSend",[w,b]);var M=w.onreadystatechange=function(m){if(!w||w.readyState===0||m==="abort"){H||c.handleComplete(b,w,e,f);H=true;if(w)w.onreadystatechange=c.noop}else if(!H&&w&&(w.readyState===4||m==="timeout")){H=true;w.onreadystatechange=c.noop;e=m==="timeout"?"timeout":!c.httpSuccess(w)?"error":b.ifModified&&c.httpNotModified(w,b.url)?"notmodified":"success";var p;if(e==="success")try{f=c.httpData(w,b.dataType,b)}catch(q){e="parsererror";p=q}if(e==="success"||e==="notmodified")d|| -c.handleSuccess(b,w,e,f);else c.handleError(b,w,e,p);d||c.handleComplete(b,w,e,f);m==="timeout"&&w.abort();if(b.async)w=null}};try{var g=w.abort;w.abort=function(){w&&g.call&&g.call(w);M("abort")}}catch(j){}b.async&&b.timeout>0&&setTimeout(function(){w&&!H&&M("timeout")},b.timeout);try{w.send(k||b.data==null?null:b.data)}catch(o){c.handleError(b,w,null,o);c.handleComplete(b,w,e,f)}b.async||M();return w}},param:function(a,b){var d=[],e=function(h,k){k=c.isFunction(k)?k():k;d[d.length]=encodeURIComponent(h)+ -"="+encodeURIComponent(k)};if(b===A)b=c.ajaxSettings.traditional;if(c.isArray(a)||a.jquery)c.each(a,function(){e(this.name,this.value)});else for(var f in a)ca(f,a[f],b,e);return d.join("&").replace(rb,"+")}});c.extend({active:0,lastModified:{},etag:{},handleError:function(a,b,d,e){a.error&&a.error.call(a.context,b,d,e);a.global&&c.triggerGlobal(a,"ajaxError",[b,a,e])},handleSuccess:function(a,b,d,e){a.success&&a.success.call(a.context,e,d,b);a.global&&c.triggerGlobal(a,"ajaxSuccess",[b,a])},handleComplete:function(a, -b,d){a.complete&&a.complete.call(a.context,b,d);a.global&&c.triggerGlobal(a,"ajaxComplete",[b,a]);a.global&&c.active--===1&&c.event.trigger("ajaxStop")},triggerGlobal:function(a,b,d){(a.context&&a.context.url==null?c(a.context):c.event).trigger(b,d)},httpSuccess:function(a){try{return!a.status&&location.protocol==="file:"||a.status>=200&&a.status<300||a.status===304||a.status===1223}catch(b){}return false},httpNotModified:function(a,b){var d=a.getResponseHeader("Last-Modified"),e=a.getResponseHeader("Etag"); -if(d)c.lastModified[b]=d;if(e)c.etag[b]=e;return a.status===304},httpData:function(a,b,d){var e=a.getResponseHeader("content-type")||"",f=b==="xml"||!b&&e.indexOf("xml")>=0;a=f?a.responseXML:a.responseText;f&&a.documentElement.nodeName==="parsererror"&&c.error("parsererror");if(d&&d.dataFilter)a=d.dataFilter(a,b);if(typeof a==="string")if(b==="json"||!b&&e.indexOf("json")>=0)a=c.parseJSON(a);else if(b==="script"||!b&&e.indexOf("javascript")>=0)c.globalEval(a);return a}});if(E.ActiveXObject)c.ajaxSettings.xhr= -function(){if(E.location.protocol!=="file:")try{return new E.XMLHttpRequest}catch(a){}try{return new E.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}};c.support.ajax=!!c.ajaxSettings.xhr();var da={},tb=/^(?:toggle|show|hide)$/,ub=/^([+\-]=)?([\d+.\-]+)(.*)$/,aa,na=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];c.fn.extend({show:function(a,b,d){if(a||a===0)return this.animate(S("show",3),a,b,d);else{a= -0;for(b=this.length;a=0;e--)if(d[e].elem===this){b&&d[e](true);d.splice(e,1)}});b||this.dequeue();return this}});c.each({slideDown:S("show",1),slideUp:S("hide",1),slideToggle:S("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(a,b){c.fn[a]=function(d,e,f){return this.animate(b, -d,e,f)}});c.extend({speed:function(a,b,d){var e=a&&typeof a==="object"?c.extend({},a):{complete:d||!d&&b||c.isFunction(a)&&a,duration:a,easing:d&&b||b&&!c.isFunction(b)&&b};e.duration=c.fx.off?0:typeof e.duration==="number"?e.duration:e.duration in c.fx.speeds?c.fx.speeds[e.duration]:c.fx.speeds._default;e.old=e.complete;e.complete=function(){e.queue!==false&&c(this).dequeue();c.isFunction(e.old)&&e.old.call(this)};return e},easing:{linear:function(a,b,d,e){return d+e*a},swing:function(a,b,d,e){return(-Math.cos(a* -Math.PI)/2+0.5)*e+d}},timers:[],fx:function(a,b,d){this.options=b;this.elem=a;this.prop=d;if(!b.orig)b.orig={}}});c.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this);(c.fx.step[this.prop]||c.fx.step._default)(this)},cur:function(){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];var a=parseFloat(c.css(this.elem,this.prop));return a&&a>-1E4?a:0},custom:function(a,b,d){function e(h){return f.step(h)} -this.startTime=c.now();this.start=a;this.end=b;this.unit=d||this.unit||"px";this.now=this.start;this.pos=this.state=0;var f=this;a=c.fx;e.elem=this.elem;if(e()&&c.timers.push(e)&&!aa)aa=setInterval(a.tick,a.interval)},show:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.show=true;this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur());c(this.elem).show()},hide:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.hide=true; -this.custom(this.cur(),0)},step:function(a){var b=c.now(),d=true;if(a||b>=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;for(var e in this.options.curAnim)if(this.options.curAnim[e]!==true)d=false;if(d){if(this.options.overflow!=null&&!c.support.shrinkWrapBlocks){var f=this.elem,h=this.options;c.each(["","X","Y"],function(l,n){f.style["overflow"+n]=h.overflow[l]})}this.options.hide&&c(this.elem).hide();if(this.options.hide|| -this.options.show)for(var k in this.options.curAnim)c.style(this.elem,k,this.options.orig[k]);this.options.complete.call(this.elem)}return false}else{a=b-this.startTime;this.state=a/this.options.duration;b=this.options.easing||(c.easing.swing?"swing":"linear");this.pos=c.easing[this.options.specialEasing&&this.options.specialEasing[this.prop]||b](this.state,a,0,1,this.options.duration);this.now=this.start+(this.end-this.start)*this.pos;this.update()}return true}};c.extend(c.fx,{tick:function(){for(var a= -c.timers,b=0;b-1;e={};var s={};if(n)s=f.position();k=n?s.top:parseInt(k,10)||0;l=n?s.left:parseInt(l,10)||0;if(c.isFunction(b))b=b.call(a,d,h);if(b.top!=null)e.top=b.top-h.top+k;if(b.left!=null)e.left=b.left-h.left+l;"using"in b?b.using.call(a, -e):f.css(e)}};c.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),d=this.offset(),e=Fa.test(b[0].nodeName)?{top:0,left:0}:b.offset();d.top-=parseFloat(c.css(a,"marginTop"))||0;d.left-=parseFloat(c.css(a,"marginLeft"))||0;e.top+=parseFloat(c.css(b[0],"borderTopWidth"))||0;e.left+=parseFloat(c.css(b[0],"borderLeftWidth"))||0;return{top:d.top-e.top,left:d.left-e.left}},offsetParent:function(){return this.map(function(){for(var a=this.offsetParent||u.body;a&&!Fa.test(a.nodeName)&& -c.css(a,"position")==="static";)a=a.offsetParent;return a})}});c.each(["Left","Top"],function(a,b){var d="scroll"+b;c.fn[d]=function(e){var f=this[0],h;if(!f)return null;if(e!==A)return this.each(function(){if(h=ea(this))h.scrollTo(!a?e:c(h).scrollLeft(),a?e:c(h).scrollTop());else this[d]=e});else return(h=ea(f))?"pageXOffset"in h?h[a?"pageYOffset":"pageXOffset"]:c.support.boxModel&&h.document.documentElement[d]||h.document.body[d]:f[d]}});c.each(["Height","Width"],function(a,b){var d=b.toLowerCase(); -c.fn["inner"+b]=function(){return this[0]?parseFloat(c.css(this[0],d,"padding")):null};c.fn["outer"+b]=function(e){return this[0]?parseFloat(c.css(this[0],d,e?"margin":"border")):null};c.fn[d]=function(e){var f=this[0];if(!f)return e==null?null:this;if(c.isFunction(e))return this.each(function(h){var k=c(this);k[d](e.call(this,h,k[d]()))});return c.isWindow(f)?f.document.compatMode==="CSS1Compat"&&f.document.documentElement["client"+b]||f.document.body["client"+b]:f.nodeType===9?Math.max(f.documentElement["client"+ -b],f.body["scroll"+b],f.documentElement["scroll"+b],f.body["offset"+b],f.documentElement["offset"+b]):e===A?parseFloat(c.css(f,d)):this.css(d,typeof e==="string"?e:e+"px")}})})(window); diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/jquery.fancybox/style.css --- a/web/enmi/res/jquery.fancybox/style.css Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,65 +0,0 @@ -html, body, div, ul { - margin: 0; - padding: 0; -} - -body { - color: #262626; - background: #f4f4f4; - font: normal 12px/18px Verdana, sans-serif; -} - -#content { - width: 400px; - margin: 40px auto 0 auto; - padding: 0 60px 30px 60px; - border: solid 1px #cbcbcb; - background: #fafafa; - -moz-box-shadow: 0px 0px 10px #cbcbcb; - -webkit-box-shadow: 0px 0px 10px #cbcbcb; -} - -h1 { - margin: 30px 0 15px 0; - font-size: 30px; - font-weight: bold; - font-family: Arial; -} - -h1 span { - font-size: 50%; - letter-spacing: -0.05em; -} - -hr { - border: none; - height: 1px; line-height: 1px; - background: #E5E5E5; - margin-bottom: 20px; - padding: 0; -} - -p { - margin: 0; - padding: 7px 0; -} - -a { - outline: none; -} - -a img { - border: 1px solid #BBB; - padding: 2px; - margin: 10px 20px 10px 0; - vertical-align: top; -} - -a img.last { - margin-right: 0; -} - -ul { - margin-bottom: 24px; - padding-left: 30px; -} diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/mediaplayer/JW Player Embedding and JavaScript Guide.pdf Binary file web/enmi/res/mediaplayer/JW Player Embedding and JavaScript Guide.pdf has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/mediaplayer/jwplayer.js --- a/web/enmi/res/mediaplayer/jwplayer.js Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -jwplayer=function(a){return jwplayer.constructor(a)};jwplayer.constructor=function(a){};$jw=jwplayer;jwplayer.utils=function(){};jwplayer.utils.typeOf=function(b){var a=typeof b;if(a==="object"){if(b){if(b instanceof Array){a="array"}}else{a="null"}}return a};jwplayer.utils.extend=function(){var a=jwplayer.utils.extend["arguments"];if(a.length>1){for(var b=1;b-1)};jwplayer.utils.hasFlash=function(){return(typeof navigator.plugins!="undefined"&&typeof navigator.plugins["Shockwave Flash"]!="undefined")||(typeof window.ActiveXObject!="undefined")};(function(e){e.utils.mediaparser=function(){};var g={element:{width:"width",height:"height",id:"id","class":"className",name:"name"},media:{src:"file",preload:"preload",autoplay:"autostart",loop:"repeat",controls:"controls"},source:{src:"file",type:"type",media:"media","data-jw-width":"width","data-jw-bitrate":"bitrate"},video:{poster:"image"}};var f={};e.utils.mediaparser.parseMedia=function(i){return d(i)};function c(j,i){if(i===undefined){i=g[j]}else{e.utils.extend(i,g[j])}return i}function d(m,i){if(f[m.tagName.toLowerCase()]&&(i===undefined)){return f[m.tagName.toLowerCase()](m)}else{i=c("element",i);var n={};for(var j in i){if(j!="length"){var l=m.getAttribute(j);if(!(l===""||l===undefined||l===null)){n[i[j]]=m.getAttribute(j)}}}var k=m.style["#background-color"];if(k&&!(k=="transparent"||k=="rgba(0, 0, 0, 0)")){n.screencolor=k}return n}}function h(o,k){k=c("media",k);var m=[];if(e.utils.isIE()){var l=o.nextSibling;if(l!==undefined){while(l.tagName.toLowerCase()=="source"){m.push(a(l));l=l.nextSibling}}}else{var j=e.utils.selectors("source",o);for(var n in j){if(!isNaN(n)){m.push(a(j[n]))}}}var p=d(o,k);if(p.file!==undefined){m[0]={file:p.file}}p.levels=m;return p}function a(k,j){j=c("source",j);var i=d(k,j);i.width=i.width?i.width:0;i.bitrate=i.bitrate?i.bitrate:0;return i}function b(k,j){j=c("video",j);var i=h(k,j);return i}e.utils.mediaparser.replaceMediaElement=function(i,k){if(e.utils.isIE()){var l=false;var n=[];var m=i.nextSibling;while(m&&!l){n.push(m);if(m.nodeType==1&&m.tagName.toLowerCase()==("/")+i.tagName.toLowerCase()){l=true}m=m.nextSibling}if(l){while(n.length>0){var j=n.pop();j.parentNode.removeChild(j)}}i.outerHTML=k}};f.media=h;f.audio=h;f.source=a;f.video=b})(jwplayer);jwplayer.utils.selectors=function(a,c){if(c===undefined){c=document}a=jwplayer.utils.strings.trim(a);var b=a.charAt(0);if(b=="#"){return c.getElementById(a.substr(1))}else{if(b=="."){if(c.getElementsByClassName){return c.getElementsByClassName(a.substr(1))}else{return jwplayer.utils.selectors.getElementsByTagAndClass("*",a.substr(1))}}else{if(a.indexOf(".")>0){selectors=a.split(".");return jwplayer.utils.selectors.getElementsByTagAndClass(selectors[0],selectors[1])}else{return c.getElementsByTagName(a)}}}return null};jwplayer.utils.selectors.getElementsByTagAndClass=function(d,g,f){elements=[];if(f===undefined){f=document}var e=f.getElementsByTagName(d);for(var c=0;c0){var q=h.shift();this.callInternal(q.method,q.parameters)}};this.getItemMeta=function(){return n};this.getCurrentItem=function(){return k};this.destroy=function(){j={};h=[];if(this.container.outerHTML!=m){b.api.destroyPlayer(this.id,m)}};function l(r,t,s){var p=[];if(!t){t=0}if(!s){s=r.length-1}for(var q=t;q<=s;q++){p.push(r[q])}return p}};b.api.PlayerAPI.prototype={container:undefined,options:undefined,id:undefined,getBuffer:function(){return this.callInternal("jwGetBuffer")},getDuration:function(){return this.callInternal("jwGetDuration")},getFullscreen:function(){return this.callInternal("jwGetFullscreen")},getHeight:function(){return this.callInternal("jwGetHeight")},getLockState:function(){return this.callInternal("jwGetLockState")},getMeta:function(){return this.getItemMeta()},getMute:function(){return this.callInternal("jwGetMute")},getPlaylist:function(){var d=this.callInternal("jwGetPlaylist");for(var c=0;c=0){var c=document.getElementById(a[e].id);if(c){if(d){c.outerHTML=d}else{var g=document.createElement("div");g.setAttribute("id",c.id);c.parentNode.replaceChild(g,c)}}a.splice(e,1)}return null};b.getPlayers=function(){return a.slice(0)}})(jwplayer);var _userPlayerReady=(typeof playerReady=="function")?playerReady:undefined;playerReady=function(b){var a=jwplayer.api.playerById(b.id);if(a){a.playerReady(b)}if(_userPlayerReady){_userPlayerReady.call(this,b)}};(function(a){a.embed=function(){};a.embed.Embedder=function(c){this.constructor(c)};a.embed.defaults={width:400,height:300,players:[{type:"flash",src:"player.swf"},{type:"html5"}],components:{controlbar:{position:"over"}}};a.embed.Embedder.prototype={config:undefined,api:undefined,events:{},players:undefined,constructor:function(d){this.api=d;var c=a.utils.mediaparser.parseMedia(this.api.container);this.config=this.parseConfig(a.utils.extend({},a.embed.defaults,c,this.api.config))},embedPlayer:function(){var c=this.players[0];if(c&&c.type){switch(c.type){case"flash":if(a.utils.hasFlash()){if(this.config.file&&!this.config.provider){switch(a.utils.extension(this.config.file).toLowerCase()){case"webm":case"ogv":case"ogg":this.config.provider="video";break}}if(this.config.levels||this.config.playlist){this.api.onReady(this.loadAfterReady(this.config))}this.config.id=this.api.id;var e=a.embed.embedFlash(document.getElementById(this.api.id),c,this.config);this.api.container=e;this.api.setPlayer(e)}else{this.players.splice(0,1);return this.embedPlayer()}break;case"html5":if(a.utils.hasHTML5(this.config)){var d=a.embed.embedHTML5(document.getElementById(this.api.id),c,this.config);this.api.container=document.getElementById(this.api.id);this.api.setPlayer(d)}else{this.players.splice(0,1);return this.embedPlayer()}break}}else{this.api.container.innerHTML="

No suitable players found

"}this.setupEvents();return this.api},setupEvents:function(){for(evt in this.events){if(typeof this.api[evt]=="function"){(this.api[evt]).call(this.api,this.events[evt])}}},loadAfterReady:function(c){return function(e){if(c.playlist){this.load(c.playlist)}else{if(c.levels){var d=this.getPlaylistItem(0);if(!d){d={file:c.levels[0].file,provider:(c.provider?c.provider:"video")}}if(!d.image){d.image=c.image}d.levels=c.levels;this.load(d)}}}},parseConfig:function(c){var d=a.utils.extend({},c);if(d.events){this.events=d.events;delete d.events}if(d.players){this.players=d.players;delete d.players}if(d.plugins){if(typeof d.plugins=="object"){d=a.utils.extend(d,a.embed.parsePlugins(d.plugins))}}if(d.playlist&&typeof d.playlist==="string"&&!d["playlist.position"]){d["playlist.position"]=d.playlist;delete d.playlist}if(d.controlbar&&typeof d.controlbar==="string"&&!d["controlbar.position"]){d["controlbar.position"]=d.controlbar;delete d.controlbar}return d}};a.embed.embedFlash=function(e,i,d){var j=a.utils.extend({},d);var g=j.width;delete j.width;var c=j.height;delete j.height;delete j.levels;delete j.playlist;a.embed.parseConfigBlock(j,"components");a.embed.parseConfigBlock(j,"providers");if(a.utils.isIE()){var f='';f+='';f+='';f+='';f+='';f+='';f+="";if(e.tagName.toLowerCase()=="video"){a.utils.mediaparser.replaceMediaElement(e,f)}else{e.outerHTML=f}return document.getElementById(e.id)}else{var h=document.createElement("object");h.setAttribute("type","application/x-shockwave-flash");h.setAttribute("data",i.src);h.setAttribute("width",g);h.setAttribute("height",c);h.setAttribute("id",e.id);h.setAttribute("name",e.id);a.embed.appendAttribute(h,"allowfullscreen","true");a.embed.appendAttribute(h,"allowscriptaccess","always");a.embed.appendAttribute(h,"wmode","opaque");a.embed.appendAttribute(h,"flashvars",a.embed.jsonToFlashvars(j));e.parentNode.replaceChild(h,e);return h}};a.embed.embedHTML5=function(d,f,e){if(a.html5){d.innerHTML="";var c=a.utils.extend({screencolor:"0x000000"},e);a.embed.parseConfigBlock(c,"components");if(c.levels&&!c.sources){c.sources=e.levels}if(c.skin&&c.skin.toLowerCase().indexOf(".zip")>0){c.skin=c.skin.replace(/\.zip/i,".xml")}return new (a.html5(d)).setup(c)}else{return null}};a.embed.appendAttribute=function(d,c,e){var f=document.createElement("param");f.setAttribute("name",c);f.setAttribute("value",e);d.appendChild(f)};a.embed.jsonToFlashvars=function(d){var c="";for(key in d){c+=key+"="+escape(d[key])+"&"}return c.substring(0,c.length-1)};a.embed.parsePlugins=function(e){if(!e){return{}}var g={},f=[];for(plugin in e){var d=plugin.indexOf("-")>0?plugin.substring(0,plugin.indexOf("-")):plugin;var c=e[plugin];f.push(plugin);for(param in c){g[d+"."+param]=c[param]}}g.plugins=f.join(",");return g};a.embed.parseConfigBlock=function(f,e){if(f[e]){var h=f[e];for(var d in h){var c=h[d];if(typeof c=="string"){if(!f[d]){f[d]=c}}else{for(var g in c){if(!f[d+"."+g]){f[d+"."+g]=c[g]}}}}delete f[e]}};a.api.PlayerAPI.prototype.setup=function(d,e){if(d&&d.flashplayer&&!d.players){d.players=[{type:"flash",src:d.flashplayer},{type:"html5"}];delete d.flashplayer}if(e&&!d.players){if(typeof e=="string"){d.players=[{type:"flash",src:e}]}else{if(e instanceof Array){d.players=e}else{if(typeof e=="object"&&e.type){d.players=[e]}}}}var c=this.id;this.remove();var f=a(c);f.config=d;return(new a.embed.Embedder(f)).embedPlayer()};function b(){if(!document.body){return setTimeout(b,15)}var c=a.utils.selectors.getElementsByTagAndClass("video","jwplayer");for(var d=0;d0&&(d<0||(d>f)))}b.html5.utils.mapEmpty=function(d){for(var e in d){return false}return true};b.html5.utils.mapLength=function(e){var d=0;for(var f in e){d++}return d};b.html5.utils.log=function(e,d){if(typeof console!="undefined"&&typeof console.log!="undefined"){if(d){console.log(e,d)}else{console.log(e)}}};b.html5.utils.css=function(e,h,d){if(e!==undefined){for(var f in h){try{if(typeof h[f]==="undefined"){continue}else{if(typeof h[f]=="number"&&!(f=="zIndex"||f=="opacity")){if(isNaN(h[f])){continue}if(f.match(/color/i)){h[f]="#"+c(h[f].toString(16),6)}else{h[f]=h[f]+"px"}}}e.style[f]=h[f]}catch(g){}}}};function c(d,e){while(d.length-1};b.html5.utils.getYouTubeId=function(d){d.indexOf("youtube.com">0)}})(jwplayer);(function(b){var c=b.html5.utils.css;b.html5.view=function(p,n,e){var s=p;var k=n;var v=e;var u;var f;var z;var q;var A;var m;function x(){u=document.createElement("div");u.id=k.id;u.className=k.className;k.id=u.id+"_video";c(u,{position:"relative",height:v.height,width:v.width,padding:0,backgroundColor:C(),zIndex:0});function C(){if(s.skin.getComponentSettings("display")&&s.skin.getComponentSettings("display").backgroundcolor){return s.skin.getComponentSettings("display").backgroundcolor}return parseInt("000000",16)}c(k,{position:"absolute",width:v.width,height:v.height,top:0,left:0,zIndex:1,margin:"auto",display:"block"});b.utils.wrap(k,u);q=document.createElement("div");q.id=u.id+"_displayarea";u.appendChild(q)}function i(){for(var C in v.plugins.order){var D=v.plugins.order[C];if(v.plugins.object[D].getDisplayElement!==undefined){v.plugins.object[D].height=B(v.plugins.object[D].getDisplayElement().style.height);v.plugins.object[D].width=B(v.plugins.object[D].getDisplayElement().style.width);v.plugins.config[D].currentPosition=v.plugins.config[D].position}}t()}function t(D){if(v.getMedia()!==undefined){for(var C in v.plugins.order){var E=v.plugins.order[C];if(v.plugins.object[E].getDisplayElement!==undefined){if(v.config.chromeless||v.getMedia().hasChrome()){v.plugins.config[E].currentPosition=b.html5.view.positions.NONE}else{v.plugins.config[E].currentPosition=v.plugins.config[E].position}}}}h(v.width,v.height)}function B(C){if(typeof C=="number"){return C}if(C===""){return 0}return parseInt(C.replace("px",""),10)}function o(){m=setInterval(function(){if(u.width&&u.height&&(v.width!==B(u.width)||v.height!==B(u.height))){h(B(u.width),B(u.height))}else{var C=u.getBoundingClientRect();if(v.width!==C.width||v.height!==C.height){h(C.width,C.height)}delete C}},100)}this.setup=function(C){k=C;x();i();s.jwAddEventListener(b.api.events.JWPLAYER_MEDIA_LOADED,t);o();var D;if(window.onresize!==null){D=window.onresize}window.onresize=function(E){if(D!==undefined){try{D(E)}catch(F){}}if(s.jwGetFullscreen()){v.width=window.innerWidth;v.height=window.innerHeight}h(v.width,v.height)}};function g(C){switch(C.keyCode){case 27:if(s.jwGetFullscreen()){s.jwSetFullscreen(false)}break;case 32:if(s.jwGetState()!=b.api.events.state.IDLE&&s.jwGetState()!=b.api.events.state.PAUSED){s.jwPause()}else{s.jwPlay()}break}}function h(F,C){if(u.style.display=="none"){return}var E=[].concat(v.plugins.order);E.reverse();A=E.length+2;if(!v.fullscreen){v.width=F;v.height=C;f=F;z=C;c(q,{top:0,bottom:0,left:0,right:0,width:F,height:C});c(u,{height:z,width:f});var D=l(r,E);if(D.length>0){A+=D.length;l(j,D,true)}w()}else{l(y,E,true)}}function l(H,E,F){var D=[];for(var C in E){var I=E[C];if(v.plugins.object[I].getDisplayElement!==undefined){if(v.plugins.config[I].currentPosition.toUpperCase()!==b.html5.view.positions.NONE){var G=H(I,A--);if(!G){D.push(I)}else{v.plugins.object[I].resize(G.width,G.height);if(F){delete G.width;delete G.height}c(v.plugins.object[I].getDisplayElement(),G)}}else{c(v.plugins.object[I].getDisplayElement(),{display:"none"})}}}return D}function r(D,E){if(v.plugins.object[D].getDisplayElement!==undefined){if(a(v.plugins.config[D].position)){if(v.plugins.object[D].getDisplayElement().parentNode===null){u.appendChild(v.plugins.object[D].getDisplayElement())}var C=d(D);C.zIndex=E;return C}}return false}function j(C,D){if(v.plugins.object[C].getDisplayElement().parentNode===null){q.appendChild(v.plugins.object[C].getDisplayElement())}return{position:"absolute",width:(v.width-B(q.style.left)-B(q.style.right)),height:(v.height-B(q.style.top)-B(q.style.bottom)),zIndex:D}}function y(C,D){return{position:"fixed",width:v.width,height:v.height,zIndex:D}}function w(){q.style.position="absolute";var C={position:"absolute",width:B(q.style.width),height:B(q.style.height),top:B(q.style.top),left:B(q.style.left)};c(v.getMedia().getDisplayElement(),C)}function d(D){var E={position:"absolute",margin:0,padding:0,top:null};var C=v.plugins.config[D].currentPosition.toLowerCase();switch(C.toUpperCase()){case b.html5.view.positions.TOP:E.top=B(q.style.top);E.left=B(q.style.left);E.width=f-B(q.style.left)-B(q.style.right);E.height=v.plugins.object[D].height;q.style[C]=B(q.style[C])+v.plugins.object[D].height+"px";q.style.height=B(q.style.height)-E.height+"px";break;case b.html5.view.positions.RIGHT:E.top=B(q.style.top);E.right=B(q.style.right);E.width=E.width=v.plugins.object[D].width;E.height=z-B(q.style.top)-B(q.style.bottom);q.style[C]=B(q.style[C])+v.plugins.object[D].width+"px";q.style.width=B(q.style.width)-E.width+"px";break;case b.html5.view.positions.BOTTOM:E.bottom=B(q.style.bottom);E.left=B(q.style.left);E.width=f-B(q.style.left)-B(q.style.right);E.height=v.plugins.object[D].height;q.style[C]=B(q.style[C])+v.plugins.object[D].height+"px";q.style.height=B(q.style.height)-E.height+"px";break;case b.html5.view.positions.LEFT:E.top=B(q.style.top);E.left=B(q.style.left);E.width=v.plugins.object[D].width;E.height=z-B(q.style.top)-B(q.style.bottom);q.style[C]=B(q.style[C])+v.plugins.object[D].width+"px";q.style.width=B(q.style.width)-E.width+"px";break;default:break}return E}this.resize=h;this.fullscreen=function(D){if(navigator.vendor.indexOf("Apple")===0){if(v.getMedia().getDisplayElement().webkitSupportsFullscreen){if(D){v.fullscreen=false;v.getMedia().getDisplayElement().webkitEnterFullscreen()}else{v.getMedia().getDisplayElement().webkitExitFullscreen()}}else{v.fullscreen=false}}else{if(D){document.onkeydown=g;clearInterval(m);v.width=window.innerWidth;v.height=window.innerHeight;var C={position:"fixed",width:"100%",height:"100%",top:0,left:0,zIndex:2147483000};c(u,C);C.zIndex=1;c(v.getMedia().getDisplayElement(),C);C.zIndex=2;c(q,C)}else{document.onkeydown="";o();v.width=f;v.height=z;c(u,{position:"relative",height:v.height,width:v.width,zIndex:0})}h(v.width,v.height)}}};function a(d){return([b.html5.view.positions.TOP,b.html5.view.positions.RIGHT,b.html5.view.positions.BOTTOM,b.html5.view.positions.LEFT].indexOf(d.toUpperCase())>-1)}b.html5.view.positions={TOP:"TOP",RIGHT:"RIGHT",BOTTOM:"BOTTOM",LEFT:"LEFT",OVER:"OVER",NONE:"NONE"}})(jwplayer);(function(a){var b={backgroundcolor:"",margin:10,font:"Arial,sans-serif",fontsize:10,fontcolor:parseInt("000000",16),fontstyle:"normal",fontweight:"bold",buttoncolor:parseInt("ffffff",16),position:a.html5.view.positions.BOTTOM,idlehide:false,layout:{left:{position:"left",elements:[{name:"play",type:"button"},{name:"divider",type:"divider"},{name:"prev",type:"button"},{name:"divider",type:"divider"},{name:"next",type:"button"},{name:"divider",type:"divider"},{name:"elapsed",type:"text"}]},center:{position:"center",elements:[{name:"time",type:"slider"}]},right:{position:"right",elements:[{name:"duration",type:"text"},{name:"blank",type:"button"},{name:"divider",type:"divider"},{name:"mute",type:"button"},{name:"volume",type:"slider"},{name:"divider",type:"divider"},{name:"fullscreen",type:"button"}]}}};_css=a.html5.utils.css;_hide=function(c){_css(c,{display:"none"})};_show=function(c){_css(c,{display:"block"})};a.html5.controlbar=function(j,L){var i=j;var A=a.utils.extend({},b,i.skin.getComponentSettings("controlbar"),L);if(a.html5.utils.mapLength(i.skin.getComponentLayout("controlbar"))>0){A.layout=i.skin.getComponentLayout("controlbar")}var P;var I;var O;var B;var t="none";var f;var h;var Q;var e;var d;var w;var s;var J={};var n=false;var c={};function H(){O=0;B=0;I=0;if(!n){var V={height:i.skin.getSkinElement("controlbar","background").height,backgroundColor:A.backgroundcolor};P=document.createElement("div");P.id=i.id+"_jwplayer_controlbar";_css(P,V)}v("capLeft","left",false,P);var W={position:"absolute",height:i.skin.getSkinElement("controlbar","background").height,background:" url("+i.skin.getSkinElement("controlbar","background").src+") repeat-x center left",left:i.skin.getSkinElement("controlbar","capLeft").width};N("elements",P,W);v("capRight","right",false,P)}this.getDisplayElement=function(){return P};this.resize=function(X,V){a.html5.utils.cancelAnimation(P);document.getElementById(i.id).onmousemove=x;d=X;w=V;x();var W=u();D({id:i.id,duration:Q,position:h});r({id:i.id,bufferPercent:e});return W};function o(){var W=["timeSlider","volumeSlider","timeSliderRail","volumeSliderRail"];for(var X in W){var V=W[X];if(typeof J[V]!="undefined"){c[V]=J[V].getBoundingClientRect()}}}function x(){a.html5.utils.cancelAnimation(P);if(g()){a.html5.utils.fadeTo(P,1,0,1,0)}else{a.html5.utils.fadeTo(P,0,0.1,1,2)}}function g(){if(i.jwGetState()==a.api.events.state.IDLE||i.jwGetState()==a.api.events.state.PAUSED){if(A.idlehide){return false}return true}if(i.jwGetFullscreen()){return false}if(A.position.toUpperCase()==a.html5.view.positions.OVER){return false}return true}function N(Y,X,W){var V;if(!n){V=document.createElement("div");J[Y]=V;V.id=P.id+"_"+Y;X.appendChild(V)}else{V=document.getElementById(P.id+"_"+Y)}if(W!==undefined){_css(V,W)}return V}function G(){U(A.layout.left);U(A.layout.right,-1);U(A.layout.center)}function U(Y,V){var Z=Y.position=="right"?"right":"left";var X=a.utils.extend([],Y.elements);if(V!==undefined){X.reverse()}for(var W=0;W0||Y.indexOf("divider")===0)&&!(Y.indexOf("divider")===0&&s.indexOf("divider")===0)){s=Y;var X={height:i.skin.getSkinElement("controlbar","background").height,position:"absolute",display:"block",top:0};if((Y.indexOf("next")===0||Y.indexOf("prev")===0)&&i.jwGetPlaylist().length<2){ab=false;X.display="none"}var aa;if(Y.indexOf("Text")>0){Y.innerhtml="00:00";X.font=A.fontsize+"px/"+(i.skin.getSkinElement("controlbar","background").height+1)+"px "+A.font;X.color=A.fontcolor;X.textAlign="center";X.fontWeight=A.fontweight;X.fontStyle=A.fontstyle;X.cursor="default";aa=14+3*A.fontsize}else{if(Y.indexOf("divider")===0){X.background="url("+i.skin.getSkinElement("controlbar","divider").src+") repeat-x center left";aa=i.skin.getSkinElement("controlbar","divider").width}else{X.background="url("+i.skin.getSkinElement("controlbar",Y).src+") repeat-x center left";aa=i.skin.getSkinElement("controlbar",Y).width}}if(ac=="left"){X.left=V===undefined?O:V;if(ab){O+=aa}}else{if(ac=="right"){X.right=V===undefined?B:V;if(ab){B+=aa}}}if(Z===undefined){Z=J.elements}X.width=aa;if(n){_css(J[Y],X)}else{var W=N(Y,Z,X);if(i.skin.getSkinElement("controlbar",Y+"Over")!==undefined){W.onmouseover=function(ad){W.style.backgroundImage=["url(",i.skin.getSkinElement("controlbar",Y+"Over").src,")"].join("")};W.onmouseout=function(ad){W.style.backgroundImage=["url(",i.skin.getSkinElement("controlbar",Y).src,")"].join("")}}}}}function C(){i.jwAddEventListener(a.api.events.JWPLAYER_PLAYLIST_LOADED,y);i.jwAddEventListener(a.api.events.JWPLAYER_MEDIA_BUFFER,r);i.jwAddEventListener(a.api.events.JWPLAYER_PLAYER_STATE,p);i.jwAddEventListener(a.api.events.JWPLAYER_MEDIA_TIME,D);i.jwAddEventListener(a.api.events.JWPLAYER_MEDIA_MUTE,T);i.jwAddEventListener(a.api.events.JWPLAYER_MEDIA_VOLUME,k);i.jwAddEventListener(a.api.events.JWPLAYER_MEDIA_COMPLETE,F)}function y(){H();G();u();R()}function R(){D({id:i.id,duration:i.jwGetDuration(),position:0});r({id:i.id,bufferProgress:0});T({id:i.id,mute:i.jwGetMute()});p({id:i.id,newstate:a.api.events.state.IDLE});k({id:i.id,volume:i.jwGetVolume()})}function K(X,Y,W){if(n){return}if(i.skin.getSkinElement("controlbar",X)!==undefined){var V=J[X];if(V!==null){_css(V,{cursor:"pointer"});if(Y=="fullscreen"){V.onmouseup=function(Z){Z.stopPropagation();i.jwSetFullscreen(!i.jwGetFullscreen())}}else{V.onmouseup=function(Z){Z.stopPropagation();if(W!==null){i[Y](W)}else{i[Y]()}}}}}}function M(V){if(n){return}var W=J[V+"Slider"];_css(J.elements,{cursor:"pointer"});_css(W,{cursor:"pointer"});W.onmousedown=function(X){t=V};W.onmouseup=function(X){X.stopPropagation();S(X.pageX)};W.onmousemove=function(X){if(t=="time"){f=true;var Y=X.pageX-c[V+"Slider"].left-window.pageXOffset;_css(J.timeSliderThumb,{left:Y})}}}function S(W){f=false;var V;if(t=="time"){V=W-c.timeSliderRail.left+window.pageXOffset;var Y=V/c.timeSliderRail.width*Q;if(Y<0){Y=0}else{if(Y>Q){Y=Q-3}}i.jwSeek(Y);if(i.jwGetState()!=a.api.events.state.PLAYING){i.jwPlay()}}else{if(t=="volume"){V=W-c.volumeSliderRail.left-window.pageXOffset;var X=Math.round(V/c.volumeSliderRail.width*100);if(X<0){X=0}else{if(X>100){X=100}}if(i.jwGetMute()){i.jwSetMute(false)}i.jwSetVolume(X)}}t="none"}function r(W){if(W.bufferPercent!==null){e=W.bufferPercent}var X=c.timeSliderRail.width;var V=isNaN(Math.round(X*e/100))?0:Math.round(X*e/100);_css(J.timeSliderBuffer,{width:V})}function T(V){if(V.mute){_hide(J.muteButton);_show(J.unmuteButton);_hide(J.volumeSliderProgress)}else{_show(J.muteButton);_hide(J.unmuteButton);_show(J.volumeSliderProgress)}}function p(V){if(V.newstate==a.api.events.state.BUFFERING||V.newstate==a.api.events.state.PLAYING){_show(J.pauseButton);_hide(J.playButton)}else{_hide(J.pauseButton);_show(J.playButton)}x();if(V.newstate==a.api.events.state.IDLE){_hide(J.timeSliderBuffer);_hide(J.timeSliderProgress);_hide(J.timeSliderThumb);D({id:i.id,duration:i.jwGetDuration(),position:0})}else{_show(J.timeSliderBuffer);if(V.newstate!=a.api.events.state.BUFFERING){_show(J.timeSliderProgress);_show(J.timeSliderThumb)}}}function F(V){D(a.utils.extend(V,{position:0,duration:Q}))}function D(Y){if(Y.position!==null){h=Y.position}if(Y.duration!==null){Q=Y.duration}var W=(h===Q===0)?0:h/Q;var V=isNaN(Math.round(c.timeSliderRail.width*W))?0:Math.round(c.timeSliderRail.width*W);var X=V;J.timeSliderProgress.style.width=V+"px";if(!f){if(J.timeSliderThumb){J.timeSliderThumb.style.left=X+"px"}}if(J.durationText){J.durationText.innerHTML=m(Q)}if(J.elapsedText){J.elapsedText.innerHTML=m(h)}}function m(V){str="00:00";if(V>0){str=Math.floor(V/60)<10?"0"+Math.floor(V/60)+":":Math.floor(V/60)+":";str+=Math.floor(V%60)<10?"0"+Math.floor(V%60):Math.floor(V%60)}return str}function l(){var Y,W;var X=document.getElementById(P.id+"_elements").childNodes;for(var V in document.getElementById(P.id+"_elements").childNodes){if(isNaN(parseInt(V,10))){continue}if(X[V].id.indexOf(P.id+"_divider")===0&&W.id.indexOf(P.id+"_divider")===0){X[V].style.display="none"}else{if(X[V].id.indexOf(P.id+"_divider")===0&&Y.style.display!="none"){X[V].style.display="block"}}if(X[V].style.display!="none"){W=X[V]}Y=X[V]}}function u(){l();if(i.jwGetFullscreen()){_show(J.normalscreenButton);_hide(J.fullscreenButton)}else{_hide(J.normalscreenButton);_show(J.fullscreenButton)}var W={width:d};var V={};if(A.position.toUpperCase()==a.html5.view.positions.OVER||i.jwGetFullscreen()){W.left=A.margin;W.width-=2*A.margin;W.top=w-i.skin.getSkinElement("controlbar","background").height-A.margin;W.height=i.skin.getSkinElement("controlbar","background").height}else{W.left=0}V.left=i.skin.getSkinElement("controlbar","capLeft").width;V.width=W.width-i.skin.getSkinElement("controlbar","capLeft").width-i.skin.getSkinElement("controlbar","capRight").width;var X=i.skin.getSkinElement("controlbar","timeSliderCapLeft")===undefined?0:i.skin.getSkinElement("controlbar","timeSliderCapLeft").width;_css(J.timeSliderRail,{width:(V.width-O-B),left:X});if(J.timeSliderCapRight!==undefined){_css(J.timeSliderCapRight,{left:X+(V.width-O-B)})}_css(P,W);_css(J.elements,V);o();return W}function k(Z){if(J.volumeSliderRail!==undefined){var X=isNaN(Z.volume/100)?1:Z.volume/100;var Y=parseInt(J.volumeSliderRail.style.width.replace("px",""),10);var V=isNaN(Math.round(Y*X))?0:Math.round(Y*X);var aa=parseInt(J.volumeSliderRail.style.right.replace("px",""),10);var W=i.skin.getSkinElement("controlbar","volumeSliderCapLeft")===undefined?0:i.skin.getSkinElement("controlbar","volumeSliderCapLeft").width;_css(J.volumeSliderProgress,{width:V,left:W});if(J.volumeSliderCapLeft!==undefined){_css(J.volumeSliderCapLeft,{left:0})}}}function q(){H();G();o();n=true;C();R();P.style.opacity=A.idlehide?0:1}q();return this}})(jwplayer);(function(b){var a=["width","height","state","playlist","item","position","buffer","duration","volume","mute","fullscreen"];b.html5.controller=function(s,q,d,p){var v=s;var x=d;var c=p;var j=q;var z=true;var t=(x.config.debug!==undefined)&&(x.config.debug.toString().toLowerCase()=="console");var h=new b.html5.eventdispatcher(j.id,t);b.utils.extend(this,h);function l(C){h.sendEvent(C.type,C)}x.addGlobalListener(l);function o(){try{if(x.playlist[0].levels[0].file.length>0){if(z||x.state==b.api.events.state.IDLE){x.setActiveMediaProvider(x.playlist[x.item]);x.addEventListener(b.api.events.JWPLAYER_MEDIA_BUFFER_FULL,function(){x.getMedia().play()});if(x.config.repeat){x.addEventListener(b.api.events.JWPLAYER_MEDIA_COMPLETE,function(D){setTimeout(m,25)})}x.getMedia().load(x.playlist[x.item]);z=false}else{if(x.state==b.api.events.state.PAUSED){x.getMedia().play()}}}return true}catch(C){h.sendEvent(b.api.events.JWPLAYER_ERROR,C)}return false}function A(){try{if(x.playlist[0].levels[0].file.length>0){switch(x.state){case b.api.events.state.PLAYING:case b.api.events.state.BUFFERING:x.getMedia().pause();break}}return true}catch(C){h.sendEvent(b.api.events.JWPLAYER_ERROR,C)}return false}function w(C){try{if(x.playlist[0].levels[0].file.length>0){switch(x.state){case b.api.events.state.PLAYING:case b.api.events.state.PAUSED:case b.api.events.state.BUFFERING:x.getMedia().seek(C);break}}return true}catch(D){h.sendEvent(b.api.events.JWPLAYER_ERROR,D)}return false}function i(){try{if(x.playlist[0].levels[0].file.length>0&&x.state!=b.api.events.state.IDLE){x.getMedia().stop()}return true}catch(C){h.sendEvent(b.api.events.JWPLAYER_ERROR,C)}return false}function f(){try{if(x.playlist[0].levels[0].file.length>0){if(x.config.shuffle){n(r())}else{if(x.item+1==x.playlist.length){n(0)}else{n(x.item+1)}}}if(x.state!=b.api.events.state.PLAYING&&x.state!=b.api.events.state.BUFFERING){o()}return true}catch(C){h.sendEvent(b.api.events.JWPLAYER_ERROR,C)}return false}function e(){try{if(x.playlist[0].levels[0].file.length>0){if(x.config.shuffle){n(r())}else{if(x.item===0){n(x.playlist.length-1)}else{n(x.item-1)}}}if(x.state!=b.api.events.state.PLAYING&&x.state!=b.api.events.state.BUFFERING){o()}return true}catch(C){h.sendEvent(b.api.events.JWPLAYER_ERROR,C)}return false}function r(){var C=null;if(x.playlist.length>1){while(C===null){C=Math.floor(Math.random()*x.playlist.length);if(C==x.item){C=null}}}else{C=0}return C}function n(D){x.resetEventListeners();x.addGlobalListener(l);try{if(x.playlist[0].levels[0].file.length>0){var E=x.state;if(E!==b.api.events.state.IDLE){i()}x.item=D;z=true;h.sendEvent(b.api.events.JWPLAYER_PLAYLIST_ITEM,{item:D});if(E==b.api.events.state.PLAYING||E==b.api.events.state.BUFFERING){o()}}return true}catch(C){h.sendEvent(b.api.events.JWPLAYER_ERROR,C)}return false}function y(D){try{switch(typeof(D)){case"number":x.getMedia().volume(D);break;case"string":x.getMedia().volume(parseInt(D,10));break}return true}catch(C){h.sendEvent(b.api.events.JWPLAYER_ERROR,C)}return false}function k(D){try{x.getMedia().mute(D);return true}catch(C){h.sendEvent(b.api.events.JWPLAYER_ERROR,C)}return false}function g(D,C){try{x.width=D;x.height=C;c.resize(D,C);return true}catch(E){h.sendEvent(b.api.events.JWPLAYER_ERROR,E)}return false}function u(D){try{x.fullscreen=D;c.fullscreen(D);return true}catch(C){h.sendEvent(b.api.events.JWPLAYER_ERROR,C)}return false}function B(C){try{i();x.loadPlaylist(C);z=true;return true}catch(D){h.sendEvent(b.api.events.JWPLAYER_ERROR,D)}return false}b.html5.controller.repeatoptions={LIST:"LIST",ALWAYS:"ALWAYS",SINGLE:"SINGLE",NONE:"NONE"};function m(){x.resetEventListeners();x.addGlobalListener(l);switch(x.config.repeat.toUpperCase()){case b.html5.controller.repeatoptions.SINGLE:o();break;case b.html5.controller.repeatoptions.ALWAYS:if(x.item==x.playlist.length-1&&!x.config.shuffle){n(0);o()}else{f()}break;case b.html5.controller.repeatoptions.LIST:if(x.item==x.playlist.length-1&&!x.config.shuffle){n(0)}else{f()}break}}this.play=o;this.pause=A;this.seek=w;this.stop=i;this.next=f;this.prev=e;this.item=n;this.setVolume=y;this.setMute=k;this.resize=g;this.setFullscreen=u;this.load=B}})(jwplayer);(function(a){a.html5.defaultSkin=function(){this.text='';this.xml=null;if(window.DOMParser){parser=new DOMParser();this.xml=parser.parseFromString(this.text,"text/xml")}else{this.xml=new ActiveXObject("Microsoft.XMLDOM");this.xml.async="false";this.xml.loadXML(this.text)}return this}})(jwplayer);(function(a){_css=a.html5.utils.css;_hide=function(b){_css(b,{display:"none"})};_show=function(b){_css(b,{display:"block"})};a.html5.display=function(k,s){var q=k;var d={};var f;var t;var r;var l;var g;var j=q.skin.getComponentSettings("display").bufferrotation===undefined?15:parseInt(q.skin.getComponentSettings("display").bufferrotation,10);var e=q.skin.getComponentSettings("display").bufferinterval===undefined?100:parseInt(q.skin.getComponentSettings("display").bufferinterval,10);var c={display:{style:{cursor:"pointer",top:0,left:0},click:p},display_icon:{style:{cursor:"pointer",position:"absolute",top:((q.skin.getSkinElement("display","background").height-q.skin.getSkinElement("display","playIcon").height)/2),left:((q.skin.getSkinElement("display","background").width-q.skin.getSkinElement("display","playIcon").width)/2),border:0,margin:0,padding:0,zIndex:3}},display_iconBackground:{style:{cursor:"pointer",position:"absolute",top:((t-q.skin.getSkinElement("display","background").height)/2),left:((f-q.skin.getSkinElement("display","background").width)/2),border:0,backgroundImage:(["url(",q.skin.getSkinElement("display","background").src,")"]).join(""),width:q.skin.getSkinElement("display","background").width,height:q.skin.getSkinElement("display","background").height,margin:0,padding:0,zIndex:2}},display_image:{style:{display:"none",width:f,height:t,position:"absolute",cursor:"pointer",left:0,top:0,margin:0,padding:0,textDecoration:"none",zIndex:1}},display_text:{style:{zIndex:4,position:"relative",opacity:0.8,backgroundColor:parseInt("000000",16),color:parseInt("ffffff",16),textAlign:"center",fontFamily:"Arial,sans-serif",padding:"0 5px",fontSize:14}}};q.jwAddEventListener(a.api.events.JWPLAYER_PLAYER_STATE,i);q.jwAddEventListener(a.api.events.JWPLAYER_MEDIA_MUTE,i);q.jwAddEventListener(a.api.events.JWPLAYER_PLAYLIST_ITEM,i);q.jwAddEventListener(a.api.events.JWPLAYER_ERROR,o);u();function u(){d.display=n("div","display");d.display_text=n("div","display_text");d.display.appendChild(d.display_text);d.display_image=n("img","display_image");d.display_image.onerror=function(v){_hide(d.display_image)};d.display_icon=n("div","display_icon");d.display_iconBackground=n("div","display_iconBackground");d.display.appendChild(d.display_image);d.display_iconBackground.appendChild(d.display_icon);d.display.appendChild(d.display_iconBackground);b()}this.getDisplayElement=function(){return d.display};this.resize=function(w,v){f=w;t=v;_css(d.display,{width:w,height:v});_css(d.display_text,{width:(w-10),top:((t-d.display_text.getBoundingClientRect().height)/2)});_css(d.display_image,{width:w,height:v});_css(d.display_iconBackground,{top:((t-q.skin.getSkinElement("display","background").height)/2),left:((f-q.skin.getSkinElement("display","background").width)/2)});i({})};function n(v,x){var w=document.createElement(v);w.id=q.id+"_jwplayer_"+x;_css(w,c[x].style);return w}function b(){for(var v in d){if(c[v].click!==undefined){d[v].onclick=c[v].click}}}function p(v){if(typeof v.preventDefault!="undefined"){v.preventDefault()}else{v.returnValue=false}if(q.jwGetState()!=a.api.events.state.PLAYING){q.jwPlay()}else{q.jwPause()}}function h(v){if(g){return}_show(d.display_iconBackground);d.display_icon.style.backgroundImage=(["url(",q.skin.getSkinElement("display",v).src,")"]).join("");_css(d.display_icon,{display:"block",width:q.skin.getSkinElement("display",v).width,height:q.skin.getSkinElement("display",v).height,top:(q.skin.getSkinElement("display","background").height-q.skin.getSkinElement("display",v).height)/2,left:(q.skin.getSkinElement("display","background").width-q.skin.getSkinElement("display",v).width)/2});if(q.skin.getSkinElement("display",v+"Over")!==undefined){d.display_icon.onmouseover=function(w){d.display_icon.style.backgroundImage=["url(",q.skin.getSkinElement("display",v+"Over").src,")"].join("")};d.display_icon.onmouseout=function(w){d.display_icon.style.backgroundImage=["url(",q.skin.getSkinElement("display",v).src,")"].join("")}}else{d.display_icon.onmouseover=null;d.display_icon.onmouseout=null}}function m(){_hide(d.display_icon);_hide(d.display_iconBackground)}function o(v){g=true;m();d.display_text.innerHTML=v.error;_show(d.display_text);d.display_text.style.top=((t-d.display_text.getBoundingClientRect().height)/2)+"px"}function i(v){if((v.type==a.api.events.JWPLAYER_PLAYER_STATE||v.type==a.api.events.JWPLAYER_PLAYLIST_ITEM)&&g){g=false;_hide(d.display_text)}if(l!==undefined){clearInterval(l);l=null;a.html5.utils.animations.rotate(d.display_icon,0)}switch(q.jwGetState()){case a.api.events.state.BUFFERING:h("bufferIcon");r=0;l=setInterval(function(){r+=j;a.html5.utils.animations.rotate(d.display_icon,r%360)},e);h("bufferIcon");break;case a.api.events.state.PAUSED:_css(d.display_image,{background:"transparent no-repeat center center"});h("playIcon");break;case a.api.events.state.IDLE:if(q.jwGetPlaylist()[q.jwGetItem()].image){_css(d.display_image,{display:"block"});d.display_image.src=a.html5.utils.getAbsolutePath(q.jwGetPlaylist()[q.jwGetItem()].image)}else{_css(d.display_image,{display:"none"});delete d.display_image.src}h("playIcon");break;default:if(q.jwGetMute()){_css(d.display_image,{display:"none"});delete d.display_image.src;h("muteIcon")}else{_css(d.display_image,{display:"none"});delete d.display_image.src;_hide(d.display_iconBackground);_hide(d.display_icon)}break}}return this}})(jwplayer);(function(jwplayer){jwplayer.html5.eventdispatcher=function(id,debug){var _id=id;var _debug=debug;var _listeners;var _globallisteners;this.resetEventListeners=function(){_listeners={};_globallisteners=[]};this.resetEventListeners();this.addEventListener=function(type,listener,count){try{if(_listeners[type]===undefined){_listeners[type]=[]}if(typeof(listener)=="string"){eval("listener = "+listener)}_listeners[type].push({listener:listener,count:count})}catch(err){jwplayer.html5.utils.log("error",err)}return false};this.removeEventListener=function(type,listener){try{for(var lisenterIndex in _listeners[type]){if(_listeners[type][lisenterIndex].toString()==listener.toString()){_listeners[type].slice(lisenterIndex,lisenterIndex+1);break}}}catch(err){jwplayer.html5.utils.log("error",err)}return false};this.addGlobalListener=function(listener,count){try{if(typeof(listener)=="string"){eval("listener = "+listener)}_globallisteners.push({listener:listener,count:count})}catch(err){jwplayer.html5.utils.log("error",err)}return false};this.removeGlobalListener=function(listener){try{for(var lisenterIndex in _globallisteners){if(_globallisteners[lisenterIndex].toString()==listener.toString()){_globallisteners.slice(lisenterIndex,lisenterIndex+1);break}}}catch(err){jwplayer.html5.utils.log("error",err)}return false};this.sendEvent=function(type,data){if(data===undefined){data={}}jwplayer.utils.extend(data,{id:_id,version:jwplayer.html5.version,type:type});if(_debug){jwplayer.html5.utils.log(type,data)}for(var listenerIndex in _listeners[type]){try{_listeners[type][listenerIndex].listener(data)}catch(err){jwplayer.html5.utils.log("There was an error while handling a listener",_listeners[type][listenerIndex].listener,err)}if(_listeners[type][listenerIndex].count===1){delete _listeners[type][listenerIndex]}else{if(_listeners[type][listenerIndex].count>0){_listeners[type][listenerIndex].count=_listeners[type][listenerIndex].count-1}}}for(var globalListenerIndex in _globallisteners){try{_globallisteners[globalListenerIndex].listener(data)}catch(err){jwplayer.html5.utils.log("There was an error while handling a listener",_globallisteners[globalListenerIndex].listener,err)}if(_globallisteners[globalListenerIndex].count===1){delete _globallisteners[globalListenerIndex]}else{if(_globallisteners[globalListenerIndex].count>0){_globallisteners[globalListenerIndex].count=_globallisteners[globalListenerIndex].count-1}}}}}})(jwplayer);(function(a){a.html5.extensionmap={"3gp":"video/3gpp","3gpp":"video/3gpp","3g2":"video/3gpp2","3gpp2":"video/3gpp2",flv:"video/x-flv",f4a:"audio/mp4",f4b:"audio/mp4",f4p:"video/mp4",f4v:"video/mp4",mov:"video/quicktime",m4a:"audio/mp4",m4b:"audio/mp4",m4p:"audio/mp4",m4v:"video/mp4",mkv:"video/x-matroska",mp4:"video/mp4",sdp:"application/sdp",vp6:"video/x-vp6",aac:"audio/aac",mp3:"audio/mp3",ogg:"audio/ogg",ogv:"video/ogg",webm:"video/webm"}})(jwplayer);(function(a){var b={prefix:"http://l.longtailvideo.com/html5/",file:"logo.png",link:"http://www.longtailvideo.com/players/jw-flv-player/",margin:8,out:0.5,over:1,timeout:3,hide:true,position:"bottom-left"};_css=a.html5.utils.css;a.html5.logo=function(g,h){var l=g;var j;if(b.prefix){var i=g.version.split(/\W/).splice(0,2).join("/");if(b.prefix.indexOf(i)<0){b.prefix+=i+"/"}}if(h.position==a.html5.view.positions.OVER){h.position=b.position}var f=a.utils.extend({},b);if(!f.file){return}var c=document.createElement("img");c.id=l.id+"_jwplayer_logo";c.style.display="none";c.onload=function(n){_css(c,k());l.jwAddEventListener(a.api.events.JWPLAYER_PLAYER_STATE,m)};if(f.file.indexOf("http://")===0){c.src=f.file}else{c.src=f.prefix+f.file}c.onmouseover=function(n){c.style.opacity=f.over;d()};c.onmouseout=function(n){c.style.opacity=f.out;d()};c.onclick=e;function k(){var p={textDecoration:"none",position:"absolute"};p.display=f.hide?"none":"block";var o=f.position.toLowerCase().split("-");for(var n in o){p[o[n]]=f.margin}return p}this.resize=function(o,n){};this.getDisplayElement=function(){return c};function e(n){n.stopPropagation();window.open(f.link,"_blank");return}function d(){if(j){clearTimeout(j)}j=setTimeout(function(){a.html5.utils.fadeTo(c,0,0.1,parseFloat(c.style.opacity))},f.timeout*1000)}function m(n){switch(l.jwGetState()){case a.api.events.state.BUFFERING:c.style.display="block";c.style.opacity=f.out;if(f.hide){d()}break;case a.api.events.state.PAUSED:break;case a.api.events.state.IDLE:break;case a.api.events.state.PLAYING:break;default:if(f.hide){d()}break}}return this}})(jwplayer);(function(a){var c={ended:a.api.events.state.IDLE,playing:a.api.events.state.PLAYING,pause:a.api.events.state.PAUSED,buffering:a.api.events.state.BUFFERING};var b=a.html5.utils.css;a.html5.mediavideo=function(f,C){var G={abort:t,canplay:m,canplaythrough:m,durationchange:q,emptied:t,ended:m,error:l,loadeddata:q,loadedmetadata:q,loadstart:m,pause:m,play:J,playing:m,progress:z,ratechange:t,seeked:m,seeking:m,stalled:m,suspend:m,timeupdate:J,volumechange:t,waiting:m,canshowcurrentframe:t,dataunavailable:t,empty:t,load:e,loadedfirstframe:t};var H=new a.html5.eventdispatcher();a.utils.extend(this,H);var h=f;var x=C;var D;var F;var d=a.api.events.state.IDLE;var A=null;var n;var g=0;var y=false;var r=false;var L;var K;var i=[];var M;var B=false;function v(){return d}function e(N){}function t(N){}function m(N){if(c[N.type]){s(c[N.type])}}function s(N){if(B){return}if(n){N=a.api.events.state.IDLE}if(N==a.api.events.state.PAUSED&&d==a.api.events.state.IDLE){return}if(d!=N){var O=d;h.state=N;d=N;var P=false;if(N==a.api.events.state.IDLE){p();if(h.position>=h.duration&&(h.position||h.duration)){P=true}if(x.style.display!="none"&&!h.config.chromeless){x.style.display="none"}}H.sendEvent(a.api.events.JWPLAYER_PLAYER_STATE,{oldstate:O,newstate:N});if(P){H.sendEvent(a.api.events.JWPLAYER_MEDIA_COMPLETE)}}n=false}function q(N){var O={height:N.target.videoHeight,width:N.target.videoWidth,duration:Math.round(N.target.duration*10)/10};if(h.duration===0||isNaN(h.duration)){h.duration=Math.round(N.target.duration*10)/10}h.playlist[h.item]=a.utils.extend(h.playlist[h.item],O);H.sendEvent(a.api.events.JWPLAYER_MEDIA_META,{metadata:O})}function J(O){if(n){return}if(O!==undefined&&O.target!==undefined){if(h.duration===0||isNaN(h.duration)){h.duration=Math.round(O.target.duration*10)/10}if(!y&&x.readyState>0){s(a.api.events.state.PLAYING)}if(d==a.api.events.state.PLAYING){if(!y&&x.readyState>0){y=true;try{x.currentTime=h.playlist[h.item].start}catch(N){}x.volume=h.volume/100;x.muted=h.mute}h.position=Math.round(O.target.currentTime*10)/10;H.sendEvent(a.api.events.JWPLAYER_MEDIA_TIME,{position:Math.round(O.target.currentTime*10)/10,duration:Math.round(O.target.duration*10)/10})}}z(O)}function E(){var N=(i[i.length-1]-i[0])/i.length;M=setTimeout(function(){if(!F){z({lengthComputable:true,loaded:1,total:1})}},N*10)}function z(P){var O,N;if(P!==undefined&&P.lengthComputable&&P.total){o();O=P.loaded/P.total*100;N=O/100*(h.duration-x.currentTime);if(500)){maxBufferIndex=0;if(maxBufferIndex>=0){O=x.buffered.end(maxBufferIndex)/x.duration*100;N=x.buffered.end(maxBufferIndex)-x.currentTime}}}if(D===false&&d==a.api.events.state.BUFFERING){D=true;H.sendEvent(a.api.events.JWPLAYER_MEDIA_BUFFER_FULL)}if(!F){if(O==100&&F===false){F=true}if(O!==null&&(O>h.buffer)){h.buffer=Math.round(O);H.sendEvent(a.api.events.JWPLAYER_MEDIA_BUFFER,{bufferPercent:Math.round(O)})}}}function w(){if(A===null){A=setInterval(function(){J()},100)}}function p(){clearInterval(A);A=null}function l(P){var O="There was an error: ";if((P.target.error&&P.target.tagName.toLowerCase()=="video")||P.target.parentNode.error&&P.target.parentNode.tagName.toLowerCase()=="video"){var N=P.target.error===undefined?P.target.parentNode.error:P.target.error;switch(N.code){case N.MEDIA_ERR_ABORTED:O="You aborted the video playback: ";break;case N.MEDIA_ERR_NETWORK:O="A network error caused the video download to fail part-way: ";break;case N.MEDIA_ERR_DECODE:O="The video playback was aborted due to a corruption problem or because the video used features your browser did not support: ";break;case N.MEDIA_ERR_SRC_NOT_SUPPORTED:O="The video could not be loaded, either because the server or network failed or because the format is not supported: ";break;default:O="An unknown error occurred: ";break}}else{if(P.target.tagName.toLowerCase()=="source"){K--;if(K>0){return}O="The video could not be loaded, either because the server or network failed or because the format is not supported: "}else{a.html5.utils.log("Erroneous error received. Continuing...");return}}u();O+=j();B=true;H.sendEvent(a.api.events.JWPLAYER_ERROR,{error:O});return}function j(){var P="";for(var O in L.levels){var N=L.levels[O];var Q=x.ownerDocument.createElement("source");P+=a.html5.utils.getAbsolutePath(N.file);if(O<(L.levels.length-1)){P+=", "}}return P}this.getDisplayElement=function(){return x};this.play=function(){if(d!=a.api.events.state.PLAYING){if(x.style.display!="block"){x.style.display="block"}x.play();w()}};this.pause=function(){x.pause();s(a.api.events.state.PAUSED)};this.seek=function(N){if(!(h.duration===0||isNaN(h.duration))&&!(h.position===0||isNaN(h.position))){x.currentTime=N;x.play()}};function u(){x.pause();p();h.position=0;n=true;s(a.api.events.state.IDLE)}this.stop=u;this.volume=function(N){x.volume=N/100;h.volume=N;H.sendEvent(a.api.events.JWPLAYER_MEDIA_VOLUME,{volume:Math.round(N)})};this.mute=function(N){x.muted=N;h.mute=N;H.sendEvent(a.api.events.JWPLAYER_MEDIA_MUTE,{mute:N})};this.resize=function(O,N){if(false){b(x,{width:O,height:N})}H.sendEvent(a.api.events.JWPLAYER_MEDIA_RESIZE,{fullscreen:h.fullscreen,width:O,hieght:N})};this.fullscreen=function(N){if(N===true){this.resize("100%","100%")}else{this.resize(h.config.width,h.config.height)}};this.load=function(N){I(N);H.sendEvent(a.api.events.JWPLAYER_MEDIA_LOADED);D=false;F=false;y=false;if(!h.config.chromeless){i=[];o();s(a.api.events.state.BUFFERING);setTimeout(function(){J()},25)}};function o(){var N=new Date().getTime();i.push(N)}this.hasChrome=function(){return r};function I(U){h.duration=U.duration;r=false;L=U;var P=document.createElement("video");P.preload="none";B=false;K=0;for(var O in U.levels){var N=U.levels[O];if(a.html5.utils.isYouTube(N.file)){delete P;k(N.file);return}var Q;if(N.type===undefined){var T=a.html5.utils.extension(N.file);if(a.html5.extensionmap[T]!==undefined){Q=a.html5.extensionmap[T]}else{Q="video/"+T+";"}}else{Q=N.type}if(P.canPlayType(Q)===""){continue}var S=x.ownerDocument.createElement("source");S.src=a.html5.utils.getAbsolutePath(N.file);S.type=Q;K++;P.appendChild(S)}if(K===0){B=true;H.sendEvent(a.api.events.JWPLAYER_ERROR,{error:"The video could not be loaded because the format is not supported by your browser: "+j()})}if(h.config.chromeless){P.poster=a.html5.utils.getAbsolutePath(U.image);P.controls="controls"}P.style.position=x.style.position;P.style.top=x.style.top;P.style.left=x.style.left;P.style.width=x.style.width;P.style.height=x.style.height;P.style.zIndex=x.style.zIndex;P.onload=e;P.volume=0;x.parentNode.replaceChild(P,x);P.id=x.id;x=P;for(var R in G){x.addEventListener(R,function(V){if(V.target.parentNode!==null){G[V.type](V)}},true)}}function k(R){var O=document.createElement("object");R=["http://www.youtube.com/v/",R.replace(/^[^v]+v.(.{11}).*/,"$1"),"&hl=en_US&fs=1&autoplay=1"].join("");var U={movie:R,allowFullScreen:"true",allowscriptaccess:"always"};for(var N in U){var S=document.createElement("param");S.name=N;S.value=U[N];O.appendChild(S)}var T=document.createElement("embed");var P={src:R,type:"application/x-shockwave-flash",allowscriptaccess:"always",allowfullscreen:"true",width:document.getElementById(f.id).style.width,height:document.getElementById(f.id).style.height};for(var Q in P){T[Q]=P[Q]}O.appendChild(T);O.style.position=x.style.position;O.style.top=x.style.top;O.style.left=x.style.left;O.style.width=document.getElementById(f.id).style.width;O.style.height=document.getElementById(f.id).style.height;O.style.zIndex=2147483000;x.parentNode.replaceChild(O,x);O.id=x.id;x=O;r=true}this.embed=I;return this}})(jwplayer);(function(jwplayer){var _configurableStateVariables=["width","height","start","duration","volume","mute","fullscreen","item","plugins"];jwplayer.html5.model=function(api,container,options){var _api=api;var _container=container;var _model={id:_container.id,playlist:[],state:jwplayer.api.events.state.IDLE,position:0,buffer:0,config:{width:480,height:320,item:0,skin:undefined,file:undefined,image:undefined,start:0,duration:0,bufferlength:5,volume:90,mute:false,fullscreen:false,repeat:"none",autostart:false,debug:undefined,screencolor:undefined}};var _media;var _eventDispatcher=new jwplayer.html5.eventdispatcher();var _components=["display","logo","controlbar"];jwplayer.utils.extend(_model,_eventDispatcher);for(var option in options){if(typeof options[option]=="string"){var type=/color$/.test(option)?"color":null;options[option]=jwplayer.html5.utils.typechecker(options[option],type)}var config=_model.config;var path=option.split(".");for(var edge in path){if(edge==path.length-1){config[path[edge]]=options[option]}else{if(config[path[edge]]===undefined){config[path[edge]]={}}config=config[path[edge]]}}}for(var index in _configurableStateVariables){var configurableStateVariable=_configurableStateVariables[index];_model[configurableStateVariable]=_model.config[configurableStateVariable]}var pluginorder=_components.concat([]);if(_model.plugins!==undefined){if(typeof _model.plugins=="string"){var userplugins=_model.plugins.split(",");for(var userplugin in userplugins){pluginorder.push(userplugin.replace(/^\s+|\s+$/g,""))}}else{for(var plugin in _model.plugins){pluginorder.push(plugin.replace(/^\s+|\s+$/g,""))}}}if(jwplayer.utils.isIOS()){_model.config.chromeless=true}if(_model.config.chromeless){pluginorder=[]}_model.plugins={order:pluginorder,config:{controlbar:{position:jwplayer.html5.view.positions.BOTTOM}},object:{}};if(typeof _model.config.components!="undefined"){for(var component in _model.config.components){_model.plugins.config[component]=_model.config.components[component]}}for(var pluginIndex in _model.plugins.order){var pluginName=_model.plugins.order[pluginIndex];var pluginConfig=_model.config[pluginName]===undefined?{}:_model.config[pluginName];_model.plugins.config[pluginName]=_model.plugins.config[pluginName]===undefined?pluginConfig:jwplayer.utils.extend(_model.plugins.config[pluginName],pluginConfig);if(_model.plugins.config[pluginName].position===undefined){_model.plugins.config[pluginName].position=jwplayer.html5.view.positions.OVER}}_model.loadPlaylist=function(arg,ready){var input;if(typeof arg=="string"){try{input=eval(arg)}catch(err){input=arg}}else{input=arg}var config;switch(jwplayer.utils.typeOf(input)){case"object":config=input;break;case"array":config={playlist:input};break;default:config={file:input};break}_model.playlist=new jwplayer.html5.playlist(config);if(_model.config.shuffle){_model.item=_getShuffleItem()}else{if(_model.config.item>=_model.playlist.length){_model.config.item=_model.playlist.length-1}_model.item=_model.config.item}if(!ready){_eventDispatcher.sendEvent(jwplayer.api.events.JWPLAYER_PLAYLIST_LOADED);_eventDispatcher.sendEvent(jwplayer.api.events.JWPLAYER_PLAYLIST_ITEM,{item:_model.item})}_model.setActiveMediaProvider(_model.playlist[_model.item])};function _getShuffleItem(){var result=null;if(_model.playlist.length>1){while(result===null){result=Math.floor(Math.random()*_model.playlist.length);if(result==_model.item){result=null}}}else{result=0}return result}function forward(evt){if(evt.type==jwplayer.api.events.JWPLAYER_MEDIA_LOADED){_container=_media.getDisplayElement()}_eventDispatcher.sendEvent(evt.type,evt)}_model.setActiveMediaProvider=function(playlistItem){if(_media!==undefined){_media.resetEventListeners()}_media=new jwplayer.html5.mediavideo(_model,_container);_media.addGlobalListener(forward);if(_model.config.chromeless){_media.load(playlistItem)}return true};_model.getMedia=function(){return _media};_model.setupPlugins=function(){for(var plugin in _model.plugins.order){try{if(jwplayer.html5[_model.plugins.order[plugin]]!==undefined){_model.plugins.object[_model.plugins.order[plugin]]=new jwplayer.html5[_model.plugins.order[plugin]](_api,_model.plugins.config[_model.plugins.order[plugin]])}else{if(window[_model.plugins.order[plugin]]!==undefined){_model.plugins.object[_model.plugins.order[plugin]]=new window[_model.plugins.order[plugin]](_api,_model.plugins.config[_model.plugins.order[plugin]])}else{_model.plugins.order.splice(plugin,plugin+1)}}}catch(err){jwplayer.html5.utils.log("Could not setup "+_model.plugins.order[plugin])}}};return _model}})(jwplayer);(function(a){a.html5.playlist=function(b){var d=[];if(b.playlist&&b.playlist.length>0){for(var c in b.playlist){d.push(new a.html5.playlistitem(b.playlist[c]))}}else{d.push(new a.html5.playlistitem(b))}return d}})(jwplayer);(function(a){a.html5.playlistitem=function(c){var b={author:"",date:"",description:"",image:"",link:"",mediaid:"",tags:"",title:"",provider:"",file:"",streamer:"",duration:-1,start:0,currentLevel:-1,levels:[]};for(var d in b){if(c[d]!==undefined){b[d]=c[d]}}if(b.levels.length===0){b.levels[0]=new a.html5.playlistitemlevel(b)}return b}})(jwplayer);(function(a){a.html5.playlistitemlevel=function(b){var d={file:"",streamer:"",bitrate:0,width:0};for(var c in d){if(b[c]!==undefined){d[c]=b[c]}}return d}})(jwplayer);(function(a){a.html5.skin=function(){var b={};var c=false;this.load=function(d,e){new a.html5.skinloader(d,function(f){c=true;b=f;e()},function(){new a.html5.skinloader("",function(f){c=true;b=f;e()})})};this.getSkinElement=function(d,e){if(c){try{return b[d].elements[e]}catch(f){a.html5.utils.log("No such skin component / element: ",[d,e])}}return null};this.getComponentSettings=function(d){if(c){return b[d].settings}return null};this.getComponentLayout=function(d){if(c){return b[d].layout}return null}}})(jwplayer);(function(a){a.html5.skinloader=function(f,n,i){var m={};var c=n;var j=i;var e=true;var h;var l=f;var q=false;function k(){if(l===undefined||l===""){d(a.html5.defaultSkin().xml)}else{a.utils.ajax(a.html5.utils.getAbsolutePath(l),function(r){d(r.responseXML)},function(r){d(a.html5.defaultSkin().xml)})}}function d(w){var C=w.getElementsByTagName("component");if(C.length===0){return}for(var F=0;F0){var I=x.getElementsByTagName("setting");for(var N=0;N0){var K=J.getElementsByTagName("group");for(var u=0;uc){setTimeout(function(){a.html5.utils.fadeTo(l,f,e,i,0,d)},d-c)}l.style.display="block";if(i===undefined){i=l.style.opacity===""?1:l.style.opacity}if(l.style.opacity==f&&l.style.opacity!==""&&d!==undefined){if(f===0){l.style.display="none"}return}if(d===undefined){d=c;b[l.id]=d}if(h===undefined){h=0}var j=(c-d)/(e*1000);j=j>1?1:j;var k=f-i;var g=i+(j*k);if(g>1){g=1}else{if(g<0){g=0}}l.style.opacity=g;if(h>0){b[l.id]=d+h*1000;a.html5.utils.fadeTo(l,f,e,i,0,b[l.id]);return}setTimeout(function(){a.html5.utils.fadeTo(l,f,e,i,0,d)},10)}})(jwplayer);(function(c){var d=new RegExp(/^(#|0x)[0-9a-fA-F]{3,6}/);c.html5.utils.typechecker=function(g,f){f=f===null?b(g):f;return e(g,f)};function b(f){var g=["true","false","t","f"];if(g.indexOf(f.toLowerCase().replace(" ",""))>=0){return"boolean"}else{if(d.test(f)){return"color"}else{if(!isNaN(parseInt(f,10))&&parseInt(f,10).toString().length==f.length){return"integer"}else{if(!isNaN(parseFloat(f))&&parseFloat(f).toString().length==f.length){return"float"}}}}return"string"}function e(g,f){if(f===null){return g}switch(f){case"color":if(g.length>0){return a(g)}return null;case"integer":return parseInt(g,10);case"float":return parseFloat(g);case"boolean":if(g.toLowerCase()=="true"){return true}else{if(g=="1"){return true}}return false}return g}function a(f){switch(f.toLowerCase()){case"blue":return parseInt("0000FF",16);case"green":return parseInt("00FF00",16);case"red":return parseInt("FF0000",16);case"cyan":return parseInt("00FFFF",16);case"magenta":return parseInt("FF00FF",16);case"yellow":return parseInt("FFFF00",16);case"black":return parseInt("000000",16);case"white":return parseInt("FFFFFF",16);default:f=f.replace(/(#|0x)?([0-9A-F]{3,6})$/gi,"$2");if(f.length==3){f=f.charAt(0)+f.charAt(0)+f.charAt(1)+f.charAt(1)+f.charAt(2)+f.charAt(2)}return parseInt(f,16)}return parseInt("000000",16)}})(jwplayer);(function(a){a.html5.api=function(b,j){var i={};if(!a.utils.hasHTML5()){return i}var d=document.createElement("div");b.parentNode.replaceChild(d,b);d.id=b.id;i.version=a.html5.version;i.id=d.id;var h=new a.html5.model(i,d,j);var e=new a.html5.view(i,d,h);var g=new a.html5.controller(i,d,h,e);i.skin=new a.html5.skin();i.jwPlay=g.play;i.jwPause=g.pause;i.jwStop=g.stop;i.jwSeek=g.seek;i.jwPlaylistItem=g.item;i.jwPlaylistNext=g.next;i.jwPlaylistPrev=g.prev;i.jwResize=g.resize;i.jwLoad=g.load;function f(k){return function(){return h[k]}}i.jwGetItem=f("item");i.jwGetPosition=f("position");i.jwGetDuration=f("duration");i.jwGetBuffer=f("buffer");i.jwGetWidth=f("width");i.jwGetHeight=f("height");i.jwGetFullscreen=f("fullscreen");i.jwSetFullscreen=g.setFullscreen;i.jwGetVolume=f("volume");i.jwSetVolume=g.setVolume;i.jwGetMute=f("mute");i.jwSetMute=g.setMute;i.jwGetState=f("state");i.jwGetVersion=function(){return i.version};i.jwGetPlaylist=function(){return h.playlist};i.jwAddEventListener=g.addEventListener;i.jwRemoveEventListener=g.removeEventListener;i.jwSendEvent=g.sendEvent;i.jwGetLevel=function(){};i.jwGetBandwidth=function(){};i.jwGetLockState=function(){};i.jwLock=function(){};i.jwUnlock=function(){};function c(m,l,k){return function(){m.loadPlaylist(m.config,true);m.setupPlugins();l.setup(m.getMedia().getDisplayElement());var n={id:i.id,version:i.version};k.sendEvent(a.api.events.JWPLAYER_READY,n);if(playerReady!==undefined){playerReady(n)}if(window[m.config.playerReady]!==undefined){window[m.config.playerReady](n)}m.sendEvent(a.api.events.JWPLAYER_PLAYLIST_LOADED);m.sendEvent(a.api.events.JWPLAYER_PLAYLIST_ITEM,{item:m.config.item});if(m.config.autostart===true&&!m.config.chromeless){k.play()}}}if(h.config.chromeless){setTimeout(c(h,e,g),25)}else{i.skin.load(h.config.skin,c(h,e,g))}return i}})(jwplayer); \ No newline at end of file diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/mediaplayer/license.txt --- a/web/enmi/res/mediaplayer/license.txt Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/3.0/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA. \ No newline at end of file diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/mediaplayer/player.swf Binary file web/enmi/res/mediaplayer/player.swf has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/mediaplayer/preview.jpg Binary file web/enmi/res/mediaplayer/preview.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/mediaplayer/readme.html --- a/web/enmi/res/mediaplayer/readme.html Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,94 +0,0 @@ - - - - - About the JW Player 5 - - - - - - -

About the JW Player 5

-

Thank you for downloading the JW Player, the leading open source video player for Flash and HTML5 on the Web. Not only is the JW Player the easiest way to put video on your website, but we offer a host of other products and services to assist in providing the best possible video experience for your users.

- -

Quickstart

-

The quickest way to get started is to unzip the file you downloaded (you must have done that if you're reading this!) and copy the contents into a folder called 'jwplayer' at the root of your website. The end result should be:

-
    -
  1. {webroot}/jwplayer/player.swf
  2. -
  3. {webroot}/jwplayer/jwplayer.js
  4. -
  5. etc...
  6. -
-

You can then view the source of this page and copy the code from the example below onto your webpage. That's it! You should see a player on your site.

- -

An Example of the JW Player

-

Below you see a simple embedded example of the JW Player.

- - - - - - - - - - - -

Support, Documentation and Source Code

- -

If you need help, the LongTail Support Community contains a wealth of information, include a large library of documentation, a very active support forum, and a blog on the latest releases and tips on publishing video.

- -

Some documents you might find useful are:

-
    -
  1. Supported file formats.
  2. -
  3. Supported XML playlist formats.
  4. -
  5. Complete list of configuration options (for customizing the player).
  6. -
  7. Supported JavaScript API calls (for JavaScript interaction).
  8. -
  9. Supported skinning elements (for creating your own graphics).
  10. -
  11. Roadmap with full changelogs for each version.
  12. -
-

Last, the source code of all different versions of the player can be found here. You can click a version and download the ZIP files (the links are at the bottom).

- -

Licensing

-

The player is licensed under a Creative Commons License. It allows you to use, modify and redistribute the script, but only for non-commercial purposes.

-

Examples of commercial use include: - -

    -
  • websites with any advertisements;
  • -
  • websites owned or operated by corporations;
  • -
  • websites designed to promote other products, such as a band or artist;
  • -
  • products (e.g. a CMS) that bundle LongTail products into its offering.
  • -
- - If any of the above conditions apply to you, then please purchase a license for the player. If you are still unsure whether you need to purchase a license, please contact us.

- -

Related Products

-

In addition to the JW Player, LongTail Video has a suite of products to help you publish video.

-

Learn more about them here:

- -
    -
  • Skins - Change the look of your player to match your site. View our library.
  • -
  • Plugins - Add functionality to your player, like sharing, social networking, analytics, advertising and more. Find one for you.
  • -
  • AdSolution - Monetize your videos with LongTail's AdSolution. Integrate pre-roll, overlay and post-roll ads into your site and starting making money today. Sign up now.
  • -
  • Bits on the Run - Upload, encode, store, manage and stream your videos with Bits on the Run, LongTail's end-to-end online video platform. Sign up now.
  • -
- - - - - \ No newline at end of file diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/mediaplayer/swfobject.js --- a/web/enmi/res/mediaplayer/swfobject.js Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,8 +0,0 @@ -/** - * SWFObject v1.5: Flash Player detection and embed - http://blog.deconcept.com/swfobject/ - * - * SWFObject is (c) 2007 Geoff Stearns and is released under the MIT License: - * http://www.opensource.org/licenses/mit-license.php - * - */ -if(typeof deconcept=="undefined"){var deconcept=new Object();}if(typeof deconcept.util=="undefined"){deconcept.util=new Object();}if(typeof deconcept.SWFObjectUtil=="undefined"){deconcept.SWFObjectUtil=new Object();}deconcept.SWFObject=function(_1,id,w,h,_5,c,_7,_8,_9,_a){if(!document.getElementById){return;}this.DETECT_KEY=_a?_a:"detectflash";this.skipDetect=deconcept.util.getRequestParameter(this.DETECT_KEY);this.params=new Object();this.variables=new Object();this.attributes=new Array();if(_1){this.setAttribute("swf",_1);}if(id){this.setAttribute("id",id);}if(w){this.setAttribute("width",w);}if(h){this.setAttribute("height",h);}if(_5){this.setAttribute("version",new deconcept.PlayerVersion(_5.toString().split(".")));}this.installedVer=deconcept.SWFObjectUtil.getPlayerVersion();if(!window.opera&&document.all&&this.installedVer.major>7){deconcept.SWFObject.doPrepUnload=true;}if(c){this.addParam("bgcolor",c);}var q=_7?_7:"high";this.addParam("quality",q);this.setAttribute("useExpressInstall",false);this.setAttribute("doExpressInstall",false);var _c=(_8)?_8:window.location;this.setAttribute("xiRedirectUrl",_c);this.setAttribute("redirectUrl","");if(_9){this.setAttribute("redirectUrl",_9);}};deconcept.SWFObject.prototype={useExpressInstall:function(_d){this.xiSWFPath=!_d?"expressinstall.swf":_d;this.setAttribute("useExpressInstall",true);},setAttribute:function(_e,_f){this.attributes[_e]=_f;},getAttribute:function(_10){return this.attributes[_10];},addParam:function(_11,_12){this.params[_11]=_12;},getParams:function(){return this.params;},addVariable:function(_13,_14){this.variables[_13]=_14;},getVariable:function(_15){return this.variables[_15];},getVariables:function(){return this.variables;},getVariablePairs:function(){var _16=new Array();var key;var _18=this.getVariables();for(key in _18){_16[_16.length]=key+"="+_18[key];}return _16;},getSWFHTML:function(){var _19="";if(navigator.plugins&&navigator.mimeTypes&&navigator.mimeTypes.length){if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","PlugIn");this.setAttribute("swf",this.xiSWFPath);}_19="0){_19+="flashvars=\""+_1c+"\"";}_19+="/>";}else{if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","ActiveX");this.setAttribute("swf",this.xiSWFPath);}_19="";_19+="";var _1d=this.getParams();for(var key in _1d){_19+="";}var _1f=this.getVariablePairs().join("&");if(_1f.length>0){_19+="";}_19+="";}return _19;},write:function(_20){if(this.getAttribute("useExpressInstall")){var _21=new deconcept.PlayerVersion([6,0,65]);if(this.installedVer.versionIsValid(_21)&&!this.installedVer.versionIsValid(this.getAttribute("version"))){this.setAttribute("doExpressInstall",true);this.addVariable("MMredirectURL",escape(this.getAttribute("xiRedirectUrl")));document.title=document.title.slice(0,47)+" - Flash Player Installation";this.addVariable("MMdoctitle",document.title);}}if(this.skipDetect||this.getAttribute("doExpressInstall")||this.installedVer.versionIsValid(this.getAttribute("version"))){var n=(typeof _20=="string")?document.getElementById(_20):_20;n.innerHTML=this.getSWFHTML();return true;}else{if(this.getAttribute("redirectUrl")!=""){document.location.replace(this.getAttribute("redirectUrl"));}}return false;}};deconcept.SWFObjectUtil.getPlayerVersion=function(){var _23=new deconcept.PlayerVersion([0,0,0]);if(navigator.plugins&&navigator.mimeTypes.length){var x=navigator.plugins["Shockwave Flash"];if(x&&x.description){_23=new deconcept.PlayerVersion(x.description.replace(/([a-zA-Z]|\s)+/,"").replace(/(\s+r|\s+b[0-9]+)/,".").split("."));}}else{if(navigator.userAgent&&navigator.userAgent.indexOf("Windows CE")>=0){var axo=1;var _26=3;while(axo){try{_26++;axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash."+_26);_23=new deconcept.PlayerVersion([_26,0,0]);}catch(e){axo=null;}}}else{try{var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");}catch(e){try{var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");_23=new deconcept.PlayerVersion([6,0,21]);axo.AllowScriptAccess="always";}catch(e){if(_23.major==6){return _23;}}try{axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash");}catch(e){}}if(axo!=null){_23=new deconcept.PlayerVersion(axo.GetVariable("$version").split(" ")[1].split(","));}}}return _23;};deconcept.PlayerVersion=function(_29){this.major=_29[0]!=null?parseInt(_29[0]):0;this.minor=_29[1]!=null?parseInt(_29[1]):0;this.rev=_29[2]!=null?parseInt(_29[2]):0;};deconcept.PlayerVersion.prototype.versionIsValid=function(fv){if(this.majorfv.major){return true;}if(this.minorfv.minor){return true;}if(this.rev=0;i--){_2f[i].style.display="none";for(var x in _2f[i]){if(typeof _2f[i][x]=="function"){_2f[i][x]=function(){};}}}};if(deconcept.SWFObject.doPrepUnload){if(!deconcept.unloadSet){deconcept.SWFObjectUtil.prepUnload=function(){__flash_unloadHandler=function(){};__flash_savedUnloadHandler=function(){};window.attachEvent("onunload",deconcept.SWFObjectUtil.cleanupSWFs);};window.attachEvent("onbeforeunload",deconcept.SWFObjectUtil.prepUnload);deconcept.unloadSet=true;}}if(!document.getElementById&&document.all){document.getElementById=function(id){return document.all[id];};}var getQueryParamValue=deconcept.util.getRequestParameter;var FlashObject=deconcept.SWFObject;var SWFObject=deconcept.SWFObject; \ No newline at end of file diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/mediaplayer/video.mp4 Binary file web/enmi/res/mediaplayer/video.mp4 has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/mediaplayer/yt.swf Binary file web/enmi/res/mediaplayer/yt.swf has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/niceforms/img/0.png Binary file web/enmi/res/niceforms/img/0.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/niceforms/img/button-left.png Binary file web/enmi/res/niceforms/img/button-left.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/niceforms/img/button-right.png Binary file web/enmi/res/niceforms/img/button-right.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/niceforms/img/button.png Binary file web/enmi/res/niceforms/img/button.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/niceforms/img/checkbox.png Binary file web/enmi/res/niceforms/img/checkbox.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/niceforms/img/file.png Binary file web/enmi/res/niceforms/img/file.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/niceforms/img/input-left.png Binary file web/enmi/res/niceforms/img/input-left.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/niceforms/img/input-right.png Binary file web/enmi/res/niceforms/img/input-right.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/niceforms/img/input.png Binary file web/enmi/res/niceforms/img/input.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/niceforms/img/radio.png Binary file web/enmi/res/niceforms/img/radio.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/niceforms/img/select-left.png Binary file web/enmi/res/niceforms/img/select-left.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/niceforms/img/select-right.png Binary file web/enmi/res/niceforms/img/select-right.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/niceforms/img/textarea-bl.png Binary file web/enmi/res/niceforms/img/textarea-bl.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/niceforms/img/textarea-br.png Binary file web/enmi/res/niceforms/img/textarea-br.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/niceforms/img/textarea-l-off.png Binary file web/enmi/res/niceforms/img/textarea-l-off.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/niceforms/img/textarea-l-over.png Binary file web/enmi/res/niceforms/img/textarea-l-over.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/niceforms/img/textarea-r-off.png Binary file web/enmi/res/niceforms/img/textarea-r-off.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/niceforms/img/textarea-r-over.png Binary file web/enmi/res/niceforms/img/textarea-r-over.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/niceforms/img/textarea-tl.png Binary file web/enmi/res/niceforms/img/textarea-tl.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/niceforms/img/textarea-tr.png Binary file web/enmi/res/niceforms/img/textarea-tr.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/niceforms/nf-standard-blue.psd Binary file web/enmi/res/niceforms/nf-standard-blue.psd has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/niceforms/niceforms-custom.css --- a/web/enmi/res/niceforms/niceforms-custom.css Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,79 +0,0 @@ - - -/*########################################## -Script: Niceforms 2.0 -Theme: StandardBlue -Author: Lucian Slatineanu -URL: http://www.emblematiq.com/ -##########################################*/ - -/*Text inputs*/ -.NFText {border:none; vertical-align:middle; font:12px/15px Arial, Helvetica, sans-serif; background:none;} -.NFTextCenter {height:15px; background:url(img/input.png) repeat-x 0 0; padding:3px 0; margin:0; float:left; line-height:15px;} -.NFTextLeft, .NFTextRight {width:7px; height:21px; vertical-align:middle; float:left;} -.NFTextLeft {background:url(img/input-left.png) no-repeat 0 0;} -.NFTextRight {background:url(img/input-right.png) no-repeat 0 0;} -/*Radio*/ -.NFRadio {cursor:pointer; position:absolute; display:block; width:13px; height:13px; border:1px solid transparent; background:url(img/radio.png) no-repeat 0 0; z-index:2;} -/*Checkbox*/ -.NFCheck {cursor:pointer; position:absolute; width:12px; height:12px; border:1px solid transparent; background:url(img/checkbox.png) no-repeat 0 0; z-index:2;} -/*Buttons*/ -.NFButton {width:auto; height:26px; color:#fff; padding:0 2px; background:url(img/button.png) repeat-x 0 0; cursor:pointer; border:none; font:10px/26px Tahoma, Arial, Helvetica, sans-serif; font-weight:bold; text-transform:uppercase; letter-spacing:1px; vertical-align:middle;} -.NFButtonLeft, .NFButtonRight {width:6px; height:26px; vertical-align:middle;} -.NFButtonLeft {background:url(img/button-left.png) no-repeat 0 0;} -.NFButtonRight {background:url(img/button-right.png) no-repeat 0 0;} -/*Textareas*/ -.NFTextarea {border:none; background:none; font:12px/12px Arial, Helvetica, sans-serif; margin:0;} -.NFTextareaTop, .NFTextareaBottom {height:5px; clear:both; float:none; padding-right:10px;} -.NFTextareaTop {background:url(img/textarea-tr.png) no-repeat 100% 0;} -.NFTextareaBottom {background:url(img/textarea-br.png) no-repeat 100% 0; margin-bottom:5px;} -.NFTextareaTopLeft, .NFTextareaBottomLeft {width:5px; height:5px;} -.NFTextareaTopLeft {background:#f2f2e6 url(img/textarea-tl.png) no-repeat 0 0;} -.NFTextareaBottomLeft {background:#f2f2e6 url(img/textarea-bl.png) no-repeat 0 0;} -.NFTextareaLeft, .NFTextareaRight, .NFTextareaLeftH, .NFTextareaRightH {float:left; padding-bottom:5px;} -.NFTextareaLeft, .NFTextareaLeftH {width:5px;} -.NFTextareaLeft {background:url(img/textarea-l-off.png) repeat-y 0 0;} -.NFTextareaLeftH {background:url(img/textarea-l-over.png) repeat-y 0 0;} -.NFTextareaRight, .NFTextareaRightH {padding-right:5px; padding-bottom:0;} -.NFTextareaRight {background:url(img/textarea-r-off.png) repeat-y 100% 0;} -.NFTextareaRightH {background:url(img/textarea-r-over.png) repeat-y 100% 100%;} -/*Files*/ -.NFFileButton {padding-bottom:0; vertical-align:bottom; cursor:pointer; background:url(img/file.png) no-repeat 0 0; width:60px; height:21px;} -.NFFile {position:relative; margin-bottom:5px;} -.NFFile input.NFhidden {position:relative; filter:alpha(opacity=0); opacity:0; z-index:2; cursor:pointer; text-align:left;} -.NFFileNew {position:absolute; top:0px; left:0px; z-index:1;} -/*Selects*/ -.NFSelect {height:21px; position:absolute; border:1px solid transparent;} -.NFSelectLeft {float:left; width:3px; height:21px; background:url(img/select-left.png) no-repeat 0 0; vertical-align:middle;} -.NFSelectRight {height:21px; width:auto; background:url(img/select-right.png) no-repeat 100% 0; cursor:pointer; font:12px/21px Arial, Helvetica, sans-serif; color:#fff; padding-left:3px; margin-left:3px;} -.NFSelectTarget {position:absolute; background:none; margin-left:-13px; margin-top:18px; z-index:3; left:0; top:0; padding-bottom:13px;} -.NFSelectOptions {position:relative; background:#707175; margin-left:16px; margin-top:0; list-style:none; padding:4px 0; color:#fff; font:11px/13px Arial, Helvetica, sans-serif; z-index:4; max-height:200px; overflow-y:auto; overflow-x:hidden; left:0; top:0;} -.NFSelectOptions li {padding-bottom:1px;} -.NFSelectOptions a {display:block; text-decoration:none; color:#fff; padding:2px 3px; background:none;} -.NFSelectOptions a.NFOptionActive {background:#464646;} -.NFSelectOptions a:hover {background:#333;} -/*Multiple Selects*/ -.NFMultiSelect {border:0; background:none; margin:0;} -.NFMultiSelectTop, .NFMultiSelectBottom {height:5px; clear:both; float:none; padding-right:10px;} -.NFMultiSelectTop {background:url(img/textarea-tr.png) no-repeat 100% 0;} -.NFMultiSelectBottom {background:url(img/textarea-br.png) no-repeat 100% 0; margin-bottom:5px;} -.NFMultiSelectTopLeft, .NFMultiSelectBottomLeft {width:5px; height:5px;} -.NFMultiSelectTopLeft {background:#f2f2e6 url(img/textarea-tl.png) no-repeat 0 0;} -.NFMultiSelectBottomLeft {background:#f2f2e6 url(img/textarea-bl.png) no-repeat 0 0;} -.NFMultiSelectLeft, .NFMultiSelectRight, .NFMultiSelectLeftH, .NFMultiSelectRightH {float:left; padding-bottom:5px;} -.NFMultiSelectLeft, .NFMultiSelectLeftH {width:5px;} -.NFMultiSelectLeft {background:url(img/textarea-l-off.png) repeat-y 0 0;} -.NFMultiSelectLeftH {background:url(img/textarea-l-over.png) repeat-y 0 0;} -.NFMultiSelectRight, .NFMultiSelectRightH {padding-right:5px; padding-bottom:0;} -.NFMultiSelectRight {background:url(img/textarea-r-off.png) repeat-y 100% 0;} -.NFMultiSelectRightH {background:url(img/textarea-r-over.png) repeat-y 100% 0;} - -/*Focused*/ -.NFfocused {border:1px dotted #666;} -/*Hovered*/ -.NFh {background-position:0 100%;} -.NFhr {background-position:100% 100%;} -/*Hidden*/ -.NFhidden {opacity:0; z-index:-1; position:relative;} -/*Safari*/ -select, input, textarea, button {outline:none; resize:none;} \ No newline at end of file diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/niceforms/niceforms-default.css --- a/web/enmi/res/niceforms/niceforms-default.css Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,92 +0,0 @@ -/*Defaults Styling*/ -body {font:12px/17px Arial, Helvetica, sans-serif; color:#333; background:#ccc; padding:40px 20px 20px 20px;} -fieldset {background:#f2f2e6; padding:10px; border:1px solid #fff; border-color:#fff #666661 #666661 #fff; margin-bottom:36px; width:600px;} -input, textarea, select {font:12px/12px Arial, Helvetica, sans-serif; padding:0;} -fieldset.action {background:#9da2a6; border-color:#e5e5e5 #797c80 #797c80 #e5e5e5; margin-top:-20px;} -legend {background:#bfbf30; color:#fff; font:17px/21px Calibri, Arial, Helvetica, sans-serif; padding:0 10px; margin:-26px 0 0 -11px; font-weight:bold; border:1px solid #fff; border-color:#e5e5c3 #505014 #505014 #e5e5c3;} -label {font-size:11px; font-weight:bold; color:#666;} -label.opt {font-weight:normal;} -dl {clear:both;} -dt {float:left; text-align:right; width:90px; line-height:25px; margin:0 10px 10px 0;} -dd {float:left; width:475px; line-height:25px; margin:0 0 10px 0;} -#footer {font-size:11px;} - -#container {width:700px; margin:0 auto;} - -/*########################################## -Script: Niceforms 2.0 -Theme: StandardBlue -Author: Lucian Slatineanu -URL: http://www.emblematiq.com/ -##########################################*/ - -/*Text inputs*/ -.NFText {border:none; vertical-align:middle; font:12px/15px Arial, Helvetica, sans-serif; background:none;} -.NFTextCenter {height:15px; background:url(img/input.png) repeat-x 0 0; padding:3px 0; margin:0; float:left; line-height:15px;} -.NFTextLeft, .NFTextRight {width:7px; height:21px; vertical-align:middle; float:left;} -.NFTextLeft {background:url(img/input-left.png) no-repeat 0 0;} -.NFTextRight {background:url(img/input-right.png) no-repeat 0 0;} -/*Radio*/ -.NFRadio {cursor:pointer; position:absolute; display:block; width:13px; height:13px; border:1px solid transparent; background:url(img/radio.png) no-repeat 0 0; z-index:2;} -/*Checkbox*/ -.NFCheck {cursor:pointer; position:absolute; width:12px; height:12px; border:1px solid transparent; background:url(img/checkbox.png) no-repeat 0 0; z-index:2;} -/*Buttons*/ -.NFButton {width:auto; height:26px; color:#fff; padding:0 2px; background:url(img/button.png) repeat-x 0 0; cursor:pointer; border:none; font:10px/26px Tahoma, Arial, Helvetica, sans-serif; font-weight:bold; text-transform:uppercase; letter-spacing:1px; vertical-align:middle;} -.NFButtonLeft, .NFButtonRight {width:6px; height:26px; vertical-align:middle;} -.NFButtonLeft {background:url(img/button-left.png) no-repeat 0 0;} -.NFButtonRight {background:url(img/button-right.png) no-repeat 0 0;} -/*Textareas*/ -.NFTextarea {border:none; background:none; font:12px/12px Arial, Helvetica, sans-serif; margin:0;} -.NFTextareaTop, .NFTextareaBottom {height:5px; clear:both; float:none; padding-right:10px;} -.NFTextareaTop {background:url(img/textarea-tr.png) no-repeat 100% 0;} -.NFTextareaBottom {background:url(img/textarea-br.png) no-repeat 100% 0; margin-bottom:5px;} -.NFTextareaTopLeft, .NFTextareaBottomLeft {width:5px; height:5px;} -.NFTextareaTopLeft {background:#f2f2e6 url(img/textarea-tl.png) no-repeat 0 0;} -.NFTextareaBottomLeft {background:#f2f2e6 url(img/textarea-bl.png) no-repeat 0 0;} -.NFTextareaLeft, .NFTextareaRight, .NFTextareaLeftH, .NFTextareaRightH {float:left; padding-bottom:5px;} -.NFTextareaLeft, .NFTextareaLeftH {width:5px;} -.NFTextareaLeft {background:url(img/textarea-l-off.png) repeat-y 0 0;} -.NFTextareaLeftH {background:url(img/textarea-l-over.png) repeat-y 0 0;} -.NFTextareaRight, .NFTextareaRightH {padding-right:5px; padding-bottom:0;} -.NFTextareaRight {background:url(img/textarea-r-off.png) repeat-y 100% 0;} -.NFTextareaRightH {background:url(img/textarea-r-over.png) repeat-y 100% 100%;} -/*Files*/ -.NFFileButton {padding-bottom:0; vertical-align:bottom; cursor:pointer; background:url(img/file.png) no-repeat 0 0; width:60px; height:21px;} -.NFFile {position:relative; margin-bottom:5px;} -.NFFile input.NFhidden {position:relative; filter:alpha(opacity=0); opacity:0; z-index:2; cursor:pointer; text-align:left;} -.NFFileNew {position:absolute; top:0px; left:0px; z-index:1;} -/*Selects*/ -.NFSelect {height:21px; position:absolute; border:1px solid transparent;} -.NFSelectLeft {float:left; width:3px; height:21px; background:url(img/select-left.png) no-repeat 0 0; vertical-align:middle;} -.NFSelectRight {height:21px; width:auto; background:url(img/select-right.png) no-repeat 100% 0; cursor:pointer; font:12px/21px Arial, Helvetica, sans-serif; color:#fff; padding-left:3px; margin-left:3px;} -.NFSelectTarget {position:absolute; background:none; margin-left:-13px; margin-top:18px; z-index:3; left:0; top:0; padding-bottom:13px;} -.NFSelectOptions {position:relative; background:#707175; margin-left:16px; margin-top:0; list-style:none; padding:4px 0; color:#fff; font:11px/13px Arial, Helvetica, sans-serif; z-index:4; max-height:200px; overflow-y:auto; overflow-x:hidden; left:0; top:0;} -.NFSelectOptions li {padding-bottom:1px;} -.NFSelectOptions a {display:block; text-decoration:none; color:#fff; padding:2px 3px; background:none;} -.NFSelectOptions a.NFOptionActive {background:#464646;} -.NFSelectOptions a:hover {background:#333;} -/*Multiple Selects*/ -.NFMultiSelect {border:0; background:none; margin:0;} -.NFMultiSelectTop, .NFMultiSelectBottom {height:5px; clear:both; float:none; padding-right:10px;} -.NFMultiSelectTop {background:url(img/textarea-tr.png) no-repeat 100% 0;} -.NFMultiSelectBottom {background:url(img/textarea-br.png) no-repeat 100% 0; margin-bottom:5px;} -.NFMultiSelectTopLeft, .NFMultiSelectBottomLeft {width:5px; height:5px;} -.NFMultiSelectTopLeft {background:#f2f2e6 url(img/textarea-tl.png) no-repeat 0 0;} -.NFMultiSelectBottomLeft {background:#f2f2e6 url(img/textarea-bl.png) no-repeat 0 0;} -.NFMultiSelectLeft, .NFMultiSelectRight, .NFMultiSelectLeftH, .NFMultiSelectRightH {float:left; padding-bottom:5px;} -.NFMultiSelectLeft, .NFMultiSelectLeftH {width:5px;} -.NFMultiSelectLeft {background:url(img/textarea-l-off.png) repeat-y 0 0;} -.NFMultiSelectLeftH {background:url(img/textarea-l-over.png) repeat-y 0 0;} -.NFMultiSelectRight, .NFMultiSelectRightH {padding-right:5px; padding-bottom:0;} -.NFMultiSelectRight {background:url(img/textarea-r-off.png) repeat-y 100% 0;} -.NFMultiSelectRightH {background:url(img/textarea-r-over.png) repeat-y 100% 0;} - -/*Focused*/ -.NFfocused {border:1px dotted #666;} -/*Hovered*/ -.NFh {background-position:0 100%;} -.NFhr {background-position:100% 100%;} -/*Hidden*/ -.NFhidden {opacity:0; z-index:-1; position:relative;} -/*Safari*/ -select, input, textarea, button {outline:none; resize:none;} \ No newline at end of file diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/niceforms/niceforms.html --- a/web/enmi/res/niceforms/niceforms.html Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,201 +0,0 @@ - - - -Niceforms - - - - - -
-
-
- Personal Info -
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
- - - -
-
-
-
- Preferences -
-
-
- - - -
-
-
-
-
- - - - - -
-
-
-
-
- -
-
-
-
- Comments -
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
- - -
- diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/res/niceforms/niceforms.js --- a/web/enmi/res/niceforms/niceforms.js Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,576 +0,0 @@ -/*############################################################# -Name: Niceforms -Version: 2.0 -Author: Lucian Slatineanu -URL: http://www.emblematiq.com/projects/niceforms/ - -Feel free to use and modify but please keep this copyright intact. -#################################################################*/ - -//Theme Variables - edit these to match your theme -var imagesPath = "img/"; -var selectRightWidthSimple = 19; -var selectRightWidthScroll = 2; -var selectMaxHeight = 200; -var textareaTopPadding = 10; -var textareaSidePadding = 10; - -//Global Variables -var NF = new Array(); -var isIE = false; -var resizeTest = 1; - -//Initialization function -function NFInit() { - try { - document.execCommand('BackgroundImageCache', false, true); - } catch(e) {} - if(!document.getElementById) {return false;} - //alert("click me first"); - NFDo('start'); -} -function NFDo(what) { - var niceforms = document.getElementsByTagName('form'); - var identifier = new RegExp('(^| )'+'niceform'+'( |$)'); - if (/MSIE (\d+\.\d+);/.test(navigator.userAgent)) { - var ieversion=new Number(RegExp.$1); - if(ieversion < 7) {return false;} //exit script if IE6 - isIE = true; - } - for(var q = 0; q < niceforms.length; q++) {if(identifier.test(niceforms[q].className)) { - if(what == "start") { //Load Niceforms - NF[q] = new niceform(niceforms[q]); - niceforms[q].start(); - } - else { //Unload Niceforms - niceforms[q].unload(); - NF[q] = ""; - } - }} -} -function NFFix() { - NFDo('stop'); - NFDo('start'); -} -function niceform(nf) { - nf._inputText = new Array(); nf._inputRadio = new Array(); nf._inputCheck = new Array(); nf._inputSubmit = new Array(); nf._inputFile = new Array(); nf._textarea = new Array(); nf._select = new Array(); nf._multiselect = new Array(); - nf.add_inputText = function(obj) {this._inputText[this._inputText.length] = obj; inputText(obj);} - nf.add_inputRadio = function(obj) {this._inputRadio[this._inputRadio.length] = obj; inputRadio(obj);} - nf.add_inputCheck = function(obj) {this._inputCheck[this._inputCheck.length] = obj; inputCheck(obj);} - nf.add_inputSubmit = function(obj) {this._inputSubmit[this._inputSubmit.length] = obj; inputSubmit(obj);} - nf.add_inputFile = function(obj) {this._inputFile[this._inputFile.length] = obj; inputFile(obj);} - nf.add_textarea = function(obj) {this._textarea[this._textarea.length] = obj; textarea(obj);} - nf.add_select = function(obj) {this._select[this._select.length] = obj; selects(obj);} - nf.add_multiselect = function(obj) {this._multiselect[this._multiselect.length] = obj; multiSelects(obj);} - nf.start = function() { - //Separate and assign elements - var allInputs = this.getElementsByTagName('input'); - for(var w = 0; w < allInputs.length; w++) { - switch(allInputs[w].type) { - case "text": case "password": {this.add_inputText(allInputs[w]); break;} - case "radio": {this.add_inputRadio(allInputs[w]); break;} - case "checkbox": {this.add_inputCheck(allInputs[w]); break;} - case "submit": case "reset": case "button": {this.add_inputSubmit(allInputs[w]); break;} - case "file": {this.add_inputFile(allInputs[w]); break;} - } - } - var allButtons = this.getElementsByTagName('button'); - for(var w = 0; w < allButtons.length; w++) { - this.add_inputSubmit(allButtons[w]); - } - var allTextareas = this.getElementsByTagName('textarea'); - for(var w = 0; w < allTextareas.length; w++) { - this.add_textarea(allTextareas[w]); - } - var allSelects = this.getElementsByTagName('select'); - for(var w = 0; w < allSelects.length; w++) { - if(allSelects[w].size == "1") {this.add_select(allSelects[w]);} - else {this.add_multiselect(allSelects[w]);} - } - //Start - for(w = 0; w < this._inputText.length; w++) {this._inputText[w].init();} - for(w = 0; w < this._inputRadio.length; w++) {this._inputRadio[w].init();} - for(w = 0; w < this._inputCheck.length; w++) {this._inputCheck[w].init();} - for(w = 0; w < this._inputSubmit.length; w++) {this._inputSubmit[w].init();} - for(w = 0; w < this._inputFile.length; w++) {this._inputFile[w].init();} - for(w = 0; w < this._textarea.length; w++) {this._textarea[w].init();} - for(w = 0; w < this._select.length; w++) {this._select[w].init(w);} - for(w = 0; w < this._multiselect.length; w++) {this._multiselect[w].init(w);} - } - nf.unload = function() { - //Stop - for(w = 0; w < this._inputText.length; w++) {this._inputText[w].unload();} - for(w = 0; w < this._inputRadio.length; w++) {this._inputRadio[w].unload();} - for(w = 0; w < this._inputCheck.length; w++) {this._inputCheck[w].unload();} - for(w = 0; w < this._inputSubmit.length; w++) {this._inputSubmit[w].unload();} - for(w = 0; w < this._inputFile.length; w++) {this._inputFile[w].unload();} - for(w = 0; w < this._textarea.length; w++) {this._textarea[w].unload();} - for(w = 0; w < this._select.length; w++) {this._select[w].unload();} - for(w = 0; w < this._multiselect.length; w++) {this._multiselect[w].unload();} - } -} -function inputText(el) { //extent Text inputs - el.oldClassName = el.className; - el.left = document.createElement('img'); - el.left.src = imagesPath + "0.png"; - el.left.className = "NFTextLeft"; - el.right = document.createElement('img'); - el.right.src = imagesPath + "0.png"; - el.right.className = "NFTextRight"; - el.dummy = document.createElement('div'); - el.dummy.className = "NFTextCenter"; - el.onfocus = function() { - this.dummy.className = "NFTextCenter NFh"; - this.left.className = "NFTextLeft NFh"; - this.right.className = "NFTextRight NFh"; - } - el.onblur = function() { - this.dummy.className = "NFTextCenter"; - this.left.className = "NFTextLeft"; - this.right.className = "NFTextRight"; - } - el.init = function() { - this.parentNode.insertBefore(this.left, this); - this.parentNode.insertBefore(this.right, this.nextSibling); - this.dummy.appendChild(this); - this.right.parentNode.insertBefore(this.dummy, this.right); - this.className = "NFText"; - } - el.unload = function() { - this.parentNode.parentNode.appendChild(this); - this.parentNode.removeChild(this.left); - this.parentNode.removeChild(this.right); - this.parentNode.removeChild(this.dummy); - this.className = this.oldClassName; - } -} -function inputRadio(el) { //extent Radio buttons - el.oldClassName = el.className; - el.dummy = document.createElement('div'); - if(el.checked) {el.dummy.className = "NFRadio NFh";} - else {el.dummy.className = "NFRadio";} - el.dummy.ref = el; - if(isIE == false) {el.dummy.style.left = findPosX(el) + 'px'; el.dummy.style.top = findPosY(el) + 'px';} - else {el.dummy.style.left = findPosX(el) + 4 + 'px'; el.dummy.style.top = findPosY(el) + 4 + 'px';} - el.dummy.onclick = function() { - if(!this.ref.checked) { - var siblings = getInputsByName(this.ref.name); - for(var q = 0; q < siblings.length; q++) { - siblings[q].checked = false; - siblings[q].dummy.className = "NFRadio"; - } - this.ref.checked = true; - this.className = "NFRadio NFh"; - } - } - el.onclick = function() { - if(this.checked) { - var siblings = getInputsByName(this.name); - for(var q = 0; q < siblings.length; q++) { - siblings[q].dummy.className = "NFRadio"; - } - this.dummy.className = "NFRadio NFh"; - } - } - el.onfocus = function() {this.dummy.className += " NFfocused";} - el.onblur = function() {this.dummy.className = this.dummy.className.replace(/ NFfocused/g, "");} - el.init = function() { - this.parentNode.insertBefore(this.dummy, this); - el.className = "NFhidden"; - } - el.unload = function() { - this.parentNode.removeChild(this.dummy); - this.className = this.oldClassName; - } -} -function inputCheck(el) { //extend Checkboxes - el.oldClassName = el.className; - el.dummy = document.createElement('img'); - el.dummy.src = imagesPath + "0.png"; - if(el.checked) {el.dummy.className = "NFCheck NFh";} - else {el.dummy.className = "NFCheck";} - el.dummy.ref = el; - if(isIE == false) {el.dummy.style.left = findPosX(el) + 'px'; el.dummy.style.top = findPosY(el) + 'px';} - else {el.dummy.style.left = findPosX(el) + 4 + 'px'; el.dummy.style.top = findPosY(el) + 4 + 'px';} - el.dummy.onclick = function() { - if(!this.ref.checked) { - this.ref.checked = true; - this.className = "NFCheck NFh"; - } - else { - this.ref.checked = false; - this.className = "NFCheck"; - } - } - el.onclick = function() { - if(this.checked) {this.dummy.className = "NFCheck NFh";} - else {this.dummy.className = "NFCheck";} - } - el.onfocus = function() {this.dummy.className += " NFfocused";} - el.onblur = function() {this.dummy.className = this.dummy.className.replace(/ NFfocused/g, "");} - el.init = function() { - this.parentNode.insertBefore(this.dummy, this); - el.className = "NFhidden"; - } - el.unload = function() { - this.parentNode.removeChild(this.dummy); - this.className = this.oldClassName; - } -} -function inputSubmit(el) { //extend Buttons - el.oldClassName = el.className; - el.left = document.createElement('img'); - el.left.className = "NFButtonLeft"; - el.left.src = imagesPath + "0.png"; - el.right = document.createElement('img'); - el.right.src = imagesPath + "0.png"; - el.right.className = "NFButtonRight"; - el.onmouseover = function() { - this.className = "NFButton NFh"; - this.left.className = "NFButtonLeft NFh"; - this.right.className = "NFButtonRight NFh"; - } - el.onmouseout = function() { - this.className = "NFButton"; - this.left.className = "NFButtonLeft"; - this.right.className = "NFButtonRight"; - } - el.init = function() { - this.parentNode.insertBefore(this.left, this); - this.parentNode.insertBefore(this.right, this.nextSibling); - this.className = "NFButton"; - } - el.unload = function() { - this.parentNode.removeChild(this.left); - this.parentNode.removeChild(this.right); - this.className = this.oldClassName; - } -} -function inputFile(el) { //extend File inputs - el.oldClassName = el.className; - el.dummy = document.createElement('div'); - el.dummy.className = "NFFile"; - el.file = document.createElement('div'); - el.file.className = "NFFileNew"; - el.center = document.createElement('div'); - el.center.className = "NFTextCenter"; - el.clone = document.createElement('input'); - el.clone.type = "text"; - el.clone.className = "NFText"; - el.clone.ref = el; - el.left = document.createElement('img'); - el.left.src = imagesPath + "0.png"; - el.left.className = "NFTextLeft"; - el.button = document.createElement('img'); - el.button.src = imagesPath + "0.png"; - el.button.className = "NFFileButton"; - el.button.ref = el; - el.button.onclick = function() {this.ref.click();} - el.init = function() { - var top = this.parentNode; - if(this.previousSibling) {var where = this.previousSibling;} - else {var where = top.childNodes[0];} - top.insertBefore(this.dummy, where); - this.dummy.appendChild(this); - this.center.appendChild(this.clone); - this.file.appendChild(this.center); - this.file.insertBefore(this.left, this.center); - this.file.appendChild(this.button); - this.dummy.appendChild(this.file); - this.className = "NFhidden"; - this.relatedElement = this.clone; - } - el.unload = function() { - this.parentNode.parentNode.appendChild(this); - this.parentNode.removeChild(this.dummy); - this.className = this.oldClassName; - } - el.onchange = el.onmouseout = function() {this.relatedElement.value = this.value;} - el.onfocus = function() { - this.left.className = "NFTextLeft NFh"; - this.center.className = "NFTextCenter NFh"; - this.button.className = "NFFileButton NFh"; - } - el.onblur = function() { - this.left.className = "NFTextLeft"; - this.center.className = "NFTextCenter"; - this.button.className = "NFFileButton"; - } - el.onselect = function() { - this.relatedElement.select(); - this.value = ''; - } -} -function textarea(el) { //extend Textareas - el.oldClassName = el.className; - el.height = el.offsetHeight - textareaTopPadding; - el.width = el.offsetWidth - textareaSidePadding; - el.topLeft = document.createElement('img'); - el.topLeft.src = imagesPath + "0.png"; - el.topLeft.className = "NFTextareaTopLeft"; - el.topRight = document.createElement('div'); - el.topRight.className = "NFTextareaTop"; - el.bottomLeft = document.createElement('img'); - el.bottomLeft.src = imagesPath + "0.png"; - el.bottomLeft.className = "NFTextareaBottomLeft"; - el.bottomRight = document.createElement('div'); - el.bottomRight.className = "NFTextareaBottom"; - el.left = document.createElement('div'); - el.left.className = "NFTextareaLeft"; - el.right = document.createElement('div'); - el.right.className = "NFTextareaRight"; - el.init = function() { - var top = this.parentNode; - if(this.previousSibling) {var where = this.previousSibling;} - else {var where = top.childNodes[0];} - top.insertBefore(el.topRight, where); - top.insertBefore(el.right, where); - top.insertBefore(el.bottomRight, where); - this.topRight.appendChild(this.topLeft); - this.right.appendChild(this.left); - this.right.appendChild(this); - this.bottomRight.appendChild(this.bottomLeft); - el.style.width = el.topRight.style.width = el.bottomRight.style.width = el.width + 'px'; - el.style.height = el.left.style.height = el.right.style.height = el.height + 'px'; - this.className = "NFTextarea"; - } - el.unload = function() { - this.parentNode.parentNode.appendChild(this); - this.parentNode.removeChild(this.topRight); - this.parentNode.removeChild(this.bottomRight); - this.parentNode.removeChild(this.right); - this.className = this.oldClassName; - this.style.width = this.style.height = ""; - } - el.onfocus = function() { - this.topLeft.className = "NFTextareaTopLeft NFh"; - this.topRight.className = "NFTextareaTop NFhr"; - this.left.className = "NFTextareaLeftH"; - this.right.className = "NFTextareaRightH"; - this.bottomLeft.className = "NFTextareaBottomLeft NFh"; - this.bottomRight.className = "NFTextareaBottom NFhr"; - } - el.onblur = function() { - this.topLeft.className = "NFTextareaTopLeft"; - this.topRight.className = "NFTextareaTop"; - this.left.className = "NFTextareaLeft"; - this.right.className = "NFTextareaRight"; - this.bottomLeft.className = "NFTextareaBottomLeft"; - this.bottomRight.className = "NFTextareaBottom"; - } -} -function selects(el) { //extend Selects - el.oldClassName = el.className; - el.dummy = document.createElement('div'); - el.dummy.className = "NFSelect"; - el.dummy.style.width = el.offsetWidth + 'px'; - el.dummy.ref = el; - el.left = document.createElement('img'); - el.left.src = imagesPath + "0.png"; - el.left.className = "NFSelectLeft"; - el.right = document.createElement('div'); - el.right.className = "NFSelectRight"; - el.txt = document.createTextNode(el.options[0].text); - el.bg = document.createElement('div'); - el.bg.className = "NFSelectTarget"; - el.bg.style.display = "none"; - el.opt = document.createElement('ul'); - el.opt.className = "NFSelectOptions"; - el.dummy.style.left = findPosX(el) + 'px'; - el.dummy.style.top = findPosY(el) + 'px'; - el.opts = new Array(el.options.length); - el.init = function(pos) { - this.dummy.appendChild(this.left); - this.right.appendChild(this.txt); - this.dummy.appendChild(this.right); - this.bg.appendChild(this.opt); - this.dummy.appendChild(this.bg); - for(var q = 0; q < this.options.length; q++) { - this.opts[q] = new option(this.options[q], q); - this.opt.appendChild(this.options[q].li); - this.options[q].lnk.onclick = function() { - this._onclick(); - this.ref.dummy.getElementsByTagName('div')[0].innerHTML = this.ref.options[this.pos].text; - this.ref.options[this.pos].selected = "selected"; - for(var w = 0; w < this.ref.options.length; w++) {this.ref.options[w].lnk.className = "";} - this.ref.options[this.pos].lnk.className = "NFOptionActive"; - } - } - if(this.options.selectedIndex) { - this.dummy.getElementsByTagName('div')[0].innerHTML = this.options[this.options.selectedIndex].text; - this.options[this.options.selectedIndex].lnk.className = "NFOptionActive"; - } - this.dummy.style.zIndex = 999 - pos; - this.parentNode.insertBefore(this.dummy, this); - this.className = "NFhidden"; - } - el.unload = function() { - this.parentNode.removeChild(this.dummy); - this.className = this.oldClassName; - } - el.dummy.onclick = function() { - var allDivs = document.getElementsByTagName('div'); for(var q = 0; q < allDivs.length; q++) {if((allDivs[q].className == "NFSelectTarget") && (allDivs[q] != this.ref.bg)) {allDivs[q].style.display = "none";}} - if(this.ref.bg.style.display == "none") {this.ref.bg.style.display = "block";} - else {this.ref.bg.style.display = "none";} - if(this.ref.opt.offsetHeight > selectMaxHeight) { - this.ref.bg.style.width = this.ref.offsetWidth - selectRightWidthScroll + 33 + 'px'; - this.ref.opt.style.width = this.ref.offsetWidth - selectRightWidthScroll + 'px'; - } - else { - this.ref.bg.style.width = this.ref.offsetWidth - selectRightWidthSimple + 33 + 'px'; - this.ref.opt.style.width = this.ref.offsetWidth - selectRightWidthSimple + 'px'; - } - } - el.bg.onmouseout = function(e) { - if (!e) var e = window.event; - e.cancelBubble = true; - if (e.stopPropagation) e.stopPropagation(); - var reltg = (e.relatedTarget) ? e.relatedTarget : e.toElement; - if((reltg.nodeName == 'A') || (reltg.nodeName == 'LI') || (reltg.nodeName == 'UL')) return; - if((reltg.nodeName == 'DIV') || (reltg.className == 'NFSelectTarget')) return; - else{this.style.display = "none";} - } - el.dummy.onmouseout = function(e) { - if (!e) var e = window.event; - e.cancelBubble = true; - if (e.stopPropagation) e.stopPropagation(); - var reltg = (e.relatedTarget) ? e.relatedTarget : e.toElement; - if((reltg.nodeName == 'A') || (reltg.nodeName == 'LI') || (reltg.nodeName == 'UL')) return; - if((reltg.nodeName == 'DIV') || (reltg.className == 'NFSelectTarget')) return; - else{this.ref.bg.style.display = "none";} - } - el.onfocus = function() {this.dummy.className += " NFfocused";} - el.onblur = function() {this.dummy.className = this.dummy.className.replace(/ NFfocused/g, "");} - el.onkeydown = function(e) { - if (!e) var e = window.event; - var thecode = e.keyCode; - var active = this.selectedIndex; - switch(thecode){ - case 40: //down - if(active < this.options.length - 1) { - for(var w = 0; w < this.options.length; w++) {this.options[w].lnk.className = "";} - var newOne = active + 1; - this.options[newOne].selected = "selected"; - this.options[newOne].lnk.className = "NFOptionActive"; - this.dummy.getElementsByTagName('div')[0].innerHTML = this.options[newOne].text; - } - return false; - break; - case 38: //up - if(active > 0) { - for(var w = 0; w < this.options.length; w++) {this.options[w].lnk.className = "";} - var newOne = active - 1; - this.options[newOne].selected = "selected"; - this.options[newOne].lnk.className = "NFOptionActive"; - this.dummy.getElementsByTagName('div')[0].innerHTML = this.options[newOne].text; - } - return false; - break; - default: - break; - } - } -} -function multiSelects(el) { //extend Multiple Selects - el.oldClassName = el.className; - el.height = el.offsetHeight; - el.width = el.offsetWidth; - el.topLeft = document.createElement('img'); - el.topLeft.src = imagesPath + "0.png"; - el.topLeft.className = "NFMultiSelectTopLeft"; - el.topRight = document.createElement('div'); - el.topRight.className = "NFMultiSelectTop"; - el.bottomLeft = document.createElement('img'); - el.bottomLeft.src = imagesPath + "0.png"; - el.bottomLeft.className = "NFMultiSelectBottomLeft"; - el.bottomRight = document.createElement('div'); - el.bottomRight.className = "NFMultiSelectBottom"; - el.left = document.createElement('div'); - el.left.className = "NFMultiSelectLeft"; - el.right = document.createElement('div'); - el.right.className = "NFMultiSelectRight"; - el.init = function() { - var top = this.parentNode; - if(this.previousSibling) {var where = this.previousSibling;} - else {var where = top.childNodes[0];} - top.insertBefore(el.topRight, where); - top.insertBefore(el.right, where); - top.insertBefore(el.bottomRight, where); - this.topRight.appendChild(this.topLeft); - this.right.appendChild(this.left); - this.right.appendChild(this); - this.bottomRight.appendChild(this.bottomLeft); - el.style.width = el.topRight.style.width = el.bottomRight.style.width = el.width + 'px'; - el.style.height = el.left.style.height = el.right.style.height = el.height + 'px'; - el.className = "NFMultiSelect"; - } - el.unload = function() { - this.parentNode.parentNode.appendChild(this); - this.parentNode.removeChild(this.topRight); - this.parentNode.removeChild(this.bottomRight); - this.parentNode.removeChild(this.right); - this.className = this.oldClassName; - this.style.width = this.style.height = ""; - } - el.onfocus = function() { - this.topLeft.className = "NFMultiSelectTopLeft NFh"; - this.topRight.className = "NFMultiSelectTop NFhr"; - this.left.className = "NFMultiSelectLeftH"; - this.right.className = "NFMultiSelectRightH"; - this.bottomLeft.className = "NFMultiSelectBottomLeft NFh"; - this.bottomRight.className = "NFMultiSelectBottom NFhr"; - } - el.onblur = function() { - this.topLeft.className = "NFMultiSelectTopLeft"; - this.topRight.className = "NFMultiSelectTop"; - this.left.className = "NFMultiSelectLeft"; - this.right.className = "NFMultiSelectRight"; - this.bottomLeft.className = "NFMultiSelectBottomLeft"; - this.bottomRight.className = "NFMultiSelectBottom"; - } -} -function option(el, no) { //extend Options - el.li = document.createElement('li'); - el.lnk = document.createElement('a'); - el.lnk.href = "javascript:;"; - el.lnk.ref = el.parentNode; - el.lnk.pos = no; - el.lnk._onclick = el.onclick || function () {}; - el.txt = document.createTextNode(el.text); - el.lnk.appendChild(el.txt); - el.li.appendChild(el.lnk); -} - -//Get Position -function findPosY(obj) { - var posTop = 0; - do {posTop += obj.offsetTop;} while (obj = obj.offsetParent); - return posTop; -} -function findPosX(obj) { - var posLeft = 0; - do {posLeft += obj.offsetLeft;} while (obj = obj.offsetParent); - return posLeft; -} -//Get Siblings -function getInputsByName(name) { - var inputs = document.getElementsByTagName("input"); - var w = 0; var results = new Array(); - for(var q = 0; q < inputs.length; q++) {if(inputs[q].name == name) {results[w] = inputs[q]; ++w;}} - return results; -} - -//Add events -var existingLoadEvent = window.onload || function () {}; -var existingResizeEvent = window.onresize || function() {}; -window.onload = function () { - existingLoadEvent(); - NFInit(); -} -window.onresize = function() { - if(resizeTest != document.documentElement.clientHeight) { - existingResizeEvent(); - NFFix(); - } - resizeTest = document.documentElement.clientHeight; -} \ No newline at end of file diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/tweet.php --- a/web/enmi/tweet.php Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,44 +0,0 @@ -getHttpClient($configuration); - $client->setUri('http://twitter.com/statuses/update.json'); - $client->setMethod(Zend_Http_Client::POST); - $client->setParameterPost('status', $_POST['status']); - $response = $client->request(); - - /** - * Check if the json response refers to our tweet details (assume it - * means it was successfully posted). API gurus can correct me. - */ - $data = json_decode($response->getBody()); - $result = $response->getBody(); - if (isset($data->text)) { - $result = 'true'; - } - /** - * Tweet sent (hopefully), redirect back home... - */ - header('Location: ' . URL_ROOT . '?result=' . $result); -} else { - /** - * Mistaken request? Some malfeasant trying something? - */ - exit('Invalid tweet request. Oops. Sorry.'); -} diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi/tweet_ajax.php --- a/web/enmi/tweet_ajax.php Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,45 +0,0 @@ -getHttpClient($configuration); - $client->setUri('http://twitter.com/statuses/update.json'); - $client->setMethod(Zend_Http_Client::POST); - $client->setParameterPost('status', $_POST['status']); - $response = $client->request(); - - /** - * Check if the json response refers to our tweet details (assume it - * means it was successfully posted). API gurus can correct me. - */ - $data = json_decode($response->getBody()); - $result = $response->getBody(); - if (isset($data->text)) { - $result = 'true'; - } - /** - * Tweet sent (hopefully), redirect back home... - */ - //header('Location: ' . URL_ROOT . '?result=' . $result); - echo($result); -} else { - /** - * Mistaken request? Some malfeasant trying something? - */ - exit('Invalid tweet request. Oops. Sorry.'); -} diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi2011-technologie-confiance/config.php --- a/web/enmi2011-technologie-confiance/config.php Wed Jul 27 12:24:43 2011 +0200 +++ b/web/enmi2011-technologie-confiance/config.php Wed Jul 27 12:25:45 2011 +0200 @@ -6,31 +6,43 @@ */ $config = array( - 'root' => 'http://polemictweet.com/', - 'hashtag' => '#rsln', - 'date' => '07.04.2011', - 'heure' => '19h30-21h00', - 'place' => 'Microsoft France', - 'duration' => '4026000', + 'hashtag' => '#enmi', + 'date' => '25.05.2011', + 'heure' => '10h00-12h30', + 'place' => 'ENSCI', + 'duration' => '1699997', - 'title' => "Mercedes Bunz : Les algorithmes ne remplaceront jamais les journalistes", - 'description'=> "", + 'title' => "ENMI 2011 : Les technologies de la confiance", + 'abstract' => '', + 'description'=> "ENMI 2011 : Les technologies de la confiance", - 'link' => 'http://www.rslnmag.fr/blog/2011/4/9/mercedes-bunz_les-algorithmes-ne-remplaceront-jamais-les-journalistes_/', - 'keywords' => 'algorithme, data journalisme, presse, mercedes bunz, rsln, iri', - 'rep' => 'rsln-mercedes-bunz', + 'link' => 'http://amateur.iri.centrepompidou.fr/nouveaumonde/enmi/conf/program/2011_1', + 'keywords' => 'enmi, technologie, confiance', + 'rep' => 'enmi2011-technologie-confiance', 'partenaires'=> " IRI - | RSLN - | MICROSOFT.fr ", + | ENSCI + | Cap Digital + | La Fing + | Alcatel-Lucent + | Institut Telecom ", // After the event - 'metadata' => "http://www.iri.centrepompidou.fr/dev/ldt/ldtplatform/ldt/cljson/id/843fff80-6b50-11e0-8aef-00145ea49a02", - 'player' => "res/metadataplayer/src/js/LdtPlayer.js" + 'metadata' => "http://www.iri.centrepompidou.fr/dev/ldt/ldtplatform/ldt/cljson/id/c609832e-b6e0-11e0-9f0f-00145ea49a02", + 'player' => "res/metadataplayer/src/js/LdtPlayer.js", + 'client_visual' => 'images/big_visuel_rsln_mb.jpg', // optional - relative path + 'head_logo' => 'images/head_logo.gif', // optional - relative path + 'slide_background' => 'images/slide4.jpg', + 'archive_img' => 'images/tail_enmi2011.jpg', + 'archive_title' => "les technologies de la confiance", + 'archive_description' => 'par IRI à l\'ENSCI, préparation ENMI 2011.
le mercredi 25 mai 2011 | 10:00 - 12:30', + + + 'div_height' => 740, + 'player_width' => 650, + 'player_height' => 500, ); -$player_width = 600; -$player_height = 480; ?> diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi2011-technologie-confiance/embed_form.php --- a/web/enmi2011-technologie-confiance/embed_form.php Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,100 +0,0 @@ - - - - - - embed Configuration - - - - - - - - - - - - - - - - -

_("EmbedTitle"); ?>

- -

_("EmbedText"); ?>

- - - - diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi2011-technologie-confiance/images/tail_enmi2011.jpg Binary file web/enmi2011-technologie-confiance/images/tail_enmi2011.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi2011-technologie-confiance/images/tweetExplainBgd.gif Binary file web/enmi2011-technologie-confiance/images/tweetExplainBgd.gif has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi2011-technologie-confiance/player_embed.php --- a/web/enmi2011-technologie-confiance/player_embed.php Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,138 +0,0 @@ - - - - - - RSLN - Polemic player embed page - - - - - - - - - - - - - - - - - - - -
-
-
-
- -
-
-
- - - -
- - -
-
- - diff -r e6b328970ee8 -r ffb0a6d08000 web/enmi2011-technologie-confiance/polemicaltimeline.php --- a/web/enmi2011-technologie-confiance/polemicaltimeline.php Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,222 +0,0 @@ - - - - - - Polemic tweet - <?php echo($config['title']); ?> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
-
-
- -
- - - - - - -
-

_("ClientTitle1 :"); ?>


- _("ExplicationPT"); ?> -
- - - - - - - -
-
- -
- - - - - -
- -
-
- - - - -
- - - diff -r e6b328970ee8 -r ffb0a6d08000 web/fens_FabLab_Design_Metadata/config.php --- a/web/fens_FabLab_Design_Metadata/config.php Wed Jul 27 12:24:43 2011 +0200 +++ b/web/fens_FabLab_Design_Metadata/config.php Wed Jul 27 12:25:45 2011 +0200 @@ -5,33 +5,43 @@ * Please edit the conférence details * */ - -$config = array( - 'root' => 'http://polemictweet.com/', - - 'hashtag' => '#rsln', - 'date' => '07.04.2011', - 'heure' => '19h30-21h00', - 'place' => 'Microsoft France', - 'duration' => '4026000', +$config = array( + 'hashtag' => '#fens', + 'date' => '21.06.2011', + 'heure' => '17h30-19h30', + 'place' => 'IRI - Salle Piazza - Centre Pompidou', + 'duration' => '5628200', - 'title' => "Mercedes Bunz : Les algorithmes ne remplaceront jamais les journalistes", - 'description'=> "", + 'title' => "Futur en Sine : Design Metadata", + 'abstract' => '', + 'description'=> "Cette conférence coordonnée par l’Institut de Recherche et d’innovation du Centre Pompidou a présenté les travaux réalisés lors de deux ateliers, un avec les étudiants de l’ENSCI sur les interfaces de production de méta données et un avec Strate Collège et l’ESILV sur l’utilisation d’interface sans contact dans l’espace urbain. Ces ateliers ont eu pour but d’accompagner concrètement le maquettage et le prototypage des projets des élèves en mettant en place une méthodologie d’open innovation dans un contexte interdisciplinaire.", - 'link' => 'http://www.rslnmag.fr/blog/2011/4/9/mercedes-bunz_les-algorithmes-ne-remplaceront-jamais-les-journalistes_/', - 'keywords' => 'algorithme, data journalisme, presse, mercedes bunz, rsln, iri', - 'rep' => 'rsln-mercedes-bunz', + 'link' => 'http://www.iri.centrepompidou.fr/futur-en-seine-2011/design-metadata-2/', + 'keywords' => 'design, metadata, iri, futur en seine, ensci, strate, esilv', + 'rep' => 'fens_FabLab_Design_Metadata', + 'islive' => true, 'partenaires'=> " IRI - | RSLN - | MICROSOFT.fr ", + | ENSCI + | ESILV + | Strate Collège ", // After the event - 'metadata' => "http://www.iri.centrepompidou.fr/dev/ldt/ldtplatform/ldt/cljson/id/843fff80-6b50-11e0-8aef-00145ea49a02", - 'player' => "res/metadataplayer/src/js/LdtPlayer.js" + 'metadata' => "http://www.iri.centrepompidou.fr/dev/ldt/ldtplatform/ldt/cljson/id/69e7b3e4-a8ae-11e0-85c5-00145ea49a02", + 'player' => "res/metadataplayer/src/js/LdtPlayer.js", + + 'client_visual' => 'images/big_visuel_rsln_mb.jpg', // optional - relative path + 'head_logo' => 'images/head_logo.gif', // optional - relative path + 'slide_background' => 'images/slide4.jpg', + 'archive_img' => 'images/tail_fens_fablab_designmd.jpg', + 'archive_title' => "DESIGN METADATA", + 'archive_description' => 'par IRI au Centre Pompidou
le mardi 21 juin 2011 | 17:00 - 20:00', + + + 'div_height' => 750, + 'player_width' => 650, + 'player_height' => 480, ); -$player_width = 600; -$player_height = 480; ?> diff -r e6b328970ee8 -r ffb0a6d08000 web/fens_FabLab_Design_Metadata/embed_form.php --- a/web/fens_FabLab_Design_Metadata/embed_form.php Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,100 +0,0 @@ - - - - - - embed Configuration - - - - - - - - - - - - - - - - -

_("EmbedTitle"); ?>

- -

_("EmbedText"); ?>

- - - - diff -r e6b328970ee8 -r ffb0a6d08000 web/fens_FabLab_Design_Metadata/images/tail_fens_fablab_designmd.jpg Binary file web/fens_FabLab_Design_Metadata/images/tail_fens_fablab_designmd.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/fens_FabLab_Design_Metadata/images/tweetExplainBgd.gif Binary file web/fens_FabLab_Design_Metadata/images/tweetExplainBgd.gif has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/fens_FabLab_Design_Metadata/player_embed.php --- a/web/fens_FabLab_Design_Metadata/player_embed.php Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,138 +0,0 @@ - - - - - - RSLN - Polemic player embed page - - - - - - - - - - - - - - - - - - - -
-
-
-
- -
-
-
- - - -
- - -
-
- - diff -r e6b328970ee8 -r ffb0a6d08000 web/fens_FabLab_Design_Metadata/polemicaltimeline.php --- a/web/fens_FabLab_Design_Metadata/polemicaltimeline.php Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,222 +0,0 @@ - - - - - - Polemic tweet - <?php echo($config['title']); ?> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
-
-
- -
- - - - - - -
-

_("ClientTitle1 :"); ?>


- _("ExplicationPT"); ?> -
- - - - - - - -
-
- -
- - - - - -
- -
-
- - - - -
- - - diff -r e6b328970ee8 -r ffb0a6d08000 web/fens_FabLab_Design_Metadata/traduction.php --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/web/fens_FabLab_Design_Metadata/traduction.php Wed Jul 27 12:25:45 2011 +0200 @@ -0,0 +1,82 @@ +
+ Cette syntaxe polémique vous a premis de prendre position relativement à l’intervenant ou aux autres participants au débat : +
+ + + + +
++ correspond à un tweet d’assentiment
-- à un tweet de désaccord,
== à un tweet de référence
?? à une question
+ Suite a cette phase d’annotation, vous trouverez à droite de ce texte la version alpha de l'interface de navigation et de représentation de la polémique durant la conférence. +
+ Ce dispositif, outre qu’il approfondit la dimension critique de la discussion avec la salle et les auditeurs présents ou distants, permet ainsi également de pérenniser et de valoriser les commentaires produits en les rendant accessibles en temps différé lors de tout visionnage ultérieur de la vidéo  + "; + +$english['ExplicationPT'] = " + Institute for Research and Innovation (IRI) proposed to you an + experiment and a demonstration of a controversial annotation device + based on twitter. Classifying your tweets allowed us to create a + timeline representing the polemical positions of the audience during + the conference. +

+ This controversy tracking syntax enabled you to take position on the + speaker or other participants points of view in the debate: + + + + + + +
+ ++ corresponds to a tweet of assent
+ -- to a tweet of disagreement,
+ == to a tweet of reference
+ ?? to a question
+ + Following this annotation phase, you will find right to the present + text the alpha version of the browser and controversy representation + interface. +

+ This device, in addition to deepening the critical dimension of the + discussion with the present or distant audience, allows also to + perpetuate and promote the published comments by making them + accessible at any time deferred later viewing of the video + "; + +$japan["ExplicationPT"] = " + Institute for Research and Innovation (IRI) proposed to you an + experiment and a demonstration of a controversial annotation device + based on twitter. Classifying your tweets allowed us to create a + timeline representing the polemical positions of the audience during + the conference. +

+ This controversy tracking syntax enabled you to take position on the + speaker or other participants points of view in the debate: + + + + + + +
+ ++ corresponds to a tweet of assent
+ -- to a tweet of disagreement,
+ == to a tweet of reference
+ ?? to a question
+ + Following this annotation phase, you will find right to the present + text the alpha version of the browser and controversy representation + interface. +

+ This device, in addition to deepening the critical dimension of the + discussion with the present or distant audience, allows also to + perpetuate and promote the published comments by making them + accessible at any time deferred later viewing of the video + "; + +?> \ No newline at end of file diff -r e6b328970ee8 -r ffb0a6d08000 web/images/bgd_player.jpg Binary file web/images/bgd_player.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/images/horizontal.png Binary file web/images/horizontal.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/images/sendusfeedback.png Binary file web/images/sendusfeedback.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/images/tail_clay.jpg Binary file web/images/tail_clay.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/images/tail_enmi2010.jpg Binary file web/images/tail_enmi2010.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/images/tail_mercedes_bunz.jpg Binary file web/images/tail_mercedes_bunz.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/images/tail_opendata.jpg Binary file web/images/tail_opendata.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/index.php --- a/web/index.php Wed Jul 27 12:24:43 2011 +0200 +++ b/web/index.php Wed Jul 27 12:25:45 2011 +0200 @@ -5,7 +5,10 @@ * include some common code (like we did in the 90s) * People still do this? ;) */ -include_once './common.php'; + +include_once dirname(__FILE__).'/common.php'; +include_once dirname(__FILE__).'/'.$C_default_rep.'/config.php'; + /** * Do we already have a valid Access Token or need to go get one? @@ -33,50 +36,38 @@ Polemic tweet - Live Video and Annotation - - - - - - - - - - - + + + + + + - - - - - - - + + + - - - + ' rel='stylesheet' type='text/css'> + ' rel='stylesheet' type='text/css'> + ' rel='stylesheet' type='text/css'> +
-
+
');">

_("4. TitreSlide"); ?>




- _("$C_abstract"); ?> + _($config['abstract'])); ?>

- _("4. Button"); ?> + _("4. Button"); ?>
@@ -208,43 +205,24 @@
-
- -

_("Archive Title :"); ?>

- -
- - - -
Clay Shirky le net, le surplus cognitif
-
- par RSLN à Microsoft France -
le lundi 31 janvier 2011·| 08:30 - 10:30 -
-
+ +
-
- - - -
OPENDATA
-
- par RSLN à Microsoft France -
le jeudi 17 mars 2011 | 14:30 - 17:15 -
-
- -
- - - -
Mercedes Bunz
-
- par RSLN à Microsoft France -
le jeudi 7 avril 2011 | 19:30 - 21:00 +
+

_("Archive Title :"); ?>

+
+ +
+ +
+ +
diff -r e6b328970ee8 -r ffb0a6d08000 web/mashup/config.php --- a/web/mashup/config.php Wed Jul 27 12:24:43 2011 +0200 +++ b/web/mashup/config.php Wed Jul 27 12:25:45 2011 +0200 @@ -5,17 +5,14 @@ * Please edit the conférence details * */ - $config = array( - 'root' => 'http://polemictweet.com/', - 'hashtag' => '#mashup', 'date' => '25.06.2011', 'heure' => '15h00', 'place' => 'Forum des images', - 'duration' => '', 'title' => "Mashup, remix, détournements : nouveaux usages des images sur les réseaux sociaux", + 'abstract' => '', 'description'=> " Par le biais d'internet, les individus expriment, à leurs proches ou à des publics lointains, @@ -36,18 +33,37 @@ 'link' => 'http://www.forumdesimages.fr/fdi/Festivals-et-evenements/MashUp-Film-Festival/Mashup-remix-detournements-nouveaux-usages-des-images-sur-les-reseaux-sociaux', 'keywords' => 'mashup, film, festival, forum des images ', - 'rep' => 'rsln-mercedes-bunz', + 'rep' => 'mashup', + 'islive' => true, 'partenaires'=> " IRI | Forum des images | Inflammable ", // After the event - 'metadata' => "", - 'player' => "res/metadataplayer/src/js/LdtPlayer.js" + 'metadata' => array( + 'conference'=> + array('url'=>"http://www.iri.centrepompidou.fr/dev/ldt/ldtplatform/ldt/cljson/id/b2754186-a0c9-11e0-b8bd-00145ea49a02", 'display'=>'Conférence', 'duration'=>4605808), + 'tableronde'=> + array('url'=>"http://www.iri.centrepompidou.fr/dev/ldt/ldtplatform/ldt/cljson/id/3f877114-a0cc-11e0-bc41-00145ea49a02", 'display'=>'Table Ronde', 'duration'=>5271088) + ), + 'player' => "res/metadataplayer/src/js/LdtPlayer.js", + 'duration' => "4605808", + 'client_visual' => 'images/big_visuel_rsln_mb.jpg', // optional - relative path + 'head_logo' => 'images/head_logo.gif', // optional - relative path + 'slide_background' => 'images/slide4.jpg', + 'archive_img' => array( 'conference' => 'images/tail_mashup_conf.jpg', 'tableronde' => "images/tail_mashup_tr.png"), + 'archive_title' => array( 'conference' => 'Mashup Film Festival - Conférence', 'tableronde' => "Mashup Film Festival - Table Ronde"), + 'archive_description' => array( + 'conference' => 'par Mashup Film Festival au Forum des Images.
le samedi 25 juin 2011 | 15:00 - 17:00', + 'tableronde' => 'par Mashup Film Festival au Forum des Images.
le samedi 25 juin 2011 | 17:00 - 19:00' + ), + + + 'div_height' => 670, + 'player_width' => 650, + 'player_height' => 450, ); -$player_width = 600; -$player_height = 480; ?> diff -r e6b328970ee8 -r ffb0a6d08000 web/mashup/embed_form.php --- a/web/mashup/embed_form.php Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,100 +0,0 @@ - - - - - - embed Configuration - - - - - - - - - - - - - - - - -

_("EmbedTitle"); ?>

- -

_("EmbedText"); ?>

- - - - diff -r e6b328970ee8 -r ffb0a6d08000 web/mashup/images/tail_mashup_conf.jpg Binary file web/mashup/images/tail_mashup_conf.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/mashup/images/tail_mashup_tr.png Binary file web/mashup/images/tail_mashup_tr.png has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/mashup/images/tweetExplainBgd.gif Binary file web/mashup/images/tweetExplainBgd.gif has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/mashup/player_embed.php --- a/web/mashup/player_embed.php Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,138 +0,0 @@ - - - - - - RSLN - Polemic player embed page - - - - - - - - - - - - - - - - - - - -
-
-
-
- -
-
-
- - - -
- - -
-
- - diff -r e6b328970ee8 -r ffb0a6d08000 web/mashup/polemicaltimeline.php --- a/web/mashup/polemicaltimeline.php Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,222 +0,0 @@ - - - - - - Polemic tweet - <?php echo($config['title']); ?> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
-
-
- -
- - - - - - -
-

_("ClientTitle1 :"); ?>


- _("ExplicationPT"); ?> -
- - - - - - - -
-
- -
- - - - - -
- -
-
- - - - -
- - - diff -r e6b328970ee8 -r ffb0a6d08000 web/mashup/traduction.php --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/web/mashup/traduction.php Wed Jul 27 12:25:45 2011 +0200 @@ -0,0 +1,82 @@ +
+ Cette syntaxe polémique vous a premis de prendre position relativement à l’intervenant ou aux autres participants au débat : + + + + + +
++ correspond à un tweet d’assentiment
-- à un tweet de désaccord,
== à un tweet de référence
?? à une question
+ Suite a cette phase d’annotation, vous trouverez à droite de ce texte la version alpha de l'interface de navigation et de représentation de la polémique durant la conférence. +
+ Ce dispositif, outre qu’il approfondit la dimension critique de la discussion avec la salle et les auditeurs présents ou distants, permet ainsi également de pérenniser et de valoriser les commentaires produits en les rendant accessibles en temps différé lors de tout visionnage ultérieur de la vidéo  + "; + +$english['ExplicationPT'] = " + Institute for Research and Innovation (IRI) proposed to you an + experiment and a demonstration of a controversial annotation device + based on twitter. Classifying your tweets allowed us to create a + timeline representing the polemical positions of the audience during + the conference. +

+ This controversy tracking syntax enabled you to take position on the + speaker or other participants points of view in the debate: + + + + + + +
+ ++ corresponds to a tweet of assent
+ -- to a tweet of disagreement,
+ == to a tweet of reference
+ ?? to a question
+ + Following this annotation phase, you will find right to the present + text the alpha version of the browser and controversy representation + interface. +

+ This device, in addition to deepening the critical dimension of the + discussion with the present or distant audience, allows also to + perpetuate and promote the published comments by making them + accessible at any time deferred later viewing of the video + "; + +$japan["ExplicationPT"] = " + Institute for Research and Innovation (IRI) proposed to you an + experiment and a demonstration of a controversial annotation device + based on twitter. Classifying your tweets allowed us to create a + timeline representing the polemical positions of the audience during + the conference. +

+ This controversy tracking syntax enabled you to take position on the + speaker or other participants points of view in the debate: + + + + + + +
+ ++ corresponds to a tweet of assent
+ -- to a tweet of disagreement,
+ == to a tweet of reference
+ ?? to a question
+ + Following this annotation phase, you will find right to the present + text the alpha version of the browser and controversy representation + interface. +

+ This device, in addition to deepening the critical dimension of the + discussion with the present or distant audience, allows also to + perpetuate and promote the published comments by making them + accessible at any time deferred later viewing of the video + "; + +?> \ No newline at end of file diff -r e6b328970ee8 -r ffb0a6d08000 web/player_embed.php --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/web/player_embed.php Wed Jul 27 12:25:45 2011 +0200 @@ -0,0 +1,149 @@ + + + + + + RSLN - Polemic player embed page + + + + + + + + + ' rel='stylesheet' type='text/css'> + ' rel='stylesheet' type='text/css'> + ' rel='stylesheet' type='text/css'> + + + + + + + + + + +
+
+
+
+ +
+
+
+ + + +
+ + +
+
+ + diff -r e6b328970ee8 -r ffb0a6d08000 web/polemicaltimeline.php --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/web/polemicaltimeline.php Wed Jul 27 12:25:45 2011 +0200 @@ -0,0 +1,275 @@ + + + + + + Polemic tweet - <?php echo($config['title']); ?> + + + + + + + + + + + + + + + + + + + + + + + + ' rel='stylesheet' type='text/css'/> + ' rel='stylesheet' type='text/css'/> + ' rel='stylesheet' type='text/css'/> + + + + + + + + +
+ + +
+
+
+
+ +
+ " class="logo"> + + + + + + +
+ + + diff -r e6b328970ee8 -r ffb0a6d08000 web/res/css/custom.css --- a/web/res/css/custom.css Wed Jul 27 12:24:43 2011 +0200 +++ b/web/res/css/custom.css Wed Jul 27 12:25:45 2011 +0200 @@ -33,15 +33,20 @@ .menuLink{text-decoration:none; margin:5px; color:#000} .menuLink:active {text-decoration:none;} .menuLink:visited {text-decoration:none;} -.lang{margin-left:500px;} +.mdselect{width: 150px} +.mdselect select {margin-left:5px; width: 100px} +.lang{margin-left:350px;} +.shortlang{margin-left:300px;} .tweetContainer{position:absolute; margin-top:70px;} .tweetWriter{background-image:url(../../images/tweetWriterBgd.gif);width:359px;height:136px;padding:10px;position:absolute; margin-top:70px;} .tweetWriterTitle{color:4b4b4b;font-family: 'PT Sans Narrow', arial, serif;} .tweetExplain{background-image:url(../../images/tweetExplainBgd.gif);width:359px;height:510px;padding:10px;position:absolute; margin-top:70px;} +#tweetCounter{background-color:transparent;display:inline-block;border:0;border-style:none;font-weight:bold;} +.tweetCounterNegative{color:red;} .tweetReader{width:377px;height:450px;position:absolute; margin-top:225px;border:1px solid #c3c3c3;background:#ffffff;} -.tweetButton{float:right;margin-right:5px;} +.tweetButton{float:right;margin-right:5px;cursor:pointer;} .timelinePlayer{border:1px solid #c3c3c3;width:650px;height:650px;} .videoLivePlayer{border:1px solid #c3c3c3;width:500px;height:375px;} @@ -95,10 +100,29 @@ #negative:active {text-decoration:none;} #negative:visited {text-decoration:none;} +.scrollable { + position:relative; + overflow:hidden; +/* width: 660px;*/ +} + + +.scrollable .items { + /* this cannot be too large */ + width:20000em; + position:absolute; +} + +.item { + float:left; + margin: 0 10px; +} + .introBox{width:880px;height:280px;padding:10px;position:absolute; margin-top:70px;} .aboutBox{background-image:url(../../images/archivesBoxBody.gif);width:900px;position:absolute; margin-top:70px;} -.archivesBox{background-image:url(../../images/archivesBoxBody.gif);width:900px;position:absolute; margin-top:450px;} -.archivesBoxContainer{padding:10px;width:880px;padding-bottom:0px;display:block; } +.archivesBox{background-image:url(../../images/archivesBoxBody.gif);width:900px;height:297px;position:absolute; margin-top:450px;} +.archivesBoxArchive{width:900px;} +.archivesBoxContainer{padding:10px 10px 0 0;width:880px;display:block;height:280px; } .archivesBoxClear { /* generic container (i.e. div) for floating buttons */ overflow: hidden; width: 100%; @@ -109,10 +133,47 @@ .archivesBoxHeader{background-repeat:no-repeat;background-position:left top;background-image:url(../../images/archivesBoxHeader.gif);width:100%;height:3px;} .archivesTitle{color:4b4b4b;font-family: 'PT Sans Narrow', arial, serif;font-size:24px;} -.archivesVideoBox{margin:5px;padding:5px;position:relative;display:inline-block;float:left;border: solid 1px #ccc;background:#f2f2f2;cursor:pointer;} -.AVBtitle{font-weight:bold;font-family: 'PT Sans Narrow', arial, serif; font-size:18px;} +.archivesTitleContainer{float:left;margin-left: 10px;} +.archivesActionsContainer{width:45px;height:30px; float:right;} +.archivesTitleActionsContainer{overflow: auto; width: 100%;} +.archivesVideoBox{margin:5px;padding:5px;position:relative;display:inline-block;float:left;border: solid 1px #ccc;background:#f2f2f2;cursor:pointer;width:270px;overflow:hidden;} +.AVBtitle{font-weight:bold;font-family: 'PT Sans Narrow', arial, serif; font-size:18px;white-space:nowrap;overflow:hidden;} +.AVBtext{white-space:nowrap;overflow:hidden;} .slideTitle{font-size:20px;} .slideText{font-size:15px;} .slides{background-repeat:no-repeat;background-position:right top;} -#minilogo{background-repeat:no-repeat;background-position:left top;background-image:url(../../images/pol_color.gif);width:46px;height:10px;margin-top:50px;z-index:9;position:absolute;margin-left:100px;}} \ No newline at end of file +#minilogo{background-repeat:no-repeat;background-position:left top;background-image:url(../../images/pol_color.gif);width:46px;height:10px;margin-top:50px;z-index:9;position:absolute;margin-left:100px;} + +a.browse { + background: url(../../images/horizontal.png) no-repeat; + display: block; + width: 20px; + height: 20px; + cursor: pointer; + font-size: 1px; +} + +a.right { background-position: 0 -20px; } +a.right:hover { background-position:-20px -20px; } +a.right:active { background-position:-40px -20px; } + + +/* left */ +a.left { margin-left: 0px; } +a.left:hover { background-position:-20px 0; } +a.left:active { background-position:-40px 0; } + +/* disabled navigational button */ +#actions a.disabled { + visibility:hidden !important; +} +/* send us feedback */ +#sendUsFeedBack{ + float:right; + position:absolute; + right:0px; + top:0px; + z-index:999999; + width:100px; +} \ No newline at end of file diff -r e6b328970ee8 -r ffb0a6d08000 web/res/fonts/Geo-Regular.css --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/web/res/fonts/Geo-Regular.css Wed Jul 27 12:25:45 2011 +0200 @@ -0,0 +1,6 @@ +@font-face { + font-family: 'Geo'; + font-style: normal; + font-weight: normal; + src: local('Geo'), local('Geo-Regular'), url('Geo-Regular.woff') format('woff'); +} diff -r e6b328970ee8 -r ffb0a6d08000 web/res/fonts/Geo-Regular.woff Binary file web/res/fonts/Geo-Regular.woff has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/res/fonts/PT_Sans-Narrow-Web-Regular.css --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/web/res/fonts/PT_Sans-Narrow-Web-Regular.css Wed Jul 27 12:25:45 2011 +0200 @@ -0,0 +1,6 @@ +@font-face { + font-family: 'PT Sans Narrow'; + font-style: normal; + font-weight: normal; + src: local('PT Sans Narrow'), local('PTSans-Narrow'), url('PT_Sans-Narrow-Web-Regular.woff') format('woff'); +} diff -r e6b328970ee8 -r ffb0a6d08000 web/res/fonts/PT_Sans-Narrow-Web-Regular.woff Binary file web/res/fonts/PT_Sans-Narrow-Web-Regular.woff has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/res/fonts/PT_Sans-Web-Regular.css --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/web/res/fonts/PT_Sans-Web-Regular.css Wed Jul 27 12:25:45 2011 +0200 @@ -0,0 +1,6 @@ +@font-face { + font-family: 'PT Sans'; + font-style: normal; + font-weight: normal; + src: local('PT Sans'), local('PTSans-Regular'), url('PT_Sans-Web-Regular.woff') format('woff'); +} diff -r e6b328970ee8 -r ffb0a6d08000 web/res/fonts/PT_Sans-Web-Regular.woff Binary file web/res/fonts/PT_Sans-Web-Regular.woff has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/res/js/jquery-1.4.3.min.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/web/res/js/jquery-1.4.3.min.js Wed Jul 27 12:25:45 2011 +0200 @@ -0,0 +1,166 @@ +/*! + * jQuery JavaScript Library v1.4.3 + * http://jquery.com/ + * + * Copyright 2010, John Resig + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * Includes Sizzle.js + * http://sizzlejs.com/ + * Copyright 2010, The Dojo Foundation + * Released under the MIT, BSD, and GPL Licenses. + * + * Date: Thu Oct 14 23:10:06 2010 -0400 + */ +(function(E,A){function U(){return false}function ba(){return true}function ja(a,b,d){d[0].type=a;return c.event.handle.apply(b,d)}function Ga(a){var b,d,e=[],f=[],h,k,l,n,s,v,B,D;k=c.data(this,this.nodeType?"events":"__events__");if(typeof k==="function")k=k.events;if(!(a.liveFired===this||!k||!k.live||a.button&&a.type==="click")){if(a.namespace)D=RegExp("(^|\\.)"+a.namespace.split(".").join("\\.(?:.*\\.)?")+"(\\.|$)");a.liveFired=this;var H=k.live.slice(0);for(n=0;nd)break;a.currentTarget=f.elem;a.data=f.handleObj.data; +a.handleObj=f.handleObj;D=f.handleObj.origHandler.apply(f.elem,arguments);if(D===false||a.isPropagationStopped()){d=f.level;if(D===false)b=false}}return b}}function Y(a,b){return(a&&a!=="*"?a+".":"")+b.replace(Ha,"`").replace(Ia,"&")}function ka(a,b,d){if(c.isFunction(b))return c.grep(a,function(f,h){return!!b.call(f,h,f)===d});else if(b.nodeType)return c.grep(a,function(f){return f===b===d});else if(typeof b==="string"){var e=c.grep(a,function(f){return f.nodeType===1});if(Ja.test(b))return c.filter(b, +e,!d);else b=c.filter(b,e)}return c.grep(a,function(f){return c.inArray(f,b)>=0===d})}function la(a,b){var d=0;b.each(function(){if(this.nodeName===(a[d]&&a[d].nodeName)){var e=c.data(a[d++]),f=c.data(this,e);if(e=e&&e.events){delete f.handle;f.events={};for(var h in e)for(var k in e[h])c.event.add(this,h,e[h][k],e[h][k].data)}}})}function Ka(a,b){b.src?c.ajax({url:b.src,async:false,dataType:"script"}):c.globalEval(b.text||b.textContent||b.innerHTML||"");b.parentNode&&b.parentNode.removeChild(b)} +function ma(a,b,d){var e=b==="width"?a.offsetWidth:a.offsetHeight;if(d==="border")return e;c.each(b==="width"?La:Ma,function(){d||(e-=parseFloat(c.css(a,"padding"+this))||0);if(d==="margin")e+=parseFloat(c.css(a,"margin"+this))||0;else e-=parseFloat(c.css(a,"border"+this+"Width"))||0});return e}function ca(a,b,d,e){if(c.isArray(b)&&b.length)c.each(b,function(f,h){d||Na.test(a)?e(a,h):ca(a+"["+(typeof h==="object"||c.isArray(h)?f:"")+"]",h,d,e)});else if(!d&&b!=null&&typeof b==="object")c.isEmptyObject(b)? +e(a,""):c.each(b,function(f,h){ca(a+"["+f+"]",h,d,e)});else e(a,b)}function S(a,b){var d={};c.each(na.concat.apply([],na.slice(0,b)),function(){d[this]=a});return d}function oa(a){if(!da[a]){var b=c("<"+a+">").appendTo("body"),d=b.css("display");b.remove();if(d==="none"||d==="")d="block";da[a]=d}return da[a]}function ea(a){return c.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:false}var u=E.document,c=function(){function a(){if(!b.isReady){try{u.documentElement.doScroll("left")}catch(i){setTimeout(a, +1);return}b.ready()}}var b=function(i,r){return new b.fn.init(i,r)},d=E.jQuery,e=E.$,f,h=/^(?:[^<]*(<[\w\W]+>)[^>]*$|#([\w\-]+)$)/,k=/\S/,l=/^\s+/,n=/\s+$/,s=/\W/,v=/\d/,B=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,D=/^[\],:{}\s]*$/,H=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,w=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,G=/(?:^|:|,)(?:\s*\[)+/g,M=/(webkit)[ \/]([\w.]+)/,g=/(opera)(?:.*version)?[ \/]([\w.]+)/,j=/(msie) ([\w.]+)/,o=/(mozilla)(?:.*? rv:([\w.]+))?/,m=navigator.userAgent,p=false, +q=[],t,x=Object.prototype.toString,C=Object.prototype.hasOwnProperty,P=Array.prototype.push,N=Array.prototype.slice,R=String.prototype.trim,Q=Array.prototype.indexOf,L={};b.fn=b.prototype={init:function(i,r){var y,z,F;if(!i)return this;if(i.nodeType){this.context=this[0]=i;this.length=1;return this}if(i==="body"&&!r&&u.body){this.context=u;this[0]=u.body;this.selector="body";this.length=1;return this}if(typeof i==="string")if((y=h.exec(i))&&(y[1]||!r))if(y[1]){F=r?r.ownerDocument||r:u;if(z=B.exec(i))if(b.isPlainObject(r)){i= +[u.createElement(z[1])];b.fn.attr.call(i,r,true)}else i=[F.createElement(z[1])];else{z=b.buildFragment([y[1]],[F]);i=(z.cacheable?z.fragment.cloneNode(true):z.fragment).childNodes}return b.merge(this,i)}else{if((z=u.getElementById(y[2]))&&z.parentNode){if(z.id!==y[2])return f.find(i);this.length=1;this[0]=z}this.context=u;this.selector=i;return this}else if(!r&&!s.test(i)){this.selector=i;this.context=u;i=u.getElementsByTagName(i);return b.merge(this,i)}else return!r||r.jquery?(r||f).find(i):b(r).find(i); +else if(b.isFunction(i))return f.ready(i);if(i.selector!==A){this.selector=i.selector;this.context=i.context}return b.makeArray(i,this)},selector:"",jquery:"1.4.3",length:0,size:function(){return this.length},toArray:function(){return N.call(this,0)},get:function(i){return i==null?this.toArray():i<0?this.slice(i)[0]:this[i]},pushStack:function(i,r,y){var z=b();b.isArray(i)?P.apply(z,i):b.merge(z,i);z.prevObject=this;z.context=this.context;if(r==="find")z.selector=this.selector+(this.selector?" ": +"")+y;else if(r)z.selector=this.selector+"."+r+"("+y+")";return z},each:function(i,r){return b.each(this,i,r)},ready:function(i){b.bindReady();if(b.isReady)i.call(u,b);else q&&q.push(i);return this},eq:function(i){return i===-1?this.slice(i):this.slice(i,+i+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(N.apply(this,arguments),"slice",N.call(arguments).join(","))},map:function(i){return this.pushStack(b.map(this,function(r,y){return i.call(r, +y,r)}))},end:function(){return this.prevObject||b(null)},push:P,sort:[].sort,splice:[].splice};b.fn.init.prototype=b.fn;b.extend=b.fn.extend=function(){var i=arguments[0]||{},r=1,y=arguments.length,z=false,F,I,K,J,fa;if(typeof i==="boolean"){z=i;i=arguments[1]||{};r=2}if(typeof i!=="object"&&!b.isFunction(i))i={};if(y===r){i=this;--r}for(;r0)){if(q){for(var r=0;i=q[r++];)i.call(u,b);q=null}b.fn.triggerHandler&&b(u).triggerHandler("ready")}}},bindReady:function(){if(!p){p=true;if(u.readyState==="complete")return setTimeout(b.ready, +1);if(u.addEventListener){u.addEventListener("DOMContentLoaded",t,false);E.addEventListener("load",b.ready,false)}else if(u.attachEvent){u.attachEvent("onreadystatechange",t);E.attachEvent("onload",b.ready);var i=false;try{i=E.frameElement==null}catch(r){}u.documentElement.doScroll&&i&&a()}}},isFunction:function(i){return b.type(i)==="function"},isArray:Array.isArray||function(i){return b.type(i)==="array"},isWindow:function(i){return i&&typeof i==="object"&&"setInterval"in i},isNaN:function(i){return i== +null||!v.test(i)||isNaN(i)},type:function(i){return i==null?String(i):L[x.call(i)]||"object"},isPlainObject:function(i){if(!i||b.type(i)!=="object"||i.nodeType||b.isWindow(i))return false;if(i.constructor&&!C.call(i,"constructor")&&!C.call(i.constructor.prototype,"isPrototypeOf"))return false;for(var r in i);return r===A||C.call(i,r)},isEmptyObject:function(i){for(var r in i)return false;return true},error:function(i){throw i;},parseJSON:function(i){if(typeof i!=="string"||!i)return null;i=b.trim(i); +if(D.test(i.replace(H,"@").replace(w,"]").replace(G,"")))return E.JSON&&E.JSON.parse?E.JSON.parse(i):(new Function("return "+i))();else b.error("Invalid JSON: "+i)},noop:function(){},globalEval:function(i){if(i&&k.test(i)){var r=u.getElementsByTagName("head")[0]||u.documentElement,y=u.createElement("script");y.type="text/javascript";if(b.support.scriptEval)y.appendChild(u.createTextNode(i));else y.text=i;r.insertBefore(y,r.firstChild);r.removeChild(y)}},nodeName:function(i,r){return i.nodeName&&i.nodeName.toUpperCase()=== +r.toUpperCase()},each:function(i,r,y){var z,F=0,I=i.length,K=I===A||b.isFunction(i);if(y)if(K)for(z in i){if(r.apply(i[z],y)===false)break}else for(;F";a=u.createDocumentFragment();a.appendChild(d.firstChild);c.support.checkClone=a.cloneNode(true).cloneNode(true).lastChild.checked;c(function(){var s=u.createElement("div"); +s.style.width=s.style.paddingLeft="1px";u.body.appendChild(s);c.boxModel=c.support.boxModel=s.offsetWidth===2;if("zoom"in s.style){s.style.display="inline";s.style.zoom=1;c.support.inlineBlockNeedsLayout=s.offsetWidth===2;s.style.display="";s.innerHTML="
";c.support.shrinkWrapBlocks=s.offsetWidth!==2}s.innerHTML="
t
";var v=s.getElementsByTagName("td");c.support.reliableHiddenOffsets=v[0].offsetHeight=== +0;v[0].style.display="";v[1].style.display="none";c.support.reliableHiddenOffsets=c.support.reliableHiddenOffsets&&v[0].offsetHeight===0;s.innerHTML="";u.body.removeChild(s).style.display="none"});a=function(s){var v=u.createElement("div");s="on"+s;var B=s in v;if(!B){v.setAttribute(s,"return;");B=typeof v[s]==="function"}return B};c.support.submitBubbles=a("submit");c.support.changeBubbles=a("change");a=b=d=f=h=null}})();c.props={"for":"htmlFor","class":"className",readonly:"readOnly",maxlength:"maxLength", +cellspacing:"cellSpacing",rowspan:"rowSpan",colspan:"colSpan",tabindex:"tabIndex",usemap:"useMap",frameborder:"frameBorder"};var pa={},Oa=/^(?:\{.*\}|\[.*\])$/;c.extend({cache:{},uuid:0,expando:"jQuery"+c.now(),noData:{embed:true,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:true},data:function(a,b,d){if(c.acceptData(a)){a=a==E?pa:a;var e=a.nodeType,f=e?a[c.expando]:null,h=c.cache;if(!(e&&!f&&typeof b==="string"&&d===A)){if(e)f||(a[c.expando]=f=++c.uuid);else h=a;if(typeof b==="object")if(e)h[f]= +c.extend(h[f],b);else c.extend(h,b);else if(e&&!h[f])h[f]={};a=e?h[f]:h;if(d!==A)a[b]=d;return typeof b==="string"?a[b]:a}}},removeData:function(a,b){if(c.acceptData(a)){a=a==E?pa:a;var d=a.nodeType,e=d?a[c.expando]:a,f=c.cache,h=d?f[e]:e;if(b){if(h){delete h[b];d&&c.isEmptyObject(h)&&c.removeData(a)}}else if(d&&c.support.deleteExpando)delete a[c.expando];else if(a.removeAttribute)a.removeAttribute(c.expando);else if(d)delete f[e];else for(var k in a)delete a[k]}},acceptData:function(a){if(a.nodeName){var b= +c.noData[a.nodeName.toLowerCase()];if(b)return!(b===true||a.getAttribute("classid")!==b)}return true}});c.fn.extend({data:function(a,b){if(typeof a==="undefined")return this.length?c.data(this[0]):null;else if(typeof a==="object")return this.each(function(){c.data(this,a)});var d=a.split(".");d[1]=d[1]?"."+d[1]:"";if(b===A){var e=this.triggerHandler("getData"+d[1]+"!",[d[0]]);if(e===A&&this.length){e=c.data(this[0],a);if(e===A&&this[0].nodeType===1){e=this[0].getAttribute("data-"+a);if(typeof e=== +"string")try{e=e==="true"?true:e==="false"?false:e==="null"?null:!c.isNaN(e)?parseFloat(e):Oa.test(e)?c.parseJSON(e):e}catch(f){}else e=A}}return e===A&&d[1]?this.data(d[0]):e}else return this.each(function(){var h=c(this),k=[d[0],b];h.triggerHandler("setData"+d[1]+"!",k);c.data(this,a,b);h.triggerHandler("changeData"+d[1]+"!",k)})},removeData:function(a){return this.each(function(){c.removeData(this,a)})}});c.extend({queue:function(a,b,d){if(a){b=(b||"fx")+"queue";var e=c.data(a,b);if(!d)return e|| +[];if(!e||c.isArray(d))e=c.data(a,b,c.makeArray(d));else e.push(d);return e}},dequeue:function(a,b){b=b||"fx";var d=c.queue(a,b),e=d.shift();if(e==="inprogress")e=d.shift();if(e){b==="fx"&&d.unshift("inprogress");e.call(a,function(){c.dequeue(a,b)})}}});c.fn.extend({queue:function(a,b){if(typeof a!=="string"){b=a;a="fx"}if(b===A)return c.queue(this[0],a);return this.each(function(){var d=c.queue(this,a,b);a==="fx"&&d[0]!=="inprogress"&&c.dequeue(this,a)})},dequeue:function(a){return this.each(function(){c.dequeue(this, +a)})},delay:function(a,b){a=c.fx?c.fx.speeds[a]||a:a;b=b||"fx";return this.queue(b,function(){var d=this;setTimeout(function(){c.dequeue(d,b)},a)})},clearQueue:function(a){return this.queue(a||"fx",[])}});var qa=/[\n\t]/g,ga=/\s+/,Pa=/\r/g,Qa=/^(?:href|src|style)$/,Ra=/^(?:button|input)$/i,Sa=/^(?:button|input|object|select|textarea)$/i,Ta=/^a(?:rea)?$/i,ra=/^(?:radio|checkbox)$/i;c.fn.extend({attr:function(a,b){return c.access(this,a,b,true,c.attr)},removeAttr:function(a){return this.each(function(){c.attr(this, +a,"");this.nodeType===1&&this.removeAttribute(a)})},addClass:function(a){if(c.isFunction(a))return this.each(function(s){var v=c(this);v.addClass(a.call(this,s,v.attr("class")))});if(a&&typeof a==="string")for(var b=(a||"").split(ga),d=0,e=this.length;d-1)return true;return false}, +val:function(a){if(!arguments.length){var b=this[0];if(b){if(c.nodeName(b,"option")){var d=b.attributes.value;return!d||d.specified?b.value:b.text}if(c.nodeName(b,"select")){var e=b.selectedIndex;d=[];var f=b.options;b=b.type==="select-one";if(e<0)return null;var h=b?e:0;for(e=b?e+1:f.length;h=0;else if(c.nodeName(this,"select")){var B=c.makeArray(v);c("option",this).each(function(){this.selected= +c.inArray(c(this).val(),B)>=0});if(!B.length)this.selectedIndex=-1}else this.value=v}})}});c.extend({attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},attr:function(a,b,d,e){if(!a||a.nodeType===3||a.nodeType===8)return A;if(e&&b in c.attrFn)return c(a)[b](d);e=a.nodeType!==1||!c.isXMLDoc(a);var f=d!==A;b=e&&c.props[b]||b;if(a.nodeType===1){var h=Qa.test(b);if((b in a||a[b]!==A)&&e&&!h){if(f){b==="type"&&Ra.test(a.nodeName)&&a.parentNode&&c.error("type property can't be changed"); +if(d===null)a.nodeType===1&&a.removeAttribute(b);else a[b]=d}if(c.nodeName(a,"form")&&a.getAttributeNode(b))return a.getAttributeNode(b).nodeValue;if(b==="tabIndex")return(b=a.getAttributeNode("tabIndex"))&&b.specified?b.value:Sa.test(a.nodeName)||Ta.test(a.nodeName)&&a.href?0:A;return a[b]}if(!c.support.style&&e&&b==="style"){if(f)a.style.cssText=""+d;return a.style.cssText}f&&a.setAttribute(b,""+d);if(!a.attributes[b]&&a.hasAttribute&&!a.hasAttribute(b))return A;a=!c.support.hrefNormalized&&e&& +h?a.getAttribute(b,2):a.getAttribute(b);return a===null?A:a}}});var X=/\.(.*)$/,ha=/^(?:textarea|input|select)$/i,Ha=/\./g,Ia=/ /g,Ua=/[^\w\s.|`]/g,Va=function(a){return a.replace(Ua,"\\$&")},sa={focusin:0,focusout:0};c.event={add:function(a,b,d,e){if(!(a.nodeType===3||a.nodeType===8)){if(c.isWindow(a)&&a!==E&&!a.frameElement)a=E;if(d===false)d=U;var f,h;if(d.handler){f=d;d=f.handler}if(!d.guid)d.guid=c.guid++;if(h=c.data(a)){var k=a.nodeType?"events":"__events__",l=h[k],n=h.handle;if(typeof l=== +"function"){n=l.handle;l=l.events}else if(!l){a.nodeType||(h[k]=h=function(){});h.events=l={}}if(!n)h.handle=n=function(){return typeof c!=="undefined"&&!c.event.triggered?c.event.handle.apply(n.elem,arguments):A};n.elem=a;b=b.split(" ");for(var s=0,v;k=b[s++];){h=f?c.extend({},f):{handler:d,data:e};if(k.indexOf(".")>-1){v=k.split(".");k=v.shift();h.namespace=v.slice(0).sort().join(".")}else{v=[];h.namespace=""}h.type=k;if(!h.guid)h.guid=d.guid;var B=l[k],D=c.event.special[k]||{};if(!B){B=l[k]=[]; +if(!D.setup||D.setup.call(a,e,v,n)===false)if(a.addEventListener)a.addEventListener(k,n,false);else a.attachEvent&&a.attachEvent("on"+k,n)}if(D.add){D.add.call(a,h);if(!h.handler.guid)h.handler.guid=d.guid}B.push(h);c.event.global[k]=true}a=null}}},global:{},remove:function(a,b,d,e){if(!(a.nodeType===3||a.nodeType===8)){if(d===false)d=U;var f,h,k=0,l,n,s,v,B,D,H=a.nodeType?"events":"__events__",w=c.data(a),G=w&&w[H];if(w&&G){if(typeof G==="function"){w=G;G=G.events}if(b&&b.type){d=b.handler;b=b.type}if(!b|| +typeof b==="string"&&b.charAt(0)==="."){b=b||"";for(f in G)c.event.remove(a,f+b)}else{for(b=b.split(" ");f=b[k++];){v=f;l=f.indexOf(".")<0;n=[];if(!l){n=f.split(".");f=n.shift();s=RegExp("(^|\\.)"+c.map(n.slice(0).sort(),Va).join("\\.(?:.*\\.)?")+"(\\.|$)")}if(B=G[f])if(d){v=c.event.special[f]||{};for(h=e||0;h=0){a.type= +f=f.slice(0,-1);a.exclusive=true}if(!d){a.stopPropagation();c.event.global[f]&&c.each(c.cache,function(){this.events&&this.events[f]&&c.event.trigger(a,b,this.handle.elem)})}if(!d||d.nodeType===3||d.nodeType===8)return A;a.result=A;a.target=d;b=c.makeArray(b);b.unshift(a)}a.currentTarget=d;(e=d.nodeType?c.data(d,"handle"):(c.data(d,"__events__")||{}).handle)&&e.apply(d,b);e=d.parentNode||d.ownerDocument;try{if(!(d&&d.nodeName&&c.noData[d.nodeName.toLowerCase()]))if(d["on"+f]&&d["on"+f].apply(d,b)=== +false){a.result=false;a.preventDefault()}}catch(h){}if(!a.isPropagationStopped()&&e)c.event.trigger(a,b,e,true);else if(!a.isDefaultPrevented()){e=a.target;var k,l=f.replace(X,""),n=c.nodeName(e,"a")&&l==="click",s=c.event.special[l]||{};if((!s._default||s._default.call(d,a)===false)&&!n&&!(e&&e.nodeName&&c.noData[e.nodeName.toLowerCase()])){try{if(e[l]){if(k=e["on"+l])e["on"+l]=null;c.event.triggered=true;e[l]()}}catch(v){}if(k)e["on"+l]=k;c.event.triggered=false}}},handle:function(a){var b,d,e; +d=[];var f,h=c.makeArray(arguments);a=h[0]=c.event.fix(a||E.event);a.currentTarget=this;b=a.type.indexOf(".")<0&&!a.exclusive;if(!b){e=a.type.split(".");a.type=e.shift();d=e.slice(0).sort();e=RegExp("(^|\\.)"+d.join("\\.(?:.*\\.)?")+"(\\.|$)")}a.namespace=a.namespace||d.join(".");f=c.data(this,this.nodeType?"events":"__events__");if(typeof f==="function")f=f.events;d=(f||{})[a.type];if(f&&d){d=d.slice(0);f=0;for(var k=d.length;f-1?c.map(a.options,function(e){return e.selected}).join("-"):"";else if(a.nodeName.toLowerCase()==="select")d=a.selectedIndex;return d},Z=function(a,b){var d=a.target,e,f;if(!(!ha.test(d.nodeName)||d.readOnly)){e=c.data(d,"_change_data");f=va(d);if(a.type!=="focusout"||d.type!=="radio")c.data(d,"_change_data",f);if(!(e===A||f===e))if(e!=null||f){a.type="change";a.liveFired= +A;return c.event.trigger(a,b,d)}}};c.event.special.change={filters:{focusout:Z,beforedeactivate:Z,click:function(a){var b=a.target,d=b.type;if(d==="radio"||d==="checkbox"||b.nodeName.toLowerCase()==="select")return Z.call(this,a)},keydown:function(a){var b=a.target,d=b.type;if(a.keyCode===13&&b.nodeName.toLowerCase()!=="textarea"||a.keyCode===32&&(d==="checkbox"||d==="radio")||d==="select-multiple")return Z.call(this,a)},beforeactivate:function(a){a=a.target;c.data(a,"_change_data",va(a))}},setup:function(){if(this.type=== +"file")return false;for(var a in V)c.event.add(this,a+".specialChange",V[a]);return ha.test(this.nodeName)},teardown:function(){c.event.remove(this,".specialChange");return ha.test(this.nodeName)}};V=c.event.special.change.filters;V.focus=V.beforeactivate}u.addEventListener&&c.each({focus:"focusin",blur:"focusout"},function(a,b){function d(e){e=c.event.fix(e);e.type=b;return c.event.trigger(e,null,e.target)}c.event.special[b]={setup:function(){sa[b]++===0&&u.addEventListener(a,d,true)},teardown:function(){--sa[b]=== +0&&u.removeEventListener(a,d,true)}}});c.each(["bind","one"],function(a,b){c.fn[b]=function(d,e,f){if(typeof d==="object"){for(var h in d)this[b](h,e,d[h],f);return this}if(c.isFunction(e)||e===false){f=e;e=A}var k=b==="one"?c.proxy(f,function(n){c(this).unbind(n,k);return f.apply(this,arguments)}):f;if(d==="unload"&&b!=="one")this.one(d,e,f);else{h=0;for(var l=this.length;h0?this.bind(b,d,e):this.trigger(b)};if(c.attrFn)c.attrFn[b]=true});E.attachEvent&&!E.addEventListener&&c(E).bind("unload",function(){for(var a in c.cache)if(c.cache[a].handle)try{c.event.remove(c.cache[a].handle.elem)}catch(b){}}); +(function(){function a(g,j,o,m,p,q){p=0;for(var t=m.length;p0){C=x;break}}x=x[g]}m[p]=C}}}var d=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,e=0,f=Object.prototype.toString,h=false,k=true;[0,0].sort(function(){k=false;return 0});var l=function(g,j,o,m){o=o||[];var p=j=j||u;if(j.nodeType!==1&&j.nodeType!==9)return[];if(!g||typeof g!=="string")return o;var q=[],t,x,C,P,N=true,R=l.isXML(j),Q=g,L;do{d.exec("");if(t=d.exec(Q)){Q=t[3];q.push(t[1]);if(t[2]){P=t[3]; +break}}}while(t);if(q.length>1&&s.exec(g))if(q.length===2&&n.relative[q[0]])x=M(q[0]+q[1],j);else for(x=n.relative[q[0]]?[j]:l(q.shift(),j);q.length;){g=q.shift();if(n.relative[g])g+=q.shift();x=M(g,x)}else{if(!m&&q.length>1&&j.nodeType===9&&!R&&n.match.ID.test(q[0])&&!n.match.ID.test(q[q.length-1])){t=l.find(q.shift(),j,R);j=t.expr?l.filter(t.expr,t.set)[0]:t.set[0]}if(j){t=m?{expr:q.pop(),set:D(m)}:l.find(q.pop(),q.length===1&&(q[0]==="~"||q[0]==="+")&&j.parentNode?j.parentNode:j,R);x=t.expr?l.filter(t.expr, +t.set):t.set;if(q.length>0)C=D(x);else N=false;for(;q.length;){t=L=q.pop();if(n.relative[L])t=q.pop();else L="";if(t==null)t=j;n.relative[L](C,t,R)}}else C=[]}C||(C=x);C||l.error(L||g);if(f.call(C)==="[object Array]")if(N)if(j&&j.nodeType===1)for(g=0;C[g]!=null;g++){if(C[g]&&(C[g]===true||C[g].nodeType===1&&l.contains(j,C[g])))o.push(x[g])}else for(g=0;C[g]!=null;g++)C[g]&&C[g].nodeType===1&&o.push(x[g]);else o.push.apply(o,C);else D(C,o);if(P){l(P,p,o,m);l.uniqueSort(o)}return o};l.uniqueSort=function(g){if(w){h= +k;g.sort(w);if(h)for(var j=1;j0};l.find=function(g,j,o){var m;if(!g)return[];for(var p=0,q=n.order.length;p":function(g,j){var o=typeof j==="string",m,p=0,q=g.length;if(o&&!/\W/.test(j))for(j=j.toLowerCase();p=0))o||m.push(t);else if(o)j[q]=false;return false},ID:function(g){return g[1].replace(/\\/g,"")},TAG:function(g){return g[1].toLowerCase()},CHILD:function(g){if(g[1]==="nth"){var j=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(g[2]==="even"&&"2n"||g[2]==="odd"&&"2n+1"||!/\D/.test(g[2])&&"0n+"+g[2]||g[2]);g[2]=j[1]+(j[2]||1)-0;g[3]=j[3]-0}g[0]=e++;return g},ATTR:function(g,j,o, +m,p,q){j=g[1].replace(/\\/g,"");if(!q&&n.attrMap[j])g[1]=n.attrMap[j];if(g[2]==="~=")g[4]=" "+g[4]+" ";return g},PSEUDO:function(g,j,o,m,p){if(g[1]==="not")if((d.exec(g[3])||"").length>1||/^\w/.test(g[3]))g[3]=l(g[3],null,null,j);else{g=l.filter(g[3],j,o,true^p);o||m.push.apply(m,g);return false}else if(n.match.POS.test(g[0])||n.match.CHILD.test(g[0]))return true;return g},POS:function(g){g.unshift(true);return g}},filters:{enabled:function(g){return g.disabled===false&&g.type!=="hidden"},disabled:function(g){return g.disabled=== +true},checked:function(g){return g.checked===true},selected:function(g){return g.selected===true},parent:function(g){return!!g.firstChild},empty:function(g){return!g.firstChild},has:function(g,j,o){return!!l(o[3],g).length},header:function(g){return/h\d/i.test(g.nodeName)},text:function(g){return"text"===g.type},radio:function(g){return"radio"===g.type},checkbox:function(g){return"checkbox"===g.type},file:function(g){return"file"===g.type},password:function(g){return"password"===g.type},submit:function(g){return"submit"=== +g.type},image:function(g){return"image"===g.type},reset:function(g){return"reset"===g.type},button:function(g){return"button"===g.type||g.nodeName.toLowerCase()==="button"},input:function(g){return/input|select|textarea|button/i.test(g.nodeName)}},setFilters:{first:function(g,j){return j===0},last:function(g,j,o,m){return j===m.length-1},even:function(g,j){return j%2===0},odd:function(g,j){return j%2===1},lt:function(g,j,o){return jo[3]-0},nth:function(g,j,o){return o[3]- +0===j},eq:function(g,j,o){return o[3]-0===j}},filter:{PSEUDO:function(g,j,o,m){var p=j[1],q=n.filters[p];if(q)return q(g,o,j,m);else if(p==="contains")return(g.textContent||g.innerText||l.getText([g])||"").indexOf(j[3])>=0;else if(p==="not"){j=j[3];o=0;for(m=j.length;o=0}},ID:function(g,j){return g.nodeType===1&&g.getAttribute("id")===j},TAG:function(g,j){return j==="*"&&g.nodeType===1||g.nodeName.toLowerCase()=== +j},CLASS:function(g,j){return(" "+(g.className||g.getAttribute("class"))+" ").indexOf(j)>-1},ATTR:function(g,j){var o=j[1];o=n.attrHandle[o]?n.attrHandle[o](g):g[o]!=null?g[o]:g.getAttribute(o);var m=o+"",p=j[2],q=j[4];return o==null?p==="!=":p==="="?m===q:p==="*="?m.indexOf(q)>=0:p==="~="?(" "+m+" ").indexOf(q)>=0:!q?m&&o!==false:p==="!="?m!==q:p==="^="?m.indexOf(q)===0:p==="$="?m.substr(m.length-q.length)===q:p==="|="?m===q||m.substr(0,q.length+1)===q+"-":false},POS:function(g,j,o,m){var p=n.setFilters[j[2]]; +if(p)return p(g,o,j,m)}}},s=n.match.POS,v=function(g,j){return"\\"+(j-0+1)},B;for(B in n.match){n.match[B]=RegExp(n.match[B].source+/(?![^\[]*\])(?![^\(]*\))/.source);n.leftMatch[B]=RegExp(/(^(?:.|\r|\n)*?)/.source+n.match[B].source.replace(/\\(\d+)/g,v))}var D=function(g,j){g=Array.prototype.slice.call(g,0);if(j){j.push.apply(j,g);return j}return g};try{Array.prototype.slice.call(u.documentElement.childNodes,0)}catch(H){D=function(g,j){var o=j||[],m=0;if(f.call(g)==="[object Array]")Array.prototype.push.apply(o, +g);else if(typeof g.length==="number")for(var p=g.length;m";var o=u.documentElement;o.insertBefore(g,o.firstChild);if(u.getElementById(j)){n.find.ID=function(m,p,q){if(typeof p.getElementById!=="undefined"&&!q)return(p=p.getElementById(m[1]))?p.id===m[1]||typeof p.getAttributeNode!=="undefined"&&p.getAttributeNode("id").nodeValue===m[1]?[p]:A:[]};n.filter.ID=function(m,p){var q=typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id");return m.nodeType===1&&q&&q.nodeValue===p}}o.removeChild(g); +o=g=null})();(function(){var g=u.createElement("div");g.appendChild(u.createComment(""));if(g.getElementsByTagName("*").length>0)n.find.TAG=function(j,o){var m=o.getElementsByTagName(j[1]);if(j[1]==="*"){for(var p=[],q=0;m[q];q++)m[q].nodeType===1&&p.push(m[q]);m=p}return m};g.innerHTML="";if(g.firstChild&&typeof g.firstChild.getAttribute!=="undefined"&&g.firstChild.getAttribute("href")!=="#")n.attrHandle.href=function(j){return j.getAttribute("href",2)};g=null})();u.querySelectorAll&& +function(){var g=l,j=u.createElement("div");j.innerHTML="

";if(!(j.querySelectorAll&&j.querySelectorAll(".TEST").length===0)){l=function(m,p,q,t){p=p||u;if(!t&&!l.isXML(p))if(p.nodeType===9)try{return D(p.querySelectorAll(m),q)}catch(x){}else if(p.nodeType===1&&p.nodeName.toLowerCase()!=="object"){var C=p.id,P=p.id="__sizzle__";try{return D(p.querySelectorAll("#"+P+" "+m),q)}catch(N){}finally{if(C)p.id=C;else p.removeAttribute("id")}}return g(m,p,q,t)};for(var o in g)l[o]=g[o]; +j=null}}();(function(){var g=u.documentElement,j=g.matchesSelector||g.mozMatchesSelector||g.webkitMatchesSelector||g.msMatchesSelector,o=false;try{j.call(u.documentElement,":sizzle")}catch(m){o=true}if(j)l.matchesSelector=function(p,q){try{if(o||!n.match.PSEUDO.test(q))return j.call(p,q)}catch(t){}return l(q,null,null,[p]).length>0}})();(function(){var g=u.createElement("div");g.innerHTML="
";if(!(!g.getElementsByClassName||g.getElementsByClassName("e").length=== +0)){g.lastChild.className="e";if(g.getElementsByClassName("e").length!==1){n.order.splice(1,0,"CLASS");n.find.CLASS=function(j,o,m){if(typeof o.getElementsByClassName!=="undefined"&&!m)return o.getElementsByClassName(j[1])};g=null}}})();l.contains=u.documentElement.contains?function(g,j){return g!==j&&(g.contains?g.contains(j):true)}:function(g,j){return!!(g.compareDocumentPosition(j)&16)};l.isXML=function(g){return(g=(g?g.ownerDocument||g:0).documentElement)?g.nodeName!=="HTML":false};var M=function(g, +j){for(var o=[],m="",p,q=j.nodeType?[j]:j;p=n.match.PSEUDO.exec(g);){m+=p[0];g=g.replace(n.match.PSEUDO,"")}g=n.relative[g]?g+"*":g;p=0;for(var t=q.length;p0)for(var h=d;h0},closest:function(a, +b){var d=[],e,f,h=this[0];if(c.isArray(a)){var k={},l,n=1;if(h&&a.length){e=0;for(f=a.length;e-1:c(h).is(e))d.push({selector:l,elem:h,level:n})}h=h.parentNode;n++}}return d}k=$a.test(a)?c(a,b||this.context):null;e=0;for(f=this.length;e-1:c.find.matchesSelector(h,a)){d.push(h);break}else{h=h.parentNode;if(!h|| +!h.ownerDocument||h===b)break}d=d.length>1?c.unique(d):d;return this.pushStack(d,"closest",a)},index:function(a){if(!a||typeof a==="string")return c.inArray(this[0],a?c(a):this.parent().children());return c.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var d=typeof a==="string"?c(a,b||this.context):c.makeArray(a),e=c.merge(this.get(),d);return this.pushStack(!d[0]||!d[0].parentNode||d[0].parentNode.nodeType===11||!e[0]||!e[0].parentNode||e[0].parentNode.nodeType===11?e:c.unique(e))},andSelf:function(){return this.add(this.prevObject)}}); +c.each({parent:function(a){return(a=a.parentNode)&&a.nodeType!==11?a:null},parents:function(a){return c.dir(a,"parentNode")},parentsUntil:function(a,b,d){return c.dir(a,"parentNode",d)},next:function(a){return c.nth(a,2,"nextSibling")},prev:function(a){return c.nth(a,2,"previousSibling")},nextAll:function(a){return c.dir(a,"nextSibling")},prevAll:function(a){return c.dir(a,"previousSibling")},nextUntil:function(a,b,d){return c.dir(a,"nextSibling",d)},prevUntil:function(a,b,d){return c.dir(a,"previousSibling", +d)},siblings:function(a){return c.sibling(a.parentNode.firstChild,a)},children:function(a){return c.sibling(a.firstChild)},contents:function(a){return c.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:c.makeArray(a.childNodes)}},function(a,b){c.fn[a]=function(d,e){var f=c.map(this,b,d);Wa.test(a)||(e=d);if(e&&typeof e==="string")f=c.filter(e,f);f=this.length>1?c.unique(f):f;if((this.length>1||Ya.test(e))&&Xa.test(a))f=f.reverse();return this.pushStack(f,a,Za.call(arguments).join(","))}}); +c.extend({filter:function(a,b,d){if(d)a=":not("+a+")";return b.length===1?c.find.matchesSelector(b[0],a)?[b[0]]:[]:c.find.matches(a,b)},dir:function(a,b,d){var e=[];for(a=a[b];a&&a.nodeType!==9&&(d===A||a.nodeType!==1||!c(a).is(d));){a.nodeType===1&&e.push(a);a=a[b]}return e},nth:function(a,b,d){b=b||1;for(var e=0;a;a=a[d])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){for(var d=[];a;a=a.nextSibling)a.nodeType===1&&a!==b&&d.push(a);return d}});var xa=/ jQuery\d+="(?:\d+|null)"/g, +$=/^\s+/,ya=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,za=/<([\w:]+)/,ab=/\s]+\/)>/g,O={option:[1,""],legend:[1,"
","
"],thead:[1,"","
"],tr:[2,"","
"],td:[3,"","
"],col:[2,"","
"], +area:[1,"",""],_default:[0,"",""]};O.optgroup=O.option;O.tbody=O.tfoot=O.colgroup=O.caption=O.thead;O.th=O.td;if(!c.support.htmlSerialize)O._default=[1,"div
","
"];c.fn.extend({text:function(a){if(c.isFunction(a))return this.each(function(b){var d=c(this);d.text(a.call(this,b,d.text()))});if(typeof a!=="object"&&a!==A)return this.empty().append((this[0]&&this[0].ownerDocument||u).createTextNode(a));return c.text(this)},wrapAll:function(a){if(c.isFunction(a))return this.each(function(d){c(this).wrapAll(a.call(this, +d))});if(this[0]){var b=c(a,this[0].ownerDocument).eq(0).clone(true);this[0].parentNode&&b.insertBefore(this[0]);b.map(function(){for(var d=this;d.firstChild&&d.firstChild.nodeType===1;)d=d.firstChild;return d}).append(this)}return this},wrapInner:function(a){if(c.isFunction(a))return this.each(function(b){c(this).wrapInner(a.call(this,b))});return this.each(function(){var b=c(this),d=b.contents();d.length?d.wrapAll(a):b.append(a)})},wrap:function(a){return this.each(function(){c(this).wrapAll(a)})}, +unwrap:function(){return this.parent().each(function(){c.nodeName(this,"body")||c(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b,this)});else if(arguments.length){var a= +c(arguments[0]);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b,this.nextSibling)});else if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,c(arguments[0]).toArray());return a}},remove:function(a,b){for(var d=0,e;(e=this[d])!=null;d++)if(!a||c.filter(a,[e]).length){if(!b&&e.nodeType===1){c.cleanData(e.getElementsByTagName("*")); +c.cleanData([e])}e.parentNode&&e.parentNode.removeChild(e)}return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++)for(b.nodeType===1&&c.cleanData(b.getElementsByTagName("*"));b.firstChild;)b.removeChild(b.firstChild);return this},clone:function(a){var b=this.map(function(){if(!c.support.noCloneEvent&&!c.isXMLDoc(this)){var d=this.outerHTML,e=this.ownerDocument;if(!d){d=e.createElement("div");d.appendChild(this.cloneNode(true));d=d.innerHTML}return c.clean([d.replace(xa,"").replace(cb,'="$1">').replace($, +"")],e)[0]}else return this.cloneNode(true)});if(a===true){la(this,b);la(this.find("*"),b.find("*"))}return b},html:function(a){if(a===A)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(xa,""):null;else if(typeof a==="string"&&!Aa.test(a)&&(c.support.leadingWhitespace||!$.test(a))&&!O[(za.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(ya,"<$1>");try{for(var b=0,d=this.length;b0||e.cacheable||this.length>1?l.cloneNode(true):l)}k.length&&c.each(k,Ka)}return this}});c.buildFragment=function(a,b,d){var e,f,h;b=b&&b[0]?b[0].ownerDocument||b[0]:u;if(a.length===1&&typeof a[0]==="string"&&a[0].length<512&&b===u&&!Aa.test(a[0])&&(c.support.checkClone|| +!Ba.test(a[0]))){f=true;if(h=c.fragments[a[0]])if(h!==1)e=h}if(!e){e=b.createDocumentFragment();c.clean(a,b,e,d)}if(f)c.fragments[a[0]]=h?e:1;return{fragment:e,cacheable:f}};c.fragments={};c.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){c.fn[a]=function(d){var e=[];d=c(d);var f=this.length===1&&this[0].parentNode;if(f&&f.nodeType===11&&f.childNodes.length===1&&d.length===1){d[b](this[0]);return this}else{f=0;for(var h= +d.length;f0?this.clone(true):this).get();c(d[f])[b](k);e=e.concat(k)}return this.pushStack(e,a,d.selector)}}});c.extend({clean:function(a,b,d,e){b=b||u;if(typeof b.createElement==="undefined")b=b.ownerDocument||b[0]&&b[0].ownerDocument||u;for(var f=[],h=0,k;(k=a[h])!=null;h++){if(typeof k==="number")k+="";if(k){if(typeof k==="string"&&!bb.test(k))k=b.createTextNode(k);else if(typeof k==="string"){k=k.replace(ya,"<$1>");var l=(za.exec(k)||["",""])[1].toLowerCase(),n=O[l]||O._default, +s=n[0],v=b.createElement("div");for(v.innerHTML=n[1]+k+n[2];s--;)v=v.lastChild;if(!c.support.tbody){s=ab.test(k);l=l==="table"&&!s?v.firstChild&&v.firstChild.childNodes:n[1]===""&&!s?v.childNodes:[];for(n=l.length-1;n>=0;--n)c.nodeName(l[n],"tbody")&&!l[n].childNodes.length&&l[n].parentNode.removeChild(l[n])}!c.support.leadingWhitespace&&$.test(k)&&v.insertBefore(b.createTextNode($.exec(k)[0]),v.firstChild);k=v.childNodes}if(k.nodeType)f.push(k);else f=c.merge(f,k)}}if(d)for(h=0;f[h];h++)if(e&& +c.nodeName(f[h],"script")&&(!f[h].type||f[h].type.toLowerCase()==="text/javascript"))e.push(f[h].parentNode?f[h].parentNode.removeChild(f[h]):f[h]);else{f[h].nodeType===1&&f.splice.apply(f,[h+1,0].concat(c.makeArray(f[h].getElementsByTagName("script"))));d.appendChild(f[h])}return f},cleanData:function(a){for(var b,d,e=c.cache,f=c.event.special,h=c.support.deleteExpando,k=0,l;(l=a[k])!=null;k++)if(!(l.nodeName&&c.noData[l.nodeName.toLowerCase()]))if(d=l[c.expando]){if((b=e[d])&&b.events)for(var n in b.events)f[n]? +c.event.remove(l,n):c.removeEvent(l,n,b.handle);if(h)delete l[c.expando];else l.removeAttribute&&l.removeAttribute(c.expando);delete e[d]}}});var Ca=/alpha\([^)]*\)/i,db=/opacity=([^)]*)/,eb=/-([a-z])/ig,fb=/([A-Z])/g,Da=/^-?\d+(?:px)?$/i,gb=/^-?\d/,hb={position:"absolute",visibility:"hidden",display:"block"},La=["Left","Right"],Ma=["Top","Bottom"],W,ib=u.defaultView&&u.defaultView.getComputedStyle,jb=function(a,b){return b.toUpperCase()};c.fn.css=function(a,b){if(arguments.length===2&&b===A)return this; +return c.access(this,a,b,true,function(d,e,f){return f!==A?c.style(d,e,f):c.css(d,e)})};c.extend({cssHooks:{opacity:{get:function(a,b){if(b){var d=W(a,"opacity","opacity");return d===""?"1":d}else return a.style.opacity}}},cssNumber:{zIndex:true,fontWeight:true,opacity:true,zoom:true,lineHeight:true},cssProps:{"float":c.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,b,d,e){if(!(!a||a.nodeType===3||a.nodeType===8||!a.style)){var f,h=c.camelCase(b),k=a.style,l=c.cssHooks[h];b=c.cssProps[h]|| +h;if(d!==A){if(!(typeof d==="number"&&isNaN(d)||d==null)){if(typeof d==="number"&&!c.cssNumber[h])d+="px";if(!l||!("set"in l)||(d=l.set(a,d))!==A)try{k[b]=d}catch(n){}}}else{if(l&&"get"in l&&(f=l.get(a,false,e))!==A)return f;return k[b]}}},css:function(a,b,d){var e,f=c.camelCase(b),h=c.cssHooks[f];b=c.cssProps[f]||f;if(h&&"get"in h&&(e=h.get(a,true,d))!==A)return e;else if(W)return W(a,b,f)},swap:function(a,b,d){var e={},f;for(f in b){e[f]=a.style[f];a.style[f]=b[f]}d.call(a);for(f in b)a.style[f]= +e[f]},camelCase:function(a){return a.replace(eb,jb)}});c.curCSS=c.css;c.each(["height","width"],function(a,b){c.cssHooks[b]={get:function(d,e,f){var h;if(e){if(d.offsetWidth!==0)h=ma(d,b,f);else c.swap(d,hb,function(){h=ma(d,b,f)});return h+"px"}},set:function(d,e){if(Da.test(e)){e=parseFloat(e);if(e>=0)return e+"px"}else return e}}});if(!c.support.opacity)c.cssHooks.opacity={get:function(a,b){return db.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"": +b?"1":""},set:function(a,b){var d=a.style;d.zoom=1;var e=c.isNaN(b)?"":"alpha(opacity="+b*100+")",f=d.filter||"";d.filter=Ca.test(f)?f.replace(Ca,e):d.filter+" "+e}};if(ib)W=function(a,b,d){var e;d=d.replace(fb,"-$1").toLowerCase();if(!(b=a.ownerDocument.defaultView))return A;if(b=b.getComputedStyle(a,null)){e=b.getPropertyValue(d);if(e===""&&!c.contains(a.ownerDocument.documentElement,a))e=c.style(a,d)}return e};else if(u.documentElement.currentStyle)W=function(a,b){var d,e,f=a.currentStyle&&a.currentStyle[b], +h=a.style;if(!Da.test(f)&&gb.test(f)){d=h.left;e=a.runtimeStyle.left;a.runtimeStyle.left=a.currentStyle.left;h.left=b==="fontSize"?"1em":f||0;f=h.pixelLeft+"px";h.left=d;a.runtimeStyle.left=e}return f};if(c.expr&&c.expr.filters){c.expr.filters.hidden=function(a){var b=a.offsetHeight;return a.offsetWidth===0&&b===0||!c.support.reliableHiddenOffsets&&(a.style.display||c.css(a,"display"))==="none"};c.expr.filters.visible=function(a){return!c.expr.filters.hidden(a)}}var kb=c.now(),lb=/)<[^<]*)*<\/script>/gi, +mb=/^(?:select|textarea)/i,nb=/^(?:color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,ob=/^(?:GET|HEAD|DELETE)$/,Na=/\[\]$/,T=/\=\?(&|$)/,ia=/\?/,pb=/([?&])_=[^&]*/,qb=/^(\w+:)?\/\/([^\/?#]+)/,rb=/%20/g,sb=/#.*$/,Ea=c.fn.load;c.fn.extend({load:function(a,b,d){if(typeof a!=="string"&&Ea)return Ea.apply(this,arguments);else if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var f=a.slice(e,a.length);a=a.slice(0,e)}e="GET";if(b)if(c.isFunction(b)){d= +b;b=null}else if(typeof b==="object"){b=c.param(b,c.ajaxSettings.traditional);e="POST"}var h=this;c.ajax({url:a,type:e,dataType:"html",data:b,complete:function(k,l){if(l==="success"||l==="notmodified")h.html(f?c("
").append(k.responseText.replace(lb,"")).find(f):k.responseText);d&&h.each(d,[k.responseText,l,k])}});return this},serialize:function(){return c.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?c.makeArray(this.elements):this}).filter(function(){return this.name&& +!this.disabled&&(this.checked||mb.test(this.nodeName)||nb.test(this.type))}).map(function(a,b){var d=c(this).val();return d==null?null:c.isArray(d)?c.map(d,function(e){return{name:b.name,value:e}}):{name:b.name,value:d}}).get()}});c.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){c.fn[b]=function(d){return this.bind(b,d)}});c.extend({get:function(a,b,d,e){if(c.isFunction(b)){e=e||d;d=b;b=null}return c.ajax({type:"GET",url:a,data:b,success:d,dataType:e})}, +getScript:function(a,b){return c.get(a,null,b,"script")},getJSON:function(a,b,d){return c.get(a,b,d,"json")},post:function(a,b,d,e){if(c.isFunction(b)){e=e||d;d=b;b={}}return c.ajax({type:"POST",url:a,data:b,success:d,dataType:e})},ajaxSetup:function(a){c.extend(c.ajaxSettings,a)},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return new E.XMLHttpRequest},accepts:{xml:"application/xml, text/xml",html:"text/html", +script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},ajax:function(a){var b=c.extend(true,{},c.ajaxSettings,a),d,e,f,h=b.type.toUpperCase(),k=ob.test(h);b.url=b.url.replace(sb,"");b.context=a&&a.context!=null?a.context:b;if(b.data&&b.processData&&typeof b.data!=="string")b.data=c.param(b.data,b.traditional);if(b.dataType==="jsonp"){if(h==="GET")T.test(b.url)||(b.url+=(ia.test(b.url)?"&":"?")+(b.jsonp||"callback")+"=?");else if(!b.data|| +!T.test(b.data))b.data=(b.data?b.data+"&":"")+(b.jsonp||"callback")+"=?";b.dataType="json"}if(b.dataType==="json"&&(b.data&&T.test(b.data)||T.test(b.url))){d=b.jsonpCallback||"jsonp"+kb++;if(b.data)b.data=(b.data+"").replace(T,"="+d+"$1");b.url=b.url.replace(T,"="+d+"$1");b.dataType="script";var l=E[d];E[d]=function(m){f=m;c.handleSuccess(b,w,e,f);c.handleComplete(b,w,e,f);if(c.isFunction(l))l(m);else{E[d]=A;try{delete E[d]}catch(p){}}v&&v.removeChild(B)}}if(b.dataType==="script"&&b.cache===null)b.cache= +false;if(b.cache===false&&h==="GET"){var n=c.now(),s=b.url.replace(pb,"$1_="+n);b.url=s+(s===b.url?(ia.test(b.url)?"&":"?")+"_="+n:"")}if(b.data&&h==="GET")b.url+=(ia.test(b.url)?"&":"?")+b.data;b.global&&c.active++===0&&c.event.trigger("ajaxStart");n=(n=qb.exec(b.url))&&(n[1]&&n[1]!==location.protocol||n[2]!==location.host);if(b.dataType==="script"&&h==="GET"&&n){var v=u.getElementsByTagName("head")[0]||u.documentElement,B=u.createElement("script");if(b.scriptCharset)B.charset=b.scriptCharset;B.src= +b.url;if(!d){var D=false;B.onload=B.onreadystatechange=function(){if(!D&&(!this.readyState||this.readyState==="loaded"||this.readyState==="complete")){D=true;c.handleSuccess(b,w,e,f);c.handleComplete(b,w,e,f);B.onload=B.onreadystatechange=null;v&&B.parentNode&&v.removeChild(B)}}}v.insertBefore(B,v.firstChild);return A}var H=false,w=b.xhr();if(w){b.username?w.open(h,b.url,b.async,b.username,b.password):w.open(h,b.url,b.async);try{if(b.data!=null&&!k||a&&a.contentType)w.setRequestHeader("Content-Type", +b.contentType);if(b.ifModified){c.lastModified[b.url]&&w.setRequestHeader("If-Modified-Since",c.lastModified[b.url]);c.etag[b.url]&&w.setRequestHeader("If-None-Match",c.etag[b.url])}n||w.setRequestHeader("X-Requested-With","XMLHttpRequest");w.setRequestHeader("Accept",b.dataType&&b.accepts[b.dataType]?b.accepts[b.dataType]+", */*; q=0.01":b.accepts._default)}catch(G){}if(b.beforeSend&&b.beforeSend.call(b.context,w,b)===false){b.global&&c.active--===1&&c.event.trigger("ajaxStop");w.abort();return false}b.global&& +c.triggerGlobal(b,"ajaxSend",[w,b]);var M=w.onreadystatechange=function(m){if(!w||w.readyState===0||m==="abort"){H||c.handleComplete(b,w,e,f);H=true;if(w)w.onreadystatechange=c.noop}else if(!H&&w&&(w.readyState===4||m==="timeout")){H=true;w.onreadystatechange=c.noop;e=m==="timeout"?"timeout":!c.httpSuccess(w)?"error":b.ifModified&&c.httpNotModified(w,b.url)?"notmodified":"success";var p;if(e==="success")try{f=c.httpData(w,b.dataType,b)}catch(q){e="parsererror";p=q}if(e==="success"||e==="notmodified")d|| +c.handleSuccess(b,w,e,f);else c.handleError(b,w,e,p);d||c.handleComplete(b,w,e,f);m==="timeout"&&w.abort();if(b.async)w=null}};try{var g=w.abort;w.abort=function(){w&&g.call&&g.call(w);M("abort")}}catch(j){}b.async&&b.timeout>0&&setTimeout(function(){w&&!H&&M("timeout")},b.timeout);try{w.send(k||b.data==null?null:b.data)}catch(o){c.handleError(b,w,null,o);c.handleComplete(b,w,e,f)}b.async||M();return w}},param:function(a,b){var d=[],e=function(h,k){k=c.isFunction(k)?k():k;d[d.length]=encodeURIComponent(h)+ +"="+encodeURIComponent(k)};if(b===A)b=c.ajaxSettings.traditional;if(c.isArray(a)||a.jquery)c.each(a,function(){e(this.name,this.value)});else for(var f in a)ca(f,a[f],b,e);return d.join("&").replace(rb,"+")}});c.extend({active:0,lastModified:{},etag:{},handleError:function(a,b,d,e){a.error&&a.error.call(a.context,b,d,e);a.global&&c.triggerGlobal(a,"ajaxError",[b,a,e])},handleSuccess:function(a,b,d,e){a.success&&a.success.call(a.context,e,d,b);a.global&&c.triggerGlobal(a,"ajaxSuccess",[b,a])},handleComplete:function(a, +b,d){a.complete&&a.complete.call(a.context,b,d);a.global&&c.triggerGlobal(a,"ajaxComplete",[b,a]);a.global&&c.active--===1&&c.event.trigger("ajaxStop")},triggerGlobal:function(a,b,d){(a.context&&a.context.url==null?c(a.context):c.event).trigger(b,d)},httpSuccess:function(a){try{return!a.status&&location.protocol==="file:"||a.status>=200&&a.status<300||a.status===304||a.status===1223}catch(b){}return false},httpNotModified:function(a,b){var d=a.getResponseHeader("Last-Modified"),e=a.getResponseHeader("Etag"); +if(d)c.lastModified[b]=d;if(e)c.etag[b]=e;return a.status===304},httpData:function(a,b,d){var e=a.getResponseHeader("content-type")||"",f=b==="xml"||!b&&e.indexOf("xml")>=0;a=f?a.responseXML:a.responseText;f&&a.documentElement.nodeName==="parsererror"&&c.error("parsererror");if(d&&d.dataFilter)a=d.dataFilter(a,b);if(typeof a==="string")if(b==="json"||!b&&e.indexOf("json")>=0)a=c.parseJSON(a);else if(b==="script"||!b&&e.indexOf("javascript")>=0)c.globalEval(a);return a}});if(E.ActiveXObject)c.ajaxSettings.xhr= +function(){if(E.location.protocol!=="file:")try{return new E.XMLHttpRequest}catch(a){}try{return new E.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}};c.support.ajax=!!c.ajaxSettings.xhr();var da={},tb=/^(?:toggle|show|hide)$/,ub=/^([+\-]=)?([\d+.\-]+)(.*)$/,aa,na=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];c.fn.extend({show:function(a,b,d){if(a||a===0)return this.animate(S("show",3),a,b,d);else{a= +0;for(b=this.length;a=0;e--)if(d[e].elem===this){b&&d[e](true);d.splice(e,1)}});b||this.dequeue();return this}});c.each({slideDown:S("show",1),slideUp:S("hide",1),slideToggle:S("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(a,b){c.fn[a]=function(d,e,f){return this.animate(b, +d,e,f)}});c.extend({speed:function(a,b,d){var e=a&&typeof a==="object"?c.extend({},a):{complete:d||!d&&b||c.isFunction(a)&&a,duration:a,easing:d&&b||b&&!c.isFunction(b)&&b};e.duration=c.fx.off?0:typeof e.duration==="number"?e.duration:e.duration in c.fx.speeds?c.fx.speeds[e.duration]:c.fx.speeds._default;e.old=e.complete;e.complete=function(){e.queue!==false&&c(this).dequeue();c.isFunction(e.old)&&e.old.call(this)};return e},easing:{linear:function(a,b,d,e){return d+e*a},swing:function(a,b,d,e){return(-Math.cos(a* +Math.PI)/2+0.5)*e+d}},timers:[],fx:function(a,b,d){this.options=b;this.elem=a;this.prop=d;if(!b.orig)b.orig={}}});c.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this);(c.fx.step[this.prop]||c.fx.step._default)(this)},cur:function(){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];var a=parseFloat(c.css(this.elem,this.prop));return a&&a>-1E4?a:0},custom:function(a,b,d){function e(h){return f.step(h)} +this.startTime=c.now();this.start=a;this.end=b;this.unit=d||this.unit||"px";this.now=this.start;this.pos=this.state=0;var f=this;a=c.fx;e.elem=this.elem;if(e()&&c.timers.push(e)&&!aa)aa=setInterval(a.tick,a.interval)},show:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.show=true;this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur());c(this.elem).show()},hide:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.hide=true; +this.custom(this.cur(),0)},step:function(a){var b=c.now(),d=true;if(a||b>=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;for(var e in this.options.curAnim)if(this.options.curAnim[e]!==true)d=false;if(d){if(this.options.overflow!=null&&!c.support.shrinkWrapBlocks){var f=this.elem,h=this.options;c.each(["","X","Y"],function(l,n){f.style["overflow"+n]=h.overflow[l]})}this.options.hide&&c(this.elem).hide();if(this.options.hide|| +this.options.show)for(var k in this.options.curAnim)c.style(this.elem,k,this.options.orig[k]);this.options.complete.call(this.elem)}return false}else{a=b-this.startTime;this.state=a/this.options.duration;b=this.options.easing||(c.easing.swing?"swing":"linear");this.pos=c.easing[this.options.specialEasing&&this.options.specialEasing[this.prop]||b](this.state,a,0,1,this.options.duration);this.now=this.start+(this.end-this.start)*this.pos;this.update()}return true}};c.extend(c.fx,{tick:function(){for(var a= +c.timers,b=0;b-1;e={};var s={};if(n)s=f.position();k=n?s.top:parseInt(k,10)||0;l=n?s.left:parseInt(l,10)||0;if(c.isFunction(b))b=b.call(a,d,h);if(b.top!=null)e.top=b.top-h.top+k;if(b.left!=null)e.left=b.left-h.left+l;"using"in b?b.using.call(a, +e):f.css(e)}};c.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),d=this.offset(),e=Fa.test(b[0].nodeName)?{top:0,left:0}:b.offset();d.top-=parseFloat(c.css(a,"marginTop"))||0;d.left-=parseFloat(c.css(a,"marginLeft"))||0;e.top+=parseFloat(c.css(b[0],"borderTopWidth"))||0;e.left+=parseFloat(c.css(b[0],"borderLeftWidth"))||0;return{top:d.top-e.top,left:d.left-e.left}},offsetParent:function(){return this.map(function(){for(var a=this.offsetParent||u.body;a&&!Fa.test(a.nodeName)&& +c.css(a,"position")==="static";)a=a.offsetParent;return a})}});c.each(["Left","Top"],function(a,b){var d="scroll"+b;c.fn[d]=function(e){var f=this[0],h;if(!f)return null;if(e!==A)return this.each(function(){if(h=ea(this))h.scrollTo(!a?e:c(h).scrollLeft(),a?e:c(h).scrollTop());else this[d]=e});else return(h=ea(f))?"pageXOffset"in h?h[a?"pageYOffset":"pageXOffset"]:c.support.boxModel&&h.document.documentElement[d]||h.document.body[d]:f[d]}});c.each(["Height","Width"],function(a,b){var d=b.toLowerCase(); +c.fn["inner"+b]=function(){return this[0]?parseFloat(c.css(this[0],d,"padding")):null};c.fn["outer"+b]=function(e){return this[0]?parseFloat(c.css(this[0],d,e?"margin":"border")):null};c.fn[d]=function(e){var f=this[0];if(!f)return e==null?null:this;if(c.isFunction(e))return this.each(function(h){var k=c(this);k[d](e.call(this,h,k[d]()))});return c.isWindow(f)?f.document.compatMode==="CSS1Compat"&&f.document.documentElement["client"+b]||f.document.body["client"+b]:f.nodeType===9?Math.max(f.documentElement["client"+ +b],f.body["scroll"+b],f.documentElement["scroll"+b],f.body["offset"+b],f.documentElement["offset"+b]):e===A?parseFloat(c.css(f,d)):this.css(d,typeof e==="string"?e:e+"px")}})})(window); diff -r e6b328970ee8 -r ffb0a6d08000 web/res/js/jquery-ui-1.8.13.min.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/web/res/js/jquery-ui-1.8.13.min.js Wed Jul 27 12:25:45 2011 +0200 @@ -0,0 +1,784 @@ +/*! + * jQuery UI 1.8.13 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI + */ +(function(c,j){function k(a,b){var d=a.nodeName.toLowerCase();if("area"===d){b=a.parentNode;d=b.name;if(!a.href||!d||b.nodeName.toLowerCase()!=="map")return false;a=c("img[usemap=#"+d+"]")[0];return!!a&&l(a)}return(/input|select|textarea|button|object/.test(d)?!a.disabled:"a"==d?a.href||b:b)&&l(a)}function l(a){return!c(a).parents().andSelf().filter(function(){return c.curCSS(this,"visibility")==="hidden"||c.expr.filters.hidden(this)}).length}c.ui=c.ui||{};if(!c.ui.version){c.extend(c.ui,{version:"1.8.13", +keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}});c.fn.extend({_focus:c.fn.focus,focus:function(a,b){return typeof a==="number"?this.each(function(){var d=this;setTimeout(function(){c(d).focus(); +b&&b.call(d)},a)}):this._focus.apply(this,arguments)},scrollParent:function(){var a;a=c.browser.msie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?this.parents().filter(function(){return/(relative|absolute|fixed)/.test(c.curCSS(this,"position",1))&&/(auto|scroll)/.test(c.curCSS(this,"overflow",1)+c.curCSS(this,"overflow-y",1)+c.curCSS(this,"overflow-x",1))}).eq(0):this.parents().filter(function(){return/(auto|scroll)/.test(c.curCSS(this,"overflow",1)+c.curCSS(this, +"overflow-y",1)+c.curCSS(this,"overflow-x",1))}).eq(0);return/fixed/.test(this.css("position"))||!a.length?c(document):a},zIndex:function(a){if(a!==j)return this.css("zIndex",a);if(this.length){a=c(this[0]);for(var b;a.length&&a[0]!==document;){b=a.css("position");if(b==="absolute"||b==="relative"||b==="fixed"){b=parseInt(a.css("zIndex"),10);if(!isNaN(b)&&b!==0)return b}a=a.parent()}}return 0},disableSelection:function(){return this.bind((c.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection", +function(a){a.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}});c.each(["Width","Height"],function(a,b){function d(f,g,m,n){c.each(e,function(){g-=parseFloat(c.curCSS(f,"padding"+this,true))||0;if(m)g-=parseFloat(c.curCSS(f,"border"+this+"Width",true))||0;if(n)g-=parseFloat(c.curCSS(f,"margin"+this,true))||0});return g}var e=b==="Width"?["Left","Right"]:["Top","Bottom"],h=b.toLowerCase(),i={innerWidth:c.fn.innerWidth,innerHeight:c.fn.innerHeight,outerWidth:c.fn.outerWidth, +outerHeight:c.fn.outerHeight};c.fn["inner"+b]=function(f){if(f===j)return i["inner"+b].call(this);return this.each(function(){c(this).css(h,d(this,f)+"px")})};c.fn["outer"+b]=function(f,g){if(typeof f!=="number")return i["outer"+b].call(this,f);return this.each(function(){c(this).css(h,d(this,f,true,g)+"px")})}});c.extend(c.expr[":"],{data:function(a,b,d){return!!c.data(a,d[3])},focusable:function(a){return k(a,!isNaN(c.attr(a,"tabindex")))},tabbable:function(a){var b=c.attr(a,"tabindex"),d=isNaN(b); +return(d||b>=0)&&k(a,!d)}});c(function(){var a=document.body,b=a.appendChild(b=document.createElement("div"));c.extend(b.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0});c.support.minHeight=b.offsetHeight===100;c.support.selectstart="onselectstart"in b;a.removeChild(b).style.display="none"});c.extend(c.ui,{plugin:{add:function(a,b,d){a=c.ui[a].prototype;for(var e in d){a.plugins[e]=a.plugins[e]||[];a.plugins[e].push([b,d[e]])}},call:function(a,b,d){if((b=a.plugins[b])&&a.element[0].parentNode)for(var e= +0;e0)return true;a[b]=1;d=a[b]>0;a[b]=0;return d},isOverAxis:function(a,b,d){return a>b&&a=9)&&!a.button)return this._mouseUp(a);if(this._mouseStarted){this._mouseDrag(a);return a.preventDefault()}if(this._mouseDistanceMet(a)&&this._mouseDelayMet(a))(this._mouseStarted=this._mouseStart(this._mouseDownEvent,a)!==false)?this._mouseDrag(a):this._mouseUp(a);return!this._mouseStarted},_mouseUp:function(a){b(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted= +false;a.target==this._mouseDownEvent.target&&b.data(a.target,this.widgetName+".preventClickEvent",true);this._mouseStop(a)}return false},_mouseDistanceMet:function(a){return Math.max(Math.abs(this._mouseDownEvent.pageX-a.pageX),Math.abs(this._mouseDownEvent.pageY-a.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return true}})})(jQuery); +;/* + * jQuery UI Position 1.8.13 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Position + */ +(function(c){c.ui=c.ui||{};var n=/left|center|right/,o=/top|center|bottom/,t=c.fn.position,u=c.fn.offset;c.fn.position=function(b){if(!b||!b.of)return t.apply(this,arguments);b=c.extend({},b);var a=c(b.of),d=a[0],g=(b.collision||"flip").split(" "),e=b.offset?b.offset.split(" "):[0,0],h,k,j;if(d.nodeType===9){h=a.width();k=a.height();j={top:0,left:0}}else if(d.setTimeout){h=a.width();k=a.height();j={top:a.scrollTop(),left:a.scrollLeft()}}else if(d.preventDefault){b.at="left top";h=k=0;j={top:b.of.pageY, +left:b.of.pageX}}else{h=a.outerWidth();k=a.outerHeight();j=a.offset()}c.each(["my","at"],function(){var f=(b[this]||"").split(" ");if(f.length===1)f=n.test(f[0])?f.concat(["center"]):o.test(f[0])?["center"].concat(f):["center","center"];f[0]=n.test(f[0])?f[0]:"center";f[1]=o.test(f[1])?f[1]:"center";b[this]=f});if(g.length===1)g[1]=g[0];e[0]=parseInt(e[0],10)||0;if(e.length===1)e[1]=e[0];e[1]=parseInt(e[1],10)||0;if(b.at[0]==="right")j.left+=h;else if(b.at[0]==="center")j.left+=h/2;if(b.at[1]==="bottom")j.top+= +k;else if(b.at[1]==="center")j.top+=k/2;j.left+=e[0];j.top+=e[1];return this.each(function(){var f=c(this),l=f.outerWidth(),m=f.outerHeight(),p=parseInt(c.curCSS(this,"marginLeft",true))||0,q=parseInt(c.curCSS(this,"marginTop",true))||0,v=l+p+(parseInt(c.curCSS(this,"marginRight",true))||0),w=m+q+(parseInt(c.curCSS(this,"marginBottom",true))||0),i=c.extend({},j),r;if(b.my[0]==="right")i.left-=l;else if(b.my[0]==="center")i.left-=l/2;if(b.my[1]==="bottom")i.top-=m;else if(b.my[1]==="center")i.top-= +m/2;i.left=Math.round(i.left);i.top=Math.round(i.top);r={left:i.left-p,top:i.top-q};c.each(["left","top"],function(s,x){c.ui.position[g[s]]&&c.ui.position[g[s]][x](i,{targetWidth:h,targetHeight:k,elemWidth:l,elemHeight:m,collisionPosition:r,collisionWidth:v,collisionHeight:w,offset:e,my:b.my,at:b.at})});c.fn.bgiframe&&f.bgiframe();f.offset(c.extend(i,{using:b.using}))})};c.ui.position={fit:{left:function(b,a){var d=c(window);d=a.collisionPosition.left+a.collisionWidth-d.width()-d.scrollLeft();b.left= +d>0?b.left-d:Math.max(b.left-a.collisionPosition.left,b.left)},top:function(b,a){var d=c(window);d=a.collisionPosition.top+a.collisionHeight-d.height()-d.scrollTop();b.top=d>0?b.top-d:Math.max(b.top-a.collisionPosition.top,b.top)}},flip:{left:function(b,a){if(a.at[0]!=="center"){var d=c(window);d=a.collisionPosition.left+a.collisionWidth-d.width()-d.scrollLeft();var g=a.my[0]==="left"?-a.elemWidth:a.my[0]==="right"?a.elemWidth:0,e=a.at[0]==="left"?a.targetWidth:-a.targetWidth,h=-2*a.offset[0];b.left+= +a.collisionPosition.left<0?g+e+h:d>0?g+e+h:0}},top:function(b,a){if(a.at[1]!=="center"){var d=c(window);d=a.collisionPosition.top+a.collisionHeight-d.height()-d.scrollTop();var g=a.my[1]==="top"?-a.elemHeight:a.my[1]==="bottom"?a.elemHeight:0,e=a.at[1]==="top"?a.targetHeight:-a.targetHeight,h=-2*a.offset[1];b.top+=a.collisionPosition.top<0?g+e+h:d>0?g+e+h:0}}}};if(!c.offset.setOffset){c.offset.setOffset=function(b,a){if(/static/.test(c.curCSS(b,"position")))b.style.position="relative";var d=c(b), +g=d.offset(),e=parseInt(c.curCSS(b,"top",true),10)||0,h=parseInt(c.curCSS(b,"left",true),10)||0;g={top:a.top-g.top+e,left:a.left-g.left+h};"using"in a?a.using.call(b,g):d.css(g)};c.fn.offset=function(b){var a=this[0];if(!a||!a.ownerDocument)return null;if(b)return this.each(function(){c.offset.setOffset(this,b)});return u.call(this)}}})(jQuery); +;/* + * jQuery UI Draggable 1.8.13 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Draggables + * + * Depends: + * jquery.ui.core.js + * jquery.ui.mouse.js + * jquery.ui.widget.js + */ +(function(d){d.widget("ui.draggable",d.ui.mouse,{widgetEventPrefix:"drag",options:{addClasses:true,appendTo:"parent",axis:false,connectToSortable:false,containment:false,cursor:"auto",cursorAt:false,grid:false,handle:false,helper:"original",iframeFix:false,opacity:false,refreshPositions:false,revert:false,revertDuration:500,scope:"default",scroll:true,scrollSensitivity:20,scrollSpeed:20,snap:false,snapMode:"both",snapTolerance:20,stack:false,zIndex:false},_create:function(){if(this.options.helper== +"original"&&!/^(?:r|a|f)/.test(this.element.css("position")))this.element[0].style.position="relative";this.options.addClasses&&this.element.addClass("ui-draggable");this.options.disabled&&this.element.addClass("ui-draggable-disabled");this._mouseInit()},destroy:function(){if(this.element.data("draggable")){this.element.removeData("draggable").unbind(".draggable").removeClass("ui-draggable ui-draggable-dragging ui-draggable-disabled");this._mouseDestroy();return this}},_mouseCapture:function(a){var b= +this.options;if(this.helper||b.disabled||d(a.target).is(".ui-resizable-handle"))return false;this.handle=this._getHandle(a);if(!this.handle)return false;d(b.iframeFix===true?"iframe":b.iframeFix).each(function(){d('
').css({width:this.offsetWidth+"px",height:this.offsetHeight+"px",position:"absolute",opacity:"0.001",zIndex:1E3}).css(d(this).offset()).appendTo("body")});return true},_mouseStart:function(a){var b=this.options;this.helper= +this._createHelper(a);this._cacheHelperProportions();if(d.ui.ddmanager)d.ui.ddmanager.current=this;this._cacheMargins();this.cssPosition=this.helper.css("position");this.scrollParent=this.helper.scrollParent();this.offset=this.positionAbs=this.element.offset();this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left};d.extend(this.offset,{click:{left:a.pageX-this.offset.left,top:a.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()}); +this.originalPosition=this.position=this._generatePosition(a);this.originalPageX=a.pageX;this.originalPageY=a.pageY;b.cursorAt&&this._adjustOffsetFromHelper(b.cursorAt);b.containment&&this._setContainment();if(this._trigger("start",a)===false){this._clear();return false}this._cacheHelperProportions();d.ui.ddmanager&&!b.dropBehaviour&&d.ui.ddmanager.prepareOffsets(this,a);this.helper.addClass("ui-draggable-dragging");this._mouseDrag(a,true);return true},_mouseDrag:function(a,b){this.position=this._generatePosition(a); +this.positionAbs=this._convertPositionTo("absolute");if(!b){b=this._uiHash();if(this._trigger("drag",a,b)===false){this._mouseUp({});return false}this.position=b.position}if(!this.options.axis||this.options.axis!="y")this.helper[0].style.left=this.position.left+"px";if(!this.options.axis||this.options.axis!="x")this.helper[0].style.top=this.position.top+"px";d.ui.ddmanager&&d.ui.ddmanager.drag(this,a);return false},_mouseStop:function(a){var b=false;if(d.ui.ddmanager&&!this.options.dropBehaviour)b= +d.ui.ddmanager.drop(this,a);if(this.dropped){b=this.dropped;this.dropped=false}if((!this.element[0]||!this.element[0].parentNode)&&this.options.helper=="original")return false;if(this.options.revert=="invalid"&&!b||this.options.revert=="valid"&&b||this.options.revert===true||d.isFunction(this.options.revert)&&this.options.revert.call(this.element,b)){var c=this;d(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),function(){c._trigger("stop",a)!==false&&c._clear()})}else this._trigger("stop", +a)!==false&&this._clear();return false},_mouseUp:function(a){this.options.iframeFix===true&&d("div.ui-draggable-iframeFix").each(function(){this.parentNode.removeChild(this)});return d.ui.mouse.prototype._mouseUp.call(this,a)},cancel:function(){this.helper.is(".ui-draggable-dragging")?this._mouseUp({}):this._clear();return this},_getHandle:function(a){var b=!this.options.handle||!d(this.options.handle,this.element).length?true:false;d(this.options.handle,this.element).find("*").andSelf().each(function(){if(this== +a.target)b=true});return b},_createHelper:function(a){var b=this.options;a=d.isFunction(b.helper)?d(b.helper.apply(this.element[0],[a])):b.helper=="clone"?this.element.clone().removeAttr("id"):this.element;a.parents("body").length||a.appendTo(b.appendTo=="parent"?this.element[0].parentNode:b.appendTo);a[0]!=this.element[0]&&!/(fixed|absolute)/.test(a.css("position"))&&a.css("position","absolute");return a},_adjustOffsetFromHelper:function(a){if(typeof a=="string")a=a.split(" ");if(d.isArray(a))a= +{left:+a[0],top:+a[1]||0};if("left"in a)this.offset.click.left=a.left+this.margins.left;if("right"in a)this.offset.click.left=this.helperProportions.width-a.right+this.margins.left;if("top"in a)this.offset.click.top=a.top+this.margins.top;if("bottom"in a)this.offset.click.top=this.helperProportions.height-a.bottom+this.margins.top},_getParentOffset:function(){this.offsetParent=this.helper.offsetParent();var a=this.offsetParent.offset();if(this.cssPosition=="absolute"&&this.scrollParent[0]!=document&& +d.ui.contains(this.scrollParent[0],this.offsetParent[0])){a.left+=this.scrollParent.scrollLeft();a.top+=this.scrollParent.scrollTop()}if(this.offsetParent[0]==document.body||this.offsetParent[0].tagName&&this.offsetParent[0].tagName.toLowerCase()=="html"&&d.browser.msie)a={top:0,left:0};return{top:a.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:a.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if(this.cssPosition=="relative"){var a= +this.element.position();return{top:a.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:a.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}else return{top:0,left:0}},_cacheMargins:function(){this.margins={left:parseInt(this.element.css("marginLeft"),10)||0,top:parseInt(this.element.css("marginTop"),10)||0,right:parseInt(this.element.css("marginRight"),10)||0,bottom:parseInt(this.element.css("marginBottom"),10)||0}},_cacheHelperProportions:function(){this.helperProportions= +{width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var a=this.options;if(a.containment=="parent")a.containment=this.helper[0].parentNode;if(a.containment=="document"||a.containment=="window")this.containment=[(a.containment=="document"?0:d(window).scrollLeft())-this.offset.relative.left-this.offset.parent.left,(a.containment=="document"?0:d(window).scrollTop())-this.offset.relative.top-this.offset.parent.top,(a.containment=="document"?0:d(window).scrollLeft())+ +d(a.containment=="document"?document:window).width()-this.helperProportions.width-this.margins.left,(a.containment=="document"?0:d(window).scrollTop())+(d(a.containment=="document"?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top];if(!/^(document|window|parent)$/.test(a.containment)&&a.containment.constructor!=Array){a=d(a.containment);var b=a[0];if(b){a.offset();var c=d(b).css("overflow")!="hidden";this.containment=[(parseInt(d(b).css("borderLeftWidth"), +10)||0)+(parseInt(d(b).css("paddingLeft"),10)||0),(parseInt(d(b).css("borderTopWidth"),10)||0)+(parseInt(d(b).css("paddingTop"),10)||0),(c?Math.max(b.scrollWidth,b.offsetWidth):b.offsetWidth)-(parseInt(d(b).css("borderLeftWidth"),10)||0)-(parseInt(d(b).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left-this.margins.right,(c?Math.max(b.scrollHeight,b.offsetHeight):b.offsetHeight)-(parseInt(d(b).css("borderTopWidth"),10)||0)-(parseInt(d(b).css("paddingBottom"),10)||0)-this.helperProportions.height- +this.margins.top-this.margins.bottom];this.relative_container=a}}else if(a.containment.constructor==Array)this.containment=a.containment},_convertPositionTo:function(a,b){if(!b)b=this.position;a=a=="absolute"?1:-1;var c=this.cssPosition=="absolute"&&!(this.scrollParent[0]!=document&&d.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,f=/(html|body)/i.test(c[0].tagName);return{top:b.top+this.offset.relative.top*a+this.offset.parent.top*a-(d.browser.safari&& +d.browser.version<526&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollTop():f?0:c.scrollTop())*a),left:b.left+this.offset.relative.left*a+this.offset.parent.left*a-(d.browser.safari&&d.browser.version<526&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():f?0:c.scrollLeft())*a)}},_generatePosition:function(a){var b=this.options,c=this.cssPosition=="absolute"&&!(this.scrollParent[0]!=document&&d.ui.contains(this.scrollParent[0], +this.offsetParent[0]))?this.offsetParent:this.scrollParent,f=/(html|body)/i.test(c[0].tagName),e=a.pageX,h=a.pageY;if(this.originalPosition){var g;if(this.containment){if(this.relative_container){g=this.relative_container.offset();g=[this.containment[0]+g.left,this.containment[1]+g.top,this.containment[2]+g.left,this.containment[3]+g.top]}else g=this.containment;if(a.pageX-this.offset.click.leftg[2])e=g[2]+this.offset.click.left;if(a.pageY-this.offset.click.top>g[3])h=g[3]+this.offset.click.top}if(b.grid){h=this.originalPageY+Math.round((h-this.originalPageY)/b.grid[1])*b.grid[1];h=g?!(h-this.offset.click.topg[3])?h:!(h-this.offset.click.topg[2])?e:!(e-this.offset.click.left< +g[0])?e-b.grid[0]:e+b.grid[0]:e}}return{top:h-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+(d.browser.safari&&d.browser.version<526&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollTop():f?0:c.scrollTop()),left:e-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+(d.browser.safari&&d.browser.version<526&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():f?0:c.scrollLeft())}},_clear:function(){this.helper.removeClass("ui-draggable-dragging"); +this.helper[0]!=this.element[0]&&!this.cancelHelperRemoval&&this.helper.remove();this.helper=null;this.cancelHelperRemoval=false},_trigger:function(a,b,c){c=c||this._uiHash();d.ui.plugin.call(this,a,[b,c]);if(a=="drag")this.positionAbs=this._convertPositionTo("absolute");return d.Widget.prototype._trigger.call(this,a,b,c)},plugins:{},_uiHash:function(){return{helper:this.helper,position:this.position,originalPosition:this.originalPosition,offset:this.positionAbs}}});d.extend(d.ui.draggable,{version:"1.8.13"}); +d.ui.plugin.add("draggable","connectToSortable",{start:function(a,b){var c=d(this).data("draggable"),f=c.options,e=d.extend({},b,{item:c.element});c.sortables=[];d(f.connectToSortable).each(function(){var h=d.data(this,"sortable");if(h&&!h.options.disabled){c.sortables.push({instance:h,shouldRevert:h.options.revert});h.refreshPositions();h._trigger("activate",a,e)}})},stop:function(a,b){var c=d(this).data("draggable"),f=d.extend({},b,{item:c.element});d.each(c.sortables,function(){if(this.instance.isOver){this.instance.isOver= +0;c.cancelHelperRemoval=true;this.instance.cancelHelperRemoval=false;if(this.shouldRevert)this.instance.options.revert=true;this.instance._mouseStop(a);this.instance.options.helper=this.instance.options._helper;c.options.helper=="original"&&this.instance.currentItem.css({top:"auto",left:"auto"})}else{this.instance.cancelHelperRemoval=false;this.instance._trigger("deactivate",a,f)}})},drag:function(a,b){var c=d(this).data("draggable"),f=this;d.each(c.sortables,function(){this.instance.positionAbs= +c.positionAbs;this.instance.helperProportions=c.helperProportions;this.instance.offset.click=c.offset.click;if(this.instance._intersectsWith(this.instance.containerCache)){if(!this.instance.isOver){this.instance.isOver=1;this.instance.currentItem=d(f).clone().removeAttr("id").appendTo(this.instance.element).data("sortable-item",true);this.instance.options._helper=this.instance.options.helper;this.instance.options.helper=function(){return b.helper[0]};a.target=this.instance.currentItem[0];this.instance._mouseCapture(a, +true);this.instance._mouseStart(a,true,true);this.instance.offset.click.top=c.offset.click.top;this.instance.offset.click.left=c.offset.click.left;this.instance.offset.parent.left-=c.offset.parent.left-this.instance.offset.parent.left;this.instance.offset.parent.top-=c.offset.parent.top-this.instance.offset.parent.top;c._trigger("toSortable",a);c.dropped=this.instance.element;c.currentItem=c.element;this.instance.fromOutside=c}this.instance.currentItem&&this.instance._mouseDrag(a)}else if(this.instance.isOver){this.instance.isOver= +0;this.instance.cancelHelperRemoval=true;this.instance.options.revert=false;this.instance._trigger("out",a,this.instance._uiHash(this.instance));this.instance._mouseStop(a,true);this.instance.options.helper=this.instance.options._helper;this.instance.currentItem.remove();this.instance.placeholder&&this.instance.placeholder.remove();c._trigger("fromSortable",a);c.dropped=false}})}});d.ui.plugin.add("draggable","cursor",{start:function(){var a=d("body"),b=d(this).data("draggable").options;if(a.css("cursor"))b._cursor= +a.css("cursor");a.css("cursor",b.cursor)},stop:function(){var a=d(this).data("draggable").options;a._cursor&&d("body").css("cursor",a._cursor)}});d.ui.plugin.add("draggable","opacity",{start:function(a,b){a=d(b.helper);b=d(this).data("draggable").options;if(a.css("opacity"))b._opacity=a.css("opacity");a.css("opacity",b.opacity)},stop:function(a,b){a=d(this).data("draggable").options;a._opacity&&d(b.helper).css("opacity",a._opacity)}});d.ui.plugin.add("draggable","scroll",{start:function(){var a=d(this).data("draggable"); +if(a.scrollParent[0]!=document&&a.scrollParent[0].tagName!="HTML")a.overflowOffset=a.scrollParent.offset()},drag:function(a){var b=d(this).data("draggable"),c=b.options,f=false;if(b.scrollParent[0]!=document&&b.scrollParent[0].tagName!="HTML"){if(!c.axis||c.axis!="x")if(b.overflowOffset.top+b.scrollParent[0].offsetHeight-a.pageY=0;i--){var j=c.snapElements[i].left,l=j+c.snapElements[i].width,k=c.snapElements[i].top,m=k+c.snapElements[i].height;if(j-e=j&&f<=l||h>=j&&h<=l||fl)&&(e>= +i&&e<=k||g>=i&&g<=k||ek);default:return false}};d.ui.ddmanager={current:null,droppables:{"default":[]},prepareOffsets:function(a,b){var c=d.ui.ddmanager.droppables[a.options.scope]||[],e=b?b.type:null,g=(a.currentItem||a.element).find(":data(droppable)").andSelf(),f=0;a:for(;f
').css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(), +top:this.element.css("top"),left:this.element.css("left")}));this.element=this.element.parent().data("resizable",this.element.data("resizable"));this.elementIsWrapper=true;this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")});this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0});this.originalResizeStyle= +this.originalElement.css("resize");this.originalElement.css("resize","none");this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"}));this.originalElement.css({margin:this.originalElement.css("margin")});this._proportionallyResize()}this.handles=a.handles||(!e(".ui-resizable-handle",this.element).length?"e,s,se":{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne", +nw:".ui-resizable-nw"});if(this.handles.constructor==String){if(this.handles=="all")this.handles="n,e,s,w,se,sw,ne,nw";var c=this.handles.split(",");this.handles={};for(var d=0;d');/sw|se|ne|nw/.test(f)&&g.css({zIndex:++a.zIndex});"se"==f&&g.addClass("ui-icon ui-icon-gripsmall-diagonal-se");this.handles[f]=".ui-resizable-"+f;this.element.append(g)}}this._renderAxis=function(h){h=h||this.element;for(var i in this.handles){if(this.handles[i].constructor== +String)this.handles[i]=e(this.handles[i],this.element).show();if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var j=e(this.handles[i],this.element),k=0;k=/sw|ne|nw|se|n|s/.test(i)?j.outerHeight():j.outerWidth();j=["padding",/ne|nw|n/.test(i)?"Top":/se|sw|s/.test(i)?"Bottom":/^e$/.test(i)?"Right":"Left"].join("");h.css(j,k);this._proportionallyResize()}e(this.handles[i])}};this._renderAxis(this.element);this._handles=e(".ui-resizable-handle",this.element).disableSelection(); +this._handles.mouseover(function(){if(!b.resizing){if(this.className)var h=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i);b.axis=h&&h[1]?h[1]:"se"}});if(a.autoHide){this._handles.hide();e(this.element).addClass("ui-resizable-autohide").hover(function(){if(!a.disabled){e(this).removeClass("ui-resizable-autohide");b._handles.show()}},function(){if(!a.disabled)if(!b.resizing){e(this).addClass("ui-resizable-autohide");b._handles.hide()}})}this._mouseInit()},destroy:function(){this._mouseDestroy(); +var b=function(c){e(c).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){b(this.element);var a=this.element;a.after(this.originalElement.css({position:a.css("position"),width:a.outerWidth(),height:a.outerHeight(),top:a.css("top"),left:a.css("left")})).remove()}this.originalElement.css("resize",this.originalResizeStyle);b(this.originalElement);return this},_mouseCapture:function(b){var a= +false;for(var c in this.handles)if(e(this.handles[c])[0]==b.target)a=true;return!this.options.disabled&&a},_mouseStart:function(b){var a=this.options,c=this.element.position(),d=this.element;this.resizing=true;this.documentScroll={top:e(document).scrollTop(),left:e(document).scrollLeft()};if(d.is(".ui-draggable")||/absolute/.test(d.css("position")))d.css({position:"absolute",top:c.top,left:c.left});e.browser.opera&&/relative/.test(d.css("position"))&&d.css({position:"relative",top:"auto",left:"auto"}); +this._renderProxy();c=m(this.helper.css("left"));var f=m(this.helper.css("top"));if(a.containment){c+=e(a.containment).scrollLeft()||0;f+=e(a.containment).scrollTop()||0}this.offset=this.helper.offset();this.position={left:c,top:f};this.size=this._helper?{width:d.outerWidth(),height:d.outerHeight()}:{width:d.width(),height:d.height()};this.originalSize=this._helper?{width:d.outerWidth(),height:d.outerHeight()}:{width:d.width(),height:d.height()};this.originalPosition={left:c,top:f};this.sizeDiff= +{width:d.outerWidth()-d.width(),height:d.outerHeight()-d.height()};this.originalMousePosition={left:b.pageX,top:b.pageY};this.aspectRatio=typeof a.aspectRatio=="number"?a.aspectRatio:this.originalSize.width/this.originalSize.height||1;a=e(".ui-resizable-"+this.axis).css("cursor");e("body").css("cursor",a=="auto"?this.axis+"-resize":a);d.addClass("ui-resizable-resizing");this._propagate("start",b);return true},_mouseDrag:function(b){var a=this.helper,c=this.originalMousePosition,d=this._change[this.axis]; +if(!d)return false;c=d.apply(this,[b,b.pageX-c.left||0,b.pageY-c.top||0]);if(this._aspectRatio||b.shiftKey)c=this._updateRatio(c,b);c=this._respectSize(c,b);this._propagate("resize",b);a.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"});!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize();this._updateCache(c);this._trigger("resize",b,this.ui());return false},_mouseStop:function(b){this.resizing= +false;var a=this.options,c=this;if(this._helper){var d=this._proportionallyResizeElements,f=d.length&&/textarea/i.test(d[0].nodeName);d=f&&e.ui.hasScroll(d[0],"left")?0:c.sizeDiff.height;f=f?0:c.sizeDiff.width;f={width:c.helper.width()-f,height:c.helper.height()-d};d=parseInt(c.element.css("left"),10)+(c.position.left-c.originalPosition.left)||null;var g=parseInt(c.element.css("top"),10)+(c.position.top-c.originalPosition.top)||null;a.animate||this.element.css(e.extend(f,{top:g,left:d}));c.helper.height(c.size.height); +c.helper.width(c.size.width);this._helper&&!a.animate&&this._proportionallyResize()}e("body").css("cursor","auto");this.element.removeClass("ui-resizable-resizing");this._propagate("stop",b);this._helper&&this.helper.remove();return false},_updateCache:function(b){this.offset=this.helper.offset();if(l(b.left))this.position.left=b.left;if(l(b.top))this.position.top=b.top;if(l(b.height))this.size.height=b.height;if(l(b.width))this.size.width=b.width},_updateRatio:function(b){var a=this.position,c=this.size, +d=this.axis;if(b.height)b.width=c.height*this.aspectRatio;else if(b.width)b.height=c.width/this.aspectRatio;if(d=="sw"){b.left=a.left+(c.width-b.width);b.top=null}if(d=="nw"){b.top=a.top+(c.height-b.height);b.left=a.left+(c.width-b.width)}return b},_respectSize:function(b){var a=this.options,c=this.axis,d=l(b.width)&&a.maxWidth&&a.maxWidthb.width,h=l(b.height)&&a.minHeight&&a.minHeight>b.height;if(g)b.width= +a.minWidth;if(h)b.height=a.minHeight;if(d)b.width=a.maxWidth;if(f)b.height=a.maxHeight;var i=this.originalPosition.left+this.originalSize.width,j=this.position.top+this.size.height,k=/sw|nw|w/.test(c);c=/nw|ne|n/.test(c);if(g&&k)b.left=i-a.minWidth;if(d&&k)b.left=i-a.maxWidth;if(h&&c)b.top=j-a.minHeight;if(f&&c)b.top=j-a.maxHeight;if((a=!b.width&&!b.height)&&!b.left&&b.top)b.top=null;else if(a&&!b.top&&b.left)b.left=null;return b},_proportionallyResize:function(){if(this._proportionallyResizeElements.length)for(var b= +this.helper||this.element,a=0;a');var a=e.browser.msie&&e.browser.version<7,c=a?1:0;a=a?2:-1;this.helper.addClass(this._helper).css({width:this.element.outerWidth()+a,height:this.element.outerHeight()+a,position:"absolute",left:this.elementOffset.left- +c+"px",top:this.elementOffset.top-c+"px",zIndex:++b.zIndex});this.helper.appendTo("body").disableSelection()}else this.helper=this.element},_change:{e:function(b,a){return{width:this.originalSize.width+a}},w:function(b,a){return{left:this.originalPosition.left+a,width:this.originalSize.width-a}},n:function(b,a,c){return{top:this.originalPosition.top+c,height:this.originalSize.height-c}},s:function(b,a,c){return{height:this.originalSize.height+c}},se:function(b,a,c){return e.extend(this._change.s.apply(this, +arguments),this._change.e.apply(this,[b,a,c]))},sw:function(b,a,c){return e.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[b,a,c]))},ne:function(b,a,c){return e.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[b,a,c]))},nw:function(b,a,c){return e.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[b,a,c]))}},_propagate:function(b,a){e.ui.plugin.call(this,b,[a,this.ui()]);b!="resize"&&this._trigger(b,a,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement, +element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}});e.extend(e.ui.resizable,{version:"1.8.13"});e.ui.plugin.add("resizable","alsoResize",{start:function(){var b=e(this).data("resizable").options,a=function(c){e(c).each(function(){var d=e(this);d.data("resizable-alsoresize",{width:parseInt(d.width(),10),height:parseInt(d.height(),10),left:parseInt(d.css("left"),10),top:parseInt(d.css("top"),10),position:d.css("position")})})}; +if(typeof b.alsoResize=="object"&&!b.alsoResize.parentNode)if(b.alsoResize.length){b.alsoResize=b.alsoResize[0];a(b.alsoResize)}else e.each(b.alsoResize,function(c){a(c)});else a(b.alsoResize)},resize:function(b,a){var c=e(this).data("resizable");b=c.options;var d=c.originalSize,f=c.originalPosition,g={height:c.size.height-d.height||0,width:c.size.width-d.width||0,top:c.position.top-f.top||0,left:c.position.left-f.left||0},h=function(i,j){e(i).each(function(){var k=e(this),q=e(this).data("resizable-alsoresize"), +p={},r=j&&j.length?j:k.parents(a.originalElement[0]).length?["width","height"]:["width","height","top","left"];e.each(r,function(n,o){if((n=(q[o]||0)+(g[o]||0))&&n>=0)p[o]=n||null});if(e.browser.opera&&/relative/.test(k.css("position"))){c._revertToRelativePosition=true;k.css({position:"absolute",top:"auto",left:"auto"})}k.css(p)})};typeof b.alsoResize=="object"&&!b.alsoResize.nodeType?e.each(b.alsoResize,function(i,j){h(i,j)}):h(b.alsoResize)},stop:function(){var b=e(this).data("resizable"),a=b.options, +c=function(d){e(d).each(function(){var f=e(this);f.css({position:f.data("resizable-alsoresize").position})})};if(b._revertToRelativePosition){b._revertToRelativePosition=false;typeof a.alsoResize=="object"&&!a.alsoResize.nodeType?e.each(a.alsoResize,function(d){c(d)}):c(a.alsoResize)}e(this).removeData("resizable-alsoresize")}});e.ui.plugin.add("resizable","animate",{stop:function(b){var a=e(this).data("resizable"),c=a.options,d=a._proportionallyResizeElements,f=d.length&&/textarea/i.test(d[0].nodeName), +g=f&&e.ui.hasScroll(d[0],"left")?0:a.sizeDiff.height;f={width:a.size.width-(f?0:a.sizeDiff.width),height:a.size.height-g};g=parseInt(a.element.css("left"),10)+(a.position.left-a.originalPosition.left)||null;var h=parseInt(a.element.css("top"),10)+(a.position.top-a.originalPosition.top)||null;a.element.animate(e.extend(f,h&&g?{top:h,left:g}:{}),{duration:c.animateDuration,easing:c.animateEasing,step:function(){var i={width:parseInt(a.element.css("width"),10),height:parseInt(a.element.css("height"), +10),top:parseInt(a.element.css("top"),10),left:parseInt(a.element.css("left"),10)};d&&d.length&&e(d[0]).css({width:i.width,height:i.height});a._updateCache(i);a._propagate("resize",b)}})}});e.ui.plugin.add("resizable","containment",{start:function(){var b=e(this).data("resizable"),a=b.element,c=b.options.containment;if(a=c instanceof e?c.get(0):/parent/.test(c)?a.parent().get(0):c){b.containerElement=e(a);if(/document/.test(c)||c==document){b.containerOffset={left:0,top:0};b.containerPosition={left:0, +top:0};b.parentData={element:e(document),left:0,top:0,width:e(document).width(),height:e(document).height()||document.body.parentNode.scrollHeight}}else{var d=e(a),f=[];e(["Top","Right","Left","Bottom"]).each(function(i,j){f[i]=m(d.css("padding"+j))});b.containerOffset=d.offset();b.containerPosition=d.position();b.containerSize={height:d.innerHeight()-f[3],width:d.innerWidth()-f[1]};c=b.containerOffset;var g=b.containerSize.height,h=b.containerSize.width;h=e.ui.hasScroll(a,"left")?a.scrollWidth:h; +g=e.ui.hasScroll(a)?a.scrollHeight:g;b.parentData={element:a,left:c.left,top:c.top,width:h,height:g}}}},resize:function(b){var a=e(this).data("resizable"),c=a.options,d=a.containerOffset,f=a.position;b=a._aspectRatio||b.shiftKey;var g={top:0,left:0},h=a.containerElement;if(h[0]!=document&&/static/.test(h.css("position")))g=d;if(f.left<(a._helper?d.left:0)){a.size.width+=a._helper?a.position.left-d.left:a.position.left-g.left;if(b)a.size.height=a.size.width/c.aspectRatio;a.position.left=c.helper?d.left: +0}if(f.top<(a._helper?d.top:0)){a.size.height+=a._helper?a.position.top-d.top:a.position.top;if(b)a.size.width=a.size.height*c.aspectRatio;a.position.top=a._helper?d.top:0}a.offset.left=a.parentData.left+a.position.left;a.offset.top=a.parentData.top+a.position.top;c=Math.abs((a._helper?a.offset.left-g.left:a.offset.left-g.left)+a.sizeDiff.width);d=Math.abs((a._helper?a.offset.top-g.top:a.offset.top-d.top)+a.sizeDiff.height);f=a.containerElement.get(0)==a.element.parent().get(0);g=/relative|absolute/.test(a.containerElement.css("position")); +if(f&&g)c-=a.parentData.left;if(c+a.size.width>=a.parentData.width){a.size.width=a.parentData.width-c;if(b)a.size.height=a.size.width/a.aspectRatio}if(d+a.size.height>=a.parentData.height){a.size.height=a.parentData.height-d;if(b)a.size.width=a.size.height*a.aspectRatio}},stop:function(){var b=e(this).data("resizable"),a=b.options,c=b.containerOffset,d=b.containerPosition,f=b.containerElement,g=e(b.helper),h=g.offset(),i=g.outerWidth()-b.sizeDiff.width;g=g.outerHeight()-b.sizeDiff.height;b._helper&& +!a.animate&&/relative/.test(f.css("position"))&&e(this).css({left:h.left-d.left-c.left,width:i,height:g});b._helper&&!a.animate&&/static/.test(f.css("position"))&&e(this).css({left:h.left-d.left-c.left,width:i,height:g})}});e.ui.plugin.add("resizable","ghost",{start:function(){var b=e(this).data("resizable"),a=b.options,c=b.size;b.ghost=b.originalElement.clone();b.ghost.css({opacity:0.25,display:"block",position:"relative",height:c.height,width:c.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof a.ghost== +"string"?a.ghost:"");b.ghost.appendTo(b.helper)},resize:function(){var b=e(this).data("resizable");b.ghost&&b.ghost.css({position:"relative",height:b.size.height,width:b.size.width})},stop:function(){var b=e(this).data("resizable");b.ghost&&b.helper&&b.helper.get(0).removeChild(b.ghost.get(0))}});e.ui.plugin.add("resizable","grid",{resize:function(){var b=e(this).data("resizable"),a=b.options,c=b.size,d=b.originalSize,f=b.originalPosition,g=b.axis;a.grid=typeof a.grid=="number"?[a.grid,a.grid]:a.grid; +var h=Math.round((c.width-d.width)/(a.grid[0]||1))*(a.grid[0]||1);a=Math.round((c.height-d.height)/(a.grid[1]||1))*(a.grid[1]||1);if(/^(se|s|e)$/.test(g)){b.size.width=d.width+h;b.size.height=d.height+a}else if(/^(ne)$/.test(g)){b.size.width=d.width+h;b.size.height=d.height+a;b.position.top=f.top-a}else{if(/^(sw)$/.test(g)){b.size.width=d.width+h;b.size.height=d.height+a}else{b.size.width=d.width+h;b.size.height=d.height+a;b.position.top=f.top-a}b.position.left=f.left-h}}});var m=function(b){return parseInt(b, +10)||0},l=function(b){return!isNaN(parseInt(b,10))}})(jQuery); +;/* + * jQuery UI Selectable 1.8.13 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Selectables + * + * Depends: + * jquery.ui.core.js + * jquery.ui.mouse.js + * jquery.ui.widget.js + */ +(function(e){e.widget("ui.selectable",e.ui.mouse,{options:{appendTo:"body",autoRefresh:true,distance:0,filter:"*",tolerance:"touch"},_create:function(){var c=this;this.element.addClass("ui-selectable");this.dragged=false;var f;this.refresh=function(){f=e(c.options.filter,c.element[0]);f.each(function(){var d=e(this),b=d.offset();e.data(this,"selectable-item",{element:this,$element:d,left:b.left,top:b.top,right:b.left+d.outerWidth(),bottom:b.top+d.outerHeight(),startselected:false,selected:d.hasClass("ui-selected"), +selecting:d.hasClass("ui-selecting"),unselecting:d.hasClass("ui-unselecting")})})};this.refresh();this.selectees=f.addClass("ui-selectee");this._mouseInit();this.helper=e("
")},destroy:function(){this.selectees.removeClass("ui-selectee").removeData("selectable-item");this.element.removeClass("ui-selectable ui-selectable-disabled").removeData("selectable").unbind(".selectable");this._mouseDestroy();return this},_mouseStart:function(c){var f=this;this.opos=[c.pageX, +c.pageY];if(!this.options.disabled){var d=this.options;this.selectees=e(d.filter,this.element[0]);this._trigger("start",c);e(d.appendTo).append(this.helper);this.helper.css({left:c.clientX,top:c.clientY,width:0,height:0});d.autoRefresh&&this.refresh();this.selectees.filter(".ui-selected").each(function(){var b=e.data(this,"selectable-item");b.startselected=true;if(!c.metaKey){b.$element.removeClass("ui-selected");b.selected=false;b.$element.addClass("ui-unselecting");b.unselecting=true;f._trigger("unselecting", +c,{unselecting:b.element})}});e(c.target).parents().andSelf().each(function(){var b=e.data(this,"selectable-item");if(b){var g=!c.metaKey||!b.$element.hasClass("ui-selected");b.$element.removeClass(g?"ui-unselecting":"ui-selected").addClass(g?"ui-selecting":"ui-unselecting");b.unselecting=!g;b.selecting=g;(b.selected=g)?f._trigger("selecting",c,{selecting:b.element}):f._trigger("unselecting",c,{unselecting:b.element});return false}})}},_mouseDrag:function(c){var f=this;this.dragged=true;if(!this.options.disabled){var d= +this.options,b=this.opos[0],g=this.opos[1],h=c.pageX,i=c.pageY;if(b>h){var j=h;h=b;b=j}if(g>i){j=i;i=g;g=j}this.helper.css({left:b,top:g,width:h-b,height:i-g});this.selectees.each(function(){var a=e.data(this,"selectable-item");if(!(!a||a.element==f.element[0])){var k=false;if(d.tolerance=="touch")k=!(a.left>h||a.righti||a.bottomb&&a.rightg&&a.bottom *",opacity:false,placeholder:false,revert:false,scroll:true,scrollSensitivity:20,scrollSpeed:20,scope:"default",tolerance:"intersect",zIndex:1E3},_create:function(){var a=this.options;this.containerCache={};this.element.addClass("ui-sortable"); +this.refresh();this.floating=this.items.length?a.axis==="x"||/left|right/.test(this.items[0].item.css("float"))||/inline|table-cell/.test(this.items[0].item.css("display")):false;this.offset=this.element.offset();this._mouseInit()},destroy:function(){this.element.removeClass("ui-sortable ui-sortable-disabled").removeData("sortable").unbind(".sortable");this._mouseDestroy();for(var a=this.items.length-1;a>=0;a--)this.items[a].item.removeData("sortable-item");return this},_setOption:function(a,b){if(a=== +"disabled"){this.options[a]=b;this.widget()[b?"addClass":"removeClass"]("ui-sortable-disabled")}else d.Widget.prototype._setOption.apply(this,arguments)},_mouseCapture:function(a,b){if(this.reverting)return false;if(this.options.disabled||this.options.type=="static")return false;this._refreshItems(a);var c=null,e=this;d(a.target).parents().each(function(){if(d.data(this,"sortable-item")==e){c=d(this);return false}});if(d.data(a.target,"sortable-item")==e)c=d(a.target);if(!c)return false;if(this.options.handle&& +!b){var f=false;d(this.options.handle,c).find("*").andSelf().each(function(){if(this==a.target)f=true});if(!f)return false}this.currentItem=c;this._removeCurrentsFromItems();return true},_mouseStart:function(a,b,c){b=this.options;var e=this;this.currentContainer=this;this.refreshPositions();this.helper=this._createHelper(a);this._cacheHelperProportions();this._cacheMargins();this.scrollParent=this.helper.scrollParent();this.offset=this.currentItem.offset();this.offset={top:this.offset.top-this.margins.top, +left:this.offset.left-this.margins.left};this.helper.css("position","absolute");this.cssPosition=this.helper.css("position");d.extend(this.offset,{click:{left:a.pageX-this.offset.left,top:a.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()});this.originalPosition=this._generatePosition(a);this.originalPageX=a.pageX;this.originalPageY=a.pageY;b.cursorAt&&this._adjustOffsetFromHelper(b.cursorAt);this.domPosition={prev:this.currentItem.prev()[0],parent:this.currentItem.parent()[0]}; +this.helper[0]!=this.currentItem[0]&&this.currentItem.hide();this._createPlaceholder();b.containment&&this._setContainment();if(b.cursor){if(d("body").css("cursor"))this._storedCursor=d("body").css("cursor");d("body").css("cursor",b.cursor)}if(b.opacity){if(this.helper.css("opacity"))this._storedOpacity=this.helper.css("opacity");this.helper.css("opacity",b.opacity)}if(b.zIndex){if(this.helper.css("zIndex"))this._storedZIndex=this.helper.css("zIndex");this.helper.css("zIndex",b.zIndex)}if(this.scrollParent[0]!= +document&&this.scrollParent[0].tagName!="HTML")this.overflowOffset=this.scrollParent.offset();this._trigger("start",a,this._uiHash());this._preserveHelperProportions||this._cacheHelperProportions();if(!c)for(c=this.containers.length-1;c>=0;c--)this.containers[c]._trigger("activate",a,e._uiHash(this));if(d.ui.ddmanager)d.ui.ddmanager.current=this;d.ui.ddmanager&&!b.dropBehaviour&&d.ui.ddmanager.prepareOffsets(this,a);this.dragging=true;this.helper.addClass("ui-sortable-helper");this._mouseDrag(a); +return true},_mouseDrag:function(a){this.position=this._generatePosition(a);this.positionAbs=this._convertPositionTo("absolute");if(!this.lastPositionAbs)this.lastPositionAbs=this.positionAbs;if(this.options.scroll){var b=this.options,c=false;if(this.scrollParent[0]!=document&&this.scrollParent[0].tagName!="HTML"){if(this.overflowOffset.top+this.scrollParent[0].offsetHeight-a.pageY=0;b--){c=this.items[b];var e=c.item[0],f=this._intersectsWithPointer(c);if(f)if(e!=this.currentItem[0]&&this.placeholder[f==1?"next":"prev"]()[0]!=e&&!d.ui.contains(this.placeholder[0],e)&&(this.options.type=="semi-dynamic"?!d.ui.contains(this.element[0], +e):true)){this.direction=f==1?"down":"up";if(this.options.tolerance=="pointer"||this._intersectsWithSides(c))this._rearrange(a,c);else break;this._trigger("change",a,this._uiHash());break}}this._contactContainers(a);d.ui.ddmanager&&d.ui.ddmanager.drag(this,a);this._trigger("sort",a,this._uiHash());this.lastPositionAbs=this.positionAbs;return false},_mouseStop:function(a,b){if(a){d.ui.ddmanager&&!this.options.dropBehaviour&&d.ui.ddmanager.drop(this,a);if(this.options.revert){var c=this;b=c.placeholder.offset(); +c.reverting=true;d(this.helper).animate({left:b.left-this.offset.parent.left-c.margins.left+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollLeft),top:b.top-this.offset.parent.top-c.margins.top+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollTop)},parseInt(this.options.revert,10)||500,function(){c._clear(a)})}else this._clear(a,b);return false}},cancel:function(){var a=this;if(this.dragging){this._mouseUp({target:null});this.options.helper=="original"?this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper"): +this.currentItem.show();for(var b=this.containers.length-1;b>=0;b--){this.containers[b]._trigger("deactivate",null,a._uiHash(this));if(this.containers[b].containerCache.over){this.containers[b]._trigger("out",null,a._uiHash(this));this.containers[b].containerCache.over=0}}}if(this.placeholder){this.placeholder[0].parentNode&&this.placeholder[0].parentNode.removeChild(this.placeholder[0]);this.options.helper!="original"&&this.helper&&this.helper[0].parentNode&&this.helper.remove();d.extend(this,{helper:null, +dragging:false,reverting:false,_noFinalSort:null});this.domPosition.prev?d(this.domPosition.prev).after(this.currentItem):d(this.domPosition.parent).prepend(this.currentItem)}return this},serialize:function(a){var b=this._getItemsAsjQuery(a&&a.connected),c=[];a=a||{};d(b).each(function(){var e=(d(a.item||this).attr(a.attribute||"id")||"").match(a.expression||/(.+)[-=_](.+)/);if(e)c.push((a.key||e[1]+"[]")+"="+(a.key&&a.expression?e[1]:e[2]))});!c.length&&a.key&&c.push(a.key+"=");return c.join("&")}, +toArray:function(a){var b=this._getItemsAsjQuery(a&&a.connected),c=[];a=a||{};b.each(function(){c.push(d(a.item||this).attr(a.attribute||"id")||"")});return c},_intersectsWith:function(a){var b=this.positionAbs.left,c=b+this.helperProportions.width,e=this.positionAbs.top,f=e+this.helperProportions.height,g=a.left,h=g+a.width,i=a.top,k=i+a.height,j=this.offset.click.top,l=this.offset.click.left;j=e+j>i&&e+jg&&b+la[this.floating?"width":"height"]?j:g0?"down":"up")},_getDragHorizontalDirection:function(){var a=this.positionAbs.left-this.lastPositionAbs.left;return a!=0&&(a>0?"right":"left")},refresh:function(a){this._refreshItems(a);this.refreshPositions();return this},_connectWith:function(){var a=this.options;return a.connectWith.constructor==String?[a.connectWith]:a.connectWith},_getItemsAsjQuery:function(a){var b=[],c=[],e=this._connectWith(); +if(e&&a)for(a=e.length-1;a>=0;a--)for(var f=d(e[a]),g=f.length-1;g>=0;g--){var h=d.data(f[g],"sortable");if(h&&h!=this&&!h.options.disabled)c.push([d.isFunction(h.options.items)?h.options.items.call(h.element):d(h.options.items,h.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),h])}c.push([d.isFunction(this.options.items)?this.options.items.call(this.element,null,{options:this.options,item:this.currentItem}):d(this.options.items,this.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"), +this]);for(a=c.length-1;a>=0;a--)c[a][0].each(function(){b.push(this)});return d(b)},_removeCurrentsFromItems:function(){for(var a=this.currentItem.find(":data(sortable-item)"),b=0;b=0;f--)for(var g=d(e[f]),h=g.length-1;h>=0;h--){var i=d.data(g[h],"sortable");if(i&&i!=this&&!i.options.disabled){c.push([d.isFunction(i.options.items)?i.options.items.call(i.element[0],a,{item:this.currentItem}):d(i.options.items,i.element),i]);this.containers.push(i)}}for(f=c.length-1;f>=0;f--){a=c[f][1];e=c[f][0];h=0;for(g=e.length;h=0;b--){var c=this.items[b];if(!(c.instance!=this.currentContainer&&this.currentContainer&&c.item[0]!=this.currentItem[0])){var e=this.options.toleranceElement?d(this.options.toleranceElement,c.item):c.item;if(!a){c.width=e.outerWidth();c.height=e.outerHeight()}e=e.offset();c.left=e.left;c.top=e.top}}if(this.options.custom&&this.options.custom.refreshContainers)this.options.custom.refreshContainers.call(this);else for(b= +this.containers.length-1;b>=0;b--){e=this.containers[b].element.offset();this.containers[b].containerCache.left=e.left;this.containers[b].containerCache.top=e.top;this.containers[b].containerCache.width=this.containers[b].element.outerWidth();this.containers[b].containerCache.height=this.containers[b].element.outerHeight()}return this},_createPlaceholder:function(a){var b=a||this,c=b.options;if(!c.placeholder||c.placeholder.constructor==String){var e=c.placeholder;c.placeholder={element:function(){var f= +d(document.createElement(b.currentItem[0].nodeName)).addClass(e||b.currentItem[0].className+" ui-sortable-placeholder").removeClass("ui-sortable-helper")[0];if(!e)f.style.visibility="hidden";return f},update:function(f,g){if(!(e&&!c.forcePlaceholderSize)){g.height()||g.height(b.currentItem.innerHeight()-parseInt(b.currentItem.css("paddingTop")||0,10)-parseInt(b.currentItem.css("paddingBottom")||0,10));g.width()||g.width(b.currentItem.innerWidth()-parseInt(b.currentItem.css("paddingLeft")||0,10)-parseInt(b.currentItem.css("paddingRight")|| +0,10))}}}}b.placeholder=d(c.placeholder.element.call(b.element,b.currentItem));b.currentItem.after(b.placeholder);c.placeholder.update(b,b.placeholder)},_contactContainers:function(a){for(var b=null,c=null,e=this.containers.length-1;e>=0;e--)if(!d.ui.contains(this.currentItem[0],this.containers[e].element[0]))if(this._intersectsWith(this.containers[e].containerCache)){if(!(b&&d.ui.contains(this.containers[e].element[0],b.element[0]))){b=this.containers[e];c=e}}else if(this.containers[e].containerCache.over){this.containers[e]._trigger("out", +a,this._uiHash(this));this.containers[e].containerCache.over=0}if(b)if(this.containers.length===1){this.containers[c]._trigger("over",a,this._uiHash(this));this.containers[c].containerCache.over=1}else if(this.currentContainer!=this.containers[c]){b=1E4;e=null;for(var f=this.positionAbs[this.containers[c].floating?"left":"top"],g=this.items.length-1;g>=0;g--)if(d.ui.contains(this.containers[c].element[0],this.items[g].item[0])){var h=this.items[g][this.containers[c].floating?"left":"top"];if(Math.abs(h- +f)this.containment[2])f=this.containment[2]+this.offset.click.left;if(a.pageY-this.offset.click.top>this.containment[3])g=this.containment[3]+this.offset.click.top}if(b.grid){g=this.originalPageY+Math.round((g- +this.originalPageY)/b.grid[1])*b.grid[1];g=this.containment?!(g-this.offset.click.topthis.containment[3])?g:!(g-this.offset.click.topthis.containment[2])?f:!(f-this.offset.click.left=0;e--)if(d.ui.contains(this.containers[e].element[0],this.currentItem[0])&&!b){c.push(function(f){return function(g){f._trigger("receive",g,this._uiHash(this))}}.call(this,this.containers[e]));c.push(function(f){return function(g){f._trigger("update",g,this._uiHash(this))}}.call(this,this.containers[e]))}}for(e=this.containers.length-1;e>=0;e--){b||c.push(function(f){return function(g){f._trigger("deactivate",g,this._uiHash(this))}}.call(this, +this.containers[e]));if(this.containers[e].containerCache.over){c.push(function(f){return function(g){f._trigger("out",g,this._uiHash(this))}}.call(this,this.containers[e]));this.containers[e].containerCache.over=0}}this._storedCursor&&d("body").css("cursor",this._storedCursor);this._storedOpacity&&this.helper.css("opacity",this._storedOpacity);if(this._storedZIndex)this.helper.css("zIndex",this._storedZIndex=="auto"?"":this._storedZIndex);this.dragging=false;if(this.cancelHelperRemoval){if(!b){this._trigger("beforeStop", +a,this._uiHash());for(e=0;e li > :first-child,> :not(li):even",icons:{header:"ui-icon-triangle-1-e",headerSelected:"ui-icon-triangle-1-s"},navigation:false,navigationFilter:function(){return this.href.toLowerCase()===location.href.toLowerCase()}},_create:function(){var a=this,b=a.options;a.running=0;a.element.addClass("ui-accordion ui-widget ui-helper-reset").children("li").addClass("ui-accordion-li-fix"); +a.headers=a.element.find(b.header).addClass("ui-accordion-header ui-helper-reset ui-state-default ui-corner-all").bind("mouseenter.accordion",function(){b.disabled||c(this).addClass("ui-state-hover")}).bind("mouseleave.accordion",function(){b.disabled||c(this).removeClass("ui-state-hover")}).bind("focus.accordion",function(){b.disabled||c(this).addClass("ui-state-focus")}).bind("blur.accordion",function(){b.disabled||c(this).removeClass("ui-state-focus")});a.headers.next().addClass("ui-accordion-content ui-helper-reset ui-widget-content ui-corner-bottom"); +if(b.navigation){var d=a.element.find("a").filter(b.navigationFilter).eq(0);if(d.length){var h=d.closest(".ui-accordion-header");a.active=h.length?h:d.closest(".ui-accordion-content").prev()}}a.active=a._findActive(a.active||b.active).addClass("ui-state-default ui-state-active").toggleClass("ui-corner-all").toggleClass("ui-corner-top");a.active.next().addClass("ui-accordion-content-active");a._createIcons();a.resize();a.element.attr("role","tablist");a.headers.attr("role","tab").bind("keydown.accordion", +function(f){return a._keydown(f)}).next().attr("role","tabpanel");a.headers.not(a.active||"").attr({"aria-expanded":"false","aria-selected":"false",tabIndex:-1}).next().hide();a.active.length?a.active.attr({"aria-expanded":"true","aria-selected":"true",tabIndex:0}):a.headers.eq(0).attr("tabIndex",0);c.browser.safari||a.headers.find("a").attr("tabIndex",-1);b.event&&a.headers.bind(b.event.split(" ").join(".accordion ")+".accordion",function(f){a._clickHandler.call(a,f,this);f.preventDefault()})},_createIcons:function(){var a= +this.options;if(a.icons){c("").addClass("ui-icon "+a.icons.header).prependTo(this.headers);this.active.children(".ui-icon").toggleClass(a.icons.header).toggleClass(a.icons.headerSelected);this.element.addClass("ui-accordion-icons")}},_destroyIcons:function(){this.headers.children(".ui-icon").remove();this.element.removeClass("ui-accordion-icons")},destroy:function(){var a=this.options;this.element.removeClass("ui-accordion ui-widget ui-helper-reset").removeAttr("role");this.headers.unbind(".accordion").removeClass("ui-accordion-header ui-accordion-disabled ui-helper-reset ui-state-default ui-corner-all ui-state-active ui-state-disabled ui-corner-top").removeAttr("role").removeAttr("aria-expanded").removeAttr("aria-selected").removeAttr("tabIndex"); +this.headers.find("a").removeAttr("tabIndex");this._destroyIcons();var b=this.headers.next().css("display","").removeAttr("role").removeClass("ui-helper-reset ui-widget-content ui-corner-bottom ui-accordion-content ui-accordion-content-active ui-accordion-disabled ui-state-disabled");if(a.autoHeight||a.fillHeight)b.css("height","");return c.Widget.prototype.destroy.call(this)},_setOption:function(a,b){c.Widget.prototype._setOption.apply(this,arguments);a=="active"&&this.activate(b);if(a=="icons"){this._destroyIcons(); +b&&this._createIcons()}if(a=="disabled")this.headers.add(this.headers.next())[b?"addClass":"removeClass"]("ui-accordion-disabled ui-state-disabled")},_keydown:function(a){if(!(this.options.disabled||a.altKey||a.ctrlKey)){var b=c.ui.keyCode,d=this.headers.length,h=this.headers.index(a.target),f=false;switch(a.keyCode){case b.RIGHT:case b.DOWN:f=this.headers[(h+1)%d];break;case b.LEFT:case b.UP:f=this.headers[(h-1+d)%d];break;case b.SPACE:case b.ENTER:this._clickHandler({target:a.target},a.target); +a.preventDefault()}if(f){c(a.target).attr("tabIndex",-1);c(f).attr("tabIndex",0);f.focus();return false}return true}},resize:function(){var a=this.options,b;if(a.fillSpace){if(c.browser.msie){var d=this.element.parent().css("overflow");this.element.parent().css("overflow","hidden")}b=this.element.parent().height();c.browser.msie&&this.element.parent().css("overflow",d);this.headers.each(function(){b-=c(this).outerHeight(true)});this.headers.next().each(function(){c(this).height(Math.max(0,b-c(this).innerHeight()+ +c(this).height()))}).css("overflow","auto")}else if(a.autoHeight){b=0;this.headers.next().each(function(){b=Math.max(b,c(this).height("").height())}).height(b)}return this},activate:function(a){this.options.active=a;a=this._findActive(a)[0];this._clickHandler({target:a},a);return this},_findActive:function(a){return a?typeof a==="number"?this.headers.filter(":eq("+a+")"):this.headers.not(this.headers.not(a)):a===false?c([]):this.headers.filter(":eq(0)")},_clickHandler:function(a,b){var d=this.options; +if(!d.disabled)if(a.target){a=c(a.currentTarget||b);b=a[0]===this.active[0];d.active=d.collapsible&&b?false:this.headers.index(a);if(!(this.running||!d.collapsible&&b)){var h=this.active;j=a.next();g=this.active.next();e={options:d,newHeader:b&&d.collapsible?c([]):a,oldHeader:this.active,newContent:b&&d.collapsible?c([]):j,oldContent:g};var f=this.headers.index(this.active[0])>this.headers.index(a[0]);this.active=b?c([]):a;this._toggle(j,g,e,b,f);h.removeClass("ui-state-active ui-corner-top").addClass("ui-state-default ui-corner-all").children(".ui-icon").removeClass(d.icons.headerSelected).addClass(d.icons.header); +if(!b){a.removeClass("ui-state-default ui-corner-all").addClass("ui-state-active ui-corner-top").children(".ui-icon").removeClass(d.icons.header).addClass(d.icons.headerSelected);a.next().addClass("ui-accordion-content-active")}}}else if(d.collapsible){this.active.removeClass("ui-state-active ui-corner-top").addClass("ui-state-default ui-corner-all").children(".ui-icon").removeClass(d.icons.headerSelected).addClass(d.icons.header);this.active.next().addClass("ui-accordion-content-active");var g=this.active.next(), +e={options:d,newHeader:c([]),oldHeader:d.active,newContent:c([]),oldContent:g},j=this.active=c([]);this._toggle(j,g,e)}},_toggle:function(a,b,d,h,f){var g=this,e=g.options;g.toShow=a;g.toHide=b;g.data=d;var j=function(){if(g)return g._completed.apply(g,arguments)};g._trigger("changestart",null,g.data);g.running=b.size()===0?a.size():b.size();if(e.animated){d={};d=e.collapsible&&h?{toShow:c([]),toHide:b,complete:j,down:f,autoHeight:e.autoHeight||e.fillSpace}:{toShow:a,toHide:b,complete:j,down:f,autoHeight:e.autoHeight|| +e.fillSpace};if(!e.proxied)e.proxied=e.animated;if(!e.proxiedDuration)e.proxiedDuration=e.duration;e.animated=c.isFunction(e.proxied)?e.proxied(d):e.proxied;e.duration=c.isFunction(e.proxiedDuration)?e.proxiedDuration(d):e.proxiedDuration;h=c.ui.accordion.animations;var i=e.duration,k=e.animated;if(k&&!h[k]&&!c.easing[k])k="slide";h[k]||(h[k]=function(l){this.slide(l,{easing:k,duration:i||700})});h[k](d)}else{if(e.collapsible&&h)a.toggle();else{b.hide();a.show()}j(true)}b.prev().attr({"aria-expanded":"false", +"aria-selected":"false",tabIndex:-1}).blur();a.prev().attr({"aria-expanded":"true","aria-selected":"true",tabIndex:0}).focus()},_completed:function(a){this.running=a?0:--this.running;if(!this.running){this.options.clearStyle&&this.toShow.add(this.toHide).css({height:"",overflow:""});this.toHide.removeClass("ui-accordion-content-active");if(this.toHide.length)this.toHide.parent()[0].className=this.toHide.parent()[0].className;this._trigger("change",null,this.data)}}});c.extend(c.ui.accordion,{version:"1.8.13", +animations:{slide:function(a,b){a=c.extend({easing:"swing",duration:300},a,b);if(a.toHide.size())if(a.toShow.size()){var d=a.toShow.css("overflow"),h=0,f={},g={},e;b=a.toShow;e=b[0].style.width;b.width(parseInt(b.parent().width(),10)-parseInt(b.css("paddingLeft"),10)-parseInt(b.css("paddingRight"),10)-(parseInt(b.css("borderLeftWidth"),10)||0)-(parseInt(b.css("borderRightWidth"),10)||0));c.each(["height","paddingTop","paddingBottom"],function(j,i){g[i]="hide";j=(""+c.css(a.toShow[0],i)).match(/^([\d+-.]+)(.*)$/); +f[i]={value:j[1],unit:j[2]||"px"}});a.toShow.css({height:0,overflow:"hidden"}).show();a.toHide.filter(":hidden").each(a.complete).end().filter(":visible").animate(g,{step:function(j,i){if(i.prop=="height")h=i.end-i.start===0?0:(i.now-i.start)/(i.end-i.start);a.toShow[0].style[i.prop]=h*f[i.prop].value+f[i.prop].unit},duration:a.duration,easing:a.easing,complete:function(){a.autoHeight||a.toShow.css("height","");a.toShow.css({width:e,overflow:d});a.complete()}})}else a.toHide.animate({height:"hide", +paddingTop:"hide",paddingBottom:"hide"},a);else a.toShow.animate({height:"show",paddingTop:"show",paddingBottom:"show"},a)},bounceslide:function(a){this.slide(a,{easing:a.down?"easeOutBounce":"swing",duration:a.down?1E3:200})}}})})(jQuery); +;/* + * jQuery UI Autocomplete 1.8.13 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Autocomplete + * + * Depends: + * jquery.ui.core.js + * jquery.ui.widget.js + * jquery.ui.position.js + */ +(function(d){var e=0;d.widget("ui.autocomplete",{options:{appendTo:"body",autoFocus:false,delay:300,minLength:1,position:{my:"left top",at:"left bottom",collision:"none"},source:null},pending:0,_create:function(){var a=this,b=this.element[0].ownerDocument,g;this.element.addClass("ui-autocomplete-input").attr("autocomplete","off").attr({role:"textbox","aria-autocomplete":"list","aria-haspopup":"true"}).bind("keydown.autocomplete",function(c){if(!(a.options.disabled||a.element.attr("readonly"))){g= +false;var f=d.ui.keyCode;switch(c.keyCode){case f.PAGE_UP:a._move("previousPage",c);break;case f.PAGE_DOWN:a._move("nextPage",c);break;case f.UP:a._move("previous",c);c.preventDefault();break;case f.DOWN:a._move("next",c);c.preventDefault();break;case f.ENTER:case f.NUMPAD_ENTER:if(a.menu.active){g=true;c.preventDefault()}case f.TAB:if(!a.menu.active)return;a.menu.select(c);break;case f.ESCAPE:a.element.val(a.term);a.close(c);break;default:clearTimeout(a.searching);a.searching=setTimeout(function(){if(a.term!= +a.element.val()){a.selectedItem=null;a.search(null,c)}},a.options.delay);break}}}).bind("keypress.autocomplete",function(c){if(g){g=false;c.preventDefault()}}).bind("focus.autocomplete",function(){if(!a.options.disabled){a.selectedItem=null;a.previous=a.element.val()}}).bind("blur.autocomplete",function(c){if(!a.options.disabled){clearTimeout(a.searching);a.closing=setTimeout(function(){a.close(c);a._change(c)},150)}});this._initSource();this.response=function(){return a._response.apply(a,arguments)}; +this.menu=d("
    ").addClass("ui-autocomplete").appendTo(d(this.options.appendTo||"body",b)[0]).mousedown(function(c){var f=a.menu.element[0];d(c.target).closest(".ui-menu-item").length||setTimeout(function(){d(document).one("mousedown",function(h){h.target!==a.element[0]&&h.target!==f&&!d.ui.contains(f,h.target)&&a.close()})},1);setTimeout(function(){clearTimeout(a.closing)},13)}).menu({focus:function(c,f){f=f.item.data("item.autocomplete");false!==a._trigger("focus",c,{item:f})&&/^key/.test(c.originalEvent.type)&& +a.element.val(f.value)},selected:function(c,f){var h=f.item.data("item.autocomplete"),i=a.previous;if(a.element[0]!==b.activeElement){a.element.focus();a.previous=i;setTimeout(function(){a.previous=i;a.selectedItem=h},1)}false!==a._trigger("select",c,{item:h})&&a.element.val(h.value);a.term=a.element.val();a.close(c);a.selectedItem=h},blur:function(){a.menu.element.is(":visible")&&a.element.val()!==a.term&&a.element.val(a.term)}}).zIndex(this.element.zIndex()+1).css({top:0,left:0}).hide().data("menu"); +d.fn.bgiframe&&this.menu.element.bgiframe()},destroy:function(){this.element.removeClass("ui-autocomplete-input").removeAttr("autocomplete").removeAttr("role").removeAttr("aria-autocomplete").removeAttr("aria-haspopup");this.menu.element.remove();d.Widget.prototype.destroy.call(this)},_setOption:function(a,b){d.Widget.prototype._setOption.apply(this,arguments);a==="source"&&this._initSource();if(a==="appendTo")this.menu.element.appendTo(d(b||"body",this.element[0].ownerDocument)[0]);a==="disabled"&& +b&&this.xhr&&this.xhr.abort()},_initSource:function(){var a=this,b,g;if(d.isArray(this.options.source)){b=this.options.source;this.source=function(c,f){f(d.ui.autocomplete.filter(b,c.term))}}else if(typeof this.options.source==="string"){g=this.options.source;this.source=function(c,f){a.xhr&&a.xhr.abort();a.xhr=d.ajax({url:g,data:c,dataType:"json",autocompleteRequest:++e,success:function(h){this.autocompleteRequest===e&&f(h)},error:function(){this.autocompleteRequest===e&&f([])}})}}else this.source= +this.options.source},search:function(a,b){a=a!=null?a:this.element.val();this.term=this.element.val();if(a.length").data("item.autocomplete",b).append(d("").text(b.label)).appendTo(a)},_move:function(a,b){if(this.menu.element.is(":visible"))if(this.menu.first()&&/^previous/.test(a)||this.menu.last()&&/^next/.test(a)){this.element.val(this.term);this.menu.deactivate()}else this.menu[a](b);else this.search(null,b)},widget:function(){return this.menu.element}});d.extend(d.ui.autocomplete,{escapeRegex:function(a){return a.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, +"\\$&")},filter:function(a,b){var g=new RegExp(d.ui.autocomplete.escapeRegex(b),"i");return d.grep(a,function(c){return g.test(c.label||c.value||c)})}})})(jQuery); +(function(d){d.widget("ui.menu",{_create:function(){var e=this;this.element.addClass("ui-menu ui-widget ui-widget-content ui-corner-all").attr({role:"listbox","aria-activedescendant":"ui-active-menuitem"}).click(function(a){if(d(a.target).closest(".ui-menu-item a").length){a.preventDefault();e.select(a)}});this.refresh()},refresh:function(){var e=this;this.element.children("li:not(.ui-menu-item):has(a)").addClass("ui-menu-item").attr("role","menuitem").children("a").addClass("ui-corner-all").attr("tabindex", +-1).mouseenter(function(a){e.activate(a,d(this).parent())}).mouseleave(function(){e.deactivate()})},activate:function(e,a){this.deactivate();if(this.hasScroll()){var b=a.offset().top-this.element.offset().top,g=this.element.scrollTop(),c=this.element.height();if(b<0)this.element.scrollTop(g+b);else b>=c&&this.element.scrollTop(g+b-c+a.height())}this.active=a.eq(0).children("a").addClass("ui-state-hover").attr("id","ui-active-menuitem").end();this._trigger("focus",e,{item:a})},deactivate:function(){if(this.active){this.active.children("a").removeClass("ui-state-hover").removeAttr("id"); +this._trigger("blur");this.active=null}},next:function(e){this.move("next",".ui-menu-item:first",e)},previous:function(e){this.move("prev",".ui-menu-item:last",e)},first:function(){return this.active&&!this.active.prevAll(".ui-menu-item").length},last:function(){return this.active&&!this.active.nextAll(".ui-menu-item").length},move:function(e,a,b){if(this.active){e=this.active[e+"All"](".ui-menu-item").eq(0);e.length?this.activate(b,e):this.activate(b,this.element.children(a))}else this.activate(b, +this.element.children(a))},nextPage:function(e){if(this.hasScroll())if(!this.active||this.last())this.activate(e,this.element.children(".ui-menu-item:first"));else{var a=this.active.offset().top,b=this.element.height(),g=this.element.children(".ui-menu-item").filter(function(){var c=d(this).offset().top-a-b+d(this).height();return c<10&&c>-10});g.length||(g=this.element.children(".ui-menu-item:last"));this.activate(e,g)}else this.activate(e,this.element.children(".ui-menu-item").filter(!this.active|| +this.last()?":first":":last"))},previousPage:function(e){if(this.hasScroll())if(!this.active||this.first())this.activate(e,this.element.children(".ui-menu-item:last"));else{var a=this.active.offset().top,b=this.element.height();result=this.element.children(".ui-menu-item").filter(function(){var g=d(this).offset().top-a+b-d(this).height();return g<10&&g>-10});result.length||(result=this.element.children(".ui-menu-item:first"));this.activate(e,result)}else this.activate(e,this.element.children(".ui-menu-item").filter(!this.active|| +this.first()?":last":":first"))},hasScroll:function(){return this.element.height()").addClass("ui-button-text").html(this.options.label).appendTo(b.empty()).text(),d=this.options.icons,f=d.primary&&d.secondary,e=[];if(d.primary||d.secondary){if(this.options.text)e.push("ui-button-text-icon"+(f?"s":d.primary?"-primary":"-secondary"));d.primary&&b.prepend("");d.secondary&&b.append("");if(!this.options.text){e.push(f?"ui-button-icons-only": +"ui-button-icon-only");this.hasTitle||b.attr("title",c)}}else e.push("ui-button-text-only");b.addClass(e.join(" "))}}});a.widget("ui.buttonset",{options:{items:":button, :submit, :reset, :checkbox, :radio, a, :data(button)"},_create:function(){this.element.addClass("ui-buttonset")},_init:function(){this.refresh()},_setOption:function(b,c){b==="disabled"&&this.buttons.button("option",b,c);a.Widget.prototype._setOption.apply(this,arguments)},refresh:function(){this.buttons=this.element.find(this.options.items).filter(":ui-button").button("refresh").end().not(":ui-button").button().end().map(function(){return a(this).button("widget")[0]}).removeClass("ui-corner-all ui-corner-left ui-corner-right").filter(":first").addClass("ui-corner-left").end().filter(":last").addClass("ui-corner-right").end().end()}, +destroy:function(){this.element.removeClass("ui-buttonset");this.buttons.map(function(){return a(this).button("widget")[0]}).removeClass("ui-corner-left ui-corner-right").end().button("destroy");a.Widget.prototype.destroy.call(this)}})})(jQuery); +;/* + * jQuery UI Dialog 1.8.13 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Dialog + * + * Depends: + * jquery.ui.core.js + * jquery.ui.widget.js + * jquery.ui.button.js + * jquery.ui.draggable.js + * jquery.ui.mouse.js + * jquery.ui.position.js + * jquery.ui.resizable.js + */ +(function(c,l){var m={buttons:true,height:true,maxHeight:true,maxWidth:true,minHeight:true,minWidth:true,width:true},n={maxHeight:true,maxWidth:true,minHeight:true,minWidth:true},o=c.attrFn||{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true,click:true};c.widget("ui.dialog",{options:{autoOpen:true,buttons:{},closeOnEscape:true,closeText:"close",dialogClass:"",draggable:true,hide:null,height:"auto",maxHeight:false,maxWidth:false,minHeight:150,minWidth:150,modal:false, +position:{my:"center",at:"center",collision:"fit",using:function(a){var b=c(this).css(a).offset().top;b<0&&c(this).css("top",a.top-b)}},resizable:true,show:null,stack:true,title:"",width:300,zIndex:1E3},_create:function(){this.originalTitle=this.element.attr("title");if(typeof this.originalTitle!=="string")this.originalTitle="";this.options.title=this.options.title||this.originalTitle;var a=this,b=a.options,d=b.title||" ",e=c.ui.dialog.getTitleId(a.element),g=(a.uiDialog=c("
    ")).appendTo(document.body).hide().addClass("ui-dialog ui-widget ui-widget-content ui-corner-all "+ +b.dialogClass).css({zIndex:b.zIndex}).attr("tabIndex",-1).css("outline",0).keydown(function(i){if(b.closeOnEscape&&i.keyCode&&i.keyCode===c.ui.keyCode.ESCAPE){a.close(i);i.preventDefault()}}).attr({role:"dialog","aria-labelledby":e}).mousedown(function(i){a.moveToTop(false,i)});a.element.show().removeAttr("title").addClass("ui-dialog-content ui-widget-content").appendTo(g);var f=(a.uiDialogTitlebar=c("
    ")).addClass("ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix").prependTo(g), +h=c('').addClass("ui-dialog-titlebar-close ui-corner-all").attr("role","button").hover(function(){h.addClass("ui-state-hover")},function(){h.removeClass("ui-state-hover")}).focus(function(){h.addClass("ui-state-focus")}).blur(function(){h.removeClass("ui-state-focus")}).click(function(i){a.close(i);return false}).appendTo(f);(a.uiDialogTitlebarCloseText=c("")).addClass("ui-icon ui-icon-closethick").text(b.closeText).appendTo(h);c("").addClass("ui-dialog-title").attr("id", +e).html(d).prependTo(f);if(c.isFunction(b.beforeclose)&&!c.isFunction(b.beforeClose))b.beforeClose=b.beforeclose;f.find("*").add(f).disableSelection();b.draggable&&c.fn.draggable&&a._makeDraggable();b.resizable&&c.fn.resizable&&a._makeResizable();a._createButtons(b.buttons);a._isOpen=false;c.fn.bgiframe&&g.bgiframe()},_init:function(){this.options.autoOpen&&this.open()},destroy:function(){var a=this;a.overlay&&a.overlay.destroy();a.uiDialog.hide();a.element.unbind(".dialog").removeData("dialog").removeClass("ui-dialog-content ui-widget-content").hide().appendTo("body"); +a.uiDialog.remove();a.originalTitle&&a.element.attr("title",a.originalTitle);return a},widget:function(){return this.uiDialog},close:function(a){var b=this,d,e;if(false!==b._trigger("beforeClose",a)){b.overlay&&b.overlay.destroy();b.uiDialog.unbind("keypress.ui-dialog");b._isOpen=false;if(b.options.hide)b.uiDialog.hide(b.options.hide,function(){b._trigger("close",a)});else{b.uiDialog.hide();b._trigger("close",a)}c.ui.dialog.overlay.resize();if(b.options.modal){d=0;c(".ui-dialog").each(function(){if(this!== +b.uiDialog[0]){e=c(this).css("z-index");isNaN(e)||(d=Math.max(d,e))}});c.ui.dialog.maxZ=d}return b}},isOpen:function(){return this._isOpen},moveToTop:function(a,b){var d=this,e=d.options;if(e.modal&&!a||!e.stack&&!e.modal)return d._trigger("focus",b);if(e.zIndex>c.ui.dialog.maxZ)c.ui.dialog.maxZ=e.zIndex;if(d.overlay){c.ui.dialog.maxZ+=1;d.overlay.$el.css("z-index",c.ui.dialog.overlay.maxZ=c.ui.dialog.maxZ)}a={scrollTop:d.element.attr("scrollTop"),scrollLeft:d.element.attr("scrollLeft")};c.ui.dialog.maxZ+= +1;d.uiDialog.css("z-index",c.ui.dialog.maxZ);d.element.attr(a);d._trigger("focus",b);return d},open:function(){if(!this._isOpen){var a=this,b=a.options,d=a.uiDialog;a.overlay=b.modal?new c.ui.dialog.overlay(a):null;a._size();a._position(b.position);d.show(b.show);a.moveToTop(true);b.modal&&d.bind("keypress.ui-dialog",function(e){if(e.keyCode===c.ui.keyCode.TAB){var g=c(":tabbable",this),f=g.filter(":first");g=g.filter(":last");if(e.target===g[0]&&!e.shiftKey){f.focus(1);return false}else if(e.target=== +f[0]&&e.shiftKey){g.focus(1);return false}}});c(a.element.find(":tabbable").get().concat(d.find(".ui-dialog-buttonpane :tabbable").get().concat(d.get()))).eq(0).focus();a._isOpen=true;a._trigger("open");return a}},_createButtons:function(a){var b=this,d=false,e=c("
    ").addClass("ui-dialog-buttonpane ui-widget-content ui-helper-clearfix"),g=c("
    ").addClass("ui-dialog-buttonset").appendTo(e);b.uiDialog.find(".ui-dialog-buttonpane").remove();typeof a==="object"&&a!==null&&c.each(a, +function(){return!(d=true)});if(d){c.each(a,function(f,h){h=c.isFunction(h)?{click:h,text:f}:h;var i=c('').click(function(){h.click.apply(b.element[0],arguments)}).appendTo(g);c.each(h,function(j,k){if(j!=="click")j in o?i[j](k):i.attr(j,k)});c.fn.button&&i.button()});e.appendTo(b.uiDialog)}},_makeDraggable:function(){function a(f){return{position:f.position,offset:f.offset}}var b=this,d=b.options,e=c(document),g;b.uiDialog.draggable({cancel:".ui-dialog-content, .ui-dialog-titlebar-close", +handle:".ui-dialog-titlebar",containment:"document",start:function(f,h){g=d.height==="auto"?"auto":c(this).height();c(this).height(c(this).height()).addClass("ui-dialog-dragging");b._trigger("dragStart",f,a(h))},drag:function(f,h){b._trigger("drag",f,a(h))},stop:function(f,h){d.position=[h.position.left-e.scrollLeft(),h.position.top-e.scrollTop()];c(this).removeClass("ui-dialog-dragging").height(g);b._trigger("dragStop",f,a(h));c.ui.dialog.overlay.resize()}})},_makeResizable:function(a){function b(f){return{originalPosition:f.originalPosition, +originalSize:f.originalSize,position:f.position,size:f.size}}a=a===l?this.options.resizable:a;var d=this,e=d.options,g=d.uiDialog.css("position");a=typeof a==="string"?a:"n,e,s,w,se,sw,ne,nw";d.uiDialog.resizable({cancel:".ui-dialog-content",containment:"document",alsoResize:d.element,maxWidth:e.maxWidth,maxHeight:e.maxHeight,minWidth:e.minWidth,minHeight:d._minHeight(),handles:a,start:function(f,h){c(this).addClass("ui-dialog-resizing");d._trigger("resizeStart",f,b(h))},resize:function(f,h){d._trigger("resize", +f,b(h))},stop:function(f,h){c(this).removeClass("ui-dialog-resizing");e.height=c(this).height();e.width=c(this).width();d._trigger("resizeStop",f,b(h));c.ui.dialog.overlay.resize()}}).css("position",g).find(".ui-resizable-se").addClass("ui-icon ui-icon-grip-diagonal-se")},_minHeight:function(){var a=this.options;return a.height==="auto"?a.minHeight:Math.min(a.minHeight,a.height)},_position:function(a){var b=[],d=[0,0],e;if(a){if(typeof a==="string"||typeof a==="object"&&"0"in a){b=a.split?a.split(" "): +[a[0],a[1]];if(b.length===1)b[1]=b[0];c.each(["left","top"],function(g,f){if(+b[g]===b[g]){d[g]=b[g];b[g]=f}});a={my:b.join(" "),at:b.join(" "),offset:d.join(" ")}}a=c.extend({},c.ui.dialog.prototype.options.position,a)}else a=c.ui.dialog.prototype.options.position;(e=this.uiDialog.is(":visible"))||this.uiDialog.show();this.uiDialog.css({top:0,left:0}).position(c.extend({of:window},a));e||this.uiDialog.hide()},_setOptions:function(a){var b=this,d={},e=false;c.each(a,function(g,f){b._setOption(g,f); +if(g in m)e=true;if(g in n)d[g]=f});e&&this._size();this.uiDialog.is(":data(resizable)")&&this.uiDialog.resizable("option",d)},_setOption:function(a,b){var d=this,e=d.uiDialog;switch(a){case "beforeclose":a="beforeClose";break;case "buttons":d._createButtons(b);break;case "closeText":d.uiDialogTitlebarCloseText.text(""+b);break;case "dialogClass":e.removeClass(d.options.dialogClass).addClass("ui-dialog ui-widget ui-widget-content ui-corner-all "+b);break;case "disabled":b?e.addClass("ui-dialog-disabled"): +e.removeClass("ui-dialog-disabled");break;case "draggable":var g=e.is(":data(draggable)");g&&!b&&e.draggable("destroy");!g&&b&&d._makeDraggable();break;case "position":d._position(b);break;case "resizable":(g=e.is(":data(resizable)"))&&!b&&e.resizable("destroy");g&&typeof b==="string"&&e.resizable("option","handles",b);!g&&b!==false&&d._makeResizable(b);break;case "title":c(".ui-dialog-title",d.uiDialogTitlebar).html(""+(b||" "));break}c.Widget.prototype._setOption.apply(d,arguments)},_size:function(){var a= +this.options,b,d,e=this.uiDialog.is(":visible");this.element.show().css({width:"auto",minHeight:0,height:0});if(a.minWidth>a.width)a.width=a.minWidth;b=this.uiDialog.css({height:"auto",width:a.width}).height();d=Math.max(0,a.minHeight-b);if(a.height==="auto")if(c.support.minHeight)this.element.css({minHeight:d,height:"auto"});else{this.uiDialog.show();a=this.element.css("height","auto").height();e||this.uiDialog.hide();this.element.height(Math.max(a,d))}else this.element.height(Math.max(a.height- +b,0));this.uiDialog.is(":data(resizable)")&&this.uiDialog.resizable("option","minHeight",this._minHeight())}});c.extend(c.ui.dialog,{version:"1.8.13",uuid:0,maxZ:0,getTitleId:function(a){a=a.attr("id");if(!a){this.uuid+=1;a=this.uuid}return"ui-dialog-title-"+a},overlay:function(a){this.$el=c.ui.dialog.overlay.create(a)}});c.extend(c.ui.dialog.overlay,{instances:[],oldInstances:[],maxZ:0,events:c.map("focus,mousedown,mouseup,keydown,keypress,click".split(","),function(a){return a+".dialog-overlay"}).join(" "), +create:function(a){if(this.instances.length===0){setTimeout(function(){c.ui.dialog.overlay.instances.length&&c(document).bind(c.ui.dialog.overlay.events,function(d){if(c(d.target).zIndex()").addClass("ui-widget-overlay")).appendTo(document.body).css({width:this.width(), +height:this.height()});c.fn.bgiframe&&b.bgiframe();this.instances.push(b);return b},destroy:function(a){var b=c.inArray(a,this.instances);b!=-1&&this.oldInstances.push(this.instances.splice(b,1)[0]);this.instances.length===0&&c([document,window]).unbind(".dialog-overlay");a.remove();var d=0;c.each(this.instances,function(){d=Math.max(d,this.css("z-index"))});this.maxZ=d},height:function(){var a,b;if(c.browser.msie&&c.browser.version<7){a=Math.max(document.documentElement.scrollHeight,document.body.scrollHeight); +b=Math.max(document.documentElement.offsetHeight,document.body.offsetHeight);return a").appendTo(this.element).addClass("ui-slider-range ui-widget-header"+(a.range==="min"||a.range==="max"?" ui-slider-range-"+a.range:""))}for(var j=c.length;j"); +this.handles=c.add(d(e.join("")).appendTo(b.element));this.handle=this.handles.eq(0);this.handles.add(this.range).filter("a").click(function(g){g.preventDefault()}).hover(function(){a.disabled||d(this).addClass("ui-state-hover")},function(){d(this).removeClass("ui-state-hover")}).focus(function(){if(a.disabled)d(this).blur();else{d(".ui-slider .ui-state-focus").removeClass("ui-state-focus");d(this).addClass("ui-state-focus")}}).blur(function(){d(this).removeClass("ui-state-focus")});this.handles.each(function(g){d(this).data("index.ui-slider-handle", +g)});this.handles.keydown(function(g){var k=true,l=d(this).data("index.ui-slider-handle"),i,h,m;if(!b.options.disabled){switch(g.keyCode){case d.ui.keyCode.HOME:case d.ui.keyCode.END:case d.ui.keyCode.PAGE_UP:case d.ui.keyCode.PAGE_DOWN:case d.ui.keyCode.UP:case d.ui.keyCode.RIGHT:case d.ui.keyCode.DOWN:case d.ui.keyCode.LEFT:k=false;if(!b._keySliding){b._keySliding=true;d(this).addClass("ui-state-active");i=b._start(g,l);if(i===false)return}break}m=b.options.step;i=b.options.values&&b.options.values.length? +(h=b.values(l)):(h=b.value());switch(g.keyCode){case d.ui.keyCode.HOME:h=b._valueMin();break;case d.ui.keyCode.END:h=b._valueMax();break;case d.ui.keyCode.PAGE_UP:h=b._trimAlignValue(i+(b._valueMax()-b._valueMin())/5);break;case d.ui.keyCode.PAGE_DOWN:h=b._trimAlignValue(i-(b._valueMax()-b._valueMin())/5);break;case d.ui.keyCode.UP:case d.ui.keyCode.RIGHT:if(i===b._valueMax())return;h=b._trimAlignValue(i+m);break;case d.ui.keyCode.DOWN:case d.ui.keyCode.LEFT:if(i===b._valueMin())return;h=b._trimAlignValue(i- +m);break}b._slide(g,l,h);return k}}).keyup(function(g){var k=d(this).data("index.ui-slider-handle");if(b._keySliding){b._keySliding=false;b._stop(g,k);b._change(g,k);d(this).removeClass("ui-state-active")}});this._refreshValue();this._animateOff=false},destroy:function(){this.handles.remove();this.range.remove();this.element.removeClass("ui-slider ui-slider-horizontal ui-slider-vertical ui-slider-disabled ui-widget ui-widget-content ui-corner-all").removeData("slider").unbind(".slider");this._mouseDestroy(); +return this},_mouseCapture:function(b){var a=this.options,c,f,e,j,g;if(a.disabled)return false;this.elementSize={width:this.element.outerWidth(),height:this.element.outerHeight()};this.elementOffset=this.element.offset();c=this._normValueFromMouse({x:b.pageX,y:b.pageY});f=this._valueMax()-this._valueMin()+1;j=this;this.handles.each(function(k){var l=Math.abs(c-j.values(k));if(f>l){f=l;e=d(this);g=k}});if(a.range===true&&this.values(1)===a.min){g+=1;e=d(this.handles[g])}if(this._start(b,g)===false)return false; +this._mouseSliding=true;j._handleIndex=g;e.addClass("ui-state-active").focus();a=e.offset();this._clickOffset=!d(b.target).parents().andSelf().is(".ui-slider-handle")?{left:0,top:0}:{left:b.pageX-a.left-e.width()/2,top:b.pageY-a.top-e.height()/2-(parseInt(e.css("borderTopWidth"),10)||0)-(parseInt(e.css("borderBottomWidth"),10)||0)+(parseInt(e.css("marginTop"),10)||0)};this.handles.hasClass("ui-state-hover")||this._slide(b,g,c);return this._animateOff=true},_mouseStart:function(){return true},_mouseDrag:function(b){var a= +this._normValueFromMouse({x:b.pageX,y:b.pageY});this._slide(b,this._handleIndex,a);return false},_mouseStop:function(b){this.handles.removeClass("ui-state-active");this._mouseSliding=false;this._stop(b,this._handleIndex);this._change(b,this._handleIndex);this._clickOffset=this._handleIndex=null;return this._animateOff=false},_detectOrientation:function(){this.orientation=this.options.orientation==="vertical"?"vertical":"horizontal"},_normValueFromMouse:function(b){var a;if(this.orientation==="horizontal"){a= +this.elementSize.width;b=b.x-this.elementOffset.left-(this._clickOffset?this._clickOffset.left:0)}else{a=this.elementSize.height;b=b.y-this.elementOffset.top-(this._clickOffset?this._clickOffset.top:0)}a=b/a;if(a>1)a=1;if(a<0)a=0;if(this.orientation==="vertical")a=1-a;b=this._valueMax()-this._valueMin();return this._trimAlignValue(this._valueMin()+a*b)},_start:function(b,a){var c={handle:this.handles[a],value:this.value()};if(this.options.values&&this.options.values.length){c.value=this.values(a); +c.values=this.values()}return this._trigger("start",b,c)},_slide:function(b,a,c){var f;if(this.options.values&&this.options.values.length){f=this.values(a?0:1);if(this.options.values.length===2&&this.options.range===true&&(a===0&&c>f||a===1&&c1){this.options.values[b]=this._trimAlignValue(a);this._refreshValue();this._change(null,b)}else if(arguments.length)if(d.isArray(arguments[0])){c=this.options.values;f=arguments[0];for(e=0;e=this._valueMax())return this._valueMax();var a=this.options.step>0?this.options.step:1,c=(b-this._valueMin())%a;alignValue=b-c;if(Math.abs(c)*2>=a)alignValue+=c>0?a:-a;return parseFloat(alignValue.toFixed(5))},_valueMin:function(){return this.options.min},_valueMax:function(){return this.options.max}, +_refreshValue:function(){var b=this.options.range,a=this.options,c=this,f=!this._animateOff?a.animate:false,e,j={},g,k,l,i;if(this.options.values&&this.options.values.length)this.handles.each(function(h){e=(c.values(h)-c._valueMin())/(c._valueMax()-c._valueMin())*100;j[c.orientation==="horizontal"?"left":"bottom"]=e+"%";d(this).stop(1,1)[f?"animate":"css"](j,a.animate);if(c.options.range===true)if(c.orientation==="horizontal"){if(h===0)c.range.stop(1,1)[f?"animate":"css"]({left:e+"%"},a.animate); +if(h===1)c.range[f?"animate":"css"]({width:e-g+"%"},{queue:false,duration:a.animate})}else{if(h===0)c.range.stop(1,1)[f?"animate":"css"]({bottom:e+"%"},a.animate);if(h===1)c.range[f?"animate":"css"]({height:e-g+"%"},{queue:false,duration:a.animate})}g=e});else{k=this.value();l=this._valueMin();i=this._valueMax();e=i!==l?(k-l)/(i-l)*100:0;j[c.orientation==="horizontal"?"left":"bottom"]=e+"%";this.handle.stop(1,1)[f?"animate":"css"](j,a.animate);if(b==="min"&&this.orientation==="horizontal")this.range.stop(1, +1)[f?"animate":"css"]({width:e+"%"},a.animate);if(b==="max"&&this.orientation==="horizontal")this.range[f?"animate":"css"]({width:100-e+"%"},{queue:false,duration:a.animate});if(b==="min"&&this.orientation==="vertical")this.range.stop(1,1)[f?"animate":"css"]({height:e+"%"},a.animate);if(b==="max"&&this.orientation==="vertical")this.range[f?"animate":"css"]({height:100-e+"%"},{queue:false,duration:a.animate})}}});d.extend(d.ui.slider,{version:"1.8.13"})})(jQuery); +;/* + * jQuery UI Tabs 1.8.13 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Tabs + * + * Depends: + * jquery.ui.core.js + * jquery.ui.widget.js + */ +(function(d,p){function u(){return++v}function w(){return++x}var v=0,x=0;d.widget("ui.tabs",{options:{add:null,ajaxOptions:null,cache:false,cookie:null,collapsible:false,disable:null,disabled:[],enable:null,event:"click",fx:null,idPrefix:"ui-tabs-",load:null,panelTemplate:"
    ",remove:null,select:null,show:null,spinner:"Loading…",tabTemplate:"
  • #{label}
  • "},_create:function(){this._tabify(true)},_setOption:function(b,e){if(b=="selected")this.options.collapsible&& +e==this.options.selected||this.select(e);else{this.options[b]=e;this._tabify()}},_tabId:function(b){return b.title&&b.title.replace(/\s/g,"_").replace(/[^\w\u00c0-\uFFFF-]/g,"")||this.options.idPrefix+u()},_sanitizeSelector:function(b){return b.replace(/:/g,"\\:")},_cookie:function(){var b=this.cookie||(this.cookie=this.options.cookie.name||"ui-tabs-"+w());return d.cookie.apply(null,[b].concat(d.makeArray(arguments)))},_ui:function(b,e){return{tab:b,panel:e,index:this.anchors.index(b)}},_cleanup:function(){this.lis.filter(".ui-state-processing").removeClass("ui-state-processing").find("span:data(label.tabs)").each(function(){var b= +d(this);b.html(b.data("label.tabs")).removeData("label.tabs")})},_tabify:function(b){function e(g,f){g.css("display","");!d.support.opacity&&f.opacity&&g[0].style.removeAttribute("filter")}var a=this,c=this.options,h=/^#.+/;this.list=this.element.find("ol,ul").eq(0);this.lis=d(" > li:has(a[href])",this.list);this.anchors=this.lis.map(function(){return d("a",this)[0]});this.panels=d([]);this.anchors.each(function(g,f){var i=d(f).attr("href"),l=i.split("#")[0],q;if(l&&(l===location.toString().split("#")[0]|| +(q=d("base")[0])&&l===q.href)){i=f.hash;f.href=i}if(h.test(i))a.panels=a.panels.add(a.element.find(a._sanitizeSelector(i)));else if(i&&i!=="#"){d.data(f,"href.tabs",i);d.data(f,"load.tabs",i.replace(/#.*$/,""));i=a._tabId(f);f.href="#"+i;f=a.element.find("#"+i);if(!f.length){f=d(c.panelTemplate).attr("id",i).addClass("ui-tabs-panel ui-widget-content ui-corner-bottom").insertAfter(a.panels[g-1]||a.list);f.data("destroy.tabs",true)}a.panels=a.panels.add(f)}else c.disabled.push(g)});if(b){this.element.addClass("ui-tabs ui-widget ui-widget-content ui-corner-all"); +this.list.addClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all");this.lis.addClass("ui-state-default ui-corner-top");this.panels.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom");if(c.selected===p){location.hash&&this.anchors.each(function(g,f){if(f.hash==location.hash){c.selected=g;return false}});if(typeof c.selected!=="number"&&c.cookie)c.selected=parseInt(a._cookie(),10);if(typeof c.selected!=="number"&&this.lis.filter(".ui-tabs-selected").length)c.selected= +this.lis.index(this.lis.filter(".ui-tabs-selected"));c.selected=c.selected||(this.lis.length?0:-1)}else if(c.selected===null)c.selected=-1;c.selected=c.selected>=0&&this.anchors[c.selected]||c.selected<0?c.selected:0;c.disabled=d.unique(c.disabled.concat(d.map(this.lis.filter(".ui-state-disabled"),function(g){return a.lis.index(g)}))).sort();d.inArray(c.selected,c.disabled)!=-1&&c.disabled.splice(d.inArray(c.selected,c.disabled),1);this.panels.addClass("ui-tabs-hide");this.lis.removeClass("ui-tabs-selected ui-state-active"); +if(c.selected>=0&&this.anchors.length){a.element.find(a._sanitizeSelector(a.anchors[c.selected].hash)).removeClass("ui-tabs-hide");this.lis.eq(c.selected).addClass("ui-tabs-selected ui-state-active");a.element.queue("tabs",function(){a._trigger("show",null,a._ui(a.anchors[c.selected],a.element.find(a._sanitizeSelector(a.anchors[c.selected].hash))[0]))});this.load(c.selected)}d(window).bind("unload",function(){a.lis.add(a.anchors).unbind(".tabs");a.lis=a.anchors=a.panels=null})}else c.selected=this.lis.index(this.lis.filter(".ui-tabs-selected")); +this.element[c.collapsible?"addClass":"removeClass"]("ui-tabs-collapsible");c.cookie&&this._cookie(c.selected,c.cookie);b=0;for(var j;j=this.lis[b];b++)d(j)[d.inArray(b,c.disabled)!=-1&&!d(j).hasClass("ui-tabs-selected")?"addClass":"removeClass"]("ui-state-disabled");c.cache===false&&this.anchors.removeData("cache.tabs");this.lis.add(this.anchors).unbind(".tabs");if(c.event!=="mouseover"){var k=function(g,f){f.is(":not(.ui-state-disabled)")&&f.addClass("ui-state-"+g)},n=function(g,f){f.removeClass("ui-state-"+ +g)};this.lis.bind("mouseover.tabs",function(){k("hover",d(this))});this.lis.bind("mouseout.tabs",function(){n("hover",d(this))});this.anchors.bind("focus.tabs",function(){k("focus",d(this).closest("li"))});this.anchors.bind("blur.tabs",function(){n("focus",d(this).closest("li"))})}var m,o;if(c.fx)if(d.isArray(c.fx)){m=c.fx[0];o=c.fx[1]}else m=o=c.fx;var r=o?function(g,f){d(g).closest("li").addClass("ui-tabs-selected ui-state-active");f.hide().removeClass("ui-tabs-hide").animate(o,o.duration||"normal", +function(){e(f,o);a._trigger("show",null,a._ui(g,f[0]))})}:function(g,f){d(g).closest("li").addClass("ui-tabs-selected ui-state-active");f.removeClass("ui-tabs-hide");a._trigger("show",null,a._ui(g,f[0]))},s=m?function(g,f){f.animate(m,m.duration||"normal",function(){a.lis.removeClass("ui-tabs-selected ui-state-active");f.addClass("ui-tabs-hide");e(f,m);a.element.dequeue("tabs")})}:function(g,f){a.lis.removeClass("ui-tabs-selected ui-state-active");f.addClass("ui-tabs-hide");a.element.dequeue("tabs")}; +this.anchors.bind(c.event+".tabs",function(){var g=this,f=d(g).closest("li"),i=a.panels.filter(":not(.ui-tabs-hide)"),l=a.element.find(a._sanitizeSelector(g.hash));if(f.hasClass("ui-tabs-selected")&&!c.collapsible||f.hasClass("ui-state-disabled")||f.hasClass("ui-state-processing")||a.panels.filter(":animated").length||a._trigger("select",null,a._ui(this,l[0]))===false){this.blur();return false}c.selected=a.anchors.index(this);a.abort();if(c.collapsible)if(f.hasClass("ui-tabs-selected")){c.selected= +-1;c.cookie&&a._cookie(c.selected,c.cookie);a.element.queue("tabs",function(){s(g,i)}).dequeue("tabs");this.blur();return false}else if(!i.length){c.cookie&&a._cookie(c.selected,c.cookie);a.element.queue("tabs",function(){r(g,l)});a.load(a.anchors.index(this));this.blur();return false}c.cookie&&a._cookie(c.selected,c.cookie);if(l.length){i.length&&a.element.queue("tabs",function(){s(g,i)});a.element.queue("tabs",function(){r(g,l)});a.load(a.anchors.index(this))}else throw"jQuery UI Tabs: Mismatching fragment identifier."; +d.browser.msie&&this.blur()});this.anchors.bind("click.tabs",function(){return false})},_getIndex:function(b){if(typeof b=="string")b=this.anchors.index(this.anchors.filter("[href$="+b+"]"));return b},destroy:function(){var b=this.options;this.abort();this.element.unbind(".tabs").removeClass("ui-tabs ui-widget ui-widget-content ui-corner-all ui-tabs-collapsible").removeData("tabs");this.list.removeClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all");this.anchors.each(function(){var e= +d.data(this,"href.tabs");if(e)this.href=e;var a=d(this).unbind(".tabs");d.each(["href","load","cache"],function(c,h){a.removeData(h+".tabs")})});this.lis.unbind(".tabs").add(this.panels).each(function(){d.data(this,"destroy.tabs")?d(this).remove():d(this).removeClass("ui-state-default ui-corner-top ui-tabs-selected ui-state-active ui-state-hover ui-state-focus ui-state-disabled ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide")});b.cookie&&this._cookie(null,b.cookie);return this},add:function(b, +e,a){if(a===p)a=this.anchors.length;var c=this,h=this.options;e=d(h.tabTemplate.replace(/#\{href\}/g,b).replace(/#\{label\}/g,e));b=!b.indexOf("#")?b.replace("#",""):this._tabId(d("a",e)[0]);e.addClass("ui-state-default ui-corner-top").data("destroy.tabs",true);var j=c.element.find("#"+b);j.length||(j=d(h.panelTemplate).attr("id",b).data("destroy.tabs",true));j.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide");if(a>=this.lis.length){e.appendTo(this.list);j.appendTo(this.list[0].parentNode)}else{e.insertBefore(this.lis[a]); +j.insertBefore(this.panels[a])}h.disabled=d.map(h.disabled,function(k){return k>=a?++k:k});this._tabify();if(this.anchors.length==1){h.selected=0;e.addClass("ui-tabs-selected ui-state-active");j.removeClass("ui-tabs-hide");this.element.queue("tabs",function(){c._trigger("show",null,c._ui(c.anchors[0],c.panels[0]))});this.load(0)}this._trigger("add",null,this._ui(this.anchors[a],this.panels[a]));return this},remove:function(b){b=this._getIndex(b);var e=this.options,a=this.lis.eq(b).remove(),c=this.panels.eq(b).remove(); +if(a.hasClass("ui-tabs-selected")&&this.anchors.length>1)this.select(b+(b+1=b?--h:h});this._tabify();this._trigger("remove",null,this._ui(a.find("a")[0],c[0]));return this},enable:function(b){b=this._getIndex(b);var e=this.options;if(d.inArray(b,e.disabled)!=-1){this.lis.eq(b).removeClass("ui-state-disabled");e.disabled=d.grep(e.disabled,function(a){return a!=b});this._trigger("enable",null, +this._ui(this.anchors[b],this.panels[b]));return this}},disable:function(b){b=this._getIndex(b);var e=this.options;if(b!=e.selected){this.lis.eq(b).addClass("ui-state-disabled");e.disabled.push(b);e.disabled.sort();this._trigger("disable",null,this._ui(this.anchors[b],this.panels[b]))}return this},select:function(b){b=this._getIndex(b);if(b==-1)if(this.options.collapsible&&this.options.selected!=-1)b=this.options.selected;else return this;this.anchors.eq(b).trigger(this.options.event+".tabs");return this}, +load:function(b){b=this._getIndex(b);var e=this,a=this.options,c=this.anchors.eq(b)[0],h=d.data(c,"load.tabs");this.abort();if(!h||this.element.queue("tabs").length!==0&&d.data(c,"cache.tabs"))this.element.dequeue("tabs");else{this.lis.eq(b).addClass("ui-state-processing");if(a.spinner){var j=d("span",c);j.data("label.tabs",j.html()).html(a.spinner)}this.xhr=d.ajax(d.extend({},a.ajaxOptions,{url:h,success:function(k,n){e.element.find(e._sanitizeSelector(c.hash)).html(k);e._cleanup();a.cache&&d.data(c, +"cache.tabs",true);e._trigger("load",null,e._ui(e.anchors[b],e.panels[b]));try{a.ajaxOptions.success(k,n)}catch(m){}},error:function(k,n){e._cleanup();e._trigger("load",null,e._ui(e.anchors[b],e.panels[b]));try{a.ajaxOptions.error(k,n,b,c)}catch(m){}}}));e.element.dequeue("tabs");return this}},abort:function(){this.element.queue([]);this.panels.stop(false,true);this.element.queue("tabs",this.element.queue("tabs").splice(-2,2));if(this.xhr){this.xhr.abort();delete this.xhr}this._cleanup();return this}, +url:function(b,e){this.anchors.eq(b).removeData("cache.tabs").data("load.tabs",e);return this},length:function(){return this.anchors.length}});d.extend(d.ui.tabs,{version:"1.8.13"});d.extend(d.ui.tabs.prototype,{rotation:null,rotate:function(b,e){var a=this,c=this.options,h=a._rotate||(a._rotate=function(j){clearTimeout(a.rotation);a.rotation=setTimeout(function(){var k=c.selected;a.select(++k'))}function N(a){return a.delegate("button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a", +"mouseout",function(){d(this).removeClass("ui-state-hover");this.className.indexOf("ui-datepicker-prev")!=-1&&d(this).removeClass("ui-datepicker-prev-hover");this.className.indexOf("ui-datepicker-next")!=-1&&d(this).removeClass("ui-datepicker-next-hover")}).delegate("button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a","mouseover",function(){if(!d.datepicker._isDisabledDatepicker(J.inline?a.parent()[0]:J.input[0])){d(this).parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover"); +d(this).addClass("ui-state-hover");this.className.indexOf("ui-datepicker-prev")!=-1&&d(this).addClass("ui-datepicker-prev-hover");this.className.indexOf("ui-datepicker-next")!=-1&&d(this).addClass("ui-datepicker-next-hover")}})}function H(a,b){d.extend(a,b);for(var c in b)if(b[c]==null||b[c]==B)a[c]=b[c];return a}d.extend(d.ui,{datepicker:{version:"1.8.13"}});var z=(new Date).getTime(),J;d.extend(M.prototype,{markerClassName:"hasDatepicker",log:function(){this.debug&&console.log.apply("",arguments)}, +_widgetDatepicker:function(){return this.dpDiv},setDefaults:function(a){H(this._defaults,a||{});return this},_attachDatepicker:function(a,b){var c=null;for(var e in this._defaults){var f=a.getAttribute("date:"+e);if(f){c=c||{};try{c[e]=eval(f)}catch(h){c[e]=f}}}e=a.nodeName.toLowerCase();f=e=="div"||e=="span";if(!a.id){this.uuid+=1;a.id="dp"+this.uuid}var i=this._newInst(d(a),f);i.settings=d.extend({},b||{},c||{});if(e=="input")this._connectDatepicker(a,i);else f&&this._inlineDatepicker(a,i)},_newInst:function(a, +b){return{id:a[0].id.replace(/([^A-Za-z0-9_-])/g,"\\\\$1"),input:a,selectedDay:0,selectedMonth:0,selectedYear:0,drawMonth:0,drawYear:0,inline:b,dpDiv:!b?this.dpDiv:N(d('
    '))}},_connectDatepicker:function(a,b){var c=d(a);b.append=d([]);b.trigger=d([]);if(!c.hasClass(this.markerClassName)){this._attachments(c,b);c.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress).keyup(this._doKeyUp).bind("setData.datepicker", +function(e,f,h){b.settings[f]=h}).bind("getData.datepicker",function(e,f){return this._get(b,f)});this._autoSize(b);d.data(a,"datepicker",b)}},_attachments:function(a,b){var c=this._get(b,"appendText"),e=this._get(b,"isRTL");b.append&&b.append.remove();if(c){b.append=d(''+c+"");a[e?"before":"after"](b.append)}a.unbind("focus",this._showDatepicker);b.trigger&&b.trigger.remove();c=this._get(b,"showOn");if(c=="focus"||c=="both")a.focus(this._showDatepicker); +if(c=="button"||c=="both"){c=this._get(b,"buttonText");var f=this._get(b,"buttonImage");b.trigger=d(this._get(b,"buttonImageOnly")?d("").addClass(this._triggerClass).attr({src:f,alt:c,title:c}):d('').addClass(this._triggerClass).html(f==""?c:d("").attr({src:f,alt:c,title:c})));a[e?"before":"after"](b.trigger);b.trigger.click(function(){d.datepicker._datepickerShowing&&d.datepicker._lastInput==a[0]?d.datepicker._hideDatepicker():d.datepicker._showDatepicker(a[0]); +return false})}},_autoSize:function(a){if(this._get(a,"autoSize")&&!a.inline){var b=new Date(2009,11,20),c=this._get(a,"dateFormat");if(c.match(/[DM]/)){var e=function(f){for(var h=0,i=0,g=0;gh){h=f[g].length;i=g}return i};b.setMonth(e(this._get(a,c.match(/MM/)?"monthNames":"monthNamesShort")));b.setDate(e(this._get(a,c.match(/DD/)?"dayNames":"dayNamesShort"))+20-b.getDay())}a.input.attr("size",this._formatDate(a,b).length)}},_inlineDatepicker:function(a,b){var c=d(a); +if(!c.hasClass(this.markerClassName)){c.addClass(this.markerClassName).append(b.dpDiv).bind("setData.datepicker",function(e,f,h){b.settings[f]=h}).bind("getData.datepicker",function(e,f){return this._get(b,f)});d.data(a,"datepicker",b);this._setDate(b,this._getDefaultDate(b),true);this._updateDatepicker(b);this._updateAlternate(b);b.dpDiv.show()}},_dialogDatepicker:function(a,b,c,e,f){a=this._dialogInst;if(!a){this.uuid+=1;this._dialogInput=d(''); +this._dialogInput.keydown(this._doKeyDown);d("body").append(this._dialogInput);a=this._dialogInst=this._newInst(this._dialogInput,false);a.settings={};d.data(this._dialogInput[0],"datepicker",a)}H(a.settings,e||{});b=b&&b.constructor==Date?this._formatDate(a,b):b;this._dialogInput.val(b);this._pos=f?f.length?f:[f.pageX,f.pageY]:null;if(!this._pos)this._pos=[document.documentElement.clientWidth/2-100+(document.documentElement.scrollLeft||document.body.scrollLeft),document.documentElement.clientHeight/ +2-150+(document.documentElement.scrollTop||document.body.scrollTop)];this._dialogInput.css("left",this._pos[0]+20+"px").css("top",this._pos[1]+"px");a.settings.onSelect=c;this._inDialog=true;this.dpDiv.addClass(this._dialogClass);this._showDatepicker(this._dialogInput[0]);d.blockUI&&d.blockUI(this.dpDiv);d.data(this._dialogInput[0],"datepicker",a);return this},_destroyDatepicker:function(a){var b=d(a),c=d.data(a,"datepicker");if(b.hasClass(this.markerClassName)){var e=a.nodeName.toLowerCase();d.removeData(a, +"datepicker");if(e=="input"){c.append.remove();c.trigger.remove();b.removeClass(this.markerClassName).unbind("focus",this._showDatepicker).unbind("keydown",this._doKeyDown).unbind("keypress",this._doKeyPress).unbind("keyup",this._doKeyUp)}else if(e=="div"||e=="span")b.removeClass(this.markerClassName).empty()}},_enableDatepicker:function(a){var b=d(a),c=d.data(a,"datepicker");if(b.hasClass(this.markerClassName)){var e=a.nodeName.toLowerCase();if(e=="input"){a.disabled=false;c.trigger.filter("button").each(function(){this.disabled= +false}).end().filter("img").css({opacity:"1.0",cursor:""})}else if(e=="div"||e=="span"){b=b.children("."+this._inlineClass);b.children().removeClass("ui-state-disabled");b.find("select.ui-datepicker-month, select.ui-datepicker-year").removeAttr("disabled")}this._disabledInputs=d.map(this._disabledInputs,function(f){return f==a?null:f})}},_disableDatepicker:function(a){var b=d(a),c=d.data(a,"datepicker");if(b.hasClass(this.markerClassName)){var e=a.nodeName.toLowerCase();if(e=="input"){a.disabled= +true;c.trigger.filter("button").each(function(){this.disabled=true}).end().filter("img").css({opacity:"0.5",cursor:"default"})}else if(e=="div"||e=="span"){b=b.children("."+this._inlineClass);b.children().addClass("ui-state-disabled");b.find("select.ui-datepicker-month, select.ui-datepicker-year").attr("disabled","disabled")}this._disabledInputs=d.map(this._disabledInputs,function(f){return f==a?null:f});this._disabledInputs[this._disabledInputs.length]=a}},_isDisabledDatepicker:function(a){if(!a)return false; +for(var b=0;b-1}},_doKeyUp:function(a){a=d.datepicker._getInst(a.target);if(a.input.val()!=a.lastVal)try{if(d.datepicker.parseDate(d.datepicker._get(a,"dateFormat"),a.input?a.input.val():null,d.datepicker._getFormatConfig(a))){d.datepicker._setDateFromField(a); +d.datepicker._updateAlternate(a);d.datepicker._updateDatepicker(a)}}catch(b){d.datepicker.log(b)}return true},_showDatepicker:function(a){a=a.target||a;if(a.nodeName.toLowerCase()!="input")a=d("input",a.parentNode)[0];if(!(d.datepicker._isDisabledDatepicker(a)||d.datepicker._lastInput==a)){var b=d.datepicker._getInst(a);d.datepicker._curInst&&d.datepicker._curInst!=b&&d.datepicker._curInst.dpDiv.stop(true,true);var c=d.datepicker._get(b,"beforeShow");H(b.settings,c?c.apply(a,[a,b]):{});b.lastVal= +null;d.datepicker._lastInput=a;d.datepicker._setDateFromField(b);if(d.datepicker._inDialog)a.value="";if(!d.datepicker._pos){d.datepicker._pos=d.datepicker._findPos(a);d.datepicker._pos[1]+=a.offsetHeight}var e=false;d(a).parents().each(function(){e|=d(this).css("position")=="fixed";return!e});if(e&&d.browser.opera){d.datepicker._pos[0]-=document.documentElement.scrollLeft;d.datepicker._pos[1]-=document.documentElement.scrollTop}c={left:d.datepicker._pos[0],top:d.datepicker._pos[1]};d.datepicker._pos= +null;b.dpDiv.empty();b.dpDiv.css({position:"absolute",display:"block",top:"-1000px"});d.datepicker._updateDatepicker(b);c=d.datepicker._checkOffset(b,c,e);b.dpDiv.css({position:d.datepicker._inDialog&&d.blockUI?"static":e?"fixed":"absolute",display:"none",left:c.left+"px",top:c.top+"px"});if(!b.inline){c=d.datepicker._get(b,"showAnim");var f=d.datepicker._get(b,"duration"),h=function(){var i=b.dpDiv.find("iframe.ui-datepicker-cover");if(i.length){var g=d.datepicker._getBorders(b.dpDiv);i.css({left:-g[0], +top:-g[1],width:b.dpDiv.outerWidth(),height:b.dpDiv.outerHeight()})}};b.dpDiv.zIndex(d(a).zIndex()+1);d.datepicker._datepickerShowing=true;d.effects&&d.effects[c]?b.dpDiv.show(c,d.datepicker._get(b,"showOptions"),f,h):b.dpDiv[c||"show"](c?f:null,h);if(!c||!f)h();b.input.is(":visible")&&!b.input.is(":disabled")&&b.input.focus();d.datepicker._curInst=b}}},_updateDatepicker:function(a){var b=d.datepicker._getBorders(a.dpDiv);J=a;a.dpDiv.empty().append(this._generateHTML(a));var c=a.dpDiv.find("iframe.ui-datepicker-cover"); +c.length&&c.css({left:-b[0],top:-b[1],width:a.dpDiv.outerWidth(),height:a.dpDiv.outerHeight()});a.dpDiv.find("."+this._dayOverClass+" a").mouseover();b=this._getNumberOfMonths(a);c=b[1];a.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width("");c>1&&a.dpDiv.addClass("ui-datepicker-multi-"+c).css("width",17*c+"em");a.dpDiv[(b[0]!=1||b[1]!=1?"add":"remove")+"Class"]("ui-datepicker-multi");a.dpDiv[(this._get(a,"isRTL")?"add":"remove")+"Class"]("ui-datepicker-rtl"); +a==d.datepicker._curInst&&d.datepicker._datepickerShowing&&a.input&&a.input.is(":visible")&&!a.input.is(":disabled")&&a.input[0]!=document.activeElement&&a.input.focus();if(a.yearshtml){var e=a.yearshtml;setTimeout(function(){e===a.yearshtml&&a.yearshtml&&a.dpDiv.find("select.ui-datepicker-year:first").replaceWith(a.yearshtml);e=a.yearshtml=null},0)}},_getBorders:function(a){var b=function(c){return{thin:1,medium:2,thick:3}[c]||c};return[parseFloat(b(a.css("border-left-width"))),parseFloat(b(a.css("border-top-width")))]}, +_checkOffset:function(a,b,c){var e=a.dpDiv.outerWidth(),f=a.dpDiv.outerHeight(),h=a.input?a.input.outerWidth():0,i=a.input?a.input.outerHeight():0,g=document.documentElement.clientWidth+d(document).scrollLeft(),j=document.documentElement.clientHeight+d(document).scrollTop();b.left-=this._get(a,"isRTL")?e-h:0;b.left-=c&&b.left==a.input.offset().left?d(document).scrollLeft():0;b.top-=c&&b.top==a.input.offset().top+i?d(document).scrollTop():0;b.left-=Math.min(b.left,b.left+e>g&&g>e?Math.abs(b.left+e- +g):0);b.top-=Math.min(b.top,b.top+f>j&&j>f?Math.abs(f+i):0);return b},_findPos:function(a){for(var b=this._get(this._getInst(a),"isRTL");a&&(a.type=="hidden"||a.nodeType!=1||d.expr.filters.hidden(a));)a=a[b?"previousSibling":"nextSibling"];a=d(a).offset();return[a.left,a.top]},_hideDatepicker:function(a){var b=this._curInst;if(!(!b||a&&b!=d.data(a,"datepicker")))if(this._datepickerShowing){a=this._get(b,"showAnim");var c=this._get(b,"duration"),e=function(){d.datepicker._tidyDialog(b);this._curInst= +null};d.effects&&d.effects[a]?b.dpDiv.hide(a,d.datepicker._get(b,"showOptions"),c,e):b.dpDiv[a=="slideDown"?"slideUp":a=="fadeIn"?"fadeOut":"hide"](a?c:null,e);a||e();if(a=this._get(b,"onClose"))a.apply(b.input?b.input[0]:null,[b.input?b.input.val():"",b]);this._datepickerShowing=false;this._lastInput=null;if(this._inDialog){this._dialogInput.css({position:"absolute",left:"0",top:"-100px"});if(d.blockUI){d.unblockUI();d("body").append(this.dpDiv)}}this._inDialog=false}},_tidyDialog:function(a){a.dpDiv.removeClass(this._dialogClass).unbind(".ui-datepicker-calendar")}, +_checkExternalClick:function(a){if(d.datepicker._curInst){a=d(a.target);a[0].id!=d.datepicker._mainDivId&&a.parents("#"+d.datepicker._mainDivId).length==0&&!a.hasClass(d.datepicker.markerClassName)&&!a.hasClass(d.datepicker._triggerClass)&&d.datepicker._datepickerShowing&&!(d.datepicker._inDialog&&d.blockUI)&&d.datepicker._hideDatepicker()}},_adjustDate:function(a,b,c){a=d(a);var e=this._getInst(a[0]);if(!this._isDisabledDatepicker(a[0])){this._adjustInstDate(e,b+(c=="M"?this._get(e,"showCurrentAtPos"): +0),c);this._updateDatepicker(e)}},_gotoToday:function(a){a=d(a);var b=this._getInst(a[0]);if(this._get(b,"gotoCurrent")&&b.currentDay){b.selectedDay=b.currentDay;b.drawMonth=b.selectedMonth=b.currentMonth;b.drawYear=b.selectedYear=b.currentYear}else{var c=new Date;b.selectedDay=c.getDate();b.drawMonth=b.selectedMonth=c.getMonth();b.drawYear=b.selectedYear=c.getFullYear()}this._notifyChange(b);this._adjustDate(a)},_selectMonthYear:function(a,b,c){a=d(a);var e=this._getInst(a[0]);e._selectingMonthYear= +false;e["selected"+(c=="M"?"Month":"Year")]=e["draw"+(c=="M"?"Month":"Year")]=parseInt(b.options[b.selectedIndex].value,10);this._notifyChange(e);this._adjustDate(a)},_clickMonthYear:function(a){var b=this._getInst(d(a)[0]);b.input&&b._selectingMonthYear&&setTimeout(function(){b.input.focus()},0);b._selectingMonthYear=!b._selectingMonthYear},_selectDay:function(a,b,c,e){var f=d(a);if(!(d(e).hasClass(this._unselectableClass)||this._isDisabledDatepicker(f[0]))){f=this._getInst(f[0]);f.selectedDay=f.currentDay= +d("a",e).html();f.selectedMonth=f.currentMonth=b;f.selectedYear=f.currentYear=c;this._selectDate(a,this._formatDate(f,f.currentDay,f.currentMonth,f.currentYear))}},_clearDate:function(a){a=d(a);this._getInst(a[0]);this._selectDate(a,"")},_selectDate:function(a,b){a=this._getInst(d(a)[0]);b=b!=null?b:this._formatDate(a);a.input&&a.input.val(b);this._updateAlternate(a);var c=this._get(a,"onSelect");if(c)c.apply(a.input?a.input[0]:null,[b,a]);else a.input&&a.input.trigger("change");if(a.inline)this._updateDatepicker(a); +else{this._hideDatepicker();this._lastInput=a.input[0];typeof a.input[0]!="object"&&a.input.focus();this._lastInput=null}},_updateAlternate:function(a){var b=this._get(a,"altField");if(b){var c=this._get(a,"altFormat")||this._get(a,"dateFormat"),e=this._getDate(a),f=this.formatDate(c,e,this._getFormatConfig(a));d(b).each(function(){d(this).val(f)})}},noWeekends:function(a){a=a.getDay();return[a>0&&a<6,""]},iso8601Week:function(a){a=new Date(a.getTime());a.setDate(a.getDate()+4-(a.getDay()||7));var b= +a.getTime();a.setMonth(0);a.setDate(1);return Math.floor(Math.round((b-a)/864E5)/7)+1},parseDate:function(a,b,c){if(a==null||b==null)throw"Invalid arguments";b=typeof b=="object"?b.toString():b+"";if(b=="")return null;var e=(c?c.shortYearCutoff:null)||this._defaults.shortYearCutoff;e=typeof e!="string"?e:(new Date).getFullYear()%100+parseInt(e,10);for(var f=(c?c.dayNamesShort:null)||this._defaults.dayNamesShort,h=(c?c.dayNames:null)||this._defaults.dayNames,i=(c?c.monthNamesShort:null)||this._defaults.monthNamesShort, +g=(c?c.monthNames:null)||this._defaults.monthNames,j=c=-1,l=-1,u=-1,k=false,o=function(p){(p=A+1-1){j=1;l=u;do{e=this._getDaysInMonth(c,j-1);if(l<=e)break;j++;l-=e}while(1)}v=this._daylightSavingAdjust(new Date(c,j-1,l));if(v.getFullYear()!= +c||v.getMonth()+1!=j||v.getDate()!=l)throw"Invalid date";return v},ATOM:"yy-mm-dd",COOKIE:"D, dd M yy",ISO_8601:"yy-mm-dd",RFC_822:"D, d M y",RFC_850:"DD, dd-M-y",RFC_1036:"D, d M y",RFC_1123:"D, d M yy",RFC_2822:"D, d M yy",RSS:"D, d M y",TICKS:"!",TIMESTAMP:"@",W3C:"yy-mm-dd",_ticksTo1970:(718685+Math.floor(492.5)-Math.floor(19.7)+Math.floor(4.925))*24*60*60*1E7,formatDate:function(a,b,c){if(!b)return"";var e=(c?c.dayNamesShort:null)||this._defaults.dayNamesShort,f=(c?c.dayNames:null)||this._defaults.dayNames, +h=(c?c.monthNamesShort:null)||this._defaults.monthNamesShort;c=(c?c.monthNames:null)||this._defaults.monthNames;var i=function(o){(o=k+112?a.getHours()+2:0);return a},_setDate:function(a,b,c){var e=!b,f=a.selectedMonth,h=a.selectedYear;b=this._restrictMinMax(a,this._determineDate(a,b,new Date));a.selectedDay=a.currentDay=b.getDate();a.drawMonth=a.selectedMonth=a.currentMonth=b.getMonth();a.drawYear=a.selectedYear=a.currentYear=b.getFullYear();if((f!=a.selectedMonth||h!=a.selectedYear)&&!c)this._notifyChange(a);this._adjustInstDate(a);if(a.input)a.input.val(e?"":this._formatDate(a))},_getDate:function(a){return!a.currentYear|| +a.input&&a.input.val()==""?null:this._daylightSavingAdjust(new Date(a.currentYear,a.currentMonth,a.currentDay))},_generateHTML:function(a){var b=new Date;b=this._daylightSavingAdjust(new Date(b.getFullYear(),b.getMonth(),b.getDate()));var c=this._get(a,"isRTL"),e=this._get(a,"showButtonPanel"),f=this._get(a,"hideIfNoPrevNext"),h=this._get(a,"navigationAsDateFormat"),i=this._getNumberOfMonths(a),g=this._get(a,"showCurrentAtPos"),j=this._get(a,"stepMonths"),l=i[0]!=1||i[1]!=1,u=this._daylightSavingAdjust(!a.currentDay? +new Date(9999,9,9):new Date(a.currentYear,a.currentMonth,a.currentDay)),k=this._getMinMaxDate(a,"min"),o=this._getMinMaxDate(a,"max");g=a.drawMonth-g;var m=a.drawYear;if(g<0){g+=12;m--}if(o){var n=this._daylightSavingAdjust(new Date(o.getFullYear(),o.getMonth()-i[0]*i[1]+1,o.getDate()));for(n=k&&nn;){g--;if(g<0){g=11;m--}}}a.drawMonth=g;a.drawYear=m;n=this._get(a,"prevText");n=!h?n:this.formatDate(n,this._daylightSavingAdjust(new Date(m,g-j,1)),this._getFormatConfig(a)); +n=this._canAdjustMonth(a,-1,m,g)?''+n+"":f?"":''+n+"";var r=this._get(a,"nextText");r=!h?r:this.formatDate(r,this._daylightSavingAdjust(new Date(m, +g+j,1)),this._getFormatConfig(a));f=this._canAdjustMonth(a,+1,m,g)?''+r+"":f?"":''+r+"";j=this._get(a,"currentText");r=this._get(a,"gotoCurrent")&& +a.currentDay?u:b;j=!h?j:this.formatDate(j,r,this._getFormatConfig(a));h=!a.inline?'":"";e=e?'
    '+(c?h:"")+(this._isInRange(a,r)?'":"")+(c?"":h)+"
    ":"";h=parseInt(this._get(a,"firstDay"),10);h=isNaN(h)?0:h;j=this._get(a,"showWeek");r=this._get(a,"dayNames");this._get(a,"dayNamesShort");var s=this._get(a,"dayNamesMin"),A=this._get(a,"monthNames"),v=this._get(a,"monthNamesShort"),p=this._get(a,"beforeShowDay"),C=this._get(a,"showOtherMonths"),K=this._get(a,"selectOtherMonths");this._get(a,"calculateWeek");for(var E=this._getDefaultDate(a),w="",x=0;x1)switch(G){case 0:y+=" ui-datepicker-group-first";t=" ui-corner-"+(c?"right":"left");break;case i[1]-1:y+=" ui-datepicker-group-last";t=" ui-corner-"+(c?"left":"right");break;default:y+=" ui-datepicker-group-middle";t="";break}y+='">'}y+='
    '+(/all|left/.test(t)&&x==0?c? +f:n:"")+(/all|right/.test(t)&&x==0?c?n:f:"")+this._generateMonthYearHeader(a,g,m,k,o,x>0||G>0,A,v)+'
    ';var D=j?'":"";for(t=0;t<7;t++){var q=(t+h)%7;D+="=5?' class="ui-datepicker-week-end"':"")+'>'+s[q]+""}y+=D+"";D=this._getDaysInMonth(m,g);if(m==a.selectedYear&&g==a.selectedMonth)a.selectedDay=Math.min(a.selectedDay, +D);t=(this._getFirstDayOfMonth(m,g)-h+7)%7;D=l?6:Math.ceil((t+D)/7);q=this._daylightSavingAdjust(new Date(m,g,1-t));for(var Q=0;Q";var R=!j?"":'";for(t=0;t<7;t++){var I=p?p.apply(a.input?a.input[0]:null,[q]):[true,""],F=q.getMonth()!=g,L=F&&!K||!I[0]||k&&qo;R+='";q.setDate(q.getDate()+1);q=this._daylightSavingAdjust(q)}y+=R+""}g++;if(g>11){g=0;m++}y+="
    '+this._get(a,"weekHeader")+"
    '+this._get(a,"calculateWeek")(q)+""+(F&&!C?" ":L?''+q.getDate()+ +"":''+q.getDate()+"")+"
    "+(l?"
    "+(i[0]>0&&G==i[1]-1?'
    ':""):"");O+=y}w+=O}w+=e+(d.browser.msie&&parseInt(d.browser.version,10)<7&&!a.inline?'': +"");a._keyEvent=false;return w},_generateMonthYearHeader:function(a,b,c,e,f,h,i,g){var j=this._get(a,"changeMonth"),l=this._get(a,"changeYear"),u=this._get(a,"showMonthAfterYear"),k='
    ',o="";if(h||!j)o+=''+i[b]+"";else{i=e&&e.getFullYear()==c;var m=f&&f.getFullYear()==c;o+='"}u||(k+=o+(h||!(j&&l)?" ":""));if(!a.yearshtml){a.yearshtml="";if(h||!l)k+=''+c+"";else{g=this._get(a,"yearRange").split(":");var r=(new Date).getFullYear();i=function(s){s=s.match(/c[+-].*/)?c+parseInt(s.substring(1),10):s.match(/[+-].*/)?r+parseInt(s,10):parseInt(s,10);return isNaN(s)? +r:s};b=i(g[0]);g=Math.max(b,i(g[1]||""));b=e?Math.max(b,e.getFullYear()):b;g=f?Math.min(g,f.getFullYear()):g;for(a.yearshtml+='";k+=a.yearshtml;a.yearshtml=null}}k+=this._get(a,"yearSuffix");if(u)k+= +(h||!(j&&l)?" ":"")+o;k+="
    ";return k},_adjustInstDate:function(a,b,c){var e=a.drawYear+(c=="Y"?b:0),f=a.drawMonth+(c=="M"?b:0);b=Math.min(a.selectedDay,this._getDaysInMonth(e,f))+(c=="D"?b:0);e=this._restrictMinMax(a,this._daylightSavingAdjust(new Date(e,f,b)));a.selectedDay=e.getDate();a.drawMonth=a.selectedMonth=e.getMonth();a.drawYear=a.selectedYear=e.getFullYear();if(c=="M"||c=="Y")this._notifyChange(a)},_restrictMinMax:function(a,b){var c=this._getMinMaxDate(a,"min");a=this._getMinMaxDate(a, +"max");b=c&&ba?a:b},_notifyChange:function(a){var b=this._get(a,"onChangeMonthYear");if(b)b.apply(a.input?a.input[0]:null,[a.selectedYear,a.selectedMonth+1,a])},_getNumberOfMonths:function(a){a=this._get(a,"numberOfMonths");return a==null?[1,1]:typeof a=="number"?[1,a]:a},_getMinMaxDate:function(a,b){return this._determineDate(a,this._get(a,b+"Date"),null)},_getDaysInMonth:function(a,b){return 32-this._daylightSavingAdjust(new Date(a,b,32)).getDate()},_getFirstDayOfMonth:function(a, +b){return(new Date(a,b,1)).getDay()},_canAdjustMonth:function(a,b,c,e){var f=this._getNumberOfMonths(a);c=this._daylightSavingAdjust(new Date(c,e+(b<0?b:f[0]*f[1]),1));b<0&&c.setDate(this._getDaysInMonth(c.getFullYear(),c.getMonth()));return this._isInRange(a,c)},_isInRange:function(a,b){var c=this._getMinMaxDate(a,"min");a=this._getMinMaxDate(a,"max");return(!c||b.getTime()>=c.getTime())&&(!a||b.getTime()<=a.getTime())},_getFormatConfig:function(a){var b=this._get(a,"shortYearCutoff");b=typeof b!= +"string"?b:(new Date).getFullYear()%100+parseInt(b,10);return{shortYearCutoff:b,dayNamesShort:this._get(a,"dayNamesShort"),dayNames:this._get(a,"dayNames"),monthNamesShort:this._get(a,"monthNamesShort"),monthNames:this._get(a,"monthNames")}},_formatDate:function(a,b,c,e){if(!b){a.currentDay=a.selectedDay;a.currentMonth=a.selectedMonth;a.currentYear=a.selectedYear}b=b?typeof b=="object"?b:this._daylightSavingAdjust(new Date(e,c,b)):this._daylightSavingAdjust(new Date(a.currentYear,a.currentMonth,a.currentDay)); +return this.formatDate(this._get(a,"dateFormat"),b,this._getFormatConfig(a))}});d.fn.datepicker=function(a){if(!this.length)return this;if(!d.datepicker.initialized){d(document).mousedown(d.datepicker._checkExternalClick).find("body").append(d.datepicker.dpDiv);d.datepicker.initialized=true}var b=Array.prototype.slice.call(arguments,1);if(typeof a=="string"&&(a=="isDisabled"||a=="getDate"||a=="widget"))return d.datepicker["_"+a+"Datepicker"].apply(d.datepicker,[this[0]].concat(b));if(a=="option"&& +arguments.length==2&&typeof arguments[1]=="string")return d.datepicker["_"+a+"Datepicker"].apply(d.datepicker,[this[0]].concat(b));return this.each(function(){typeof a=="string"?d.datepicker["_"+a+"Datepicker"].apply(d.datepicker,[this].concat(b)):d.datepicker._attachDatepicker(this,a)})};d.datepicker=new M;d.datepicker.initialized=false;d.datepicker.uuid=(new Date).getTime();d.datepicker.version="1.8.13";window["DP_jQuery_"+z]=d})(jQuery); +;/* + * jQuery UI Progressbar 1.8.13 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Progressbar + * + * Depends: + * jquery.ui.core.js + * jquery.ui.widget.js + */ +(function(b,d){b.widget("ui.progressbar",{options:{value:0,max:100},min:0,_create:function(){this.element.addClass("ui-progressbar ui-widget ui-widget-content ui-corner-all").attr({role:"progressbar","aria-valuemin":this.min,"aria-valuemax":this.options.max,"aria-valuenow":this._value()});this.valueDiv=b("
    ").appendTo(this.element);this.oldValue=this._value();this._refreshValue()},destroy:function(){this.element.removeClass("ui-progressbar ui-widget ui-widget-content ui-corner-all").removeAttr("role").removeAttr("aria-valuemin").removeAttr("aria-valuemax").removeAttr("aria-valuenow"); +this.valueDiv.remove();b.Widget.prototype.destroy.apply(this,arguments)},value:function(a){if(a===d)return this._value();this._setOption("value",a);return this},_setOption:function(a,c){if(a==="value"){this.options.value=c;this._refreshValue();this._value()===this.options.max&&this._trigger("complete")}b.Widget.prototype._setOption.apply(this,arguments)},_value:function(){var a=this.options.value;if(typeof a!=="number")a=0;return Math.min(this.options.max,Math.max(this.min,a))},_percentage:function(){return 100* +this._value()/this.options.max},_refreshValue:function(){var a=this.value(),c=this._percentage();if(this.oldValue!==a){this.oldValue=a;this._trigger("change")}this.valueDiv.toggle(a>this.min).toggleClass("ui-corner-right",a===this.options.max).width(c.toFixed(0)+"%");this.element.attr("aria-valuenow",a)}});b.extend(b.ui.progressbar,{version:"1.8.13"})})(jQuery); +;/* + * jQuery UI Effects 1.8.13 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Effects/ + */ +jQuery.effects||function(f,j){function m(c){var a;if(c&&c.constructor==Array&&c.length==3)return c;if(a=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(c))return[parseInt(a[1],10),parseInt(a[2],10),parseInt(a[3],10)];if(a=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(c))return[parseFloat(a[1])*2.55,parseFloat(a[2])*2.55,parseFloat(a[3])*2.55];if(a=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(c))return[parseInt(a[1], +16),parseInt(a[2],16),parseInt(a[3],16)];if(a=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(c))return[parseInt(a[1]+a[1],16),parseInt(a[2]+a[2],16),parseInt(a[3]+a[3],16)];if(/rgba\(0, 0, 0, 0\)/.exec(c))return n.transparent;return n[f.trim(c).toLowerCase()]}function s(c,a){var b;do{b=f.curCSS(c,a);if(b!=""&&b!="transparent"||f.nodeName(c,"body"))break;a="backgroundColor"}while(c=c.parentNode);return m(b)}function o(){var c=document.defaultView?document.defaultView.getComputedStyle(this,null):this.currentStyle, +a={},b,d;if(c&&c.length&&c[0]&&c[c[0]])for(var e=c.length;e--;){b=c[e];if(typeof c[b]=="string"){d=b.replace(/\-(\w)/g,function(g,h){return h.toUpperCase()});a[d]=c[b]}}else for(b in c)if(typeof c[b]==="string")a[b]=c[b];return a}function p(c){var a,b;for(a in c){b=c[a];if(b==null||f.isFunction(b)||a in t||/scrollbar/.test(a)||!/color/i.test(a)&&isNaN(parseFloat(b)))delete c[a]}return c}function u(c,a){var b={_:0},d;for(d in a)if(c[d]!=a[d])b[d]=a[d];return b}function k(c,a,b,d){if(typeof c=="object"){d= +a;b=null;a=c;c=a.effect}if(f.isFunction(a)){d=a;b=null;a={}}if(typeof a=="number"||f.fx.speeds[a]){d=b;b=a;a={}}if(f.isFunction(b)){d=b;b=null}a=a||{};b=b||a.duration;b=f.fx.off?0:typeof b=="number"?b:b in f.fx.speeds?f.fx.speeds[b]:f.fx.speeds._default;d=d||a.complete;return[c,a,b,d]}function l(c){if(!c||typeof c==="number"||f.fx.speeds[c])return true;if(typeof c==="string"&&!f.effects[c])return true;return false}f.effects={};f.each(["backgroundColor","borderBottomColor","borderLeftColor","borderRightColor", +"borderTopColor","borderColor","color","outlineColor"],function(c,a){f.fx.step[a]=function(b){if(!b.colorInit){b.start=s(b.elem,a);b.end=m(b.end);b.colorInit=true}b.elem.style[a]="rgb("+Math.max(Math.min(parseInt(b.pos*(b.end[0]-b.start[0])+b.start[0],10),255),0)+","+Math.max(Math.min(parseInt(b.pos*(b.end[1]-b.start[1])+b.start[1],10),255),0)+","+Math.max(Math.min(parseInt(b.pos*(b.end[2]-b.start[2])+b.start[2],10),255),0)+")"}});var n={aqua:[0,255,255],azure:[240,255,255],beige:[245,245,220],black:[0, +0,0],blue:[0,0,255],brown:[165,42,42],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgrey:[169,169,169],darkgreen:[0,100,0],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkviolet:[148,0,211],fuchsia:[255,0,255],gold:[255,215,0],green:[0,128,0],indigo:[75,0,130],khaki:[240,230,140],lightblue:[173,216,230],lightcyan:[224,255,255],lightgreen:[144,238,144],lightgrey:[211, +211,211],lightpink:[255,182,193],lightyellow:[255,255,224],lime:[0,255,0],magenta:[255,0,255],maroon:[128,0,0],navy:[0,0,128],olive:[128,128,0],orange:[255,165,0],pink:[255,192,203],purple:[128,0,128],violet:[128,0,128],red:[255,0,0],silver:[192,192,192],white:[255,255,255],yellow:[255,255,0],transparent:[255,255,255]},q=["add","remove","toggle"],t={border:1,borderBottom:1,borderColor:1,borderLeft:1,borderRight:1,borderTop:1,borderWidth:1,margin:1,padding:1};f.effects.animateClass=function(c,a,b, +d){if(f.isFunction(b)){d=b;b=null}return this.queue(function(){var e=f(this),g=e.attr("style")||" ",h=p(o.call(this)),r,v=e.attr("class");f.each(q,function(w,i){c[i]&&e[i+"Class"](c[i])});r=p(o.call(this));e.attr("class",v);e.animate(u(h,r),{queue:false,duration:a,easding:b,complete:function(){f.each(q,function(w,i){c[i]&&e[i+"Class"](c[i])});if(typeof e.attr("style")=="object"){e.attr("style").cssText="";e.attr("style").cssText=g}else e.attr("style",g);d&&d.apply(this,arguments);f.dequeue(this)}})})}; +f.fn.extend({_addClass:f.fn.addClass,addClass:function(c,a,b,d){return a?f.effects.animateClass.apply(this,[{add:c},a,b,d]):this._addClass(c)},_removeClass:f.fn.removeClass,removeClass:function(c,a,b,d){return a?f.effects.animateClass.apply(this,[{remove:c},a,b,d]):this._removeClass(c)},_toggleClass:f.fn.toggleClass,toggleClass:function(c,a,b,d,e){return typeof a=="boolean"||a===j?b?f.effects.animateClass.apply(this,[a?{add:c}:{remove:c},b,d,e]):this._toggleClass(c,a):f.effects.animateClass.apply(this, +[{toggle:c},a,b,d])},switchClass:function(c,a,b,d,e){return f.effects.animateClass.apply(this,[{add:a,remove:c},b,d,e])}});f.extend(f.effects,{version:"1.8.13",save:function(c,a){for(var b=0;b
    ").addClass("ui-effects-wrapper").css({fontSize:"100%",background:"transparent",border:"none",margin:0,padding:0}); +c.wrap(b);b=c.parent();if(c.css("position")=="static"){b.css({position:"relative"});c.css({position:"relative"})}else{f.extend(a,{position:c.css("position"),zIndex:c.css("z-index")});f.each(["top","left","bottom","right"],function(d,e){a[e]=c.css(e);if(isNaN(parseInt(a[e],10)))a[e]="auto"});c.css({position:"relative",top:0,left:0,right:"auto",bottom:"auto"})}return b.css(a).show()},removeWrapper:function(c){if(c.parent().is(".ui-effects-wrapper"))return c.parent().replaceWith(c);return c},setTransition:function(c, +a,b,d){d=d||{};f.each(a,function(e,g){unit=c.cssUnit(g);if(unit[0]>0)d[g]=unit[0]*b+unit[1]});return d}});f.fn.extend({effect:function(c){var a=k.apply(this,arguments),b={options:a[1],duration:a[2],callback:a[3]};a=b.options.mode;var d=f.effects[c];if(f.fx.off||!d)return a?this[a](b.duration,b.callback):this.each(function(){b.callback&&b.callback.call(this)});return d.call(this,b)},_show:f.fn.show,show:function(c){if(l(c))return this._show.apply(this,arguments);else{var a=k.apply(this,arguments); +a[1].mode="show";return this.effect.apply(this,a)}},_hide:f.fn.hide,hide:function(c){if(l(c))return this._hide.apply(this,arguments);else{var a=k.apply(this,arguments);a[1].mode="hide";return this.effect.apply(this,a)}},__toggle:f.fn.toggle,toggle:function(c){if(l(c)||typeof c==="boolean"||f.isFunction(c))return this.__toggle.apply(this,arguments);else{var a=k.apply(this,arguments);a[1].mode="toggle";return this.effect.apply(this,a)}},cssUnit:function(c){var a=this.css(c),b=[];f.each(["em","px","%", +"pt"],function(d,e){if(a.indexOf(e)>0)b=[parseFloat(a),e]});return b}});f.easing.jswing=f.easing.swing;f.extend(f.easing,{def:"easeOutQuad",swing:function(c,a,b,d,e){return f.easing[f.easing.def](c,a,b,d,e)},easeInQuad:function(c,a,b,d,e){return d*(a/=e)*a+b},easeOutQuad:function(c,a,b,d,e){return-d*(a/=e)*(a-2)+b},easeInOutQuad:function(c,a,b,d,e){if((a/=e/2)<1)return d/2*a*a+b;return-d/2*(--a*(a-2)-1)+b},easeInCubic:function(c,a,b,d,e){return d*(a/=e)*a*a+b},easeOutCubic:function(c,a,b,d,e){return d* +((a=a/e-1)*a*a+1)+b},easeInOutCubic:function(c,a,b,d,e){if((a/=e/2)<1)return d/2*a*a*a+b;return d/2*((a-=2)*a*a+2)+b},easeInQuart:function(c,a,b,d,e){return d*(a/=e)*a*a*a+b},easeOutQuart:function(c,a,b,d,e){return-d*((a=a/e-1)*a*a*a-1)+b},easeInOutQuart:function(c,a,b,d,e){if((a/=e/2)<1)return d/2*a*a*a*a+b;return-d/2*((a-=2)*a*a*a-2)+b},easeInQuint:function(c,a,b,d,e){return d*(a/=e)*a*a*a*a+b},easeOutQuint:function(c,a,b,d,e){return d*((a=a/e-1)*a*a*a*a+1)+b},easeInOutQuint:function(c,a,b,d,e){if((a/= +e/2)<1)return d/2*a*a*a*a*a+b;return d/2*((a-=2)*a*a*a*a+2)+b},easeInSine:function(c,a,b,d,e){return-d*Math.cos(a/e*(Math.PI/2))+d+b},easeOutSine:function(c,a,b,d,e){return d*Math.sin(a/e*(Math.PI/2))+b},easeInOutSine:function(c,a,b,d,e){return-d/2*(Math.cos(Math.PI*a/e)-1)+b},easeInExpo:function(c,a,b,d,e){return a==0?b:d*Math.pow(2,10*(a/e-1))+b},easeOutExpo:function(c,a,b,d,e){return a==e?b+d:d*(-Math.pow(2,-10*a/e)+1)+b},easeInOutExpo:function(c,a,b,d,e){if(a==0)return b;if(a==e)return b+d;if((a/= +e/2)<1)return d/2*Math.pow(2,10*(a-1))+b;return d/2*(-Math.pow(2,-10*--a)+2)+b},easeInCirc:function(c,a,b,d,e){return-d*(Math.sqrt(1-(a/=e)*a)-1)+b},easeOutCirc:function(c,a,b,d,e){return d*Math.sqrt(1-(a=a/e-1)*a)+b},easeInOutCirc:function(c,a,b,d,e){if((a/=e/2)<1)return-d/2*(Math.sqrt(1-a*a)-1)+b;return d/2*(Math.sqrt(1-(a-=2)*a)+1)+b},easeInElastic:function(c,a,b,d,e){c=1.70158;var g=0,h=d;if(a==0)return b;if((a/=e)==1)return b+d;g||(g=e*0.3);if(h
    ").css({position:"absolute",visibility:"visible",left:-f*(h/d),top:-e*(i/c)}).parent().addClass("ui-effects-explode").css({position:"absolute",overflow:"hidden",width:h/d,height:i/c,left:g.left+f*(h/d)+(a.options.mode=="show"?(f-Math.floor(d/2))*(h/d):0),top:g.top+e*(i/c)+(a.options.mode=="show"?(e-Math.floor(c/2))*(i/c):0),opacity:a.options.mode=="show"?0:1}).animate({left:g.left+f*(h/d)+(a.options.mode=="show"?0:(f-Math.floor(d/2))*(h/d)),top:g.top+ +e*(i/c)+(a.options.mode=="show"?0:(e-Math.floor(c/2))*(i/c)),opacity:a.options.mode=="show"?1:0},a.duration||500);setTimeout(function(){a.options.mode=="show"?b.css({visibility:"visible"}):b.css({visibility:"visible"}).hide();a.callback&&a.callback.apply(b[0]);b.dequeue();j("div.ui-effects-explode").remove()},a.duration||500)})}})(jQuery); +;/* + * jQuery UI Effects Fade 1.8.13 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Effects/Fade + * + * Depends: + * jquery.effects.core.js + */ +(function(b){b.effects.fade=function(a){return this.queue(function(){var c=b(this),d=b.effects.setMode(c,a.options.mode||"hide");c.animate({opacity:d},{queue:false,duration:a.duration,easing:a.options.easing,complete:function(){a.callback&&a.callback.apply(this,arguments);c.dequeue()}})})}})(jQuery); +;/* + * jQuery UI Effects Fold 1.8.13 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Effects/Fold + * + * Depends: + * jquery.effects.core.js + */ +(function(c){c.effects.fold=function(a){return this.queue(function(){var b=c(this),j=["position","top","bottom","left","right"],d=c.effects.setMode(b,a.options.mode||"hide"),g=a.options.size||15,h=!!a.options.horizFirst,k=a.duration?a.duration/2:c.fx.speeds._default/2;c.effects.save(b,j);b.show();var e=c.effects.createWrapper(b).css({overflow:"hidden"}),f=d=="show"!=h,l=f?["width","height"]:["height","width"];f=f?[e.width(),e.height()]:[e.height(),e.width()];var i=/([0-9]+)%/.exec(g);if(i)g=parseInt(i[1], +10)/100*f[d=="hide"?0:1];if(d=="show")e.css(h?{height:0,width:g}:{height:g,width:0});h={};i={};h[l[0]]=d=="show"?f[0]:g;i[l[1]]=d=="show"?f[1]:0;e.animate(h,k,a.options.easing).animate(i,k,a.options.easing,function(){d=="hide"&&b.hide();c.effects.restore(b,j);c.effects.removeWrapper(b);a.callback&&a.callback.apply(b[0],arguments);b.dequeue()})})}})(jQuery); +;/* + * jQuery UI Effects Highlight 1.8.13 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Effects/Highlight + * + * Depends: + * jquery.effects.core.js + */ +(function(b){b.effects.highlight=function(c){return this.queue(function(){var a=b(this),e=["backgroundImage","backgroundColor","opacity"],d=b.effects.setMode(a,c.options.mode||"show"),f={backgroundColor:a.css("backgroundColor")};if(d=="hide")f.opacity=0;b.effects.save(a,e);a.show().css({backgroundImage:"none",backgroundColor:c.options.color||"#ffff99"}).animate(f,{queue:false,duration:c.duration,easing:c.options.easing,complete:function(){d=="hide"&&a.hide();b.effects.restore(a,e);d=="show"&&!b.support.opacity&& +this.style.removeAttribute("filter");c.callback&&c.callback.apply(this,arguments);a.dequeue()}})})}})(jQuery); +;/* + * jQuery UI Effects Pulsate 1.8.13 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Effects/Pulsate + * + * Depends: + * jquery.effects.core.js + */ +(function(d){d.effects.pulsate=function(a){return this.queue(function(){var b=d(this),c=d.effects.setMode(b,a.options.mode||"show");times=(a.options.times||5)*2-1;duration=a.duration?a.duration/2:d.fx.speeds._default/2;isVisible=b.is(":visible");animateTo=0;if(!isVisible){b.css("opacity",0).show();animateTo=1}if(c=="hide"&&isVisible||c=="show"&&!isVisible)times--;for(c=0;c
    ').appendTo(document.body).addClass(a.options.className).css({top:d.top,left:d.left,height:b.innerHeight(),width:b.innerWidth(),position:"absolute"}).animate(c,a.duration,a.options.easing,function(){f.remove();a.callback&&a.callback.apply(b[0],arguments); +b.dequeue()})})}})(jQuery); +; \ No newline at end of file diff -r e6b328970ee8 -r ffb0a6d08000 web/res/js/jquery.url.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/web/res/js/jquery.url.js Wed Jul 27 12:25:45 2011 +0200 @@ -0,0 +1,164 @@ +// JQuery URL Parser plugin - https://github.com/allmarkedup/jQuery-URL-Parser +// Written by Mark Perkins, mark@allmarkedup.com +// License: http://unlicense.org/ (i.e. do what you want with it!) + +;(function($, undefined) { + + var tag2attr = { + a : 'href', + img : 'src', + form : 'action', + base : 'href', + script : 'src', + iframe : 'src', + link : 'href' + }, + + key = ["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","fragment"], // keys available to query + + aliases = { "anchor" : "fragment" }, // aliases for backwards compatability + + parser = { + strict : /^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*):?([^:@]*))?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/, //less intuitive, more accurate to the specs + loose : /^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*):?([^:@]*))?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/ // more intuitive, fails on relative paths and deviates from specs + }, + + querystring_parser = /(?:^|&|;)([^&=;]*)=?([^&;]*)/g, // supports both ampersand and semicolon-delimted query string key/value pairs + + fragment_parser = /(?:^|&|;)([^&=;]*)=?([^&;]*)/g; // supports both ampersand and semicolon-delimted fragment key/value pairs + + function parseUri( url, strictMode ) + { + var str = decodeURI( url ), + res = parser[ strictMode || false ? "strict" : "loose" ].exec( str ), + uri = { attr : {}, param : {}, seg : {} }, + i = 14; + + while ( i-- ) + { + uri.attr[ key[i] ] = res[i] || ""; + } + + // build query and fragment parameters + + uri.param['query'] = {}; + uri.param['fragment'] = {}; + + uri.attr['query'].replace( querystring_parser, function ( $0, $1, $2 ){ + if ($1) + { + uri.param['query'][$1] = $2; + } + }); + + uri.attr['fragment'].replace( fragment_parser, function ( $0, $1, $2 ){ + if ($1) + { + uri.param['fragment'][$1] = $2; + } + }); + + // split path and fragement into segments + + uri.seg['path'] = uri.attr.path.replace(/^\/+|\/+$/g,'').split('/'); + + uri.seg['fragment'] = uri.attr.fragment.replace(/^\/+|\/+$/g,'').split('/'); + + // compile a 'base' domain attribute + + uri.attr['base'] = uri.attr.host ? uri.attr.protocol+"://"+uri.attr.host + (uri.attr.port ? ":"+uri.attr.port : '') : ''; + + return uri; + }; + + function getAttrName( elm ) + { + var tn = elm.tagName; + if ( tn !== undefined ) return tag2attr[tn.toLowerCase()]; + return tn; + } + + $.fn.url = function( strictMode ) + { + var url = ''; + + if ( this.length ) + { + url = $(this).attr( getAttrName(this[0]) ) || ''; + } + + return $.url({ url : url, strict : strictMode }); + }; + + $.url = function( opts ) + { + var url = '', + strict = false; + + if ( typeof opts === 'string' ) + { + url = opts; + } + else + { + opts = opts || {}; + strict = opts.strict || strict; + url = opts.url === undefined ? window.location.toString() : opts.url; + } + + return { + + data : parseUri(url, strict), + + // get various attributes from the URI + attr : function( attr ) + { + attr = aliases[attr] || attr; + return attr !== undefined ? this.data.attr[attr] : this.data.attr; + }, + + // return query string parameters + param : function( param ) + { + return param !== undefined ? this.data.param.query[param] : this.data.param.query; + }, + + // return fragment parameters + fparam : function( param ) + { + return param !== undefined ? this.data.param.fragment[param] : this.data.param.fragment; + }, + + // return path segments + segment : function( seg ) + { + if ( seg === undefined ) + { + return this.data.seg.path; + } + else + { + seg = seg < 0 ? this.data.seg.path.length + seg : seg - 1; // negative segments count from the end + return this.data.seg.path[seg]; + } + }, + + // return fragment segments + fsegment : function( seg ) + { + if ( seg === undefined ) + { + return this.data.seg.fragment; + } + else + { + seg = seg < 0 ? this.data.seg.fragment.length + seg : seg - 1; // negative segments count from the end + return this.data.seg.fragment[seg]; + } + } + + }; + + }; + +})(jQuery); \ No newline at end of file diff -r e6b328970ee8 -r ffb0a6d08000 web/res/js/tw_widget.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/web/res/js/tw_widget.js Wed Jul 27 12:25:45 2011 +0200 @@ -0,0 +1,53 @@ +/** + * Twitter - http://twitter.com + * Copyright (C) 2010 Twitter + * Author: Dustin Diaz (dustin@twitter.com) + * + * V 2.2.5 Twitter search/profile/faves/list widget + * http://twitter.com/widgets + * For full documented source see http://twitter.com/javascripts/widgets/widget.js + * Hosting and modifications of the original source IS allowed. + * + * Example usage: + + + * + *//** + * @namespace TWTR public namespace for Twitter widget + */TWTR=window.TWTR||{},Array.forEach||(Array.prototype.filter=function(a,b){var c=b||window,d=[];for(var e=0,f=this.length;ej&&(l=Math.round(f/2-j/2)),window.open(b.href,"intent",e+",width="+i+",height="+j+",left="+k+",top="+l),a.returnValue=!1,a.preventDefault&&a.preventDefault()))}function b(a,b,c){this.el=a,this.prop=b,this.from=c.from,this.to=c.to,this.time=c.time,this.callback=c.callback,this.animDiff=this.to-this.from}function a(a,b,c){for(var d=0,e=a.length;dthis.time?(this._setStyle(this.to),this.callback&&this.callback.call(this),clearInterval(this.timer)):(this.percentage=Math.floor(this.diff/this.time*100)/100,this.val=this.animDiff*this.percentage+this.from,this._setStyle(this.val))},b.prototype.start=function(){var a=this;this.startTime=new Date,this.timer=setInterval(function(){a._animate.call(a)},15)},TWTR.Widget=function(a){this.init(a)},function(){function G(a){function b(){return a.needle.metadata&&a.needle.metadata.result_type&&a.needle.metadata.result_type=="popular"?''+a.needle.metadata.recent_retweets+"+ recent retweets":""}var c='
    \n
    \n
    '+a.user+' profile
    \n
    \n
    \n

    \n '+a.user+" "+a.tweet+' \n \n '+a.created_at+' ·\n reply · \n retweet · \n favorite \n '+b()+" \n

    \n
    \n
    ",d=document.createElement("div");d.id="tweet-id-"+ ++G._tweetCount,d.className="twtr-tweet",d.innerHTML=c,this.element=d}function F(a,b,c){this.time=a||6e3,this.loop=b||!1,this.repeated=0,this.callback=c,this.haystack=[]}function E(a,b,c){this.job=a,this.decayFn=b,this.interval=c,this.decayRate=1,this.decayMultiplier=1.25,this.maxDecayTime=18e4}var c={},d=location.protocol.match(/https/),e=/^.+\/profile_images/,f="https://s3.amazonaws.com/twitter_production/profile_images",g=function(a){return d?a.replace(e,f):a},h={},i=function(a){var b=h[a];b||(b=new RegExp("(?:^|\\s+)"+a+"(?:\\s+|$)"),h[a]=b);return b},j=function(a,b,c,d){var b=b||"*",c=c||document,e=[],f=c.getElementsByTagName(b),g=i(a);for(var h=0,j=f.length;h0&&a<13){c="am";return a}if(a<1){c="am";return 12}c="pm";return a-12}(),e=b.getMinutes(),f=b.getSeconds();return d+":"+e+c+g()},C=function(a){var b=new Date,c=new Date(a);k.ie&&(c=Date.parse(a.replace(/( \+)/," UTC$1")));var d=b-c,e=1e3,f=e*60,g=f*60,h=g*24,i=h*7;if(isNaN(d)||d<0)return"";if(dh&&d'+(b.length>25?b.substr(0,24)+"...":b)+""+e})},at:function(a){return a.replace(/\B[@@]([a-zA-Z0-9_]{1,20})/g,function(a,b){return'@'+b+""})},list:function(a){return a.replace(/\B[@@]([a-zA-Z0-9_]{1,20}\/\w+)/g,function(a,b){return'@'+b+""})},hash:function(a){return a.replace(/(^|\s+)#(\w+)/gi,function(a,b,c){return b+'#'+c+""})},clean:function(a){return this.hash(this.at(this.list(this.link(a))))}};E.prototype={start:function(){this.stop().run();return this},stop:function(){this.worker&&window.clearTimeout(this.worker);return this},run:function(){var a=this;this.job(function(){a.decayRate=a.decayFn()?Math.max(1,a.decayRate/a.decayMultiplier):a.decayRate*a.decayMultiplier;var b=a.interval*a.decayRate;b=b>=a.maxDecayTime?a.maxDecayTime:b,b=Math.floor(b),a.worker=window.setTimeout(function(){a.run.call(a)},b)})},destroy:function(){this.stop(),this.decayRate=1;return this}},F.prototype={set:function(a){this.haystack=a},add:function(a){this.haystack.unshift(a)},start:function(){if(this.timer)return this;this._job();var a=this;this.timer=setInterval(function(){a._job.call(a)},this.time);return this},stop:function(){this.timer&&(window.clearInterval(this.timer),this.timer=null);return this},_next:function(){var a=this.haystack.shift();a&&this.loop&&this.haystack.push(a);return a||null},_job:function(){var a=this._next();a&&this.callback(a);return this}},G._tweetCount=0,c.loadStyleSheet=function(a,b){if(!TWTR.Widget.loadingStyleSheet){TWTR.Widget.loadingStyleSheet=!0;var c=document.createElement("link");c.href=a,c.rel="stylesheet",c.type="text/css",document.getElementsByTagName("head")[0].appendChild(c);var d=setInterval(function(){var a=v(b,"position");a=="relative"&&(clearInterval(d),d=null,TWTR.Widget.hasLoadedStyleSheet=!0)},50)}},function(){var a=!1;c.css=function(b){function e(){document.getElementsByTagName("head")[0].appendChild(c)}var c=document.createElement("style");c.type="text/css";if(k.ie)c.styleSheet.cssText=b;else{var d=document.createDocumentFragment();d.appendChild(document.createTextNode(b)),c.appendChild(d)}!k.ie||a?e():window.attachEvent("onload",function(){a=!0,e()})}}(),TWTR.Widget.isLoaded=!1,TWTR.Widget.loadingStyleSheet=!1,TWTR.Widget.hasLoadedStyleSheet=!1,TWTR.Widget.WIDGET_NUMBER=0,TWTR.Widget.matches={mentions:/^@[a-zA-Z0-9_]{1,20}\b/,any_mentions:/\b@[a-zA-Z0-9_]{1,20}\b/},TWTR.Widget.jsonP=function(a,b){var c=document.createElement("script"),d=document.getElementsByTagName("head")[0];c.type="text/javascript",c.src=a,d.insertBefore(c,d.firstChild),b(c);return c},TWTR.Widget.prototype=function(){var e=d?"https://":"http://",f=window.location.hostname.match(/twitter\.com/)?window.location.hostname+":"+window.location.port:"twitter.com",h=e+"search."+f+"/search.",i=e+"api."+f+"/1/statuses/user_timeline.",m=e+f+"/favorites/",o=e+"api."+f+"/1/",p=25e3,q=d?"https://twitter-widgets.s3.amazonaws.com/j/1/default.gif":"http://widgets.twimg.com/j/1/default.gif";return{init:function(a){var b=this;this._widgetNumber=++TWTR.Widget.WIDGET_NUMBER,TWTR.Widget["receiveCallback_"+this._widgetNumber]=function(a){b._prePlay.call(b,a)},this._cb="TWTR.Widget.receiveCallback_"+this._widgetNumber,this.opts=a,this._base=h,this._isRunning=!1,this._hasOfficiallyStarted=!1,this._hasNewSearchResults=!1,this._rendered=!1,this._profileImage=!1,this._isCreator=!!a.creator,this._setWidgetType(a.type),this.timesRequested=0,this.runOnce=!1,this.newResults=!1,this.results=[],this.jsonMaxRequestTimeOut=19e3,this.showedResults=[],this.sinceId=1,this.source="TWITTERINC_WIDGET",this.id=a.id||"twtr-widget-"+this._widgetNumber,this.tweets=0,this.setDimensions(a.width,a.height),this.interval=a.interval||6e3,this.format="json",this.rpp=a.rpp||50,this.subject=a.subject||"",this.title=a.title||"",this.setFooterText(a.footer),this.setSearch(a.search),this._setUrl(),this.theme=a.theme?a.theme:this._getDefaultTheme(),a.id||document.write('
    '),this.widgetEl=l(this.id),a.id&&w.add(this.widgetEl,"twtr-widget"),a.version>=2&&!TWTR.Widget.hasLoadedStyleSheet&&(d?c.loadStyleSheet("https://twitter-widgets.s3.amazonaws.com/j/2/widget.css",this.widgetEl):a.creator?c.loadStyleSheet("/stylesheets/widgets/widget.css",this.widgetEl):c.loadStyleSheet("http://widgets.twimg.com/j/2/widget.css",this.widgetEl)),this.occasionalJob=new E(function(a){b.decay=a,b._getResults.call(b)},function(){return b._decayDecider.call(b)},p),this._ready=z.fn(a.ready)?a.ready:function(){},this._isRelativeTime=!0,this._tweetFilter=!1,this._avatars=!0,this._isFullScreen=!1,this._isLive=!0,this._isScroll=!1,this._loop=!0,this._showTopTweets=this._isSearchWidget?!0:!1,this._behavior="default",this.setFeatures(this.opts.features),this.intervalJob=new F(this.interval,this._loop,function(a){b._normalizeTweet(a)});return this},setDimensions:function(a,b){this.wh=a&&b?[a,b]:[250,300],a=="auto"||a=="100%"?this.wh[0]="100%":this.wh[0]=(this.wh[0]<150?150:this.wh[0])+"px",this.wh[1]=(this.wh[1]<100?100:this.wh[1])+"px";return this},setRpp:function(a){var a=parseInt(a);this.rpp=z.number(a)&&a>0&&a<=100?a:30;return this},_setWidgetType:function(a){this._isSearchWidget=!1,this._isProfileWidget=!1,this._isFavsWidget=!1,this._isListWidget=!1;switch(a){case"profile":this._isProfileWidget=!0;break;case"search":this._isSearchWidget=!0,this.search=this.opts.search;break;case"faves":case"favs":this._isFavsWidget=!0;break;case"list":case"lists":this._isListWidget=!0}return this},setFeatures:function(a){if(a){z.def(a.filters)&&(this._tweetFilter=a.filters),z.def(a.dateformat)&&(this._isRelativeTime=a.dateformat!=="absolute");if(z.def(a.fullscreen)&&z.bool(a.fullscreen)&&a.fullscreen){this._isFullScreen=!0,this.wh[0]="100%",this.wh[1]=n()-90+"px";var b=this;x.add(window,"resize",function(a){b.wh[1]=n(),b._fullScreenResize()})}z.def(a.loop)&&z.bool(a.loop)&&(this._loop=a.loop);if(z.def(a.behavior)&&z.string(a.behavior))switch(a.behavior){case"all":this._behavior="all";break;case"preloaded":this._behavior="preloaded";break;default:this._behavior="default"}if(z.def(a.toptweets)&&z.bool(a.toptweets)){this._showTopTweets=a.toptweets;var d=this._showTopTweets?"inline-block":"none";c.css("#"+this.id+" .twtr-popular { display: "+d+"; }")}if(!z.def(a.toptweets)){this._showTopTweets=!0;var d=this._showTopTweets?"inline-block":"none";c.css("#"+this.id+" .twtr-popular { display: "+d+"; }")}if(z.def(a.avatars)&&z.bool(a.avatars))if(!a.avatars)c.css("#"+this.id+" .twtr-avatar, #"+this.id+" .twtr-user { display: none; } "+"#"+this.id+" .twtr-tweet-text { margin-left: 0; }"),this._avatars=!1;else{var e=this._isFullScreen?"90px":"40px";c.css("#"+this.id+" .twtr-avatar { display: block; } #"+this.id+" .twtr-user { display: inline; } "+"#"+this.id+" .twtr-tweet-text { margin-left: "+e+"; }"),this._avatars=!0}else this._isProfileWidget?(this.setFeatures({avatars:!1}),this._avatars=!1):(this.setFeatures({avatars:!0}),this._avatars=!0);z.def(a.hashtags)&&z.bool(a.hashtags)&&(a.hashtags?"":c.css("#"+this.id+" a.twtr-hashtag { display: none; }"));if(z.def(a.timestamp)&&z.bool(a.timestamp)){var f=a.timestamp?"block":"none";c.css("#"+this.id+" em { display: "+f+"; }")}z.def(a.live)&&z.bool(a.live)&&(this._isLive=a.live),z.def(a.scrollbar)&&z.bool(a.scrollbar)&&(this._isScroll=a.scrollbar)}else this._isProfileWidget&&(this.setFeatures({avatars:!1}),this._avatars=!1),(this._isProfileWidget||this._isFavsWidget)&&this.setFeatures({behavior:"all"});return this},_fullScreenResize:function(){var a=j("twtr-timeline","div",document.body,function(a){a.style.height=n()-90+"px"})},setTweetInterval:function(a){this.interval=a;return this},setBase:function(a){this._base=a;return this},setUser:function(a,b){this.username=a,this.realname=b||" ",this._isFavsWidget?this.setBase(m+a+"."):this._isProfileWidget&&this.setBase(i+this.format+"?screen_name="+a),this.setSearch(" ");return this},setList:function(a,b){this.listslug=b.replace(/ /g,"-").toLowerCase(),this.username=a,this.setBase(o+a+"/lists/"+this.listslug+"/statuses."),this.setSearch(" ");return this},setProfileImage:function(a){this._profileImage=a,this.byClass("twtr-profile-img","img").src=g(a),this.byClass("twtr-profile-img-anchor","a").href="http://twitter.com/intent/user?screen_name="+this.username;return this},setTitle:function(a){this.title=a,this.widgetEl.getElementsByTagName("h3")[0].innerHTML=this.title;return this},setCaption:function(a){this.subject=a,this.widgetEl.getElementsByTagName("h4")[0].innerHTML=this.subject;return this},setFooterText:function(a){this.footerText=z.def(a)&&z.string(a)?a:"Join the conversation",this._rendered&&(this.byClass("twtr-join-conv","a").innerHTML=this.footerText);return this},setSearch:function(a){this.searchString=a||"",this.search=encodeURIComponent(this.searchString),this._setUrl();if(this._rendered){var b=this.byClass("twtr-join-conv","a");b.href="http://twitter.com/"+this._getWidgetPath()}return this},_getWidgetPath:function(){return this._isProfileWidget?this.username:this._isFavsWidget?this.username+"/favorites":this._isListWidget?this.username+"/lists/"+this.listslug:"#search?q="+this.search},_setUrl:function(){function c(){return a.sinceId==1?"":"&since_id="+a.sinceId+"&refresh=true"}function b(){return"&"+ +(new Date)+"=cachebust"}var a=this;this._isProfileWidget?this.url=this._base+"&callback="+this._cb+"&include_rts=true"+"&count="+this.rpp+c()+"&clientsource="+this.source:this._isFavsWidget||this._isListWidget?this.url=this._base+this.format+"?callback="+this._cb+c()+"&include_rts=true"+"&clientsource="+this.source:(this.url=this._base+this.format+"?q="+this.search+"&include_rts=true"+"&callback="+this._cb+"&rpp="+this.rpp+c()+"&clientsource="+this.source,this.runOnce||(this.url+="&result_type=mixed")),this.url+=b();return this},_getRGB:function(a){return y(a.substring(1,7))},setTheme:function(a,b){var d=this,e=" !important",f=window.location.hostname.match(/twitter\.com/)&&window.location.pathname.match(/goodies/);if(b||f)e="";this.theme={shell:{background:function(){return a.shell.background||d._getDefaultTheme().shell.background}(),color:function(){return a.shell.color||d._getDefaultTheme().shell.color}()},tweets:{background:function(){return a.tweets.background||d._getDefaultTheme().tweets.background}(),color:function(){return a.tweets.color||d._getDefaultTheme().tweets.color}(),links:function(){return a.tweets.links||d._getDefaultTheme().tweets.links}()}};var g="#"+this.id+" .twtr-doc, \n #"+this.id+" .twtr-hd a, \n #"+this.id+" h3, \n #"+this.id+" h4, \n #"+this.id+" .twtr-popular {\n background-color: "+this.theme.shell.background+e+";\n color: "+this.theme.shell.color+e+";\n }\n #"+this.id+" .twtr-popular {\n color: "+this.theme.tweets.color+e+";\n background-color: rgba("+this._getRGB(this.theme.shell.background)+", .3)"+e+";\n }\n #"+this.id+" .twtr-tweet a {\n color: "+this.theme.tweets.links+e+";\n }\n #"+this.id+" .twtr-bd, #"+this.id+" .twtr-timeline i a, \n #"+this.id+" .twtr-bd p {\n color: "+this.theme.tweets.color+e+";\n }\n #"+this.id+" .twtr-new-results, \n #"+this.id+" .twtr-results-inner, \n #"+this.id+" .twtr-timeline {\n background: "+this.theme.tweets.background+e+";\n }";k.ie&&(g+="#"+this.id+" .twtr-tweet { background: "+this.theme.tweets.background+e+"; }"),c.css(g);return this},byClass:function(a,b,c){var d=j(a,b,l(this.id));return c?d:d[0]},render:function(){var a=this;if(!TWTR.Widget.hasLoadedStyleSheet){window.setTimeout(function(){a.render.call(a)},50);return this}this.setTheme(this.theme,this._isCreator),this._isProfileWidget&&w.add(this.widgetEl,"twtr-widget-profile"),this._isScroll&&w.add(this.widgetEl,"twtr-scroll"),!this._isLive&&!this._isScroll&&(this.wh[1]="auto"),this._isSearchWidget&&this._isFullScreen&&(document.title="Twitter search: "+escape(this.searchString)),this.widgetEl.innerHTML=this._getWidgetHtml();var b=this.byClass("twtr-timeline","div");if(this._isLive&&!this._isFullScreen){var c=function(b){a._behavior!=="all"&&u.call(this,b)&&a.pause.call(a)},d=function(b){a._behavior!=="all"&&u.call(this,b)&&a.resume.call(a)};this.removeEvents=function(){x.remove(b,"mouseover",c),x.remove(b,"mouseout",d)},x.add(b,"mouseover",c),x.add(b,"mouseout",d)}this._rendered=!0,this._ready();return this},removeEvents:function(){},_getDefaultTheme:function(){return{shell:{background:"#8ec1da",color:"#ffffff"},tweets:{background:"#ffffff",color:"#444444",links:"#1985b5"}}},_getWidgetHtml:function(){function c(){return a._isFullScreen?" twtr-fullscreen":""}function b(){return a._isProfileWidget?'profile\n

    \n

    ':"

    "+a.title+"

    "+a.subject+"

    "}var a=this,e=d?"https://twitter-widgets.s3.amazonaws.com/i/widget-logo.png":"http://widgets.twimg.com/i/widget-logo.png";this._isFullScreen&&(e="https://twitter-widgets.s3.amazonaws.com/i/widget-logo-fullscreen.png");var f='
    \n
    '+b()+' \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n
    ";return f},_appendTweet:function(a){this._insertNewResultsNumber(),r(a,this.byClass("twtr-reference-tweet","div"));return this},_slide:function(a){var c=this,d=t(a).offsetHeight;this.runOnce&&(new b(a,"height",{from:0,to:d,time:500,callback:function(){c._fade.call(c,a)}})).start();return this},_fade:function(a){var c=this;if(b.canTransition){a.style.webkitTransition="opacity 0.5s ease-out",a.style.opacity=1;return this}(new b(a,"opacity",{from:0,to:1,time:500})).start();return this},_chop:function(){if(this._isScroll)return this;var a=this.byClass("twtr-tweet","div",!0),b=this.byClass("twtr-new-results","div",!0);if(a.length){for(var c=a.length-1;c>=0;c--){var d=a[c],e=parseInt(d.offsetTop);if(e>parseInt(this.wh[1]))s(d);else break}if(b.length>0){var f=b[b.length-1],g=parseInt(f.offsetTop);g>parseInt(this.wh[1])&&s(f)}}return this},_appendSlideFade:function(a){var b=a||this.tweet.element;this._chop()._appendTweet(b)._slide(b);return this},_createTweet:function(a){a.timestamp=a.created_at,a.created_at=this._isRelativeTime?C(a.created_at):B(a.created_at),this.tweet=new G(a),this._isLive&&this.runOnce&&(this.tweet.element.style.opacity=0,this.tweet.element.style.filter="alpha(opacity:0)",this.tweet.element.style.height="0");return this},_getResults:function(){var a=this;this.timesRequested++,this.jsonRequestRunning=!0,this.jsonRequestTimer=window.setTimeout(function(){a.jsonRequestRunning&&(clearTimeout(a.jsonRequestTimer),a.jsonRequestTimer=null),a.jsonRequestRunning=!1,s(a.scriptElement),a.newResults=!1,a.decay()},this.jsonMaxRequestTimeOut),TWTR.Widget.jsonP(a.url,function(b){a.scriptElement=b})},clear:function(){var b=this.byClass("twtr-tweet","div",!0),c=this.byClass("twtr-new-results","div",!0);b=b.concat(c),a(b,function(a){s(a)});return this},_sortByMagic:function(a){var b=this;this._tweetFilter&&(this._tweetFilter.negatives&&(a=a.filter(function(a){if(!b._tweetFilter.negatives.test(a.text))return a})),this._tweetFilter.positives&&(a=a.filter(function(a){if(b._tweetFilter.positives.test(a.text))return a})));switch(this._behavior){case"all":this._sortByLatest(a);break;case"preloaded":default:this._sortByDefault(a)}this._isLive&&this._behavior!=="all"&&(this.intervalJob.set(this.results),this.intervalJob.start());return this},_loadTopTweetsAtTop:function(b){var c=[],d=[],e=[];a(b,function(a){a.metadata&&a.metadata.result_type&&a.metadata.result_type=="popular"?d.push(a):c.push(a)});var f=d.concat(c);return f},_sortByLatest:function(a){this.results=a,this.results=this.results.slice(0,this.rpp),this.results=this._loadTopTweetsAtTop(this.results),this.results.reverse();return this},_sortByDefault:function(b){var c=this,d=function(a){return(new Date(a)).getTime()};this.results.unshift.apply(this.results,b),a(this.results,function(a){a.views||(a.views=0)}),this.results.sort(function(a,b){return d(a.created_at)>d(b.created_at)?-1:d(a.created_at)b.views)return 1;return 0}),this._isLive||this.results.reverse()},_prePlay:function(a){this.jsonRequestTimer&&(clearTimeout(this.jsonRequestTimer),this.jsonRequestTimer=null),k.ie||s(this.scriptElement);if(a.error)this.newResults=!1;else if(a.results&&a.results.length>0)this.response=a,this.newResults=!0,this.sinceId=a.max_id_str,this._sortByMagic(a.results),this.isRunning()&&this._play();else if((this._isProfileWidget||this._isFavsWidget||this._isListWidget)&&z.array(a)&&a.length){this.newResults=!0;if(!this._profileImage&&this._isProfileWidget){var b=a[0].user.screen_name;this.setProfileImage(a[0].user.profile_image_url),this.setTitle(a[0].user.name),this.setCaption(''+b+"")}this.sinceId=a[0].id_str,this._sortByMagic(a),this.isRunning()&&this._play()}else this.newResults=!1;this._setUrl(),this._isLive&&this.decay()},_play:function(){var b=this;this.runOnce&&(this._hasNewSearchResults=!0),this._avatars&&this._preloadImages(this.results),this._isRelativeTime&&(this._behavior=="all"||this._behavior=="preloaded")&&a(this.byClass("twtr-timestamp","a",!0),function(a){a.innerHTML=C(a.getAttribute("time"))});if(!this._isLive||this._behavior=="all"||this._behavior=="preloaded"){a(this.results,function(a){a.retweeted_status&&(a=a.retweeted_status),b._isProfileWidget&&(a.from_user=a.user.screen_name,a.profile_image_url=a.user.profile_image_url);if(b._isFavsWidget||b._isListWidget)a.from_user=a.user.screen_name,a.profile_image_url=a.user.profile_image_url;a.id=a.id_str,b._createTweet({id:a.id,user:a.from_user,tweet:D.clean(a.text),avatar:a.profile_image_url,created_at:a.created_at,needle:a});var c=b.tweet.element;b._behavior=="all"?b._appendSlideFade(c):b._appendTweet(c)});if(this._behavior!="preloaded")return this}return this},_normalizeTweet:function(a){var b=this;a.views++,this._isProfileWidget&&(a.from_user=b.username,a.profile_image_url=a.user.profile_image_url);if(this._isFavsWidget||this._isListWidget)a.from_user=a.user.screen_name,a.profile_image_url=a.user.profile_image_url;this._isFullScreen&&(a.profile_image_url=a.profile_image_url.replace(/_normal\./,"_bigger.")),a.id=a.id_str,this._createTweet({id:a.id,user:a.from_user,tweet:D.clean(a.text),avatar:a.profile_image_url,created_at:a.created_at,needle:a})._appendSlideFade()},_insertNewResultsNumber:function(){if(!this._hasNewSearchResults)this._hasNewSearchResults=!1;else if(this.runOnce&&this._isSearchWidget){var a=this.response.total>this.rpp?this.response.total:this.response.results.length,b=a>1?"s":"",c=this.response.warning&&this.response.warning.match(/adjusted since_id/)?"more than":"",d=document.createElement("div");w.add(d,"twtr-new-results"),d.innerHTML='
     
     
    '+c+" "+a+" new tweet"+b+"",r(d,this.byClass("twtr-reference-tweet","div")),this._hasNewSearchResults=!1}},_preloadImages:function(b){this._isProfileWidget||this._isFavsWidget||this._isListWidget?a(b,function(a){var b=new Image;b.src=g(a.user.profile_image_url)}):a(b,function(a){(new Image).src=g(a.profile_image_url)})},_decayDecider:function(){var a=!1;this.runOnce?this.newResults&&(a=!0):(this.runOnce=!0,a=!0);return a},start:function(){var a=this;if(!this._rendered){setTimeout(function(){a.start.call(a)},50);return this}this._isLive?this.occasionalJob.start():this._getResults(),this._isRunning=!0,this._hasOfficiallyStarted=!0;return this},stop:function(){this.occasionalJob.stop(),this.intervalJob&&this.intervalJob.stop(),this._isRunning=!1;return this},pause:function(){this.isRunning()&&this.intervalJob&&(this.intervalJob.stop(),w.add(this.widgetEl,"twtr-paused"),this._isRunning=!1),this._resumeTimer&&(clearTimeout(this._resumeTimer),this._resumeTimer=null);return this},resume:function(){var a=this;!this.isRunning()&&this._hasOfficiallyStarted&&this.intervalJob&&(this._resumeTimer=window.setTimeout(function(){a.intervalJob.start(),a._isRunning=!0,w.remove(a.widgetEl,"twtr-paused")},2e3));return this},isRunning:function(){return this._isRunning},destroy:function(){this.stop(),this.clear(),this.runOnce=!1,this._hasOfficiallyStarted=!1,this._profileImage=!1,this._isLive=!0,this._tweetFilter=!1,this._isScroll=!1,this.newResults=!1,this._isRunning=!1,this.sinceId=1,this.results=[],this.showedResults=[],this.occasionalJob.destroy(),this.jsonRequestRunning&&clearTimeout(this.jsonRequestTimer),w.remove(this.widgetEl,"twtr-scroll"),this.removeEvents();return this}}}()}();if(window.__twitterIntentHandler)return;var c=/twitter\.com(\:\d{2,4})?\/intent\/(\w+)/,d={tweet:!0,retweet:!0,favorite:!0},e="scrollbars=yes,resizable=yes,toolbar=no,location=yes",f=screen.height,g=screen.width;document.addEventListener?document.addEventListener("click",h,!1):document.attachEvent&&document.attachEvent("onclick",h),window.__twitterIntentHandler=!0}}() \ No newline at end of file diff -r e6b328970ee8 -r ffb0a6d08000 web/res/metadataplayer.polemic/src/js/polemic.js --- a/web/res/metadataplayer.polemic/src/js/polemic.js Wed Jul 27 12:24:43 2011 +0200 +++ b/web/res/metadataplayer.polemic/src/js/polemic.js Wed Jul 27 12:25:45 2011 +0200 @@ -113,43 +113,55 @@ url:config.metadata, success : function(json){ trace("load",""); - __IriSP.jQuery.each(json.annotations, function(i,item) { - - var MyTime = Math.floor(item.begin/duration*lineSize); - var Myframe = Math.floor(MyTime/lineSize*frameLenght); + // get current view (the first ???) + view = json.views[0]; + + // the tweets are by definition of the second annotation type + tweet_annot_type = null; + if(typeof(view.annotation_types) !== "undefined" && view.annotation_types.length > 1) { + tweet_annot_type = view.annotation_types[1]; + } + + + __IriSP.jQuery.each(json.annotations, function(i,item) { + + var MyTime = Math.floor(item.begin/duration*lineSize); + var Myframe = Math.floor(MyTime/lineSize*frameLenght); - if (item.content['polemics'] != undefined) { - if (item.content['polemics'][0] != null) { - - for(var j=0; j 1){ + anchors = url_components[1]; + + anchors_components = []; + if(anchors.indexOf(";")>=0) { + anchors_components = anchors.split(";"); + } + else if (anchors.indexOf("&")>=0) { + anchors_components = anchors.split("&"); + } + else { + anchors_components = [anchors]; + } + + var len = anchors_components.length; + for(var i=0;i= 0) { + res = hash_part.replace(/t=[\d.]*/, "t="+time); + } + else { + res = hash_part; + if(res.length === 0) { + res = "#"; + } + if(hash_part.length > 0 && hash_part !=="#" ) { + res = res + "&"; + } + res = res + "t="+time; + } + return res; +}; + __IriSP.ignoreTimeFragment = function(url){ if (url.split("#")[1] != null) { var pageurl= url.split("#")[0]; } return pageurl; -} +}; /* CODE SPECIAL JW PLAYER creation + listener */ @@ -765,7 +809,7 @@ // need a methode to // re execute if this swf call does'nt work -} +}; @@ -782,7 +826,7 @@ __IriSP.DailymotionAddListeners(); __IriSP.MyApiPlayer.ready(playerid); -} +}; __IriSP.DailymotionAddListeners = function () { if (__IriSP.player) { __IriSP.trace("__IriSP.addListeners","ADD Listener "); @@ -794,7 +838,7 @@ } else { __IriSP.setTimeout("__IriSP.DailymotionAddListeners()",100); } -} +}; __IriSP.DailymotionPositionListener = function() { __IriSP.currentPosition = __IriSP.player.getCurrentTime(); @@ -808,7 +852,7 @@ */ setTimeout("__IriSP.DailymotionPositionListener()",10); -} +}; /* API YOUTUBE */ onYouTubePlayerReady= function (playerid){ @@ -827,7 +871,7 @@ __IriSP.YouTubeAddListeners(); __IriSP.trace("onYouTubePlayerReady=",time); //__IriSP.MyApiPlayer.ready(playerid); -} +}; __IriSP.YouTubeAddListeners = function () { if (__IriSP.player) { __IriSP.trace("__IriSP.addListeners","ADD Listener "); @@ -838,7 +882,7 @@ } else { __IriSP.setTimeout("__IriSP.YouTubePositionListener()",100); } -} +}; __IriSP.YouTubePositionListener = function() { __IriSP.currentPosition = __IriSP.player.getCurrentTime(); @@ -853,7 +897,7 @@ setTimeout("__IriSP.YouTubePositionListener()",10); -} +}; __IriSP.YouTubeStateMonitor = function (obj) { __IriSP.player.addModelListener('__IriSP.YouTubeStateMonitor ', newstate); //alert(newstate+" "+obj.newstate); @@ -880,7 +924,7 @@ //changePageUrlOffset(currentPosition); } -} +}; /* API VIMEO */ onVimeoPlayerReady= function (playerid){ @@ -899,7 +943,7 @@ __IriSP.YouTubeAddListeners(); __IriSP.trace("onYouTubePlayerReady=",time); //__IriSP.MyApiPlayer.ready(playerid); -} +}; __IriSP.VimeoAddListeners = function () { if (__IriSP.player) { __IriSP.trace("__IriSP.addListeners","ADD Listener "); @@ -910,7 +954,7 @@ } else { __IriSP.setTimeout("__IriSP.YouTubePositionListener()",100); } -} +}; __IriSP.VimeoPositionListener = function() { __IriSP.currentPosition = __IriSP.player.getCurrentTime(); @@ -925,7 +969,7 @@ setTimeout("__IriSP.YouTubePositionListener()",10); -} +}; __IriSP.VimeoStateMonitor = function (obj) { __IriSP.player.addModelListener('__IriSP.YouTubeStateMonitor ', newstate); //alert(newstate+" "+obj.newstate); @@ -952,7 +996,7 @@ //changePageUrlOffset(currentPosition); } -} +}; /* API JW PLAYER */ __IriSP.playerReady = function (thePlayer) { @@ -975,7 +1019,7 @@ __IriSP.addListeners(); //__IriSP.trace("__IriSP.playerReady"," LISTENER END"); -} +}; __IriSP.addListeners = function () { if (__IriSP.player) { __IriSP.trace("__IriSP.addListeners","ADD Listener "); @@ -987,7 +1031,7 @@ } // et changer les boutons -} +}; __IriSP.stateMonitor = function (obj) { @@ -1010,7 +1054,7 @@ //changePageUrlOffset(currentPosition); } -} +}; __IriSP.positionListener = function(obj) { //__IriSP.trace("__IriSP.positionListener",obj.position); __IriSP.currentPosition = obj.position; @@ -1025,12 +1069,12 @@ __IriSP.MyLdt.checkTime(__IriSP.currentPosition); -} +}; __IriSP.volumeListener = function (obj) { __IriSP.currentVolume = obj.percentage; var tmp = document.getElementById("vol"); if (tmp) { tmp.innerHTML = "volume: " + __IriSP.currentVolume; } -} +}; @@ -1039,7 +1083,7 @@ // code from http://stackoverflow.com/questions/822452/strip-html-from-text-javascript __IriSP.stripHtml = function(s){ return s.replace(/\\&/g, '&').replace(/\\/g, '>').replace(/\\t/g, '   ').replace(/\\n/g, '
    ').replace(/'/g, ''').replace(/"/g, '"'); -} +}; // conversion de couleur Decimal vers HexaDecimal || 000 si fff __IriSP.DEC_HEXA_COLOR = function (dec){ var hexa='0123456789ABCDEF',hex=''; @@ -1052,7 +1096,7 @@ hex = hexa.charAt(dec)+hex; //if (hex == "FFCC00"){ hex="";/* by default color of Ldt annotation */ } return(hex); -} +}; /* @@ -1087,30 +1131,30 @@ this.annotationOldRead=""; __IriSP.LDTligne = this; __IriSP.trace("__IriSP.Ligne","CREATE "+__IriSP.LDTligne); -} +}; __IriSP.Ligne.prototype.addAnnotation = function (json){ var myAnnotation = new __IriSP.Annotation(json,this.duration); this.annotations.push(myAnnotation); //__IriSP.trace("__IriSP.Ligne.prototype.addAnnotation ","add annotation "+title); -} +}; __IriSP.Ligne.prototype.onClickLigneAnnotation = function(id){ //changePageUrlOffset(currentPosition); //player.sendEvent('SEEK', this.start); //__IriSP.trace("SEEK",this.start); -} +}; __IriSP.Ligne.prototype.searchLigneAnnotation = function(id){ /*for (){ }*/ -} +}; __IriSP.Ligne.prototype.listAnnotations = function(){ -} +}; __IriSP.Ligne.prototype.nextAnnotation = function (){ var annotationCibleNumber = this.numAnnotation(this.annotationOldRead)+1; var annotationCible = this.annotations[annotationCibleNumber]; if(annotationCibleNumber '+' '; @@ -1242,18 +1286,18 @@ this.htmlTags += ' '+__IriSP.MyTags.getTitle(this.tags[i]['id-ref'])+' '+" , "; } } -} +}; __IriSP.Annotation.prototype.tootTipAnnotation = function() { // 1 chercher le div correspondant // 2 y mettre les information return this.color + ' ' + this.type + ' apple'; -} +}; __IriSP.Annotation.prototype.onRollOverAnnotation = function (){ //this.tootTip(); -} +}; __IriSP.Annotation.prototype.timeToPourcent = function(time,timetotal){ return (parseInt(Math.round(time/timetotal*100))); -} +}; /* CLASS Tags */ @@ -1263,7 +1307,7 @@ this.htmlTags = null; this.weigthMax = 0; //this.mySegments = new array(); -} +}; __IriSP.Tags.prototype.addAnnotation = function (annotation){ for (var i = 0; i < this.myTags.length; ++i){ this.myTags[i].mySegments = new Array(); @@ -1271,7 +1315,7 @@ for (var j = 0; j < annotation.tags.length; ++j){ if (this.myTags[i]['id'] == annotation.tags[j]['id-ref']){ this.myTags[i].mySegments.push([annotation.begin,annotation.end,annotation.id]); - var weigthTempo = this.myTags[i].mySegments.length + var weigthTempo = this.myTags[i].mySegments.length; var tempo = this.myTags[i].mySegments[weigthTempo-1]; //__IriSP.trace ("__IriSP.Tags.prototype.addAnnotation "," "+this.myTags[i]['meta']['dc:title']+" "+this.myTags[i]['id']+" : "+tempo[0]+" - "+tempo[1]); @@ -1282,7 +1326,7 @@ } } } -} +}; __IriSP.Tags.prototype.getTitle = function (id){ for (var i = 0; i < this.myTags.length; ++i){ if(this.myTags[i]['id']==id){ @@ -1290,7 +1334,7 @@ } } -} +}; __IriSP.Tags.prototype.draw = function (){ __IriSP.trace("__IriSP.Tags.prototype.draw"," !!! WELL START " ); @@ -1307,7 +1351,7 @@ __IriSP.jQuery('#Ldt-Tags').html(this.htmlTags); __IriSP.trace("__IriSP.Tags.prototype.draw"," !!!! END WMAX= "+this.weigthMax ); -} +}; __IriSP.Tags.prototype.show = function (id){ var timeStartOffsetA = 100000000000000000000; @@ -1332,12 +1376,12 @@ if(timeStartOffset> this.myTags[i].mySegments[j][0]){ timeStartOffsetA = this.myTags[i].mySegments[j][0]; timeStartOffsetB = this.myTags[i].mySegments[j][1]; - timeStartID = this.myTags[i].mySegments[j][2] + timeStartID = this.myTags[i].mySegments[j][2]; } if(timeStartOffset> this.myTags[i].mySegments[j][0]){ timeEndOffsetA = this.myTags[i].mySegments[j][0]; timeEndOffsetB = this.myTags[i].mySegments[j][1]; - timeEndID = this.myTags[i].mySegments[j][2] + timeEndID = this.myTags[i].mySegments[j][2]; } } @@ -1357,7 +1401,7 @@ -} +}; /* CLASS TRACE */ @@ -1369,11 +1413,5 @@ __IriSP.traceNum += 1; __IriSP.jQuery("
    "+__IriSP.traceNum+" - "+msg+" : "+value+"
    ").appendTo("#Ldt-output"); } +}; -} - - - - - - \ No newline at end of file diff -r e6b328970ee8 -r ffb0a6d08000 web/res/metadataplayer/src/js/LdtPlayer.min.js --- a/web/res/metadataplayer/src/js/LdtPlayer.min.js Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,78 +0,0 @@ -/* - * - * Copyright 2010 Institut de recherche et d'innovation - * contributor(s) : Samuel Huron - * - * contact@iri.centrepompidou.fr - * http://www.iri.centrepompidou.fr - * - * This software is a computer program whose purpose is to show and add annotations on a video . - * This software is governed by the CeCILL-C license under French law and - * abiding by the rules of distribution of free software. You can use, - * modify and/ or redistribute the software under the terms of the CeCILL-C - * license as circulated by CEA, CNRS and INRIA at the following URL - * "http://www.cecill.info". - * - * The fact that you are presently reading this means that you have had - * knowledge of the CeCILL-C license and that you accept its terms. -*/ -if(window.__IriSP===undefined)var __IriSP={};__IriSP.config=undefined; -__IriSP.configDefault={metadata:{format:"cinelab",src:"http://exp.iri.centrepompidou.fr/franceculture/franceculture/ldt/cljson/id/ef4dcc2e-8d3b-11df-8a24-00145ea4a2be",load:"jsonp"},gui:{width:650,height:0,mode:"radio",container:"LdtPlayer",debug:false,css:"../src/css/LdtPlayer.css"},player:{type:"jwplayer",src:"../res/swf/player.swf",params:{allowfullscreen:"true",allowscriptaccess:"always",wmode:"transparent"},flashvars:{streamer:"streamer",file:"file",live:"true",autostart:"true",controlbar:"none", -playerready:"__IriSP.playerReady"},attributes:{id:"Ldtplayer1",name:"Ldtplayer1"}},module:null};__IriSP.lib={jQuery:"http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js",jQueryUI:"http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.4/jquery-ui.min.js",jQueryToolTip:"http://cdn.jquerytools.org/1.2.4/all/jquery.tools.min.js",swfObject:"http://ajax.googleapis.com/ajax/libs/swfobject/2.2/swfobject.js",cssjQueryUI:"http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.4/themes/base/jquery-ui.css"}; -__IriSP.LdtShareTool="\n\n \n \n "; -__IriSP.MyLdt=null;__IriSP.MyTags=null;__IriSP.MyApiPlayer=null;__IriSP.player=null;__IriSP.Durration=null;__IriSP.playerLdtWidth=null;__IriSP.playerLdtHeight=null; -__IriSP.init=function(a){function b(){var f=document.createElement("script");f.setAttribute("type","text/javascript");f.setAttribute("src",__IriSP.lib.jQueryToolTip);f.onload=c;f.onreadystatechange=function(){if(this.readyState=="complete"||this.readyState=="loaded")c("jquery.tools.min.js loded")};var i=document.createElement("script");i.setAttribute("type","text/javascript");i.setAttribute("src",__IriSP.lib.swfObject);i.onload=c;i.onreadystatechange=function(){if(this.readyState=="complete"||this.readyState== -"loaded")c("swfobject.js loded")};var j=document.createElement("script");j.setAttribute("type","text/javascript");j.setAttribute("src",__IriSP.lib.jQueryUI);j.onload=c;j.onreadystatechange=function(){if(this.readyState=="complete"||this.readyState=="loaded")c("jquery-ui.min.js loded")};(document.getElementsByTagName("head")[0]||document.documentElement).appendChild(f);(document.getElementsByTagName("head")[0]||document.documentElement).appendChild(j);(document.getElementsByTagName("head")[0]||document.documentElement).appendChild(i)} -function c(){g+=1;g===3&&d()}function d(){__IriSP.jQuery=window.jQuery.noConflict(true);__IriSP.jQuery(document).ready(function(f){var i=__IriSP.jQuery("",{rel:"stylesheet",type:"text/css",href:__IriSP.lib.cssjQueryUI,"class":"dynamic_css"}),j=__IriSP.jQuery("",{rel:"stylesheet",type:"text/css",href:__IriSP.config.gui.css,"class":"dynamic_css"});i.appendTo("head");j.appendTo("head");f.browser.msie&&f(".dynamic_css").clone().appendTo("head");__IriSP.createMyHtml();__IriSP.jQuery.ajax({dataType:__IriSP.config.metadata.load, -url:h,success:function(e){__IriSP.trace("ajax","success");if(e==="")alert("ERREUR DE CHARGEMENT JSON");else{new __IriSP.Media(e.medias[0].id,e.medias[0].href,e.medias[0].meta["dc:duration"],e.medias[0]["dc:title"],e.medias[0]["dc:description"]);__IriSP.trace("__IriSP.MyApiPlayer",__IriSP.config.gui.width+" "+__IriSP.config.gui.height+" "+e.medias[0].href+" "+e.medias[0].meta["dc:duration"]+" "+e.medias[0].meta.item.value);__IriSP.MyApiPlayer=new __IriSP.APIplayer(__IriSP.config.gui.width,__IriSP.config.gui.height, -e.medias[0].href,e.medias[0].meta["dc:duration"],e.medias[0].meta.item.value);__IriSP.trace("__IriSP.init.main","__IriSP.Ligne");__IriSP.MyLdt=new __IriSP.Ligne(e["annotation-types"][0].id,e["annotation-types"][0]["dc:title"],e["annotation-types"][0]["dc:description"],e.medias[0].meta["dc:duration"]);__IriSP.trace("__IriSP.init.main","__IriSP.Tags");__IriSP.MyTags=new __IriSP.Tags(e.tags);__IriSP.jQuery.each(e.annotations,function(l,k){k.meta["id-ref"]==__IriSP.MyLdt.id&&__IriSP.MyLdt.addAnnotation(k.id, -k.begin,k.end,k.media,k.content.title,k.content.description,k.content.color,k.tags)});__IriSP.jQuery.each(e.lists,function(){__IriSP.trace("lists","")});__IriSP.jQuery.each(e.views,function(){__IriSP.trace("views","")})}},error:function(e){alert("ERROR : "+e)}})})}if(a===null)__IriSP.config=__IriSP.configDefault;else{__IriSP.config=a;if(__IriSP.config.player.params==null)__IriSP.config.player.params=__IriSP.configDefault.player.params;if(__IriSP.config.player.flashvars==null)__IriSP.config.player.flashvars= -__IriSP.configDefault.player.flashvars;if(__IriSP.config.player.attributes==null)__IriSP.config.player.attributes=__IriSP.configDefault.player.attributes}var h=__IriSP.config.metadata.src;__IriSP.jQuery=null;if(window.jQuery===undefined||window.jQuery.fn.jquery!=="1.4.2"){a=document.createElement("script");a.setAttribute("type","text/javascript");a.setAttribute("src",__IriSP.lib.jQuery);a.onload=b;a.onreadystatechange=function(){if(this.readyState=="complete"||this.readyState=="loaded")b()};(document.getElementsByTagName("head")[0]|| -document.documentElement).appendChild(a)}else{__IriSP.jQuery=window.jQuery;b()}var g=0}; -__IriSP.createMyHtml=function(){var a=__IriSP.config.gui.width;if(__IriSP.config.gui.mode=="radio")__IriSP.jQuery("
    \n\t
    \n\t\tGet flash to see this player\t\n\t
    \n\t
    \n\t\t
    \n\t\t\t\n\t\t\t\n\t\t
    \n\t\t
    \n\t\t\t
    \n\t
    \n\t\t
    \n\t\t\t\n\t\t\t\n\t\t
    \n
     
    \n
    \n \t
    \n
    \n
    \n
    \n
    \n\t
    \n\t\t
    \n\t\t
    \n \t\t
    \n"+ - "
    \n"+ - "
    \n"+ - "
    \n"+ - "
    \n"+ - "
    \n"+ - " \n"+ - " "+__IriSP.LdtShareTool+"\n"+ - " \n"+ - "
    \n"+ - "
    "+ - "
    "+ - //"
    Mots clefs :
    "+ - "
    "+ - "
    ").appendTo("#"+__IriSP.config.gui.container); - } else if(__IriSP.config.gui.mode=="video") { - - __IriSP.jQuery( "
    \n"+ - "
    \n"+ - " Get flash to see this player \n"+ - "
    \n"+ - "
    \n"+ - "
    \n"+ - " \n"+ - " \n"+ - "
    \n"+ - "
    \n"+ - "
    \n"+ - "
    \n"+ - "
    \n"+ - " \n"+ - " \n"+ - "
    \n"+ - "
     \;
    \n"+ - "
    \n"+ - "
    \n"+ - "
    \n"+ - "
    \n"+ - "
    \n"+ - "
    \n"+ - "
    \n"+ - "
    \n"+ - "
    \n"+ - "
    \n"+ - "
    \n"+ - "
    \n"+ - "
    \n"+ - "
    \n"+ - "
    \n"+ - " \n"+ - " "+__IriSP.LdtShareTool+"\n"+ - " \n"+ - "
    \n"+ - "
    "+ - "
    "+ - //"
    Mots clefs :
    "+ - "
    "+ - "
    ").appendTo("#"+__IriSP.config.gui.container); - - } - - - __IriSP.trace("__IriSP.createHtml","end"); - __IriSP.jQuery("#Ldt-Annotations").width(width-(75*2)); - __IriSP.jQuery("#Ldt-Show-Arrow-container").width(width-(75*2)); - __IriSP.jQuery("#Ldt-ShowAnnotation-audio").width(width-10); - __IriSP.jQuery("#Ldt-ShowAnnotation-video").width(width-10); - __IriSP.jQuery("#Ldt-SaKeyword").width(width-10); - __IriSP.jQuery("#Ldt-controler").width(width-10); - __IriSP.jQuery("#Ldt-Control").attr("z-index","100"); - __IriSP.jQuery("#Ldt-controler").hide(); - - __IriSP.jQuery("
     
    Chargement...
    ").appendTo("#Ldt-ShowAnnotation-audio"); - - if(__IriSP.config.gui.mode=='radio'){ - __IriSP.jQuery("#Ldt-load-container").attr("width",__IriSP.config.gui.width); - } - // Show or not the output - if(__IriSP.config.gui.debug===true){ - __IriSP.jQuery("#Ldt-output").show(); - } else { - __IriSP.jQuery("#Ldt-output").hide(); - } - -}; - -__IriSP.Media = function (id,url,duration,title,description){ - this.id = id; - this.url = url; - this.title = title; - this.description = description; - this.duration = duration; - this.lignes = new Array(); - - __IriSP.trace("__IriSP.Media","Media ID : "+id); - __IriSP.trace("__IriSP.Media","Media URL : "+url); - __IriSP.trace("__IriSP.Media","Media title : "+title); -} -__IriSP.Media.prototype.createPlayerMedia = function (width,height,MyStreamer,MySwfPath){ - __IriSP.MyApiPlayer = new __IriSP.APIplayer(width,height,this.url,this.duration,MyStreamer,MySwfPath); - //createPlayer(width,height,this.url,this.duration,MyStreamer,MySwfPath); -} -__IriSP.Media.prototype.getMediaDuration = function (){ - return (this.duration); -} -__IriSP.Media.prototype.getMediaTitle = function (){ - return (this.title); -} - - - -/* INTERFACE : SLIDER ( CONTROL BAR ) | BUTTON () */ -__IriSP.createInterface = function(width,height,duration){ - - __IriSP.jQuery("#Ldt-controler").show(); - //__IriSP.jQuery("#Ldt-Root").css('display','visible'); - __IriSP.trace("__IriSP.createInterface",width+","+height+","+duration+","); - - __IriSP.jQuery("#Ldt-ShowAnnotation").click(function () { - //__IriSP.jQuery(this).slideUp(); - }); - - var LdtpPlayerY = __IriSP.jQuery("#Ldt-PlaceHolder").attr("top"); - var LdtpPlayerX = __IriSP.jQuery("#Ldt-PlaceHolder").attr("left"); - __IriSP.jQuery("#slider-range-min").slider({ //range: "min", - value: 0, - min: 1, - max: duration/1000,//1:54:52.66 = 3600+3240+ - step: 0.1, - slide: function(event, ui) { - - //__IriSP.jQuery("#amount").val(ui.value+" s"); - //player.sendEvent('SEEK', ui.value) - __IriSP.MyApiPlayer.seek(ui.value); - //changePageUrlOffset(ui.value); - //player.sendEvent('PAUSE') - } - }); - __IriSP.trace("__IriSP.createInterface","ICI"); - __IriSP.jQuery("#amount").val(__IriSP.jQuery("#slider-range-min").slider("value")+" s"); - __IriSP.jQuery(".Ldt-Control1 button:first").button({ - icons: { - primary: 'ui-icon-play' - }, - text: false - }).next().button({ - icons: { - primary: 'ui-icon-seek-next' - }, - text: false - }); - __IriSP.jQuery(".Ldt-Control2 button:first").button({ - icons: { - primary: 'ui-icon-transferthick-e-w'//, - //secondary: 'ui-icon-volume-off' - }, - text: false - }).next().button({ - icons: { - primary: 'ui-icon-volume-on' - }, - text: false - }); - - // /!\ PB A MODIFIER - //__IriSP.MyTags.draw(); - __IriSP.trace("__IriSP.createInterface","ICI2"); - __IriSP.jQuery("#ldt-CtrlPlay").attr("style","background-color:#CD21C24;"); - - __IriSP.jQuery("#Ldt-load-container").hide(); - - if(__IriSP.config.gui.mode=="radio" & __IriSP.jQuery.browser.msie!=true){ - __IriSP.jQuery("#Ldtplayer1").attr("height","0"); - } - __IriSP.trace("__IriSP.createInterface","3"); - - __IriSP.trace("__IriSP.createInterface","END"); - - } - - -/* API player - work in progress ... need refactoring of code */ -__IriSP.APIplayer = function (width,height,url,duration,streamerPath,MySwfPath){ - - - this.player = null; - this.hashchangeUpdate = null; - - this.width = width; - this.height = height; - this.url = url; - this.duration = duration; - this.streamerPath = streamerPath; - this.MySwfPath = MySwfPath; - - __IriSP.MyApiPlayer = this; - - __IriSP.createPlayer(this.url,this.streamerPath); - __IriSP.trace("__IriSP.APIplayer","__IriSP.createPlayer"); - - //__IriSP.config.player - /* - - dailymotion // &enableApi=1&chromeless=1 - - youtube - - html5 - - flowplayer - - jwplayer - */ - -} -__IriSP.APIplayer.prototype.ready = function(player){ - - //__IriSP.trace("__IriSP.APIplayer.prototype.APIpReady"," __IriSP.createInterface"); - __IriSP.createInterface(this.width,this.height,this.duration); - //__IriSP.trace("__IriSP.APIplayer.prototype.APIpReady","END __IriSP.createInterface"); - - // hashchange EVENT - if (window.addEventListener){ - - // pour FIREFOX hashchange EVENT - window.addEventListener("hashchange", function() { - var url = window.location.href; - var time = __IriSP.retrieveTimeFragment(url); - __IriSP.trace("__IriSP.APIplayer.prototype.ready",time); - if(__IriSP.MyApiPlayer.hashchangeUpdate==null){ - __IriSP.MyApiPlayer.seek(time); - }else{ - __IriSP.MyApiPlayer.hashchangeUpdate=null; - } - }, false); - - } - else if (window.attachEvent){ - // FOR IE hashchange EVENT - - window.attachEvent("onhashchange", function() { - __IriSP.trace("hashchange",time); - var url = window.location.href; - var time = __IriSP.retrieveTimeFragment(url); - if(__IriSP.MyApiPlayer.hashchangeUpdate==null){ - __IriSP.MyApiPlayer.seek(time); - }else{ - __IriSP.MyApiPlayer.hashchangeUpdate=null; - } - }, false); - } - -} -__IriSP.APIplayer.prototype.pause = function(){ - this.hashchangeUpdate = true; - __IriSP.player.sendEvent('PAUSE'); -} -__IriSP.APIplayer.prototype.play = function(){ - this.hashchangeUpdate = true; - //__IriSP.trace("__IriSP.config.player.type",__IriSP.config.player.type); - if(__IriSP.config.player.type=='jwplayer'){ - - __IriSP.player.sendEvent('PLAY'); - - } else if(__IriSP.config.player.type=='dailymotion' - || __IriSP.config.player.type=='youtube' - || __IriSP.config.player.type=='vimeo') { - - var status = __IriSP.player.getPlayerState(); - __IriSP.trace("__IriSP.APIplayer.prototype.play.status",status); - - if (status!=1){ - __IriSP.player.playVideo(); - //} else if(__IriSP.config.player.type=='vimeo' ){ - }else{ - __IriSP.player.pauseVideo(); - } - - } -} -__IriSP.APIplayer.prototype.mute = function(){ - __IriSP.player.sendEvent('MUTE'); - - //alert(__IriSP.jQuery(".ui-icon-volume-on").css("background-position-x")); - if (__IriSP.jQuery(".ui-icon-volume-on").css("background-position")=="-144px -160px"){ - __IriSP.jQuery(".ui-icon-volume-on").css("background-position","-130px -160px"); - } else { - __IriSP.jQuery(".ui-icon-volume-on").css("background-position","-144px -160px"); - } -} -__IriSP.APIplayer.prototype.share = function(network){ - - var MyMessage = encodeURIComponent("J'écoute Les Retours du Dimanche : "); - var MyURLNow = window.location.href; - var shareURL; - //alert(network+" : "+MyURLNow); - - if(network == "facebook"){ - shareURL = "http://www.facebook.com/share.php?u="; - }else if(network == "twitter"){ - shareURL = "http://twitter.com/home?status="+MyMessage; - }else if(network == "myspace"){ - shareURL ="http://www.myspace.com/Modules/PostTo/Pages/?u="; - }else if(network == "delicious"){ - shareURL = "http://delicious.com/save?url="; - }else if(network == "JameSpot"){ - shareURL = "http://www.jamespot.com/?action=spotit&u="; - //alert(network+" non actif pour l'instant : "+MyURLNow); - } - - window.open(shareURL+encodeURIComponent(MyURLNow)); - //window.location.href = shareURL+encodeURIComponent(MyURLNow); -} -__IriSP.APIplayer.prototype.seek = function (time){ - __IriSP.trace("__IriSP.APIplayer.prototype.seek",time); - if(__IriSP.config.player.type=='jwplayer'){ - __IriSP.player.sendEvent('SEEK', time); - } else if(__IriSP.config.player.type=='dailymotion' - || __IriSP.config.player.type=='youtube') { - __IriSP.player.seekTo(time); - } - this.changePageUrlOffset(time); -} -__IriSP.APIplayer.prototype.update = function (time){ - this.hashchangeUpdate = true; - __IriSP.player.sendEvent('SEEK', time); -} -__IriSP.APIplayer.prototype.changePageUrlOffset = function (time) { - //alert(time); - __IriSP.trace("__IriSP.APIplayer.prototype.changePageUrlOffset","CHANGE URL "+time); - window.location.hash = "#t=" + time; - window.location.href = window.location.href; -} - -/* MEDIA FRAGMENT FUNCTION */ - -__IriSP.jumpToTimeoffset = function (form) { - var time = form.time.value; - __IriSP.MyApiPlayer.changePageUrlOffset(time); -} -__IriSP.retrieveTimeFragment = function (url) { - var pageoffset = 0; - var offsettime = 0; - - if (url.split("#")[1] != null) { - pageoffset = url.split("#")[1]; - if (pageoffset.substring(2) != null) { - offsettime = pageoffset.substring(2); - } - } - return offsettime; -} -__IriSP.ignoreTimeFragment = function(url){ - if (url.split("#")[1] != null) { - var pageurl= url.split("#")[0]; - } - return pageurl; -} - - -/* CODE SPECIAL JW PLAYER creation + listener */ - -__IriSP.currentPosition = 0; -__IriSP.currentVolume = 50; -__IriSP.player = null; -__IriSP.startPosition = null; - - - -__IriSP.createPlayer = function (url,streamerPath) { - - // vimeo - __IriSP.config.player.flashvars.clip_id = __IriSP.config.player.src; - - if(__IriSP.config.player.type=='dailymotion'){ - __IriSP.config.player.src = __IriSP.config.player.src+"&chromeless=1&enableApi=1"; - } else if (__IriSP.config.player.type=='youtube'){ - __IriSP.config.player.src = __IriSP.config.player.src+"&enablejsapi=1&version=3"; - } else if (__IriSP.config.player.type=='vimeo'){ - __IriSP.config.player.src = "http://vimeo.com/moogaloop.swf"; - } - - __IriSP.trace("__IriSP.createPlayer","start"); - - __IriSP.myUrlFragment = url.split(streamerPath); - __IriSP.config.player.flashvars.streamer = streamerPath; - __IriSP.config.player.flashvars.file = __IriSP.myUrlFragment[1]; - - - - var flashvars = __IriSP.config.player.flashvars; - var params = __IriSP.config.player.params; - var attributes = __IriSP.config.player.attributes; - - __IriSP.trace( - "__IriSP.createPlayer", - "SWFOBJECT src:"+ - __IriSP.config.player.src+ - " " +__IriSP.config.gui.width+ - " " +__IriSP.config.gui.height+ - " || src = " +__IriSP.config.player.src - ); - - - swfobject.embedSWF( - __IriSP.config.player.src, - "Ldt-PlaceHolder", - __IriSP.config.gui.width, - __IriSP.config.gui.height, - "9.0.115", - false, - flashvars, - params, - attributes - ); - - // need a methode to - // re execute if this swf call does'nt work -} - -/* HOOK system for player API */ -/* Name of hooked function - - PlayerReady - - PlayerAddListeners - - PlayerPositionListener - - PlayerPositionListenerAction - -// */ -__IriSP.Hook = { - hooks: [], - - register: function ( name, callback ) { - if( 'undefined' == typeof( Hook.hooks[name] ) ) - Hook.hooks[name] = [] - Hook.hooks[name].push( callback ) - }, - - call: function ( name, arguments ) { - if( 'undefined' != typeof( Hook.hooks[name] ) ) - for( i = 0; i < Hook.hooks[name].length; ++i ) - if( true != Hook.hooks[name][i]( arguments ) ) { break; } - } -} - -/* API DAILYMOTION */ -onDailymotionPlayerReady = function (playerid){ - - //alert(playerid); - __IriSP.player = document.getElementById(__IriSP.config.player.attributes.id); - __IriSP.MyApiPlayer.ready(__IriSP.player); - - var url = document.location.href; - var time = __IriSP.retrieveTimeFragment(url); - __IriSP.startPosition = time; - __IriSP.DailymotionAddListeners(); - - __IriSP.MyApiPlayer.ready(playerid); -} -__IriSP.DailymotionAddListeners = function () { - if (__IriSP.player) { - __IriSP.trace("__IriSP.addListeners","ADD Listener "); - //__IriSP.player.addEventListener("onStateChange", "__IriSP.DailymotionPositionListener"); - setTimeout("__IriSP.DailymotionPositionListener()",100); - __IriSP.DailymotionPositionListener(); - __IriSP.player.addModelListener("VOLUME", "__IriSP.volumeListener"); - //__IriSP.player.addModelListener('STATE', '__IriSP.stateMonitor'); - } else { - __IriSP.setTimeout("__IriSP.DailymotionAddListeners()",100); - } -} -__IriSP.DailymotionPositionListener = function() { - - __IriSP.currentPosition = __IriSP.player.getCurrentTime(); - //__IriSP.trace("__IriSP.DailymotionPositionListener",__IriSP.currentPosition); - //__IriSP.trace("__IriSP.currentPosition",__IriSP.currentPosition); - - __IriSP.jQuery("#slider-range-min").slider("value",__IriSP.currentPosition); - __IriSP.jQuery("#amount").val(__IriSP.currentPosition+" s"); - // afficher annotation - /*__IriSP.MyLdt.checkTime(__IriSP.currentPosition); - */ - - setTimeout("__IriSP.DailymotionPositionListener()",10); -} - -/* API YOUTUBE */ -onYouTubePlayerReady= function (playerid){ - - var url = document.location.href; - var time = __IriSP.retrieveTimeFragment(url); - __IriSP.player = document.getElementById(__IriSP.config.player.attributes.id); - __IriSP.startPosition = time; - - __IriSP.MyApiPlayer.ready(__IriSP.player); - - __IriSP.MyApiPlayer.seek(time); - __IriSP.MyApiPlayer.play(); - - - __IriSP.YouTubeAddListeners(); - __IriSP.trace("onYouTubePlayerReady=",time); - //__IriSP.MyApiPlayer.ready(playerid); -} -__IriSP.YouTubeAddListeners = function () { - if (__IriSP.player) { - __IriSP.trace("__IriSP.addListeners","ADD Listener "); - __IriSP.player.addEventListener("onStateChange", "__IriSP.YouTubeStateMonitor"); - setTimeout("__IriSP.YouTubePositionListener()",100); - __IriSP.player.addModelListener("VOLUME", "__IriSP.volumeListener"); - //__IriSP.player.addModelListener('STATE', '__IriSP.stateMonitor'); - } else { - __IriSP.setTimeout("__IriSP.YouTubePositionListener()",100); - } -} -__IriSP.YouTubePositionListener = function() { - - __IriSP.currentPosition = __IriSP.player.getCurrentTime(); - //__IriSP.trace("__IriSP.YouTubePositionListener",__IriSP.currentPosition); - //__IriSP.trace("__IriSP.currentPosition",__IriSP.currentPosition); - - __IriSP.MyLdt.checkTime(__IriSP.currentPosition); - __IriSP.jQuery("#slider-range-min").slider("value",__IriSP.currentPosition); - __IriSP.jQuery("#amount").val(__IriSP.currentPosition+" s"); - // afficher annotation - __IriSP.MyLdt.checkTime(__IriSP.currentPosition); - - - setTimeout("__IriSP.YouTubePositionListener()",10); -} -__IriSP.YouTubeStateMonitor = function (obj) { - __IriSP.player.addModelListener('__IriSP.YouTubeStateMonitor ', newstate); - //alert(newstate+" "+obj.newstate); - if(newstate == '2') - { - __IriSP.trace("__IriSP.stateMonitor","PAUSE"); - __IriSP.MyApiPlayer.changePageUrlOffset(__IriSP.currentPosition); - - }else if (newstate == '1'){ - // une fois la video prete a lire la déplacer au bon timecode - if(__IriSP.startPosition!=null){ - __IriSP.MyApiPlayer.update(__IriSP.startPosition); - __IriSP.startPosition = null; - } - } - else if (newstate == '-1'){ - // une fois la video prete a lire la déplacer au bon timecode - if(__IriSP.startPosition!=null){ - __IriSP.MyApiPlayer.update(__IriSP.startPosition); - __IriSP.startPosition = null; - } - } else if (newstate == '3'){ - __IriSP.trace("__IriSP.stateMonitor","BUFFERING : "); - //changePageUrlOffset(currentPosition); - } - -} - - -/* API VIMEO */ -onVimeoPlayerReady= function (playerid){ - - var url = document.location.href; - var time = __IriSP.retrieveTimeFragment(url); - __IriSP.player = document.getElementById(__IriSP.config.player.attributes.id); - __IriSP.startPosition = time; - - __IriSP.MyApiPlayer.ready(__IriSP.player); - - __IriSP.MyApiPlayer.seek(time); - __IriSP.MyApiPlayer.play(); - - - __IriSP.YouTubeAddListeners(); - __IriSP.trace("onYouTubePlayerReady=",time); - //__IriSP.MyApiPlayer.ready(playerid); -} -__IriSP.VimeoAddListeners = function () { - if (__IriSP.player) { - __IriSP.trace("__IriSP.addListeners","ADD Listener "); - __IriSP.player.addEventListener("onStateChange", "__IriSP.YouTubeStateMonitor"); - setTimeout("__IriSP.YouTubePositionListener()",100); - __IriSP.player.addModelListener("VOLUME", "__IriSP.volumeListener"); - //__IriSP.player.addModelListener('STATE', '__IriSP.stateMonitor'); - } else { - __IriSP.setTimeout("__IriSP.YouTubePositionListener()",100); - } -} -__IriSP.VimeoPositionListener = function() { - - __IriSP.currentPosition = __IriSP.player.getCurrentTime(); - //__IriSP.trace("__IriSP.YouTubePositionListener",__IriSP.currentPosition); - //__IriSP.trace("__IriSP.currentPosition",__IriSP.currentPosition); - - __IriSP.MyLdt.checkTime(__IriSP.currentPosition); - __IriSP.jQuery("#slider-range-min").slider("value",__IriSP.currentPosition); - __IriSP.jQuery("#amount").val(__IriSP.currentPosition+" s"); - // afficher annotation - __IriSP.MyLdt.checkTime(__IriSP.currentPosition); - - - setTimeout("__IriSP.YouTubePositionListener()",10); -} -__IriSP.VimeoStateMonitor = function (obj) { - __IriSP.player.addModelListener('__IriSP.YouTubeStateMonitor ', newstate); - //alert(newstate+" "+obj.newstate); - if(newstate == '2') - { - __IriSP.trace("__IriSP.stateMonitor","PAUSE"); - __IriSP.MyApiPlayer.changePageUrlOffset(__IriSP.currentPosition); - - }else if (newstate == '1'){ - // une fois la video prete a lire la déplacer au bon timecode - if(__IriSP.startPosition!=null){ - __IriSP.MyApiPlayer.update(__IriSP.startPosition); - __IriSP.startPosition = null; - } - } - else if (newstate == '-1'){ - // une fois la video prete a lire la déplacer au bon timecode - if(__IriSP.startPosition!=null){ - __IriSP.MyApiPlayer.update(__IriSP.startPosition); - __IriSP.startPosition = null; - } - } else if (newstate == '3'){ - __IriSP.trace("__IriSP.stateMonitor","BUFFERING : "); - //changePageUrlOffset(currentPosition); - } - -} - - -/* API JW PLAYER */ -__IriSP.playerReady = function (thePlayer) { - - //__IriSP.trace("__IriSP.playerReady","PLAYER READY !!!!!!!!!!!!"); - __IriSP.player = window.document[thePlayer.id]; - //__IriSP.trace("__IriSP.playerReady","API CALL "+__IriSP.player); - __IriSP.MyApiPlayer.ready(__IriSP.player); - //__IriSP.trace("__IriSP.playerReady","API CALL END "); - - var url = document.location.href; - var time = __IriSP.retrieveTimeFragment(url); - //__IriSP.trace("__IriSP.playerReady"," "+url+" "+time ); - __IriSP.startPosition = time; - //__IriSP.trace("__IriSP.playerReady"," LISTENER LAUCHER"); - __IriSP.addListeners(); - //__IriSP.trace("__IriSP.playerReady"," LISTENER END"); - -} -__IriSP.addListeners = function () { - if (__IriSP.player) { - __IriSP.trace("__IriSP.addListeners","ADD Listener "); - __IriSP.player.addModelListener("TIME", "__IriSP.positionListener"); - __IriSP.player.addControllerListener("VOLUME", "__IriSP.volumeListener"); - __IriSP.player.addModelListener('STATE', '__IriSP.stateMonitor'); - } else { - __IriSP.setTimeout("__IriSP.addListeners()",100); - } - - // et changer les boutons -} -__IriSP.stateMonitor = function (obj) { - - - - if(obj.newstate == 'PAUSED') - { - __IriSP.trace("__IriSP.stateMonitor","PAUSE"); - __IriSP.MyApiPlayer.changePageUrlOffset(__IriSP.currentPosition); - __IriSP.jQuery(".ui-icon-play").css("background-position","0px -160px"); - - } else if (obj.newstate == 'PLAYING'){ - // une fois la video prete a lire la déplacer au bon timecode - if(__IriSP.startPosition!=null){ - __IriSP.MyApiPlayer.update(__IriSP.startPosition); - __IriSP.startPosition = null; - } - __IriSP.jQuery(".ui-icon-play").css("background-position","-16px -160px"); - } else if (obj.newstate == 'BUFFERING'){ - __IriSP.trace("__IriSP.stateMonitor","BUFFERING : "); - //changePageUrlOffset(currentPosition); - } - -} -__IriSP.positionListener = function(obj) { - //__IriSP.trace("__IriSP.positionListener",obj.position); - __IriSP.currentPosition = obj.position; - var tmp = document.getElementById("posit"); - if (tmp) { tmp.innerHTML = "position: " + __IriSP.currentPosition; } - __IriSP.jQuery("#slider-range-min").slider("value", obj.position); - __IriSP.jQuery("#amount").val(obj.position+" s"); - // afficher annotation - __IriSP.MyLdt.checkTime(__IriSP.currentPosition); - - -} -__IriSP.volumeListener = function (obj) { - __IriSP.currentVolume = obj.percentage; - var tmp = document.getElementById("vol"); - if (tmp) { tmp.innerHTML = "volume: " + __IriSP.currentVolume; } -} - - - - -/* UTIL */ -// code from http://stackoverflow.com/questions/822452/strip-html-from-text-javascript -__IriSP.stripHtml = function(s){ - return s.replace(/\\&/g, '&').replace(/\\/g, '>').replace(/\\t/g, '   ').replace(/\\n/g, '
    ').replace(/'/g, ''').replace(/"/g, '"'); -} -// conversion de couleur Decimal vers HexaDecimal || 000 si fff -__IriSP.DEC_HEXA_COLOR = function (dec){ - var hexa='0123456789ABCDEF',hex=''; - var tmp; - while (dec>15){ - tmp = dec-(Math.floor(dec/16))*16; - hex = hexa.charAt(tmp)+hex; - dec = Math.floor(dec/16); - } - hex = hexa.charAt(dec)+hex; - if (hex == "FFCC00"){ hex="";/* by default color of Ldt annotation */ } - return(hex); -} - - - -/* CLASS Ligne (annotationType) */ - -__IriSP.LDTligne = null; -__IriSP.Ligne = function (id,title,description,duration){ - this.id = id; - this.title = title; - this.description = description; - // - this.annotations = new Array(); - this.duration = duration; - this.annotationOldRead=""; - __IriSP.LDTligne = this; - __IriSP.trace("__IriSP.Ligne","CREATE "+__IriSP.LDTligne); -} -__IriSP.Ligne.prototype.addAnnotation = function (id,begin,end,media,title,description,color,tags){ - var myAnnotation = new __IriSP.Annotation(id,begin,end,media,title,description,color,tags,this.duration); - this.annotations.push(myAnnotation); - //__IriSP.trace("__IriSP.Ligne.prototype.addAnnotation ","add annotation "+title); -} -__IriSP.Ligne.prototype.onClickLigneAnnotation = function(id){ - //changePageUrlOffset(currentPosition); - //player.sendEvent('SEEK', this.start); - //__IriSP.trace("SEEK",this.start); -} -__IriSP.Ligne.prototype.searchLigneAnnotation = function(id){ - /*for (){ - }*/ -} -__IriSP.Ligne.prototype.listAnnotations = function(){ - -} -__IriSP.Ligne.prototype.nextAnnotation = function (){ - var annotationCibleNumber = this.numAnnotation(this.annotationOldRead)+1; - var annotationCible = this.annotations[annotationCibleNumber]; - - if(annotationCibleNumberannotationTempo.begin/1000 && time 1.4 - //__IriSP.jQuery("#Ldt-SaTitle").delay(100).text(annotationTempo.title); - //__IriSP.jQuery("#Ldt-SaDescription").delay(100).text(annotationTempo.description); - //__IriSP.jQuery('#Ldt-ShowAnnotation').delay(100).slideDown(); - //__IriSP.trace("__IriSP.Ligne.prototype.checkTimeLigne",annotationTempo.title+" "+annotationTempo.description ); - __IriSP.jQuery("#Ldt-SaTitle").text(annotationTempo.title); - __IriSP.jQuery("#Ldt-SaDescription").text(annotationTempo.description); - __IriSP.jQuery("#Ldt-SaKeywordText").html("Mots clefs : "+annotationTempo.htmlTags); - - //__IriSP.jQuery('#Ldt-ShowAnnotation').slideDown(); - var startPourcent = annotationTempo.timeToPourcent((annotationTempo.begin*1+(annotationTempo.end*1-annotationTempo.begin*1)/2),annotationTempo.duration*1); - __IriSP.jQuery("#Ldt-Show-Arrow").animate({left:startPourcent+'%'},1000); - __IriSP.jQuery("#"+annotationTempo.id).animate({alpha:'100%'},1000); - //alert(startPourcent); - var tempolinkurl = __IriSP.ignoreTimeFragment(window.location.href)+"#t="+(this.annotations[i].begin/1000); - } - break; - }else{ - annotationTempo=-1; - } - - } - // si il y en a pas : retractation du volet - if( annotationTempo == -1){ - if(annotationTempo!=this.annotationOldRead){ - __IriSP.trace("Check : ","pas d'annotation ici "); - __IriSP.jQuery("#Ldt-SaTitle").text(""); - __IriSP.jQuery("#Ldt-SaDescription").text(""); - __IriSP.jQuery("#Ldt-SaKeywordText").html(""); - __IriSP.jQuery('#Ldt-ShowAnnotation').slideUp(); - if(this.annotationOldRead){ - __IriSP.jQuery("#"+this.annotationOldRead.id).animate({alpha:'70%'},1000); - } - //__IriSP.jQuery("#Ldt-Show-Arrow").animate({left:'0%'},1000); - this.annotationOldRead = annotationTempo; - } - } - __IriSP.trace("__IriSP.Ligne.prototype.checkTimeLigne",annotationTempo); -} - - -/* CLASS Annotation */ - -__IriSP.Annotation = function (){ - var id = null; - var begin = null; - var end = null; - var media = null; - var description = null; - var title = null; - var color = null; - var tags = null; - __IriSP.trace("annotation ","r�ussi") -} -__IriSP.Annotation = function(id,begin,end,media,title,description,color,tags,duration){ - this.id = id; - this.begin = begin; - this.end = end; - this.media = media; - this.description = description; - this.title = title; - this.color = color; - this.tags = tags; - this.htmlTags = ""; - this.duration = duration; - // draw it - this.draw(); - this.drawTags(); - // - __IriSP.trace("Annotation created : ",id); -} -__IriSP.Annotation.prototype.draw = function(){ - //alert (this.duration); - var startPourcent = this.timeToPourcent(this.begin,this.duration); // temps du media - var endPourcent = this.timeToPourcent(this.end,this.duration)-startPourcent; - var titleForDiv = this.title.substr(0,55); - - __IriSP.jQueryAnnotationTemplate = "
    "; - //alert(this.color+" : "+DEC_HEXA_COLOR(this.color)); - - __IriSP.jQuerytoolTipTemplate = "
    " - +"
    "+__IriSP.stripHtml(this.title)+"
    " - +"
    "+this.begin+" : "+this.end+"
    " - +"
    "+__IriSP.stripHtml(this.description)+"
    " - +"
    "; - - - __IriSP.jQuery("
    "+__IriSP.jQueryAnnotationTemplate+"
    ").appendTo("#Ldt-Annotations"); - // TOOLTIP BUG ! - - __IriSP.jQuery("#"+this.id).tooltip({ effect: 'slide'}); - - - __IriSP.jQuery("#"+this.id).fadeTo(0,0.3); - __IriSP.jQuery("#"+this.id).mouseover(function() { - __IriSP.jQuery("#"+this.id).animate({opacity: 0.6}, 5) - }).mouseout(function(){ - __IriSP.jQuery("#"+this.id).animate({opacity: 0.3}, 5) - }); - __IriSP.trace("__IriSP.Annotation.prototype.draw","ADD ANOTATION : "+this.begin+" "+this.end+" "+__IriSP.stripHtml(this.title)+" | "+startPourcent+" | "+endPourcent+" | duration = "+this.duration); - -} -__IriSP.Annotation.prototype.drawTags = function(){ - var KeywordPattern = ' '+' '; - - //__IriSP.trace(" !? Tags : ",this.tags); - - if (this.tags!=undefined){ - for (var i = 0; i < this.tags.length; ++i){ - - //this.htmlTags += ' '+MyTags.getTitle(this.tags[i]['id-ref'])+' '+" , "; - this.htmlTags += ' '+__IriSP.MyTags.getTitle(this.tags[i]['id-ref'])+' '+" , "; - - } - } -} -__IriSP.Annotation.prototype.tootTipAnnotation = function() { - // 1 chercher le div correspondant - // 2 y mettre les information - return this.color + ' ' + this.type + ' apple'; -} -__IriSP.Annotation.prototype.onRollOverAnnotation = function (){ - this.tootTip(); -} -__IriSP.Annotation.prototype.timeToPourcent = function(time,timetotal){ - return (parseInt(Math.round(time/timetotal*100))); -} - - -/* CLASS Tags */ - -__IriSP.Tags = function(object){ - this.myTags = object; - this.htmlTags = null; - this.weigthMax = 0; - //this.mySegments = new array(); -} -__IriSP.Tags.prototype.addAnnotation = function (annotation){ - for (var i = 0; i < this.myTags.length; ++i){ - this.myTags[i].mySegments = new Array(); - if (annotation.tags!=null){ - for (var j = 0; j < annotation.tags.length; ++j){ - if (this.myTags[i]['id'] == annotation.tags[j]['id-ref']){ - this.myTags[i].mySegments.push([annotation.begin,annotation.end,annotation.id]); - var weigthTempo = this.myTags[i].mySegments.length - var tempo = this.myTags[i].mySegments[weigthTempo-1]; - //__IriSP.trace ("__IriSP.Tags.prototype.addAnnotation "," "+this.myTags[i]['meta']['dc:title']+" "+this.myTags[i]['id']+" : "+tempo[0]+" - "+tempo[1]); - - if (this.weigthMax < weigthTempo ){ - this.weigthMax = weigthTempo; - } - } - } - } - } -} -__IriSP.Tags.prototype.getTitle = function (id){ - for (var i = 0; i < this.myTags.length; ++i){ - if(this.myTags[i]['id']==id){ - return(this.myTags[i]['meta']['dc:title']); - } - } - -} -__IriSP.Tags.prototype.draw = function (){ - - __IriSP.trace("__IriSP.Tags.prototype.draw"," !!! WELL START " ); - for (var i = 0; i < this.myTags.length; ++i){ - __IriSP.trace("__IriSP.Tags.prototype.draw"," ADD Tags : "+this.myTags[i]['id']); - if(this.myTags[i]['id']!=null){ - this.htmlTags += ' '+this.myTags[i]['meta']['dc:title']+' '+' , '; - } - } - - __IriSP.jQuery('#Ldt-Tags').html(this.htmlTags); - __IriSP.trace("__IriSP.Tags.prototype.draw"," !!!! END WMAX= "+this.weigthMax ); - -} -__IriSP.Tags.prototype.show = function (id){ - - var timeStartOffsetA = 100000000000000000000; - var timeStartOffsetB = 100000000000000000000; - var timeEndOffsetA = 0; - var timeEndOffsetB = 0; - var timeStartID; - var timeEndID; - var WidthPourCent; - var leftPourCent; - var timeStartOffset; - - // case 1 : seul segment - // case 2 : 2 ou X segments - - - for (var i = 0; i < this.myTags.length; ++i){ - if (this.myTags[i]['id']==id){ - __IriSP.trace("######### TAG DRAWing : "," END" ); - - for (var j = 0; j < this.myTags[i].mySegments.length; ++j){ - if(timeStartOffset> this.myTags[i].mySegments[j][0]){ - timeStartOffsetA = this.myTags[i].mySegments[j][0]; - timeStartOffsetB = this.myTags[i].mySegments[j][1]; - timeStartID = this.myTags[i].mySegments[j][2] - } - if(timeStartOffset> this.myTags[i].mySegments[j][0]){ - timeEndOffsetA = this.myTags[i].mySegments[j][0]; - timeEndOffsetB = this.myTags[i].mySegments[j][1]; - timeEndID = this.myTags[i].mySegments[j][2] - } - } - - } - } - - // ------------------------------------------------- - // - // ------------------------------------------------- - - leftPourCent = __IriSP.timeToPourcent((timeStartOffsetA*1+(timeStartOffsetB-timeStartOffsetA)/2),__IriSP.MyLdt.duration); - WidthPourCent = __IriSP.timeToPourcent((timeEndOffsetA*1+(timeEndOffsetB-timeEndOffsetA)/2),__IriSP.MyLdt.duration)-leftPourCent; - //WidthPourCent = timeToPourcent((timeEndOffsetA*1+(timeEndOffsetB-timeEndOffsetA)/2),MyLdt.duration)-startPourcent; - __IriSP.jQuery("#Ldt-Show-Tags").css('left',leftPourCent+'%'); - __IriSP.jQuery("#Ldt-Show-Tags").css('width',WidthPourCent+'%'); - // like arrow script - - - -} - - -/* CLASS TRACE */ - -__IriSP.traceNum=0; -__IriSP.trace = function(msg,value){ - - if(__IriSP.config.gui.debug===true){ - __IriSP.traceNum += 1; - __IriSP.jQuery("
    "+__IriSP.traceNum+" - "+msg+" : "+value+"
    ").appendTo("#Ldt-output"); - } - -} - - - - - - \ No newline at end of file diff -r e6b328970ee8 -r ffb0a6d08000 web/rsln-mercedes-bunz/config.php --- a/web/rsln-mercedes-bunz/config.php Wed Jul 27 12:24:43 2011 +0200 +++ b/web/rsln-mercedes-bunz/config.php Wed Jul 27 12:25:45 2011 +0200 @@ -4,33 +4,41 @@ * Please edit the conférence details * */ - $config = array( - 'root' => 'http://polemictweet.com/', 'hashtag' => '#rsln', 'date' => '07.04.2011', 'heure' => '19h30-21h00', 'place' => 'Microsoft France', - 'duration' => '4026000', 'title' => "Mercedes Bunz : Les algorithmes ne remplaceront jamais les journalistes", + 'abstract' => '', 'description'=> "", 'link' => 'http://www.rslnmag.fr/blog/2011/4/9/mercedes-bunz_les-algorithmes-ne-remplaceront-jamais-les-journalistes_/', 'keywords' => 'algorithme, data journalisme, presse, mercedes bunz, rsln, iri', 'rep' => 'rsln-mercedes-bunz', + 'islive' => true, 'partenaires'=> " IRI | RSLN | MICROSOFT.fr ", // After the event 'metadata' => "http://www.iri.centrepompidou.fr/dev/ldt/ldtplatform/ldt/cljson/id/843fff80-6b50-11e0-8aef-00145ea49a02", - 'player' => "res/metadataplayer/src/js/LdtPlayer.js" + 'player' => "res/metadataplayer/src/js/LdtPlayer.js", + 'duration' => '4026000', + 'client_visual' => 'images/big_visuel_rsln_mb.jpg', // optional - relative path + 'head_logo' => 'images/head_logo.gif', // optional - relative path + 'slide_background' => 'images/slide4.jpg', + 'archive_img' => "images/tail_mercedes_bunz.jpg", + 'archive_title' => "Mercedes Bunz", + 'archive_description' => "par RSLN à Microsoft France
    le jeudi 7 avril 2011 | 19:30 - 21:00", + + 'div_height' => 640, + 'player_width' => 650, + 'player_height' => 445, ); -$player_width = 600; -$player_height = 480; ?> diff -r e6b328970ee8 -r ffb0a6d08000 web/rsln-mercedes-bunz/embed_form.php --- a/web/rsln-mercedes-bunz/embed_form.php Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,100 +0,0 @@ - - - - - - embed Configuration - - - - - - - - - - - - - - - - -

    _("EmbedTitle"); ?>

    - -

    _("EmbedText"); ?>

    - - - - diff -r e6b328970ee8 -r ffb0a6d08000 web/rsln-mercedes-bunz/images/tail_mercedes_bunz.jpg Binary file web/rsln-mercedes-bunz/images/tail_mercedes_bunz.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/rsln-mercedes-bunz/player_embed.php --- a/web/rsln-mercedes-bunz/player_embed.php Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,138 +0,0 @@ - - - - - - RSLN - Polemic player embed page - - - - - - - - - - - - - - - - - - - -
    -
    -
    -
    - -
    -
    -
    - - - -
    - - -
    -
    - - diff -r e6b328970ee8 -r ffb0a6d08000 web/rsln-mercedes-bunz/polemicaltimeline.php --- a/web/rsln-mercedes-bunz/polemicaltimeline.php Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,222 +0,0 @@ - - - - - - Polemic tweet - <?php echo($config['title']); ?> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -
    -
    -
    - -
    - - - - - - -
    -

    _("ClientTitle1 :"); ?>


    - _("ExplicationPT"); ?> -
    - - - - - - - -
    -
    - -
    - - - - - -
    - -
    -
    - - - - -
    - - - diff -r e6b328970ee8 -r ffb0a6d08000 web/rsln-opendata/config.php --- a/web/rsln-opendata/config.php Wed Jul 27 12:24:43 2011 +0200 +++ b/web/rsln-opendata/config.php Wed Jul 27 12:25:45 2011 +0200 @@ -4,17 +4,14 @@ * Please edit the conférence details * */ - $config = array( - 'root' => 'http://polemictweet.com/', 'hashtag' => '#opendata,#rsln', 'date' => '17.03.2011', 'heure' => '14h30-18h00', - 'place' => 'Microsoft France', - 'duration' => '11514500', - + 'place' => 'Microsoft France', 'title' => "L’Open Data, et nous, et nous, et nous ? Venez imaginer le monde de l’abondance des données !", + 'abstract' => '', 'description'=> "De quoi le mouvement Open Data est-il le nom ? Et quelles conditions réunir pour enclencher un cercle vertueux autour de cette évolution structurelle du web, qui dessine un monde où la donnée retrouve une valeur, et peut fonder de nouvelles activités, de nouveaux secteurs économiques ?

    Microsoft France, avec RSLN et le World e.gov Forum, organisent un atelier de réflexion autour du phénomène Open Data, pendant une demi-journée, le jeudi 17 mars, à partir de 14h30, pour comprendre, et imaginer, ensemble, le monde de l’abondance des données.", @@ -22,6 +19,7 @@ 'link' => 'http://www.rslnmag.fr/blog/2011/2/10/l-open-data_et-nous_et-nous_et-nous_venez-imaginer-le-monde-de-l-abondance-des-donnees_/', 'keywords' => 'opendata, données publiques, web semantique, rsln, iri,Arnaud Cavailhez,Caroline Goulard,Nicolas Hernandez,David Larlet,Jean-Marc Manach,Christophe Tallec, Bruno Walther,Nigel Shadbolt', 'rep' => 'rsln-opendata', + 'islive' => false, 'partenaires'=> " IRI | RSLN | World e.gov Forum @@ -29,11 +27,20 @@ // After the event 'metadata' => "http://www.iri.centrepompidou.fr/dev/ldt/ldtplatform/ldt/cljson/id/f410655c-5a4d-11e0-a392-00145ea49a02", - 'player' => "res/metadataplayer/src/js/LdtPlayer.js" + 'player' => "res/metadataplayer/src/js/LdtPlayer.js", + 'duration' => '11514500', +# 'client_visual' => 'images/big_visuel_rsln_mb.jpg', // optional - relative path + 'head_logo' => 'images/header_logo.gif', // optional - relative path + 'slide_background' => 'images/slide4.jpg', + 'archive_img' => "images/tail_opendata.jpg", + 'archive_title' => "OPENDATA", + 'archive_description' => "par RSLN à Microsoft France
    le jeudi 17 mars 2011 | 14:30 - 17:15", + + 'div_height' => 850, + 'player_width' => 650, + 'player_height' => 640, ); -$player_width = 600; -$player_height = 480; ?> diff -r e6b328970ee8 -r ffb0a6d08000 web/rsln-opendata/embed_form.php --- a/web/rsln-opendata/embed_form.php Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,100 +0,0 @@ - - - - - - embed Configuration - - - - - - - - - - - - - - - - -

    _("EmbedTitle"); ?>

    - -

    _("EmbedText"); ?>

    - - - - diff -r e6b328970ee8 -r ffb0a6d08000 web/rsln-opendata/images/header_logo.gif Binary file web/rsln-opendata/images/header_logo.gif has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/rsln-opendata/images/tail_opendata.jpg Binary file web/rsln-opendata/images/tail_opendata.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/rsln-opendata/images/tweetExplainBgd.gif Binary file web/rsln-opendata/images/tweetExplainBgd.gif has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/rsln-opendata/player_embed.php --- a/web/rsln-opendata/player_embed.php Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,138 +0,0 @@ - - - - - - RSLN - Polemic player embed page - - - - - - - - - - - - - - - - - - - -
    -
    -
    -
    - -
    -
    -
    - - - -
    - - -
    -
    - - diff -r e6b328970ee8 -r ffb0a6d08000 web/rsln-opendata/polemicaltimeline.php --- a/web/rsln-opendata/polemicaltimeline.php Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,222 +0,0 @@ - - - - - - Polemic tweet - <?php echo($config['title']); ?> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -
    -
    -
    - -
    - - - - - - -
    -

    _("ClientTitle1 :"); ?>


    - _("ExplicationPT"); ?> -
    - - - - - - - -
    -
    - -
    - - - - - -
    - -
    -
    - - - - -
    - - - diff -r e6b328970ee8 -r ffb0a6d08000 web/rsln/config.php --- a/web/rsln/config.php Wed Jul 27 12:24:43 2011 +0200 +++ b/web/rsln/config.php Wed Jul 27 12:25:45 2011 +0200 @@ -4,17 +4,14 @@ * Please edit the conférence details * */ +$config = array( -$config = array( - 'root' => 'http://polemictweet.com/', - 'hashtag' => '#rsln', 'date' => '2010', 'heure' => '', - 'place' => '', - 'duration' => '4299820', - + 'place' => '', 'title' => "Clay Shirky : « Personne n'est titulaire du code source de la démocratie »", + 'abstract' => '', 'description'=> "Journaliste américain spécialiste des nouvelles technologies de l'information et de la communication - NTIC, Clay Shirky est aussi consultant, écrivain, professeur.

    Diplômé de l'Université de New York il écrit et enseigne, entre autres, sur les effets de corrélation de la topologie sociale et technologique de réseau, où comment nos réseaux forment la culture et inversement.


    Dernier ouvrages :
      @@ -27,6 +24,7 @@ 'link' => 'http://www.rslnmag.fr/blog/2011/1/17/clay-shirky_-personne-n-est-titulaire-du-code-source-de-la-democratie_/', 'keywords' => 'digital, democratie, clayshirky, rsln, iri', 'rep' => 'rsln', + 'islive' => true, 'partenaires'=> " IRI | RSLN | SLATE.fr @@ -34,11 +32,20 @@ // After the event 'metadata' => "http://www.iri.centrepompidou.fr/dev/ldt/ldtplatform/ldt/cljson/id/13b0aa52-336b-11e0-b233-00145ea49a02", - 'player' => "res/metadataplayer/src/js/LdtPlayer.js" + 'player' => "res/metadataplayer/src/js/LdtPlayer.js", + 'duration' => '4299820', + 'client_visual' => 'images/bgd_player.jpg', // optional - relative path + 'head_logo' => 'images/header_logo.gif', // optional - relative path + 'slide_background' => 'images/slide4.jpg', + 'archive_img' => "images/tail_clay.jpg", + 'archive_title' => "Clay Shirky, le surplus cognitif", + 'archive_description' => "par RSLN à Microsoft France
      le lundi 31 janvier 2011 | 08:30 - 10:30", + + 'div_height' => 680, + 'player_width' => 650, + 'player_height' => 480, ); -$player_width = 600; -$player_height = 480; ?> diff -r e6b328970ee8 -r ffb0a6d08000 web/rsln/embed_form.php --- a/web/rsln/embed_form.php Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,100 +0,0 @@ - - - - - - embed Configuration - - - - - - - - - - - - - - - - -

      _("EmbedTitle"); ?>

      - -

      _("EmbedText"); ?>

      - - - - diff -r e6b328970ee8 -r ffb0a6d08000 web/rsln/images/bgd_player.jpg Binary file web/rsln/images/bgd_player.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/rsln/images/header_logo.gif Binary file web/rsln/images/header_logo.gif has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/rsln/images/tail_clay.jpg Binary file web/rsln/images/tail_clay.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/rsln/images/tweetExplainBgd.gif Binary file web/rsln/images/tweetExplainBgd.gif has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/rsln/player_embed.php --- a/web/rsln/player_embed.php Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,138 +0,0 @@ - - - - - - RSLN - Polemic player embed page - - - - - - - - - - - - - - - - - - - -
      -
      -
      -
      - -
      -
      -
      - - - -
      - - -
      -
      - - diff -r e6b328970ee8 -r ffb0a6d08000 web/rsln/polemicaltimeline.php --- a/web/rsln/polemicaltimeline.php Wed Jul 27 12:24:43 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,224 +0,0 @@ - - - - - - Polemic tweet - <?php echo($config['title']); ?> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      -
      -
      -
      - -
      - - - - - - - -
      -

      _("ClientTitle1 :"); ?>


      - _("ExplicationPT"); ?> -
      - - - - - - - -
      -
      - -
      - - - - - -
      - -
      -
      - - - - -
      - - - diff -r e6b328970ee8 -r ffb0a6d08000 web/sig-chi-paris-2011/config.php --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/web/sig-chi-paris-2011/config.php Wed Jul 27 12:25:45 2011 +0200 @@ -0,0 +1,63 @@ + '#chi07', + 'date' => '07.07.2011', + 'heure' => '19h00-21h00', + 'place' => 'IRI - Salle Piazza - Centre Pompidou', + 'duration' => '4678200', + + 'title' => "Interfaces de demain", + 'abstract' => 'VIDEO SHOWCASE Interfaces de demain: Du sol à la table interactive en passant par le mur… +07 Juillet de 19h à 21h Salle Piazza ', + 'description'=> "VIDEO SHOWCASE Interfaces de demain: Du sol à la table interactive en passant par le mur…
      + + 7th July 2011, 7:00 – 9:00 pm : Salle Piazza au Centre Pompidou
      + ACM SigCHI Paris vous propose un panorama des dernières recherches en interaction homme-machine le 7 juillet 2011, de 19h à 21h au Centre Pompidou (salle Piazza). Des chercheurs vous présenteront les dernières avancées sous forme d’une diffusion vidéo organisée en 5 thèmes : +
        +
      • nouvelles technologies
      • +
      • tables interactives
      • +
      • interaction tactile
      • +
      • interaction gestuelle
      • +
      • visualisation d’informations
      • +
      + La diffusion sera suivie d’une discussion informelle autour d’un apéritif. + Cet événement est organisé par le LRI (Université Paris-Sud et CNRS), l’INRIA, Telecom ParisTech et l’IRI. ", + + 'link' => 'http://www.iri.centrepompidou.fr/evenement/interfaces-de-demain/', + 'islive' => true, + 'keywords' => 'algorithme, interface, futur, iri', + 'rep' => 'sig-chi-paris-2011', + 'partenaires'=> " IRI + | LRI + | INRIA + | CNRS + | telecom paris tech + | Inflammable ", + + + 'client_visual' => 'images/big_visuel_rsln_mb.jpg', // optional - relative path + 'head_logo' => 'images/head_logo.gif', // optional - relative path + 'slide_background' => 'images/slide4.jpg', + 'archive_img' => "images/tail_sig_chi.jpg", + 'archive_title' => "Interface de Demain", + 'archive_description' => "par ACM SigCHI Paris au Centre Pompidou.
      le jeudi 07 juillet 2011 | 19:00 - 21:00", + + // After the event + 'metadata' => "http://www.iri.centrepompidou.fr/dev/ldt/ldtplatform/ldt/cljson/id/1c764b02-abc9-11e0-b488-00145ea49a02", + 'player' => "res/metadataplayer/src/js/LdtPlayer.js", + 'div_height' => 740, + 'player_width' => 650, + 'player_height' => 500, +); + +?> + + + + + diff -r e6b328970ee8 -r ffb0a6d08000 web/sig-chi-paris-2011/images/big_visuel_rsln_mb.jpg Binary file web/sig-chi-paris-2011/images/big_visuel_rsln_mb.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/sig-chi-paris-2011/images/head_logo.gif Binary file web/sig-chi-paris-2011/images/head_logo.gif has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/sig-chi-paris-2011/images/slide4.jpg Binary file web/sig-chi-paris-2011/images/slide4.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/sig-chi-paris-2011/images/slide4.psd Binary file web/sig-chi-paris-2011/images/slide4.psd has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/sig-chi-paris-2011/images/tail_sig_chi.jpg Binary file web/sig-chi-paris-2011/images/tail_sig_chi.jpg has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/sig-chi-paris-2011/images/tweetExplainBgd.gif Binary file web/sig-chi-paris-2011/images/tweetExplainBgd.gif has changed diff -r e6b328970ee8 -r ffb0a6d08000 web/sig-chi-paris-2011/index.php --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/web/sig-chi-paris-2011/index.php Wed Jul 27 12:25:45 2011 +0200 @@ -0,0 +1,6 @@ + \ No newline at end of file diff -r e6b328970ee8 -r ffb0a6d08000 web/sig-chi-paris-2011/traduction.php --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/web/sig-chi-paris-2011/traduction.php Wed Jul 27 12:25:45 2011 +0200 @@ -0,0 +1,82 @@ +
      + Cette syntaxe polémique vous a premis de prendre position relativement à l’intervenant ou aux autres participants au débat : + + + + + +
      ++ correspond à un tweet d’assentiment
      -- à un tweet de désaccord,
      == à un tweet de référence
      ?? à une question
      + Suite a cette phase d’annotation, vous trouverez à droite de ce texte la version alpha de l'interface de navigation et de représentation de la polémique durant la conférence. +
      + Ce dispositif, outre qu’il approfondit la dimension critique de la discussion avec la salle et les auditeurs présents ou distants, permet ainsi également de pérenniser et de valoriser les commentaires produits en les rendant accessibles en temps différé lors de tout visionnage ultérieur de la vidéo  + "; + +$english['ExplicationPT'] = " + Institute for Research and Innovation (IRI) proposed to you an + experiment and a demonstration of a controversial annotation device + based on twitter. Classifying your tweets allowed us to create a + timeline representing the polemical positions of the audience during + the conference. +

      + This controversy tracking syntax enabled you to take position on the + speaker or other participants points of view in the debate: + + + + + + +
      + ++ corresponds to a tweet of assent
      + -- to a tweet of disagreement,
      + == to a tweet of reference
      + ?? to a question
      + + Following this annotation phase, you will find right to the present + text the alpha version of the browser and controversy representation + interface. +

      + This device, in addition to deepening the critical dimension of the + discussion with the present or distant audience, allows also to + perpetuate and promote the published comments by making them + accessible at any time deferred later viewing of the video + "; + +$japan["ExplicationPT"] = " + Institute for Research and Innovation (IRI) proposed to you an + experiment and a demonstration of a controversial annotation device + based on twitter. Classifying your tweets allowed us to create a + timeline representing the polemical positions of the audience during + the conference. +

      + This controversy tracking syntax enabled you to take position on the + speaker or other participants points of view in the debate: + + + + + + +
      + ++ corresponds to a tweet of assent
      + -- to a tweet of disagreement,
      + == to a tweet of reference
      + ?? to a question
      + + Following this annotation phase, you will find right to the present + text the alpha version of the browser and controversy representation + interface. +

      + This device, in addition to deepening the critical dimension of the + discussion with the present or distant audience, allows also to + perpetuate and promote the published comments by making them + accessible at any time deferred later viewing of the video + "; + +?> \ No newline at end of file diff -r e6b328970ee8 -r ffb0a6d08000 web/traduction.php --- a/web/traduction.php Wed Jul 27 12:24:43 2011 +0200 +++ b/web/traduction.php Wed Jul 27 12:25:45 2011 +0200 @@ -126,7 +126,7 @@ "EmbedTitle" =>"Embarquer cette vidéo", "EmbedText" =>"Pour embarquer cette vidéo dans votre plateforme de publication de contenu copier colle le code suivant :", - // Polemicla Timeline ############# + // Polemical Timeline ############# "ExplicationPT" => "l’Institut de recherche et d’innovation (Iri) vous a proposé une expérimentation et une démonstration d’un dispositif d’annotation polémique basé sur twitter. Cette qualification de vos tweets nous a permis de créer une timeline polemique représentant les positions de l'auditoire durant la conférence. @@ -141,7 +141,8 @@ Suite a cette phase d’annotation, vous trouverez à droite de ce texte la version alpha de l'interface de navigation et de représentation de la polémique durant la conférence.

      Ce dispositif, outre qu’il approfondit la dimension critique de la discussion avec la salle et les auditeurs présents ou distants, permet ainsi également de pérenniser et de valoriser les commentaires produits en les rendant accessibles en temps différé lors de tout visionnage ultérieur de la vidéo  -

      Merci a RSLN pour cette expérimentation !" +

      Merci a RSLN pour cette expérimentation !", + "changer de contenu" => "Changer de contenu" ); $english = array( @@ -271,7 +272,8 @@ perpetuate and promote the published comments by making them accessible at any time deferred later viewing of the video

      - Thank you to RSLN for this experiment !" + Thank you to RSLN for this experiment !", + "changer de contenu" => "Change content" ); $japan = array( @@ -401,7 +403,7 @@ perpetuate and promote the published comments by making them accessible at any time deferred later viewing of the video

      - Thank you to RSLN for this experiment !" - + Thank you to RSLN for this experiment !", + "changer de contenu" => "ビデオを変更" ); ?> \ No newline at end of file diff -r e6b328970ee8 -r ffb0a6d08000 web/tweet.php --- a/web/tweet.php Wed Jul 27 12:24:43 2011 +0200 +++ b/web/tweet.php Wed Jul 27 12:25:45 2011 +0200 @@ -4,7 +4,9 @@ * include some common code (like we did in the 90s) * People still do this? ;) */ -include_once './common.php'; +$rep = $_REQUEST['rep']; +include_once dirname(__FILE__).'/'.$rep.'/config.php'; +include_once 'common.php'; /** * Check for a POSTed status message to send to Twitter @@ -35,7 +37,7 @@ /** * Tweet sent (hopefully), redirect back home... */ - header('Location: ' . URL_ROOT . '?result=' . $result); + header('Location: ' . URL_ROOT . '$rep/client.php?result=' . $result); } else { /** * Mistaken request? Some malfeasant trying something? diff -r e6b328970ee8 -r ffb0a6d08000 web/tweet_ajax.php --- a/web/tweet_ajax.php Wed Jul 27 12:24:43 2011 +0200 +++ b/web/tweet_ajax.php Wed Jul 27 12:25:45 2011 +0200 @@ -4,7 +4,7 @@ * include some common code (like we did in the 90s) * People still do this? ;) */ -include_once './common.php'; +include_once 'common.php'; /** * Check for a POSTed status message to send to Twitter